@gravitee/ui-components 3.23.0 → 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.
- package/package.json +22 -21
- package/src/atoms/gv-autocomplete.js +5 -6
- package/src/atoms/gv-button.js +4 -4
- package/src/atoms/gv-checkbox.js +3 -3
- package/src/atoms/gv-date-picker-calendar.js +4 -5
- package/src/atoms/gv-date-picker-cell.js +4 -4
- package/src/atoms/gv-date-picker.js +4 -5
- package/src/atoms/gv-file-upload.js +4 -5
- package/src/atoms/gv-icon.js +14 -7
- package/src/atoms/gv-image.js +4 -4
- package/src/atoms/gv-input-message.js +2 -3
- package/src/atoms/gv-input.js +3 -3
- package/src/atoms/gv-link.js +6 -6
- package/src/atoms/gv-message.js +3 -3
- package/src/atoms/gv-metric.js +3 -3
- package/src/atoms/gv-relative-time.js +6 -4
- package/src/atoms/gv-select-native.js +6 -6
- package/src/atoms/gv-select.js +5 -5
- package/src/atoms/gv-spinner.js +2 -2
- package/src/atoms/gv-state.js +3 -3
- package/src/atoms/gv-switch.js +4 -4
- package/src/atoms/gv-tag.js +3 -3
- package/src/atoms/gv-text.js +4 -4
- package/src/charts/gv-chart-bar.js +2 -2
- package/src/charts/gv-chart-gauge.js +2 -2
- package/src/charts/gv-chart-histogram.js +2 -2
- package/src/charts/gv-chart-line.js +2 -2
- package/src/charts/gv-chart-map.js +2 -2
- package/src/charts/gv-chart-pie.js +2 -2
- package/src/lib/item.js +2 -2
- package/src/lib/studio.js +3 -3
- package/src/mixins/chart-element.js +3 -4
- package/src/mixins/input-element.js +3 -3
- package/src/mixins/item-resource.js +3 -3
- package/src/mixins/with-skeleton-attribute.js +2 -2
- package/src/molecules/gv-card-full.js +3 -3
- package/src/molecules/gv-card-list.js +3 -4
- package/src/molecules/gv-card.js +3 -3
- package/src/molecules/gv-category-list.js +2 -3
- package/src/molecules/gv-category.js +3 -3
- package/src/molecules/gv-code-hint.js +2 -3
- package/src/molecules/gv-code.js +3 -3
- package/src/molecules/gv-confirm.js +2 -3
- package/src/molecules/gv-cron-editor.js +3 -3
- package/src/molecules/gv-dropdown-menu.js +2 -3
- package/src/molecules/gv-expandable.js +3 -3
- package/src/molecules/gv-expression-language.js +2 -3
- package/src/molecules/gv-identity-picture.js +3 -4
- package/src/molecules/gv-list.js +4 -4
- package/src/molecules/gv-metrics.js +4 -4
- package/src/molecules/gv-modal.js +2 -2
- package/src/molecules/gv-nav.js +5 -5
- package/src/molecules/gv-option.js +6 -6
- package/src/molecules/gv-plans.js +5 -6
- package/src/molecules/gv-popover.js +3 -4
- package/src/molecules/gv-promote.js +3 -3
- package/src/molecules/gv-rating-list.js +4 -5
- package/src/molecules/gv-rating.js +4 -4
- package/src/molecules/gv-row-expandable.js +2 -2
- package/src/molecules/gv-row.js +3 -3
- package/src/molecules/gv-stats.js +4 -4
- package/src/molecules/gv-stepper.js +4 -4
- package/src/molecules/gv-table.js +7 -8
- package/src/molecules/gv-tree.js +4 -4
- package/src/organisms/gv-documentation.js +2 -2
- package/src/organisms/gv-header.js +6 -6
- package/src/organisms/gv-http-client.js +2 -2
- package/src/organisms/gv-menu.js +3 -3
- package/src/organisms/gv-newsletter-subscription.js +2 -2
- package/src/organisms/gv-pagination.js +2 -2
- package/src/organisms/gv-properties.js +3 -3
- package/src/organisms/gv-resizable-views.js +3 -4
- package/src/organisms/gv-resources.js +2 -2
- package/src/organisms/gv-schema-form-array.js +5 -5
- package/src/organisms/gv-schema-form-control-object.js +5 -5
- package/src/organisms/gv-schema-form-control.js +4 -9
- package/src/organisms/gv-schema-form.js +8 -7
- package/src/organisms/gv-tabs.js +2 -3
- package/src/organisms/gv-user-menu.js +4 -4
- package/src/organisms/gv-vertical-menu.js +2 -2
- package/src/policy-studio/gv-flow-step.js +3 -3
- package/src/policy-studio/gv-flow.js +5 -5
- package/src/policy-studio/gv-policy-studio-menu.js +4 -4
- package/src/policy-studio/gv-policy-studio.js +5 -5
- package/src/styles/empty.js +2 -2
- package/src/styles/input.js +2 -2
- package/src/styles/link.js +2 -2
- package/src/styles/skeleton.js +2 -2
- package/src/styles/zoom.js +2 -2
- package/src/theme/gv-theme.js +2 -2
package/src/molecules/gv-nav.js
CHANGED
|
@@ -13,13 +13,13 @@
|
|
|
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
|
|
17
|
-
import { repeat } from 'lit
|
|
16
|
+
import { LitElement, html, css } from 'lit';
|
|
17
|
+
import { repeat } from 'lit/directives/repeat';
|
|
18
18
|
import '../atoms/gv-link';
|
|
19
|
-
import { until } from 'lit
|
|
19
|
+
import { until } from 'lit/directives/until';
|
|
20
20
|
import { isSameRoutes } from '../lib/utils';
|
|
21
21
|
import { dispatchCustomEvent } from '../lib/events';
|
|
22
|
-
import { classMap } from 'lit
|
|
22
|
+
import { classMap } from 'lit/directives/class-map';
|
|
23
23
|
/**
|
|
24
24
|
* A main nav
|
|
25
25
|
*
|
|
@@ -167,4 +167,4 @@ export class GvNav extends LitElement {
|
|
|
167
167
|
|
|
168
168
|
}
|
|
169
169
|
window.customElements.define('gv-nav', GvNav);
|
|
170
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1uYXYuanMiXSwibmFtZXMiOlsiTGl0RWxlbWVudCIsImh0bWwiLCJjc3MiLCJyZXBlYXQiLCJ1bnRpbCIsImlzU2FtZVJvdXRlcyIsImRpc3BhdGNoQ3VzdG9tRXZlbnQiLCJjbGFzc01hcCIsIkd2TmF2IiwicHJvcGVydGllcyIsInJvdXRlcyIsInR5cGUiLCJBcnJheSIsIl9yb3V0ZXMiLCJzbWFsbCIsIkJvb2xlYW4iLCJfY29tcGFjdCIsImF0dHJpYnV0ZSIsInZlcnRpY2FsIiwicmVmbGVjdCIsInN0eWxlcyIsIl9vbkNsaWNrIiwiZXZlbnQiLCJzdG9wUHJvcGFnYXRpb24iLCJkZXRhaWwiLCJ0aXRsZSIsInRhcmdldCIsIl9pc0xvY2tlZCIsIm5leHRJbmRleCIsImZvckVhY2giLCJyb3V0ZSIsImluZGV4IiwiYWN0aXZlIiwiYWN0aXZlTGluayIsInNoYWRvd1Jvb3QiLCJxdWVyeVNlbGVjdG9yIiwibmV4dExpbmsiLCJxdWVyeVNlbGVjdG9yQWxsIiwic2hhZG93TGluayIsImNsb25lTm9kZSIsImhlaWdodCIsIndpZHRoIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwiaWQiLCJzdHlsZSIsInRvcCIsIm9mZnNldFRvcCIsImxlZnQiLCJvZmZzZXRMZWZ0IiwicmVtb3ZlQXR0cmlidXRlIiwicHJlcGVuZCIsInRyYW5zZm9ybSIsInNldFRpbWVvdXQiLCJzZXRBdHRyaWJ1dGUiLCJyZW1vdmVDaGlsZCIsImNvbnN0cnVjdG9yIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0aGVuIiwiX2dldExpbmsiLCJfcm91dGUiLCJpY29uIiwicGF0aCIsImhlbHAiLCJjYXRjaCIsInVwZGF0ZWQiLCJfY2hhbmdlZFByb3BlcnRpZXMiLCJoYXMiLCJsZW5ndGgiLCJyZW5kZXIiLCJjb21wYWN0Iiwid2luZG93IiwiY3VzdG9tRWxlbWVudHMiLCJkZWZpbmUiXSwibWFw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Q0FjRSxNQUFNO0FBQ1gsYUFBTyxLQUFLbkQsT0FBTCxDQUFha0IsS0FBYixDQUFQO0FBQ0QsS0FoQkksQ0FBUDtBQWlCRDs7QUFFRGtDLEVBQUFBLE9BQU8sQ0FBQ0Msa0JBQUQsRUFBcUI7QUFDMUIsUUFBSUEsa0JBQWtCLENBQUNDLEdBQW5CLENBQXVCLFNBQXZCLENBQUosRUFBdUM7QUFDckMsV0FBS25ELFFBQUwsR0FBZ0IsS0FBS0gsT0FBTCxJQUFnQixLQUFLQSxPQUFMLENBQWF1RCxNQUFiLEdBQXNCLENBQXREO0FBQ0Q7QUFDRjs7QUFFREMsRUFBQUEsTUFBTSxHQUFHO0FBQ1AsUUFBSSxLQUFLeEQsT0FBVCxFQUFrQjtBQUNoQixhQUFPWixJQUFJLGVBQWVNLFFBQVEsQ0FBQztBQUFFK0QsUUFBQUEsT0FBTyxFQUFFLEtBQUt0RCxRQUFoQjtBQUEwQkUsUUFBQUEsUUFBUSxFQUFFLEtBQUtBO0FBQXpDLE9BQUQsQ0FBdkIsTUFDUGYsTUFBTSxDQUNOLEtBQUtVLE9BREMsRUFFTGlCLEtBQUQsSUFBV0EsS0FGTCxFQUdOLENBQUNBLEtBQUQsRUFBUUMsS0FBUixLQUFrQjNCLEtBQUssQ0FBQyxLQUFLdUQsUUFBTCxDQUFjN0IsS0FBZCxFQUFxQkMsS0FBckIsQ0FBRCxFQUE4QjlCLElBQUksZ0NBQWdDLEtBQUtpQixRQUFyQyxjQUFsQyxDQUhqQixDQURDLFNBQVg7QUFPRDs7QUFDRCxXQUFPakIsSUFBSSxFQUFYO0FBQ0Q7O0FBL0ptQztBQWtLdENzRSxNQUFNLENBQUNDLGNBQVAsQ0FBc0JDLE1BQXRCLENBQTZCLFFBQTdCLEVBQXVDakUsS0FBdkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgTGl0RWxlbWVudCwgaHRtbCwgY3NzIH0gZnJvbSAnbGl0LWVsZW1lbnQnO1xuaW1wb3J0IHsgcmVwZWF0IH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy9yZXBlYXQnO1xuaW1wb3J0ICcuLi9hdG9tcy9ndi1saW5rJztcbmltcG9ydCB7IHVudGlsIH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy91bnRpbCc7XG5pbXBvcnQgeyBpc1NhbWVSb3V0ZXMgfSBmcm9tICcuLi9saWIvdXRpbHMnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgY2xhc3NNYXAgfSBmcm9tICdsaXQtaHRtbC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5cbi8qKlxuICogQSBtYWluIG5hdlxuICpcbiAqICMjIERldGFpbHNcbiAqICogaGFzIEB0aGVtZSBmYWNldFxuICpcbiAqIEBmaXJlcyBndi1uYXY6Y2xpY2sgLSBDdXN0b20gZXZlbnQgd2hlbiBuYXYgaXRlbSBpcyBjbGlja2VkXG4gKlxuICogQGF0dHIge0FycmF5PHthY3RpdmU6IEJvb2xlYW4sIGljb246IFN0cmluZywgcGF0aDogU3RyaW5nLCB0aXRsZTogUHJvbWlzZTxTdHJpbmc+LCB0YXJnZXQ6IFN0cmluZ30+fSByb3V0ZXMgLSBkZWZpbml0aW9uIG9mIHJvdXRlc1xuICovXG5leHBvcnQgY2xhc3MgR3ZOYXYgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICByb3V0ZXM6IHsgdHlwZTogQXJyYXkgfSxcbiAgICAgIF9yb3V0ZXM6IHsgdHlwZTogQXJyYXkgfSxcbiAgICAgIHNtYWxsOiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIF9jb21wYWN0OiB7IHR5cGU6IEJvb2xlYW4sIGF0dHJpYnV0ZTogZmFsc2UgfSxcbiAgICAgIHZlcnRpY2FsOiB7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIC8vIGxhbmd1YWdlPUNTU1xuICAgICAgY3NzYFxuICAgICAgICBuYXYge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBndi1saW5rIHtcbiAgICAgICAgICAtLWd2LWxpbmstLXRhOiBlbmQ7XG4gICAgICAgIH1cblxuICAgICAgICAudmVydGljYWwge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC52ZXJ0aWNhbCBndi1saW5rIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb21wYWN0IHtcbiAgICAgICAgICAtLWd2LWxpbmstYS0tcGg6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjc2hhZG93TGluayB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgZWFzZS1pbi1vdXQsIHdpZHRoIDI1MG1zO1xuICAgICAgICB9XG4gICAgICBgLFxuICAgIF07XG4gIH1cblxuICBfb25DbGljayhldmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGNvbnN0IHsgZGV0YWlsIH0gPSBldmVudDtcbiAgICBjb25zdCB7IHRpdGxlLCB0YXJnZXQgfSA9IGRldGFpbDtcbiAgICBpZiAodGFyZ2V0ID09PSAnX2JsYW5rJykge1xuICAgICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnY2xpY2snLCBkZXRhaWwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoIXRoaXMuX2lzTG9ja2VkKSB7XG4gICAgICAgIHRoaXMuX2lzTG9ja2VkID0gdHJ1ZTtcbiAgICAgICAgbGV0IG5leHRJbmRleCA9IDA7XG4gICAgICAgIHRoaXMuX3JvdXRlcy5mb3JFYWNoKChyb3V0ZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICBpZiAocm91dGUudGl0bGUgPT09IHRpdGxlKSB7XG4gICAgICAgICAgICByb3V0ZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgbmV4dEluZGV4ID0gaW5kZXg7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRlbGV0ZSByb3V0ZS5hY3RpdmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByb3V0ZTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3QgYWN0aXZlTGluayA9IHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCdndi1saW5rW2FjdGl2ZV0nKTtcbiAgICAgICAgY29uc3QgbmV4dExpbmsgPSB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvckFsbCgnZ3YtbGluaycpW25leHRJbmRleF07XG4gICAgICAgIGlmIChhY3RpdmVMaW5rKSB7XG4gICAgICAgICAgY29uc3Qgc2hhZG93TGluayA9IGFjdGl2ZUxpbmsuY2xvbmVOb2RlKHRydWUpO1xuICAgICAgICAgIGNvbnN0IHsgaGVpZ2h0LCB3aWR0aCB9ID0gYWN0aXZlTGluay5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICAgIHNoYWRvd0xpbmsuaWQgPSAnc2hhZG93TGluayc7XG4gICAgICAgICAgc2hhZG93TGluay5zdHlsZS50b3AgPSBgJHthY3RpdmVMaW5rLm9mZnNldFRvcH1weGA7XG4gICAgICAgICAgc2hhZG93TGluay5zdHlsZS5sZWZ0ID0gYCR7YWN0aXZlTGluay5vZmZzZXRMZWZ0fXB4YDtcbiAgICAgICAgICBzaGFkb3dMaW5rLnN0eWxlLndpZHRoID0gYCR7d2lkdGh9cHhgO1xuICAgICAgICAgIHNoYWRvd0xpbmsuc3R5bGUuaGVpZ2h0ID0gYCR7aGVpZ2h0fXB4YDtcblxuICAgICAgICAgIGFjdGl2ZUxpbmsucmVtb3ZlQXR0cmlidXRlKCdhY3RpdmUnKTtcbiAgICAgICAgICBhY3RpdmVMaW5rLnN0eWxlLmhlaWdodCA9IGAke2hlaWdodH1weGA7XG5cbiAgICAgICAgICB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignbmF2JykucHJlcGVuZChzaGFkb3dMaW5rKTtcbiAgICAgICAgICBjb25zdCBsZWZ0ID0gbmV4dExpbmsub2Zmc2V0TGVmdCAtIGFjdGl2ZUxpbmsub2Zmc2V0TGVmdDtcbiAgICAgICAgICBjb25zdCB0b3AgPSBuZXh0TGluay5vZmZzZXRUb3AgLSBhY3RpdmVMaW5rLm9mZnNldFRvcDtcblxuICAgICAgICAgIHNoYWRvd0xpbmsuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZSgke2xlZnR9cHgsJHt0b3B9cHgpYDtcblxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgbmV4dExpbmsuc2V0QXR0cmlidXRlKCdhY3RpdmUnLCB0cnVlKTtcbiAgICAgICAgICAgIHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCduYXYnKS5yZW1vdmVDaGlsZChzaGFkb3dMaW5rKTtcbiAgICAgICAgICAgIHRoaXMuX2lzTG9ja2VkID0gZmFsc2U7XG4gICAgICAgICAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdjbGljaycsIGRldGFpbCk7XG4gICAgICAgICAgfSwgMjUwKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBuZXh0TGluay5zZXRBdHRyaWJ1dGUoJ2FjdGl2ZScsIHRydWUpO1xuICAgICAgICAgIHRoaXMuX2lzTG9ja2VkID0gZmFsc2U7XG4gICAgICAgICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnY2xpY2snLCBkZXRhaWwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICAvKiogQHByb3RlY3RlZCAqL1xuICAgIHRoaXMuX3JvdXRlcyA9IFtdO1xuICAgIHRoaXMudmVydGljYWwgPSBmYWxzZTtcbiAgfVxuXG4gIHNldCByb3V0ZXMocm91dGVzKSB7XG4gICAgaWYgKHJvdXRlcykge1xuICAgICAgUHJvbWlzZS5yZXNvbHZlKHJvdXRlcykudGhlbigoX3JvdXRlcykgPT4ge1xuICAgICAgICBpZiAoIWlzU2FtZVJvdXRlcyh0aGlzLl9yb3V0ZXMsIF9yb3V0ZXMpKSB7XG4gICAgICAgICAgdGhpcy5fcm91dGVzID0gX3JvdXRlcztcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgX2dldExpbmsocm91dGUsIGluZGV4KSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyb3V0ZSlcbiAgICAgIC50aGVuKChfcm91dGUpID0+IHtcbiAgICAgICAgcmV0dXJuIGh0bWxgIDxndi1saW5rXG4gICAgICAgICAgQGd2LWxpbms6Y2xpY2s9JHt0aGlzLl9vbkNsaWNrfVxuICAgICAgICAgIC5hY3RpdmU9XCIke19yb3V0ZS5hY3RpdmV9XCJcbiAgICAgICAgICAuaWNvbj1cIiR7X3JvdXRlLmljb259XCJcbiAgICAgICAgICAucGF0aD1cIiR7X3JvdXRlLnBhdGh9XCJcbiAgICAgICAgICAudGFyZ2V0PVwiJHtfcm91dGUudGFyZ2V0fVwiXG4gICAgICAgICAgP3NtYWxsPVwiJHt0aGlzLnNtYWxsfVwiXG4gICAgICAgICAgLnRpdGxlPVwiJHtfcm91dGUudGl0bGV9XCJcbiAgICAgICAgICAuaGVscD1cIiR7dW50aWwoX3JvdXRlLmhlbHAsIG51bGwpfVwiXG4gICAgICAgICAgP3ZlcnRpY2FsPVwiJHt0aGlzLnZlcnRpY2FsfVwiXG4gICAgICAgID48L2d2LWxpbms+YDtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICBkZWxldGUgdGhpcy5fcm91dGVzW2luZGV4XTtcbiAgICAgIH0pO1xuICB9XG5cbiAgdXBkYXRlZChfY2hhbmdlZFByb3BlcnRpZXMpIHtcbiAgICBpZiAoX2NoYW5nZWRQcm9wZXJ0aWVzLmhhcygnX3JvdXRlcycpKSB7XG4gICAgICB0aGlzLl9jb21wYWN0ID0gdGhpcy5fcm91dGVzICYmIHRoaXMuX3JvdXRlcy5sZW5ndGggPiA1O1xuICAgIH1cbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBpZiAodGhpcy5fcm91dGVzKSB7XG4gICAgICByZXR1cm4gaHRtbGA8bmF2IGNsYXNzPVwiJHtjbGFzc01hcCh7IGNvbXBhY3Q6IHRoaXMuX2NvbXBhY3QsIHZlcnRpY2FsOiB0aGlzLnZlcnRpY2FsIH0pfVwiPlxuICAgICAgICAke3JlcGVhdChcbiAgICAgICAgICB0aGlzLl9yb3V0ZXMsXG4gICAgICAgICAgKHJvdXRlKSA9PiByb3V0ZSxcbiAgICAgICAgICAocm91dGUsIGluZGV4KSA9PiB1bnRpbCh0aGlzLl9nZXRMaW5rKHJvdXRlLCBpbmRleCksIGh0bWxgPGd2LWxpbmsgc2tlbGV0b24gLnZlcnRpY2FsPVwiJHt0aGlzLnZlcnRpY2FsfVwiPjwvZ3YtbGluaz5gKSxcbiAgICAgICAgKX1cbiAgICAgIDwvbmF2PmA7XG4gICAgfVxuICAgIHJldHVybiBodG1sYGA7XG4gIH1cbn1cblxud2luZG93LmN1c3RvbUVsZW1lbnRzLmRlZmluZSgnZ3YtbmF2JywgR3ZOYXYpO1xuIl19
|
|
170
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1uYXYuanMiXSwibmFtZXMiOlsiTGl0RWxlbWVudCIsImh0bWwiLCJjc3MiLCJyZXBlYXQiLCJ1bnRpbCIsImlzU2FtZVJvdXRlcyIsImRpc3BhdGNoQ3VzdG9tRXZlbnQiLCJjbGFzc01hcCIsIkd2TmF2IiwicHJvcGVydGllcyIsInJvdXRlcyIsInR5cGUiLCJBcnJheSIsIl9yb3V0ZXMiLCJzbWFsbCIsIkJvb2xlYW4iLCJfY29tcGFjdCIsImF0dHJpYnV0ZSIsInZlcnRpY2FsIiwicmVmbGVjdCIsInN0eWxlcyIsIl9vbkNsaWNrIiwiZXZlbnQiLCJzdG9wUHJvcGFnYXRpb24iLCJkZXRhaWwiLCJ0aXRsZSIsInRhcmdldCIsIl9pc0xvY2tlZCIsIm5leHRJbmRleCIsImZvckVhY2giLCJyb3V0ZSIsImluZGV4IiwiYWN0aXZlIiwiYWN0aXZlTGluayIsInNoYWRvd1Jvb3QiLCJxdWVyeVNlbGVjdG9yIiwibmV4dExpbmsiLCJxdWVyeVNlbGVjdG9yQWxsIiwic2hhZG93TGluayIsImNsb25lTm9kZSIsImhlaWdodCIsIndpZHRoIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwiaWQiLCJzdHlsZSIsInRvcCIsIm9mZnNldFRvcCIsImxlZnQiLCJvZmZzZXRMZWZ0IiwicmVtb3ZlQXR0cmlidXRlIiwicHJlcGVuZCIsInRyYW5zZm9ybSIsInNldFRpbWVvdXQiLCJzZXRBdHRyaWJ1dGUiLCJyZW1vdmVDaGlsZCIsImNvbnN0cnVjdG9yIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0aGVuIiwiX2dldExpbmsiLCJfcm91dGUiLCJpY29uIiwicGF0aCIsImhlbHAiLCJjYXRjaCIsInVwZGF0ZWQiLCJfY2hhbmdlZFByb3BlcnRpZXMiLCJoYXMiLCJsZW5ndGgiLCJyZW5kZXIiLCJjb21wYWN0Iiwid2luZG93IiwiY3VzdG9tRWxlbWVudHMiLCJkZWZpbmUiXSwibWFw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Q0FjRSxNQUFNO0FBQ1gsYUFBTyxLQUFLbkQsT0FBTCxDQUFha0IsS0FBYixDQUFQO0FBQ0QsS0FoQkksQ0FBUDtBQWlCRDs7QUFFRGtDLEVBQUFBLE9BQU8sQ0FBQ0Msa0JBQUQsRUFBcUI7QUFDMUIsUUFBSUEsa0JBQWtCLENBQUNDLEdBQW5CLENBQXVCLFNBQXZCLENBQUosRUFBdUM7QUFDckMsV0FBS25ELFFBQUwsR0FBZ0IsS0FBS0gsT0FBTCxJQUFnQixLQUFLQSxPQUFMLENBQWF1RCxNQUFiLEdBQXNCLENBQXREO0FBQ0Q7QUFDRjs7QUFFREMsRUFBQUEsTUFBTSxHQUFHO0FBQ1AsUUFBSSxLQUFLeEQsT0FBVCxFQUFrQjtBQUNoQixhQUFPWixJQUFJLGVBQWVNLFFBQVEsQ0FBQztBQUFFK0QsUUFBQUEsT0FBTyxFQUFFLEtBQUt0RCxRQUFoQjtBQUEwQkUsUUFBQUEsUUFBUSxFQUFFLEtBQUtBO0FBQXpDLE9BQUQsQ0FBdkIsTUFDUGYsTUFBTSxDQUNOLEtBQUtVLE9BREMsRUFFTGlCLEtBQUQsSUFBV0EsS0FGTCxFQUdOLENBQUNBLEtBQUQsRUFBUUMsS0FBUixLQUFrQjNCLEtBQUssQ0FBQyxLQUFLdUQsUUFBTCxDQUFjN0IsS0FBZCxFQUFxQkMsS0FBckIsQ0FBRCxFQUE4QjlCLElBQUksZ0NBQWdDLEtBQUtpQixRQUFyQyxjQUFsQyxDQUhqQixDQURDLFNBQVg7QUFPRDs7QUFDRCxXQUFPakIsSUFBSSxFQUFYO0FBQ0Q7O0FBL0ptQztBQWtLdENzRSxNQUFNLENBQUNDLGNBQVAsQ0FBc0JDLE1BQXRCLENBQTZCLFFBQTdCLEVBQXVDakUsS0FBdkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgTGl0RWxlbWVudCwgaHRtbCwgY3NzIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHJlcGVhdCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlcGVhdCc7XG5pbXBvcnQgJy4uL2F0b21zL2d2LWxpbmsnO1xuaW1wb3J0IHsgdW50aWwgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy91bnRpbCc7XG5pbXBvcnQgeyBpc1NhbWVSb3V0ZXMgfSBmcm9tICcuLi9saWIvdXRpbHMnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgY2xhc3NNYXAgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9jbGFzcy1tYXAnO1xuXG4vKipcbiAqIEEgbWFpbiBuYXZcbiAqXG4gKiAjIyBEZXRhaWxzXG4gKiAqIGhhcyBAdGhlbWUgZmFjZXRcbiAqXG4gKiBAZmlyZXMgZ3YtbmF2OmNsaWNrIC0gQ3VzdG9tIGV2ZW50IHdoZW4gbmF2IGl0ZW0gaXMgY2xpY2tlZFxuICpcbiAqIEBhdHRyIHtBcnJheTx7YWN0aXZlOiBCb29sZWFuLCBpY29uOiBTdHJpbmcsIHBhdGg6IFN0cmluZywgdGl0bGU6IFByb21pc2U8U3RyaW5nPiwgdGFyZ2V0OiBTdHJpbmd9Pn0gcm91dGVzIC0gZGVmaW5pdGlvbiBvZiByb3V0ZXNcbiAqL1xuZXhwb3J0IGNsYXNzIEd2TmF2IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgcm91dGVzOiB7IHR5cGU6IEFycmF5IH0sXG4gICAgICBfcm91dGVzOiB7IHR5cGU6IEFycmF5IH0sXG4gICAgICBzbWFsbDogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICBfY29tcGFjdDogeyB0eXBlOiBCb29sZWFuLCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgICB2ZXJ0aWNhbDogeyB0eXBlOiBCb29sZWFuLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAvLyBsYW5ndWFnZT1DU1NcbiAgICAgIGNzc2BcbiAgICAgICAgbmF2IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtbGluayB7XG4gICAgICAgICAgLS1ndi1saW5rLS10YTogZW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgLnZlcnRpY2FsIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAudmVydGljYWwgZ3YtbGluayB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuY29tcGFjdCB7XG4gICAgICAgICAgLS1ndi1saW5rLWEtLXBoOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgI3NoYWRvd0xpbmsge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDI1MG1zIGVhc2UtaW4tb3V0LCB3aWR0aCAyNTBtcztcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgX29uQ2xpY2soZXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBjb25zdCB7IGRldGFpbCB9ID0gZXZlbnQ7XG4gICAgY29uc3QgeyB0aXRsZSwgdGFyZ2V0IH0gPSBkZXRhaWw7XG4gICAgaWYgKHRhcmdldCA9PT0gJ19ibGFuaycpIHtcbiAgICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ2NsaWNrJywgZGV0YWlsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCF0aGlzLl9pc0xvY2tlZCkge1xuICAgICAgICB0aGlzLl9pc0xvY2tlZCA9IHRydWU7XG4gICAgICAgIGxldCBuZXh0SW5kZXggPSAwO1xuICAgICAgICB0aGlzLl9yb3V0ZXMuZm9yRWFjaCgocm91dGUsIGluZGV4KSA9PiB7XG4gICAgICAgICAgaWYgKHJvdXRlLnRpdGxlID09PSB0aXRsZSkge1xuICAgICAgICAgICAgcm91dGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIG5leHRJbmRleCA9IGluZGV4O1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkZWxldGUgcm91dGUuYWN0aXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcm91dGU7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IGFjdGl2ZUxpbmsgPSB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignZ3YtbGlua1thY3RpdmVdJyk7XG4gICAgICAgIGNvbnN0IG5leHRMaW5rID0gdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3JBbGwoJ2d2LWxpbmsnKVtuZXh0SW5kZXhdO1xuICAgICAgICBpZiAoYWN0aXZlTGluaykge1xuICAgICAgICAgIGNvbnN0IHNoYWRvd0xpbmsgPSBhY3RpdmVMaW5rLmNsb25lTm9kZSh0cnVlKTtcbiAgICAgICAgICBjb25zdCB7IGhlaWdodCwgd2lkdGggfSA9IGFjdGl2ZUxpbmsuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgICBzaGFkb3dMaW5rLmlkID0gJ3NoYWRvd0xpbmsnO1xuICAgICAgICAgIHNoYWRvd0xpbmsuc3R5bGUudG9wID0gYCR7YWN0aXZlTGluay5vZmZzZXRUb3B9cHhgO1xuICAgICAgICAgIHNoYWRvd0xpbmsuc3R5bGUubGVmdCA9IGAke2FjdGl2ZUxpbmsub2Zmc2V0TGVmdH1weGA7XG4gICAgICAgICAgc2hhZG93TGluay5zdHlsZS53aWR0aCA9IGAke3dpZHRofXB4YDtcbiAgICAgICAgICBzaGFkb3dMaW5rLnN0eWxlLmhlaWdodCA9IGAke2hlaWdodH1weGA7XG5cbiAgICAgICAgICBhY3RpdmVMaW5rLnJlbW92ZUF0dHJpYnV0ZSgnYWN0aXZlJyk7XG4gICAgICAgICAgYWN0aXZlTGluay5zdHlsZS5oZWlnaHQgPSBgJHtoZWlnaHR9cHhgO1xuXG4gICAgICAgICAgdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJ25hdicpLnByZXBlbmQoc2hhZG93TGluayk7XG4gICAgICAgICAgY29uc3QgbGVmdCA9IG5leHRMaW5rLm9mZnNldExlZnQgLSBhY3RpdmVMaW5rLm9mZnNldExlZnQ7XG4gICAgICAgICAgY29uc3QgdG9wID0gbmV4dExpbmsub2Zmc2V0VG9wIC0gYWN0aXZlTGluay5vZmZzZXRUb3A7XG5cbiAgICAgICAgICBzaGFkb3dMaW5rLnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGUoJHtsZWZ0fXB4LCR7dG9wfXB4KWA7XG5cbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIG5leHRMaW5rLnNldEF0dHJpYnV0ZSgnYWN0aXZlJywgdHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignbmF2JykucmVtb3ZlQ2hpbGQoc2hhZG93TGluayk7XG4gICAgICAgICAgICB0aGlzLl9pc0xvY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnY2xpY2snLCBkZXRhaWwpO1xuICAgICAgICAgIH0sIDI1MCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbmV4dExpbmsuc2V0QXR0cmlidXRlKCdhY3RpdmUnLCB0cnVlKTtcbiAgICAgICAgICB0aGlzLl9pc0xvY2tlZCA9IGZhbHNlO1xuICAgICAgICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ2NsaWNrJywgZGV0YWlsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgLyoqIEBwcm90ZWN0ZWQgKi9cbiAgICB0aGlzLl9yb3V0ZXMgPSBbXTtcbiAgICB0aGlzLnZlcnRpY2FsID0gZmFsc2U7XG4gIH1cblxuICBzZXQgcm91dGVzKHJvdXRlcykge1xuICAgIGlmIChyb3V0ZXMpIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZShyb3V0ZXMpLnRoZW4oKF9yb3V0ZXMpID0+IHtcbiAgICAgICAgaWYgKCFpc1NhbWVSb3V0ZXModGhpcy5fcm91dGVzLCBfcm91dGVzKSkge1xuICAgICAgICAgIHRoaXMuX3JvdXRlcyA9IF9yb3V0ZXM7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIF9nZXRMaW5rKHJvdXRlLCBpbmRleCkge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocm91dGUpXG4gICAgICAudGhlbigoX3JvdXRlKSA9PiB7XG4gICAgICAgIHJldHVybiBodG1sYCA8Z3YtbGlua1xuICAgICAgICAgIEBndi1saW5rOmNsaWNrPSR7dGhpcy5fb25DbGlja31cbiAgICAgICAgICAuYWN0aXZlPVwiJHtfcm91dGUuYWN0aXZlfVwiXG4gICAgICAgICAgLmljb249XCIke19yb3V0ZS5pY29ufVwiXG4gICAgICAgICAgLnBhdGg9XCIke19yb3V0ZS5wYXRofVwiXG4gICAgICAgICAgLnRhcmdldD1cIiR7X3JvdXRlLnRhcmdldH1cIlxuICAgICAgICAgID9zbWFsbD1cIiR7dGhpcy5zbWFsbH1cIlxuICAgICAgICAgIC50aXRsZT1cIiR7X3JvdXRlLnRpdGxlfVwiXG4gICAgICAgICAgLmhlbHA9XCIke3VudGlsKF9yb3V0ZS5oZWxwLCBudWxsKX1cIlxuICAgICAgICAgID92ZXJ0aWNhbD1cIiR7dGhpcy52ZXJ0aWNhbH1cIlxuICAgICAgICA+PC9ndi1saW5rPmA7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgZGVsZXRlIHRoaXMuX3JvdXRlc1tpbmRleF07XG4gICAgICB9KTtcbiAgfVxuXG4gIHVwZGF0ZWQoX2NoYW5nZWRQcm9wZXJ0aWVzKSB7XG4gICAgaWYgKF9jaGFuZ2VkUHJvcGVydGllcy5oYXMoJ19yb3V0ZXMnKSkge1xuICAgICAgdGhpcy5fY29tcGFjdCA9IHRoaXMuX3JvdXRlcyAmJiB0aGlzLl9yb3V0ZXMubGVuZ3RoID4gNTtcbiAgICB9XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgaWYgKHRoaXMuX3JvdXRlcykge1xuICAgICAgcmV0dXJuIGh0bWxgPG5hdiBjbGFzcz1cIiR7Y2xhc3NNYXAoeyBjb21wYWN0OiB0aGlzLl9jb21wYWN0LCB2ZXJ0aWNhbDogdGhpcy52ZXJ0aWNhbCB9KX1cIj5cbiAgICAgICAgJHtyZXBlYXQoXG4gICAgICAgICAgdGhpcy5fcm91dGVzLFxuICAgICAgICAgIChyb3V0ZSkgPT4gcm91dGUsXG4gICAgICAgICAgKHJvdXRlLCBpbmRleCkgPT4gdW50aWwodGhpcy5fZ2V0TGluayhyb3V0ZSwgaW5kZXgpLCBodG1sYDxndi1saW5rIHNrZWxldG9uIC52ZXJ0aWNhbD1cIiR7dGhpcy52ZXJ0aWNhbH1cIj48L2d2LWxpbms+YCksXG4gICAgICAgICl9XG4gICAgICA8L25hdj5gO1xuICAgIH1cbiAgICByZXR1cm4gaHRtbGBgO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LW5hdicsIEd2TmF2KTtcbiJdfQ==
|
|
@@ -13,13 +13,13 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { css, LitElement, html } from 'lit
|
|
16
|
+
import { css, LitElement, html } from 'lit';
|
|
17
17
|
import '../atoms/gv-button';
|
|
18
|
-
import { repeat } from 'lit
|
|
19
|
-
import { classMap } from 'lit
|
|
18
|
+
import { repeat } from 'lit/directives/repeat';
|
|
19
|
+
import { classMap } from 'lit/directives/class-map';
|
|
20
20
|
import { dispatchCustomEvent } from '../lib/events';
|
|
21
|
-
import { ifDefined } from 'lit
|
|
22
|
-
import { styleMap } from 'lit
|
|
21
|
+
import { ifDefined } from 'lit/directives/if-defined';
|
|
22
|
+
import { styleMap } from 'lit/directives/style-map';
|
|
23
23
|
/**
|
|
24
24
|
* Option component
|
|
25
25
|
*
|
|
@@ -166,4 +166,4 @@ export class GvOption extends LitElement {
|
|
|
166
166
|
|
|
167
167
|
}
|
|
168
168
|
window.customElements.define('gv-option', GvOption);
|
|
169
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1vcHRpb24uanMiXSwibmFtZXMiOlsiY3NzIiwiTGl0RWxlbWVudCIsImh0bWwiLCJyZXBlYXQiLCJjbGFzc01hcCIsImRpc3BhdGNoQ3VzdG9tRXZlbnQiLCJpZkRlZmluZWQiLCJzdHlsZU1hcCIsIkd2T3B0aW9uIiwicHJvcGVydGllcyIsIm9wdGlvbnMiLCJ0eXBlIiwiQXJyYXkiLCJfb3B0aW9ucyIsImF0dHJpYnV0ZSIsIl9oYXNEZXNjcmlwdGlvbiIsInZhbHVlIiwiU3RyaW5nIiwicmVmbGVjdCIsIm11bHRpcGxlIiwiQm9vbGVhbiIsInJldmVyc2UiLCJzbWFsbCIsIm91dGxpbmVkIiwiZGlzYWJsZWQiLCJzdHlsZXMiLCJjb25zdHJ1Y3RvciIsIl9vbkNsaWNrIiwib3B0aW9uIiwic2V0VmFsdWUiLCJkaXNwYXRjaEV2ZW50IiwiRXZlbnQiLCJidWJibGVzIiwiY2FuY2VsYWJsZSIsInBlcmZvcm1VcGRhdGUiLCJzaGFkb3dSb290IiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJidG4iLCJpbmNsdWRlcyIsImlkIiwiZmlsdGVyIiwib3B0SWQiLCJQcm9taXNlIiwiYWxsIiwidGhlbiIsImZpbmQiLCJvcHQiLCJkZXNjcmlwdGlvbiIsImlzQWN0aXZlIiwiX3JlbmRlck9wdGlvbiIsImluZGV4IiwiaWNvbiIsImljb25SaWdodCIsInRpdGxlIiwiYmluZCIsImFjdGl2ZSIsImVudHJ5IiwiZXhpdCIsImxlbmd0aCIsImxhYmVsIiwiaW1hZ2UiLCJyZW5kZXIiLCJjbGFzc2VzIiwiYm94Iiwid2luZG93IiwiY3VzdG9tRWxlbWVudHMiLCJkZWZpbmUiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLEdBQVQsRUFBY0MsVUFBZCxFQUEwQkMsSUFBMUIsUUFBc0MsYUFBdEM7QUFDQSxPQUFPLG9CQUFQO0FBQ0EsU0FBU0MsTUFBVCxRQUF1Qiw0QkFBdkI7QUFDQSxTQUFTQyxRQUFULFFBQXlCLCtCQUF6QjtBQUNBLFNBQVNDLG1CQUFULFFBQW9DLGVBQXBDO0FBQ0EsU0FBU0MsU0FBVCxRQUEwQixnQ0FBMUI7QUFDQSxTQUFTQyxRQUFULFFBQXlCLCtCQUF6QjtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxPQUFPLE1BQU1DLFFBQU4sU0FBdUJQLFVBQXZCLENBQWtDO0FBQ2xCLGFBQVZRLFVBQVUsR0FBRztBQUN0QixXQUFPO0FBQ0xDLE1BQUFBLE9BQU8sRUFBRTtBQUFFQyxRQUFBQSxJQUFJLEVBQUVDO0FBQVIsT0FESjtBQUVMQyxNQUFBQSxRQUFRLEVBQUU7QUFBRUYsUUFBQUEsSUFBSSxFQUFFQyxLQUFSO0FBQWVFLFFBQUFBLFNBQVMsRUFBRTtBQUExQixPQUZMO0FBR0xDLE1BQUFBLGVBQWUsRUFBRTtBQUFFSixRQUFBQSxJQUFJLEVBQUVDLEtBQVI7QUFBZUUsUUFBQUEsU0FBUyxFQUFFO0FBQTFCLE9BSFo7QUFJTEUsTUFBQUEsS0FBSyxFQUFFO0FBQUVMLFFBQUFBLElBQUksRUFBRU0sTUFBUjtBQUFnQkMsUUFBQUEsT0FBTyxFQUFFO0FBQXpCLE9BSkY7QUFLTEMsTUFBQUEsUUFBUSxFQUFFO0FBQUVSLFFBQUFBLElBQUksRUFBRVM7QUFBUixPQUxMO0FBTUxDLE1BQUFBLE9BQU8sRUFBRTtBQUFFVixRQUFBQSxJQUFJLEVBQUVTO0FBQVIsT0FOSjtBQU9MRSxNQUFBQSxLQUFLLEVBQUU7QUFBRVgsUUFBQUEsSUFBSSxFQUFFUztBQUFSLE9BUEY7QUFRTEcsTUFBQUEsUUFBUSxFQUFFO0FBQUVaLFFBQUFBLElBQUksRUFBRVM7QUFBUixPQVJMO0FBU0xJLE1BQUFBLFFBQVEsRUFBRTtBQUFFYixRQUFBQSxJQUFJLEVBQUVTLE9BQVI7QUFBaUJGLFFBQUFBLE9BQU8sRUFBRTtBQUExQjtBQVRMLEtBQVA7QUFXRDs7QUFFZ0IsYUFBTk8sTUFBTSxHQUFHO0FBQ2xCLFdBQU8sQ0FDTDtBQUNBekIsSUFBQUEsR0FBRywyOUJBRkUsQ0FBUDtBQXdFRDs7QUFFRDBCLEVBQUFBLFdBQVcsR0FBRztBQUNaO0FBQ0EsU0FBS1AsUUFBTCxHQUFnQixLQUFoQjtBQUNBLFNBQUtFLE9BQUwsR0FBZSxLQUFmO0FBQ0Q7O0FBRURNLEVBQUFBLFFBQVEsQ0FBQ0MsTUFBRCxFQUFTO0FBQ2YsU0FBS0MsUUFBTCxDQUFjRCxNQUFkO0FBQ0F2QixJQUFBQSxtQkFBbUIsQ0FBQyxJQUFELEVBQU8sUUFBUCxFQUFpQnVCLE1BQWpCLENBQW5CO0FBQ0EsU0FBS0UsYUFBTCxDQUFtQixJQUFJQyxLQUFKLENBQVUsT0FBVixDQUFuQixFQUF1QztBQUFFQyxNQUFBQSxPQUFPLEVBQUUsSUFBWDtBQUFpQkMsTUFBQUEsVUFBVSxFQUFFO0FBQTdCLEtBQXZDO0FBQ0Q7O0FBRWtCLFFBQWJDLGFBQWEsR0FBRztBQUNwQixTQUFLQyxVQUFMLENBQWdCQyxnQkFBaEIsQ0FBaUMsV0FBakMsRUFBOENDLE9BQTlDLENBQXVEQyxHQUFELElBQVNBLEdBQUcsQ0FBQ0osYUFBSixFQUEvRDtBQUNBLFdBQU8sTUFBTUEsYUFBTixFQUFQO0FBQ0Q7O0FBRURMLEVBQUFBLFFBQVEsQ0FBQ0QsTUFBRCxFQUFTO0FBQ2YsUUFBSUEsTUFBSixFQUFZO0FBQ1YsVUFBSSxLQUFLVCxRQUFULEVBQW1CO0FBQ2pCLFlBQUksS0FBS0gsS0FBTCxDQUFXdUIsUUFBWCxDQUFvQlgsTUFBTSxDQUFDWSxFQUEzQixDQUFKLEVBQW9DO0FBQ2xDLGVBQUt4QixLQUFMLEdBQWEsS0FBS0EsS0FBTCxDQUFXeUIsTUFBWCxDQUFtQkMsS0FBRCxJQUFXO0FBQ3hDLG1CQUFPQSxLQUFLLEtBQUtkLE1BQU0sQ0FBQ1ksRUFBeEI7QUFDRCxXQUZZLENBQWI7QUFHRCxTQUpELE1BSU87QUFDTCxlQUFLeEIsS0FBTCxHQUFhLENBQUMsR0FBRyxLQUFLQSxLQUFULEVBQWdCWSxNQUFNLENBQUNZLEVBQXZCLENBQWI7QUFDRDtBQUNGLE9BUkQsTUFRTztBQUNMLGFBQUt4QixLQUFMLEdBQWFZLE1BQU0sQ0FBQ1ksRUFBcEI7QUFDRDtBQUNGO0FBQ0Y7O0FBRVUsTUFBUDlCLE9BQU8sQ0FBQ0EsT0FBRCxFQUFVO0FBQ25CLFFBQUlBLE9BQUosRUFBYTtBQUNYaUMsTUFBQUEsT0FBTyxDQUFDQyxHQUFSLENBQVlsQyxPQUFaLEVBQXFCbUMsSUFBckIsQ0FBMkJoQyxRQUFELElBQWM7QUFDdEMsYUFBS0EsUUFBTCxHQUFnQkEsUUFBaEI7QUFDQSxhQUFLRSxlQUFMLEdBQXVCLEtBQUtGLFFBQUwsQ0FBY2lDLElBQWQsQ0FBb0JDLEdBQUQsSUFBU0EsR0FBRyxDQUFDQyxXQUFKLElBQW1CLElBQS9DLEtBQXdELElBQS9FO0FBQ0QsT0FIRDtBQUlEO0FBQ0Y7O0FBRURDLEVBQUFBLFFBQVEsQ0FBQ3JCLE1BQUQsRUFBUztBQUNmLFFBQUksS0FBS1osS0FBVCxFQUFnQjtBQUNkLFVBQUksS0FBS0csUUFBVCxFQUFtQjtBQUNqQixlQUFPLEtBQUtILEtBQUwsQ0FBV3VCLFFBQVgsQ0FBb0JYLE1BQU0sQ0FBQ1ksRUFBM0IsQ0FBUDtBQUNELE9BRkQsTUFFTztBQUNMLGVBQU8sS0FBS3hCLEtBQUwsS0FBZVksTUFBTSxDQUFDWSxFQUE3QjtBQUNEO0FBQ0Y7O0FBQ0QsV0FBTyxLQUFQO0FBQ0Q7O0FBRURVLEVBQUFBLGFBQWEsQ0FBQ3RCLE1BQUQsRUFBU3VCLEtBQVQsRUFBZ0I7QUFDM0IsVUFBTUYsUUFBUSxHQUFHLEtBQUtBLFFBQUwsQ0FBY3JCLE1BQWQsQ0FBakI7QUFDQSxVQUFNTCxRQUFRLEdBQUcsS0FBS0EsUUFBTCxJQUFrQixDQUFDMEIsUUFBRCxJQUFhLEtBQUtsQyxlQUFyRDtBQUNBLFdBQU9iLElBQUkscUJBQ0RJLFNBQVMsQ0FBQyxDQUFDLEtBQUtTLGVBQU4sR0FBd0JhLE1BQU0sQ0FBQ3dCLElBQS9CLEdBQXNDLElBQXZDLENBRFIsaUJBRUk5QyxTQUFTLENBQUMsQ0FBQ3NCLE1BQU0sQ0FBQ3dCLElBQVIsSUFBZ0J4QixNQUFNLENBQUN5QixTQUF2QixHQUFtQ3pCLE1BQU0sQ0FBQ3lCLFNBQTFDLEdBQXNELElBQXZELENBRmIsYUFHQy9DLFNBQVMsQ0FBQ3NCLE1BQU0sQ0FBQzBCLEtBQVIsQ0FIVixlQUlHTCxRQUpILGFBS0MsS0FBSzNCLEtBTE4sZ0JBTUlNLE1BQU0sQ0FBQ0osUUFBUCxJQUFtQixLQUFLQSxRQU41QixhQU9DLEtBQUtHLFFBQUwsQ0FBYzRCLElBQWQsQ0FBbUIsSUFBbkIsRUFBeUIzQixNQUF6QixDQVBELGdCQVFJTCxRQVJKLFlBU0FuQixRQUFRLENBQUM7QUFDaEJvRCxNQUFBQSxNQUFNLEVBQUVQLFFBRFE7QUFFaEJRLE1BQUFBLEtBQUssRUFBRU4sS0FBSyxLQUFLLENBRkQ7QUFHaEJPLE1BQUFBLElBQUksRUFBRVAsS0FBSyxLQUFLLEtBQUt0QyxRQUFMLENBQWM4QyxNQUFkLEdBQXVCLENBSHZCO0FBSWhCWCxNQUFBQSxXQUFXLEVBQUVwQixNQUFNLENBQUNvQixXQUFQLElBQXNCO0FBSm5CLEtBQUQsQ0FUUixNQWdCUCxDQUFDLEtBQUtqQyxlQUFOLEdBQ0VhLE1BQU0sQ0FBQzBCLEtBQVAsSUFBZ0IsSUFBaEIsR0FDRTFCLE1BQU0sQ0FBQ2dDLEtBQVAsSUFBZ0JoQyxNQUFNLENBQUMwQixLQUR6QixHQUVFLEVBSEosR0FJRXBELElBQUkseUJBQ0EwQixNQUFNLENBQUN3QixJQUFQLEdBQ0VsRCxJQUFJLG1CQUFtQjBCLE1BQU0sQ0FBQ3dCLElBQTFCLGNBRE4sR0FFRXhCLE1BQU0sQ0FBQ2lDLEtBQVAsR0FDQTNELElBQUksa0JBQWtCMEIsTUFBTSxDQUFDaUMsS0FBekIsZUFESixHQUVBLEVBTEYsdUJBTW1CakMsTUFBTSxDQUFDMEIsS0FOMUIsdURBTzZDMUIsTUFBTSxDQUFDb0IsV0FQcEQsaUJBcEJDLGVBQVg7QUE4QkQ7O0FBRURjLEVBQUFBLE1BQU0sR0FBRztBQUNQLFFBQUksS0FBS2pELFFBQVQsRUFBbUI7QUFDakIsWUFBTWtELE9BQU8sR0FBRztBQUNkQyxRQUFBQSxHQUFHLEVBQUUsSUFEUztBQUVkaEIsUUFBQUEsV0FBVyxFQUFFLEtBQUtqQyxlQUZKO0FBR2RNLFFBQUFBLE9BQU8sRUFBRSxLQUFLQTtBQUhBLE9BQWhCO0FBS0EsYUFBT25CLElBQUksZUFDQUUsUUFBUSxDQUFDMkQsT0FBRCxDQURSLFlBRUF4RCxRQUFRLENBQUM7QUFBRSxpQ0FBMEIsVUFBUyxLQUFLTSxRQUFMLENBQWM4QyxNQUFPO0FBQTFELE9BQUQsQ0FGUixNQUlQeEQsTUFBTSxDQUNOLEtBQUtVLFFBREMsRUFFTGUsTUFBRCxJQUFZQSxNQUZOLEVBR04sQ0FBQ0EsTUFBRCxFQUFTdUIsS0FBVCxLQUFtQmpELElBQUksR0FBRyxLQUFLZ0QsYUFBTCxDQUFtQnRCLE1BQW5CLEVBQTJCdUIsS0FBM0IsQ0FBSCxFQUhqQixDQUpDLFNBQVg7QUFVRDs7QUFDRCxXQUFPakQsSUFBSSxFQUFYO0FBQ0Q7O0FBck1zQztBQXdNekMrRCxNQUFNLENBQUNDLGNBQVAsQ0FBc0JDLE1BQXRCLENBQTZCLFdBQTdCLEVBQTBDM0QsUUFBMUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgY3NzLCBMaXRFbGVtZW50LCBodG1sIH0gZnJvbSAnbGl0LWVsZW1lbnQnO1xuaW1wb3J0ICcuLi9hdG9tcy9ndi1idXR0b24nO1xuaW1wb3J0IHsgcmVwZWF0IH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy9yZXBlYXQnO1xuaW1wb3J0IHsgY2xhc3NNYXAgfSBmcm9tICdsaXQtaHRtbC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5pbXBvcnQgeyBkaXNwYXRjaEN1c3RvbUV2ZW50IH0gZnJvbSAnLi4vbGliL2V2ZW50cyc7XG5pbXBvcnQgeyBpZkRlZmluZWQgfSBmcm9tICdsaXQtaHRtbC9kaXJlY3RpdmVzL2lmLWRlZmluZWQnO1xuaW1wb3J0IHsgc3R5bGVNYXAgfSBmcm9tICdsaXQtaHRtbC9kaXJlY3RpdmVzL3N0eWxlLW1hcCc7XG5cbi8qKlxuICogT3B0aW9uIGNvbXBvbmVudFxuICpcbiAqICMjIERldGFpbHNcbiAqICogaGFzIEB0aGVtZSBmYWNldFxuICpcbiAqIEBhdHRyIHtBcnJheTx7aWQsIHRpdGxlLCBpY29uPywgYWN0aXZlPywgZGVzY3JpcHRpb24/LCBsYWJlbD99Pn0gb3B0aW9ucyAtIEFuIGFycmF5IG9mIG9wdGlvbnMuXG4gKiBAYXR0ciB7U3RyaW5nfEFycmF5fSB2YWx1ZSAtIFNlbGVjdGVkIHZhbHVlIGlkLCBhcnJheSB3aXRoIG11bHRpcGxlIG9wdGlvbiBpZHMuXG4gKiBAYXR0ciB7Qm9vbGVhbn0gbXVsdGlwbGUgLSBJZiB0cnVlLCBjYW4gY2hvb3NlIHNldmVyYWwgb3B0aW9uXG4gKiBAYXR0ciB7Qm9vbGVhbn0gcmV2ZXJzZSAtIElmIHRydWUsIHRpdGxlIGFuZCBkZXNjcmlwdGlvbiBhcmUgcmV2ZXJzZWQuXG4gKiBAYXR0ciB7Qm9vbGVhbn0gc21hbGwgLSBJZiB0cnVlLCB1c2Ugc21hbGwgYnV0dG9uIGZvciBvcHRpb25zXG4gKiBAYXR0ciB7Qm9vbGVhbn0gb3V0bGluZWQgLSBJZiB0cnVlLCB1c2Ugb3V0bGluZWQgYnV0dG9uIGZvciBvcHRpb25zXG4gKlxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1vcHRpb24tLWJnYz12YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpXSAtIEJhY2tncm91bmQgY29sb3JcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LW9wdGlvbi0tYmRycz0wLjE1cmVtXSAtIEJvcmRlciByYWRpdXNcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LW9wdGlvbi1idXR0b24tLW1hdz0yMDBweF0gLSBCdXR0b24gbWF4IHdpZHRoXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1vcHRpb24taWNvbi0tcz02NHB4XSAtIEljb24gc2l6ZVxuICovXG5leHBvcnQgY2xhc3MgR3ZPcHRpb24gZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBvcHRpb25zOiB7IHR5cGU6IEFycmF5IH0sXG4gICAgICBfb3B0aW9uczogeyB0eXBlOiBBcnJheSwgYXR0cmlidXRlOiBmYWxzZSB9LFxuICAgICAgX2hhc0Rlc2NyaXB0aW9uOiB7IHR5cGU6IEFycmF5LCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgICB2YWx1ZTogeyB0eXBlOiBTdHJpbmcsIHJlZmxlY3Q6IHRydWUgfSxcbiAgICAgIG11bHRpcGxlOiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIHJldmVyc2U6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgc21hbGw6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgb3V0bGluZWQ6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgZGlzYWJsZWQ6IHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9LFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0eWxlcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgLy8gbGFuZ3VhZ2U9Q1NTXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tcDogNXB4O1xuICAgICAgICAgIG1hcmdpbjogMC4ycmVtO1xuICAgICAgICAgIC0tYmRyczogdmFyKC0tZ3Ytb3B0aW9uLS1iZHJzLCAwLjE1cmVtKTtcbiAgICAgICAgICAtLW1hdzogdmFyKC0tZ3Ytb3B0aW9uLWJ1dHRvbi0tbWF3LCAyMDBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAuYm94LmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtZ2FwOiAwLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICBndi1idXR0b24ge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LWJ1dHRvbi5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgZmxleDogMSAxIHZhcigtLW1hdyk7XG4gICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXcpO1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtYnV0dG9uOm5vdCguZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgLS1ndi1idXR0b24tLWJkcnM6IDA7XG4gICAgICAgICAgLS1ndi1idXR0b24tLWJnYzogdmFyKC0tZ3Ytb3B0aW9uLS1iZ2MsIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZikpO1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtYnV0dG9uOm5vdCguZGVzY3JpcHRpb24pLmVudHJ5IHtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tYmRyczogdmFyKC0tYmRycykgMCAwIHZhcigtLWJkcnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtYnV0dG9uOm5vdCguZGVzY3JpcHRpb24pLmV4aXQge1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1iZHJzOiAwIHZhcigtLWJkcnMpIHZhcigtLWJkcnMpIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IHByZS1saW5lO1xuICAgICAgICAgIC0tZ3YtaWNvbi0tczogdmFyKC0tZ3Ytb3B0aW9uLWljb24tLXMsIDY0cHgpO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LWltYWdlIHtcbiAgICAgICAgICBoZWlnaHQ6IDY0cHg7XG4gICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgLS1ndi1pbWFnZS0tb2Y6IGZpbGw7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICAucmV2ZXJzZSAuY29udGVudCB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1sLCAxOHB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBtYXJnaW46IDAuNXJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtYnV0dG9uLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLm11bHRpcGxlID0gZmFsc2U7XG4gICAgdGhpcy5yZXZlcnNlID0gZmFsc2U7XG4gIH1cblxuICBfb25DbGljayhvcHRpb24pIHtcbiAgICB0aGlzLnNldFZhbHVlKG9wdGlvbik7XG4gICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnc2VsZWN0Jywgb3B0aW9uKTtcbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdpbnB1dCcpLCB7IGJ1YmJsZXM6IHRydWUsIGNhbmNlbGFibGU6IHRydWUgfSk7XG4gIH1cblxuICBhc3luYyBwZXJmb3JtVXBkYXRlKCkge1xuICAgIHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yQWxsKCdndi1idXR0b24nKS5mb3JFYWNoKChidG4pID0+IGJ0bi5wZXJmb3JtVXBkYXRlKCkpO1xuICAgIHJldHVybiBzdXBlci5wZXJmb3JtVXBkYXRlKCk7XG4gIH1cblxuICBzZXRWYWx1ZShvcHRpb24pIHtcbiAgICBpZiAob3B0aW9uKSB7XG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgICBpZiAodGhpcy52YWx1ZS5pbmNsdWRlcyhvcHRpb24uaWQpKSB7XG4gICAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMudmFsdWUuZmlsdGVyKChvcHRJZCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG9wdElkICE9PSBvcHRpb24uaWQ7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlLCBvcHRpb24uaWRdO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZhbHVlID0gb3B0aW9uLmlkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNldCBvcHRpb25zKG9wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgUHJvbWlzZS5hbGwob3B0aW9ucykudGhlbigoX29wdGlvbnMpID0+IHtcbiAgICAgICAgdGhpcy5fb3B0aW9ucyA9IF9vcHRpb25zO1xuICAgICAgICB0aGlzLl9oYXNEZXNjcmlwdGlvbiA9IHRoaXMuX29wdGlvbnMuZmluZCgob3B0KSA9PiBvcHQuZGVzY3JpcHRpb24gIT0gbnVsbCkgIT0gbnVsbDtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGlzQWN0aXZlKG9wdGlvbikge1xuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5pbmNsdWRlcyhvcHRpb24uaWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUgPT09IG9wdGlvbi5pZDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgX3JlbmRlck9wdGlvbihvcHRpb24sIGluZGV4KSB7XG4gICAgY29uc3QgaXNBY3RpdmUgPSB0aGlzLmlzQWN0aXZlKG9wdGlvbik7XG4gICAgY29uc3Qgb3V0bGluZWQgPSB0aGlzLm91dGxpbmVkIHx8ICghaXNBY3RpdmUgJiYgdGhpcy5faGFzRGVzY3JpcHRpb24pO1xuICAgIHJldHVybiBodG1sYDxndi1idXR0b25cbiAgICAgIC5pY29uPSR7aWZEZWZpbmVkKCF0aGlzLl9oYXNEZXNjcmlwdGlvbiA/IG9wdGlvbi5pY29uIDogbnVsbCl9XG4gICAgICAuaWNvblJpZ2h0PSR7aWZEZWZpbmVkKCFvcHRpb24uaWNvbiAmJiBvcHRpb24uaWNvblJpZ2h0ID8gb3B0aW9uLmljb25SaWdodCA6IG51bGwpfVxuICAgICAgLnRpdGxlPVwiJHtpZkRlZmluZWQob3B0aW9uLnRpdGxlKX1cIlxuICAgICAgLnByaW1hcnk9XCIke2lzQWN0aXZlfVwiXG4gICAgICAuc21hbGw9XCIke3RoaXMuc21hbGx9XCJcbiAgICAgIC5kaXNhYmxlZD1cIiR7b3B0aW9uLmRpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWR9XCJcbiAgICAgIEBjbGljaz1cIiR7dGhpcy5fb25DbGljay5iaW5kKHRoaXMsIG9wdGlvbil9XCJcbiAgICAgIC5vdXRsaW5lZD1cIiR7b3V0bGluZWR9XCJcbiAgICAgIGNsYXNzPVwiJHtjbGFzc01hcCh7XG4gICAgICAgIGFjdGl2ZTogaXNBY3RpdmUsXG4gICAgICAgIGVudHJ5OiBpbmRleCA9PT0gMCxcbiAgICAgICAgZXhpdDogaW5kZXggPT09IHRoaXMuX29wdGlvbnMubGVuZ3RoIC0gMSxcbiAgICAgICAgZGVzY3JpcHRpb246IG9wdGlvbi5kZXNjcmlwdGlvbiAhPSBudWxsLFxuICAgICAgfSl9XCJcbiAgICA+XG4gICAgICAkeyF0aGlzLl9oYXNEZXNjcmlwdGlvblxuICAgICAgICA/IG9wdGlvbi50aXRsZSAhPSBudWxsXG4gICAgICAgICAgPyBvcHRpb24ubGFiZWwgfHwgb3B0aW9uLnRpdGxlXG4gICAgICAgICAgOiAnJ1xuICAgICAgICA6IGh0bWxgPGRpdiBjbGFzcz1cImNvbnRlbnRcIj5cbiAgICAgICAgICAgICR7b3B0aW9uLmljb25cbiAgICAgICAgICAgICAgPyBodG1sYDxndi1pY29uIHNoYXBlPVwiJHtvcHRpb24uaWNvbn1cIj48L2d2LWljb24+YFxuICAgICAgICAgICAgICA6IG9wdGlvbi5pbWFnZVxuICAgICAgICAgICAgICA/IGh0bWxgPGd2LWltYWdlIHNyYz1cIiR7b3B0aW9uLmltYWdlfVwiPjwvZ3YtaW1hZ2U+YFxuICAgICAgICAgICAgICA6ICcnfVxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+JHtvcHRpb24udGl0bGV9PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb24tY29udGVudFwiIC5pbm5lckhUTUw9XCIke29wdGlvbi5kZXNjcmlwdGlvbn1cIj48L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5gfVxuICAgIDwvZ3YtYnV0dG9uPmA7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgaWYgKHRoaXMuX29wdGlvbnMpIHtcbiAgICAgIGNvbnN0IGNsYXNzZXMgPSB7XG4gICAgICAgIGJveDogdHJ1ZSxcbiAgICAgICAgZGVzY3JpcHRpb246IHRoaXMuX2hhc0Rlc2NyaXB0aW9uLFxuICAgICAgICByZXZlcnNlOiB0aGlzLnJldmVyc2UsXG4gICAgICB9O1xuICAgICAgcmV0dXJuIGh0bWxgPGRpdlxuICAgICAgICBjbGFzcz1cIiR7Y2xhc3NNYXAoY2xhc3Nlcyl9XCJcbiAgICAgICAgc3R5bGU9XCIke3N0eWxlTWFwKHsgJ2dyaWQtdGVtcGxhdGUtY29sdW1ucyc6IGByZXBlYXQoJHt0aGlzLl9vcHRpb25zLmxlbmd0aH0sIGF1dG8pYCB9KX1cIlxuICAgICAgPlxuICAgICAgICAke3JlcGVhdChcbiAgICAgICAgICB0aGlzLl9vcHRpb25zLFxuICAgICAgICAgIChvcHRpb24pID0+IG9wdGlvbixcbiAgICAgICAgICAob3B0aW9uLCBpbmRleCkgPT4gaHRtbGAke3RoaXMuX3JlbmRlck9wdGlvbihvcHRpb24sIGluZGV4KX1gLFxuICAgICAgICApfVxuICAgICAgPC9kaXY+YDtcbiAgICB9XG4gICAgcmV0dXJuIGh0bWxgYDtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1vcHRpb24nLCBHdk9wdGlvbik7XG4iXX0=
|
|
169
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1vcHRpb24uanMiXSwibmFtZXMiOlsiY3NzIiwiTGl0RWxlbWVudCIsImh0bWwiLCJyZXBlYXQiLCJjbGFzc01hcCIsImRpc3BhdGNoQ3VzdG9tRXZlbnQiLCJpZkRlZmluZWQiLCJzdHlsZU1hcCIsIkd2T3B0aW9uIiwicHJvcGVydGllcyIsIm9wdGlvbnMiLCJ0eXBlIiwiQXJyYXkiLCJfb3B0aW9ucyIsImF0dHJpYnV0ZSIsIl9oYXNEZXNjcmlwdGlvbiIsInZhbHVlIiwiU3RyaW5nIiwicmVmbGVjdCIsIm11bHRpcGxlIiwiQm9vbGVhbiIsInJldmVyc2UiLCJzbWFsbCIsIm91dGxpbmVkIiwiZGlzYWJsZWQiLCJzdHlsZXMiLCJjb25zdHJ1Y3RvciIsIl9vbkNsaWNrIiwib3B0aW9uIiwic2V0VmFsdWUiLCJkaXNwYXRjaEV2ZW50IiwiRXZlbnQiLCJidWJibGVzIiwiY2FuY2VsYWJsZSIsInBlcmZvcm1VcGRhdGUiLCJzaGFkb3dSb290IiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJidG4iLCJpbmNsdWRlcyIsImlkIiwiZmlsdGVyIiwib3B0SWQiLCJQcm9taXNlIiwiYWxsIiwidGhlbiIsImZpbmQiLCJvcHQiLCJkZXNjcmlwdGlvbiIsImlzQWN0aXZlIiwiX3JlbmRlck9wdGlvbiIsImluZGV4IiwiaWNvbiIsImljb25SaWdodCIsInRpdGxlIiwiYmluZCIsImFjdGl2ZSIsImVudHJ5IiwiZXhpdCIsImxlbmd0aCIsImxhYmVsIiwiaW1hZ2UiLCJyZW5kZXIiLCJjbGFzc2VzIiwiYm94Iiwid2luZG93IiwiY3VzdG9tRWxlbWVudHMiLCJkZWZpbmUiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVNBLEdBQVQsRUFB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QVg7QUE4QkQ7O0FBRURjLEVBQUFBLE1BQU0sR0FBRztBQUNQLFFBQUksS0FBS2pELFFBQVQsRUFBbUI7QUFDakIsWUFBTWtELE9BQU8sR0FBRztBQUNkQyxRQUFBQSxHQUFHLEVBQUUsSUFEUztBQUVkaEIsUUFBQUEsV0FBVyxFQUFFLEtBQUtqQyxlQUZKO0FBR2RNLFFBQUFBLE9BQU8sRUFBRSxLQUFLQTtBQUhBLE9BQWhCO0FBS0EsYUFBT25CLElBQUksZUFDQUUsUUFBUSxDQUFDMkQsT0FBRCxDQURSLFlBRUF4RCxRQUFRLENBQUM7QUFBRSxpQ0FBMEIsVUFBUyxLQUFLTSxRQUFMLENBQWM4QyxNQUFPO0FBQTFELE9BQUQsQ0FGUixNQUlQeEQsTUFBTSxDQUNOLEtBQUtVLFFBREMsRUFFTGUsTUFBRCxJQUFZQSxNQUZOLEVBR04sQ0FBQ0EsTUFBRCxFQUFTdUIsS0FBVCxLQUFtQmpELElBQUksR0FBRyxLQUFLZ0QsYUFBTCxDQUFtQnRCLE1BQW5CLEVBQTJCdUIsS0FBM0IsQ0FBSCxFQUhqQixDQUpDLFNBQVg7QUFVRDs7QUFDRCxXQUFPakQsSUFBSSxFQUFYO0FBQ0Q7O0FBck1zQztBQXdNekMrRCxNQUFNLENBQUNDLGNBQVAsQ0FBc0JDLE1BQXRCLENBQTZCLFdBQTdCLEVBQTBDM0QsUUFBMUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgY3NzLCBMaXRFbGVtZW50LCBodG1sIH0gZnJvbSAnbGl0JztcbmltcG9ydCAnLi4vYXRvbXMvZ3YtYnV0dG9uJztcbmltcG9ydCB7IHJlcGVhdCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlcGVhdCc7XG5pbXBvcnQgeyBjbGFzc01hcCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5pbXBvcnQgeyBkaXNwYXRjaEN1c3RvbUV2ZW50IH0gZnJvbSAnLi4vbGliL2V2ZW50cyc7XG5pbXBvcnQgeyBpZkRlZmluZWQgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9pZi1kZWZpbmVkJztcbmltcG9ydCB7IHN0eWxlTWFwIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvc3R5bGUtbWFwJztcblxuLyoqXG4gKiBPcHRpb24gY29tcG9uZW50XG4gKlxuICogIyMgRGV0YWlsc1xuICogKiBoYXMgQHRoZW1lIGZhY2V0XG4gKlxuICogQGF0dHIge0FycmF5PHtpZCwgdGl0bGUsIGljb24/LCBhY3RpdmU/LCBkZXNjcmlwdGlvbj8sIGxhYmVsP30+fSBvcHRpb25zIC0gQW4gYXJyYXkgb2Ygb3B0aW9ucy5cbiAqIEBhdHRyIHtTdHJpbmd8QXJyYXl9IHZhbHVlIC0gU2VsZWN0ZWQgdmFsdWUgaWQsIGFycmF5IHdpdGggbXVsdGlwbGUgb3B0aW9uIGlkcy5cbiAqIEBhdHRyIHtCb29sZWFufSBtdWx0aXBsZSAtIElmIHRydWUsIGNhbiBjaG9vc2Ugc2V2ZXJhbCBvcHRpb25cbiAqIEBhdHRyIHtCb29sZWFufSByZXZlcnNlIC0gSWYgdHJ1ZSwgdGl0bGUgYW5kIGRlc2NyaXB0aW9uIGFyZSByZXZlcnNlZC5cbiAqIEBhdHRyIHtCb29sZWFufSBzbWFsbCAtIElmIHRydWUsIHVzZSBzbWFsbCBidXR0b24gZm9yIG9wdGlvbnNcbiAqIEBhdHRyIHtCb29sZWFufSBvdXRsaW5lZCAtIElmIHRydWUsIHVzZSBvdXRsaW5lZCBidXR0b24gZm9yIG9wdGlvbnNcbiAqXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LW9wdGlvbi0tYmdjPXZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZildIC0gQmFja2dyb3VuZCBjb2xvclxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3Ytb3B0aW9uLS1iZHJzPTAuMTVyZW1dIC0gQm9yZGVyIHJhZGl1c1xuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3Ytb3B0aW9uLWJ1dHRvbi0tbWF3PTIwMHB4XSAtIEJ1dHRvbiBtYXggd2lkdGhcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LW9wdGlvbi1pY29uLS1zPTY0cHhdIC0gSWNvbiBzaXplXG4gKi9cbmV4cG9ydCBjbGFzcyBHdk9wdGlvbiBleHRlbmRzIExpdEVsZW1lbnQge1xuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG9wdGlvbnM6IHsgdHlwZTogQXJyYXkgfSxcbiAgICAgIF9vcHRpb25zOiB7IHR5cGU6IEFycmF5LCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgICBfaGFzRGVzY3JpcHRpb246IHsgdHlwZTogQXJyYXksIGF0dHJpYnV0ZTogZmFsc2UgfSxcbiAgICAgIHZhbHVlOiB7IHR5cGU6IFN0cmluZywgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgbXVsdGlwbGU6IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgcmV2ZXJzZTogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICBzbWFsbDogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICBvdXRsaW5lZDogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICBkaXNhYmxlZDogeyB0eXBlOiBCb29sZWFuLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAvLyBsYW5ndWFnZT1DU1NcbiAgICAgIGNzc2BcbiAgICAgICAgOmhvc3Qge1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1wOiA1cHg7XG4gICAgICAgICAgbWFyZ2luOiAwLjJyZW07XG4gICAgICAgICAgLS1iZHJzOiB2YXIoLS1ndi1vcHRpb24tLWJkcnMsIDAuMTVyZW0pO1xuICAgICAgICAgIC0tbWF3OiB2YXIoLS1ndi1vcHRpb24tYnV0dG9uLS1tYXcsIDIwMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3guZGVzY3JpcHRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC1nYXA6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LWJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtYnV0dG9uLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBmbGV4OiAxIDEgdmFyKC0tbWF3KTtcbiAgICAgICAgICBtYXgtd2lkdGg6IHZhcigtLW1hdyk7XG4gICAgICAgIH1cblxuICAgICAgICBndi1idXR0b246bm90KC5kZXNjcmlwdGlvbikge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tYmRyczogMDtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tYmdjOiB2YXIoLS1ndi1vcHRpb24tLWJnYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1kYXJrLCAjYmZiZmJmKSk7XG4gICAgICAgIH1cblxuICAgICAgICBndi1idXR0b246bm90KC5kZXNjcmlwdGlvbikuZW50cnkge1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1iZHJzOiB2YXIoLS1iZHJzKSAwIDAgdmFyKC0tYmRycyk7XG4gICAgICAgIH1cblxuICAgICAgICBndi1idXR0b246bm90KC5kZXNjcmlwdGlvbikuZXhpdCB7XG4gICAgICAgICAgLS1ndi1idXR0b24tLWJkcnM6IDAgdmFyKC0tYmRycykgdmFyKC0tYmRycykgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XG4gICAgICAgICAgLS1ndi1pY29uLS1zOiB2YXIoLS1ndi1vcHRpb24taWNvbi0tcywgNjRweCk7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtaW1hZ2Uge1xuICAgICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgICAgICB3aWR0aDogNjRweDtcbiAgICAgICAgICAtLWd2LWltYWdlLS1vZjogZmlsbDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXZlcnNlIC5jb250ZW50IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE4cHgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICBndi1idXR0b24uZGVzY3JpcHRpb24ge1xuICAgICAgICAgIG1hcmdpbjogMC41cmVtO1xuICAgICAgICB9XG4gICAgICBgLFxuICAgIF07XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMubXVsdGlwbGUgPSBmYWxzZTtcbiAgICB0aGlzLnJldmVyc2UgPSBmYWxzZTtcbiAgfVxuXG4gIF9vbkNsaWNrKG9wdGlvbikge1xuICAgIHRoaXMuc2V0VmFsdWUob3B0aW9uKTtcbiAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdzZWxlY3QnLCBvcHRpb24pO1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JyksIHsgYnViYmxlczogdHJ1ZSwgY2FuY2VsYWJsZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIGFzeW5jIHBlcmZvcm1VcGRhdGUoKSB7XG4gICAgdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3JBbGwoJ2d2LWJ1dHRvbicpLmZvckVhY2goKGJ0bikgPT4gYnRuLnBlcmZvcm1VcGRhdGUoKSk7XG4gICAgcmV0dXJuIHN1cGVyLnBlcmZvcm1VcGRhdGUoKTtcbiAgfVxuXG4gIHNldFZhbHVlKG9wdGlvbikge1xuICAgIGlmIChvcHRpb24pIHtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIGlmICh0aGlzLnZhbHVlLmluY2x1ZGVzKG9wdGlvbi5pZCkpIHtcbiAgICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZS5maWx0ZXIoKG9wdElkKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gb3B0SWQgIT09IG9wdGlvbi5pZDtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnZhbHVlID0gWy4uLnRoaXMudmFsdWUsIG9wdGlvbi5pZF07XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBvcHRpb24uaWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2V0IG9wdGlvbnMob3B0aW9ucykge1xuICAgIGlmIChvcHRpb25zKSB7XG4gICAgICBQcm9taXNlLmFsbChvcHRpb25zKS50aGVuKChfb3B0aW9ucykgPT4ge1xuICAgICAgICB0aGlzLl9vcHRpb25zID0gX29wdGlvbnM7XG4gICAgICAgIHRoaXMuX2hhc0Rlc2NyaXB0aW9uID0gdGhpcy5fb3B0aW9ucy5maW5kKChvcHQpID0+IG9wdC5kZXNjcmlwdGlvbiAhPSBudWxsKSAhPSBudWxsO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgaXNBY3RpdmUob3B0aW9uKSB7XG4gICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlLmluY2x1ZGVzKG9wdGlvbi5pZCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZSA9PT0gb3B0aW9uLmlkO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBfcmVuZGVyT3B0aW9uKG9wdGlvbiwgaW5kZXgpIHtcbiAgICBjb25zdCBpc0FjdGl2ZSA9IHRoaXMuaXNBY3RpdmUob3B0aW9uKTtcbiAgICBjb25zdCBvdXRsaW5lZCA9IHRoaXMub3V0bGluZWQgfHwgKCFpc0FjdGl2ZSAmJiB0aGlzLl9oYXNEZXNjcmlwdGlvbik7XG4gICAgcmV0dXJuIGh0bWxgPGd2LWJ1dHRvblxuICAgICAgLmljb249JHtpZkRlZmluZWQoIXRoaXMuX2hhc0Rlc2NyaXB0aW9uID8gb3B0aW9uLmljb24gOiBudWxsKX1cbiAgICAgIC5pY29uUmlnaHQ9JHtpZkRlZmluZWQoIW9wdGlvbi5pY29uICYmIG9wdGlvbi5pY29uUmlnaHQgPyBvcHRpb24uaWNvblJpZ2h0IDogbnVsbCl9XG4gICAgICAudGl0bGU9XCIke2lmRGVmaW5lZChvcHRpb24udGl0bGUpfVwiXG4gICAgICAucHJpbWFyeT1cIiR7aXNBY3RpdmV9XCJcbiAgICAgIC5zbWFsbD1cIiR7dGhpcy5zbWFsbH1cIlxuICAgICAgLmRpc2FibGVkPVwiJHtvcHRpb24uZGlzYWJsZWQgfHwgdGhpcy5kaXNhYmxlZH1cIlxuICAgICAgQGNsaWNrPVwiJHt0aGlzLl9vbkNsaWNrLmJpbmQodGhpcywgb3B0aW9uKX1cIlxuICAgICAgLm91dGxpbmVkPVwiJHtvdXRsaW5lZH1cIlxuICAgICAgY2xhc3M9XCIke2NsYXNzTWFwKHtcbiAgICAgICAgYWN0aXZlOiBpc0FjdGl2ZSxcbiAgICAgICAgZW50cnk6IGluZGV4ID09PSAwLFxuICAgICAgICBleGl0OiBpbmRleCA9PT0gdGhpcy5fb3B0aW9ucy5sZW5ndGggLSAxLFxuICAgICAgICBkZXNjcmlwdGlvbjogb3B0aW9uLmRlc2NyaXB0aW9uICE9IG51bGwsXG4gICAgICB9KX1cIlxuICAgID5cbiAgICAgICR7IXRoaXMuX2hhc0Rlc2NyaXB0aW9uXG4gICAgICAgID8gb3B0aW9uLnRpdGxlICE9IG51bGxcbiAgICAgICAgICA/IG9wdGlvbi5sYWJlbCB8fCBvcHRpb24udGl0bGVcbiAgICAgICAgICA6ICcnXG4gICAgICAgIDogaHRtbGA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICAgICAgICAgICAgJHtvcHRpb24uaWNvblxuICAgICAgICAgICAgICA/IGh0bWxgPGd2LWljb24gc2hhcGU9XCIke29wdGlvbi5pY29ufVwiPjwvZ3YtaWNvbj5gXG4gICAgICAgICAgICAgIDogb3B0aW9uLmltYWdlXG4gICAgICAgICAgICAgID8gaHRtbGA8Z3YtaW1hZ2Ugc3JjPVwiJHtvcHRpb24uaW1hZ2V9XCI+PC9ndi1pbWFnZT5gXG4gICAgICAgICAgICAgIDogJyd9XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIj4ke29wdGlvbi50aXRsZX08L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvbi1jb250ZW50XCIgLmlubmVySFRNTD1cIiR7b3B0aW9uLmRlc2NyaXB0aW9ufVwiPjwvZGl2PlxuICAgICAgICAgIDwvZGl2PmB9XG4gICAgPC9ndi1idXR0b24+YDtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBpZiAodGhpcy5fb3B0aW9ucykge1xuICAgICAgY29uc3QgY2xhc3NlcyA9IHtcbiAgICAgICAgYm94OiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5faGFzRGVzY3JpcHRpb24sXG4gICAgICAgIHJldmVyc2U6IHRoaXMucmV2ZXJzZSxcbiAgICAgIH07XG4gICAgICByZXR1cm4gaHRtbGA8ZGl2XG4gICAgICAgIGNsYXNzPVwiJHtjbGFzc01hcChjbGFzc2VzKX1cIlxuICAgICAgICBzdHlsZT1cIiR7c3R5bGVNYXAoeyAnZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJzogYHJlcGVhdCgke3RoaXMuX29wdGlvbnMubGVuZ3RofSwgYXV0bylgIH0pfVwiXG4gICAgICA+XG4gICAgICAgICR7cmVwZWF0KFxuICAgICAgICAgIHRoaXMuX29wdGlvbnMsXG4gICAgICAgICAgKG9wdGlvbikgPT4gb3B0aW9uLFxuICAgICAgICAgIChvcHRpb24sIGluZGV4KSA9PiBodG1sYCR7dGhpcy5fcmVuZGVyT3B0aW9uKG9wdGlvbiwgaW5kZXgpfWAsXG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5gO1xuICAgIH1cbiAgICByZXR1cm4gaHRtbGBgO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LW9wdGlvbicsIEd2T3B0aW9uKTtcbiJdfQ==
|
|
@@ -13,17 +13,16 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { classMap } from 'lit
|
|
17
|
-
import { css, LitElement } from 'lit
|
|
16
|
+
import { classMap } from 'lit/directives/class-map';
|
|
17
|
+
import { css, LitElement, html } from 'lit';
|
|
18
18
|
import { dispatchCustomEvent } from '../lib/events';
|
|
19
19
|
import { getCssVar, hexToRGB } from '../lib/style';
|
|
20
|
-
import { html } from 'lit-html';
|
|
21
20
|
import { i18n } from '../lib/i18n';
|
|
22
21
|
import { link } from '../styles/link';
|
|
23
|
-
import { repeat } from 'lit
|
|
22
|
+
import { repeat } from 'lit/directives/repeat';
|
|
24
23
|
import { skeleton } from '../styles/skeleton';
|
|
25
24
|
import { empty } from '../styles/empty';
|
|
26
|
-
import { styleMap } from 'lit
|
|
25
|
+
import { styleMap } from 'lit/directives/style-map';
|
|
27
26
|
import './../atoms/gv-icon';
|
|
28
27
|
/**
|
|
29
28
|
* Plans
|
|
@@ -304,4 +303,4 @@ export class GvPlans extends LitElement {
|
|
|
304
303
|
|
|
305
304
|
}
|
|
306
305
|
window.customElements.define('gv-plans', GvPlans);
|
|
307
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wbGFucy5qcyJdLCJuYW1lcyI6WyJjbGFzc01hcCIsImNzcyIsIkxpdEVsZW1lbnQiLCJkaXNwYXRjaEN1c3RvbUV2ZW50IiwiZ2V0Q3NzVmFyIiwiaGV4VG9SR0IiLCJodG1sIiwiaTE4biIsImxpbmsiLCJyZXBlYXQiLCJza2VsZXRvbiIsImVtcHR5Iiwic3R5bGVNYXAiLCJHdlBsYW5zIiwicHJvcGVydGllcyIsInBsYW5zIiwidHlwZSIsIkFycmF5IiwiY3VycmVudCIsIk51bWJlciIsInZhbHVlIiwiU3RyaW5nIiwicmVmbGVjdCIsIkJvb2xlYW4iLCJzaXplIiwiX2VtcHR5IiwiX3BsYW5zIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJfY2hhcmFjdGVyaXN0aWNzIiwibGVuZ3RoIiwicGxhbiIsImNoYXJhY3RlcmlzdGljcyIsInZhbGlkYXRpb24iLCJ0b1VwcGVyQ2FzZSIsInB1c2giLCJzZWN1cml0eSIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImFjdGl2ZVBsYW4iLCJmaW5kIiwicCIsImFjdGl2ZSIsImlkIiwiY2F0Y2giLCJlIiwiX2Vycm9yIiwidG8iLCJtYXAiLCJpbmRleCIsIkpTT04iLCJzdHJpbmdpZnkiLCJkaXNwYXRjaEV2ZW50IiwiRXZlbnQiLCJidWJibGVzIiwiY2FuY2VsYWJsZSIsIl9nZXRQbGFuVGl0bGUiLCJ0aXRsZSIsIm5hbWUiLCJkZXNjcmlwdGlvbiIsIl9vblJlZGlyZWN0IiwiaGFzUGFnaW5hdGlvbiIsImhhc0xlZnQiLCJoYXNSaWdodCIsImxlZnQiLCJzbGljZSIsInJpZ2h0IiwicG9wIiwiZmlsbCIsImZvckVhY2giLCJpIiwiYSIsInVuc2hpZnQiLCJiIiwic2hpZnQiLCJfcmVuZGVySGVhZGVyIiwiYmluZCIsIl9yZW5kZXJUcmlhbmdsZXMiLCJzZWxlY3RvciIsIl9yZW5kZXJQYWdpbmF0aW9uIiwidG9MZWZ0IiwidG9SaWdodCIsInJlbmRlciIsImJnYyIsInIiLCJnIiwic3R5bGUiLCJiYWNrZ3JvdW5kQ29sb3IiLCJjb2xvciIsImNsYXNzZXMiLCJjdXJyZW50UGxhbnMiLCJjaGFyYWN0ZXJpc3RpYyIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxRQUFULFFBQXlCLCtCQUF6QjtBQUNBLFNBQVNDLEdBQVQsRUFBY0MsVUFBZCxRQUFnQyxhQUFoQztBQUNBLFNBQVNDLG1CQUFULFFBQW9DLGVBQXBDO0FBQ0EsU0FBU0MsU0FBVCxFQUFvQkMsUUFBcEIsUUFBb0MsY0FBcEM7QUFDQSxTQUFTQyxJQUFULFFBQXFCLFVBQXJCO0FBQ0EsU0FBU0MsSUFBVCxRQUFxQixhQUFyQjtBQUNBLFNBQVNDLElBQVQsUUFBcUIsZ0JBQXJCO0FBQ0EsU0FBU0MsTUFBVCxRQUF1Qiw0QkFBdkI7QUFDQSxTQUFTQyxRQUFULFFBQXlCLG9CQUF6QjtBQUNBLFNBQVNDLEtBQVQsUUFBc0IsaUJBQXRCO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwrQkFBekI7QUFDQSxPQUFPLG9CQUFQO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxPQUFPLE1BQU1DLE9BQU4sU0FBc0JYLFVBQXRCLENBQWlDO0FBQ2pCLGFBQVZZLFVBQVUsR0FBRztBQUN0QixXQUFPO0FBQ0w7QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ01DLE1BQUFBLEtBQUssRUFBRTtBQUFFQyxRQUFBQSxJQUFJLEVBQUVDO0FBQVIsT0FQRjtBQVFMQyxNQUFBQSxPQUFPLEVBQUU7QUFBRUYsUUFBQUEsSUFBSSxFQUFFRztBQUFS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R0FBZSxDQUEzQixDQUFSO0FBQ0Q7O0FBRURnRSxFQUFBQSxPQUFPLEdBQUc7QUFDUixTQUFLbEMsRUFBTCxDQUFRLEtBQUt0QixNQUFMLENBQVksS0FBS1IsT0FBakIsQ0FBUjtBQUNEOztBQXpYcUM7QUE0WHhDMkUsTUFBTSxDQUFDQyxjQUFQLENBQXNCQyxNQUF0QixDQUE2QixVQUE3QixFQUF5Q2xGLE9BQXpDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNsYXNzTWFwIH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy9jbGFzcy1tYXAnO1xuaW1wb3J0IHsgY3NzLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0LWVsZW1lbnQnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgZ2V0Q3NzVmFyLCBoZXhUb1JHQiB9IGZyb20gJy4uL2xpYi9zdHlsZSc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0LWh0bWwnO1xuaW1wb3J0IHsgaTE4biB9IGZyb20gJy4uL2xpYi9pMThuJztcbmltcG9ydCB7IGxpbmsgfSBmcm9tICcuLi9zdHlsZXMvbGluayc7XG5pbXBvcnQgeyByZXBlYXQgfSBmcm9tICdsaXQtaHRtbC9kaXJlY3RpdmVzL3JlcGVhdCc7XG5pbXBvcnQgeyBza2VsZXRvbiB9IGZyb20gJy4uL3N0eWxlcy9za2VsZXRvbic7XG5pbXBvcnQgeyBlbXB0eSB9IGZyb20gJy4uL3N0eWxlcy9lbXB0eSc7XG5pbXBvcnQgeyBzdHlsZU1hcCB9IGZyb20gJ2xpdC1odG1sL2RpcmVjdGl2ZXMvc3R5bGUtbWFwJztcbmltcG9ydCAnLi8uLi9hdG9tcy9ndi1pY29uJztcblxuLyoqXG4gKiBQbGFuc1xuICpcbiAqICMjIERldGFpbHNcbiAqICogaGFzIEB0aGVtZSBmYWNldFxuICpcbiAqIEBmaXJlcyBpbnB1dCAtIE5hdGl2ZSBpbnB1dCBldmVudCB3aGVuIHBsYW4gY2hhbmdlXG4gKiBAZmlyZXMgZ3YtcGxhbnM6cmVkaXJlY3QgLSBFdmVudCB3aGVuIHVzZXIgY2xpY2sgdG8gcmVkaXJlY3QgbGluayB3aGVuIHBsYW5zIGFyZSBlbXB0eVxuICpcbiAqIEBhdHRyIHtBcnJheX0gcGxhbnMgLSBQbGFucyBsaXN0XG4gKiBAYXR0ciB7TnVtYmVyfSBjdXJyZW50IC0gVGhlIGN1cnJlbnQgcGxhbiBpbmRleFxuICogQGF0dHIge1N0cmluZ30gdmFsdWUgLSBUaGUgY3VycmVudCBwbGFuIGlkXG4gKiBAYXR0ciB7Qm9vbGVhbn0gc2tlbGV0b24gLSBlbmFibGUgc2tlbGV0b24gc2NyZWVuIFVJIHBhdHRlcm4gKGxvYWRpbmcgaGludClcbiAqXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXBsYW5zLS1iZ2M9dmFyKC0tZ3YtdGhlbWUtY29sb3IsICM1YTc2ODQpXSAtIEJhY2tncm91bmQgY29sb3JcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtcGxhbnMtZm9udC0tYz12YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWxpZ2h0LCAjZmZmZmZmKV0gLSBGb250IGNvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXBsYW5zLWNoYXJhY3RlcmlzdGljLS1iZ2M9dmFyKC0tZ3YtdGhlbWUtY29sb3ItbGlnaHQsICM4NmMzZDApXSAtIENoYXJhY3RlcmlzdGljIGJhY2tncm91bmQgY29sb3JcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtcGxhbnMtY2hhcmFjdGVyaXN0aWNzLS1iZGM9dmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSldIC0gQ2hhcmFjdGVyaXN0aWNzIGJvcmRlciBjb2xvclxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcGxhbnMtaWNvbi0tcz0yNHB4XSAtIEhlaWdodCBhbmQgaWNvbiB3aWR0aFxuICovXG5leHBvcnQgY2xhc3MgR3ZQbGFucyBleHRlbmRzIExpdEVsZW1lbnQge1xuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC8qKlxuICAgICAgICogVGhpcyBMaXN0IG9mIFBsYW5cbiAgICAgICAqIEB0eXBlIE9iamVjdCBodHRwczovL2dpdGh1Yi5jb20vZ3Jhdml0ZWUtaW8vZ3Jhdml0ZWUtY2xpZW50cy1zZGsvYmxvYi9tYXN0ZXIvbW9kZWwvcGxhbi50c1xuICAgICAgICogQGF0dHJcbiAgICAgICAqIEByZXF1aXJlZFxuICAgICAgICovXG4gICAgICBwbGFuczogeyB0eXBlOiBBcnJheSB9LFxuICAgICAgY3VycmVudDogeyB0eXBlOiBOdW1iZXIgfSxcbiAgICAgIHZhbHVlOiB7IHR5cGU6IFN0cmluZywgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgc2tlbGV0b246IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgc2l6ZTogeyB0eXBlOiBOdW1iZXIgfSxcbiAgICAgIF9lbXB0eTogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICBfcGxhbnM6IHsgdHlwZTogQXJyYXkgfSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIGVtcHR5LFxuICAgICAgbGluayxcbiAgICAgIC8vIGxhbmd1YWdlPWNzc1xuICAgICAgY3NzYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBtYXJnaW46IDAuMnJlbTtcbiAgICAgICAgICAtLWJnYzogdmFyKC0tZ3YtcGxhbnMtLWJnYywgdmFyKC0tZ3YtdGhlbWUtY29sb3IsICM1YTc2ODQpKTtcbiAgICAgICAgICAtLWZjOiB2YXIoLS1ndi1wbGFucy1mb250LS1jLCB2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWxpZ2h0LCAjZmZmZmZmKSk7XG4gICAgICAgICAgLS1ndi1pY29uLS1jOiB2YXIoLS1iZ2MpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBsYW5zIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnBsYW4ge1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAucGxhbi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnYyk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWZjKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE2cHgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1zLCAxMnB4KTtcbiAgICAgICAgICAtLWxoOiB2YXIoLS1ndi10aGVtZS1mb250LXNpemUtcywgMTJweCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxoKTtcbiAgICAgICAgICAtLW1heC1saW5lczogMjtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKHZhcigtLWxoKSAqIHZhcigtLW1heC1saW5lcykpO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0b3JzIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlbGVjdG9yIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGl2ZSAudHJpYW5nbGUge1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBib3JkZXItbGVmdDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci10b3A6IDlweCBzb2xpZCB2YXIoLS1iZ2MpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNoYXJhY3RlcmlzdGljcyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzRweDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ndi1wbGFucy1jaGFyYWN0ZXJpc3RpY3MtLWJkYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSkpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIHBhZGRpbmc6IDM0cHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNoYXJhY3RlcmlzdGljIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1tLCAxNHB4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgIG1hcmdpbjogMjBweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jaXJjbGUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWd2LXBsYW5zLWNoYXJhY3RlcmlzdGljLS1iZ2MsIHZhcigtLWd2LXRoZW1lLWNvbG9yLWxpZ2h0LCAjODZjM2QwKSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtaWNvbiB7XG4gICAgICAgICAgLS1ndi1pY29uLS1zOiB2YXIoLS1ndi1wbGFucy1pY29uLS1zLCAyNHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5za2VsZXRvbiB7XG4gICAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDAuMnJlbTtcbiAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cblxuICAgICAgICAubGluayB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgICBza2VsZXRvbixcbiAgICBdO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmN1cnJlbnQgPSAxO1xuICAgIHRoaXMuc2l6ZSA9IDQ7XG4gICAgdGhpcy5fcGxhbnMgPSBbXTtcbiAgICB0aGlzLl9lbXB0eSA9IHRydWU7XG4gIH1cblxuICBnZXQgX2NoYXJhY3RlcmlzdGljcygpIHtcbiAgICBpZiAodGhpcy5fcGxhbnMubGVuZ3RoID49IHRoaXMuY3VycmVudCkge1xuICAgICAgY29uc3QgcGxhbiA9IHRoaXMuX3BsYW5zW3RoaXMuY3VycmVudCAtIDFdO1xuICAgICAgaWYgKHBsYW4uY2hhcmFjdGVyaXN0aWNzICYmIHBsYW4uY2hhcmFjdGVyaXN0aWNzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgcmV0dXJuIHBsYW4uY2hhcmFjdGVyaXN0aWNzO1xuICAgICAgfVxuXG4gICAgICBsZXQgY2hhcmFjdGVyaXN0aWNzID0gW107XG5cbiAgICAgIGlmIChwbGFuLnZhbGlkYXRpb24pIHtcbiAgICAgICAgc3dpdGNoIChwbGFuLnZhbGlkYXRpb24udG9VcHBlckNhc2UoKSkge1xuICAgICAgICAgIGNhc2UgJ0FVVE8nOlxuICAgICAgICAgICAgY2hhcmFjdGVyaXN0aWNzLnB1c2goaTE4bignZ3YtcGxhbnMudmFsaWRhdGlvbi5hdXRvJykpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnTUFOVUFMJzpcbiAgICAgICAgICAgIGNoYXJhY3RlcmlzdGljcy5wdXNoKGkxOG4oJ2d2LXBsYW5zLnZhbGlkYXRpb24ubWFudWFsJykpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHBsYW4uc2VjdXJpdHkpIHtcbiAgICAgICAgc3dpdGNoIChwbGFuLnNlY3VyaXR5LnRvVXBwZXJDYXNlKCkpIHtcbiAgICAgICAgICBjYXNlICdBUElfS0VZJzpcbiAgICAgICAgICAgIGNoYXJhY3RlcmlzdGljcy5wdXNoKGkxOG4oJ2d2LXBsYW5zLnNlY3VyaXR5LmFwaUtleScpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ0pXVCc6XG4gICAgICAgICAgICBjaGFyYWN0ZXJpc3RpY3MucHVzaChpMThuKCdndi1wbGFucy5zZWN1cml0eS5qd3QnKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdPQVVUSDInOlxuICAgICAgICAgICAgY2hhcmFjdGVyaXN0aWNzLnB1c2goaTE4bignZ3YtcGxhbnMuc2VjdXJpdHkub2F1dGgyJykpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnS0VZX0xFU1MnOlxuICAgICAgICAgICAgY2hhcmFjdGVyaXN0aWNzID0gW107XG4gICAgICAgICAgICBjaGFyYWN0ZXJpc3RpY3MucHVzaChpMThuKCdndi1wbGFucy5zZWN1cml0eS5rZXlMZXNzJykpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGNoYXJhY3RlcmlzdGljcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgY2hhcmFjdGVyaXN0aWNzLnB1c2goaTE4bignZ3YtcGxhbnMuY2hhcmFjdGVyaXN0aWNzLmVtcHR5JykpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gY2hhcmFjdGVyaXN0aWNzO1xuICAgIH1cbiAgICByZXR1cm4gW107XG4gIH1cblxuICBzZXQgcGxhbnMocGxhbnMpIHtcbiAgICB0aGlzLnNrZWxldG9uID0gdHJ1ZTtcbiAgICBQcm9taXNlLnJlc29sdmUocGxhbnMpXG4gICAgICAudGhlbigocGxhbnMpID0+IHtcbiAgICAgICAgaWYgKHBsYW5zKSB7XG4gICAgICAgICAgdGhpcy5fZW1wdHkgPSBwbGFucy5sZW5ndGggPT09IDA7XG4gICAgICAgICAgdGhpcy5fcGxhbnMgPSBwbGFucztcbiAgICAgICAgICBpZiAoIXRoaXMuX2VtcHR5KSB7XG4gICAgICAgICAgICBjb25zdCBhY3RpdmVQbGFuID0gdGhpcy5fcGxhbnMuZmluZCgocCkgPT4gcC5hY3RpdmUpO1xuICAgICAgICAgICAgaWYgKGFjdGl2ZVBsYW4gPT0gbnVsbCkge1xuICAgICAgICAgICAgICB0aGlzLl9wbGFuc1swXS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gdGhpcy5fcGxhbnNbMF0uaWQ7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLnZhbHVlID0gYWN0aXZlUGxhbi5pZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5za2VsZXRvbiA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlKSA9PiB7XG4gICAgICAgIHRoaXMuX2Vycm9yID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fcGxhbnMgPSBbXTtcbiAgICAgICAgdGhpcy5za2VsZXRvbiA9IGZhbHNlO1xuICAgICAgfSk7XG4gIH1cblxuICB0byhwbGFuKSB7XG4gICAgaWYgKHBsYW4pIHtcbiAgICAgIHRoaXMudmFsdWUgPSBwbGFuLmlkO1xuICAgICAgdGhpcy5fcGxhbnMgPSB0aGlzLl9wbGFucy5tYXAoKHAsIGluZGV4KSA9PiB7XG4gICAgICAgIGlmIChKU09OLnN0cmluZ2lmeShwKSA9PT0gSlNPTi5zdHJpbmdpZnkocGxhbikpIHtcbiAgICAgICAgICBwLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgdGhpcy5jdXJyZW50ID0gaW5kZXggKyAxO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHAuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHA7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JyksIHsgYnViYmxlczogdHJ1ZSwgY2FuY2VsYWJsZTogdHJ1ZSB9KTtcbiAgICB9XG4gIH1cblxuICBfZ2V0UGxhblRpdGxlKHBsYW4pIHtcbiAgICBsZXQgdGl0bGUgPSBwbGFuLm5hbWU7XG4gICAgaWYgKHBsYW4uZGVzY3JpcHRpb24pIHtcbiAgICAgIHRpdGxlICs9IGA6ICR7cGxhbi5kZXNjcmlwdGlvbn1gO1xuICAgIH1cbiAgICByZXR1cm4gdGl0bGU7XG4gIH1cblxuICBfb25SZWRpcmVjdCgpIHtcbiAgICBkaXNwYXRjaEN1c3RvbUV2ZW50KHRoaXMsICdyZWRpcmVjdCcpO1xuICB9XG5cbiAgZ2V0IGhhc1BhZ2luYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuc2l6ZSA8IHRoaXMuX3BsYW5zLmxlbmd0aDtcbiAgfVxuXG4gIGdldCBoYXNMZWZ0KCkge1xuICAgIHJldHVybiB0aGlzLmhhc1BhZ2luYXRpb24gJiYgdGhpcy5jdXJyZW50ID4gMTtcbiAgfVxuXG4gIGdldCBoYXNSaWdodCgpIHtcbiAgICByZXR1cm4gdGhpcy5oYXNQYWdpbmF0aW9uICYmIHRoaXMuY3VycmVudCA8IHRoaXMuX3BsYW5zLmxlbmd0aDtcbiAgfVxuXG4gIGdldCBwbGFucygpIHtcbiAgICBpZiAodGhpcy5oYXNQYWdpbmF0aW9uKSB7XG4gICAgICBjb25zdCBsZWZ0ID0gdGhpcy5fcGxhbnMuc2xpY2UoMCwgdGhpcy5jdXJyZW50KTtcbiAgICAgIGNvbnN0IHJpZ2h0ID0gdGhpcy5fcGxhbnMuc2xpY2UodGhpcy5jdXJyZW50KTtcbiAgICAgIGNvbnN0IHBsYW5zID0gW2xlZnQucG9wKCldO1xuXG4gICAgICBuZXcgQXJyYXkodGhpcy5zaXplIC0gMSkuZmlsbCgnJykuZm9yRWFjaCgoZSwgaSkgPT4ge1xuICAgICAgICBpZiAoKGkgJSAyID09PSAwICYmIGxlZnQubGVuZ3RoID4gMCkgfHwgcmlnaHQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgY29uc3QgYSA9IGxlZnQucG9wKCk7XG4gICAgICAgICAgcGxhbnMudW5zaGlmdChhKTtcbiAgICAgICAgfSBlbHNlIGlmIChyaWdodC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgY29uc3QgYiA9IHJpZ2h0LnNoaWZ0KCk7XG4gICAgICAgICAgcGxhbnMucHVzaChiKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gcGxhbnM7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9wbGFucztcbiAgfVxuXG4gIF9yZW5kZXJIZWFkZXIocGxhbnMpIHtcbiAgICByZXR1cm4gcGxhbnMubWFwKChwbGFuLCBpbmRleCkgPT4ge1xuICAgICAgcmV0dXJuIGh0bWxgPGxpXG4gICAgICAgIEBjbGljaz1cIiR7dGhpcy50by5iaW5kKHRoaXMsIHBsYW4pfVwiXG4gICAgICAgIHRpdGxlPVwiJHt0aGlzLl9nZXRQbGFuVGl0bGUocGxhbil9XCJcbiAgICAgICAgY2xhc3M9XCIke2NsYXNzTWFwKHtcbiAgICAgICAgICBwbGFuOiB0cnVlLFxuICAgICAgICAgIGFjdGl2ZTogcGxhbi5hY3RpdmUsXG4gICAgICAgIH0pfVwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lXCI+JHtwbGFuLm5hbWV9PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPiR7cGxhbi5kZXNjcmlwdGlvbn08L2Rpdj5cbiAgICAgIDwvbGk+YDtcbiAgICB9KTtcbiAgfVxuXG4gIF9yZW5kZXJUcmlhbmdsZXMocGxhbnMpIHtcbiAgICByZXR1cm4gcGxhbnMubWFwKChwbGFuLCBpbmRleCkgPT4ge1xuICAgICAgcmV0dXJuIGh0bWxgPGRpdlxuICAgICAgICBjbGFzcz1cIiR7Y2xhc3NNYXAoe1xuICAgICAgICAgIHNlbGVjdG9yOiB0cnVlLFxuICAgICAgICAgIGFjdGl2ZTogcGxhbi5hY3RpdmUsXG4gICAgICAgIH0pfVwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0cmlhbmdsZVwiPjwvZGl2PlxuICAgICAgPC9kaXY+YDtcbiAgICB9KTtcbiAgfVxuXG4gIF9yZW5kZXJQYWdpbmF0aW9uKCkge1xuICAgIGlmICh0aGlzLmhhc1BhZ2luYXRpb24pIHtcbiAgICAgIHJldHVybiBodG1sYCA8ZGl2IGNsYXNzPVwicGFnaW5hdGlvblwiPlxuICAgICAgICAkeyF0aGlzLmhhc0xlZnQgPyAnJyA6IGh0bWxgPGd2LWljb24gQGNsaWNrPVwiJHt0aGlzLnRvTGVmdH1cIiBzaGFwZT1cIm5hdmlnYXRpb246YW5nbGUtbGVmdFwiIGNsYXNzPVwibGlua1wiPjwvZ3YtaWNvbj5gfVxuICAgICAgICA8ZGl2IHN0eWxlPVwiZmxleDogMTtcIj48L2Rpdj5cbiAgICAgICAgJHshdGhpcy5oYXNSaWdodCA/ICcnIDogaHRtbGA8Z3YtaWNvbiBAY2xpY2s9XCIke3RoaXMudG9SaWdodH1cIiBzaGFwZT1cIm5hdmlnYXRpb246YW5nbGUtcmlnaHRcIiBjbGFzcz1cImxpbmtcIj48L2d2LWljb24+YH1cbiAgICAgIDwvZGl2PmA7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCBiZ2MgPSBnZXRDc3NWYXIodGhpcywgJy0tZ3YtcGxhbnMtLWJnYycsICcjNUE3Njg0Jyk7XG4gICAgY29uc3QgeyByLCBnLCBiIH0gPSBoZXhUb1JHQihiZ2MpO1xuICAgIGNvbnN0IHN0eWxlID0ge1xuICAgICAgYmFja2dyb3VuZENvbG9yOiBgcmdiYSgke3J9LCAke2d9LCAke2J9LCAwLjEpYCxcbiAgICAgIGNvbG9yOiBgcmdiYSgke3J9LCAke2d9LCAke2J9LCAwLjUpYCxcbiAgICB9O1xuXG4gICAgaWYgKCF0aGlzLnNrZWxldG9uKSB7XG4gICAgICBpZiAodGhpcy5fZXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIGh0bWxgPGRpdiBjbGFzcz1cImVycm9yXCI+XG4gICAgICAgICAgPHA+JHtpMThuKCdndi1wbGFucy5lcnJvcicpfTwvcD5cbiAgICAgICAgPC9kaXY+YDtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5fZW1wdHkpIHtcbiAgICAgICAgcmV0dXJuIGh0bWxgIDxkaXYgY2xhc3M9XCJlbXB0eVwiPlxuICAgICAgICAgIDxwPiR7aTE4bignZ3YtcGxhbnMuZW1wdHkudGl0bGUnKX08L3A+XG4gICAgICAgICAgPGEgY2xhc3M9XCJsaW5rXCIgQGNsaWNrPVwiJHt0aGlzLl9vblJlZGlyZWN0fVwiPiR7aTE4bignZ3YtcGxhbnMuZW1wdHkucmVkaXJlY3QnKX08L2E+XG4gICAgICAgIDwvZGl2PmA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgY2xhc3NlcyA9IHsgc2tlbGV0b246IHRoaXMuc2tlbGV0b24gfTtcbiAgICBjb25zdCBjdXJyZW50UGxhbnMgPSB0aGlzLnBsYW5zO1xuICAgIHJldHVybiBodG1sYDxkaXYgY2xhc3M9XCIke2NsYXNzTWFwKGNsYXNzZXMpfVwiPlxuICAgICAgPHVsIGNsYXNzPVwicGxhbnNcIiBzdHlsZT1cIiR7c3R5bGVNYXAoc3R5bGUpfVwiPlxuICAgICAgICAke3RoaXMuX3JlbmRlckhlYWRlcihjdXJyZW50UGxhbnMpfVxuICAgICAgPC91bD5cbiAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RvcnNcIj4ke3RoaXMuX3JlbmRlclRyaWFuZ2xlcyhjdXJyZW50UGxhbnMpfTwvZGl2PlxuICAgICAgJHt0aGlzLl9yZW5kZXJQYWdpbmF0aW9uKCl9XG4gICAgICAkeyF0aGlzLnNrZWxldG9uXG4gICAgICAgID8gaHRtbGA8ZGl2IGNsYXNzPVwiY2hhcmFjdGVyaXN0aWNzXCI+XG4gICAgICAgICAgICAke3JlcGVhdChcbiAgICAgICAgICAgICAgdGhpcy5fY2hhcmFjdGVyaXN0aWNzLFxuICAgICAgICAgICAgICAoY2hhcmFjdGVyaXN0aWMpID0+IGNoYXJhY3RlcmlzdGljLFxuICAgICAgICAgICAgICAoY2hhcmFjdGVyaXN0aWMsIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgIGh0bWxgPGRpdiBjbGFzcz1cImNoYXJhY3RlcmlzdGljXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2lyY2xlXCI+PGd2LWljb24gc2hhcGU9XCJob21lOmZsb3dlciMyXCI+PC9ndi1pY29uPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdj4ke2NoYXJhY3RlcmlzdGljfTwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PmAsXG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PmBcbiAgICAgICAgOiAnJ31cbiAgICA8L2Rpdj4gYDtcbiAgfVxuXG4gIHRvTGVmdCgpIHtcbiAgICB0aGlzLnRvKHRoaXMuX3BsYW5zW3RoaXMuY3VycmVudCAtIDJdKTtcbiAgfVxuXG4gIHRvUmlnaHQoKSB7XG4gICAgdGhpcy50byh0aGlzLl9wbGFuc1t0aGlzLmN1cnJlbnRdKTtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1wbGFucycsIEd2UGxhbnMpO1xuIl19
|
|
306
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wbGFucy5qcyJdLCJuYW1lcyI6WyJjbGFzc01hcCIsImNzcyIsIkxpdEVsZW1lbnQiLCJodG1sIiwiZGlzcGF0Y2hDdXN0b21FdmVudCIsImdldENzc1ZhciIsImhleFRvUkdCIiwiaTE4biIsImxpbmsiLCJyZXBlYXQiLCJza2VsZXRvbiIsImVtcHR5Iiwic3R5bGVNYXAiLCJHdlBsYW5zIiwicHJvcGVydGllcyIsInBsYW5zIiwidHlwZSIsIkFycmF5IiwiY3VycmVudCIsIk51bWJlciIsInZhbHVlIiwiU3RyaW5nIiwicmVmbGVjdCIsIkJvb2xlYW4iLCJzaXplIiwiX2VtcHR5IiwiX3BsYW5zIiwic3R5bGVzIiwiY29uc3RydWN0b3IiLCJfY2hhcmFjdGVyaXN0aWNzIiwibGVuZ3RoIiwicGxhbiIsImNoYXJhY3RlcmlzdGljcyIsInZhbGlkYXRpb24iLCJ0b1VwcGVyQ2FzZSIsInB1c2giLCJzZWN1cml0eSIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImFjdGl2ZVBsYW4iLCJmaW5kIiwicCIsImFjdGl2ZSIsImlkIiwiY2F0Y2giLCJlIiwiX2Vycm9yIiwidG8iLCJtYXAiLCJpbmRleCIsIkpTT04iLCJzdHJpbmdpZnkiLCJkaXNwYXRjaEV2ZW50IiwiRXZlbnQiLCJidWJibGVzIiwiY2FuY2VsYWJsZSIsIl9nZXRQbGFuVGl0bGUiLCJ0aXRsZSIsIm5hbWUiLCJkZXNjcmlwdGlvbiIsIl9vblJlZGlyZWN0IiwiaGFzUGFnaW5hdGlvbiIsImhhc0xlZnQiLCJoYXNSaWdodCIsImxlZnQiLCJzbGljZSIsInJpZ2h0IiwicG9wIiwiZmlsbCIsImZvckVhY2giLCJpIiwiYSIsInVuc2hpZnQiLCJiIiwic2hpZnQiLCJfcmVuZGVySGVhZGVyIiwiYmluZCIsIl9yZW5kZXJUcmlhbmdsZXMiLCJzZWxlY3RvciIsIl9yZW5kZXJQYWdpbmF0aW9uIiwidG9MZWZ0IiwidG9SaWdodCIsInJlbmRlciIsImJnYyIsInIiLCJnIiwic3R5bGUiLCJiYWNrZ3JvdW5kQ29sb3IiLCJjb2xvciIsImNsYXNzZXMiLCJjdXJyZW50UGxhbnMiLCJjaGFyYWN0ZXJpc3RpYyIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxRQUFULFFBQXlCLDBCQUF6QjtBQUNBLFNBQVNDLEdBQVQsRUFBY0MsVUFBZCxFQUEwQkMsSUFBMUIsUUFBc0MsS0FBdEM7QUFDQSxTQUFTQyxtQkFBVCxRQUFvQyxlQUFwQztBQUNBLFNBQVNDLFNBQVQsRUFBb0JDLFFBQXBCLFFBQW9DLGNBQXBDO0FBRUEsU0FBU0MsSUFBVCxRQUFxQixhQUFyQjtBQUNBLFNBQVNDLElBQVQsUUFBcUIsZ0JBQXJCO0FBQ0EsU0FBU0MsTUFBVCxRQUF1Qix1QkFBdkI7QUFDQSxTQUFTQyxRQUFULFFBQXlCLG9CQUF6QjtBQUNBLFNBQVNDLEtBQVQsUUFBc0IsaUJBQXRCO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwwQkFBekI7QUFDQSxPQUFPLG9CQUFQO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxPQUFPLE1BQU1DLE9BQU4sU0FBc0JYLFVBQXRCLENBQWlDO0FBQ2pCLGFBQVZZLFVBQVUsR0FBRztBQUN0QixXQUFPO0FBQ0w7QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ01DLE1BQUFBLEtBQUssRUFBRTtBQUFFQyxRQUFBQSxJQUFJLEVBQUVDO0FBQVIsT0FQRjtBQVFMQyxNQUFBQSxPQUFPLEVBQUU7QUFBRUYsUUFBQUEsSUFBSSxFQUFFRztBQUFSLE9BUko7QUFTTEMsTUFB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O0FBQ0Q7O0FBRURnRSxFQUFBQSxPQUFPLEdBQUc7QUFDUixTQUFLbEMsRUFBTCxDQUFRLEtBQUt0QixNQUFMLENBQVksS0FBS1IsT0FBakIsQ0FBUjtBQUNEOztBQXpYcUM7QUE0WHhDMkUsTUFBTSxDQUFDQyxjQUFQLENBQXNCQyxNQUF0QixDQUE2QixVQUE3QixFQUF5Q2xGLE9BQXpDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNsYXNzTWFwIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvY2xhc3MtbWFwJztcbmltcG9ydCB7IGNzcywgTGl0RWxlbWVudCwgaHRtbCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBkaXNwYXRjaEN1c3RvbUV2ZW50IH0gZnJvbSAnLi4vbGliL2V2ZW50cyc7XG5pbXBvcnQgeyBnZXRDc3NWYXIsIGhleFRvUkdCIH0gZnJvbSAnLi4vbGliL3N0eWxlJztcblxuaW1wb3J0IHsgaTE4biB9IGZyb20gJy4uL2xpYi9pMThuJztcbmltcG9ydCB7IGxpbmsgfSBmcm9tICcuLi9zdHlsZXMvbGluayc7XG5pbXBvcnQgeyByZXBlYXQgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZXBlYXQnO1xuaW1wb3J0IHsgc2tlbGV0b24gfSBmcm9tICcuLi9zdHlsZXMvc2tlbGV0b24nO1xuaW1wb3J0IHsgZW1wdHkgfSBmcm9tICcuLi9zdHlsZXMvZW1wdHknO1xuaW1wb3J0IHsgc3R5bGVNYXAgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9zdHlsZS1tYXAnO1xuaW1wb3J0ICcuLy4uL2F0b21zL2d2LWljb24nO1xuXG4vKipcbiAqIFBsYW5zXG4gKlxuICogIyMgRGV0YWlsc1xuICogKiBoYXMgQHRoZW1lIGZhY2V0XG4gKlxuICogQGZpcmVzIGlucHV0IC0gTmF0aXZlIGlucHV0IGV2ZW50IHdoZW4gcGxhbiBjaGFuZ2VcbiAqIEBmaXJlcyBndi1wbGFuczpyZWRpcmVjdCAtIEV2ZW50IHdoZW4gdXNlciBjbGljayB0byByZWRpcmVjdCBsaW5rIHdoZW4gcGxhbnMgYXJlIGVtcHR5XG4gKlxuICogQGF0dHIge0FycmF5fSBwbGFucyAtIFBsYW5zIGxpc3RcbiAqIEBhdHRyIHtOdW1iZXJ9IGN1cnJlbnQgLSBUaGUgY3VycmVudCBwbGFuIGluZGV4XG4gKiBAYXR0ciB7U3RyaW5nfSB2YWx1ZSAtIFRoZSBjdXJyZW50IHBsYW4gaWRcbiAqIEBhdHRyIHtCb29sZWFufSBza2VsZXRvbiAtIGVuYWJsZSBza2VsZXRvbiBzY3JlZW4gVUkgcGF0dGVybiAobG9hZGluZyBoaW50KVxuICpcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtcGxhbnMtLWJnYz12YXIoLS1ndi10aGVtZS1jb2xvciwgIzVhNzY4NCldIC0gQmFja2dyb3VuZCBjb2xvclxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1wbGFucy1mb250LS1jPXZhcigtLWd2LXRoZW1lLWZvbnQtY29sb3ItbGlnaHQsICNmZmZmZmYpXSAtIEZvbnQgY29sb3JcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtcGxhbnMtY2hhcmFjdGVyaXN0aWMtLWJnYz12YXIoLS1ndi10aGVtZS1jb2xvci1saWdodCwgIzg2YzNkMCldIC0gQ2hhcmFjdGVyaXN0aWMgYmFja2dyb3VuZCBjb2xvclxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1wbGFucy1jaGFyYWN0ZXJpc3RpY3MtLWJkYz12YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KV0gLSBDaGFyYWN0ZXJpc3RpY3MgYm9yZGVyIGNvbG9yXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1wbGFucy1pY29uLS1zPTI0cHhdIC0gSGVpZ2h0IGFuZCBpY29uIHdpZHRoXG4gKi9cbmV4cG9ydCBjbGFzcyBHdlBsYW5zIGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLyoqXG4gICAgICAgKiBUaGlzIExpc3Qgb2YgUGxhblxuICAgICAgICogQHR5cGUgT2JqZWN0IGh0dHBzOi8vZ2l0aHViLmNvbS9ncmF2aXRlZS1pby9ncmF2aXRlZS1jbGllbnRzLXNkay9ibG9iL21hc3Rlci9tb2RlbC9wbGFuLnRzXG4gICAgICAgKiBAYXR0clxuICAgICAgICogQHJlcXVpcmVkXG4gICAgICAgKi9cbiAgICAgIHBsYW5zOiB7IHR5cGU6IEFycmF5IH0sXG4gICAgICBjdXJyZW50OiB7IHR5cGU6IE51bWJlciB9LFxuICAgICAgdmFsdWU6IHsgdHlwZTogU3RyaW5nLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgICBza2VsZXRvbjogeyB0eXBlOiBCb29sZWFuIH0sXG4gICAgICBzaXplOiB7IHR5cGU6IE51bWJlciB9LFxuICAgICAgX2VtcHR5OiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIF9wbGFuczogeyB0eXBlOiBBcnJheSB9LFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0eWxlcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgZW1wdHksXG4gICAgICBsaW5rLFxuICAgICAgLy8gbGFuZ3VhZ2U9Y3NzXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIG1hcmdpbjogMC4ycmVtO1xuICAgICAgICAgIC0tYmdjOiB2YXIoLS1ndi1wbGFucy0tYmdjLCB2YXIoLS1ndi10aGVtZS1jb2xvciwgIzVhNzY4NCkpO1xuICAgICAgICAgIC0tZmM6IHZhcigtLWd2LXBsYW5zLWZvbnQtLWMsIHZhcigtLWd2LXRoZW1lLWZvbnQtY29sb3ItbGlnaHQsICNmZmZmZmYpKTtcbiAgICAgICAgICAtLWd2LWljb24tLWM6IHZhcigtLWJnYyk7XG4gICAgICAgIH1cblxuICAgICAgICAucGxhbnMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucGxhbiB7XG4gICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wbGFuLmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmdjKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZmMpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW47XG4gICAgICAgIH1cblxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1ndi10aGVtZS1mb250LXNpemUtbCwgMTZweCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLXMsIDEycHgpO1xuICAgICAgICAgIC0tbGg6IHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1zLCAxMnB4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGgpO1xuICAgICAgICAgIC0tbWF4LWxpbmVzOiAyO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGModmFyKC0tbGgpICogdmFyKC0tbWF4LWxpbmVzKSk7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWxlY3RvcnMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0b3Ige1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aXZlIC50cmlhbmdsZSB7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXRvcDogOXB4IHNvbGlkIHZhcigtLWJnYyk7XG4gICAgICAgIH1cblxuICAgICAgICAuY2hhcmFjdGVyaXN0aWNzIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzNHB4O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWd2LXBsYW5zLWNoYXJhY3RlcmlzdGljcy0tYmRjLCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcGFkZGluZzogMzRweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuY2hhcmFjdGVyaXN0aWMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLW0sIDE0cHgpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNpcmNsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3YtcGxhbnMtY2hhcmFjdGVyaXN0aWMtLWJnYywgdmFyKC0tZ3YtdGhlbWUtY29sb3ItbGlnaHQsICM4NmMzZDApKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBndi1pY29uIHtcbiAgICAgICAgICAtLWd2LWljb24tLXM6IHZhcigtLWd2LXBsYW5zLWljb24tLXMsIDI0cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNrZWxldG9uIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICBtYXJnaW46IDAgMC4ycmVtO1xuICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5rIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICAgIHNrZWxldG9uLFxuICAgIF07XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuY3VycmVudCA9IDE7XG4gICAgdGhpcy5zaXplID0gNDtcbiAgICB0aGlzLl9wbGFucyA9IFtdO1xuICAgIHRoaXMuX2VtcHR5ID0gdHJ1ZTtcbiAgfVxuXG4gIGdldCBfY2hhcmFjdGVyaXN0aWNzKCkge1xuICAgIGlmICh0aGlzLl9wbGFucy5sZW5ndGggPj0gdGhpcy5jdXJyZW50KSB7XG4gICAgICBjb25zdCBwbGFuID0gdGhpcy5fcGxhbnNbdGhpcy5jdXJyZW50IC0gMV07XG4gICAgICBpZiAocGxhbi5jaGFyYWN0ZXJpc3RpY3MgJiYgcGxhbi5jaGFyYWN0ZXJpc3RpY3MubGVuZ3RoID4gMCkge1xuICAgICAgICByZXR1cm4gcGxhbi5jaGFyYWN0ZXJpc3RpY3M7XG4gICAgICB9XG5cbiAgICAgIGxldCBjaGFyYWN0ZXJpc3RpY3MgPSBbXTtcblxuICAgICAgaWYgKHBsYW4udmFsaWRhdGlvbikge1xuICAgICAgICBzd2l0Y2ggKHBsYW4udmFsaWRhdGlvbi50b1VwcGVyQ2FzZSgpKSB7XG4gICAgICAgICAgY2FzZSAnQVVUTyc6XG4gICAgICAgICAgICBjaGFyYWN0ZXJpc3RpY3MucHVzaChpMThuKCdndi1wbGFucy52YWxpZGF0aW9uLmF1dG8nKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdNQU5VQUwnOlxuICAgICAgICAgICAgY2hhcmFjdGVyaXN0aWNzLnB1c2goaTE4bignZ3YtcGxhbnMudmFsaWRhdGlvbi5tYW51YWwnKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAocGxhbi5zZWN1cml0eSkge1xuICAgICAgICBzd2l0Y2ggKHBsYW4uc2VjdXJpdHkudG9VcHBlckNhc2UoKSkge1xuICAgICAgICAgIGNhc2UgJ0FQSV9LRVknOlxuICAgICAgICAgICAgY2hhcmFjdGVyaXN0aWNzLnB1c2goaTE4bignZ3YtcGxhbnMuc2VjdXJpdHkuYXBpS2V5JykpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnSldUJzpcbiAgICAgICAgICAgIGNoYXJhY3RlcmlzdGljcy5wdXNoKGkxOG4oJ2d2LXBsYW5zLnNlY3VyaXR5Lmp3dCcpKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ09BVVRIMic6XG4gICAgICAgICAgICBjaGFyYWN0ZXJpc3RpY3MucHVzaChpMThuKCdndi1wbGFucy5zZWN1cml0eS5vYXV0aDInKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdLRVlfTEVTUyc6XG4gICAgICAgICAgICBjaGFyYWN0ZXJpc3RpY3MgPSBbXTtcbiAgICAgICAgICAgIGNoYXJhY3RlcmlzdGljcy5wdXNoKGkxOG4oJ2d2LXBsYW5zLnNlY3VyaXR5LmtleUxlc3MnKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoY2hhcmFjdGVyaXN0aWNzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBjaGFyYWN0ZXJpc3RpY3MucHVzaChpMThuKCdndi1wbGFucy5jaGFyYWN0ZXJpc3RpY3MuZW1wdHknKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjaGFyYWN0ZXJpc3RpY3M7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHNldCBwbGFucyhwbGFucykge1xuICAgIHRoaXMuc2tlbGV0b24gPSB0cnVlO1xuICAgIFByb21pc2UucmVzb2x2ZShwbGFucylcbiAgICAgIC50aGVuKChwbGFucykgPT4ge1xuICAgICAgICBpZiAocGxhbnMpIHtcbiAgICAgICAgICB0aGlzLl9lbXB0eSA9IHBsYW5zLmxlbmd0aCA9PT0gMDtcbiAgICAgICAgICB0aGlzLl9wbGFucyA9IHBsYW5zO1xuICAgICAgICAgIGlmICghdGhpcy5fZW1wdHkpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZVBsYW4gPSB0aGlzLl9wbGFucy5maW5kKChwKSA9PiBwLmFjdGl2ZSk7XG4gICAgICAgICAgICBpZiAoYWN0aXZlUGxhbiA9PSBudWxsKSB7XG4gICAgICAgICAgICAgIHRoaXMuX3BsYW5zWzBdLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLl9wbGFuc1swXS5pZDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBhY3RpdmVQbGFuLmlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLnNrZWxldG9uID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgdGhpcy5fZXJyb3IgPSB0cnVlO1xuICAgICAgICB0aGlzLl9wbGFucyA9IFtdO1xuICAgICAgICB0aGlzLnNrZWxldG9uID0gZmFsc2U7XG4gICAgICB9KTtcbiAgfVxuXG4gIHRvKHBsYW4pIHtcbiAgICBpZiAocGxhbikge1xuICAgICAgdGhpcy52YWx1ZSA9IHBsYW4uaWQ7XG4gICAgICB0aGlzLl9wbGFucyA9IHRoaXMuX3BsYW5zLm1hcCgocCwgaW5kZXgpID0+IHtcbiAgICAgICAgaWYgKEpTT04uc3RyaW5naWZ5KHApID09PSBKU09OLnN0cmluZ2lmeShwbGFuKSkge1xuICAgICAgICAgIHAuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICB0aGlzLmN1cnJlbnQgPSBpbmRleCArIDE7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcC5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcDtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnKSwgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlIH0pO1xuICAgIH1cbiAgfVxuXG4gIF9nZXRQbGFuVGl0bGUocGxhbikge1xuICAgIGxldCB0aXRsZSA9IHBsYW4ubmFtZTtcbiAgICBpZiAocGxhbi5kZXNjcmlwdGlvbikge1xuICAgICAgdGl0bGUgKz0gYDogJHtwbGFuLmRlc2NyaXB0aW9ufWA7XG4gICAgfVxuICAgIHJldHVybiB0aXRsZTtcbiAgfVxuXG4gIF9vblJlZGlyZWN0KCkge1xuICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ3JlZGlyZWN0Jyk7XG4gIH1cblxuICBnZXQgaGFzUGFnaW5hdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5zaXplIDwgdGhpcy5fcGxhbnMubGVuZ3RoO1xuICB9XG5cbiAgZ2V0IGhhc0xlZnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFzUGFnaW5hdGlvbiAmJiB0aGlzLmN1cnJlbnQgPiAxO1xuICB9XG5cbiAgZ2V0IGhhc1JpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLmhhc1BhZ2luYXRpb24gJiYgdGhpcy5jdXJyZW50IDwgdGhpcy5fcGxhbnMubGVuZ3RoO1xuICB9XG5cbiAgZ2V0IHBsYW5zKCkge1xuICAgIGlmICh0aGlzLmhhc1BhZ2luYXRpb24pIHtcbiAgICAgIGNvbnN0IGxlZnQgPSB0aGlzLl9wbGFucy5zbGljZSgwLCB0aGlzLmN1cnJlbnQpO1xuICAgICAgY29uc3QgcmlnaHQgPSB0aGlzLl9wbGFucy5zbGljZSh0aGlzLmN1cnJlbnQpO1xuICAgICAgY29uc3QgcGxhbnMgPSBbbGVmdC5wb3AoKV07XG5cbiAgICAgIG5ldyBBcnJheSh0aGlzLnNpemUgLSAxKS5maWxsKCcnKS5mb3JFYWNoKChlLCBpKSA9PiB7XG4gICAgICAgIGlmICgoaSAlIDIgPT09IDAgJiYgbGVmdC5sZW5ndGggPiAwKSB8fCByaWdodC5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICBjb25zdCBhID0gbGVmdC5wb3AoKTtcbiAgICAgICAgICBwbGFucy51bnNoaWZ0KGEpO1xuICAgICAgICB9IGVsc2UgaWYgKHJpZ2h0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBjb25zdCBiID0gcmlnaHQuc2hpZnQoKTtcbiAgICAgICAgICBwbGFucy5wdXNoKGIpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBwbGFucztcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX3BsYW5zO1xuICB9XG5cbiAgX3JlbmRlckhlYWRlcihwbGFucykge1xuICAgIHJldHVybiBwbGFucy5tYXAoKHBsYW4sIGluZGV4KSA9PiB7XG4gICAgICByZXR1cm4gaHRtbGA8bGlcbiAgICAgICAgQGNsaWNrPVwiJHt0aGlzLnRvLmJpbmQodGhpcywgcGxhbil9XCJcbiAgICAgICAgdGl0bGU9XCIke3RoaXMuX2dldFBsYW5UaXRsZShwbGFuKX1cIlxuICAgICAgICBjbGFzcz1cIiR7Y2xhc3NNYXAoe1xuICAgICAgICAgIHBsYW46IHRydWUsXG4gICAgICAgICAgYWN0aXZlOiBwbGFuLmFjdGl2ZSxcbiAgICAgICAgfSl9XCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIj4ke3BsYW4ubmFtZX08L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRlc2NyaXB0aW9uXCI+JHtwbGFuLmRlc2NyaXB0aW9ufTwvZGl2PlxuICAgICAgPC9saT5gO1xuICAgIH0pO1xuICB9XG5cbiAgX3JlbmRlclRyaWFuZ2xlcyhwbGFucykge1xuICAgIHJldHVybiBwbGFucy5tYXAoKHBsYW4sIGluZGV4KSA9PiB7XG4gICAgICByZXR1cm4gaHRtbGA8ZGl2XG4gICAgICAgIGNsYXNzPVwiJHtjbGFzc01hcCh7XG4gICAgICAgICAgc2VsZWN0b3I6IHRydWUsXG4gICAgICAgICAgYWN0aXZlOiBwbGFuLmFjdGl2ZSxcbiAgICAgICAgfSl9XCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRyaWFuZ2xlXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5gO1xuICAgIH0pO1xuICB9XG5cbiAgX3JlbmRlclBhZ2luYXRpb24oKSB7XG4gICAgaWYgKHRoaXMuaGFzUGFnaW5hdGlvbikge1xuICAgICAgcmV0dXJuIGh0bWxgIDxkaXYgY2xhc3M9XCJwYWdpbmF0aW9uXCI+XG4gICAgICAgICR7IXRoaXMuaGFzTGVmdCA/ICcnIDogaHRtbGA8Z3YtaWNvbiBAY2xpY2s9XCIke3RoaXMudG9MZWZ0fVwiIHNoYXBlPVwibmF2aWdhdGlvbjphbmdsZS1sZWZ0XCIgY2xhc3M9XCJsaW5rXCI+PC9ndi1pY29uPmB9XG4gICAgICAgIDxkaXYgc3R5bGU9XCJmbGV4OiAxO1wiPjwvZGl2PlxuICAgICAgICAkeyF0aGlzLmhhc1JpZ2h0ID8gJycgOiBodG1sYDxndi1pY29uIEBjbGljaz1cIiR7dGhpcy50b1JpZ2h0fVwiIHNoYXBlPVwibmF2aWdhdGlvbjphbmdsZS1yaWdodFwiIGNsYXNzPVwibGlua1wiPjwvZ3YtaWNvbj5gfVxuICAgICAgPC9kaXY+YDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IGJnYyA9IGdldENzc1Zhcih0aGlzLCAnLS1ndi1wbGFucy0tYmdjJywgJyM1QTc2ODQnKTtcbiAgICBjb25zdCB7IHIsIGcsIGIgfSA9IGhleFRvUkdCKGJnYyk7XG4gICAgY29uc3Qgc3R5bGUgPSB7XG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IGByZ2JhKCR7cn0sICR7Z30sICR7Yn0sIDAuMSlgLFxuICAgICAgY29sb3I6IGByZ2JhKCR7cn0sICR7Z30sICR7Yn0sIDAuNSlgLFxuICAgIH07XG5cbiAgICBpZiAoIXRoaXMuc2tlbGV0b24pIHtcbiAgICAgIGlmICh0aGlzLl9lcnJvcikge1xuICAgICAgICByZXR1cm4gaHRtbGA8ZGl2IGNsYXNzPVwiZXJyb3JcIj5cbiAgICAgICAgICA8cD4ke2kxOG4oJ2d2LXBsYW5zLmVycm9yJyl9PC9wPlxuICAgICAgICA8L2Rpdj5gO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLl9lbXB0eSkge1xuICAgICAgICByZXR1cm4gaHRtbGAgPGRpdiBjbGFzcz1cImVtcHR5XCI+XG4gICAgICAgICAgPHA+JHtpMThuKCdndi1wbGFucy5lbXB0eS50aXRsZScpfTwvcD5cbiAgICAgICAgICA8YSBjbGFzcz1cImxpbmtcIiBAY2xpY2s9XCIke3RoaXMuX29uUmVkaXJlY3R9XCI+JHtpMThuKCdndi1wbGFucy5lbXB0eS5yZWRpcmVjdCcpfTwvYT5cbiAgICAgICAgPC9kaXY+YDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc2VzID0geyBza2VsZXRvbjogdGhpcy5za2VsZXRvbiB9O1xuICAgIGNvbnN0IGN1cnJlbnRQbGFucyA9IHRoaXMucGxhbnM7XG4gICAgcmV0dXJuIGh0bWxgPGRpdiBjbGFzcz1cIiR7Y2xhc3NNYXAoY2xhc3Nlcyl9XCI+XG4gICAgICA8dWwgY2xhc3M9XCJwbGFuc1wiIHN0eWxlPVwiJHtzdHlsZU1hcChzdHlsZSl9XCI+XG4gICAgICAgICR7dGhpcy5fcmVuZGVySGVhZGVyKGN1cnJlbnRQbGFucyl9XG4gICAgICA8L3VsPlxuICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdG9yc1wiPiR7dGhpcy5fcmVuZGVyVHJpYW5nbGVzKGN1cnJlbnRQbGFucyl9PC9kaXY+XG4gICAgICAke3RoaXMuX3JlbmRlclBhZ2luYXRpb24oKX1cbiAgICAgICR7IXRoaXMuc2tlbGV0b25cbiAgICAgICAgPyBodG1sYDxkaXYgY2xhc3M9XCJjaGFyYWN0ZXJpc3RpY3NcIj5cbiAgICAgICAgICAgICR7cmVwZWF0KFxuICAgICAgICAgICAgICB0aGlzLl9jaGFyYWN0ZXJpc3RpY3MsXG4gICAgICAgICAgICAgIChjaGFyYWN0ZXJpc3RpYykgPT4gY2hhcmFjdGVyaXN0aWMsXG4gICAgICAgICAgICAgIChjaGFyYWN0ZXJpc3RpYywgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgaHRtbGA8ZGl2IGNsYXNzPVwiY2hhcmFjdGVyaXN0aWNcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaXJjbGVcIj48Z3YtaWNvbiBzaGFwZT1cImhvbWU6Zmxvd2VyIzJcIj48L2d2LWljb24+PC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2PiR7Y2hhcmFjdGVyaXN0aWN9PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+YCxcbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+YFxuICAgICAgICA6ICcnfVxuICAgIDwvZGl2PiBgO1xuICB9XG5cbiAgdG9MZWZ0KCkge1xuICAgIHRoaXMudG8odGhpcy5fcGxhbnNbdGhpcy5jdXJyZW50IC0gMl0pO1xuICB9XG5cbiAgdG9SaWdodCgpIHtcbiAgICB0aGlzLnRvKHRoaXMuX3BsYW5zW3RoaXMuY3VycmVudF0pO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LXBsYW5zJywgR3ZQbGFucyk7XG4iXX0=
|
|
@@ -13,9 +13,8 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { css, LitElement } from 'lit
|
|
17
|
-
import {
|
|
18
|
-
import { classMap } from 'lit-html/directives/class-map';
|
|
16
|
+
import { css, LitElement, html } from 'lit';
|
|
17
|
+
import { classMap } from 'lit/directives/class-map';
|
|
19
18
|
/**
|
|
20
19
|
* Popover component
|
|
21
20
|
*
|
|
@@ -229,4 +228,4 @@ export class GvPopover extends LitElement {
|
|
|
229
228
|
|
|
230
229
|
}
|
|
231
230
|
window.customElements.define('gv-popover', GvPopover);
|
|
232
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wb3BvdmVyLmpzIl0sIm5hbWVzIjpbImNzcyIsIkxpdEVsZW1lbnQiLCJodG1sIiwiY2xhc3NNYXAiLCJHdlBvcG92ZXIiLCJwcm9wZXJ0aWVzIiwiZXZlbnQiLCJ0eXBlIiwiU3RyaW5nIiwiZGVsYXkiLCJOdW1iZXIiLCJhcnJvdyIsIkJvb2xlYW4iLCJyZWZsZWN0Iiwic21hbGwiLCJtZWRpdW0iLCJsYXJnZSIsIndpZHRoIiwicG9zaXRpb24iLCJhdXRvIiwiX29wZW5lZCIsImF0dHJpYnV0ZSIsInN0eWxlcyIsImNvbnN0cnVjdG9yIiwiX2Nsb3NlSGFuZGxlciIsIl9jbG9zZSIsImJpbmQiLCJfb3BlbiIsImUiLCJ3aW5kb3ciLCJyZW1vdmVFdmVudExpc3RlbmVyIiwic2V0VGltZW91dCIsImFkZEV2ZW50TGlzdGVuZXIiLCJjbG9zZSIsInRhcmdldCIsImZpcnN0RWxlbWVudENoaWxkIiwib3BlbkVsZW1lbnQiLCJzaGFkb3dSb290IiwicXVlcnlTZWxlY3RvciIsImNsYXNzTGlzdCIsImFkZCIsInJlbW92ZSIsInJlbmRlciIsImlubGluZSIsImNsYXNzZXMiLCJvcGVuIiwiY29udGVudCIsInJlbmRlckNvbnRlbnQiLCJmaXJzdFVwZGF0ZWQiLCJfY2hhbmdlZFByb3BlcnRpZXMiLCJzdGFydHNXaXRoIiwiX2dldENvbnRlbnRTaXplIiwicG9wb3ZlciIsIm9mZnNldFdpZHRoIiwiaGVpZ2h0Iiwib2Zmc2V0SGVpZ2h0IiwiX2dldFBvc2l0aW9uUGFkZGluZyIsIl9nZXRDZW50ZXJQb3NpdGlvbiIsIngiLCJzY3JvbGxYIiwieSIsInNjcm9sbFkiLCJfdXBkYXRlUG9zaXRpb24iLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJfaGFzVG9wU3BhY2UiLCJfaGFzQm90dG9tU3BhY2UiLCJfaGFzTGVmdFNwYWNlIiwiX2hhc1JpZ2h0U3BhY2UiLCJpbmRleCIsImluZGV4T2YiLCJfZ2V0TWF4WCIsImlubmVyV2lkdGgiLCJfZ2V0TWF4WSIsImlubmVySGVpZ2h0IiwidXBkYXRlZCIsInByb3BzIiwiaGFzIiwic3R5bGUiLCJzZXRQcm9wZXJ0eSIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxHQUFULEVBQWNDLFVBQWQsUUFBZ0MsYUFBaEM7QUFDQSxTQUFTQyxJQUFULFFBQXFCLFVBQXJCO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwrQkFBekI7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxNQUFNQyxTQUFOLFNBQXdCSCxVQUF4QixDQUFtQztBQUNuQixhQUFWSSxVQUFVLEdBQUc7QUFDdEIsV0FBTztBQUNMQyxNQUFBQSxLQUFLLEVBQUU7QUFBRUMsUUFBQUEsSUFBSSxFQUFFQztBQUFSLE9BREY7QUFFTEMsTUFBQUEsS0FBSyxFQUFFO0FBQUVGLFFBQUFBLElBQUksRUFBRUc7QUFBUixPQUZGO0FBR0xDLE1BQUFBLEtBQUssRUFBRTtBQUFFSixRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUhGO0FBSUxDLE1BQUFBLEtBQUssRUFBRTtBQUFFUCxRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUpGO0FBS0xFLE1BQUFBLE1BQU0sRUFBRTtBQUFFUixRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUxIO0FBTUxHLE1BQUFBLEtBQUssRUFBRTtBQUFFVCxRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQU5GO0FBT0xJLE1BQUFBLEtBQUssRUFBRTtBQUFFVixRQUFBQSxJQUFJLEVBQUVDO0FBQVIsT0FQRjtBQVFMVSxNQUFBQSxRQUFRLEVBQUU7QUFBRVgsUUFBQUEsSUFBSSxFQUFFQyxNQUFSO0FBQWdCSyxRQUFBQSxPQUFPLEVBQUU7QUFBekIsT0FSTDtBQVNMTSxNQUFBQSxJQUFJLEVBQUU7QUFBRVosUUFBQUEsSUFBSSxFQUFFSztBQUFSLE9BVEQ7QUFVTFEsTUFBQUEsT0FBTyxFQUFFO0FBQUViLFFBQUFBLElBQUksRUFBRUssT0FBUjtBQUFpQlMsUUFBQUEsU0FBUyxFQUFFO0FBQTVCO0FBVkosS0FBUDtBQVlEOztBQUVnQixhQUFOQyxNQUFNLEdBQUc7QUFDbEIsV0FBTyxDQUNMO0FBQ0F0QixJQUFBQSxHQUFHLGdqRkFGRSxDQUFQO0FBdUpEOztBQUVEdUIsRUFBQUEsV0FBVyxHQUFHO0FBQ1o7QUFDQSxTQUFLakIsS0FBTCxHQUFhLFdBQWI7QUFDQSxTQUFLa0IsYUFBTCxHQUFxQixLQUFLQyxNQUFMLENBQVlDLElBQVosQ0FBaUIsSUFBakIsQ0FBckI7QUFDQSxTQUFLakIsS0FBTCxHQUFhLENBQWI7QUFDQSxTQUFLRSxLQUFMLEdBQWEsS0FBYjtBQUNBLFNBQUtPLFFBQUwsR0FBZ0IsUUFBaEI7QUFDQSxTQUFLQyxJQUFMLEdBQVksS0FBWjtBQUNEOztBQUVEUSxFQUFBQSxLQUFLLENBQUNDLENBQUQsRUFBSTtBQUNQLFFBQUksS0FBS3RCLEtBQUwsS0FBZSxPQUFuQixFQUE0QjtBQUMxQnVCLE1BQUFBLE1BQU0sQ0FBQ0MsbUJBQVAsQ0FBMkIsS0FBS3hCLEtBQWhDLEVBQXVDLEtBQUtrQixhQUE1QztBQUNEOztBQUNELFNBQUtKLE9BQUwsR0FBZSxJQUFmOztBQUNBLFFBQUksS0FBS2QsS0FBTCxLQUFlLE9BQW5CLEVBQTRCO0FBQzFCeUIsTUFBQUEsVUFBVSxDQUFDLE1BQU1GLE1BQU0sQ0FBQ0csZ0JBQVAsQ0FBd0IsS0FBSzFCLEtBQTdCLEVBQW9DLEtBQUtrQixhQUF6QyxDQUFQLENBQVY7QUFDRDs7QUFFRCxRQUFJLEtBQUtmLEtBQUwsR0FBYSxDQUFqQixFQUFvQjtBQUNsQnNCLE1BQUFBLFVBQVUsQ0FBQyxNQUFNLEtBQUtOLE1BQUwsQ0FBWSxFQUFaLENBQVAsRUFBd0IsS0FBS2hCLEtBQTdCLENBQVY7QUFDRDtBQUNGOztBQUVEd0IsRUFBQUEsS0FBSyxHQUFHO0FBQ04sU0FBS1IsTUFBTCxDQUFZLEVBQVo7QUFDRDs7QUFFREEsRUFBQUEsTUFBTSxDQUFDRyxDQUFELEVBQUk7QUFDUixRQUFJLEtBQUtSLE9BQUwsS0FBaUJRLENBQUMsQ0FBQ00sTUFBRixLQUFhLEtBQUtDLGlCQUFsQixJQUF1QyxLQUFLN0IsS0FBTCxLQUFlLE9BQXZFLENBQUosRUFBcUY7QUFDbkYsWUFBTThCLFdBQVcsR0FBRyxLQUFLQyxVQUFMLENBQWdCQyxhQUFoQixDQUE4QixPQUE5QixDQUFwQjtBQUNBRixNQUFBQSxXQUFXLENBQUNHLFNBQVosQ0FBc0JDLEdBQXRCLENBQTBCLE9BQTFCO0FBQ0FULE1BQUFBLFVBQVUsQ0FBQyxNQUFNO0FBQ2ZLLFFBQUFBLFdBQVcsQ0FBQ0csU0FBWixDQUFzQkUsTUFBdEIsQ0FBNkIsT0FBN0I7QUFDQSxhQUFLckIsT0FBTCxHQUFlLEtBQWY7QUFDRCxPQUhTLEVBR1AsR0FITyxDQUFWO0FBSUQ7QUFDRjs7QUFFRHNCLEVBQUFBLE1BQU0sR0FBRztBQUNQLFVBQU1DLE1BQU0sR0FBRyxLQUFLMUIsS0FBTCxJQUFjLElBQWQsSUFBc0IsQ0FBQyxLQUFLSCxLQUE1QixJQUFxQyxDQUFDLEtBQUtDLE1BQTNDLElBQXFELENBQUMsS0FBS0MsS0FBMUU7QUFDQSxVQUFNNEIsT0FBTyxHQUFHO0FBQUVDLE1BQUFBLElBQUksRUFBRSxLQUFLekIsT0FBYjtBQUFzQjBCLE1BQUFBLE9BQU8sRUFBRSxJQUEvQjtBQUFxQ0gsTUFBQUE7QUFBckMsS0FBaEI7QUFDQSxXQUFPekMsSUFBSSxnQkFBZ0JDLFFBQVEsQ0FBQ3lDLE9BQUQsQ0FBeEIsb0JBRVAsS0FBS2pDLEtBQUwsR0FBYVQsSUFBSSwyQkFBakIsR0FBK0MsRUFGeEMseUJBR2MsS0FBSzZDLGFBQUwsRUFIZCxlQUFYO0FBS0Q7O0FBRURBLEVBQUFBLGFBQWEsR0FBRztBQUNkLFdBQU83QyxJQUFJLDhCQUFYO0FBQ0Q7O0FBRUQ4QyxFQUFBQSxZQUFZLENBQUNDLGtCQUFELEVBQXFCO0FBQy9CbEIsSUFBQUEsVUFBVSxDQUFDLE1BQU07QUFDZixXQUFLQyxnQkFBTCxDQUFzQixLQUFLMUIsS0FBM0IsRUFBa0MsS0FBS3FCLEtBQUwsQ0FBV0QsSUFBWCxDQUFnQixJQUFoQixDQUFsQzs7QUFDQSxVQUFJLEtBQUtwQixLQUFMLENBQVc0QyxVQUFYLENBQXNCLE9BQXRCLEtBQWtDLEtBQUt6QyxLQUFMLEtBQWUsQ0FBckQsRUFBd0Q7QUFDdEQsYUFBS3VCLGdCQUFMLENBQXNCLFlBQXRCLEVBQW9DLEtBQUtQLE1BQUwsQ0FBWUMsSUFBWixDQUFpQixJQUFqQixDQUFwQztBQUNEO0FBQ0YsS0FMUyxDQUFWO0FBTUQ7O0FBRUR5QixFQUFBQSxlQUFlLEdBQUc7QUFDaEIsVUFBTUMsT0FBTyxHQUFHLEtBQUtmLFVBQUwsQ0FBZ0JDLGFBQWhCLENBQThCLFVBQTlCLENBQWhCO0FBQ0EsV0FBTztBQUNMckIsTUFBQUEsS0FBSyxFQUFFbUMsT0FBTyxDQUFDQyxXQURWO0FBRUxDLE1BQUFBLE1BQU0sRUFBRUYsT0FBTyxDQUFDRztBQUZYLEtBQVA7QUFJRDs7QUFFREMsRUFBQUEsbUJBQW1CLEdBQUc7QUFDcEIsV0FBTyxFQUFQO0FBQ0Q7O0FBRURDLEVBQUFBLGtCQUFrQixHQUFHO0FBQ25CLFdBQU87QUFDTEMsTUFBQUEsQ0FBQyxFQUFFLEtBQUt4QixNQUFMLENBQVl3QixDQUFaLEdBQWdCLEtBQUt4QixNQUFMLENBQVlqQixLQUFaLEdBQW9CLENBQXBDLEdBQXdDWSxNQUFNLENBQUM4QixPQUQ3QztBQUVMQyxNQUFBQSxDQUFDLEVBQUUsS0FBSzFCLE1BQUwsQ0FBWTBCLENBQVosR0FBZ0IsS0FBSzFCLE1BQUwsQ0FBWW9CLE1BQVosR0FBcUIsQ0FBckMsR0FBeUN6QixNQUFNLENBQUNnQztBQUY5QyxLQUFQO0FBSUQ7O0FBRURDLEVBQUFBLGVBQWUsR0FBRztBQUNoQixRQUFJLEtBQUs1QyxRQUFMLElBQWlCLElBQWpCLElBQXlCLEtBQUtDLElBQWxDLEVBQXdDO0FBQ3RDLFlBQU1pQyxPQUFPLEdBQUcsS0FBS2YsVUFBTCxDQUFnQkMsYUFBaEIsQ0FBOEIsVUFBOUIsQ0FBaEI7O0FBQ0EsVUFBSWMsT0FBSixFQUFhO0FBQ1gsYUFBS2xCLE1BQUwsR0FBYyxLQUFLQyxpQkFBTCxDQUF1QjRCLHFCQUF2QixFQUFkOztBQUNBLFlBQ0csS0FBSzdDLFFBQUwsS0FBa0IsS0FBbEIsSUFBMkIsQ0FBQyxLQUFLOEMsWUFBTCxFQUE3QixJQUNDLEtBQUs5QyxRQUFMLEtBQWtCLFFBQWxCLElBQThCLENBQUMsS0FBSytDLGVBQUwsRUFEaEMsSUFFQyxLQUFLL0MsUUFBTCxLQUFrQixNQUFsQixJQUE0QixDQUFDLEtBQUtnRCxhQUFMLEVBRjlCLElBR0MsS0FBS2hELFFBQUwsS0FBa0IsT0FBbEIsSUFBNkIsQ0FBQyxLQUFLaUQsY0FBTCxFQUpqQyxFQUtFO0FBQ0EsZ0JBQU1DLEtBQUssR0FBRyxDQUFDLEtBQUtKLFlBQUwsRUFBRCxFQUFzQixLQUFLRyxjQUFMLEVBQXRCLEVBQTZDLEtBQUtGLGVBQUwsRUFBN0MsRUFBcUUsS0FBS0MsYUFBTCxFQUFyRSxFQUEyRkcsT0FBM0YsQ0FBbUcsSUFBbkcsQ0FBZDs7QUFDQSxjQUFJRCxLQUFLLEdBQUcsQ0FBQyxDQUFiLEVBQWdCO0FBQ2QsaUJBQUtsRCxRQUFMLEdBQWdCLENBQUMsS0FBRCxFQUFRLE9BQVIsRUFBaUIsUUFBakIsRUFBMkIsTUFBM0IsRUFBbUNrRCxLQUFuQyxDQUFoQjtBQUNEO0FBQ0Y7QUFDRjtBQUNGO0FBQ0Y7O0FBRURFLEVBQUFBLFFBQVEsR0FBRztBQUNULFdBQU96QyxNQUFNLENBQUMwQyxVQUFQLEdBQW9CLEtBQUtmLG1CQUFMLEVBQTNCO0FBQ0Q7O0FBRURnQixFQUFBQSxRQUFRLEdBQUc7QUFDVCxXQUFPM0MsTUFBTSxDQUFDNEMsV0FBUCxHQUFxQixLQUFLakIsbUJBQUwsRUFBNUI7QUFDRDs7QUFFRFMsRUFBQUEsZUFBZSxHQUFHO0FBQ2hCLFVBQU1MLENBQUMsR0FBRyxLQUFLMUIsTUFBTCxDQUFZMEIsQ0FBWixHQUFnQixLQUFLMUIsTUFBTCxDQUFZb0IsTUFBNUIsR0FBcUMsS0FBS0gsZUFBTCxHQUF1QkcsTUFBNUQsR0FBcUUsS0FBS0UsbUJBQUwsRUFBL0U7O0FBRUEsV0FBT0ksQ0FBQyxJQUFJLEtBQUtZLFFBQUwsRUFBWjtBQUNEOztBQUVETCxFQUFBQSxjQUFjLEdBQUc7QUFDZixVQUFNUCxDQUFDLEdBQUcsS0FBSzFCLE1BQUwsQ0FBWXdCLENBQVosR0FBZ0IsS0FBS3hCLE1BQUwsQ0FBWWpCLEtBQTVCLEdBQW9DLEtBQUtrQyxlQUFMLEdBQXVCbEMsS0FBM0QsR0FBbUUsS0FBS3VDLG1CQUFMLEVBQTdFOztBQUVBLFdBQU9JLENBQUMsSUFBSSxLQUFLVSxRQUFMLEVBQVo7QUFDRDs7QUFFRE4sRUFBQUEsWUFBWSxHQUFHO0FBQ2IsVUFBTUosQ0FBQyxHQUFHLEtBQUsxQixNQUFMLENBQVkwQixDQUFaLEdBQWdCLEtBQUtULGVBQUwsR0FBdUJHLE1BQXZDLEdBQWdELEtBQUtFLG1CQUFMLEVBQTFEOztBQUVBLFdBQU9JLENBQUMsSUFBSSxLQUFLSixtQkFBTCxFQUFaO0FBQ0Q7O0FBRURVLEVBQUFBLGFBQWEsR0FBRztBQUNkLFVBQU1OLENBQUMsR0FBRyxLQUFLMUIsTUFBTCxDQUFZd0IsQ0FBWixHQUFnQixLQUFLUCxlQUFMLEdBQXVCbEMsS0FBdkMsR0FBK0MsS0FBS3VDLG1CQUFMLEVBQXpEOztBQUVBLFdBQU9JLENBQUMsSUFBSSxLQUFLSixtQkFBTCxFQUFaO0FBQ0Q7O0FBRURrQixFQUFBQSxPQUFPLENBQUNDLEtBQUQsRUFBUTtBQUNiLFFBQUlBLEtBQUssQ0FBQ0MsR0FBTixDQUFVLE9BQVYsQ0FBSixFQUF3QjtBQUN0QixXQUFLdkMsVUFBTCxDQUFnQkMsYUFBaEIsQ0FBOEIsVUFBOUIsRUFBMEN1QyxLQUExQyxDQUFnREMsV0FBaEQsQ0FBNEQsT0FBNUQsRUFBcUUsS0FBSzdELEtBQTFFO0FBQ0Q7O0FBQ0QsU0FBSzZDLGVBQUw7QUFDRDs7QUFwVHVDO0FBdVQxQ2pDLE1BQU0sQ0FBQ2tELGNBQVAsQ0FBc0JDLE1BQXRCLENBQTZCLFlBQTdCLEVBQTJDNUUsU0FBM0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgY3NzLCBMaXRFbGVtZW50IH0gZnJvbSAnbGl0LWVsZW1lbnQnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC1odG1sJztcbmltcG9ydCB7IGNsYXNzTWFwIH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy9jbGFzcy1tYXAnO1xuXG4vKipcbiAqIFBvcG92ZXIgY29tcG9uZW50XG4gKlxuICogIyMgRGV0YWlsc1xuICogKiBoYXMgQHRoZW1lIGZhY2V0XG4gKlxuICogQGF0dHIge1N0cmluZ30gZXZlbnQgLSB0aGUgZXZlbnQgdGhhdCB0cmlnZ2VycyB0aGUgb3BlbmluZy5cbiAqIEBhdHRyIHtTdHJpbmd9IGRlbGF5IC0gdGhlIHRpbWUgYmVmb3JlIGNsb3NpbmcsIHVzZWZ1bCBmb3IgYSBjbGljayBldmVudFxuICogQGF0dHIge1N0cmluZ30gYXJyb3cgLSBpZiBuZWVkIGFycm93XG4gKiBAYXR0ciB7U3RyaW5nfSBzbWFsbCAtIFNtYWxsIHBvcG92ZXJcbiAqIEBhdHRyIHtTdHJpbmd9IG1lZGl1bSAtIE1lZGl1bSBwb3BvdmVyXG4gKiBAYXR0ciB7U3RyaW5nfSBsYXJnZSAtIExhcmdlIHBvcG92ZXJcbiAqIEBhdHRyIHtTdHJpbmd9IHdpZHRoIC0gVGhlIHdpZHRoIG9mIHBvcG92ZXJcbiAqIEBhdHRyIHtTdHJpbmd9IHBvc2l0aW9uIC0gVGhlIHBvc2l0aW9uIHRvcCwgcmlnaHQsIGJvdHRvbSBvciBsZWZ0XG4gKiBAYXR0ciB7Qm9vbGVhbn0gYXV0byAtIHRvIGxldCB0aGUgY29tcG9uZW50IGNob29zZSB0aGUgcG9zaXRpb25cbiAqXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXBvcG92ZXItLWJnYz12YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWxpZ2h0ZXIsICNmYWZhZmEpXSAtIEJhY2tncm91bmQgY29sb3JcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtcG9wb3Zlci0tYz12YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWRhcmssICMyNjI2MjYpXSAtIENvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXBvcG92ZXItLWJkYz12YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KV0gLSBCb3JkZXIgY29sb3JcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LXBvcG92ZXItLXA9MC41cmVtXSAtIFBhZGRpbmdcbiAqL1xuZXhwb3J0IGNsYXNzIEd2UG9wb3ZlciBleHRlbmRzIExpdEVsZW1lbnQge1xuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGV2ZW50OiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgZGVsYXk6IHsgdHlwZTogTnVtYmVyIH0sXG4gICAgICBhcnJvdzogeyB0eXBlOiBCb29sZWFuLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgICBzbWFsbDogeyB0eXBlOiBCb29sZWFuLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgICBtZWRpdW06IHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgbGFyZ2U6IHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgd2lkdGg6IHsgdHlwZTogU3RyaW5nIH0sXG4gICAgICBwb3NpdGlvbjogeyB0eXBlOiBTdHJpbmcsIHJlZmxlY3Q6IHRydWUgfSxcbiAgICAgIGF1dG86IHsgdHlwZTogQm9vbGVhbiB9LFxuICAgICAgX29wZW5lZDogeyB0eXBlOiBCb29sZWFuLCBhdHRyaWJ1dGU6IGZhbHNlIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgc3R5bGVzKCkge1xuICAgIHJldHVybiBbXG4gICAgICAvLyBsYW5ndWFnZT1DU1NcbiAgICAgIGNzc2BcbiAgICAgICAgOmhvc3Qge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAucG9wb3ZlciB7XG4gICAgICAgICAgLS1iZ2M6IHZhcigtLWd2LXBvcG92ZXItLWJnYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVyLCAjZmFmYWZhKSk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWd2LXBvcG92ZXItLWMsIHZhcigtLWd2LXRoZW1lLWZvbnQtY29sb3ItZGFyaywgIzI2MjYyNikpO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZ2MpO1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLWd2LXBvcG92ZXItLXAsIDAuNXJlbSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdib3R0b20nXSkgLnBvcG92ZXIge1xuICAgICAgICAgIHRvcDogY2FsYygxMDAlICsgMC40cmVtKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDFweCAwIDAgMCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KSwgMCAycHggM3B4IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J2JvdHRvbSddW2Fycm93XSkgLnBvcG92ZXIge1xuICAgICAgICAgIHRvcDogY2FsYygxMDAlICsgMC40cmVtICsgMTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J2JvdHRvbSddW2Fycm93XSkgLmFycm93IHtcbiAgICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIDhweCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0ndG9wJ10pIC5wb3BvdmVyIHtcbiAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIDAuNHJlbSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBib3gtc2hhZG93OiAxcHggMCAwIDAgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSksIDAgLTJweCAzcHggdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1kYXJrLCAjYmZiZmJmKTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0ndG9wJ11bYXJyb3ddKSAucG9wb3ZlciB7XG4gICAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyAwLjRyZW0gKyAxMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0ndG9wJ11bYXJyb3ddKSAuYXJyb3cge1xuICAgICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gOHB4KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdsZWZ0J10pIC5wb3BvdmVyIHtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDAuNHJlbSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogLTFweCAwIDAgMCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KSwgLTFweCAycHggM3B4IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J2xlZnQnXVthcnJvd10pIC5wb3BvdmVyIHtcbiAgICAgICAgICByaWdodDogY2FsYygxMDAlICsgMC40cmVtICsgMTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J2xlZnQnXVthcnJvd10pIC5hcnJvdyB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3JpZ2h0J10pIC5wb3BvdmVyIHtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgbGVmdDogY2FsYygxMDAlICsgMC40cmVtKTtcbiAgICAgICAgICBib3gtc2hhZG93OiAxcHggMCAwIDFweCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KSwgMXB4IDFweCAxcHggdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1kYXJrLCAjYmZiZmJmKTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0ncmlnaHQnXVthcnJvd10pIC5wb3BvdmVyIHtcbiAgICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgKyAwLjRyZW0gKyAxMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0ncmlnaHQnXVthcnJvd10pIC5hcnJvdyB7XG4gICAgICAgICAgbGVmdDogY2FsYygxMDAlIC0gOHB4KTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5saW5lIC5wb3BvdmVyIHtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3NtYWxsXSkgLnBvcG92ZXIge1xuICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFttZWRpdW1dKSAucG9wb3ZlciB7XG4gICAgICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW2xhcmdlXSkgLnBvcG92ZXIge1xuICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3BvdmVyLFxuICAgICAgICAuYXJyb3cge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vcGVuIC5wb3BvdmVyLFxuICAgICAgICAub3BlbiAuYXJyb3cge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jbG9zZSAucG9wb3ZlcixcbiAgICAgICAgLmNsb3NlIC5hcnJvdyB7XG4gICAgICAgIH1cblxuICAgICAgICAuYXJyb3cge1xuICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICB6LWluZGV4OiAxMDE7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAuYXJyb3c6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3YtcG9wb3Zlci0tYmdjLCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWxpZ2h0ZXIsICNmYWZhZmEpKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdG9wOiAxOXB4O1xuICAgICAgICAgIGxlZnQ6IDZweDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ndi1wb3BvdmVyLS1iZGMsIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3IsICNmNWY1ZjUpKTtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmV2ZW50ID0gJ21vdXNlb3Zlcic7XG4gICAgdGhpcy5fY2xvc2VIYW5kbGVyID0gdGhpcy5fY2xvc2UuYmluZCh0aGlzKTtcbiAgICB0aGlzLmRlbGF5ID0gMDtcbiAgICB0aGlzLmFycm93ID0gZmFsc2U7XG4gICAgdGhpcy5wb3NpdGlvbiA9ICdib3R0b20nO1xuICAgIHRoaXMuYXV0byA9IGZhbHNlO1xuICB9XG5cbiAgX29wZW4oZSkge1xuICAgIGlmICh0aGlzLmV2ZW50ID09PSAnY2xpY2snKSB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcih0aGlzLmV2ZW50LCB0aGlzLl9jbG9zZUhhbmRsZXIpO1xuICAgIH1cbiAgICB0aGlzLl9vcGVuZWQgPSB0cnVlO1xuICAgIGlmICh0aGlzLmV2ZW50ID09PSAnY2xpY2snKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKHRoaXMuZXZlbnQsIHRoaXMuX2Nsb3NlSGFuZGxlcikpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRlbGF5ID4gMCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9jbG9zZSh7fSksIHRoaXMuZGVsYXkpO1xuICAgIH1cbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuX2Nsb3NlKHt9KTtcbiAgfVxuXG4gIF9jbG9zZShlKSB7XG4gICAgaWYgKHRoaXMuX29wZW5lZCAmJiAoZS50YXJnZXQgIT09IHRoaXMuZmlyc3RFbGVtZW50Q2hpbGQgfHwgdGhpcy5ldmVudCAhPT0gJ2NsaWNrJykpIHtcbiAgICAgIGNvbnN0IG9wZW5FbGVtZW50ID0gdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJy5vcGVuJyk7XG4gICAgICBvcGVuRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdjbG9zZScpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIG9wZW5FbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ2Nsb3NlJyk7XG4gICAgICAgIHRoaXMuX29wZW5lZCA9IGZhbHNlO1xuICAgICAgfSwgMjAwKTtcbiAgICB9XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgaW5saW5lID0gdGhpcy53aWR0aCA9PSBudWxsICYmICF0aGlzLnNtYWxsICYmICF0aGlzLm1lZGl1bSAmJiAhdGhpcy5sYXJnZTtcbiAgICBjb25zdCBjbGFzc2VzID0geyBvcGVuOiB0aGlzLl9vcGVuZWQsIGNvbnRlbnQ6IHRydWUsIGlubGluZSB9O1xuICAgIHJldHVybiBodG1sYCA8ZGl2IGNsYXNzPVwiJHtjbGFzc01hcChjbGFzc2VzKX1cIj5cbiAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICR7dGhpcy5hcnJvdyA/IGh0bWxgPGRpdiBjbGFzcz1cImFycm93XCI+PC9kaXY+YCA6ICcnfVxuICAgICAgPGRpdiBjbGFzcz1cInBvcG92ZXJcIj4ke3RoaXMucmVuZGVyQ29udGVudCgpfTwvZGl2PlxuICAgIDwvZGl2PmA7XG4gIH1cblxuICByZW5kZXJDb250ZW50KCkge1xuICAgIHJldHVybiBodG1sYDxzbG90IG5hbWU9XCJwb3BvdmVyXCI+PC9zbG90PmA7XG4gIH1cblxuICBmaXJzdFVwZGF0ZWQoX2NoYW5nZWRQcm9wZXJ0aWVzKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIodGhpcy5ldmVudCwgdGhpcy5fb3Blbi5iaW5kKHRoaXMpKTtcbiAgICAgIGlmICh0aGlzLmV2ZW50LnN0YXJ0c1dpdGgoJ21vdXNlJykgJiYgdGhpcy5kZWxheSA9PT0gMCkge1xuICAgICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCB0aGlzLl9jbG9zZS5iaW5kKHRoaXMpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIF9nZXRDb250ZW50U2l6ZSgpIHtcbiAgICBjb25zdCBwb3BvdmVyID0gdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJy5wb3BvdmVyJyk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHdpZHRoOiBwb3BvdmVyLm9mZnNldFdpZHRoLFxuICAgICAgaGVpZ2h0OiBwb3BvdmVyLm9mZnNldEhlaWdodCxcbiAgICB9O1xuICB9XG5cbiAgX2dldFBvc2l0aW9uUGFkZGluZygpIHtcbiAgICByZXR1cm4gMTA7XG4gIH1cblxuICBfZ2V0Q2VudGVyUG9zaXRpb24oKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHg6IHRoaXMudGFyZ2V0LnggKyB0aGlzLnRhcmdldC53aWR0aCAvIDIgKyB3aW5kb3cuc2Nyb2xsWCxcbiAgICAgIHk6IHRoaXMudGFyZ2V0LnkgKyB0aGlzLnRhcmdldC5oZWlnaHQgLyAyICsgd2luZG93LnNjcm9sbFksXG4gICAgfTtcbiAgfVxuXG4gIF91cGRhdGVQb3NpdGlvbigpIHtcbiAgICBpZiAodGhpcy5wb3NpdGlvbiAhPSBudWxsICYmIHRoaXMuYXV0bykge1xuICAgICAgY29uc3QgcG9wb3ZlciA9IHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCcucG9wb3ZlcicpO1xuICAgICAgaWYgKHBvcG92ZXIpIHtcbiAgICAgICAgdGhpcy50YXJnZXQgPSB0aGlzLmZpcnN0RWxlbWVudENoaWxkLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgKHRoaXMucG9zaXRpb24gPT09ICd0b3AnICYmICF0aGlzLl9oYXNUb3BTcGFjZSgpKSB8fFxuICAgICAgICAgICh0aGlzLnBvc2l0aW9uID09PSAnYm90dG9tJyAmJiAhdGhpcy5faGFzQm90dG9tU3BhY2UoKSkgfHxcbiAgICAgICAgICAodGhpcy5wb3NpdGlvbiA9PT0gJ2xlZnQnICYmICF0aGlzLl9oYXNMZWZ0U3BhY2UoKSkgfHxcbiAgICAgICAgICAodGhpcy5wb3NpdGlvbiA9PT0gJ3JpZ2h0JyAmJiAhdGhpcy5faGFzUmlnaHRTcGFjZSgpKVxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBpbmRleCA9IFt0aGlzLl9oYXNUb3BTcGFjZSgpLCB0aGlzLl9oYXNSaWdodFNwYWNlKCksIHRoaXMuX2hhc0JvdHRvbVNwYWNlKCksIHRoaXMuX2hhc0xlZnRTcGFjZSgpXS5pbmRleE9mKHRydWUpO1xuICAgICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uID0gWyd0b3AnLCAncmlnaHQnLCAnYm90dG9tJywgJ2xlZnQnXVtpbmRleF07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgX2dldE1heFgoKSB7XG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lcldpZHRoIC0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG4gIH1cblxuICBfZ2V0TWF4WSgpIHtcbiAgICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IC0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG4gIH1cblxuICBfaGFzQm90dG9tU3BhY2UoKSB7XG4gICAgY29uc3QgeSA9IHRoaXMudGFyZ2V0LnkgKyB0aGlzLnRhcmdldC5oZWlnaHQgKyB0aGlzLl9nZXRDb250ZW50U2l6ZSgpLmhlaWdodCArIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuXG4gICAgcmV0dXJuIHkgPD0gdGhpcy5fZ2V0TWF4WSgpO1xuICB9XG5cbiAgX2hhc1JpZ2h0U3BhY2UoKSB7XG4gICAgY29uc3QgeSA9IHRoaXMudGFyZ2V0LnggKyB0aGlzLnRhcmdldC53aWR0aCArIHRoaXMuX2dldENvbnRlbnRTaXplKCkud2lkdGggKyB0aGlzLl9nZXRQb3NpdGlvblBhZGRpbmcoKTtcblxuICAgIHJldHVybiB5IDw9IHRoaXMuX2dldE1heFgoKTtcbiAgfVxuXG4gIF9oYXNUb3BTcGFjZSgpIHtcbiAgICBjb25zdCB5ID0gdGhpcy50YXJnZXQueSAtIHRoaXMuX2dldENvbnRlbnRTaXplKCkuaGVpZ2h0IC0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG5cbiAgICByZXR1cm4geSA+PSB0aGlzLl9nZXRQb3NpdGlvblBhZGRpbmcoKTtcbiAgfVxuXG4gIF9oYXNMZWZ0U3BhY2UoKSB7XG4gICAgY29uc3QgeSA9IHRoaXMudGFyZ2V0LnggLSB0aGlzLl9nZXRDb250ZW50U2l6ZSgpLndpZHRoIC0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG5cbiAgICByZXR1cm4geSA+PSB0aGlzLl9nZXRQb3NpdGlvblBhZGRpbmcoKTtcbiAgfVxuXG4gIHVwZGF0ZWQocHJvcHMpIHtcbiAgICBpZiAocHJvcHMuaGFzKCd3aWR0aCcpKSB7XG4gICAgICB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignLnBvcG92ZXInKS5zdHlsZS5zZXRQcm9wZXJ0eSgnd2lkdGgnLCB0aGlzLndpZHRoKTtcbiAgICB9XG4gICAgdGhpcy5fdXBkYXRlUG9zaXRpb24oKTtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1wb3BvdmVyJywgR3ZQb3BvdmVyKTtcbiJdfQ==
|
|
231
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wb3BvdmVyLmpzIl0sIm5hbWVzIjpbImNzcyIsIkxpdEVsZW1lbnQiLCJodG1sIiwiY2xhc3NNYXAiLCJHdlBvcG92ZXIiLCJwcm9wZXJ0aWVzIiwiZXZlbnQiLCJ0eXBlIiwiU3RyaW5nIiwiZGVsYXkiLCJOdW1iZXIiLCJhcnJvdyIsIkJvb2xlYW4iLCJyZWZsZWN0Iiwic21hbGwiLCJtZWRpdW0iLCJsYXJnZSIsIndpZHRoIiwicG9zaXRpb24iLCJhdXRvIiwiX29wZW5lZCIsImF0dHJpYnV0ZSIsInN0eWxlcyIsImNvbnN0cnVjdG9yIiwiX2Nsb3NlSGFuZGxlciIsIl9jbG9zZSIsImJpbmQiLCJfb3BlbiIsImUiLCJ3aW5kb3ciLCJyZW1vdmVFdmVudExpc3RlbmVyIiwic2V0VGltZW91dCIsImFkZEV2ZW50TGlzdGVuZXIiLCJjbG9zZSIsInRhcmdldCIsImZpcnN0RWxlbWVudENoaWxkIiwib3BlbkVsZW1lbnQiLCJzaGFkb3dSb290IiwicXVlcnlTZWxlY3RvciIsImNsYXNzTGlzdCIsImFkZCIsInJlbW92ZSIsInJlbmRlciIsImlubGluZSIsImNsYXNzZXMiLCJvcGVuIiwiY29udGVudCIsInJlbmRlckNvbnRlbnQiLCJmaXJzdFVwZGF0ZWQiLCJfY2hhbmdlZFByb3BlcnRpZXMiLCJzdGFydHNXaXRoIiwiX2dldENvbnRlbnRTaXplIiwicG9wb3ZlciIsIm9mZnNldFdpZHRoIiwiaGVpZ2h0Iiwib2Zmc2V0SGVpZ2h0IiwiX2dldFBvc2l0aW9uUGFkZGluZyIsIl9nZXRDZW50ZXJQb3NpdGlvbiIsIngiLCJzY3JvbGxYIiwieSIsInNjcm9sbFkiLCJfdXBkYXRlUG9zaXRpb24iLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJfaGFzVG9wU3BhY2UiLCJfaGFzQm90dG9tU3BhY2UiLCJfaGFzTGVmdFNwYWNlIiwiX2hhc1JpZ2h0U3BhY2UiLCJpbmRleCIsImluZGV4T2YiLCJfZ2V0TWF4WCIsImlubmVyV2lkdGgiLCJfZ2V0TWF4WSIsImlubmVySGVpZ2h0IiwidXBkYXRlZCIsInByb3BzIiwiaGFzIiwic3R5bGUiLCJzZXRQcm9wZXJ0eSIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxHQUFULEVBQWNDLFVBQWQsRUFBMEJDLElBQTFCLFFBQXNDLEtBQXRDO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwwQkFBekI7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsT0FBTyxNQUFNQyxTQUFOLFNBQXdCSCxVQUF4QixDQUFtQztBQUNuQixhQUFWSSxVQUFVLEdBQUc7QUFDdEIsV0FBTztBQUNMQyxNQUFBQSxLQUFLLEVBQUU7QUFBRUMsUUFBQUEsSUFBSSxFQUFFQztBQUFSLE9BREY7QUFFTEMsTUFBQUEsS0FBSyxFQUFFO0FBQUVGLFFBQUFBLElBQUksRUFBRUc7QUFBUixPQUZGO0FBR0xDLE1BQUFBLEtBQUssRUFBRTtBQUFFSixRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUhGO0FBSUxDLE1BQUFBLEtBQUssRUFBRTtBQUFFUCxRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUpGO0FBS0xFLE1BQUFBLE1BQU0sRUFBRTtBQUFFUixRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJDLFFBQUFBLE9BQU8sRUFBRTtBQUExQixPQUxIO0FBTUxHLE1BQUFBLEtBQUssRUFBRTtBQUFFVCxRQUFBQSxJQUFJLEVBQUVLLE9BQVI7QUFBaUJD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LE9BQVYsQ0FBSixFQUF3QjtBQUN0QixXQUFLdkMsVUFBTCxDQUFnQkMsYUFBaEIsQ0FBOEIsVUFBOUIsRUFBMEN1QyxLQUExQyxDQUFnREMsV0FBaEQsQ0FBNEQsT0FBNUQsRUFBcUUsS0FBSzdELEtBQTFFO0FBQ0Q7O0FBQ0QsU0FBSzZDLGVBQUw7QUFDRDs7QUFwVHVDO0FBdVQxQ2pDLE1BQU0sQ0FBQ2tELGNBQVAsQ0FBc0JDLE1BQXRCLENBQTZCLFlBQTdCLEVBQTJDNUUsU0FBM0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgY3NzLCBMaXRFbGVtZW50LCBodG1sIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGNsYXNzTWFwIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvY2xhc3MtbWFwJztcblxuLyoqXG4gKiBQb3BvdmVyIGNvbXBvbmVudFxuICpcbiAqICMjIERldGFpbHNcbiAqICogaGFzIEB0aGVtZSBmYWNldFxuICpcbiAqIEBhdHRyIHtTdHJpbmd9IGV2ZW50IC0gdGhlIGV2ZW50IHRoYXQgdHJpZ2dlcnMgdGhlIG9wZW5pbmcuXG4gKiBAYXR0ciB7U3RyaW5nfSBkZWxheSAtIHRoZSB0aW1lIGJlZm9yZSBjbG9zaW5nLCB1c2VmdWwgZm9yIGEgY2xpY2sgZXZlbnRcbiAqIEBhdHRyIHtTdHJpbmd9IGFycm93IC0gaWYgbmVlZCBhcnJvd1xuICogQGF0dHIge1N0cmluZ30gc21hbGwgLSBTbWFsbCBwb3BvdmVyXG4gKiBAYXR0ciB7U3RyaW5nfSBtZWRpdW0gLSBNZWRpdW0gcG9wb3ZlclxuICogQGF0dHIge1N0cmluZ30gbGFyZ2UgLSBMYXJnZSBwb3BvdmVyXG4gKiBAYXR0ciB7U3RyaW5nfSB3aWR0aCAtIFRoZSB3aWR0aCBvZiBwb3BvdmVyXG4gKiBAYXR0ciB7U3RyaW5nfSBwb3NpdGlvbiAtIFRoZSBwb3NpdGlvbiB0b3AsIHJpZ2h0LCBib3R0b20gb3IgbGVmdFxuICogQGF0dHIge0Jvb2xlYW59IGF1dG8gLSB0byBsZXQgdGhlIGNvbXBvbmVudCBjaG9vc2UgdGhlIHBvc2l0aW9uXG4gKlxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1wb3BvdmVyLS1iZ2M9dmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVyLCAjZmFmYWZhKV0gLSBCYWNrZ3JvdW5kIGNvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXBvcG92ZXItLWM9dmFyKC0tZ3YtdGhlbWUtZm9udC1jb2xvci1kYXJrLCAjMjYyNjI2KV0gLSBDb2xvclxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1wb3BvdmVyLS1iZGM9dmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSldIC0gQm9yZGVyIGNvbG9yXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1wb3BvdmVyLS1wPTAuNXJlbV0gLSBQYWRkaW5nXG4gKi9cbmV4cG9ydCBjbGFzcyBHdlBvcG92ZXIgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgc3RhdGljIGdldCBwcm9wZXJ0aWVzKCkge1xuICAgIHJldHVybiB7XG4gICAgICBldmVudDogeyB0eXBlOiBTdHJpbmcgfSxcbiAgICAgIGRlbGF5OiB7IHR5cGU6IE51bWJlciB9LFxuICAgICAgYXJyb3c6IHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgc21hbGw6IHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9LFxuICAgICAgbWVkaXVtOiB7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSxcbiAgICAgIGxhcmdlOiB7IHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSxcbiAgICAgIHdpZHRoOiB7IHR5cGU6IFN0cmluZyB9LFxuICAgICAgcG9zaXRpb246IHsgdHlwZTogU3RyaW5nLCByZWZsZWN0OiB0cnVlIH0sXG4gICAgICBhdXRvOiB7IHR5cGU6IEJvb2xlYW4gfSxcbiAgICAgIF9vcGVuZWQ6IHsgdHlwZTogQm9vbGVhbiwgYXR0cmlidXRlOiBmYWxzZSB9LFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0eWxlcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgLy8gbGFuZ3VhZ2U9Q1NTXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvcG92ZXIge1xuICAgICAgICAgIC0tYmdjOiB2YXIoLS1ndi1wb3BvdmVyLS1iZ2MsIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItbGlnaHRlciwgI2ZhZmFmYSkpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi1wb3BvdmVyLS1jLCB2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWRhcmssICMyNjI2MjYpKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmdjKTtcbiAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1ndi1wb3BvdmVyLS1wLCAwLjVyZW0pO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0nYm90dG9tJ10pIC5wb3BvdmVyIHtcbiAgICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDAuNHJlbSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBib3gtc2hhZG93OiAxcHggMCAwIDAgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSksIDAgMnB4IDNweCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdib3R0b20nXVthcnJvd10pIC5wb3BvdmVyIHtcbiAgICAgICAgICB0b3A6IGNhbGMoMTAwJSArIDAuNHJlbSArIDEwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdib3R0b20nXVthcnJvd10pIC5hcnJvdyB7XG4gICAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSA4cHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3RvcCddKSAucG9wb3ZlciB7XG4gICAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyAwLjRyZW0pO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgYm94LXNoYWRvdzogMXB4IDAgMCAwIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3IsICNmNWY1ZjUpLCAwIC0ycHggM3B4IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3RvcCddW2Fycm93XSkgLnBvcG92ZXIge1xuICAgICAgICAgIGJvdHRvbTogY2FsYygxMDAlICsgMC40cmVtICsgMTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3RvcCddW2Fycm93XSkgLmFycm93IHtcbiAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSAtIDhweCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtwb3NpdGlvbj0nbGVmdCddKSAucG9wb3ZlciB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAwLjRyZW0pO1xuICAgICAgICAgIGJveC1zaGFkb3c6IC0xcHggMCAwIDAgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSksIC0xcHggMnB4IDNweCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdsZWZ0J11bYXJyb3ddKSAucG9wb3ZlciB7XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDAuNHJlbSArIDEwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdsZWZ0J11bYXJyb3ddKSAuYXJyb3cge1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSA4cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgOmhvc3QoW3Bvc2l0aW9uPSdyaWdodCddKSAucG9wb3ZlciB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDAuNHJlbSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMXB4IDAgMCAxcHggdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvciwgI2Y1ZjVmNSksIDFweCAxcHggMXB4IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3JpZ2h0J11bYXJyb3ddKSAucG9wb3ZlciB7XG4gICAgICAgICAgbGVmdDogY2FsYygxMDAlICsgMC40cmVtICsgMTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbcG9zaXRpb249J3JpZ2h0J11bYXJyb3ddKSAuYXJyb3cge1xuICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlubGluZSAucG9wb3ZlciB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtzbWFsbF0pIC5wb3BvdmVyIHtcbiAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA6aG9zdChbbWVkaXVtXSkgLnBvcG92ZXIge1xuICAgICAgICAgIHdpZHRoOiAzNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIDpob3N0KFtsYXJnZV0pIC5wb3BvdmVyIHtcbiAgICAgICAgICB3aWR0aDogNTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucG9wb3ZlcixcbiAgICAgICAgLmFycm93IHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAub3BlbiAucG9wb3ZlcixcbiAgICAgICAgLm9wZW4gLmFycm93IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvc2UgLnBvcG92ZXIsXG4gICAgICAgIC5jbG9zZSAuYXJyb3cge1xuICAgICAgICB9XG5cbiAgICAgICAgLmFycm93IHtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgei1pbmRleDogMTAxO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFycm93OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWd2LXBvcG92ZXItLWJnYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVyLCAjZmFmYWZhKSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRvcDogMTlweDtcbiAgICAgICAgICBsZWZ0OiA2cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3YtcG9wb3Zlci0tYmRjLCB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLCAjZjVmNWY1KSk7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5ldmVudCA9ICdtb3VzZW92ZXInO1xuICAgIHRoaXMuX2Nsb3NlSGFuZGxlciA9IHRoaXMuX2Nsb3NlLmJpbmQodGhpcyk7XG4gICAgdGhpcy5kZWxheSA9IDA7XG4gICAgdGhpcy5hcnJvdyA9IGZhbHNlO1xuICAgIHRoaXMucG9zaXRpb24gPSAnYm90dG9tJztcbiAgICB0aGlzLmF1dG8gPSBmYWxzZTtcbiAgfVxuXG4gIF9vcGVuKGUpIHtcbiAgICBpZiAodGhpcy5ldmVudCA9PT0gJ2NsaWNrJykge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIodGhpcy5ldmVudCwgdGhpcy5fY2xvc2VIYW5kbGVyKTtcbiAgICB9XG4gICAgdGhpcy5fb3BlbmVkID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5ldmVudCA9PT0gJ2NsaWNrJykge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcih0aGlzLmV2ZW50LCB0aGlzLl9jbG9zZUhhbmRsZXIpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kZWxheSA+IDApIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fY2xvc2Uoe30pLCB0aGlzLmRlbGF5KTtcbiAgICB9XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLl9jbG9zZSh7fSk7XG4gIH1cblxuICBfY2xvc2UoZSkge1xuICAgIGlmICh0aGlzLl9vcGVuZWQgJiYgKGUudGFyZ2V0ICE9PSB0aGlzLmZpcnN0RWxlbWVudENoaWxkIHx8IHRoaXMuZXZlbnQgIT09ICdjbGljaycpKSB7XG4gICAgICBjb25zdCBvcGVuRWxlbWVudCA9IHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCcub3BlbicpO1xuICAgICAgb3BlbkVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnY2xvc2UnKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBvcGVuRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdjbG9zZScpO1xuICAgICAgICB0aGlzLl9vcGVuZWQgPSBmYWxzZTtcbiAgICAgIH0sIDIwMCk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IGlubGluZSA9IHRoaXMud2lkdGggPT0gbnVsbCAmJiAhdGhpcy5zbWFsbCAmJiAhdGhpcy5tZWRpdW0gJiYgIXRoaXMubGFyZ2U7XG4gICAgY29uc3QgY2xhc3NlcyA9IHsgb3BlbjogdGhpcy5fb3BlbmVkLCBjb250ZW50OiB0cnVlLCBpbmxpbmUgfTtcbiAgICByZXR1cm4gaHRtbGAgPGRpdiBjbGFzcz1cIiR7Y2xhc3NNYXAoY2xhc3Nlcyl9XCI+XG4gICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAke3RoaXMuYXJyb3cgPyBodG1sYDxkaXYgY2xhc3M9XCJhcnJvd1wiPjwvZGl2PmAgOiAnJ31cbiAgICAgIDxkaXYgY2xhc3M9XCJwb3BvdmVyXCI+JHt0aGlzLnJlbmRlckNvbnRlbnQoKX08L2Rpdj5cbiAgICA8L2Rpdj5gO1xuICB9XG5cbiAgcmVuZGVyQ29udGVudCgpIHtcbiAgICByZXR1cm4gaHRtbGA8c2xvdCBuYW1lPVwicG9wb3ZlclwiPjwvc2xvdD5gO1xuICB9XG5cbiAgZmlyc3RVcGRhdGVkKF9jaGFuZ2VkUHJvcGVydGllcykge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKHRoaXMuZXZlbnQsIHRoaXMuX29wZW4uYmluZCh0aGlzKSk7XG4gICAgICBpZiAodGhpcy5ldmVudC5zdGFydHNXaXRoKCdtb3VzZScpICYmIHRoaXMuZGVsYXkgPT09IDApIHtcbiAgICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgdGhpcy5fY2xvc2UuYmluZCh0aGlzKSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBfZ2V0Q29udGVudFNpemUoKSB7XG4gICAgY29uc3QgcG9wb3ZlciA9IHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCcucG9wb3ZlcicpO1xuICAgIHJldHVybiB7XG4gICAgICB3aWR0aDogcG9wb3Zlci5vZmZzZXRXaWR0aCxcbiAgICAgIGhlaWdodDogcG9wb3Zlci5vZmZzZXRIZWlnaHQsXG4gICAgfTtcbiAgfVxuXG4gIF9nZXRQb3NpdGlvblBhZGRpbmcoKSB7XG4gICAgcmV0dXJuIDEwO1xuICB9XG5cbiAgX2dldENlbnRlclBvc2l0aW9uKCkge1xuICAgIHJldHVybiB7XG4gICAgICB4OiB0aGlzLnRhcmdldC54ICsgdGhpcy50YXJnZXQud2lkdGggLyAyICsgd2luZG93LnNjcm9sbFgsXG4gICAgICB5OiB0aGlzLnRhcmdldC55ICsgdGhpcy50YXJnZXQuaGVpZ2h0IC8gMiArIHdpbmRvdy5zY3JvbGxZLFxuICAgIH07XG4gIH1cblxuICBfdXBkYXRlUG9zaXRpb24oKSB7XG4gICAgaWYgKHRoaXMucG9zaXRpb24gIT0gbnVsbCAmJiB0aGlzLmF1dG8pIHtcbiAgICAgIGNvbnN0IHBvcG92ZXIgPSB0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignLnBvcG92ZXInKTtcbiAgICAgIGlmIChwb3BvdmVyKSB7XG4gICAgICAgIHRoaXMudGFyZ2V0ID0gdGhpcy5maXJzdEVsZW1lbnRDaGlsZC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICh0aGlzLnBvc2l0aW9uID09PSAndG9wJyAmJiAhdGhpcy5faGFzVG9wU3BhY2UoKSkgfHxcbiAgICAgICAgICAodGhpcy5wb3NpdGlvbiA9PT0gJ2JvdHRvbScgJiYgIXRoaXMuX2hhc0JvdHRvbVNwYWNlKCkpIHx8XG4gICAgICAgICAgKHRoaXMucG9zaXRpb24gPT09ICdsZWZ0JyAmJiAhdGhpcy5faGFzTGVmdFNwYWNlKCkpIHx8XG4gICAgICAgICAgKHRoaXMucG9zaXRpb24gPT09ICdyaWdodCcgJiYgIXRoaXMuX2hhc1JpZ2h0U3BhY2UoKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgaW5kZXggPSBbdGhpcy5faGFzVG9wU3BhY2UoKSwgdGhpcy5faGFzUmlnaHRTcGFjZSgpLCB0aGlzLl9oYXNCb3R0b21TcGFjZSgpLCB0aGlzLl9oYXNMZWZ0U3BhY2UoKV0uaW5kZXhPZih0cnVlKTtcbiAgICAgICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICAgICAgdGhpcy5wb3NpdGlvbiA9IFsndG9wJywgJ3JpZ2h0JywgJ2JvdHRvbScsICdsZWZ0J11baW5kZXhdO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIF9nZXRNYXhYKCkge1xuICAgIHJldHVybiB3aW5kb3cuaW5uZXJXaWR0aCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuICB9XG5cbiAgX2dldE1heFkoKSB7XG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lckhlaWdodCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuICB9XG5cbiAgX2hhc0JvdHRvbVNwYWNlKCkge1xuICAgIGNvbnN0IHkgPSB0aGlzLnRhcmdldC55ICsgdGhpcy50YXJnZXQuaGVpZ2h0ICsgdGhpcy5fZ2V0Q29udGVudFNpemUoKS5oZWlnaHQgKyB0aGlzLl9nZXRQb3NpdGlvblBhZGRpbmcoKTtcblxuICAgIHJldHVybiB5IDw9IHRoaXMuX2dldE1heFkoKTtcbiAgfVxuXG4gIF9oYXNSaWdodFNwYWNlKCkge1xuICAgIGNvbnN0IHkgPSB0aGlzLnRhcmdldC54ICsgdGhpcy50YXJnZXQud2lkdGggKyB0aGlzLl9nZXRDb250ZW50U2l6ZSgpLndpZHRoICsgdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG5cbiAgICByZXR1cm4geSA8PSB0aGlzLl9nZXRNYXhYKCk7XG4gIH1cblxuICBfaGFzVG9wU3BhY2UoKSB7XG4gICAgY29uc3QgeSA9IHRoaXMudGFyZ2V0LnkgLSB0aGlzLl9nZXRDb250ZW50U2l6ZSgpLmhlaWdodCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuXG4gICAgcmV0dXJuIHkgPj0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG4gIH1cblxuICBfaGFzTGVmdFNwYWNlKCkge1xuICAgIGNvbnN0IHkgPSB0aGlzLnRhcmdldC54IC0gdGhpcy5fZ2V0Q29udGVudFNpemUoKS53aWR0aCAtIHRoaXMuX2dldFBvc2l0aW9uUGFkZGluZygpO1xuXG4gICAgcmV0dXJuIHkgPj0gdGhpcy5fZ2V0UG9zaXRpb25QYWRkaW5nKCk7XG4gIH1cblxuICB1cGRhdGVkKHByb3BzKSB7XG4gICAgaWYgKHByb3BzLmhhcygnd2lkdGgnKSkge1xuICAgICAgdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJy5wb3BvdmVyJykuc3R5bGUuc2V0UHJvcGVydHkoJ3dpZHRoJywgdGhpcy53aWR0aCk7XG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZVBvc2l0aW9uKCk7XG4gIH1cbn1cblxud2luZG93LmN1c3RvbUVsZW1lbnRzLmRlZmluZSgnZ3YtcG9wb3ZlcicsIEd2UG9wb3Zlcik7XG4iXX0=
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { css, LitElement, html } from 'lit
|
|
17
|
-
import { classMap } from 'lit
|
|
16
|
+
import { css, LitElement, html } from 'lit';
|
|
17
|
+
import { classMap } from 'lit/directives/class-map';
|
|
18
18
|
import { dispatchCustomEvent } from '../lib/events';
|
|
19
19
|
import { i18n } from '../lib/i18n';
|
|
20
20
|
import { ItemResource } from '../mixins/item-resource';
|
|
@@ -88,4 +88,4 @@ export class GvPromote extends ItemResource(LitElement) {
|
|
|
88
88
|
|
|
89
89
|
}
|
|
90
90
|
window.customElements.define('gv-promote', GvPromote);
|
|
91
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wcm9tb3RlLmpzIl0sIm5hbWVzIjpbImNzcyIsIkxpdEVsZW1lbnQiLCJodG1sIiwiY2xhc3NNYXAiLCJkaXNwYXRjaEN1c3RvbUV2ZW50IiwiaTE4biIsIkl0ZW1SZXNvdXJjZSIsImdldFRpdGxlIiwiZ2V0RGVzY3JpcHRpb24iLCJnZXRWZXJzaW9uIiwiZ2V0T3duZXIiLCJ0cnVuY2F0ZSIsIkd2UHJvbW90ZSIsInByb3BlcnRpZXMiLCJsaW1pdCIsInR5cGUiLCJOdW1iZXIiLCJzdHlsZXMiLCJfb25DbGljayIsImRhdGEiLCJfaXRlbSIsImhyZWYiLCJyZW5kZXIiLCJfaW52aXNpYmxlIiwib3duZXIiLCJza2VsZXRvbiIsIl9za2VsZXRvbiIsImltYWdlIiwiX3JlbmRlckltYWdlIiwiX2Vycm9yIiwiX2VtcHR5IiwidGl0bGUiLCJ0cmltIiwibGVuZ3RoIiwiZGVzY3JpcHRpb24iLCJzcGxpdCIsImluZm9zIiwiX3JlbmRlck1ldHJpY3NXaXRoUmF0aW5nIiwiX3JlbmRlckxhYmVscyIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxHQUFULEVBQWNDLFVBQWQsRUFBMEJDLElBQTFCLFFBQXNDLGFBQXRDO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwrQkFBekI7QUFDQSxTQUFTQyxtQkFBVCxRQUFvQyxlQUFwQztBQUNBLFNBQVNDLElBQVQsUUFBcUIsYUFBckI7QUFDQSxTQUFTQyxZQUFULFFBQTZCLHlCQUE3QjtBQUNBLFNBQVNDLFFBQVQsRUFBbUJDLGNBQW5CLEVBQW1DQyxVQUFuQyxFQUErQ0MsUUFBL0MsUUFBK0QsYUFBL0Q7QUFDQSxTQUFTQyxRQUFULFFBQXlCLGNBQXpCO0FBRUEsT0FBTyxtQkFBUDtBQUNBLE9BQU8sb0JBQVA7QUFDQSxPQUFPLHdCQUFQO0FBQ0EsT0FBTyx5QkFBUDtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxPQUFPLE1BQU1DLFNBQU4sU0FBd0JOLFlBQVksQ0FBQ0wsVUFBRCxDQUFwQyxDQUFpRDtBQUNqQyxhQUFWWSxVQUFVLEdBQUc7QUFDdEIsV0FBTyxFQUNMLEdBQUcsTUFBTUEsVUFESjtBQUVMQyxNQUFBQSxLQUFLLEVBQUU7QUFBRUMsUUFBQUEsSUFBSSxFQUFFQztBQUFSO0FBRkYsS0FBUDtBQUlEOztBQUVnQixhQUFOQyxNQUFNLEdBQUc7QUFDbEIsV0FBTyxDQUNMLEdBQUcsTUFBTUEsTUFESixFQUVMO0FBQ0FqQixJQUFBQSxHQUFHLGdwREFIRSxDQUFQO0FBMkdEOztBQUVEa0IsRUFBQUEsUUFBUSxHQUFHO0FBQ1RkLElBQUFBLG1CQUFtQixDQUFDLElBQUQsRUFBTyxPQUFQLEVBQWdCO0FBQUVlLE1BQUFBLElBQUksRUFBRSxLQUFLQyxLQUFiO0FBQW9CQyxNQUFBQSxJQUFJLEVBQUUsS0FBS0E7QUFBL0IsS0FBaEIsQ0FBbkI7QUFDRDs7QUFFREMsRUFBQUEsTUFBTSxHQUFHO0FBQ1AsUUFBSSxLQUFLQyxVQUFULEVBQXFCO0FBQ25CLGFBQU8sRUFBUDtBQUNEOztBQUNELFVBQU1DLEtBQUssR0FBR2QsUUFBUSxDQUFDLEtBQUtVLEtBQU4sQ0FBdEI7QUFDQSxXQUFPbEIsSUFBSSx1Q0FDS0MsUUFBUSxDQUFDO0FBQUVzQixNQUFBQSxRQUFRLEVBQUUsS0FBS0MsU0FBakI7QUFBNEJDLE1BQUFBLEtBQUssRUFBRTtBQUFuQyxLQUFELENBRGIsS0FDNkQsS0FBS0MsWUFBTCxFQUQ3RCxnQ0FHTCxLQUFLQyxNQUFMLElBQWUsQ0FBQyxLQUFLSCxTQUFyQixHQUNFeEIsSUFBSSxnQ0FBZ0NHLElBQUksQ0FBQyxrQkFBRCxDQUFwQyxNQUROLEdBRUVILElBQUksSUFDQSxLQUFLNEIsTUFBTCxJQUFlLENBQUMsS0FBS0osU0FBckIsR0FDRXhCLElBQUksZ0NBQWdDRyxJQUFJLENBQUMsa0JBQUQsQ0FBcEMsTUFETixHQUVFSCxJQUFJLGdCQUFlQyxRQUFRLENBQUM7QUFBRXNCLE1BQUFBLFFBQVEsRUFBRSxLQUFLQyxTQUFqQjtBQUE0QkssTUFBQUEsS0FBSyxFQUFFO0FBQW5DLEtBQUQsQ0FBdkIsVUFDTXhCLFFBQVEsQ0FBQyxLQUFLYSxLQUFOLENBRGQsK0JBRXdCWCxVQUFVLENBQUMsS0FBS1csS0FBTixDQUZsQyxrQkFJQUksS0FBSyxJQUFJLElBQVQsSUFBaUJBLEtBQUssQ0FBQ1EsSUFBTixHQUFhQyxNQUFiLEdBQXNCLENBQXZDLEdBQ0UvQixJQUFJLHlFQUF5RXNCLEtBQXpFLFFBRE4sR0FFRSxFQU5GLGNBUVFyQixRQUFRLENBQUM7QUFDZnNCLE1BQUFBLFFBQVEsRUFBRSxLQUFLQyxTQURBO0FBRWZRLE1BQUFBLFdBQVcsRUFBRSxJQUZFO0FBR2YsMkJBQXFCMUIsY0FBYyxDQUFDLEtBQUtZLEtBQU4sQ0FBZCxDQUEyQmUsS0FBM0IsQ0FBaUMsR0FBakMsRUFBc0NGLE1BQXRDLEdBQStDO0FBSHJELEtBQUQsQ0FSaEIsTUFjRXRCLFFBQVEsQ0FBQ0gsY0FBYyxDQUFDLEtBQUtZLEtBQU4sQ0FBZixFQUE2QixLQUFLTixLQUFsQyxDQWRWLHFCQWdCV1gsUUFBUSxDQUFDO0FBQUVzQixNQUFBQSxRQUFRLEVBQUUsS0FBS0MsU0FBakI7QUFBNEJVLE1BQUFBLEtBQUssRUFBRTtBQUFuQyxLQUFELENBaEJuQixLQWdCa0UsS0FBS0Msd0JBQUwsRUFoQmxFLDhCQWlCb0IsS0FBS0MsYUFBTCxDQUFtQixJQUFuQixDQWpCcEIsZ0NBa0JxQixLQUFLWixTQWxCMUIsWUFrQjhDLEtBQUtMLElBbEJuRCxhQWtCb0UsS0FBS0gsUUFsQnpFLEtBbUJHYixJQUFJLENBQUMsaUJBQUQsQ0FuQlAsY0FITixHQUxELGdCQUFYO0FBZ0NEOztBQS9KcUQ7QUFrS3hEa0MsTUFBTSxDQUFDQyxjQUFQLENBQXNCQyxNQUF0QixDQUE2QixZQUE3QixFQUEyQzdCLFNBQTNDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNzcywgTGl0RWxlbWVudCwgaHRtbCB9IGZyb20gJ2xpdC1lbGVtZW50JztcbmltcG9ydCB7IGNsYXNzTWFwIH0gZnJvbSAnbGl0LWh0bWwvZGlyZWN0aXZlcy9jbGFzcy1tYXAnO1xuaW1wb3J0IHsgZGlzcGF0Y2hDdXN0b21FdmVudCB9IGZyb20gJy4uL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgaTE4biB9IGZyb20gJy4uL2xpYi9pMThuJztcbmltcG9ydCB7IEl0ZW1SZXNvdXJjZSB9IGZyb20gJy4uL21peGlucy9pdGVtLXJlc291cmNlJztcbmltcG9ydCB7IGdldFRpdGxlLCBnZXREZXNjcmlwdGlvbiwgZ2V0VmVyc2lvbiwgZ2V0T3duZXIgfSBmcm9tICcuLi9saWIvaXRlbSc7XG5pbXBvcnQgeyB0cnVuY2F0ZSB9IGZyb20gJy4uL2xpYi91dGlscyc7XG5cbmltcG9ydCAnLi4vYXRvbXMvZ3YtaW1hZ2UnO1xuaW1wb3J0ICcuLi9hdG9tcy9ndi1idXR0b24nO1xuaW1wb3J0ICcuLi9tb2xlY3VsZXMvZ3YtcmF0aW5nJztcbmltcG9ydCAnLi4vbW9sZWN1bGVzL2d2LW1ldHJpY3MnO1xuXG4vKipcbiAqIFByb21vdGUgY29tcG9uZW50XG4gKlxuICogIyMgRGV0YWlsc1xuICogKiBoYXMgQHRoZW1lIGZhY2V0XG4gKlxuICogQGZpcmVzIGd2LXByb21vdGU6Y2xpY2sgLSBXaGVuIGNsaWNrIG9uIGJ1dHRvbiBmb3IgdmlldyBpdGVtXG4gKiBAZmlyZXMgZ3YtdGFnOmNsaWNrIC0gV2hlbiBvbmUgb2YgdGhlIGxhYmVsIGlzIGNsaWNrZWRcbiAqXG4gKiBAYXR0ciB7UHJvbWlzZTxhbnk+fSBpdGVtIC0gYW4gaXRlbS5cbiAqXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXByb21vdGUtaW1hZ2UtLWJnYz12YXIoLS1ndi10aGVtZS1jb2xvci1saWdodCwgIzg2YzNkMCldIC0gSW1hZ2UgYmFja2dyb3VuZCBjb2xvclxuICogQGNzc3Byb3Age0NvbG9yfSBbLS1ndi1wcm9tb3RlLS1iZ2M9dmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVzdCwgI2ZmZmZmZildIC0gQmFja2dyb3VuZCBjb2xvclxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcHJvbW90ZS1pbWFnZS0taD0zMDBweF0gLSBJbWFnZSBoZWlnaHRcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LXByb21vdGUtaW1hZ2UtLXc9MzAwcHhdIC0gSW1hZ2Ugd2lkdGhcbiAqIEBjc3Nwcm9wIHtMZW5ndGh9IFstLWd2LXByb21vdGUtYnV0dG9uLS1wPTE5cHggODBweF0gLSBCdXR0b24gcGFkZGluZ1xuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcHJvbW90ZS1idXR0b24tLWZ6PXZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1sLCAxNnB4KV0gLSBCdXR0b24gZm9udCBzaXplXG4gKi9cbmV4cG9ydCBjbGFzcyBHdlByb21vdGUgZXh0ZW5kcyBJdGVtUmVzb3VyY2UoTGl0RWxlbWVudCkge1xuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN1cGVyLnByb3BlcnRpZXMsXG4gICAgICBsaW1pdDogeyB0eXBlOiBOdW1iZXIgfSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldCBzdHlsZXMoKSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLnN1cGVyLnN0eWxlcyxcbiAgICAgIC8vIGxhbmd1YWdlPUNTU1xuICAgICAgY3NzYFxuICAgICAgICA6aG9zdCB7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwLjJyZW07XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tcDogdmFyKC0tZ3YtcHJvbW90ZS1idXR0b24tLXAsIDE5cHggODBweCk7XG4gICAgICAgICAgLS1ndi1idXR0b24tLWZ6OiB2YXIoLS1ndi1wcm9tb3RlLWJ1dHRvbi0tZnosIHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1sLCAxNnB4KSk7XG4gICAgICAgICAgLS1ndi1wcmV2aWV3LWJ1dHRvbjogJ25vbmUnO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIC0tZ3YtaWNvbi0tczogMjBweDtcbiAgICAgICAgICAtLWd2LXJhdGluZy0tczogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LWlkZW50aXR5LXBpY3R1cmUge1xuICAgICAgICAgIGhlaWdodDogdmFyKC0tZ3YtcHJvbW90ZS1pbWFnZS0taCwgMzAwcHgpO1xuICAgICAgICAgIHdpZHRoOiB2YXIoLS1ndi1wcm9tb3RlLWltYWdlLS13LCAzMDBweCk7XG4gICAgICAgICAgLS1ndi1pbWFnZS0tb2Y6IGNvbnRhaW47XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDQyMHB4O1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDQyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ndi1wcm9tb3RlLWltYWdlLS1iZ2MsIHZhcigtLWd2LXRoZW1lLWNvbG9yLWxpZ2h0LCAjODZjM2QwKSk7XG4gICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgICAgd2lkdGg6IDQ4MHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLXhsLCAyNnB4KTtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIC52ZXJzaW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1zLCAxMnB4KTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1kYXJrLCAjZDlkOWQ5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vd25lciB7XG4gICAgICAgICAgLS1ndi1pY29uLS1jOiB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpO1xuICAgICAgICAgIC0tZ3YtaWNvbi0tczogMTZweDtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1kYXJrLCAjYmZiZmJmKTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAycHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ndi1wcm9tb3RlLS1iZ2MsIHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItbGlnaHRlc3QsICNmZmZmZmYpKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZ3YtdGhlbWUtZm9udC1jb2xvci1kYXJrLCAjMjYyNjI2KTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWd2LXRoZW1lLWZvbnQtc2l6ZS1sLCAxNnB4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgIG1hcmdpbjogMjRweCAwcHg7XG4gICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uLWxhcmdlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICB9XG5cbiAgICAgICAgLmluZm9zIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgbWFyZ2luOiAwLjVyZW0gMC4ycmVtO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBndi1tZXRyaWNzIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxhYmVscyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIGAsXG4gICAgXTtcbiAgfVxuXG4gIF9vbkNsaWNrKCkge1xuICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQodGhpcywgJ2NsaWNrJywgeyBkYXRhOiB0aGlzLl9pdGVtLCBocmVmOiB0aGlzLmhyZWYgfSk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgaWYgKHRoaXMuX2ludmlzaWJsZSkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICBjb25zdCBvd25lciA9IGdldE93bmVyKHRoaXMuX2l0ZW0pO1xuICAgIHJldHVybiBodG1sYDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCIke2NsYXNzTWFwKHsgc2tlbGV0b246IHRoaXMuX3NrZWxldG9uLCBpbWFnZTogdHJ1ZSB9KX1cIj4ke3RoaXMuX3JlbmRlckltYWdlKCl9PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICAgICAgICAke3RoaXMuX2Vycm9yICYmICF0aGlzLl9za2VsZXRvblxuICAgICAgICAgID8gaHRtbGA8cCBjbGFzcz1cImRlc2NyaXB0aW9uIGVycm9yXCI+JHtpMThuKCdndi1wcm9tb3RlLmVycm9yJyl9PC9wPmBcbiAgICAgICAgICA6IGh0bWxgXG4gICAgICAgICAgICAgICR7dGhpcy5fZW1wdHkgJiYgIXRoaXMuX3NrZWxldG9uXG4gICAgICAgICAgICAgICAgPyBodG1sYDxwIGNsYXNzPVwiZGVzY3JpcHRpb24gZW1wdHlcIj4ke2kxOG4oJ2d2LXByb21vdGUuZW1wdHknKX08L3A+YFxuICAgICAgICAgICAgICAgIDogaHRtbGAgPGRpdiBjbGFzcz0ke2NsYXNzTWFwKHsgc2tlbGV0b246IHRoaXMuX3NrZWxldG9uLCB0aXRsZTogdHJ1ZSB9KX0+XG4gICAgICAgICAgICAgICAgICAgICAgPGgyPiR7Z2V0VGl0bGUodGhpcy5faXRlbSl9PC9oMj5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZlcnNpb25cIj4ke2dldFZlcnNpb24odGhpcy5faXRlbSl9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgJHtvd25lciAhPSBudWxsICYmIG93bmVyLnRyaW0oKS5sZW5ndGggPiAwXG4gICAgICAgICAgICAgICAgICAgICAgPyBodG1sYDxkaXYgY2xhc3M9XCJvd25lclwiPjxndi1pY29uIHNoYXBlPVwiZ2VuZXJhbDp1c2VyXCIgc2l6ZT1cIjhweFwiPjwvZ3YtaWNvbj4ke293bmVyfTwvZGl2PmBcbiAgICAgICAgICAgICAgICAgICAgICA6ICcnfVxuICAgICAgICAgICAgICAgICAgICA8cFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSR7Y2xhc3NNYXAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgc2tlbGV0b246IHRoaXMuX3NrZWxldG9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24tbGFyZ2UnOiBnZXREZXNjcmlwdGlvbih0aGlzLl9pdGVtKS5zcGxpdCgnICcpLmxlbmd0aCA+IDEwLFxuICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgJHt0cnVuY2F0ZShnZXREZXNjcmlwdGlvbih0aGlzLl9pdGVtKSwgdGhpcy5saW1pdCl9XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ke2NsYXNzTWFwKHsgc2tlbGV0b246IHRoaXMuX3NrZWxldG9uLCBpbmZvczogdHJ1ZSB9KX0+JHt0aGlzLl9yZW5kZXJNZXRyaWNzV2l0aFJhdGluZygpfTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWxzXCI+JHt0aGlzLl9yZW5kZXJMYWJlbHModHJ1ZSl9PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxndi1idXR0b24gP3NrZWxldG9uPSR7dGhpcy5fc2tlbGV0b259IC5ocmVmPVwiJHt0aGlzLmhyZWZ9XCIgQGNsaWNrPVwiJHt0aGlzLl9vbkNsaWNrfVwiXG4gICAgICAgICAgICAgICAgICAgICAgPiR7aTE4bignZ3YtcHJvbW90ZS52aWV3Jyl9PC9ndi1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgPmB9XG4gICAgICAgICAgICBgfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+YDtcbiAgfVxufVxuXG53aW5kb3cuY3VzdG9tRWxlbWVudHMuZGVmaW5lKCdndi1wcm9tb3RlJywgR3ZQcm9tb3RlKTtcbiJdfQ==
|
|
91
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbm9kZV9tb2R1bGVzL0BncmF2aXRlZS91aS1jb21wb25lbnRzL21vbGVjdWxlcy9ndi1wcm9tb3RlLmpzIl0sIm5hbWVzIjpbImNzcyIsIkxpdEVsZW1lbnQiLCJodG1sIiwiY2xhc3NNYXAiLCJkaXNwYXRjaEN1c3RvbUV2ZW50IiwiaTE4biIsIkl0ZW1SZXNvdXJjZSIsImdldFRpdGxlIiwiZ2V0RGVzY3JpcHRpb24iLCJnZXRWZXJzaW9uIiwiZ2V0T3duZXIiLCJ0cnVuY2F0ZSIsIkd2UHJvbW90ZSIsInByb3BlcnRpZXMiLCJsaW1pdCIsInR5cGUiLCJOdW1iZXIiLCJzdHlsZXMiLCJfb25DbGljayIsImRhdGEiLCJfaXRlbSIsImhyZWYiLCJyZW5kZXIiLCJfaW52aXNpYmxlIiwib3duZXIiLCJza2VsZXRvbiIsIl9za2VsZXRvbiIsImltYWdlIiwiX3JlbmRlckltYWdlIiwiX2Vycm9yIiwiX2VtcHR5IiwidGl0bGUiLCJ0cmltIiwibGVuZ3RoIiwiZGVzY3JpcHRpb24iLCJzcGxpdCIsImluZm9zIiwiX3JlbmRlck1ldHJpY3NXaXRoUmF0aW5nIiwiX3JlbmRlckxhYmVscyIsIndpbmRvdyIsImN1c3RvbUVsZW1lbnRzIiwiZGVmaW5lIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTQSxHQUFULEVBQWNDLFVBQWQsRUFBMEJDLElBQTFCLFFBQXNDLEtBQXRDO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QiwwQkFBekI7QUFDQSxTQUFTQyxtQkFBVCxRQUFvQyxlQUFwQztBQUNBLFNBQVNDLElBQVQsUUFBcUIsYUFBckI7QUFDQSxTQUFTQyxZQUFULFFBQTZCLHlCQUE3QjtBQUNBLFNBQVNDLFFBQVQsRUFBbUJDLGNBQW5CLEVBQW1DQyxVQUFuQyxFQUErQ0MsUUFBL0MsUUFBK0QsYUFBL0Q7QUFDQSxTQUFTQyxRQUFULFFB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Y0FITixHQUxELGdCQUFYO0FBZ0NEOztBQS9KcUQ7QUFrS3hEa0MsTUFBTSxDQUFDQyxjQUFQLENBQXNCQyxNQUF0QixDQUE2QixZQUE3QixFQUEyQzdCLFNBQTNDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IGNzcywgTGl0RWxlbWVudCwgaHRtbCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjbGFzc01hcCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL2NsYXNzLW1hcCc7XG5pbXBvcnQgeyBkaXNwYXRjaEN1c3RvbUV2ZW50IH0gZnJvbSAnLi4vbGliL2V2ZW50cyc7XG5pbXBvcnQgeyBpMThuIH0gZnJvbSAnLi4vbGliL2kxOG4nO1xuaW1wb3J0IHsgSXRlbVJlc291cmNlIH0gZnJvbSAnLi4vbWl4aW5zL2l0ZW0tcmVzb3VyY2UnO1xuaW1wb3J0IHsgZ2V0VGl0bGUsIGdldERlc2NyaXB0aW9uLCBnZXRWZXJzaW9uLCBnZXRPd25lciB9IGZyb20gJy4uL2xpYi9pdGVtJztcbmltcG9ydCB7IHRydW5jYXRlIH0gZnJvbSAnLi4vbGliL3V0aWxzJztcblxuaW1wb3J0ICcuLi9hdG9tcy9ndi1pbWFnZSc7XG5pbXBvcnQgJy4uL2F0b21zL2d2LWJ1dHRvbic7XG5pbXBvcnQgJy4uL21vbGVjdWxlcy9ndi1yYXRpbmcnO1xuaW1wb3J0ICcuLi9tb2xlY3VsZXMvZ3YtbWV0cmljcyc7XG5cbi8qKlxuICogUHJvbW90ZSBjb21wb25lbnRcbiAqXG4gKiAjIyBEZXRhaWxzXG4gKiAqIGhhcyBAdGhlbWUgZmFjZXRcbiAqXG4gKiBAZmlyZXMgZ3YtcHJvbW90ZTpjbGljayAtIFdoZW4gY2xpY2sgb24gYnV0dG9uIGZvciB2aWV3IGl0ZW1cbiAqIEBmaXJlcyBndi10YWc6Y2xpY2sgLSBXaGVuIG9uZSBvZiB0aGUgbGFiZWwgaXMgY2xpY2tlZFxuICpcbiAqIEBhdHRyIHtQcm9taXNlPGFueT59IGl0ZW0gLSBhbiBpdGVtLlxuICpcbiAqIEBjc3Nwcm9wIHtDb2xvcn0gWy0tZ3YtcHJvbW90ZS1pbWFnZS0tYmdjPXZhcigtLWd2LXRoZW1lLWNvbG9yLWxpZ2h0LCAjODZjM2QwKV0gLSBJbWFnZSBiYWNrZ3JvdW5kIGNvbG9yXG4gKiBAY3NzcHJvcCB7Q29sb3J9IFstLWd2LXByb21vdGUtLWJnYz12YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWxpZ2h0ZXN0LCAjZmZmZmZmKV0gLSBCYWNrZ3JvdW5kIGNvbG9yXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1wcm9tb3RlLWltYWdlLS1oPTMwMHB4XSAtIEltYWdlIGhlaWdodFxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcHJvbW90ZS1pbWFnZS0tdz0zMDBweF0gLSBJbWFnZSB3aWR0aFxuICogQGNzc3Byb3Age0xlbmd0aH0gWy0tZ3YtcHJvbW90ZS1idXR0b24tLXA9MTlweCA4MHB4XSAtIEJ1dHRvbiBwYWRkaW5nXG4gKiBAY3NzcHJvcCB7TGVuZ3RofSBbLS1ndi1wcm9tb3RlLWJ1dHRvbi0tZno9dmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE2cHgpXSAtIEJ1dHRvbiBmb250IHNpemVcbiAqL1xuZXhwb3J0IGNsYXNzIEd2UHJvbW90ZSBleHRlbmRzIEl0ZW1SZXNvdXJjZShMaXRFbGVtZW50KSB7XG4gIHN0YXRpYyBnZXQgcHJvcGVydGllcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3VwZXIucHJvcGVydGllcyxcbiAgICAgIGxpbWl0OiB7IHR5cGU6IE51bWJlciB9LFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0IHN0eWxlcygpIHtcbiAgICByZXR1cm4gW1xuICAgICAgLi4uc3VwZXIuc3R5bGVzLFxuICAgICAgLy8gbGFuZ3VhZ2U9Q1NTXG4gICAgICBjc3NgXG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAuMnJlbTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIC0tZ3YtYnV0dG9uLS1wOiB2YXIoLS1ndi1wcm9tb3RlLWJ1dHRvbi0tcCwgMTlweCA4MHB4KTtcbiAgICAgICAgICAtLWd2LWJ1dHRvbi0tZno6IHZhcigtLWd2LXByb21vdGUtYnV0dG9uLS1meiwgdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE2cHgpKTtcbiAgICAgICAgICAtLWd2LXByZXZpZXctYnV0dG9uOiAnbm9uZSc7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgLS1ndi1pY29uLS1zOiAyMHB4O1xuICAgICAgICAgIC0tZ3YtcmF0aW5nLS1zOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgZ3YtaWRlbnRpdHktcGljdHVyZSB7XG4gICAgICAgICAgaGVpZ2h0OiB2YXIoLS1ndi1wcm9tb3RlLWltYWdlLS1oLCAzMDBweCk7XG4gICAgICAgICAgd2lkdGg6IHZhcigtLWd2LXByb21vdGUtaW1hZ2UtLXcsIDMwMHB4KTtcbiAgICAgICAgICAtLWd2LWltYWdlLS1vZjogY29udGFpbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgbWluLWhlaWdodDogNDIwcHg7XG4gICAgICAgICAgbWF4LWhlaWdodDogNDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWd2LXByb21vdGUtaW1hZ2UtLWJnYywgdmFyKC0tZ3YtdGhlbWUtY29sb3ItbGlnaHQsICM4NmMzZDApKTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICB3aWR0aDogNDgwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1ndi10aGVtZS1mb250LXNpemUteGwsIDI2cHgpO1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUgLnZlcnNpb24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLXMsIDEycHgpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNkOWQ5ZDkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLm93bmVyIHtcbiAgICAgICAgICAtLWd2LWljb24tLWM6IHZhcigtLWd2LXRoZW1lLW5ldXRyYWwtY29sb3ItZGFyaywgI2JmYmZiZik7XG4gICAgICAgICAgLS1ndi1pY29uLS1zOiAxNnB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1uZXV0cmFsLWNvbG9yLWRhcmssICNiZmJmYmYpO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWd2LXByb21vdGUtLWJnYywgdmFyKC0tZ3YtdGhlbWUtbmV1dHJhbC1jb2xvci1saWdodGVzdCwgI2ZmZmZmZikpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1ndi10aGVtZS1mb250LWNvbG9yLWRhcmssICMyNjI2MjYpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZ3YtdGhlbWUtZm9udC1zaXplLWwsIDE2cHgpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgbWFyZ2luOiAyNHB4IDBweDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVzY3JpcHRpb24tbGFyZ2Uge1xuICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mb3Mge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICBtYXJnaW46IDAuNXJlbSAwLjJyZW07XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGd2LW1ldHJpY3Mge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWxzIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgYCxcbiAgICBdO1xuICB9XG5cbiAgX29uQ2xpY2soKSB7XG4gICAgZGlzcGF0Y2hDdXN0b21FdmVudCh0aGlzLCAnY2xpY2snLCB7IGRhdGE6IHRoaXMuX2l0ZW0sIGhyZWY6IHRoaXMuaHJlZiB9KTtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBpZiAodGhpcy5faW52aXNpYmxlKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIGNvbnN0IG93bmVyID0gZ2V0T3duZXIodGhpcy5faXRlbSk7XG4gICAgcmV0dXJuIGh0bWxgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIiR7Y2xhc3NNYXAoeyBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sIGltYWdlOiB0cnVlIH0pfVwiPiR7dGhpcy5fcmVuZGVySW1hZ2UoKX08L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50XCI+XG4gICAgICAgICR7dGhpcy5fZXJyb3IgJiYgIXRoaXMuX3NrZWxldG9uXG4gICAgICAgICAgPyBodG1sYDxwIGNsYXNzPVwiZGVzY3JpcHRpb24gZXJyb3JcIj4ke2kxOG4oJ2d2LXByb21vdGUuZXJyb3InKX08L3A+YFxuICAgICAgICAgIDogaHRtbGBcbiAgICAgICAgICAgICAgJHt0aGlzLl9lbXB0eSAmJiAhdGhpcy5fc2tlbGV0b25cbiAgICAgICAgICAgICAgICA/IGh0bWxgPHAgY2xhc3M9XCJkZXNjcmlwdGlvbiBlbXB0eVwiPiR7aTE4bignZ3YtcHJvbW90ZS5lbXB0eScpfTwvcD5gXG4gICAgICAgICAgICAgICAgOiBodG1sYCA8ZGl2IGNsYXNzPSR7Y2xhc3NNYXAoeyBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sIHRpdGxlOiB0cnVlIH0pfT5cbiAgICAgICAgICAgICAgICAgICAgICA8aDI+JHtnZXRUaXRsZSh0aGlzLl9pdGVtKX08L2gyPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmVyc2lvblwiPiR7Z2V0VmVyc2lvbih0aGlzLl9pdGVtKX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAke293bmVyICE9IG51bGwgJiYgb3duZXIudHJpbSgpLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgICA/IGh0bWxgPGRpdiBjbGFzcz1cIm93bmVyXCI+PGd2LWljb24gc2hhcGU9XCJnZW5lcmFsOnVzZXJcIiBzaXplPVwiOHB4XCI+PC9ndi1pY29uPiR7b3duZXJ9PC9kaXY+YFxuICAgICAgICAgICAgICAgICAgICAgIDogJyd9XG4gICAgICAgICAgICAgICAgICAgIDxwXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9JHtjbGFzc01hcCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbi1sYXJnZSc6IGdldERlc2NyaXB0aW9uKHRoaXMuX2l0ZW0pLnNwbGl0KCcgJykubGVuZ3RoID4gMTAsXG4gICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAke3RydW5jYXRlKGdldERlc2NyaXB0aW9uKHRoaXMuX2l0ZW0pLCB0aGlzLmxpbWl0KX1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSR7Y2xhc3NNYXAoeyBza2VsZXRvbjogdGhpcy5fc2tlbGV0b24sIGluZm9zOiB0cnVlIH0pfT4ke3RoaXMuX3JlbmRlck1ldHJpY3NXaXRoUmF0aW5nKCl9PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbHNcIj4ke3RoaXMuX3JlbmRlckxhYmVscyh0cnVlKX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGd2LWJ1dHRvbiA/c2tlbGV0b249JHt0aGlzLl9za2VsZXRvbn0gLmhyZWY9XCIke3RoaXMuaHJlZn1cIiBAY2xpY2s9XCIke3RoaXMuX29uQ2xpY2t9XCJcbiAgICAgICAgICAgICAgICAgICAgICA+JHtpMThuKCdndi1wcm9tb3RlLnZpZXcnKX08L2d2LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICA+YH1cbiAgICAgICAgICAgIGB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5gO1xuICB9XG59XG5cbndpbmRvdy5jdXN0b21FbGVtZW50cy5kZWZpbmUoJ2d2LXByb21vdGUnLCBHdlByb21vdGUpO1xuIl19
|