@kepler.gl/components 3.1.0-alpha.4 → 3.1.0-alpha.6

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.
@@ -2,10 +2,12 @@ import React from 'react';
2
2
  import { IntlShape } from 'react-intl';
3
3
  import { addEffect, updateEffect, removeEffect, reorderEffect, ActionHandler } from '@kepler.gl/actions';
4
4
  import { Effect } from '@kepler.gl/types';
5
+ import { VisState } from '@kepler.gl/schemas';
5
6
  import SidePanelTitleFactory from './side-panel-title';
6
7
  import EffectListFactory from './effect-list';
7
8
  import EffectTypeSelectorFactory from './effect-type-selector';
8
9
  export declare type EffectManagerState = {
10
+ visState: VisState;
9
11
  visStateActions: {
10
12
  addEffect: ActionHandler<typeof addEffect>;
11
13
  updateEffect: ActionHandler<typeof updateEffect>;
@@ -14,6 +14,7 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
14
14
  var _reactIntl = require("react-intl");
15
15
  var _actions = require("@kepler.gl/actions");
16
16
  var _constants = require("@kepler.gl/constants");
17
+ var _reducers = require("@kepler.gl/reducers");
17
18
  var _injector = require("../injector");
18
19
  var _sidePanelTitle = _interopRequireDefault(require("./side-panel-title"));
19
20
  var _effectList = _interopRequireDefault(require("./effect-list"));
@@ -49,9 +50,10 @@ function EffectManagerFactory(EffectList, SidePanelTitle, EffectTypeSelector) {
49
50
  var EffectManager = function EffectManager(props) {
50
51
  var intl = props.intl,
51
52
  visStateActions = props.visStateActions,
52
- effects = props.effects,
53
- effectOrder = props.effectOrder,
53
+ visState = props.visState,
54
54
  children = props.children;
55
+ var effects = visState.effects,
56
+ effectOrder = visState.effectOrder;
55
57
  var visStateAddEffect = visStateActions.addEffect;
56
58
  var _useState = (0, _react.useState)(false),
57
59
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
@@ -103,12 +105,8 @@ function EffectManagerFactory(EffectList, SidePanelTitle, EffectTypeSelector) {
103
105
  isSortable: true
104
106
  }))), children);
105
107
  };
106
- return (0, _injector.withState)([], function (state) {
107
- var visState = state.demo.keplerGl.map.visState;
108
- return {
109
- effects: visState.effects,
110
- effectOrder: visState.effectOrder
111
- };
108
+ return (0, _injector.withState)([_reducers.visStateLens], function (state) {
109
+ return state;
112
110
  }, {
113
111
  visStateActions: {
114
112
  addEffect: _actions.addEffect,
@@ -119,4 +117,4 @@ function EffectManagerFactory(EffectList, SidePanelTitle, EffectTypeSelector) {
119
117
  })((0, _reactIntl.injectIntl)(EffectManager));
120
118
  }
121
119
  var _default = exports["default"] = EffectManagerFactory;
122
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3RJbnRsIiwiX2FjdGlvbnMiLCJfY29uc3RhbnRzIiwiX2luamVjdG9yIiwiX3NpZGVQYW5lbFRpdGxlIiwiX2VmZmVjdExpc3QiLCJfZWZmZWN0VHlwZVNlbGVjdG9yIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiU3R5bGVkRWZmZWN0UGFuZWxDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIlN0eWxlZEVmZmVjdFBhbmVsIiwicHJvcHMiLCJ0aGVtZSIsInNpZGVQYW5lbEJnIiwiU3R5bGVkRWZmZWN0UGFuZWxIZWFkZXIiLCJfcmVmIiwiY29uY2F0IiwiZWZmZWN0UGFuZWxQYWRkaW5nVG9wIiwiZWZmZWN0UGFuZWxQYWRkaW5nU2lkZSIsImJvcmRlckNvbG9yIiwiX3JlZjIiLCJlZmZlY3RQYW5lbFdpZHRoIiwiU3R5bGVkRWZmZWN0UGFuZWxDb250ZW50Iiwic2lkZVBhbmVsU2Nyb2xsQmFyIiwiZXh0ZW5kZWQiLCJFZmZlY3RNYW5hZ2VyRmFjdG9yeSIsImRlcHMiLCJFZmZlY3RMaXN0RmFjdG9yeSIsIlNpZGVQYW5lbFRpdGxlRmFjdG9yeSIsIkVmZmVjdFR5cGVTZWxlY3RvckZhY3RvcnkiLCJFZmZlY3RMaXN0IiwiU2lkZVBhbmVsVGl0bGUiLCJFZmZlY3RUeXBlU2VsZWN0b3IiLCJFZmZlY3RNYW5hZ2VyIiwiaW50bCIsInZpc1N0YXRlQWN0aW9ucyIsImVmZmVjdHMiLCJlZmZlY3RPcmRlciIsImNoaWxkcmVuIiwidmlzU3RhdGVBZGRFZmZlY3QiLCJhZGRFZmZlY3QiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJ0eXBlU2VsZWN0b3JPcGVuZWQiLCJzZXRUeXBlU2VsZWN0b3JPcGVuZWQiLCJlZmZlY3RPcHRpb25zIiwidXNlTWVtbyIsImhhc1NoYWRvdyIsInNvbWUiLCJlZmZlY3QiLCJ0eXBlIiwiTElHSFRfQU5EX1NIQURPV19FRkZFQ1QiLCJFRkZFQ1RfREVTQ1JJUFRJT05TIiwibWFwIiwiZGVzYyIsImRpc2FibGVkIiwiQm9vbGVhbiIsIm9uQWRkRWZmZWN0IiwidXNlQ2FsbGJhY2siLCJvblR5cGVTZWxlY3RPcGVuIiwib25UeXBlU2VsZWN0Q2xvc2UiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwidGl0bGUiLCJmb3JtYXRNZXNzYWdlIiwiaWQiLCJvcHRpb25zIiwib25TZWxlY3QiLCJvbk9wZW4iLCJvbkJsdXIiLCJpc1NvcnRhYmxlIiwid2l0aFN0YXRlIiwic3RhdGUiLCJ2aXNTdGF0ZSIsImRlbW8iLCJrZXBsZXJHbCIsInVwZGF0ZUVmZmVjdCIsInJlbW92ZUVmZmVjdCIsInJlb3JkZXJFZmZlY3QiLCJpbmplY3RJbnRsIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VmZmVjdHMvZWZmZWN0LW1hbmFnZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZU1lbW8sIHVzZVN0YXRlLCB1c2VDYWxsYmFja30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge2luamVjdEludGwsIEludGxTaGFwZX0gZnJvbSAncmVhY3QtaW50bCc7XG5cbmltcG9ydCB7XG4gIGFkZEVmZmVjdCxcbiAgdXBkYXRlRWZmZWN0LFxuICByZW1vdmVFZmZlY3QsXG4gIHJlb3JkZXJFZmZlY3QsXG4gIEFjdGlvbkhhbmRsZXJcbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcbmltcG9ydCB7TElHSFRfQU5EX1NIQURPV19FRkZFQ1QsIEVGRkVDVF9ERVNDUklQVElPTlN9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7RWZmZWN0fSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuaW1wb3J0IHt3aXRoU3RhdGV9IGZyb20gJy4uL2luamVjdG9yJztcbmltcG9ydCBTaWRlUGFuZWxUaXRsZUZhY3RvcnkgZnJvbSAnLi9zaWRlLXBhbmVsLXRpdGxlJztcbmltcG9ydCBFZmZlY3RMaXN0RmFjdG9yeSBmcm9tICcuL2VmZmVjdC1saXN0JztcbmltcG9ydCBFZmZlY3RUeXBlU2VsZWN0b3JGYWN0b3J5LCB7RWZmZWN0VHlwZVNlbGVjdG9yUHJvcHN9IGZyb20gJy4vZWZmZWN0LXR5cGUtc2VsZWN0b3InO1xuXG5leHBvcnQgdHlwZSBFZmZlY3RNYW5hZ2VyU3RhdGUgPSB7XG4gIHZpc1N0YXRlQWN0aW9uczoge1xuICAgIGFkZEVmZmVjdDogQWN0aW9uSGFuZGxlcjx0eXBlb2YgYWRkRWZmZWN0PjtcbiAgICB1cGRhdGVFZmZlY3Q6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHVwZGF0ZUVmZmVjdD47XG4gICAgcmVtb3ZlRWZmZWN0OiBBY3Rpb25IYW5kbGVyPHR5cGVvZiByZW1vdmVFZmZlY3Q+O1xuICAgIHJlb3JkZXJFZmZlY3Q6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHJlb3JkZXJFZmZlY3Q+O1xuICB9O1xuICBlZmZlY3RzOiBFZmZlY3RbXTtcbiAgZWZmZWN0T3JkZXI6IHN0cmluZ1tdO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufTtcbmV4cG9ydCB0eXBlIEVmZmVjdE1hbmFnZXJQcm9wcyA9IEVmZmVjdE1hbmFnZXJXaXRoSW50bFByb3AgJiBFZmZlY3RNYW5hZ2VyU3RhdGU7XG5cbmV4cG9ydCB0eXBlIEVmZmVjdE1hbmFnZXJXaXRoSW50bFByb3AgPSB7aW50bDogSW50bFNoYXBlfTtcblxuY29uc3QgU3R5bGVkRWZmZWN0UGFuZWxDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50OyAvKiBwcmV2ZW50IHBhZGRpbmcgZnJvbSBibG9ja2luZyBpbnB1dCAqL1xuICBmbGV4LWdyb3c6IDE7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmID4gKiB7XG4gICAgLyogYWxsIGNoaWxkcmVuIHNob3VsZCBhbGxvdyBpbnB1dCAqL1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbmA7XG5cbi8vIHRvcCByaWdodCBwb3NpdGlvbiBhYnNvbHV0ZVxuY29uc3QgU3R5bGVkRWZmZWN0UGFuZWwgPSBzdHlsZWQuZGl2YFxuICB0b3A6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsQmd9O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5gO1xuXG5jb25zdCBTdHlsZWRFZmZlY3RQYW5lbEhlYWRlciA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6ICR7KHt0aGVtZX0pID0+XG4gICAgYCR7dGhlbWUuZWZmZWN0UGFuZWxQYWRkaW5nVG9wfXB4ICR7dGhlbWUuZWZmZWN0UGFuZWxQYWRkaW5nU2lkZX1weCA0cHggJHt0aGVtZS5lZmZlY3RQYW5lbFBhZGRpbmdTaWRlfXB4YH07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmJvcmRlckNvbG9yfTtcbiAgbWluLXdpZHRoOiAkeyh7dGhlbWV9KSA9PiB0aGVtZS5lZmZlY3RQYW5lbFdpZHRofXB4O1xuYDtcblxudHlwZSBTdHlsZWRFZmZlY3RQYW5lbENvbnRlbnRQcm9wcyA9IHtcbiAgZXh0ZW5kZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEVmZmVjdFBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXY8U3R5bGVkRWZmZWN0UGFuZWxDb250ZW50UHJvcHM+YFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbFNjcm9sbEJhcn07XG4gIHBhZGRpbmc6ICR7cHJvcHMgPT4gKHByb3BzLmV4dGVuZGVkID8gJzMycHgnIDogJzEwcHggMHB4IDEwcHggMHB4Jyl9O1xuICBvdmVyZmxvdzogb3ZlcmxheTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbmA7XG5cbkVmZmVjdE1hbmFnZXJGYWN0b3J5LmRlcHMgPSBbRWZmZWN0TGlzdEZhY3RvcnksIFNpZGVQYW5lbFRpdGxlRmFjdG9yeSwgRWZmZWN0VHlwZVNlbGVjdG9yRmFjdG9yeV07XG5cbmZ1bmN0aW9uIEVmZmVjdE1hbmFnZXJGYWN0b3J5KFxuICBFZmZlY3RMaXN0OiBSZXR1cm5UeXBlPHR5cGVvZiBFZmZlY3RMaXN0RmFjdG9yeT4sXG4gIFNpZGVQYW5lbFRpdGxlOiBSZXR1cm5UeXBlPHR5cGVvZiBTaWRlUGFuZWxUaXRsZUZhY3Rvcnk+LFxuICBFZmZlY3RUeXBlU2VsZWN0b3I6IFJldHVyblR5cGU8dHlwZW9mIEVmZmVjdFR5cGVTZWxlY3RvckZhY3Rvcnk+XG4pOiBSZWFjdC5GQzxFZmZlY3RNYW5hZ2VyUHJvcHM+IHtcbiAgY29uc3QgRWZmZWN0TWFuYWdlciA9IChwcm9wczogRWZmZWN0TWFuYWdlcldpdGhJbnRsUHJvcCAmIEVmZmVjdE1hbmFnZXJTdGF0ZSkgPT4ge1xuICAgIGNvbnN0IHtpbnRsLCB2aXNTdGF0ZUFjdGlvbnMsIGVmZmVjdHMsIGVmZmVjdE9yZGVyLCBjaGlsZHJlbn0gPSBwcm9wcztcbiAgICBjb25zdCB7YWRkRWZmZWN0OiB2aXNTdGF0ZUFkZEVmZmVjdH0gPSB2aXNTdGF0ZUFjdGlvbnM7XG4gICAgY29uc3QgW3R5cGVTZWxlY3Rvck9wZW5lZCwgc2V0VHlwZVNlbGVjdG9yT3BlbmVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAgIC8vIFByZXZlbnQgc2hhZG93IGVmZmVjdCBmcm9tIGJlaW5nIGFkZGVkIG11bHRpcGxlIHRpbWVzXG4gICAgY29uc3QgZWZmZWN0T3B0aW9uczogRWZmZWN0VHlwZVNlbGVjdG9yUHJvcHNbJ29wdGlvbnMnXSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgY29uc3QgaGFzU2hhZG93ID0gZWZmZWN0cy5zb21lKGVmZmVjdCA9PiB7XG4gICAgICAgIHJldHVybiBlZmZlY3QudHlwZSA9PT0gTElHSFRfQU5EX1NIQURPV19FRkZFQ1QudHlwZTtcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gRUZGRUNUX0RFU0NSSVBUSU9OUy5tYXAoZGVzYyA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uZGVzYyxcbiAgICAgICAgICBkaXNhYmxlZDogQm9vbGVhbihoYXNTaGFkb3cgJiYgZGVzYy50eXBlID09PSBMSUdIVF9BTkRfU0hBRE9XX0VGRkVDVC50eXBlKVxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfSwgW2VmZmVjdHNdKTtcblxuICAgIGNvbnN0IG9uQWRkRWZmZWN0ID0gdXNlQ2FsbGJhY2soXG4gICAgICB0eXBlID0+IHtcbiAgICAgICAgdmlzU3RhdGVBZGRFZmZlY3Qoe3R5cGV9KTtcbiAgICAgIH0sXG4gICAgICBbdmlzU3RhdGVBZGRFZmZlY3RdXG4gICAgKTtcblxuICAgIGNvbnN0IG9uVHlwZVNlbGVjdE9wZW4gPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRUeXBlU2VsZWN0b3JPcGVuZWQodHJ1ZSk7XG4gICAgfSwgW10pO1xuXG4gICAgY29uc3Qgb25UeXBlU2VsZWN0Q2xvc2UgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBzZXRUeXBlU2VsZWN0b3JPcGVuZWQoZmFsc2UpO1xuICAgIH0sIFtdKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkRWZmZWN0UGFuZWxDb250YWluZXIgY2xhc3NOYW1lPVwiZWZmZWN0LW1hbmFnZXJcIj5cbiAgICAgICAgPFN0eWxlZEVmZmVjdFBhbmVsPlxuICAgICAgICAgIDxTdHlsZWRFZmZlY3RQYW5lbEhlYWRlciBjbGFzc05hbWU9XCJlZmZlY3QtcGFuZWwtaGVhZGVyXCI+XG4gICAgICAgICAgICA8U2lkZVBhbmVsVGl0bGVcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZWZmZWN0LW1hbmFnZXItdGl0bGVcIlxuICAgICAgICAgICAgICB0aXRsZT17aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ2VmZmVjdE1hbmFnZXIuZWZmZWN0cyd9KX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEVmZmVjdFR5cGVTZWxlY3RvclxuICAgICAgICAgICAgICAgIG9wdGlvbnM9e2VmZmVjdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgb25TZWxlY3Q9e29uQWRkRWZmZWN0fVxuICAgICAgICAgICAgICAgIG9uT3Blbj17b25UeXBlU2VsZWN0T3Blbn1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e29uVHlwZVNlbGVjdENsb3NlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9TaWRlUGFuZWxUaXRsZT5cbiAgICAgICAgICA8L1N0eWxlZEVmZmVjdFBhbmVsSGVhZGVyPlxuXG4gICAgICAgICAgPFN0eWxlZEVmZmVjdFBhbmVsQ29udGVudCBleHRlbmRlZD17dHlwZVNlbGVjdG9yT3BlbmVkICYmIGVmZmVjdHMubGVuZ3RoID09PSAwfT5cbiAgICAgICAgICAgIDxFZmZlY3RMaXN0XG4gICAgICAgICAgICAgIGVmZmVjdHM9e2VmZmVjdHN9XG4gICAgICAgICAgICAgIGVmZmVjdE9yZGVyPXtlZmZlY3RPcmRlcn1cbiAgICAgICAgICAgICAgdmlzU3RhdGVBY3Rpb25zPXt2aXNTdGF0ZUFjdGlvbnN9XG4gICAgICAgICAgICAgIGlzU29ydGFibGU9e3RydWV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvU3R5bGVkRWZmZWN0UGFuZWxDb250ZW50PlxuICAgICAgICA8L1N0eWxlZEVmZmVjdFBhbmVsPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L1N0eWxlZEVmZmVjdFBhbmVsQ29udGFpbmVyPlxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIHdpdGhTdGF0ZShcbiAgICBbXSxcbiAgICBzdGF0ZSA9PiB7XG4gICAgICBjb25zdCB2aXNTdGF0ZSA9IHN0YXRlLmRlbW8ua2VwbGVyR2wubWFwLnZpc1N0YXRlO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZWZmZWN0czogdmlzU3RhdGUuZWZmZWN0cyxcbiAgICAgICAgZWZmZWN0T3JkZXI6IHZpc1N0YXRlLmVmZmVjdE9yZGVyXG4gICAgICB9O1xuICAgIH0sXG4gICAge1xuICAgICAgdmlzU3RhdGVBY3Rpb25zOiB7YWRkRWZmZWN0LCB1cGRhdGVFZmZlY3QsIHJlbW92ZUVmZmVjdCwgcmVvcmRlckVmZmVjdH1cbiAgICB9XG4gICkoaW5qZWN0SW50bChFZmZlY3RNYW5hZ2VyKSkgYXMgUmVhY3QuRkM8RWZmZWN0TWFuYWdlclByb3BzPjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRWZmZWN0TWFuYWdlckZhY3Rvcnk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUVBLElBQUFJLFFBQUEsR0FBQUosT0FBQTtBQU9BLElBQUFLLFVBQUEsR0FBQUwsT0FBQTtBQUdBLElBQUFNLFNBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGVBQUEsR0FBQUwsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFRLFdBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFTLG1CQUFBLEdBQUFQLHNCQUFBLENBQUFGLE9BQUE7QUFBMEYsSUFBQVUsZUFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQXBCMUY7QUFDQTtBQUFBLFNBQUFDLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBaEIsd0JBQUFnQixDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsZ0JBQUFLLE9BQUEsQ0FBQUwsQ0FBQSwwQkFBQUEsQ0FBQSxzQkFBQUEsQ0FBQSxRQUFBRyxDQUFBLEdBQUFKLHdCQUFBLENBQUFHLENBQUEsT0FBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFHLEdBQUEsQ0FBQU4sQ0FBQSxVQUFBRyxDQUFBLENBQUFJLEdBQUEsQ0FBQVAsQ0FBQSxP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ckQsaUJBQWlCLHFCQUNoQnZELE1BQUEsWUFBQTRHLGFBQUEsQ0FBQ2pELHVCQUF1QjtNQUFDa0QsU0FBUyxFQUFDO0lBQXFCLGdCQUN0RDdHLE1BQUEsWUFBQTRHLGFBQUEsQ0FBQ2hDLGNBQWM7TUFDYmlDLFNBQVMsRUFBQyxzQkFBc0I7TUFDaENDLEtBQUssRUFBRS9CLElBQUksQ0FBQ2dDLGFBQWEsQ0FBQztRQUFDQyxFQUFFLEVBQUU7TUFBdUIsQ0FBQztJQUFFLGdCQUV6RGhILE1BQUEsWUFBQTRHLGFBQUEsQ0FBQy9CLGtCQUFrQjtNQUNqQm9DLE9BQU8sRUFBRXJCLGFBQWM7TUFDdkJzQixRQUFRLEVBQUVWLFdBQVk7TUFDdEJXLE1BQU0sRUFBRVQsZ0JBQWlCO01BQ3pCVSxNQUFNLEVBQUVUO0lBQWtCLENBQzNCLENBQ2EsQ0FDTyxDQUFDLGVBRTFCM0csTUFBQSxZQUFBNEcsYUFBQSxDQUFDekMsd0JBQXdCO01BQUNFLFFBQVEsRUFBRXFCLGtCQUFrQixJQUFJVCxPQUFPLENBQUNuQyxNQUFNLEtBQUs7SUFBRSxnQkFDN0U5QyxNQUFBLFlBQUE0RyxhQUFBLENBQUNqQyxVQUFVO01BQ1RNLE9BQU8sRUFBRUEsT0FBUTtNQUNqQkMsV0FBVyxFQUFFQSxXQUFZO01BQ3pCRixlQUFlLEVBQUVBLGVBQWdCO01BQ2pDcUMsVUFBVSxFQUFFO0lBQUssQ0FDbEIsQ0FDdUIsQ0FDVCxDQUFDLEVBQ25CbEMsUUFDeUIsQ0FBQztFQUVqQyxDQUFDO0VBRUQsT0FBTyxJQUFBbUMsbUJBQVMsRUFDZCxFQUFFLEVBQ0YsVUFBQUMsS0FBSyxFQUFJO0lBQ1AsSUFBTUMsUUFBUSxHQUFHRCxLQUFLLENBQUNFLElBQUksQ0FBQ0MsUUFBUSxDQUFDdEIsR0FBRyxDQUFDb0IsUUFBUTtJQUNqRCxPQUFPO01BQ0x2QyxPQUFPLEVBQUV1QyxRQUFRLENBQUN2QyxPQUFPO01BQ3pCQyxXQUFXLEVBQUVzQyxRQUFRLENBQUN0QztJQUN4QixDQUFDO0VBQ0gsQ0FBQyxFQUNEO0lBQ0VGLGVBQWUsRUFBRTtNQUFDSyxTQUFTLEVBQVRBLGtCQUFTO01BQUVzQyxZQUFZLEVBQVpBLHFCQUFZO01BQUVDLFlBQVksRUFBWkEscUJBQVk7TUFBRUMsYUFBYSxFQUFiQTtJQUFhO0VBQ3hFLENBQ0YsQ0FBQyxDQUFDLElBQUFDLHFCQUFVLEVBQUNoRCxhQUFhLENBQUMsQ0FBQztBQUM5QjtBQUFDLElBQUFpRCxRQUFBLEdBQUFDLE9BQUEsY0FFYzFELG9CQUFvQiIsImlnbm9yZUxpc3QiOltdfQ==
120
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3RJbnRsIiwiX2FjdGlvbnMiLCJfY29uc3RhbnRzIiwiX3JlZHVjZXJzIiwiX2luamVjdG9yIiwiX3NpZGVQYW5lbFRpdGxlIiwiX2VmZmVjdExpc3QiLCJfZWZmZWN0VHlwZVNlbGVjdG9yIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiU3R5bGVkRWZmZWN0UGFuZWxDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIlN0eWxlZEVmZmVjdFBhbmVsIiwicHJvcHMiLCJ0aGVtZSIsInNpZGVQYW5lbEJnIiwiU3R5bGVkRWZmZWN0UGFuZWxIZWFkZXIiLCJfcmVmIiwiY29uY2F0IiwiZWZmZWN0UGFuZWxQYWRkaW5nVG9wIiwiZWZmZWN0UGFuZWxQYWRkaW5nU2lkZSIsImJvcmRlckNvbG9yIiwiX3JlZjIiLCJlZmZlY3RQYW5lbFdpZHRoIiwiU3R5bGVkRWZmZWN0UGFuZWxDb250ZW50Iiwic2lkZVBhbmVsU2Nyb2xsQmFyIiwiZXh0ZW5kZWQiLCJFZmZlY3RNYW5hZ2VyRmFjdG9yeSIsImRlcHMiLCJFZmZlY3RMaXN0RmFjdG9yeSIsIlNpZGVQYW5lbFRpdGxlRmFjdG9yeSIsIkVmZmVjdFR5cGVTZWxlY3RvckZhY3RvcnkiLCJFZmZlY3RMaXN0IiwiU2lkZVBhbmVsVGl0bGUiLCJFZmZlY3RUeXBlU2VsZWN0b3IiLCJFZmZlY3RNYW5hZ2VyIiwiaW50bCIsInZpc1N0YXRlQWN0aW9ucyIsInZpc1N0YXRlIiwiY2hpbGRyZW4iLCJlZmZlY3RzIiwiZWZmZWN0T3JkZXIiLCJ2aXNTdGF0ZUFkZEVmZmVjdCIsImFkZEVmZmVjdCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInR5cGVTZWxlY3Rvck9wZW5lZCIsInNldFR5cGVTZWxlY3Rvck9wZW5lZCIsImVmZmVjdE9wdGlvbnMiLCJ1c2VNZW1vIiwiaGFzU2hhZG93Iiwic29tZSIsImVmZmVjdCIsInR5cGUiLCJMSUdIVF9BTkRfU0hBRE9XX0VGRkVDVCIsIkVGRkVDVF9ERVNDUklQVElPTlMiLCJtYXAiLCJkZXNjIiwiZGlzYWJsZWQiLCJCb29sZWFuIiwib25BZGRFZmZlY3QiLCJ1c2VDYWxsYmFjayIsIm9uVHlwZVNlbGVjdE9wZW4iLCJvblR5cGVTZWxlY3RDbG9zZSIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJ0aXRsZSIsImZvcm1hdE1lc3NhZ2UiLCJpZCIsIm9wdGlvbnMiLCJvblNlbGVjdCIsIm9uT3BlbiIsIm9uQmx1ciIsImlzU29ydGFibGUiLCJ3aXRoU3RhdGUiLCJ2aXNTdGF0ZUxlbnMiLCJzdGF0ZSIsInVwZGF0ZUVmZmVjdCIsInJlbW92ZUVmZmVjdCIsInJlb3JkZXJFZmZlY3QiLCJpbmplY3RJbnRsIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VmZmVjdHMvZWZmZWN0LW1hbmFnZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZU1lbW8sIHVzZVN0YXRlLCB1c2VDYWxsYmFja30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge2luamVjdEludGwsIEludGxTaGFwZX0gZnJvbSAncmVhY3QtaW50bCc7XG5cbmltcG9ydCB7XG4gIGFkZEVmZmVjdCxcbiAgdXBkYXRlRWZmZWN0LFxuICByZW1vdmVFZmZlY3QsXG4gIHJlb3JkZXJFZmZlY3QsXG4gIEFjdGlvbkhhbmRsZXJcbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcbmltcG9ydCB7TElHSFRfQU5EX1NIQURPV19FRkZFQ1QsIEVGRkVDVF9ERVNDUklQVElPTlN9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7dmlzU3RhdGVMZW5zfSBmcm9tICdAa2VwbGVyLmdsL3JlZHVjZXJzJztcbmltcG9ydCB7RWZmZWN0fSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7VmlzU3RhdGV9IGZyb20gJ0BrZXBsZXIuZ2wvc2NoZW1hcyc7XG5cbmltcG9ydCB7d2l0aFN0YXRlfSBmcm9tICcuLi9pbmplY3Rvcic7XG5pbXBvcnQgU2lkZVBhbmVsVGl0bGVGYWN0b3J5IGZyb20gJy4vc2lkZS1wYW5lbC10aXRsZSc7XG5pbXBvcnQgRWZmZWN0TGlzdEZhY3RvcnkgZnJvbSAnLi9lZmZlY3QtbGlzdCc7XG5pbXBvcnQgRWZmZWN0VHlwZVNlbGVjdG9yRmFjdG9yeSwge0VmZmVjdFR5cGVTZWxlY3RvclByb3BzfSBmcm9tICcuL2VmZmVjdC10eXBlLXNlbGVjdG9yJztcblxuZXhwb3J0IHR5cGUgRWZmZWN0TWFuYWdlclN0YXRlID0ge1xuICB2aXNTdGF0ZTogVmlzU3RhdGU7XG4gIHZpc1N0YXRlQWN0aW9uczoge1xuICAgIGFkZEVmZmVjdDogQWN0aW9uSGFuZGxlcjx0eXBlb2YgYWRkRWZmZWN0PjtcbiAgICB1cGRhdGVFZmZlY3Q6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHVwZGF0ZUVmZmVjdD47XG4gICAgcmVtb3ZlRWZmZWN0OiBBY3Rpb25IYW5kbGVyPHR5cGVvZiByZW1vdmVFZmZlY3Q+O1xuICAgIHJlb3JkZXJFZmZlY3Q6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHJlb3JkZXJFZmZlY3Q+O1xuICB9O1xuICBlZmZlY3RzOiBFZmZlY3RbXTtcbiAgZWZmZWN0T3JkZXI6IHN0cmluZ1tdO1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufTtcbmV4cG9ydCB0eXBlIEVmZmVjdE1hbmFnZXJQcm9wcyA9IEVmZmVjdE1hbmFnZXJXaXRoSW50bFByb3AgJiBFZmZlY3RNYW5hZ2VyU3RhdGU7XG5cbmV4cG9ydCB0eXBlIEVmZmVjdE1hbmFnZXJXaXRoSW50bFByb3AgPSB7aW50bDogSW50bFNoYXBlfTtcblxuY29uc3QgU3R5bGVkRWZmZWN0UGFuZWxDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50OyAvKiBwcmV2ZW50IHBhZGRpbmcgZnJvbSBibG9ja2luZyBpbnB1dCAqL1xuICBmbGV4LWdyb3c6IDE7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmID4gKiB7XG4gICAgLyogYWxsIGNoaWxkcmVuIHNob3VsZCBhbGxvdyBpbnB1dCAqL1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbmA7XG5cbi8vIHRvcCByaWdodCBwb3NpdGlvbiBhYnNvbHV0ZVxuY29uc3QgU3R5bGVkRWZmZWN0UGFuZWwgPSBzdHlsZWQuZGl2YFxuICB0b3A6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsQmd9O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5gO1xuXG5jb25zdCBTdHlsZWRFZmZlY3RQYW5lbEhlYWRlciA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6ICR7KHt0aGVtZX0pID0+XG4gICAgYCR7dGhlbWUuZWZmZWN0UGFuZWxQYWRkaW5nVG9wfXB4ICR7dGhlbWUuZWZmZWN0UGFuZWxQYWRkaW5nU2lkZX1weCA0cHggJHt0aGVtZS5lZmZlY3RQYW5lbFBhZGRpbmdTaWRlfXB4YH07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmJvcmRlckNvbG9yfTtcbiAgbWluLXdpZHRoOiAkeyh7dGhlbWV9KSA9PiB0aGVtZS5lZmZlY3RQYW5lbFdpZHRofXB4O1xuYDtcblxudHlwZSBTdHlsZWRFZmZlY3RQYW5lbENvbnRlbnRQcm9wcyA9IHtcbiAgZXh0ZW5kZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEVmZmVjdFBhbmVsQ29udGVudCA9IHN0eWxlZC5kaXY8U3R5bGVkRWZmZWN0UGFuZWxDb250ZW50UHJvcHM+YFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbFNjcm9sbEJhcn07XG4gIHBhZGRpbmc6ICR7cHJvcHMgPT4gKHByb3BzLmV4dGVuZGVkID8gJzMycHgnIDogJzEwcHggMHB4IDEwcHggMHB4Jyl9O1xuICBvdmVyZmxvdzogb3ZlcmxheTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbmA7XG5cbkVmZmVjdE1hbmFnZXJGYWN0b3J5LmRlcHMgPSBbRWZmZWN0TGlzdEZhY3RvcnksIFNpZGVQYW5lbFRpdGxlRmFjdG9yeSwgRWZmZWN0VHlwZVNlbGVjdG9yRmFjdG9yeV07XG5cbmZ1bmN0aW9uIEVmZmVjdE1hbmFnZXJGYWN0b3J5KFxuICBFZmZlY3RMaXN0OiBSZXR1cm5UeXBlPHR5cGVvZiBFZmZlY3RMaXN0RmFjdG9yeT4sXG4gIFNpZGVQYW5lbFRpdGxlOiBSZXR1cm5UeXBlPHR5cGVvZiBTaWRlUGFuZWxUaXRsZUZhY3Rvcnk+LFxuICBFZmZlY3RUeXBlU2VsZWN0b3I6IFJldHVyblR5cGU8dHlwZW9mIEVmZmVjdFR5cGVTZWxlY3RvckZhY3Rvcnk+XG4pOiBSZWFjdC5GQzxFZmZlY3RNYW5hZ2VyUHJvcHM+IHtcbiAgY29uc3QgRWZmZWN0TWFuYWdlciA9IChwcm9wczogRWZmZWN0TWFuYWdlcldpdGhJbnRsUHJvcCAmIEVmZmVjdE1hbmFnZXJTdGF0ZSkgPT4ge1xuICAgIGNvbnN0IHtpbnRsLCB2aXNTdGF0ZUFjdGlvbnMsIHZpc1N0YXRlLCBjaGlsZHJlbn0gPSBwcm9wcztcbiAgICBjb25zdCB7ZWZmZWN0cywgZWZmZWN0T3JkZXJ9ID0gdmlzU3RhdGU7XG4gICAgY29uc3Qge2FkZEVmZmVjdDogdmlzU3RhdGVBZGRFZmZlY3R9ID0gdmlzU3RhdGVBY3Rpb25zO1xuICAgIGNvbnN0IFt0eXBlU2VsZWN0b3JPcGVuZWQsIHNldFR5cGVTZWxlY3Rvck9wZW5lZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgICAvLyBQcmV2ZW50IHNoYWRvdyBlZmZlY3QgZnJvbSBiZWluZyBhZGRlZCBtdWx0aXBsZSB0aW1lc1xuICAgIGNvbnN0IGVmZmVjdE9wdGlvbnM6IEVmZmVjdFR5cGVTZWxlY3RvclByb3BzWydvcHRpb25zJ10gPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIGNvbnN0IGhhc1NoYWRvdyA9IGVmZmVjdHMuc29tZShlZmZlY3QgPT4ge1xuICAgICAgICByZXR1cm4gZWZmZWN0LnR5cGUgPT09IExJR0hUX0FORF9TSEFET1dfRUZGRUNULnR5cGU7XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIEVGRkVDVF9ERVNDUklQVElPTlMubWFwKGRlc2MgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmRlc2MsXG4gICAgICAgICAgZGlzYWJsZWQ6IEJvb2xlYW4oaGFzU2hhZG93ICYmIGRlc2MudHlwZSA9PT0gTElHSFRfQU5EX1NIQURPV19FRkZFQ1QudHlwZSlcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH0sIFtlZmZlY3RzXSk7XG5cbiAgICBjb25zdCBvbkFkZEVmZmVjdCA9IHVzZUNhbGxiYWNrKFxuICAgICAgdHlwZSA9PiB7XG4gICAgICAgIHZpc1N0YXRlQWRkRWZmZWN0KHt0eXBlfSk7XG4gICAgICB9LFxuICAgICAgW3Zpc1N0YXRlQWRkRWZmZWN0XVxuICAgICk7XG5cbiAgICBjb25zdCBvblR5cGVTZWxlY3RPcGVuID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgc2V0VHlwZVNlbGVjdG9yT3BlbmVkKHRydWUpO1xuICAgIH0sIFtdKTtcblxuICAgIGNvbnN0IG9uVHlwZVNlbGVjdENsb3NlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgc2V0VHlwZVNlbGVjdG9yT3BlbmVkKGZhbHNlKTtcbiAgICB9LCBbXSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFN0eWxlZEVmZmVjdFBhbmVsQ29udGFpbmVyIGNsYXNzTmFtZT1cImVmZmVjdC1tYW5hZ2VyXCI+XG4gICAgICAgIDxTdHlsZWRFZmZlY3RQYW5lbD5cbiAgICAgICAgICA8U3R5bGVkRWZmZWN0UGFuZWxIZWFkZXIgY2xhc3NOYW1lPVwiZWZmZWN0LXBhbmVsLWhlYWRlclwiPlxuICAgICAgICAgICAgPFNpZGVQYW5lbFRpdGxlXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImVmZmVjdC1tYW5hZ2VyLXRpdGxlXCJcbiAgICAgICAgICAgICAgdGl0bGU9e2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdlZmZlY3RNYW5hZ2VyLmVmZmVjdHMnfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxFZmZlY3RUeXBlU2VsZWN0b3JcbiAgICAgICAgICAgICAgICBvcHRpb25zPXtlZmZlY3RPcHRpb25zfVxuICAgICAgICAgICAgICAgIG9uU2VsZWN0PXtvbkFkZEVmZmVjdH1cbiAgICAgICAgICAgICAgICBvbk9wZW49e29uVHlwZVNlbGVjdE9wZW59XG4gICAgICAgICAgICAgICAgb25CbHVyPXtvblR5cGVTZWxlY3RDbG9zZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvU2lkZVBhbmVsVGl0bGU+XG4gICAgICAgICAgPC9TdHlsZWRFZmZlY3RQYW5lbEhlYWRlcj5cblxuICAgICAgICAgIDxTdHlsZWRFZmZlY3RQYW5lbENvbnRlbnQgZXh0ZW5kZWQ9e3R5cGVTZWxlY3Rvck9wZW5lZCAmJiBlZmZlY3RzLmxlbmd0aCA9PT0gMH0+XG4gICAgICAgICAgICA8RWZmZWN0TGlzdFxuICAgICAgICAgICAgICBlZmZlY3RzPXtlZmZlY3RzfVxuICAgICAgICAgICAgICBlZmZlY3RPcmRlcj17ZWZmZWN0T3JkZXJ9XG4gICAgICAgICAgICAgIHZpc1N0YXRlQWN0aW9ucz17dmlzU3RhdGVBY3Rpb25zfVxuICAgICAgICAgICAgICBpc1NvcnRhYmxlPXt0cnVlfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L1N0eWxlZEVmZmVjdFBhbmVsQ29udGVudD5cbiAgICAgICAgPC9TdHlsZWRFZmZlY3RQYW5lbD5cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgPC9TdHlsZWRFZmZlY3RQYW5lbENvbnRhaW5lcj5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiB3aXRoU3RhdGUoW3Zpc1N0YXRlTGVuc10sIHN0YXRlID0+IHN0YXRlLCB7XG4gICAgdmlzU3RhdGVBY3Rpb25zOiB7YWRkRWZmZWN0LCB1cGRhdGVFZmZlY3QsIHJlbW92ZUVmZmVjdCwgcmVvcmRlckVmZmVjdH1cbiAgfSkoaW5qZWN0SW50bChFZmZlY3RNYW5hZ2VyKSkgYXMgUmVhY3QuRkM8RWZmZWN0TWFuYWdlclByb3BzPjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRWZmZWN0TWFuYWdlckZhY3Rvcnk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFVBQUEsR0FBQUgsT0FBQTtBQUVBLElBQUFJLFFBQUEsR0FBQUosT0FBQTtBQU9BLElBQUFLLFVBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFNBQUEsR0FBQU4sT0FBQTtBQUlBLElBQUFPLFNBQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLGVBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFTLFdBQUEsR0FBQVAsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFVLG1CQUFBLEdBQUFSLHNCQUFBLENBQUFGLE9BQUE7QUFBMEYsSUFBQVcsZUFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQXRCMUY7QUFDQTtBQUFBLFNBQUFDLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBakIsd0JBQUFpQixDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsZ0JBQUFLLE9BQUEsQ0FBQUwsQ0FBQSwwQkFBQUEsQ0FBQSxzQkFBQUEsQ0FBQSxRQUFBRyxDQUFBLEdBQUFKLHdCQUFBLENBQUFHLENBQUEsT0FBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFHLEdBQUEsQ0FBQU4sQ0FBQSxVQUFBRyxDQUFBLENBQUFJLEdBQUEsQ0FBQVAsQ0FBQSxPQUFBUSxDQUFBLEtBQUFDLFNBQUEsVUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxDQUFBLElBQUFkLENBQUEsb0JBQUFjLENBQUEsT0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFoQixDQUFBLEVBQUFjLENBQUEsU0FBQUcsQ0FBQSxHQUFBUCxDQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWIsQ0FBQSxFQUFBYyxDQUFBLFVBQUFHLENBQUEsS0FBQUEsQ0FBQSxDQUFBVixHQUFBLElBQUFVLENBQUEsQ0FBQUMsR0FBQSxJQUFBUCxNQUFBLENBQUFDLGNBQUEsQ0FBQUosQ0FBQSxFQUFBTSxDQUFBLEVBQUFHLENBQUEsSUFBQVQsQ0FBQSxDQUFBTSxDQUFBLElBQUFkLENBQUEsQ0FBQWMsQ0FBQSxZQUFBTixDQUFBLGNBQUFSLENBQUEsRUFBQUcsQ0FBQSxJQUFBQSxDQUFBLENBQUFlLEdBQUEsQ0FBQWxCLENBQUEsRUFBQVEsQ0FBQSxHQUFBQSxDQUFBO0FBQUEsU0FBQVcsUUFBQW5CLENBQUEsRUFBQUUsQ0FBQSxRQUFBQyxDQUFBLEdBQUFRLE1BQUEsQ0FBQVMsSUFBQSxDQUFBcEIsQ0FBQSxPQUFBVyxNQUFBLENBQUFVLHFCQUFBLFFBQUFDLENBQUEsR0FBQVgsTUFBQSxDQUFBVSxxQkFBQSxDQUFBckIsQ0FBQSxHQUFBRSxDQUFBLEtBQUFvQixDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBckIsQ0FBQSxXQUFBUyxNQUFBLENBQUFFLHdCQUFBLENBQUFiLENBQUEsRUFBQUUsQ0FBQSxFQUFBc0IsVUFBQSxPQUFBckIsQ0FBQSxDQUFBc0IsSUFBQSxDQUFBQyxLQUFBLENBQUF2QixDQUFBLEVBQUFtQixDQUFBLFlBQUFuQixDQUFBO0FBQUEsU0FBQXdCLGNBQUEzQixDQUFBLGFBQUFFLENBQUEsTUFBQUEsQ0FBQSxHQUFBMEIsU0FBQSxDQUFBQyxNQUFBLEVBQUEzQixDQUFBLFVBQUFDLENBQUEsV0FBQXlCLFNBQUEsQ0FBQTFCLENBQUEsSUFBQTBCLFNBQUEsQ0FBQTFCLENBQUEsUUFBQUEsQ0FBQSxPQUFBaUIsT0FBQSxDQUFBUixNQUFBLENBQUFSLENBQUEsT0FBQTJCLE9BQUEsV0FBQTVCLENBQUEsUUFBQTZCLGdCQUFBLGFBQUEvQixDQUFBLEVBQUFFLENBQUEsRUFBQUMsQ0FBQSxDQUFBRCxDQUFBLFNBQUFTLE1BQUEsQ0FBQXFCLHlCQUFBLEdBQUFyQixNQUFBLENBQUFzQixnQkFBQSxDQUFBakMsQ0FBQSxFQUFBVyxNQUFBLENBQUFxQix5QkFBQSxDQUFBN0IsQ0FBQSxLQUFBZ0IsT0FBQSxDQUFBUixNQUFBLENBQUFSLENBQUEsR0FBQTJCLE9BQUEsV0FBQTVCLENBQUEsSUFBQVMsTUFBQSxDQUFBQyxjQUFBLENBQUFaLENBQUEsRUFBQUUsQ0FBQSxFQUFBUyxNQUFBLENBQUFFLHdCQUFBLENBQUFWLENBQUEsRUFBQUQsQ0FBQSxpQkFBQUYsQ0FBQTtBQXVDQSxJQUFNa0MsMEJBQTBCLEdBQUdDLDRCQUFNLENBQUNDLEdBQUcsQ0FBQXpDLGVBQUEsS0FBQUEsZUFBQSxPQUFBMEMsdUJBQUEsaVRBWTVDOztBQUVEO0FBQ0EsSUFBTUMsaUJBQWlCLEdBQUdILDRCQUFNLENBQUNDLEdBQUcsQ0FBQXhDLGdCQUFBLEtBQUFBLGdCQUFBLE9BQUF5Qyx1QkFBQSxnSkFFZCxVQUFBRSxLQUFLO0VBQUEsT0FBSUEsS0FBSyxDQUFDQyxLQUFLLENBQUNDLFdBQVc7QUFBQSxFQUtyRDtBQUVELElBQU1DLHVCQUF1QixHQUFHUCw0QkFBTSxDQUFDQyxHQUFHLENBQUF2QyxnQkFBQSxLQUFBQSxnQkFBQSxPQUFBd0MsdUJBQUEsaUdBQzdCLFVBQUFNLElBQUE7RUFBQSxJQUFFSCxLQUFLLEdBQUFHLElBQUEsQ0FBTEgsS0FBSztFQUFBLFVBQUFJLE1BQUEsQ0FDYkosS0FBSyxDQUFDSyxxQkFBcUIsU0FBQUQsTUFBQSxDQUFNSixLQUFLLENBQUNNLHNCQUFzQixhQUFBRixNQUFBLENBQVVKLEtBQUssQ0FBQ00sc0JBQXNCO0FBQUEsQ0FBSSxFQUNqRixVQUFBUCxLQUFLO0VBQUEsT0FBSUEsS0FBSyxDQUFDQyxLQUFLLENBQUNPLFdBQVc7QUFBQSxHQUM5QyxVQUFBQyxLQUFBO0VBQUEsSUFBRVIsS0FBSyxHQUFBUSxLQUFBLENBQUxSLEtBQUs7RUFBQSxPQUFNQSxLQUFLLENBQUNTLGdCQUFnQjtBQUFBLEVBQ2pEO0FBS0QsSUFBTUMsd0JBQXdCLEdBQUdmLDRCQUFNLENBQUNDLEdBQUcsQ0FBQXRDLGdCQUFBLEtBQUFBLGdCQUFBLE9BQUF1Qyx1QkFBQSxxSEFDdkMsVUFBQUUsS0FBSztFQUFBLE9BQUlBLEtBQUssQ0FBQ0MsS0FBSyxDQUFDVyxrQkFBa0I7QUFBQSxHQUM5QixVQUFBWixLQUFLO0VBQUEsT0FBS0EsS0FBSyxDQUFDYSxRQUFRLEdBQUcsTUFBTSxHQUFHLG1CQUFtQjtBQUFBLENBQUMsQ0FJcEU7QUFFREMsb0JBQW9CLENBQUNDLElBQUksR0FBRyxDQUFDQyxzQkFBaUIsRUFBRUMsMEJBQXFCLEVBQUVDLDhCQUF5QixDQUFDO0FBRWpHLFNBQVNKLG9CQUFvQkEsQ0FDM0JLLFVBQWdELEVBQ2hEQyxjQUF3RCxFQUN4REMsa0JBQWdFLEVBQ2xDO0VBQzlCLElBQU1DLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBSXRCLEtBQXFELEVBQUs7SUFDL0UsSUFBT3VCLElBQUksR0FBeUN2QixLQUFLLENBQWxEdUIsSUFBSTtNQUFFQyxlQUFlLEdBQXdCeEIsS0FBSyxDQUE1Q3dCLGVBQWU7TUFBRUMsUUFBUSxHQUFjekIsS0FBSyxDQUEzQnlCLFFBQVE7TUFBRUMsUUFBUSxHQUFJMUIsS0FBSyxDQUFqQjBCLFFBQVE7SUFDaEQsSUFBT0MsT0FBTyxHQUFpQkYsUUFBUSxDQUFoQ0UsT0FBTztNQUFFQyxXQUFXLEdBQUlILFFBQVEsQ0FBdkJHLFdBQVc7SUFDM0IsSUFBa0JDLGlCQUFpQixHQUFJTCxlQUFlLENBQS9DTSxTQUFTO0lBQ2hCLElBQUFDLFNBQUEsR0FBb0QsSUFBQUMsZUFBUSxFQUFDLEtBQUssQ0FBQztNQUFBQyxVQUFBLE9BQUFDLGVBQUEsYUFBQUgsU0FBQTtNQUE1REksa0JBQWtCLEdBQUFGLFVBQUE7TUFBRUcscUJBQXFCLEdBQUFILFVBQUE7O0lBRWhEO0lBQ0EsSUFBTUksYUFBaUQsR0FBRyxJQUFBQyxjQUFPLEVBQUMsWUFBTTtNQUN0RSxJQUFNQyxTQUFTLEdBQUdaLE9BQU8sQ0FBQ2EsSUFBSSxDQUFDLFVBQUFDLE1BQU0sRUFBSTtRQUN2QyxPQUFPQSxNQUFNLENBQUNDLElBQUksS0FBS0Msa0NBQXVCLENBQUNELElBQUk7TUFDckQsQ0FBQyxDQUFDO01BRUYsT0FBT0UsOEJBQW1CLENBQUNDLEdBQUcsQ0FBQyxVQUFBQyxJQUFJLEVBQUk7UUFDckMsT0FBQTFELGFBQUEsQ0FBQUEsYUFBQSxLQUNLMEQsSUFBSTtVQUNQQyxRQUFRLEVBQUVDLE9BQU8sQ0FBQ1QsU0FBUyxJQUFJTyxJQUFJLENBQUNKLElBQUksS0FBS0Msa0NBQXVCLENBQUNELElBQUk7UUFBQztNQUU5RSxDQUFDLENBQUM7SUFDSixDQUFDLEVBQUUsQ0FBQ2YsT0FBTyxDQUFDLENBQUM7SUFFYixJQUFNc0IsV0FBVyxHQUFHLElBQUFDLGtCQUFXLEVBQzdCLFVBQUFSLElBQUksRUFBSTtNQUNOYixpQkFBaUIsQ0FBQztRQUFDYSxJQUFJLEVBQUpBO01BQUksQ0FBQyxDQUFDO0lBQzNCLENBQUMsRUFDRCxDQUFDYixpQkFBaUIsQ0FDcEIsQ0FBQztJQUVELElBQU1zQixnQkFBZ0IsR0FBRyxJQUFBRCxrQkFBVyxFQUFDLFlBQU07TUFDekNkLHFCQUFxQixDQUFDLElBQUksQ0FBQztJQUM3QixDQUFDLEVBQUUsRUFBRSxDQUFDO0lBRU4sSUFBTWdCLGlCQUFpQixHQUFHLElBQUFGLGtCQUFXLEVBQUMsWUFBTTtNQUMxQ2QscUJBQXFCLENBQUMsS0FBSyxDQUFDO0lBQzlCLENBQUMsRUFBRSxFQUFFLENBQUM7SUFFTixvQkFDRTdGLE1BQUEsWUFBQThHLGFBQUEsQ0FBQzFELDBCQUEwQjtNQUFDMkQsU0FBUyxFQUFDO0lBQWdCLGdCQUNwRC9HLE1BQUEsWUFBQThHLGFBQUEsQ0FBQ3RELGlCQUFpQixxQkFDaEJ4RCxNQUFBLFlBQUE4RyxhQUFBLENBQUNsRCx1QkFBdUI7TUFBQ21ELFNBQVMsRUFBQztJQUFxQixnQkFDdEQvRyxNQUFBLFlBQUE4RyxhQUFBLENBQUNqQyxjQUFjO01BQ2JrQyxTQUFTLEVBQUMsc0JBQXNCO01BQ2hDQyxLQUFLLEVBQUVoQyxJQUFJLENBQUNpQyxhQUFhLENBQUM7UUFBQ0MsRUFBRSxFQUFFO01BQXVCLENBQUM7SUFBRSxnQkFFekRsSCxNQUFBLFlBQUE4RyxhQUFBLENBQUNoQyxrQkFBa0I7TUFDakJxQyxPQUFPLEVBQUVyQixhQUFjO01BQ3ZCc0IsUUFBUSxFQUFFVixXQUFZO01BQ3RCVyxNQUFNLEVBQUVULGdCQUFpQjtNQUN6QlUsTUFBTSxFQUFFVDtJQUFrQixDQUMzQixDQUNhLENBQ08sQ0FBQyxlQUUxQjdHLE1BQUEsWUFBQThHLGFBQUEsQ0FBQzFDLHdCQUF3QjtNQUFDRSxRQUFRLEVBQUVzQixrQkFBa0IsSUFBSVIsT0FBTyxDQUFDckMsTUFBTSxLQUFLO0lBQUUsZ0JBQzdFL0MsTUFBQSxZQUFBOEcsYUFBQSxDQUFDbEMsVUFBVTtNQUNUUSxPQUFPLEVBQUVBLE9BQVE7TUFDakJDLFdBQVcsRUFBRUEsV0FBWTtNQUN6QkosZUFBZSxFQUFFQSxlQUFnQjtNQUNqQ3NDLFVBQVUsRUFBRTtJQUFLLENBQ2xCLENBQ3VCLENBQ1QsQ0FBQyxFQUNuQnBDLFFBQ3lCLENBQUM7RUFFakMsQ0FBQztFQUVELE9BQU8sSUFBQXFDLG1CQUFTLEVBQUMsQ0FBQ0Msc0JBQVksQ0FBQyxFQUFFLFVBQUFDLEtBQUs7SUFBQSxPQUFJQSxLQUFLO0VBQUEsR0FBRTtJQUMvQ3pDLGVBQWUsRUFBRTtNQUFDTSxTQUFTLEVBQVRBLGtCQUFTO01BQUVvQyxZQUFZLEVBQVpBLHFCQUFZO01BQUVDLFlBQVksRUFBWkEscUJBQVk7TUFBRUMsYUFBYSxFQUFiQTtJQUFhO0VBQ3hFLENBQUMsQ0FBQyxDQUFDLElBQUFDLHFCQUFVLEVBQUMvQyxhQUFhLENBQUMsQ0FBQztBQUMvQjtBQUFDLElBQUFnRCxRQUFBLEdBQUFDLE9BQUEsY0FFY3pELG9CQUFvQiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,10 +1,10 @@
1
1
  import { /* MVTSource,*/ TileJSON } from '@loaders.gl/mvt';
2
2
  import { PMTilesMetadata } from '@loaders.gl/pmtiles';
3
- import { VectorTileType } from '@kepler.gl/constants';
3
+ import { RemoteTileFormat } from '@kepler.gl/constants';
4
4
  import { VectorTileMetadata } from '@kepler.gl/table';
5
5
  declare type FetchVectorTileMetadataProps = {
6
6
  url: string | null;
7
- type: VectorTileType;
7
+ remoteTileFormat: RemoteTileFormat;
8
8
  process?: (json: PMTilesMetadata | TileJSON) => VectorTileMetadata | Error | null;
9
9
  };
10
10
  declare type FetchVectorTileMetadataReturn = {
@@ -13,5 +13,5 @@ declare type FetchVectorTileMetadataReturn = {
13
13
  error: Error | null;
14
14
  };
15
15
  /** Hook to fetch and return mvt or pmtiles metadata. */
16
- export default function useFetchVectorTileMetadata({ type, url, process }: FetchVectorTileMetadataProps): FetchVectorTileMetadataReturn;
16
+ export default function useFetchVectorTileMetadata({ remoteTileFormat, url, process }: FetchVectorTileMetadataProps): FetchVectorTileMetadataReturn;
17
17
  export {};
@@ -28,7 +28,7 @@ var DEFAULT_PROCESS_FUNCTION = function DEFAULT_PROCESS_FUNCTION(json) {
28
28
  };
29
29
  /** Hook to fetch and return mvt or pmtiles metadata. */
30
30
  function useFetchVectorTileMetadata(_ref) {
31
- var type = _ref.type,
31
+ var remoteTileFormat = _ref.remoteTileFormat,
32
32
  url = _ref.url,
33
33
  _ref$process = _ref.process,
34
34
  process = _ref$process === void 0 ? DEFAULT_PROCESS_FUNCTION : _ref$process;
@@ -71,7 +71,7 @@ function useFetchVectorTileMetadata(_ref) {
71
71
  setLoading(true);
72
72
  _context.prev = 4;
73
73
  metadata = null;
74
- if (!(type === _constants.VectorTileType.MVT)) {
74
+ if (!(remoteTileFormat === _constants.RemoteTileFormat.MVT)) {
75
75
  _context.next = 12;
76
76
  break;
77
77
  }
@@ -114,11 +114,11 @@ function useFetchVectorTileMetadata(_ref) {
114
114
  };
115
115
  }();
116
116
  getAndProcessMetadata();
117
- }, [url, type, setProcessedData]);
117
+ }, [url, remoteTileFormat, setProcessedData]);
118
118
  return {
119
119
  data: data,
120
120
  loading: loading,
121
121
  error: error
122
122
  };
123
123
  }
124
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3BtdGlsZXMiLCJfY29uc3RhbnRzIiwiX3RhYmxlIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJERUZBVUxUX1BST0NFU1NfRlVOQ1RJT04iLCJqc29uIiwibWV0YUpzb24iLCJib3VuZHMiLCJjZW50ZXIiLCJtYXhab29tIiwibWluWm9vbSIsImZpZWxkcyIsInVzZUZldGNoVmVjdG9yVGlsZU1ldGFkYXRhIiwiX3JlZiIsInR5cGUiLCJ1cmwiLCJfcmVmJHByb2Nlc3MiLCJwcm9jZXNzIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwiZXJyb3IiLCJzZXRFcnJvciIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiZGF0YSIsInNldERhdGEiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsImxvYWRpbmciLCJzZXRMb2FkaW5nIiwic2V0UHJvY2Vzc2VkRGF0YSIsInVzZUNhbGxiYWNrIiwidmFsdWUiLCJwcm9jZXNzZWREYXRhIiwiRXJyb3IiLCJ1c2VFZmZlY3QiLCJnZXRBbmRQcm9jZXNzTWV0YWRhdGEiLCJfcmVmMiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwibWV0YWRhdGEiLCJ0aWxlU291cmNlIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsIlZlY3RvclRpbGVUeXBlIiwiTVZUIiwiZ2V0TVZUTWV0YWRhdGEiLCJzZW50IiwiUE1UaWxlc1NvdXJjZSIsImNyZWF0ZURhdGFTb3VyY2UiLCJ0MCIsInN0b3AiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlLWZldGNoLXZlY3Rvci10aWxlLW1ldGFkYXRhLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7dXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsvKiBNVlRTb3VyY2UsKi8gVGlsZUpTT059IGZyb20gJ0Bsb2FkZXJzLmdsL212dCc7XG5pbXBvcnQge1BNVGlsZXNTb3VyY2UsIFBNVGlsZXNNZXRhZGF0YX0gZnJvbSAnQGxvYWRlcnMuZ2wvcG10aWxlcyc7XG5cbmltcG9ydCB7VmVjdG9yVGlsZVR5cGV9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7Z2V0TVZUTWV0YWRhdGEsIFZlY3RvclRpbGVNZXRhZGF0YX0gZnJvbSAnQGtlcGxlci5nbC90YWJsZSc7XG5cbnR5cGUgRmV0Y2hWZWN0b3JUaWxlTWV0YWRhdGFQcm9wcyA9IHtcbiAgdXJsOiBzdHJpbmcgfCBudWxsO1xuICB0eXBlOiBWZWN0b3JUaWxlVHlwZTtcbiAgcHJvY2Vzcz86IChqc29uOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTikgPT4gVmVjdG9yVGlsZU1ldGFkYXRhIHwgRXJyb3IgfCBudWxsO1xufTtcblxuY29uc3QgREVGQVVMVF9QUk9DRVNTX0ZVTkNUSU9OID0gKGpzb246IFBNVGlsZXNNZXRhZGF0YSB8IFRpbGVKU09OKTogVmVjdG9yVGlsZU1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHtcbiAgICBtZXRhSnNvbjogbnVsbCxcbiAgICBib3VuZHM6IG51bGwsXG4gICAgY2VudGVyOiBudWxsLFxuICAgIG1heFpvb206IG51bGwsXG4gICAgbWluWm9vbTogbnVsbCxcbiAgICBmaWVsZHM6IFtdLFxuICAgIC4uLmpzb25cbiAgfTtcbn07XG5cbnR5cGUgRmV0Y2hWZWN0b3JUaWxlTWV0YWRhdGFSZXR1cm4gPSB7XG4gIGRhdGE6IFZlY3RvclRpbGVNZXRhZGF0YSB8IG51bGw7XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIGVycm9yOiBFcnJvciB8IG51bGw7XG59O1xuXG4vKiogSG9vayB0byBmZXRjaCBhbmQgcmV0dXJuIG12dCBvciBwbXRpbGVzIG1ldGFkYXRhLiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlRmV0Y2hWZWN0b3JUaWxlTWV0YWRhdGEoe1xuICB0eXBlLFxuICB1cmwsXG4gIHByb2Nlc3MgPSBERUZBVUxUX1BST0NFU1NfRlVOQ1RJT05cbn06IEZldGNoVmVjdG9yVGlsZU1ldGFkYXRhUHJvcHMpOiBGZXRjaFZlY3RvclRpbGVNZXRhZGF0YVJldHVybiB7XG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8RXJyb3IgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2RhdGEsIHNldERhdGFdID0gdXNlU3RhdGU8VmVjdG9yVGlsZU1ldGFkYXRhIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdCBzZXRQcm9jZXNzZWREYXRhID0gdXNlQ2FsbGJhY2soXG4gICAgKHZhbHVlOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTiB8IG51bGwpID0+IHtcbiAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHNldEVycm9yKHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHByb2Nlc3NlZERhdGEgPSBwcm9jZXNzKHZhbHVlKTtcbiAgICAgIGlmIChwcm9jZXNzZWREYXRhIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgc2V0RXJyb3IocHJvY2Vzc2VkRGF0YSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXREYXRhKHByb2Nlc3NlZERhdGEpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW3NldEVycm9yLCBzZXREYXRhLCBwcm9jZXNzXVxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgZ2V0QW5kUHJvY2Vzc01ldGFkYXRhID0gYXN5bmMgKCkgPT4ge1xuICAgICAgc2V0RXJyb3IobnVsbCk7XG4gICAgICBzZXREYXRhKG51bGwpO1xuICAgICAgaWYgKHVybCkge1xuICAgICAgICBzZXRMb2FkaW5nKHRydWUpO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgbGV0IG1ldGFkYXRhOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTiB8IG51bGwgPSBudWxsO1xuICAgICAgICAgIGlmICh0eXBlID09PSBWZWN0b3JUaWxlVHlwZS5NVlQpIHtcbiAgICAgICAgICAgIG1ldGFkYXRhID0gYXdhaXQgZ2V0TVZUTWV0YWRhdGEodXJsKTtcblxuICAgICAgICAgICAgLy8gTVZUU291cmNlIHJldHVybnMgbWVzc3kgcGFydGlhbCBtZXRhZGF0YVxuICAgICAgICAgICAgLy8gTVZUU291cmNlLmNyZWF0ZURhdGFTb3VyY2UoJycsIHtcbiAgICAgICAgICAgIC8vICAgbXZ0OiB7XG4gICAgICAgICAgICAvLyAgICAgbWV0YWRhdGFVcmw6IGRlY29kZVVSSUNvbXBvbmVudCh1cmwpXG4gICAgICAgICAgICAvLyAgIH1cbiAgICAgICAgICAgIC8vIH0pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHRpbGVTb3VyY2UgPSBQTVRpbGVzU291cmNlLmNyZWF0ZURhdGFTb3VyY2UodXJsLCB7fSk7XG4gICAgICAgICAgICBtZXRhZGF0YSA9IGF3YWl0IHRpbGVTb3VyY2UubWV0YWRhdGE7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gU2luY2Ugd2Ugc3dpdGNoZWQgdG8gU291cmNlLmNyZWF0ZURhdGFTb3VyY2UgZGV0YWlsZWQgcmVzcG9uc2UgZXJyb3JzIGFyZW4ndCBhdmFpbGFibGUgaGVyZS4uLlxuICAgICAgICAgIGlmICghbWV0YWRhdGEpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGZldGNoIG1ldGFkYXRhJyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNldFByb2Nlc3NlZERhdGEobWV0YWRhdGEpO1xuICAgICAgICB9IGNhdGNoIChtZXRhZGF0YUVycm9yKSB7XG4gICAgICAgICAgc2V0RXJyb3IobWV0YWRhdGFFcnJvciBhcyBhbnkpO1xuICAgICAgICB9XG4gICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBnZXRBbmRQcm9jZXNzTWV0YWRhdGEoKTtcbiAgfSwgW3VybCwgdHlwZSwgc2V0UHJvY2Vzc2VkRGF0YV0pO1xuXG4gIHJldHVybiB7ZGF0YSwgbG9hZGluZywgZXJyb3J9O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsT0FBQTtBQUdBLElBQUFDLFFBQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLFVBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUFvRSxTQUFBSSxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FBQSxXQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFSLENBQUEsRUFBQUMsQ0FBQSxFQUFBUSxVQUFBLE9BQUFQLENBQUEsQ0FBQVEsSUFBQSxDQUFBQyxLQUFBLENBQUFULENBQUEsRUFBQUks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
124
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3BtdGlsZXMiLCJfY29uc3RhbnRzIiwiX3RhYmxlIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJERUZBVUxUX1BST0NFU1NfRlVOQ1RJT04iLCJqc29uIiwibWV0YUpzb24iLCJib3VuZHMiLCJjZW50ZXIiLCJtYXhab29tIiwibWluWm9vbSIsImZpZWxkcyIsInVzZUZldGNoVmVjdG9yVGlsZU1ldGFkYXRhIiwiX3JlZiIsInJlbW90ZVRpbGVGb3JtYXQiLCJ1cmwiLCJfcmVmJHByb2Nlc3MiLCJwcm9jZXNzIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwiZXJyb3IiLCJzZXRFcnJvciIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiZGF0YSIsInNldERhdGEiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsImxvYWRpbmciLCJzZXRMb2FkaW5nIiwic2V0UHJvY2Vzc2VkRGF0YSIsInVzZUNhbGxiYWNrIiwidmFsdWUiLCJwcm9jZXNzZWREYXRhIiwiRXJyb3IiLCJ1c2VFZmZlY3QiLCJnZXRBbmRQcm9jZXNzTWV0YWRhdGEiLCJfcmVmMiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwibWV0YWRhdGEiLCJ0aWxlU291cmNlIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsIlJlbW90ZVRpbGVGb3JtYXQiLCJNVlQiLCJnZXRNVlRNZXRhZGF0YSIsInNlbnQiLCJQTVRpbGVzU291cmNlIiwiY3JlYXRlRGF0YVNvdXJjZSIsInQwIiwic3RvcCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2UtZmV0Y2gtdmVjdG9yLXRpbGUtbWV0YWRhdGEudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHt1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgey8qIE1WVFNvdXJjZSwqLyBUaWxlSlNPTn0gZnJvbSAnQGxvYWRlcnMuZ2wvbXZ0JztcbmltcG9ydCB7UE1UaWxlc1NvdXJjZSwgUE1UaWxlc01ldGFkYXRhfSBmcm9tICdAbG9hZGVycy5nbC9wbXRpbGVzJztcblxuaW1wb3J0IHtSZW1vdGVUaWxlRm9ybWF0fSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge2dldE1WVE1ldGFkYXRhLCBWZWN0b3JUaWxlTWV0YWRhdGF9IGZyb20gJ0BrZXBsZXIuZ2wvdGFibGUnO1xuXG50eXBlIEZldGNoVmVjdG9yVGlsZU1ldGFkYXRhUHJvcHMgPSB7XG4gIHVybDogc3RyaW5nIHwgbnVsbDtcbiAgcmVtb3RlVGlsZUZvcm1hdDogUmVtb3RlVGlsZUZvcm1hdDtcbiAgcHJvY2Vzcz86IChqc29uOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTikgPT4gVmVjdG9yVGlsZU1ldGFkYXRhIHwgRXJyb3IgfCBudWxsO1xufTtcblxuY29uc3QgREVGQVVMVF9QUk9DRVNTX0ZVTkNUSU9OID0gKGpzb246IFBNVGlsZXNNZXRhZGF0YSB8IFRpbGVKU09OKTogVmVjdG9yVGlsZU1ldGFkYXRhID0+IHtcbiAgcmV0dXJuIHtcbiAgICBtZXRhSnNvbjogbnVsbCxcbiAgICBib3VuZHM6IG51bGwsXG4gICAgY2VudGVyOiBudWxsLFxuICAgIG1heFpvb206IG51bGwsXG4gICAgbWluWm9vbTogbnVsbCxcbiAgICBmaWVsZHM6IFtdLFxuICAgIC4uLmpzb25cbiAgfTtcbn07XG5cbnR5cGUgRmV0Y2hWZWN0b3JUaWxlTWV0YWRhdGFSZXR1cm4gPSB7XG4gIGRhdGE6IFZlY3RvclRpbGVNZXRhZGF0YSB8IG51bGw7XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIGVycm9yOiBFcnJvciB8IG51bGw7XG59O1xuXG4vKiogSG9vayB0byBmZXRjaCBhbmQgcmV0dXJuIG12dCBvciBwbXRpbGVzIG1ldGFkYXRhLiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlRmV0Y2hWZWN0b3JUaWxlTWV0YWRhdGEoe1xuICByZW1vdGVUaWxlRm9ybWF0LFxuICB1cmwsXG4gIHByb2Nlc3MgPSBERUZBVUxUX1BST0NFU1NfRlVOQ1RJT05cbn06IEZldGNoVmVjdG9yVGlsZU1ldGFkYXRhUHJvcHMpOiBGZXRjaFZlY3RvclRpbGVNZXRhZGF0YVJldHVybiB7XG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8RXJyb3IgfCBudWxsPihudWxsKTtcbiAgY29uc3QgW2RhdGEsIHNldERhdGFdID0gdXNlU3RhdGU8VmVjdG9yVGlsZU1ldGFkYXRhIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcblxuICBjb25zdCBzZXRQcm9jZXNzZWREYXRhID0gdXNlQ2FsbGJhY2soXG4gICAgKHZhbHVlOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTiB8IG51bGwpID0+IHtcbiAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHNldEVycm9yKHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHByb2Nlc3NlZERhdGEgPSBwcm9jZXNzKHZhbHVlKTtcbiAgICAgIGlmIChwcm9jZXNzZWREYXRhIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgc2V0RXJyb3IocHJvY2Vzc2VkRGF0YSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXREYXRhKHByb2Nlc3NlZERhdGEpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW3NldEVycm9yLCBzZXREYXRhLCBwcm9jZXNzXVxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgZ2V0QW5kUHJvY2Vzc01ldGFkYXRhID0gYXN5bmMgKCkgPT4ge1xuICAgICAgc2V0RXJyb3IobnVsbCk7XG4gICAgICBzZXREYXRhKG51bGwpO1xuICAgICAgaWYgKHVybCkge1xuICAgICAgICBzZXRMb2FkaW5nKHRydWUpO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgbGV0IG1ldGFkYXRhOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTiB8IG51bGwgPSBudWxsO1xuICAgICAgICAgIGlmIChyZW1vdGVUaWxlRm9ybWF0ID09PSBSZW1vdGVUaWxlRm9ybWF0Lk1WVCkge1xuICAgICAgICAgICAgbWV0YWRhdGEgPSBhd2FpdCBnZXRNVlRNZXRhZGF0YSh1cmwpO1xuXG4gICAgICAgICAgICAvLyBNVlRTb3VyY2UgcmV0dXJucyBtZXNzeSBwYXJ0aWFsIG1ldGFkYXRhXG4gICAgICAgICAgICAvLyBNVlRTb3VyY2UuY3JlYXRlRGF0YVNvdXJjZSgnJywge1xuICAgICAgICAgICAgLy8gICBtdnQ6IHtcbiAgICAgICAgICAgIC8vICAgICBtZXRhZGF0YVVybDogZGVjb2RlVVJJQ29tcG9uZW50KHVybClcbiAgICAgICAgICAgIC8vICAgfVxuICAgICAgICAgICAgLy8gfSlcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgdGlsZVNvdXJjZSA9IFBNVGlsZXNTb3VyY2UuY3JlYXRlRGF0YVNvdXJjZSh1cmwsIHt9KTtcbiAgICAgICAgICAgIG1ldGFkYXRhID0gYXdhaXQgdGlsZVNvdXJjZS5tZXRhZGF0YTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBTaW5jZSB3ZSBzd2l0Y2hlZCB0byBTb3VyY2UuY3JlYXRlRGF0YVNvdXJjZSBkZXRhaWxlZCByZXNwb25zZSBlcnJvcnMgYXJlbid0IGF2YWlsYWJsZSBoZXJlLi4uXG4gICAgICAgICAgaWYgKCFtZXRhZGF0YSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggbWV0YWRhdGEnKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc2V0UHJvY2Vzc2VkRGF0YShtZXRhZGF0YSk7XG4gICAgICAgIH0gY2F0Y2ggKG1ldGFkYXRhRXJyb3IpIHtcbiAgICAgICAgICBzZXRFcnJvcihtZXRhZGF0YUVycm9yIGFzIGFueSk7XG4gICAgICAgIH1cbiAgICAgICAgc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGdldEFuZFByb2Nlc3NNZXRhZGF0YSgpO1xuICB9LCBbdXJsLCByZW1vdGVUaWxlRm9ybWF0LCBzZXRQcm9jZXNzZWREYXRhXSk7XG5cbiAgcmV0dXJuIHtkYXRhLCBsb2FkaW5nLCBlcnJvcn07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBR0EsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsVUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQW9FLFNBQUFJLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBWixDQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVosQ0FBQSxJQUFBWSxTQUFBLENBQUFaLENBQUEsUUFBQUEsQ0FBQSxPQUFBRixPQUFBLENBQUFJLE1BQUEsQ0FBQUQsQ0FBQSxPQUFBYSxPQUFBLFdBQUFkLENBQUEsUUFBQWUsZ0JBQUEsYUFBQWhCLENBQUEsRUFBQUMsQ0FBQSxFQUFBQyxDQUFBLENBQUFELENBQUEsU0FBQUUsTUFBQSxDQUFBYyx5QkFBQSxHQUFBZCxNQUFBLENBQUFlLGdCQUFBLENBQUFsQixDQUFBLEVBQUFHLE1BQUEsQ0FBQWMseUJBQUEsQ0FBQWYsQ0FBQSxLQUFBSCxPQUFBLENBQUFJLE1BQUEsQ0FBQUQsQ0FBQSxHQUFBYSxPQUFBLFdBQUFkLENBQUEsSUFBQUUsTUFBQSxDQUFBZ0IsY0FBQSxDQUFBbkIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQU4sQ0FBQSxFQUFBRCxDQUFBLGlCQUFBRCxDQUFBLElBVHBFO0FBQ0E7QUFnQkEsSUFBTW9CLHdCQUF3QixHQUFHLFNBQTNCQSx3QkFBd0JBLENBQUlDLElBQWdDLEVBQXlCO0VBQ3pGLE9BQUFULGFBQUE7SUFDRVUsUUFBUSxFQUFFLElBQUk7SUFDZEMsTUFBTSxFQUFFLElBQUk7SUFDWkMsTUFBTSxFQUFFLElBQUk7SUFDWkMsT0FBTyxFQUFFLElBQUk7SUFDYkMsT0FBTyxFQUFFLElBQUk7SUFDYkMsTUFBTSxFQUFFO0VBQUUsR0FDUE4sSUFBSTtBQUVYLENBQUM7QUFRRDtBQUNlLFNBQVNPLDBCQUEwQkEsQ0FBQUMsSUFBQSxFQUljO0VBQUEsSUFIOURDLGdCQUFnQixHQUFBRCxJQUFBLENBQWhCQyxnQkFBZ0I7SUFDaEJDLEdBQUcsR0FBQUYsSUFBQSxDQUFIRSxHQUFHO0lBQUFDLFlBQUEsR0FBQUgsSUFBQSxDQUNISSxPQUFPO0lBQVBBLE9BQU8sR0FBQUQsWUFBQSxjQUFHWix3QkFBd0IsR0FBQVksWUFBQTtFQUVsQyxJQUFBRSxTQUFBLEdBQTBCLElBQUFDLGVBQVEsRUFBZSxJQUFJLENBQUM7SUFBQUMsVUFBQSxPQUFBQyxlQUFBLGFBQUFILFNBQUE7SUFBL0NJLEtBQUssR0FBQUYsVUFBQTtJQUFFRyxRQUFRLEdBQUFILFVBQUE7RUFDdEIsSUFBQUksVUFBQSxHQUF3QixJQUFBTCxlQUFRLEVBQTRCLElBQUksQ0FBQztJQUFBTSxVQUFBLE9BQUFKLGVBQUEsYUFBQUcsVUFBQTtJQUExREUsSUFBSSxHQUFBRCxVQUFBO0lBQUVFLE9BQU8sR0FBQUYsVUFBQTtFQUNwQixJQUFBRyxVQUFBLEdBQThCLElBQUFULGVBQVEsRUFBVSxLQUFLLENBQUM7SUFBQVUsVUFBQSxPQUFBUixlQUFBLGFBQUFPLFVBQUE7SUFBL0NFLE9BQU8sR0FBQUQsVUFBQTtJQUFFRSxVQUFVLEdBQUFGLFVBQUE7RUFFMUIsSUFBTUcsZ0JBQWdCLEdBQUcsSUFBQUMsa0JBQVcsRUFDbEMsVUFBQ0MsS0FBd0MsRUFBSztJQUM1QyxJQUFJLENBQUNBLEtBQUssRUFBRTtNQUNWLE9BQU9YLFFBQVEsQ0FBQ1csS0FBSyxDQUFDO0lBQ3hCO0lBQ0EsSUFBTUMsYUFBYSxHQUFHbEIsT0FBTyxDQUFDaUIsS0FBSyxDQUFDO0lBQ3BDLElBQUlDLGFBQWEsWUFBWUMsS0FBSyxFQUFFO01BQ2xDYixRQUFRLENBQUNZLGFBQWEsQ0FBQztJQUN6QixDQUFDLE1BQU07TUFDTFIsT0FBTyxDQUFDUSxhQUFhLENBQUM7SUFDeEI7RUFDRixDQUFDLEVBQ0QsQ0FBQ1osUUFBUSxFQUFFSSxPQUFPLEVBQUVWLE9BQU8sQ0FDN0IsQ0FBQztFQUVELElBQUFvQixnQkFBUyxFQUFDLFlBQU07SUFDZCxJQUFNQyxxQkFBcUI7TUFBQSxJQUFBQyxLQUFBLE9BQUFDLGtCQUFBLDJCQUFBQyxZQUFBLFlBQUFDLElBQUEsQ0FBRyxTQUFBQyxRQUFBO1FBQUEsSUFBQUMsUUFBQSxFQUFBQyxVQUFBO1FBQUEsT0FBQUosWUFBQSxZQUFBSyxJQUFBLFVBQUFDLFNBQUFDLFFBQUE7VUFBQSxrQkFBQUEsUUFBQSxDQUFBQyxJQUFBLEdBQUFELFFBQUEsQ0FBQUUsSUFBQTtZQUFBO2NBQzVCM0IsUUFBUSxDQUFDLElBQUksQ0FBQztjQUNkSSxPQUFPLENBQUMsSUFBSSxDQUFDO2NBQUMsS0FDVlosR0FBRztnQkFBQWlDLFFBQUEsQ0FBQUUsSUFBQTtnQkFBQTtjQUFBO2NBQ0xuQixVQUFVLENBQUMsSUFBSSxDQUFDO2NBQUNpQixRQUFBLENBQUFDLElBQUE7Y0FHWEwsUUFBMkMsR0FBRyxJQUFJO2NBQUEsTUFDbEQ5QixnQkFBZ0IsS0FBS3FDLDJCQUFnQixDQUFDQyxHQUFHO2dCQUFBSixRQUFBLENBQUFFLElBQUE7Z0JBQUE7Y0FBQTtjQUFBRixRQUFBLENBQUFFLElBQUE7Y0FBQSxPQUMxQixJQUFBRyxxQkFBYyxFQUFDdEMsR0FBRyxDQUFDO1lBQUE7Y0FBcEM2QixRQUFRLEdBQUFJLFFBQUEsQ0FBQU0sSUFBQTtjQUFBTixRQUFBLENBQUFFLElBQUE7Y0FBQTtZQUFBO2NBU0ZMLFVBQVUsR0FBR1Usc0JBQWEsQ0FBQ0MsZ0JBQWdCLENBQUN6QyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7Y0FBQWlDLFFBQUEsQ0FBQUUsSUFBQTtjQUFBLE9BQ3pDTCxVQUFVLENBQUNELFFBQVE7WUFBQTtjQUFwQ0EsUUFBUSxHQUFBSSxRQUFBLENBQUFNLElBQUE7WUFBQTtjQUFBLElBSUxWLFFBQVE7Z0JBQUFJLFFBQUEsQ0FBQUUsSUFBQTtnQkFBQTtjQUFBO2NBQUEsTUFDTCxJQUFJZCxLQUFLLENBQUMsMEJBQTBCLENBQUM7WUFBQTtjQUU3Q0osZ0JBQWdCLENBQUNZLFFBQVEsQ0FBQztjQUFDSSxRQUFBLENBQUFFLElBQUE7Y0FBQTtZQUFBO2NBQUFGLFFBQUEsQ0FBQUMsSUFBQTtjQUFBRCxRQUFBLENBQUFTLEVBQUEsR0FBQVQsUUFBQTtjQUUzQnpCLFFBQVEsQ0FBQXlCLFFBQUEsQ0FBQVMsRUFBcUIsQ0FBQztZQUFDO2NBRWpDMUIsVUFBVSxDQUFDLEtBQUssQ0FBQztZQUFDO1lBQUE7Y0FBQSxPQUFBaUIsUUFBQSxDQUFBVSxJQUFBO1VBQUE7UUFBQSxHQUFBZixPQUFBO01BQUEsQ0FFckI7TUFBQSxnQkFoQ0tMLHFCQUFxQkEsQ0FBQTtRQUFBLE9BQUFDLEtBQUEsQ0FBQTVDLEtBQUEsT0FBQUUsU0FBQTtNQUFBO0lBQUEsR0FnQzFCO0lBRUR5QyxxQkFBcUIsQ0FBQyxDQUFDO0VBQ3pCLENBQUMsRUFBRSxDQUFDdkIsR0FBRyxFQUFFRCxnQkFBZ0IsRUFBRWtCLGdCQUFnQixDQUFDLENBQUM7RUFFN0MsT0FBTztJQUFDTixJQUFJLEVBQUpBLElBQUk7SUFBRUksT0FBTyxFQUFQQSxPQUFPO0lBQUVSLEtBQUssRUFBTEE7RUFBSyxDQUFDO0FBQy9CIiwiaWdub3JlTGlzdCI6W119
@@ -17,6 +17,7 @@ var _core = require("@dnd-kit/core");
17
17
  var _utilities = require("@dnd-kit/utilities");
18
18
  var _react2 = require("@floating-ui/react");
19
19
  var _actions = require("@kepler.gl/actions");
20
+ var _reducers = require("@kepler.gl/reducers");
20
21
  var _styles = require("@kepler.gl/styles");
21
22
  var _utils = require("@kepler.gl/utils");
22
23
  var _icons = require("../common/icons");
@@ -78,23 +79,18 @@ var DraggableLegendContent = /*#__PURE__*/(0, _react.forwardRef)(function (props
78
79
  height: "16px"
79
80
  })));
80
81
  });
81
- var DraggableLegend = (0, _injector.withState)([], function (state) {
82
- var _mapControls$mapLegen;
83
- var _state$demo$keplerGl$ = state.demo.keplerGl.map.uiState,
84
- activeSidePanel = _state$demo$keplerGl$.activeSidePanel,
85
- mapControls = _state$demo$keplerGl$.mapControls;
86
- return {
87
- isSidePanelShown: activeSidePanel,
88
- settings: mapControls === null || mapControls === void 0 || (_mapControls$mapLegen = mapControls.mapLegend) === null || _mapControls$mapLegen === void 0 ? void 0 : _mapControls$mapLegen.settings
89
- };
82
+ var DraggableLegend = (0, _injector.withState)([_reducers.uiStateLens], function (state) {
83
+ return state;
90
84
  }, {
91
85
  setMapControlSettings: _actions.setMapControlSettings
92
86
  })((0, _styledComponents.withTheme)(function (_ref) {
93
- var isSidePanelShown = _ref.isSidePanelShown,
87
+ var _uiState$mapControls;
88
+ var uiState = _ref.uiState,
94
89
  theme = _ref.theme,
95
- settings = _ref.settings,
96
90
  setMapControlSettings = _ref.setMapControlSettings,
97
91
  children = _ref.children;
92
+ var isSidePanelShown = uiState.activeSidePanel;
93
+ var settings = (_uiState$mapControls = uiState.mapControls) === null || _uiState$mapControls === void 0 || (_uiState$mapControls = _uiState$mapControls.mapLegend) === null || _uiState$mapControls === void 0 ? void 0 : _uiState$mapControls.settings;
98
94
  var legendContentRef = (0, _react.useRef)(null);
99
95
  var onChangeSettings = (0, _react.useCallback)(function (newSettings) {
100
96
  return setMapControlSettings('mapLegend', newSettings);
@@ -173,7 +169,7 @@ var defaultActionIcons = {
173
169
  legend: _icons.Legend
174
170
  };
175
171
  var MapLegendPanelComponent = function MapLegendPanelComponent(_ref3) {
176
- var _rootContext$current;
172
+ var _uiState$mapControls2, _rootContext$current;
177
173
  var layers = _ref3.layers,
178
174
  mapControls = _ref3.mapControls,
179
175
  scale = _ref3.scale,
@@ -183,6 +179,7 @@ var MapLegendPanelComponent = function MapLegendPanelComponent(_ref3) {
183
179
  _ref3$actionIcons = _ref3.actionIcons,
184
180
  actionIcons = _ref3$actionIcons === void 0 ? defaultActionIcons : _ref3$actionIcons,
185
181
  mapState = _ref3.mapState,
182
+ uiState = _ref3.uiState,
186
183
  onLayerVisConfigChange = _ref3.onLayerVisConfigChange,
187
184
  onToggleSplitMapViewport = _ref3.onToggleSplitMapViewport,
188
185
  onClickControlBtn = _ref3.onClickControlBtn,
@@ -190,11 +187,11 @@ var MapLegendPanelComponent = function MapLegendPanelComponent(_ref3) {
190
187
  isViewportUnsyncAllowed = _ref3$isViewportUnsyn === void 0 ? true : _ref3$isViewportUnsyn,
191
188
  className = _ref3.className,
192
189
  interactionConfig = _ref3.interactionConfig,
193
- settings = _ref3.settings,
194
- isSidePanelShown = _ref3.isSidePanelShown,
195
190
  MapControlTooltip = _ref3.MapControlTooltip,
196
191
  MapControlPanel = _ref3.MapControlPanel,
197
192
  MapLegend = _ref3.MapLegend;
193
+ var isSidePanelShown = uiState.activeSidePanel;
194
+ var settings = (_uiState$mapControls2 = uiState.mapControls) === null || _uiState$mapControls2 === void 0 || (_uiState$mapControls2 = _uiState$mapControls2.mapLegend) === null || _uiState$mapControls2 === void 0 ? void 0 : _uiState$mapControls2.settings;
198
195
  var mapLegend = (mapControls === null || mapControls === void 0 ? void 0 : mapControls.mapLegend) || {};
199
196
  var _ref4 = mapLegend || {},
200
197
  active = _ref4.active,
@@ -248,14 +245,8 @@ var MapLegendPanelComponent = function MapLegendPanelComponent(_ref3) {
248
245
  }))) : null);
249
246
  };
250
247
  function MapLegendPanelFactory(MapControlTooltip, MapControlPanel, MapLegend) {
251
- var MapLegendPanel = (0, _injector.withState)([], function (state) {
252
- var _state$demo$keplerGl$2, _state$demo, _mapControls$mapLegen2;
253
- var _ref5 = (_state$demo$keplerGl$2 = (_state$demo = state.demo) === null || _state$demo === void 0 ? void 0 : _state$demo.keplerGl.map.uiState) !== null && _state$demo$keplerGl$2 !== void 0 ? _state$demo$keplerGl$2 : {},
254
- activeSidePanel = _ref5.activeSidePanel,
255
- mapControls = _ref5.mapControls;
248
+ var MapLegendPanel = (0, _injector.withState)([_reducers.uiStateLens], function (state) {
256
249
  return {
257
- isSidePanelShown: activeSidePanel,
258
- settings: mapControls === null || mapControls === void 0 || (_mapControls$mapLegen2 = mapControls.mapLegend) === null || _mapControls$mapLegen2 === void 0 ? void 0 : _mapControls$mapLegen2.settings,
259
250
  MapControlTooltip: MapControlTooltip,
260
251
  MapControlPanel: MapControlPanel,
261
252
  MapLegend: MapLegend
@@ -267,4 +258,4 @@ function MapLegendPanelFactory(MapControlTooltip, MapControlPanel, MapLegend) {
267
258
  return (0, _styledComponents.withTheme)(MapLegendPanel);
268
259
  }
269
260
  var _default = exports["default"] = MapLegendPanelFactory;
270
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0RG9tIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9jb3JlIiwiX3V0aWxpdGllcyIsIl9yZWFjdDIiLCJfYWN0aW9ucyIsIl9zdHlsZXMiLCJfdXRpbHMiLCJfaWNvbnMiLCJfc3R5bGVkQ29tcG9uZW50czIiLCJfY29udGV4dCIsIl91c2VMZWdlbmRQb3NpdGlvbjMiLCJfaW5qZWN0b3IiLCJfbWFwQ29udHJvbFBhbmVsIiwiX21hcENvbnRyb2xUb29sdGlwIiwiX21hcExlZ2VuZCIsIl9tb2RpZmllcnMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIm93bktleXMiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsIkRSQUdfUkVTSVpFX0lEIiwiRFJBR19NT1ZFX0lEIiwiU3R5bGVkRHJhZ2dhYmxlTGVnZW5kQ29udGVudCIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsImFjdGl2ZUNvbG9yIiwiY29udGVudEhlaWdodCIsImNvbmNhdCIsIlN0eWxlZE1vdmVIYW5kbGUiLCJTdHlsZWRSZXNpemVIYW5kbGUiLCJEcmFnZ2FibGVMZWdlbmRDb250ZW50IiwiZm9yd2FyZFJlZiIsInJlZiIsInBvc2l0aW9uU3R5bGVzIiwiY2hpbGRyZW4iLCJkcmFnZ2FibGVNb3ZlIiwidXNlRHJhZ2dhYmxlIiwiaWQiLCJkcmFnZ2FibGVSZXNpemUiLCJyZWZzIiwidXNlTWVyZ2VSZWZzIiwic2V0Tm9kZVJlZiIsImlzRHJhZ2dpbmciLCJjcmVhdGVFbGVtZW50IiwiX2V4dGVuZHMyIiwiY2xhc3NOYW1lIiwiY2xhc3NuYW1lcyIsInN0eWxlIiwidHJhbnNmb3JtIiwiQ1NTIiwiVHJhbnNsYXRlIiwidG9TdHJpbmciLCJhdHRyaWJ1dGVzIiwibGlzdGVuZXJzIiwiRHJhZ2dhYmxlRG90cyIsImhlaWdodCIsIkhvcml6b250YWxSZXNpemVIYW5kbGUiLCJEcmFnZ2FibGVMZWdlbmQiLCJ3aXRoU3RhdGUiLCJzdGF0ZSIsIl9tYXBDb250cm9scyRtYXBMZWdlbiIsIl9zdGF0ZSRkZW1vJGtlcGxlckdsJCIsImRlbW8iLCJrZXBsZXJHbCIsIm1hcCIsInVpU3RhdGUiLCJhY3RpdmVTaWRlUGFuZWwiLCJtYXBDb250cm9scyIsImlzU2lkZVBhbmVsU2hvd24iLCJzZXR0aW5ncyIsIm1hcExlZ2VuZCIsInNldE1hcENvbnRyb2xTZXR0aW5ncyIsIndpdGhUaGVtZSIsIl9yZWYiLCJsZWdlbmRDb250ZW50UmVmIiwidXNlUmVmIiwib25DaGFuZ2VTZXR0aW5ncyIsInVzZUNhbGxiYWNrIiwibmV3U2V0dGluZ3MiLCJfdXNlTGVnZW5kUG9zaXRpb24iLCJ1c2VMZWdlbmRQb3NpdGlvbiIsInVwZGF0ZVBvc2l0aW9uIiwic3RhcnRSZXNpemUiLCJyZXNpemUiLCJoYW5kbGVEcmFnU3RhcnQiLCJldmVudCIsImFjdGl2ZSIsImhhbmRsZURyYWdFbmQiLCJoYW5kbGVEcmFnTW92ZSIsImRlbHRhIiwieSIsIkRuZENvbnRleHQiLCJvbkRyYWdTdGFydCIsIm9uRHJhZ01vdmUiLCJvbkRyYWdFbmQiLCJtb2RpZmllcnMiLCJyZXN0cmljdFRvV2luZG93RWRnZXMiLCJJbWFnZUV4cG9ydExlZ2VuZCIsIl9yZWYyIiwiX2NvbnRhaW5lclJlZiRjdXJyZW50IiwiY29udGFpbmVyUmVmIiwiX3VzZUxlZ2VuZFBvc2l0aW9uMiIsInBvcnRhbFJvb3QiLCJjdXJyZW50IiwiY2xvc2VzdCIsInF1ZXJ5U2VsZWN0b3IiLCJjcmVhdGVQb3J0YWwiLCJwb3NpdGlvbiIsIk1hcExlZ2VuZFBhbmVsRmFjdG9yeSIsImRlcHMiLCJNYXBDb250cm9sVG9vbHRpcEZhY3RvcnkiLCJNYXBDb250cm9sUGFuZWxGYWN0b3J5IiwiTWFwTGVnZW5kRmFjdG9yeSIsImRlZmF1bHRBY3Rpb25JY29ucyIsImxlZ2VuZCIsIkxlZ2VuZCIsIk1hcExlZ2VuZFBhbmVsQ29tcG9uZW50IiwiX3JlZjMiLCJfcm9vdENvbnRleHQkY3VycmVudCIsImxheWVycyIsInNjYWxlIiwib25Ub2dnbGVNYXBDb250cm9sIiwiaXNFeHBvcnQiLCJsb2dvQ29tcG9uZW50IiwiX3JlZjMkYWN0aW9uSWNvbnMiLCJhY3Rpb25JY29ucyIsIm1hcFN0YXRlIiwib25MYXllclZpc0NvbmZpZ0NoYW5nZSIsIm9uVG9nZ2xlU3BsaXRNYXBWaWV3cG9ydCIsIm9uQ2xpY2tDb250cm9sQnRuIiwiX3JlZjMkaXNWaWV3cG9ydFVuc3luIiwiaXNWaWV3cG9ydFVuc3luY0FsbG93ZWQiLCJpbnRlcmFjdGlvbkNvbmZpZyIsIk1hcENvbnRyb2xUb29sdGlwIiwiTWFwQ29udHJvbFBhbmVsIiwiTWFwTGVnZW5kIiwiX3JlZjQiLCJkaXNhYmxlRWRpdCIsInJvb3RDb250ZXh0IiwidXNlQ29udGV4dCIsIlJvb3RDb250ZXh0Iiwib25DbGljayIsIl9tYXBDb250cm9scyRtYXBEcmF3IiwibWFwRHJhdyIsIm9uQ2xvc2VDbGljayIsInByZXZlbnREZWZhdWx0Iiwic2hvdyIsImxlZ2VuZFBhbmVsIiwiaGVhZGVyIiwicGlubmFibGUiLCJkaXNhYmxlQ2xvc2UiLCJGcmFnbWVudCIsImhhc1BvcnRhYmxlV2lkdGgiLCJicmVha1BvaW50VmFsdWVzIiwiZG9jdW1lbnQiLCJib2R5IiwibWVzc2FnZSIsIk1hcENvbnRyb2xCdXR0b24iLCJNYXBMZWdlbmRQYW5lbCIsIl9zdGF0ZSRkZW1vJGtlcGxlckdsJDIiLCJfc3RhdGUkZGVtbyIsIl9tYXBDb250cm9scyRtYXBMZWdlbjIiLCJfcmVmNSIsImRpc3BsYXlOYW1lIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hcC9tYXAtbGVnZW5kLXBhbmVsLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB7Y3JlYXRlUG9ydGFsfSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50VHlwZSwgRkMsIGZvcndhcmRSZWYsIHVzZUNhbGxiYWNrLCB1c2VDb250ZXh0LCB1c2VSZWZ9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQsIHt3aXRoVGhlbWV9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcblxuaW1wb3J0IHtEbmRDb250ZXh0LCB1c2VEcmFnZ2FibGV9IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHtDU1N9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQge3VzZU1lcmdlUmVmc30gZnJvbSAnQGZsb2F0aW5nLXVpL3JlYWN0JztcblxuaW1wb3J0IHtBY3Rpb25IYW5kbGVyLCBzZXRNYXBDb250cm9sU2V0dGluZ3MsIHRvZ2dsZVNwbGl0TWFwVmlld3BvcnR9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5pbXBvcnQge0xheWVyfSBmcm9tICdAa2VwbGVyLmdsL2xheWVycyc7XG5pbXBvcnQge2JyZWFrUG9pbnRWYWx1ZXN9IGZyb20gJ0BrZXBsZXIuZ2wvc3R5bGVzJztcbmltcG9ydCB7TGF5ZXJWaXNDb25maWcsIE1hcENvbnRyb2xNYXBMZWdlbmQsIE1hcENvbnRyb2xzLCBNYXBTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge2hhc1BvcnRhYmxlV2lkdGh9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuXG5pbXBvcnQge0xlZ2VuZCwgRHJhZ2dhYmxlRG90cywgSG9yaXpvbnRhbFJlc2l6ZUhhbmRsZX0gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcbmltcG9ydCB7TWFwQ29udHJvbEJ1dHRvbn0gZnJvbSAnLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7Um9vdENvbnRleHR9IGZyb20gJy4uL2NvbnRleHQnO1xuaW1wb3J0IHVzZUxlZ2VuZFBvc2l0aW9uLCB7TWFwTGVnZW5kQ29udHJvbFNldHRpbmdzfSBmcm9tICcuLi9ob29rcy91c2UtbGVnZW5kLXBvc2l0aW9uJztcbmltcG9ydCB7d2l0aFN0YXRlfSBmcm9tICcuLi9pbmplY3Rvcic7XG5pbXBvcnQgTWFwQ29udHJvbFBhbmVsRmFjdG9yeSBmcm9tICcuL21hcC1jb250cm9sLXBhbmVsJztcbmltcG9ydCBNYXBDb250cm9sVG9vbHRpcEZhY3RvcnkgZnJvbSAnLi9tYXAtY29udHJvbC10b29sdGlwJztcbmltcG9ydCBNYXBMZWdlbmRGYWN0b3J5IGZyb20gJy4vbWFwLWxlZ2VuZCc7XG5pbXBvcnQge3Jlc3RyaWN0VG9XaW5kb3dFZGdlc30gZnJvbSAnQGRuZC1raXQvbW9kaWZpZXJzJztcblxuY29uc3QgRFJBR19SRVNJWkVfSUQgPSAnbWFwLWxlZ2VuZC1yZXNpemUnO1xuY29uc3QgRFJBR19NT1ZFX0lEID0gJ21hcC1sZWdlbmQtbW92ZSc7XG5cbmNvbnN0IFN0eWxlZERyYWdnYWJsZUxlZ2VuZENvbnRlbnQgPSBzdHlsZWQuZGl2PHtjb250ZW50SGVpZ2h0PzogbnVtYmVyfT5gXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAubGVnZW5kLWlucHV0LWJsb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICYuaXMtZHJhZ2dpbmcgLmxlZ2VuZC1pbnB1dC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmOmhvdmVyLFxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICAubGVnZW5kLW1vdmUtaGFuZGxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG4gICAgLmxlZ2VuZC1yZXNpemUtaGFuZGxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgfVxuICAubWFwLWNvbnRyb2xfX3BhbmVsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XG4gICAgJHtwcm9wcyA9PiAocHJvcHMuY29udGVudEhlaWdodCA/IGBoZWlnaHQ6ICR7cHJvcHMuY29udGVudEhlaWdodH1weDtgIDogJycpfTtcbiAgfVxuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHotaW5kZXg6IDI7XG4gIC5tYXAtY29udHJvbC1wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRNb3ZlSGFuZGxlID0gc3R5bGVkLmRpdmBcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjdXJzb3I6IG1vdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYWN0aXZlQ29sb3J9O1xuYDtcblxuY29uc3QgU3R5bGVkUmVzaXplSGFuZGxlID0gc3R5bGVkLmRpdmBcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2Y3ZjhmYTtcbiAgei1pbmRleDogMjtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogbnMtcmVzaXplO1xuYDtcblxuZXhwb3J0IHR5cGUgTWFwTGVnZW5kUGFuZWxGYWN0b3J5RGVwcyA9IFtcbiAgdHlwZW9mIE1hcENvbnRyb2xUb29sdGlwRmFjdG9yeSxcbiAgdHlwZW9mIE1hcENvbnRyb2xQYW5lbEZhY3RvcnksXG4gIHR5cGVvZiBNYXBMZWdlbmRGYWN0b3J5XG5dO1xuXG50eXBlIERyYWdnYWJsZUxlZ2VuZENvbnRlbnRQcm9wcyA9IHtcbiAgY29udGVudEhlaWdodD86IG51bWJlcjtcbiAgcG9zaXRpb25TdHlsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufTtcblxuY29uc3QgRHJhZ2dhYmxlTGVnZW5kQ29udGVudCA9IGZvcndhcmRSZWYoKHByb3BzOiBEcmFnZ2FibGVMZWdlbmRDb250ZW50UHJvcHMsIHJlZikgPT4ge1xuICBjb25zdCB7cG9zaXRpb25TdHlsZXMsIGNoaWxkcmVufSA9IHByb3BzO1xuICBjb25zdCBkcmFnZ2FibGVNb3ZlID0gdXNlRHJhZ2dhYmxlKHtpZDogRFJBR19NT1ZFX0lEfSk7XG4gIGNvbnN0IGRyYWdnYWJsZVJlc2l6ZSA9IHVzZURyYWdnYWJsZSh7aWQ6IERSQUdfUkVTSVpFX0lEfSk7XG4gIGNvbnN0IHJlZnMgPSB1c2VNZXJnZVJlZnMoW2RyYWdnYWJsZU1vdmUuc2V0Tm9kZVJlZiwgcmVmXSk7XG4gIGNvbnN0IGlzRHJhZ2dpbmcgPSBkcmFnZ2FibGVNb3ZlLmlzRHJhZ2dpbmcgfHwgZHJhZ2dhYmxlUmVzaXplLmlzRHJhZ2dpbmc7XG4gIHJldHVybiAoXG4gICAgPFN0eWxlZERyYWdnYWJsZUxlZ2VuZENvbnRlbnRcbiAgICAgIHJlZj17cmVmc31cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NuYW1lcygnZHJhZ2dhYmxlLWxlZ2VuZCcsIHsnaXMtZHJhZ2dpbmcnOiBpc0RyYWdnaW5nfSl9XG4gICAgICBzdHlsZT17ey4uLnBvc2l0aW9uU3R5bGVzLCB0cmFuc2Zvcm06IENTUy5UcmFuc2xhdGUudG9TdHJpbmcoZHJhZ2dhYmxlTW92ZS50cmFuc2Zvcm0pfX1cbiAgICAgIGNvbnRlbnRIZWlnaHQ9e3Byb3BzLmNvbnRlbnRIZWlnaHR9XG4gICAgICB7Li4uZHJhZ2dhYmxlTW92ZS5hdHRyaWJ1dGVzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIHtpc0RyYWdnaW5nID8gPGRpdiBjbGFzc05hbWU9XCJsZWdlbmQtaW5wdXQtYmxvY2tcIiAvPiA6IG51bGx9XG4gICAgICA8U3R5bGVkTW92ZUhhbmRsZSBjbGFzc05hbWU9XCJsZWdlbmQtbW92ZS1oYW5kbGVcIiB7Li4uZHJhZ2dhYmxlTW92ZS5saXN0ZW5lcnN9PlxuICAgICAgICA8RHJhZ2dhYmxlRG90cyBoZWlnaHQ9XCIxNnB4XCIgLz5cbiAgICAgIDwvU3R5bGVkTW92ZUhhbmRsZT5cbiAgICAgIDxTdHlsZWRSZXNpemVIYW5kbGVcbiAgICAgICAgY2xhc3NOYW1lPVwibGVnZW5kLXJlc2l6ZS1oYW5kbGVcIlxuICAgICAgICByZWY9e2RyYWdnYWJsZVJlc2l6ZS5zZXROb2RlUmVmfVxuICAgICAgICB7Li4uZHJhZ2dhYmxlUmVzaXplLmxpc3RlbmVyc31cbiAgICAgID5cbiAgICAgICAgPEhvcml6b250YWxSZXNpemVIYW5kbGUgaGVpZ2h0PVwiMTZweFwiIC8+XG4gICAgICA8L1N0eWxlZFJlc2l6ZUhhbmRsZT5cbiAgICA8L1N0eWxlZERyYWdnYWJsZUxlZ2VuZENvbnRlbnQ+XG4gICk7XG59KTtcblxuY29uc3QgRHJhZ2dhYmxlTGVnZW5kID0gd2l0aFN0YXRlKFxuICBbXSxcbiAgc3RhdGUgPT4ge1xuICAgIGNvbnN0IHthY3RpdmVTaWRlUGFuZWwsIG1hcENvbnRyb2xzfSA9IHN0YXRlLmRlbW8ua2VwbGVyR2wubWFwLnVpU3RhdGU7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzU2lkZVBhbmVsU2hvd246IGFjdGl2ZVNpZGVQYW5lbCxcbiAgICAgIHNldHRpbmdzOiBtYXBDb250cm9scz8ubWFwTGVnZW5kPy5zZXR0aW5nc1xuICAgIH07XG4gIH0sXG4gIHtzZXRNYXBDb250cm9sU2V0dGluZ3N9XG4pKFxuICB3aXRoVGhlbWUoKHtpc1NpZGVQYW5lbFNob3duLCB0aGVtZSwgc2V0dGluZ3MsIHNldE1hcENvbnRyb2xTZXR0aW5ncywgY2hpbGRyZW59KSA9PiB7XG4gICAgY29uc3QgbGVnZW5kQ29udGVudFJlZiA9IHVzZVJlZjxIVE1MRWxlbWVudD4obnVsbCk7XG4gICAgY29uc3Qgb25DaGFuZ2VTZXR0aW5ncyA9IHVzZUNhbGxiYWNrKFxuICAgICAgbmV3U2V0dGluZ3MgPT4gc2V0TWFwQ29udHJvbFNldHRpbmdzKCdtYXBMZWdlbmQnLCBuZXdTZXR0aW5ncyksXG4gICAgICBbc2V0TWFwQ29udHJvbFNldHRpbmdzXVxuICAgICk7XG4gICAgY29uc3Qge3Bvc2l0aW9uU3R5bGVzLCB1cGRhdGVQb3NpdGlvbiwgc3RhcnRSZXNpemUsIHJlc2l6ZSwgY29udGVudEhlaWdodH0gPSB1c2VMZWdlbmRQb3NpdGlvbih7XG4gICAgICBsZWdlbmRDb250ZW50UmVmLFxuICAgICAgaXNTaWRlUGFuZWxTaG93bixcbiAgICAgIHRoZW1lLFxuICAgICAgc2V0dGluZ3MsXG4gICAgICBvbkNoYW5nZVNldHRpbmdzXG4gICAgfSk7XG5cbiAgICBjb25zdCBoYW5kbGVEcmFnU3RhcnQgPSB1c2VDYWxsYmFjayhcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgc3dpdGNoIChldmVudC5hY3RpdmUuaWQpIHtcbiAgICAgICAgICBjYXNlIERSQUdfUkVTSVpFX0lEOlxuICAgICAgICAgICAgc3RhcnRSZXNpemUoKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICB1cGRhdGVQb3NpdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgW3VwZGF0ZVBvc2l0aW9uLCBzdGFydFJlc2l6ZV1cbiAgICApO1xuICAgIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayh1cGRhdGVQb3NpdGlvbiwgW3VwZGF0ZVBvc2l0aW9uXSk7XG4gICAgY29uc3QgaGFuZGxlRHJhZ01vdmUgPSB1c2VDYWxsYmFjayhcbiAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgc3dpdGNoIChldmVudC5hY3RpdmUuaWQpIHtcbiAgICAgICAgICBjYXNlIERSQUdfUkVTSVpFX0lEOlxuICAgICAgICAgICAgcmVzaXplKGV2ZW50LmRlbHRhLnkpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbcmVzaXplXVxuICAgICk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPERuZENvbnRleHRcbiAgICAgICAgb25EcmFnU3RhcnQ9e2hhbmRsZURyYWdTdGFydH1cbiAgICAgICAgb25EcmFnTW92ZT17aGFuZGxlRHJhZ01vdmV9XG4gICAgICAgIG9uRHJhZ0VuZD17aGFuZGxlRHJhZ0VuZH1cbiAgICAgICAgbW9kaWZpZXJzPXtbcmVzdHJpY3RUb1dpbmRvd0VkZ2VzXX1cbiAgICAgID5cbiAgICAgICAgPERyYWdnYWJsZUxlZ2VuZENvbnRlbnRcbiAgICAgICAgICByZWY9e2xlZ2VuZENvbnRlbnRSZWZ9XG4gICAgICAgICAgcG9zaXRpb25TdHlsZXM9e3Bvc2l0aW9uU3R5bGVzfVxuICAgICAgICAgIGNvbnRlbnRIZWlnaHQ9e2NvbnRlbnRIZWlnaHR9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvRHJhZ2dhYmxlTGVnZW5kQ29udGVudD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICApO1xuICB9KVxuKSBhcyBGQzx7Y2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0+O1xuXG50eXBlIEltYWdlRXhwb3J0TGVnZW5kUHJvcHMgPSB7XG4gIHNldHRpbmdzOiBNYXBMZWdlbmRDb250cm9sU2V0dGluZ3M7XG4gIGlzU2lkZVBhbmVsU2hvd246IGJvb2xlYW47XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG59O1xuXG5jb25zdCBJbWFnZUV4cG9ydExlZ2VuZCA9IHdpdGhUaGVtZSgoe3NldHRpbmdzLCBpc1NpZGVQYW5lbFNob3duLCB0aGVtZSwgY2hpbGRyZW59KSA9PiB7XG4gIGNvbnN0IGNvbnRhaW5lclJlZjogUmVhY3QuTXV0YWJsZVJlZk9iamVjdDxIVE1MRGl2RWxlbWVudCB8IG51bGw+ID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBsZWdlbmRDb250ZW50UmVmOiBSZWFjdC5NdXRhYmxlUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50IHwgbnVsbD4gPSB1c2VSZWYobnVsbCk7XG5cbiAgY29uc3Qge3Bvc2l0aW9uU3R5bGVzfSA9IHVzZUxlZ2VuZFBvc2l0aW9uKHtcbiAgICBsZWdlbmRDb250ZW50UmVmLFxuICAgIGlzU2lkZVBhbmVsU2hvd24sXG4gICAgdGhlbWUsXG4gICAgc2V0dGluZ3MsXG4gICAgb25DaGFuZ2VTZXR0aW5nczogKCkgPT4ge1xuICAgICAgLy8gZG8gbm90aGluZyBieSBkZWZhdWx0XG4gICAgfVxuICB9KTtcblxuICBjb25zdCBwb3J0YWxSb290ID0gY29udGFpbmVyUmVmLmN1cnJlbnRcbiAgICA/LmNsb3Nlc3QoJy5leHBvcnQtbWFwLWluc3RhbmNlJylcbiAgICA/LnF1ZXJ5U2VsZWN0b3IoJyNkZWZhdWx0LWRlY2tnbC1vdmVybGF5LXdyYXBwZXInKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtjb250YWluZXJSZWZ9PlxuICAgICAge3BvcnRhbFJvb3RcbiAgICAgICAgPyBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImZpeGVkLWxlZ2VuZFwiXG4gICAgICAgICAgICAgIHJlZj17bGVnZW5kQ29udGVudFJlZn1cbiAgICAgICAgICAgICAgc3R5bGU9e3suLi5wb3NpdGlvblN0eWxlcywgcG9zaXRpb246ICdhYnNvbHV0ZSd9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8L2Rpdj4sXG4gICAgICAgICAgICBwb3J0YWxSb290XG4gICAgICAgICAgKVxuICAgICAgICA6IG51bGx9XG4gICAgPC9kaXY+XG4gICk7XG59KSBhcyBSZWFjdC5GQzxJbWFnZUV4cG9ydExlZ2VuZFByb3BzPjtcblxuTWFwTGVnZW5kUGFuZWxGYWN0b3J5LmRlcHMgPSBbTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5LCBNYXBDb250cm9sUGFuZWxGYWN0b3J5LCBNYXBMZWdlbmRGYWN0b3J5XTtcblxuaW50ZXJmYWNlIE1hcExlZ2VuZFBhbmVsSWNvbnMge1xuICBsZWdlbmQ6IENvbXBvbmVudFR5cGU8YW55Pjtcbn1cblxuZXhwb3J0IHR5cGUgTWFwTGVnZW5kUGFuZWxQcm9wcyA9IHtcbiAgdGhlbWU6IGFueTtcbiAgbGF5ZXJzOiBSZWFkb25seUFycmF5PExheWVyPjtcbiAgc2NhbGU6IG51bWJlcjtcbiAgb25Ub2dnbGVNYXBDb250cm9sOiAoY29udHJvbDogc3RyaW5nKSA9PiB2b2lkO1xuICBpc0V4cG9ydDogYm9vbGVhbjtcbiAgbG9nb0NvbXBvbmVudDogRWxlbWVudDtcbiAgYWN0aW9uSWNvbnM6IE1hcExlZ2VuZFBhbmVsSWNvbnM7XG4gIG1hcENvbnRyb2xzOiBNYXBDb250cm9scztcbiAgbWFwU3RhdGU/OiBNYXBTdGF0ZTtcbiAgb25MYXllclZpc0NvbmZpZ0NoYW5nZT86IChvbGRMYXllcjogTGF5ZXIsIG5ld1Zpc0NvbmZpZzogUGFydGlhbDxMYXllclZpc0NvbmZpZz4pID0+IHZvaWQ7XG4gIG9uVG9nZ2xlU3BsaXRNYXBWaWV3cG9ydD86IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHRvZ2dsZVNwbGl0TWFwVmlld3BvcnQ+O1xuICBpc1ZpZXdwb3J0VW5zeW5jQWxsb3dlZD86IGJvb2xlYW47XG4gIG9uQ2xpY2tDb250cm9sQnRuPzogKGU/OiBNb3VzZUV2ZW50KSA9PiB2b2lkO1xuICBjbGFzc05hbWU6IHN0cmluZztcbiAgc2V0dGluZ3M6IE1hcExlZ2VuZENvbnRyb2xTZXR0aW5ncztcbiAgaXNTaWRlUGFuZWxTaG93bjogYm9vbGVhbjtcbn07XG5cbnR5cGUgTWFwTGVnZW5kUGFuZWxDb21wb25lbnRUeXBlID0gUmVhY3QuRkM8TWFwTGVnZW5kUGFuZWxQcm9wcz47XG5cbmNvbnN0IGRlZmF1bHRBY3Rpb25JY29ucyA9IHtcbiAgbGVnZW5kOiBMZWdlbmRcbn07XG5cbmNvbnN0IE1hcExlZ2VuZFBhbmVsQ29tcG9uZW50ID0gKHtcbiAgbGF5ZXJzLFxuICBtYXBDb250cm9scyxcbiAgc2NhbGUsXG4gIG9uVG9nZ2xlTWFwQ29udHJvbCxcbiAgaXNFeHBvcnQsXG4gIGxvZ29Db21wb25lbnQsXG4gIGFjdGlvbkljb25zID0gZGVmYXVsdEFjdGlvbkljb25zLFxuICBtYXBTdGF0ZSxcbiAgb25MYXllclZpc0NvbmZpZ0NoYW5nZSxcbiAgb25Ub2dnbGVTcGxpdE1hcFZpZXdwb3J0LFxuICBvbkNsaWNrQ29udHJvbEJ0bixcbiAgaXNWaWV3cG9ydFVuc3luY0FsbG93ZWQgPSB0cnVlLFxuICBjbGFzc05hbWUsXG4gIGludGVyYWN0aW9uQ29uZmlnLFxuICBzZXR0aW5ncyxcbiAgaXNTaWRlUGFuZWxTaG93bixcbiAgTWFwQ29udHJvbFRvb2x0aXAsXG4gIE1hcENvbnRyb2xQYW5lbCxcbiAgTWFwTGVnZW5kXG59KSA9PiB7XG4gIGNvbnN0IG1hcExlZ2VuZCA9IG1hcENvbnRyb2xzPy5tYXBMZWdlbmQgfHwgKHt9IGFzIE1hcENvbnRyb2xNYXBMZWdlbmQpO1xuICBjb25zdCB7YWN0aXZlLCBkaXNhYmxlRWRpdH0gPSBtYXBMZWdlbmQgfHwge307XG4gIGNvbnN0IHJvb3RDb250ZXh0ID0gdXNlQ29udGV4dChSb290Q29udGV4dCk7XG5cbiAgY29uc3Qgb25DbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBvbkNsaWNrQ29udHJvbEJ0bj8uKCk7XG4gICAgaWYgKG1hcENvbnRyb2xzPy5tYXBEcmF3Py5hY3RpdmUpIHtcbiAgICAgIG9uVG9nZ2xlTWFwQ29udHJvbCgnbWFwRHJhdycpO1xuICAgIH1cbiAgICBvblRvZ2dsZU1hcENvbnRyb2woJ21hcExlZ2VuZCcpO1xuICB9LCBbb25DbGlja0NvbnRyb2xCdG4sIG9uVG9nZ2xlTWFwQ29udHJvbCwgbWFwQ29udHJvbHNdKTtcbiAgY29uc3Qgb25DbG9zZUNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBvblRvZ2dsZU1hcENvbnRyb2woJ21hcExlZ2VuZCcpO1xuICAgIH0sXG4gICAgW29uVG9nZ2xlTWFwQ29udHJvbF1cbiAgKTtcblxuICBpZiAoIW1hcExlZ2VuZC5zaG93KSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCBsZWdlbmRQYW5lbCA9IGFjdGl2ZSA/IChcbiAgICA8TWFwQ29udHJvbFBhbmVsXG4gICAgICBzY2FsZT17c2NhbGV9XG4gICAgICBoZWFkZXI9XCJoZWFkZXIubGF5ZXJMZWdlbmRcIlxuICAgICAgey4uLntvbkNsaWNrOiBvbkNsb3NlQ2xpY2ssIHBpbm5hYmxlOiBmYWxzZSwgZGlzYWJsZUNsb3NlOiBmYWxzZX19XG4gICAgICBpc0V4cG9ydD17aXNFeHBvcnR9XG4gICAgICBsb2dvQ29tcG9uZW50PXtsb2dvQ29tcG9uZW50fVxuICAgICAgbWFwU3RhdGU9e21hcFN0YXRlfVxuICAgICAgb25Ub2dnbGVTcGxpdE1hcFZpZXdwb3J0PXtvblRvZ2dsZVNwbGl0TWFwVmlld3BvcnR9XG4gICAgICBpc1ZpZXdwb3J0VW5zeW5jQWxsb3dlZD17aXNWaWV3cG9ydFVuc3luY0FsbG93ZWR9XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICA+XG4gICAgICA8TWFwTGVnZW5kXG4gICAgICAgIGxheWVycz17bGF5ZXJzfVxuICAgICAgICBtYXBTdGF0ZT17bWFwU3RhdGV9XG4gICAgICAgIGRpc2FibGVFZGl0PXtkaXNhYmxlRWRpdH1cbiAgICAgICAgaXNFeHBvcnQ9e2lzRXhwb3J0fVxuICAgICAgICBvbkxheWVyVmlzQ29uZmlnQ2hhbmdlPXtvbkxheWVyVmlzQ29uZmlnQ2hhbmdlfVxuICAgICAgLz5cbiAgICA8L01hcENvbnRyb2xQYW5lbD5cbiAgKSA6IG51bGw7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge2FjdGl2ZSA/IChcbiAgICAgICAgaGFzUG9ydGFibGVXaWR0aChicmVha1BvaW50VmFsdWVzKSA/IChcbiAgICAgICAgICBsZWdlbmRQYW5lbFxuICAgICAgICApIDogaXNFeHBvcnQgPyAoXG4gICAgICAgICAgPEltYWdlRXhwb3J0TGVnZW5kIGlzU2lkZVBhbmVsU2hvd249e2lzU2lkZVBhbmVsU2hvd259IHNldHRpbmdzPXtzZXR0aW5nc30+XG4gICAgICAgICAgICB7bGVnZW5kUGFuZWx9XG4gICAgICAgICAgPC9JbWFnZUV4cG9ydExlZ2VuZD5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICBjcmVhdGVQb3J0YWwoXG4gICAgICAgICAgICA8RHJhZ2dhYmxlTGVnZW5kPntsZWdlbmRQYW5lbH08L0RyYWdnYWJsZUxlZ2VuZD4sXG4gICAgICAgICAgICByb290Q29udGV4dD8uY3VycmVudCA/PyBkb2N1bWVudC5ib2R5XG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApIDogbnVsbH1cbiAgICAgIHshaXNFeHBvcnQgPyAoXG4gICAgICAgIDxNYXBDb250cm9sVG9vbHRpcCBpZD1cInNob3ctbGVnZW5kXCIgbWVzc2FnZT1cInRvb2x0aXAuc2hvd0xlZ2VuZFwiPlxuICAgICAgICAgIDxNYXBDb250cm9sQnV0dG9uIGNsYXNzTmFtZT1cIm1hcC1jb250cm9sLWJ1dHRvbiBzaG93LWxlZ2VuZFwiIG9uQ2xpY2s9e29uQ2xpY2t9PlxuICAgICAgICAgICAgPGFjdGlvbkljb25zLmxlZ2VuZCBoZWlnaHQ9XCIyMnB4XCIgLz5cbiAgICAgICAgICA8L01hcENvbnRyb2xCdXR0b24+XG4gICAgICAgIDwvTWFwQ29udHJvbFRvb2x0aXA+XG4gICAgICApIDogbnVsbH1cbiAgICA8Lz5cbiAgKTtcbn07XG5cbmZ1bmN0aW9uIE1hcExlZ2VuZFBhbmVsRmFjdG9yeShcbiAgTWFwQ29udHJvbFRvb2x0aXA6IFJldHVyblR5cGU8dHlwZW9mIE1hcENvbnRyb2xUb29sdGlwRmFjdG9yeT4sXG4gIE1hcENvbnRyb2xQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwQ29udHJvbFBhbmVsRmFjdG9yeT4sXG4gIE1hcExlZ2VuZDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwTGVnZW5kRmFjdG9yeT5cbik6IE1hcExlZ2VuZFBhbmVsQ29tcG9uZW50VHlwZSB7XG4gIGNvbnN0IE1hcExlZ2VuZFBhbmVsID0gd2l0aFN0YXRlKFxuICAgIFtdLFxuICAgIHN0YXRlID0+IHtcbiAgICAgIGNvbnN0IHthY3RpdmVTaWRlUGFuZWwsIG1hcENvbnRyb2xzfSA9IHN0YXRlLmRlbW8/LmtlcGxlckdsLm1hcC51aVN0YXRlID8/IHt9O1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXNTaWRlUGFuZWxTaG93bjogYWN0aXZlU2lkZVBhbmVsLFxuICAgICAgICBzZXR0aW5nczogbWFwQ29udHJvbHM/Lm1hcExlZ2VuZD8uc2V0dGluZ3MsXG4gICAgICAgIE1hcENvbnRyb2xUb29sdGlwLFxuICAgICAgICBNYXBDb250cm9sUGFuZWwsXG4gICAgICAgIE1hcExlZ2VuZFxuICAgICAgfTtcbiAgICB9LFxuICAgIHtzZXRNYXBDb250cm9sU2V0dGluZ3N9XG4gICkoTWFwTGVnZW5kUGFuZWxDb21wb25lbnQpO1xuXG4gIE1hcExlZ2VuZFBhbmVsLmRpc3BsYXlOYW1lID0gJ01hcExlZ2VuZFBhbmVsJztcbiAgcmV0dXJuIHdpdGhUaGVtZShNYXBMZWdlbmRQYW5lbCBhcyBNYXBMZWdlbmRQYW5lbENvbXBvbmVudFR5cGUpIGFzIE1hcExlZ2VuZFBhbmVsQ29tcG9uZW50VHlwZTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTWFwTGVnZW5kUGFuZWxGYWN0b3J5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUdBLElBQUFBLFdBQUEsR0FBQUMsc0JB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
261
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0RG9tIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9jb3JlIiwiX3V0aWxpdGllcyIsIl9yZWFjdDIiLCJfYWN0aW9ucyIsIl9yZWR1Y2VycyIsIl9zdHlsZXMiLCJfdXRpbHMiLCJfaWNvbnMiLCJfc3R5bGVkQ29tcG9uZW50czIiLCJfY29udGV4dCIsIl91c2VMZWdlbmRQb3NpdGlvbjMiLCJfaW5qZWN0b3IiLCJfbWFwQ29udHJvbFBhbmVsIiwiX21hcENvbnRyb2xUb29sdGlwIiwiX21hcExlZ2VuZCIsIl9tb2RpZmllcnMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIm93bktleXMiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsIkRSQUdfUkVTSVpFX0lEIiwiRFJBR19NT1ZFX0lEIiwiU3R5bGVkRHJhZ2dhYmxlTGVnZW5kQ29udGVudCIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsImFjdGl2ZUNvbG9yIiwiY29udGVudEhlaWdodCIsImNvbmNhdCIsIlN0eWxlZE1vdmVIYW5kbGUiLCJTdHlsZWRSZXNpemVIYW5kbGUiLCJEcmFnZ2FibGVMZWdlbmRDb250ZW50IiwiZm9yd2FyZFJlZiIsInJlZiIsInBvc2l0aW9uU3R5bGVzIiwiY2hpbGRyZW4iLCJkcmFnZ2FibGVNb3ZlIiwidXNlRHJhZ2dhYmxlIiwiaWQiLCJkcmFnZ2FibGVSZXNpemUiLCJyZWZzIiwidXNlTWVyZ2VSZWZzIiwic2V0Tm9kZVJlZiIsImlzRHJhZ2dpbmciLCJjcmVhdGVFbGVtZW50IiwiX2V4dGVuZHMyIiwiY2xhc3NOYW1lIiwiY2xhc3NuYW1lcyIsInN0eWxlIiwidHJhbnNmb3JtIiwiQ1NTIiwiVHJhbnNsYXRlIiwidG9TdHJpbmciLCJhdHRyaWJ1dGVzIiwibGlzdGVuZXJzIiwiRHJhZ2dhYmxlRG90cyIsImhlaWdodCIsIkhvcml6b250YWxSZXNpemVIYW5kbGUiLCJEcmFnZ2FibGVMZWdlbmQiLCJ3aXRoU3RhdGUiLCJ1aVN0YXRlTGVucyIsInN0YXRlIiwic2V0TWFwQ29udHJvbFNldHRpbmdzIiwid2l0aFRoZW1lIiwiX3JlZiIsIl91aVN0YXRlJG1hcENvbnRyb2xzIiwidWlTdGF0ZSIsImlzU2lkZVBhbmVsU2hvd24iLCJhY3RpdmVTaWRlUGFuZWwiLCJzZXR0aW5ncyIsIm1hcENvbnRyb2xzIiwibWFwTGVnZW5kIiwibGVnZW5kQ29udGVudFJlZiIsInVzZVJlZiIsIm9uQ2hhbmdlU2V0dGluZ3MiLCJ1c2VDYWxsYmFjayIsIm5ld1NldHRpbmdzIiwiX3VzZUxlZ2VuZFBvc2l0aW9uIiwidXNlTGVnZW5kUG9zaXRpb24iLCJ1cGRhdGVQb3NpdGlvbiIsInN0YXJ0UmVzaXplIiwicmVzaXplIiwiaGFuZGxlRHJhZ1N0YXJ0IiwiZXZlbnQiLCJhY3RpdmUiLCJoYW5kbGVEcmFnRW5kIiwiaGFuZGxlRHJhZ01vdmUiLCJkZWx0YSIsInkiLCJEbmRDb250ZXh0Iiwib25EcmFnU3RhcnQiLCJvbkRyYWdNb3ZlIiwib25EcmFnRW5kIiwibW9kaWZpZXJzIiwicmVzdHJpY3RUb1dpbmRvd0VkZ2VzIiwiSW1hZ2VFeHBvcnRMZWdlbmQiLCJfcmVmMiIsIl9jb250YWluZXJSZWYkY3VycmVudCIsImNvbnRhaW5lclJlZiIsIl91c2VMZWdlbmRQb3NpdGlvbjIiLCJwb3J0YWxSb290IiwiY3VycmVudCIsImNsb3Nlc3QiLCJxdWVyeVNlbGVjdG9yIiwiY3JlYXRlUG9ydGFsIiwicG9zaXRpb24iLCJNYXBMZWdlbmRQYW5lbEZhY3RvcnkiLCJkZXBzIiwiTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5IiwiTWFwQ29udHJvbFBhbmVsRmFjdG9yeSIsIk1hcExlZ2VuZEZhY3RvcnkiLCJkZWZhdWx0QWN0aW9uSWNvbnMiLCJsZWdlbmQiLCJMZWdlbmQiLCJNYXBMZWdlbmRQYW5lbENvbXBvbmVudCIsIl9yZWYzIiwiX3VpU3RhdGUkbWFwQ29udHJvbHMyIiwiX3Jvb3RDb250ZXh0JGN1cnJlbnQiLCJsYXllcnMiLCJzY2FsZSIsIm9uVG9nZ2xlTWFwQ29udHJvbCIsImlzRXhwb3J0IiwibG9nb0NvbXBvbmVudCIsIl9yZWYzJGFjdGlvbkljb25zIiwiYWN0aW9uSWNvbnMiLCJtYXBTdGF0ZSIsIm9uTGF5ZXJWaXNDb25maWdDaGFuZ2UiLCJvblRvZ2dsZVNwbGl0TWFwVmlld3BvcnQiLCJvbkNsaWNrQ29udHJvbEJ0biIsIl9yZWYzJGlzVmlld3BvcnRVbnN5biIsImlzVmlld3BvcnRVbnN5bmNBbGxvd2VkIiwiaW50ZXJhY3Rpb25Db25maWciLCJNYXBDb250cm9sVG9vbHRpcCIsIk1hcENvbnRyb2xQYW5lbCIsIk1hcExlZ2VuZCIsIl9yZWY0IiwiZGlzYWJsZUVkaXQiLCJyb290Q29udGV4dCIsInVzZUNvbnRleHQiLCJSb290Q29udGV4dCIsIm9uQ2xpY2siLCJfbWFwQ29udHJvbHMkbWFwRHJhdyIsIm1hcERyYXciLCJvbkNsb3NlQ2xpY2siLCJwcmV2ZW50RGVmYXVsdCIsInNob3ciLCJsZWdlbmRQYW5lbCIsImhlYWRlciIsInBpbm5hYmxlIiwiZGlzYWJsZUNsb3NlIiwiRnJhZ21lbnQiLCJoYXNQb3J0YWJsZVdpZHRoIiwiYnJlYWtQb2ludFZhbHVlcyIsImRvY3VtZW50IiwiYm9keSIsIm1lc3NhZ2UiLCJNYXBDb250cm9sQnV0dG9uIiwiTWFwTGVnZW5kUGFuZWwiLCJkaXNwbGF5TmFtZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXAvbWFwLWxlZ2VuZC1wYW5lbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQge2NyZWF0ZVBvcnRhbH0gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudFR5cGUsIEZDLCBmb3J3YXJkUmVmLCB1c2VDYWxsYmFjaywgdXNlQ29udGV4dCwgdXNlUmVmfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkLCB7d2l0aFRoZW1lfSBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCB7RG5kQ29udGV4dCwgdXNlRHJhZ2dhYmxlfSBmcm9tICdAZG5kLWtpdC9jb3JlJztcbmltcG9ydCB7Q1NTfSBmcm9tICdAZG5kLWtpdC91dGlsaXRpZXMnO1xuaW1wb3J0IHt1c2VNZXJnZVJlZnN9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdCc7XG5cbmltcG9ydCB7QWN0aW9uSGFuZGxlciwgc2V0TWFwQ29udHJvbFNldHRpbmdzLCB0b2dnbGVTcGxpdE1hcFZpZXdwb3J0fSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuaW1wb3J0IHtMYXllcn0gZnJvbSAnQGtlcGxlci5nbC9sYXllcnMnO1xuaW1wb3J0IHt1aVN0YXRlTGVuc30gZnJvbSAnQGtlcGxlci5nbC9yZWR1Y2Vycyc7XG5pbXBvcnQge2JyZWFrUG9pbnRWYWx1ZXN9IGZyb20gJ0BrZXBsZXIuZ2wvc3R5bGVzJztcbmltcG9ydCB7TGF5ZXJWaXNDb25maWcsIE1hcENvbnRyb2xNYXBMZWdlbmQsIE1hcENvbnRyb2xzLCBNYXBTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge2hhc1BvcnRhYmxlV2lkdGh9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuXG5pbXBvcnQge0xlZ2VuZCwgRHJhZ2dhYmxlRG90cywgSG9yaXpvbnRhbFJlc2l6ZUhhbmRsZX0gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcbmltcG9ydCB7TWFwQ29udHJvbEJ1dHRvbn0gZnJvbSAnLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7Um9vdENvbnRleHR9IGZyb20gJy4uL2NvbnRleHQnO1xuaW1wb3J0IHVzZUxlZ2VuZFBvc2l0aW9uLCB7TWFwTGVnZW5kQ29udHJvbFNldHRpbmdzfSBmcm9tICcuLi9ob29rcy91c2UtbGVnZW5kLXBvc2l0aW9uJztcbmltcG9ydCB7d2l0aFN0YXRlfSBmcm9tICcuLi9pbmplY3Rvcic7XG5pbXBvcnQgTWFwQ29udHJvbFBhbmVsRmFjdG9yeSBmcm9tICcuL21hcC1jb250cm9sLXBhbmVsJztcbmltcG9ydCBNYXBDb250cm9sVG9vbHRpcEZhY3RvcnkgZnJvbSAnLi9tYXAtY29udHJvbC10b29sdGlwJztcbmltcG9ydCBNYXBMZWdlbmRGYWN0b3J5IGZyb20gJy4vbWFwLWxlZ2VuZCc7XG5pbXBvcnQge3Jlc3RyaWN0VG9XaW5kb3dFZGdlc30gZnJvbSAnQGRuZC1raXQvbW9kaWZpZXJzJztcblxuY29uc3QgRFJBR19SRVNJWkVfSUQgPSAnbWFwLWxlZ2VuZC1yZXNpemUnO1xuY29uc3QgRFJBR19NT1ZFX0lEID0gJ21hcC1sZWdlbmQtbW92ZSc7XG5cbmNvbnN0IFN0eWxlZERyYWdnYWJsZUxlZ2VuZENvbnRlbnQgPSBzdHlsZWQuZGl2PHtjb250ZW50SGVpZ2h0PzogbnVtYmVyfT5gXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAubGVnZW5kLWlucHV0LWJsb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICYuaXMtZHJhZ2dpbmcgLmxlZ2VuZC1pbnB1dC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmOmhvdmVyLFxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICAubGVnZW5kLW1vdmUtaGFuZGxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG4gICAgLmxlZ2VuZC1yZXNpemUtaGFuZGxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgfVxuICAubWFwLWNvbnRyb2xfX3BhbmVsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XG4gICAgJHtwcm9wcyA9PiAocHJvcHMuY29udGVudEhlaWdodCA/IGBoZWlnaHQ6ICR7cHJvcHMuY29udGVudEhlaWdodH1weDtgIDogJycpfTtcbiAgfVxuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHotaW5kZXg6IDI7XG4gIC5tYXAtY29udHJvbC1wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRNb3ZlSGFuZGxlID0gc3R5bGVkLmRpdmBcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjdXJzb3I6IG1vdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYWN0aXZlQ29sb3J9O1xuYDtcblxuY29uc3QgU3R5bGVkUmVzaXplSGFuZGxlID0gc3R5bGVkLmRpdmBcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2Y3ZjhmYTtcbiAgei1pbmRleDogMjtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogbnMtcmVzaXplO1xuYDtcblxuZXhwb3J0IHR5cGUgTWFwTGVnZW5kUGFuZWxGYWN0b3J5RGVwcyA9IFtcbiAgdHlwZW9mIE1hcENvbnRyb2xUb29sdGlwRmFjdG9yeSxcbiAgdHlwZW9mIE1hcENvbnRyb2xQYW5lbEZhY3RvcnksXG4gIHR5cGVvZiBNYXBMZWdlbmRGYWN0b3J5XG5dO1xuXG50eXBlIERyYWdnYWJsZUxlZ2VuZENvbnRlbnRQcm9wcyA9IHtcbiAgY29udGVudEhlaWdodD86IG51bWJlcjtcbiAgcG9zaXRpb25TdHlsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufTtcblxuY29uc3QgRHJhZ2dhYmxlTGVnZW5kQ29udGVudCA9IGZvcndhcmRSZWYoKHByb3BzOiBEcmFnZ2FibGVMZWdlbmRDb250ZW50UHJvcHMsIHJlZikgPT4ge1xuICBjb25zdCB7cG9zaXRpb25TdHlsZXMsIGNoaWxkcmVufSA9IHByb3BzO1xuICBjb25zdCBkcmFnZ2FibGVNb3ZlID0gdXNlRHJhZ2dhYmxlKHtpZDogRFJBR19NT1ZFX0lEfSk7XG4gIGNvbnN0IGRyYWdnYWJsZVJlc2l6ZSA9IHVzZURyYWdnYWJsZSh7aWQ6IERSQUdfUkVTSVpFX0lEfSk7XG4gIGNvbnN0IHJlZnMgPSB1c2VNZXJnZVJlZnMoW2RyYWdnYWJsZU1vdmUuc2V0Tm9kZVJlZiwgcmVmXSk7XG4gIGNvbnN0IGlzRHJhZ2dpbmcgPSBkcmFnZ2FibGVNb3ZlLmlzRHJhZ2dpbmcgfHwgZHJhZ2dhYmxlUmVzaXplLmlzRHJhZ2dpbmc7XG4gIHJldHVybiAoXG4gICAgPFN0eWxlZERyYWdnYWJsZUxlZ2VuZENvbnRlbnRcbiAgICAgIHJlZj17cmVmc31cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NuYW1lcygnZHJhZ2dhYmxlLWxlZ2VuZCcsIHsnaXMtZHJhZ2dpbmcnOiBpc0RyYWdnaW5nfSl9XG4gICAgICBzdHlsZT17ey4uLnBvc2l0aW9uU3R5bGVzLCB0cmFuc2Zvcm06IENTUy5UcmFuc2xhdGUudG9TdHJpbmcoZHJhZ2dhYmxlTW92ZS50cmFuc2Zvcm0pfX1cbiAgICAgIGNvbnRlbnRIZWlnaHQ9e3Byb3BzLmNvbnRlbnRIZWlnaHR9XG4gICAgICB7Li4uZHJhZ2dhYmxlTW92ZS5hdHRyaWJ1dGVzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIHtpc0RyYWdnaW5nID8gPGRpdiBjbGFzc05hbWU9XCJsZWdlbmQtaW5wdXQtYmxvY2tcIiAvPiA6IG51bGx9XG4gICAgICA8U3R5bGVkTW92ZUhhbmRsZSBjbGFzc05hbWU9XCJsZWdlbmQtbW92ZS1oYW5kbGVcIiB7Li4uZHJhZ2dhYmxlTW92ZS5saXN0ZW5lcnN9PlxuICAgICAgICA8RHJhZ2dhYmxlRG90cyBoZWlnaHQ9XCIxNnB4XCIgLz5cbiAgICAgIDwvU3R5bGVkTW92ZUhhbmRsZT5cbiAgICAgIDxTdHlsZWRSZXNpemVIYW5kbGVcbiAgICAgICAgY2xhc3NOYW1lPVwibGVnZW5kLXJlc2l6ZS1oYW5kbGVcIlxuICAgICAgICByZWY9e2RyYWdnYWJsZVJlc2l6ZS5zZXROb2RlUmVmfVxuICAgICAgICB7Li4uZHJhZ2dhYmxlUmVzaXplLmxpc3RlbmVyc31cbiAgICAgID5cbiAgICAgICAgPEhvcml6b250YWxSZXNpemVIYW5kbGUgaGVpZ2h0PVwiMTZweFwiIC8+XG4gICAgICA8L1N0eWxlZFJlc2l6ZUhhbmRsZT5cbiAgICA8L1N0eWxlZERyYWdnYWJsZUxlZ2VuZENvbnRlbnQ+XG4gICk7XG59KTtcblxuY29uc3QgRHJhZ2dhYmxlTGVnZW5kID0gd2l0aFN0YXRlKFt1aVN0YXRlTGVuc10sIHN0YXRlID0+IHN0YXRlLCB7c2V0TWFwQ29udHJvbFNldHRpbmdzfSkoXG4gIHdpdGhUaGVtZSgoe3VpU3RhdGUsIHRoZW1lLCBzZXRNYXBDb250cm9sU2V0dGluZ3MsIGNoaWxkcmVufSkgPT4ge1xuICAgIGNvbnN0IGlzU2lkZVBhbmVsU2hvd24gPSB1aVN0YXRlLmFjdGl2ZVNpZGVQYW5lbDtcbiAgICBjb25zdCBzZXR0aW5ncyA9IHVpU3RhdGUubWFwQ29udHJvbHM/Lm1hcExlZ2VuZD8uc2V0dGluZ3M7XG5cbiAgICBjb25zdCBsZWdlbmRDb250ZW50UmVmID0gdXNlUmVmPEhUTUxFbGVtZW50PihudWxsKTtcbiAgICBjb25zdCBvbkNoYW5nZVNldHRpbmdzID0gdXNlQ2FsbGJhY2soXG4gICAgICBuZXdTZXR0aW5ncyA9PiBzZXRNYXBDb250cm9sU2V0dGluZ3MoJ21hcExlZ2VuZCcsIG5ld1NldHRpbmdzKSxcbiAgICAgIFtzZXRNYXBDb250cm9sU2V0dGluZ3NdXG4gICAgKTtcbiAgICBjb25zdCB7cG9zaXRpb25TdHlsZXMsIHVwZGF0ZVBvc2l0aW9uLCBzdGFydFJlc2l6ZSwgcmVzaXplLCBjb250ZW50SGVpZ2h0fSA9IHVzZUxlZ2VuZFBvc2l0aW9uKHtcbiAgICAgIGxlZ2VuZENvbnRlbnRSZWYsXG4gICAgICBpc1NpZGVQYW5lbFNob3duLFxuICAgICAgdGhlbWUsXG4gICAgICBzZXR0aW5ncyxcbiAgICAgIG9uQ2hhbmdlU2V0dGluZ3NcbiAgICB9KTtcblxuICAgIGNvbnN0IGhhbmRsZURyYWdTdGFydCA9IHVzZUNhbGxiYWNrKFxuICAgICAgZXZlbnQgPT4ge1xuICAgICAgICBzd2l0Y2ggKGV2ZW50LmFjdGl2ZS5pZCkge1xuICAgICAgICAgIGNhc2UgRFJBR19SRVNJWkVfSUQ6XG4gICAgICAgICAgICBzdGFydFJlc2l6ZSgpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbdXBkYXRlUG9zaXRpb24sIHN0YXJ0UmVzaXplXVxuICAgICk7XG4gICAgY29uc3QgaGFuZGxlRHJhZ0VuZCA9IHVzZUNhbGxiYWNrKHVwZGF0ZVBvc2l0aW9uLCBbdXBkYXRlUG9zaXRpb25dKTtcbiAgICBjb25zdCBoYW5kbGVEcmFnTW92ZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgZXZlbnQgPT4ge1xuICAgICAgICBzd2l0Y2ggKGV2ZW50LmFjdGl2ZS5pZCkge1xuICAgICAgICAgIGNhc2UgRFJBR19SRVNJWkVfSUQ6XG4gICAgICAgICAgICByZXNpemUoZXZlbnQuZGVsdGEueSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFtyZXNpemVdXG4gICAgKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8RG5kQ29udGV4dFxuICAgICAgICBvbkRyYWdTdGFydD17aGFuZGxlRHJhZ1N0YXJ0fVxuICAgICAgICBvbkRyYWdNb3ZlPXtoYW5kbGVEcmFnTW92ZX1cbiAgICAgICAgb25EcmFnRW5kPXtoYW5kbGVEcmFnRW5kfVxuICAgICAgICBtb2RpZmllcnM9e1tyZXN0cmljdFRvV2luZG93RWRnZXNdfVxuICAgICAgPlxuICAgICAgICA8RHJhZ2dhYmxlTGVnZW5kQ29udGVudFxuICAgICAgICAgIHJlZj17bGVnZW5kQ29udGVudFJlZn1cbiAgICAgICAgICBwb3NpdGlvblN0eWxlcz17cG9zaXRpb25TdHlsZXN9XG4gICAgICAgICAgY29udGVudEhlaWdodD17Y29udGVudEhlaWdodH1cbiAgICAgICAgPlxuICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9EcmFnZ2FibGVMZWdlbmRDb250ZW50PlxuICAgICAgPC9EbmRDb250ZXh0PlxuICAgICk7XG4gIH0pXG4pIGFzIEZDPHtjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlfT47XG5cbnR5cGUgSW1hZ2VFeHBvcnRMZWdlbmRQcm9wcyA9IHtcbiAgc2V0dGluZ3M6IE1hcExlZ2VuZENvbnRyb2xTZXR0aW5ncztcbiAgaXNTaWRlUGFuZWxTaG93bjogYm9vbGVhbjtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbn07XG5cbmNvbnN0IEltYWdlRXhwb3J0TGVnZW5kID0gd2l0aFRoZW1lKCh7c2V0dGluZ3MsIGlzU2lkZVBhbmVsU2hvd24sIHRoZW1lLCBjaGlsZHJlbn0pID0+IHtcbiAgY29uc3QgY29udGFpbmVyUmVmOiBSZWFjdC5NdXRhYmxlUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50IHwgbnVsbD4gPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IGxlZ2VuZENvbnRlbnRSZWY6IFJlYWN0Lk11dGFibGVSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQgfCBudWxsPiA9IHVzZVJlZihudWxsKTtcblxuICBjb25zdCB7cG9zaXRpb25TdHlsZXN9ID0gdXNlTGVnZW5kUG9zaXRpb24oe1xuICAgIGxlZ2VuZENvbnRlbnRSZWYsXG4gICAgaXNTaWRlUGFuZWxTaG93bixcbiAgICB0aGVtZSxcbiAgICBzZXR0aW5ncyxcbiAgICBvbkNoYW5nZVNldHRpbmdzOiAoKSA9PiB7XG4gICAgICAvLyBkbyBub3RoaW5nIGJ5IGRlZmF1bHRcbiAgICB9XG4gIH0pO1xuXG4gIGNvbnN0IHBvcnRhbFJvb3QgPSBjb250YWluZXJSZWYuY3VycmVudFxuICAgID8uY2xvc2VzdCgnLmV4cG9ydC1tYXAtaW5zdGFuY2UnKVxuICAgID8ucXVlcnlTZWxlY3RvcignI2RlZmF1bHQtZGVja2dsLW92ZXJsYXktd3JhcHBlcicpO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiByZWY9e2NvbnRhaW5lclJlZn0+XG4gICAgICB7cG9ydGFsUm9vdFxuICAgICAgICA/IGNyZWF0ZVBvcnRhbChcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZml4ZWQtbGVnZW5kXCJcbiAgICAgICAgICAgICAgcmVmPXtsZWdlbmRDb250ZW50UmVmfVxuICAgICAgICAgICAgICBzdHlsZT17ey4uLnBvc2l0aW9uU3R5bGVzLCBwb3NpdGlvbjogJ2Fic29sdXRlJ319XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvZGl2PixcbiAgICAgICAgICAgIHBvcnRhbFJvb3RcbiAgICAgICAgICApXG4gICAgICAgIDogbnVsbH1cbiAgICA8L2Rpdj5cbiAgKTtcbn0pIGFzIFJlYWN0LkZDPEltYWdlRXhwb3J0TGVnZW5kUHJvcHM+O1xuXG5NYXBMZWdlbmRQYW5lbEZhY3RvcnkuZGVwcyA9IFtNYXBDb250cm9sVG9vbHRpcEZhY3RvcnksIE1hcENvbnRyb2xQYW5lbEZhY3RvcnksIE1hcExlZ2VuZEZhY3RvcnldO1xuXG5pbnRlcmZhY2UgTWFwTGVnZW5kUGFuZWxJY29ucyB7XG4gIGxlZ2VuZDogQ29tcG9uZW50VHlwZTxhbnk+O1xufVxuXG5leHBvcnQgdHlwZSBNYXBMZWdlbmRQYW5lbFByb3BzID0ge1xuICB0aGVtZTogYW55O1xuICBsYXllcnM6IFJlYWRvbmx5QXJyYXk8TGF5ZXI+O1xuICBzY2FsZTogbnVtYmVyO1xuICBvblRvZ2dsZU1hcENvbnRyb2w6IChjb250cm9sOiBzdHJpbmcpID0+IHZvaWQ7XG4gIGlzRXhwb3J0OiBib29sZWFuO1xuICBsb2dvQ29tcG9uZW50OiBFbGVtZW50O1xuICBhY3Rpb25JY29uczogTWFwTGVnZW5kUGFuZWxJY29ucztcbiAgbWFwQ29udHJvbHM6IE1hcENvbnRyb2xzO1xuICBtYXBTdGF0ZT86IE1hcFN0YXRlO1xuICBvbkxheWVyVmlzQ29uZmlnQ2hhbmdlPzogKG9sZExheWVyOiBMYXllciwgbmV3VmlzQ29uZmlnOiBQYXJ0aWFsPExheWVyVmlzQ29uZmlnPikgPT4gdm9pZDtcbiAgb25Ub2dnbGVTcGxpdE1hcFZpZXdwb3J0PzogQWN0aW9uSGFuZGxlcjx0eXBlb2YgdG9nZ2xlU3BsaXRNYXBWaWV3cG9ydD47XG4gIGlzVmlld3BvcnRVbnN5bmNBbGxvd2VkPzogYm9vbGVhbjtcbiAgb25DbGlja0NvbnRyb2xCdG4/OiAoZT86IE1vdXNlRXZlbnQpID0+IHZvaWQ7XG4gIGNsYXNzTmFtZTogc3RyaW5nO1xuICBzZXR0aW5nczogTWFwTGVnZW5kQ29udHJvbFNldHRpbmdzO1xuICBpc1NpZGVQYW5lbFNob3duOiBib29sZWFuO1xufTtcblxudHlwZSBNYXBMZWdlbmRQYW5lbENvbXBvbmVudFR5cGUgPSBSZWFjdC5GQzxNYXBMZWdlbmRQYW5lbFByb3BzPjtcblxuY29uc3QgZGVmYXVsdEFjdGlvbkljb25zID0ge1xuICBsZWdlbmQ6IExlZ2VuZFxufTtcblxuY29uc3QgTWFwTGVnZW5kUGFuZWxDb21wb25lbnQgPSAoe1xuICBsYXllcnMsXG4gIG1hcENvbnRyb2xzLFxuICBzY2FsZSxcbiAgb25Ub2dnbGVNYXBDb250cm9sLFxuICBpc0V4cG9ydCxcbiAgbG9nb0NvbXBvbmVudCxcbiAgYWN0aW9uSWNvbnMgPSBkZWZhdWx0QWN0aW9uSWNvbnMsXG4gIG1hcFN0YXRlLFxuICB1aVN0YXRlLFxuICBvbkxheWVyVmlzQ29uZmlnQ2hhbmdlLFxuICBvblRvZ2dsZVNwbGl0TWFwVmlld3BvcnQsXG4gIG9uQ2xpY2tDb250cm9sQnRuLFxuICBpc1ZpZXdwb3J0VW5zeW5jQWxsb3dlZCA9IHRydWUsXG4gIGNsYXNzTmFtZSxcbiAgaW50ZXJhY3Rpb25Db25maWcsXG4gIE1hcENvbnRyb2xUb29sdGlwLFxuICBNYXBDb250cm9sUGFuZWwsXG4gIE1hcExlZ2VuZFxufSkgPT4ge1xuICBjb25zdCBpc1NpZGVQYW5lbFNob3duID0gdWlTdGF0ZS5hY3RpdmVTaWRlUGFuZWw7XG4gIGNvbnN0IHNldHRpbmdzID0gdWlTdGF0ZS5tYXBDb250cm9scz8ubWFwTGVnZW5kPy5zZXR0aW5ncztcblxuICBjb25zdCBtYXBMZWdlbmQgPSBtYXBDb250cm9scz8ubWFwTGVnZW5kIHx8ICh7fSBhcyBNYXBDb250cm9sTWFwTGVnZW5kKTtcbiAgY29uc3Qge2FjdGl2ZSwgZGlzYWJsZUVkaXR9ID0gbWFwTGVnZW5kIHx8IHt9O1xuICBjb25zdCByb290Q29udGV4dCA9IHVzZUNvbnRleHQoUm9vdENvbnRleHQpO1xuXG4gIGNvbnN0IG9uQ2xpY2sgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgb25DbGlja0NvbnRyb2xCdG4/LigpO1xuICAgIGlmIChtYXBDb250cm9scz8ubWFwRHJhdz8uYWN0aXZlKSB7XG4gICAgICBvblRvZ2dsZU1hcENvbnRyb2woJ21hcERyYXcnKTtcbiAgICB9XG4gICAgb25Ub2dnbGVNYXBDb250cm9sKCdtYXBMZWdlbmQnKTtcbiAgfSwgW29uQ2xpY2tDb250cm9sQnRuLCBvblRvZ2dsZU1hcENvbnRyb2wsIG1hcENvbnRyb2xzXSk7XG4gIGNvbnN0IG9uQ2xvc2VDbGljayA9IHVzZUNhbGxiYWNrKFxuICAgIGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgb25Ub2dnbGVNYXBDb250cm9sKCdtYXBMZWdlbmQnKTtcbiAgICB9LFxuICAgIFtvblRvZ2dsZU1hcENvbnRyb2xdXG4gICk7XG5cbiAgaWYgKCFtYXBMZWdlbmQuc2hvdykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgbGVnZW5kUGFuZWwgPSBhY3RpdmUgPyAoXG4gICAgPE1hcENvbnRyb2xQYW5lbFxuICAgICAgc2NhbGU9e3NjYWxlfVxuICAgICAgaGVhZGVyPVwiaGVhZGVyLmxheWVyTGVnZW5kXCJcbiAgICAgIHsuLi57b25DbGljazogb25DbG9zZUNsaWNrLCBwaW5uYWJsZTogZmFsc2UsIGRpc2FibGVDbG9zZTogZmFsc2V9fVxuICAgICAgaXNFeHBvcnQ9e2lzRXhwb3J0fVxuICAgICAgbG9nb0NvbXBvbmVudD17bG9nb0NvbXBvbmVudH1cbiAgICAgIG1hcFN0YXRlPXttYXBTdGF0ZX1cbiAgICAgIG9uVG9nZ2xlU3BsaXRNYXBWaWV3cG9ydD17b25Ub2dnbGVTcGxpdE1hcFZpZXdwb3J0fVxuICAgICAgaXNWaWV3cG9ydFVuc3luY0FsbG93ZWQ9e2lzVmlld3BvcnRVbnN5bmNBbGxvd2VkfVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgPlxuICAgICAgPE1hcExlZ2VuZFxuICAgICAgICBsYXllcnM9e2xheWVyc31cbiAgICAgICAgbWFwU3RhdGU9e21hcFN0YXRlfVxuICAgICAgICBkaXNhYmxlRWRpdD17ZGlzYWJsZUVkaXR9XG4gICAgICAgIGlzRXhwb3J0PXtpc0V4cG9ydH1cbiAgICAgICAgb25MYXllclZpc0NvbmZpZ0NoYW5nZT17b25MYXllclZpc0NvbmZpZ0NoYW5nZX1cbiAgICAgIC8+XG4gICAgPC9NYXBDb250cm9sUGFuZWw+XG4gICkgOiBudWxsO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHthY3RpdmUgPyAoXG4gICAgICAgIGhhc1BvcnRhYmxlV2lkdGgoYnJlYWtQb2ludFZhbHVlcykgPyAoXG4gICAgICAgICAgbGVnZW5kUGFuZWxcbiAgICAgICAgKSA6IGlzRXhwb3J0ID8gKFxuICAgICAgICAgIDxJbWFnZUV4cG9ydExlZ2VuZCBpc1NpZGVQYW5lbFNob3duPXtpc1NpZGVQYW5lbFNob3dufSBzZXR0aW5ncz17c2V0dGluZ3N9PlxuICAgICAgICAgICAge2xlZ2VuZFBhbmVsfVxuICAgICAgICAgIDwvSW1hZ2VFeHBvcnRMZWdlbmQ+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgY3JlYXRlUG9ydGFsKFxuICAgICAgICAgICAgPERyYWdnYWJsZUxlZ2VuZD57bGVnZW5kUGFuZWx9PC9EcmFnZ2FibGVMZWdlbmQ+LFxuICAgICAgICAgICAgcm9vdENvbnRleHQ/LmN1cnJlbnQgPz8gZG9jdW1lbnQuYm9keVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKSA6IG51bGx9XG4gICAgICB7IWlzRXhwb3J0ID8gKFxuICAgICAgICA8TWFwQ29udHJvbFRvb2x0aXAgaWQ9XCJzaG93LWxlZ2VuZFwiIG1lc3NhZ2U9XCJ0b29sdGlwLnNob3dMZWdlbmRcIj5cbiAgICAgICAgICA8TWFwQ29udHJvbEJ1dHRvbiBjbGFzc05hbWU9XCJtYXAtY29udHJvbC1idXR0b24gc2hvdy1sZWdlbmRcIiBvbkNsaWNrPXtvbkNsaWNrfT5cbiAgICAgICAgICAgIDxhY3Rpb25JY29ucy5sZWdlbmQgaGVpZ2h0PVwiMjJweFwiIC8+XG4gICAgICAgICAgPC9NYXBDb250cm9sQnV0dG9uPlxuICAgICAgICA8L01hcENvbnRyb2xUb29sdGlwPlxuICAgICAgKSA6IG51bGx9XG4gICAgPC8+XG4gICk7XG59O1xuXG5mdW5jdGlvbiBNYXBMZWdlbmRQYW5lbEZhY3RvcnkoXG4gIE1hcENvbnRyb2xUb29sdGlwOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBDb250cm9sVG9vbHRpcEZhY3Rvcnk+LFxuICBNYXBDb250cm9sUGFuZWw6IFJldHVyblR5cGU8dHlwZW9mIE1hcENvbnRyb2xQYW5lbEZhY3Rvcnk+LFxuICBNYXBMZWdlbmQ6IFJldHVyblR5cGU8dHlwZW9mIE1hcExlZ2VuZEZhY3Rvcnk+XG4pOiBNYXBMZWdlbmRQYW5lbENvbXBvbmVudFR5cGUge1xuICBjb25zdCBNYXBMZWdlbmRQYW5lbCA9IHdpdGhTdGF0ZShcbiAgICBbdWlTdGF0ZUxlbnNdLFxuICAgIHN0YXRlID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIE1hcENvbnRyb2xUb29sdGlwLFxuICAgICAgICBNYXBDb250cm9sUGFuZWwsXG4gICAgICAgIE1hcExlZ2VuZFxuICAgICAgfTtcbiAgICB9LFxuICAgIHtzZXRNYXBDb250cm9sU2V0dGluZ3N9XG4gICkoTWFwTGVnZW5kUGFuZWxDb21wb25lbnQpO1xuXG4gIE1hcExlZ2VuZFBhbmVsLmRpc3BsYXlOYW1lID0gJ01hcExlZ2VuZFBhbmVsJztcbiAgcmV0dXJuIHdpdGhUaGVtZShNYXBMZWdlbmRQYW5lbCBhcyBNYXBMZWdlbmRQYW5lbENvbXBvbmVudFR5cGUpIGFzIE1hcExlZ2VuZFBhbmVsQ29tcG9uZW50VHlwZTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTWFwTGVnZW5kUGFuZWxGYWN0b3J5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUdBLElBQUFBLFdBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFNBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLGlCQUFBLEdBQUFELHVCQUFBLENBQUFILE9BQUE7QUFFQSxJQUFBSyxLQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxVQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxPQUFB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
@@ -364,7 +364,7 @@ function ModalContainerFactory(DeleteDatasetModal, OverWriteMapModal, DataTableM
364
364
  onConfirm: this._onAddCustomMapStyle,
365
365
  confirmButton: {
366
366
  large: true,
367
- disabled: !mapStyle.inputStyle.url || !mapStyle.inputStyle.label,
367
+ disabled: mapStyle.inputStyle.error || !mapStyle.inputStyle.url || !mapStyle.inputStyle.label,
368
368
  children: 'modal.button.addStyle'
369
369
  }
370
370
  };
@@ -432,4 +432,4 @@ function ModalContainerFactory(DeleteDatasetModal, OverWriteMapModal, DataTableM
432
432
  }(_react.Component);
433
433
  return ModalContainer;
434
434
  }
435
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9sb2Rhc2giLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2RvY3VtZW50IiwiX2NvbnN0YW50cyIsIl9yZWR1Y2VycyIsIl91dGlscyIsIl9tb2RhbERpYWxvZyIsIl9kZWxldGVEYXRhTW9kYWwiLCJfb3ZlcndyaXRlTWFwTW9kYWwiLCJfZGF0YVRhYmxlTW9kYWwiLCJfbG9hZERhdGFNb2RhbCIsIl9leHBvcnRJbWFnZU1vZGFsIiwiX2V4cG9ydERhdGFNb2RhbCIsIl9leHBvcnRNYXBNb2RhbCIsIl9hZGRNYXBTdHlsZU1vZGFsIiwiX3NhdmVNYXBNb2RhbCIsIl9zaGFyZU1hcE1vZGFsIiwiX3N0eWxlcyIsIl9yZWFjdERvbSIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX3RlbXBsYXRlT2JqZWN0NCIsIl90ZW1wbGF0ZU9iamVjdDUiLCJfdGVtcGxhdGVPYmplY3Q2IiwiX3RlbXBsYXRlT2JqZWN0NyIsIl90ZW1wbGF0ZU9iamVjdDgiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsIkRhdGFUYWJsZU1vZGFsU3R5bGUiLCJjc3MiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIm1lZGlhIiwicG9ydGFibGUiLCJwYWxtIiwic21hbGxNb2RhbENzcyIsIkxvYWREYXRhTW9kYWxTdHlsZSIsIkRlZmF1bHRTdHlsZSIsIk1vZGFsQ29udGFpbmVyRmFjdG9yeSIsImRlcHMiLCJEZWxldGVEYXRhc2V0TW9kYWxGYWN0b3J5IiwiT3ZlcldyaXRlTWFwTW9kYWxGYWN0b3J5IiwiRGF0YVRhYmxlTW9kYWxGYWN0b3J5IiwiTG9hZERhdGFNb2RhbEZhY3RvcnkiLCJFeHBvcnRJbWFnZU1vZGFsRmFjdG9yeSIsIkV4cG9ydERhdGFNb2RhbEZhY3RvcnkiLCJFeHBvcnRNYXBNb2RhbEZhY3RvcnkiLCJBZGRNYXBTdHlsZU1vZGFsRmFjdG9yeSIsIk1vZGFsRGlhbG9nRmFjdG9yeSIsIlNhdmVNYXBNb2RhbEZhY3RvcnkiLCJTaGFyZU1hcE1vZGFsRmFjdG9yeSIsIkRlbGV0ZURhdGFzZXRNb2RhbCIsIk92ZXJXcml0ZU1hcE1vZGFsIiwiRGF0YVRhYmxlTW9kYWwiLCJMb2FkRGF0YU1vZGFsIiwiRXhwb3J0SW1hZ2VNb2RhbCIsIkV4cG9ydERhdGFNb2RhbCIsIkV4cG9ydE1hcE1vZGFsIiwiQWRkTWFwU3R5bGVNb2RhbCIsIk1vZGFsRGlhbG9nIiwiU2F2ZU1hcE1vZGFsIiwiU2hhcmVNYXBNb2RhbCIsIk1vZGFsQ29udGFpbmVyIiwiX0NvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29uY2F0IiwiZG9jdW1lbnQiLCJhZGRFdmVudExpc3RlbmVyIiwiX29uS2V5VXAiLCJldmVudCIsImtleUNvZGUiLCJLZXlFdmVudCIsIkRPTV9WS19FU0NBUEUiLCJfY2xvc2VNb2RhbCIsInByb3BzIiwidWlTdGF0ZUFjdGlvbnMiLCJ0b2dnbGVNb2RhbCIsImtleSIsInZpc1N0YXRlQWN0aW9ucyIsInJlbW92ZURhdGFzZXQiLCJtYXBTdHlsZUFjdGlvbnMiLCJhZGRDdXN0b21NYXBTdHlsZSIsImZpbGVMaXN0IiwibG9hZEZpbGVzIiwidGlsZXNldCIsInByb2Nlc3NlZE1ldGFkYXRhIiwidXBkYXRlVmlzRGF0YSIsImluZm8iLCJsYWJlbCIsIm5hbWUiLCJ0eXBlIiwiZm9ybWF0IiwiZGF0YSIsImZpZWxkcyIsInJvd3MiLCJtZXRhZGF0YSIsInN1cHBvcnRlZEZpbHRlclR5cGVzIiwiQUxMX0ZJRUxEX1RZUEVTIiwicmVhbCIsImludGVnZXIiLCJkaXNhYmxlRGF0YU9wZXJhdGlvbiIsImF1dG9DcmVhdGVMYXllcnMiLCJ1aVN0YXRlIiwiZXhwb3J0SW1hZ2UiLCJwcm9jZXNzaW5nIiwiYXBwTmFtZSIsImNsZWFudXBFeHBvcnRJbWFnZSIsImV4cG9ydERhdGEiLCJleHBvcnRNYXAiLCJFWFBPUlRfTUFQX0ZPUk1BVFMiLCJIVE1MIiwiZXhwb3J0SHRtbCIsImV4cG9ydEpzb24iLCJfcmVmIiwicHJvdmlkZXIiLCJpc1B1YmxpYyIsIm92ZXJ3cml0ZSIsImNsb3NlTW9kYWwiLCJ0b1NhdmUiLCJwcm92aWRlckFjdGlvbnMiLCJleHBvcnRGaWxlVG9DbG91ZCIsIm1hcERhdGEiLCJvcHRpb25zIiwib25TdWNjZXNzIiwib25FeHBvcnRUb0Nsb3VkU3VjY2VzcyIsIm9uRXJyb3IiLCJvbkV4cG9ydFRvQ2xvdWRFcnJvciIsInVuZGVmaW5lZCIsIl9leHBvcnRGaWxlVG9DbG91ZCIsIl9vblNhdmVNYXAiLCJyZXNldFByb3ZpZGVyU3RhdHVzIiwicGF5bG9hZCIsImxvYWRDbG91ZE1hcCIsIm9uTG9hZENsb3VkTWFwU3VjY2VzcyIsIm9uTG9hZENsb3VkTWFwRXJyb3IiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsInZhbHVlIiwiY29tcG9uZW50V2lsbFVubW91bnQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicmVuZGVyIiwiX3RoaXMyIiwiX3RoaXMkcHJvcHMiLCJjb250YWluZXJXIiwiY29udGFpbmVySCIsIm1hcFN0eWxlIiwibWFwU3RhdGUiLCJ2aXNTdGF0ZSIsInJvb3ROb2RlIiwicHJvdmlkZXJTdGF0ZSIsImN1cnJlbnRNb2RhbCIsImRhdGFzZXRLZXlUb1JlbW92ZSIsImRhdGFzZXRzIiwibGF5ZXJzIiwiZWRpdGluZ0RhdGFzZXQiLCJ0ZW1wbGF0ZSIsIm1vZGFsUHJvcHMiLCJpZCIsImNyZWF0ZUVsZW1lbnQiLCJEQVRBX1RBQkxFX0lEIiwid2lkdGgiLCJkYXRhSWQiLCJzaG93RGF0YXNldFRhYmxlIiwic29ydFRhYmxlQ29sdW1uIiwicGluVGFibGVDb2x1bW4iLCJjb3B5VGFibGVDb2x1bW4iLCJzZXRDb2x1bW5EaXNwbGF5Rm9ybWF0IiwiY3NzU3R5bGUiLCJERUxFVEVfREFUQV9JRCIsImRhdGFzZXQiLCJ0aXRsZSIsImZvb3RlciIsIm9uQ29uZmlybSIsIl9kZWxldGVEYXRhc2V0Iiwib25DYW5jZWwiLCJjb25maXJtQnV0dG9uIiwibmVnYXRpdmUiLCJsYXJnZSIsImNoaWxkcmVuIiwiQUREX0RBVEFfSUQiLCJfZXh0ZW5kczIiLCJvbkNsb3NlIiwib25GaWxlVXBsb2FkIiwiX29uRmlsZVVwbG9hZCIsIm9uVGlsZXNldEFkZGVkIiwiX29uVGlsZXNldEFkZGVkIiwib25Mb2FkQ2xvdWRNYXAiLCJfb25Mb2FkQ2xvdWRNYXAiLCJmaWxlTG9hZGluZyIsImZpbGVMb2FkaW5nUHJvZ3Jlc3MiLCJmaWxlRm9ybWF0TmFtZXMiLCJnZXRGaWxlRm9ybWF0TmFtZXMiLCJmaWxlRXh0ZW5zaW9ucyIsImdldEZpbGVFeHRlbnNpb25zIiwiRVhQT1JUX0lNQUdFX0lEIiwibWFwVyIsIm1hcEgiLCJvblVwZGF0ZUltYWdlU2V0dGluZyIsInNldEV4cG9ydEltYWdlU2V0dGluZyIsIl9vbkV4cG9ydEltYWdlIiwiZGlzYWJsZWQiLCJFWFBPUlRfREFUQV9JRCIsInN1cHBvcnRlZERhdGFUeXBlcyIsIkVYUE9SVF9EQVRBX1RZUEVfT1BUSU9OUyIsImFwcGx5Q1BVRmlsdGVyIiwib25DaGFuZ2VFeHBvcnREYXRhVHlwZSIsInNldEV4cG9ydERhdGFUeXBlIiwib25DaGFuZ2VFeHBvcnRTZWxlY3RlZERhdGFzZXQiLCJzZXRFeHBvcnRTZWxlY3RlZERhdGFzZXQiLCJvbkNoYW5nZUV4cG9ydEZpbHRlcmVkIiwic2V0RXhwb3J0RmlsdGVyZWQiLCJfb25FeHBvcnREYXRhIiwiRVhQT1JUX01BUF9JRCIsImtlcGxlckdsQ29uZmlnIiwic2NoZW1hIiwiZ2V0Q29uZmlnVG9TYXZlIiwiY29uZmlnIiwib25DaGFuZ2VFeHBvcnRNYXBGb3JtYXQiLCJzZXRFeHBvcnRNYXBGb3JtYXQiLCJvbkVkaXRVc2VyTWFwYm94QWNjZXNzVG9rZW4iLCJzZXRVc2VyTWFwYm94QWNjZXNzVG9rZW4iLCJvbkNoYW5nZUV4cG9ydE1hcEhUTUxNb2RlIiwic2V0RXhwb3J0SFRNTE1hcE1vZGUiLCJfb25FeHBvcnRNYXAiLCJBRERfTUFQX1NUWUxFX0lEIiwibWFwYm94QXBpQWNjZXNzVG9rZW4iLCJtYXBib3hBcGlVcmwiLCJpbnB1dFN0eWxlIiwiaW5wdXRNYXBTdHlsZSIsImxvYWRDdXN0b21NYXBTdHlsZSIsIl9vbkFkZEN1c3RvbU1hcFN0eWxlIiwidXJsIiwiU0FWRV9NQVBfSUQiLCJtYXBJbmZvIiwib25TZXRNYXBJbmZvIiwic2V0TWFwSW5mbyIsIk9WRVJXUklURV9NQVBfSUQiLCJfb25PdmVyd3JpdGVNYXAiLCJTSEFSRV9NQVBfSUQiLCJvbkV4cG9ydCIsIl9vblNoYXJlTWFwVXJsIiwiX29uQ2xvc2VTYXZlTWFwIiwicGFyZW50U2VsZWN0b3IiLCJmaW5kRE9NTm9kZSIsImlzT3BlbiIsIkNvbXBvbmVudCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RhbC1jb250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtjc3N9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBnZXQgZnJvbSAnbG9kYXNoLmdldCc7XG5pbXBvcnQgZG9jdW1lbnQgZnJvbSAnZ2xvYmFsL2RvY3VtZW50JztcblxuaW1wb3J0IHtBTExfRklFTERfVFlQRVN9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7XG4gIGV4cG9ydERhdGEsXG4gIGdldEZpbGVGb3JtYXROYW1lcyxcbiAgZ2V0RmlsZUV4dGVuc2lvbnMsXG4gIE1hcFN0eWxlLFxuICBQcm92aWRlclN0YXRlXG59IGZyb20gJ0BrZXBsZXIuZ2wvcmVkdWNlcnMnO1xuaW1wb3J0IHtleHBvcnRIdG1sLCBleHBvcnRNYXAsIGV4cG9ydEpzb24sIGV4cG9ydEltYWdlfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcblxuaW1wb3J0IE1vZGFsRGlhbG9nRmFjdG9yeSBmcm9tICcuL21vZGFscy9tb2RhbC1kaWFsb2cnO1xuXG4vLyBtb2RhbHNcbmltcG9ydCBEZWxldGVEYXRhc2V0TW9kYWxGYWN0b3J5IGZyb20gJy4vbW9kYWxzL2RlbGV0ZS1kYXRhLW1vZGFsJztcbmltcG9ydCBPdmVyV3JpdGVNYXBNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvb3ZlcndyaXRlLW1hcC1tb2RhbCc7XG5pbXBvcnQgRGF0YVRhYmxlTW9kYWxGYWN0b3J5IGZyb20gJy4vbW9kYWxzL2RhdGEtdGFibGUtbW9kYWwnO1xuaW1wb3J0IExvYWREYXRhTW9kYWxGYWN0b3J5IGZyb20gJy4vbW9kYWxzL2xvYWQtZGF0YS1tb2RhbCc7XG5pbXBvcnQgRXhwb3J0SW1hZ2VNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvZXhwb3J0LWltYWdlLW1vZGFsJztcbmltcG9ydCBFeHBvcnREYXRhTW9kYWxGYWN0b3J5IGZyb20gJy4vbW9kYWxzL2V4cG9ydC1kYXRhLW1vZGFsJztcbmltcG9ydCBFeHBvcnRNYXBNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvZXhwb3J0LW1hcC1tb2RhbC9leHBvcnQtbWFwLW1vZGFsJztcbmltcG9ydCBBZGRNYXBTdHlsZU1vZGFsRmFjdG9yeSBmcm9tICcuL21vZGFscy9hZGQtbWFwLXN0eWxlLW1vZGFsJztcbmltcG9ydCBTYXZlTWFwTW9kYWxGYWN0b3J5IGZyb20gJy4vbW9kYWxzL3NhdmUtbWFwLW1vZGFsJztcbmltcG9ydCBTaGFyZU1hcE1vZGFsRmFjdG9yeSBmcm9tICcuL21vZGFscy9zaGFyZS1tYXAtbW9kYWwnO1xuXG4vLyBCcmVha3BvaW50c1xuaW1wb3J0IHttZWRpYX0gZnJvbSAnQGtlcGxlci5nbC9zdHlsZXMnO1xuXG4vLyBUZW1wbGF0ZVxuaW1wb3J0IHtcbiAgRVhQT1JUX0RBVEFfVFlQRV9PUFRJT05TLFxuICBFWFBPUlRfTUFQX0ZPUk1BVFMsXG4gIEtleUV2ZW50LFxuICBBRERfREFUQV9JRCxcbiAgREFUQV9UQUJMRV9JRCxcbiAgREVMRVRFX0RBVEFfSUQsXG4gIEVYUE9SVF9EQVRBX0lELFxuICBFWFBPUlRfSU1BR0VfSUQsXG4gIEVYUE9SVF9NQVBfSUQsXG4gIEFERF9NQVBfU1RZTEVfSUQsXG4gIFNBVkVfTUFQX0lELFxuICBTSEFSRV9NQVBfSUQsXG4gIE9WRVJXUklURV9NQVBfSURcbn0gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuXG5pbXBvcnQge01hcFN0YXRlLCBVaVN0YXRlLCBPblN1Y2Nlc3NDYWxsQmFjaywgT25FcnJvckNhbGxCYWNrfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuaW1wb3J0IHtcbiAgVmlzU3RhdGVBY3Rpb25zLFxuICBVSVN0YXRlQWN0aW9ucyxcbiAgTWFwU3R5bGVBY3Rpb25zLFxuICBQcm92aWRlckFjdGlvbnNcbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcbmltcG9ydCB7TW9kYWxEaWFsb2dQcm9wc30gZnJvbSAnLi9jb21tb24vbW9kYWwnO1xuaW1wb3J0IHtQcm92aWRlcn0gZnJvbSAnQGtlcGxlci5nbC9jbG91ZC1wcm92aWRlcnMnO1xuaW1wb3J0IHtmaW5kRE9NTm9kZX0gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCB7VmlzU3RhdGV9IGZyb20gJ0BrZXBsZXIuZ2wvc2NoZW1hcyc7XG5cbmNvbnN0IERhdGFUYWJsZU1vZGFsU3R5bGUgPSBjc3NgXG4gIHRvcDogNzBweDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDkwdnc7XG4gIG1heC13aWR0aDogOTB2dztcblxuICAke21lZGlhLnBvcnRhYmxlYFxuICAgIHBhZGRpbmc6IDA7XG4gIGB9ICR7bWVkaWEucGFsbWBcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICBgfTtcbmA7XG5jb25zdCBzbWFsbE1vZGFsQ3NzID0gY3NzYFxuICB3aWR0aDogNDAlO1xuICBwYWRkaW5nOiA0MHB4IDQwcHggMzJweCA0MHB4O1xuYDtcblxuY29uc3QgTG9hZERhdGFNb2RhbFN0eWxlID0gY3NzYFxuICB0b3A6IDYwcHg7XG5gO1xuXG5jb25zdCBEZWZhdWx0U3R5bGUgPSBjc3NgXG4gIG1heC13aWR0aDogOTYwcHg7XG5gO1xuXG5leHBvcnQgdHlwZSBNb2RhbENvbnRhaW5lclByb3BzID0ge1xuICBhcHBOYW1lOiBzdHJpbmc7XG4gIHJvb3ROb2RlOiBSZWFjdC5SZWFjdEluc3RhbmNlIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgY29udGFpbmVyVzogbnVtYmVyO1xuICBjb250YWluZXJIOiBudW1iZXI7XG4gIG1hcGJveEFwaUFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIG1hcGJveEFwaVVybD86IHN0cmluZztcbiAgbWFwU3RhdGU6IE1hcFN0YXRlO1xuICBtYXBTdHlsZTogTWFwU3R5bGU7XG4gIHVpU3RhdGU6IFVpU3RhdGU7XG4gIHZpc1N0YXRlOiBWaXNTdGF0ZTtcbiAgcHJvdmlkZXJTdGF0ZTogUHJvdmlkZXJTdGF0ZTtcbiAgdmlzU3RhdGVBY3Rpb25zOiB0eXBlb2YgVmlzU3RhdGVBY3Rpb25zO1xuICB1aVN0YXRlQWN0aW9uczogdHlwZW9mIFVJU3RhdGVBY3Rpb25zO1xuICBtYXBTdHlsZUFjdGlvbnM6IHR5cGVvZiBNYXBTdHlsZUFjdGlvbnM7XG4gIHByb3ZpZGVyQWN0aW9uczogdHlwZW9mIFByb3ZpZGVyQWN0aW9ucztcbiAgb25TYXZlVG9TdG9yYWdlPzogKCkgPT4gdm9pZDtcbiAgY2xvdWRQcm92aWRlcnM6IFByb3ZpZGVyW107XG4gIG9uTG9hZENsb3VkTWFwU3VjY2Vzcz86IE9uU3VjY2Vzc0NhbGxCYWNrO1xuICBvbkxvYWRDbG91ZE1hcEVycm9yPzogT25FcnJvckNhbGxCYWNrO1xuICBvbkV4cG9ydFRvQ2xvdWRTdWNjZXNzPzogT25TdWNjZXNzQ2FsbEJhY2s7XG4gIG9uRXhwb3J0VG9DbG91ZEVycm9yPzogT25FcnJvckNhbGxCYWNrO1xufTtcblxuTW9kYWxDb250YWluZXJGYWN0b3J5LmRlcHMgPSBbXG4gIERlbGV0ZURhdGFzZXRNb2RhbEZhY3RvcnksXG4gIE92ZXJXcml0ZU1hcE1vZGFsRmFjdG9yeSxcbiAgRGF0YVRhYmxlTW9kYWxGYWN0b3J5LFxuICBMb2FkRGF0YU1vZGFsRmFjdG9yeSxcbiAgRXhwb3J0SW1hZ2VNb2RhbEZhY3RvcnksXG4gIEV4cG9ydERhdGFNb2RhbEZhY3RvcnksXG4gIEV4cG9ydE1hcE1vZGFsRmFjdG9yeSxcbiAgQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnksXG4gIE1vZGFsRGlhbG9nRmFjdG9yeSxcbiAgU2F2ZU1hcE1vZGFsRmFjdG9yeSxcbiAgU2hhcmVNYXBNb2RhbEZhY3Rvcnlcbl07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIE1vZGFsQ29udGFpbmVyRmFjdG9yeShcbiAgRGVsZXRlRGF0YXNldE1vZGFsOiBSZXR1cm5UeXBlPHR5cGVvZiBEZWxldGVEYXRhc2V0TW9kYWxGYWN0b3J5PixcbiAgT3ZlcldyaXRlTWFwTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIE92ZXJXcml0ZU1hcE1vZGFsRmFjdG9yeT4sXG4gIERhdGFUYWJsZU1vZGFsOiBSZXR1cm5UeXBlPHR5cGVvZiBEYXRhVGFibGVNb2RhbEZhY3Rvcnk+LFxuICBMb2FkRGF0YU1vZGFsOiBSZXR1cm5UeXBlPHR5cGVvZiBMb2FkRGF0YU1vZGFsRmFjdG9yeT4sXG4gIEV4cG9ydEltYWdlTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIEV4cG9ydEltYWdlTW9kYWxGYWN0b3J5PixcbiAgRXhwb3J0RGF0YU1vZGFsOiBSZXR1cm5UeXBlPHR5cGVvZiBFeHBvcnREYXRhTW9kYWxGYWN0b3J5PixcbiAgRXhwb3J0TWFwTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIEV4cG9ydE1hcE1vZGFsRmFjdG9yeT4sXG4gIEFkZE1hcFN0eWxlTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIEFkZE1hcFN0eWxlTW9kYWxGYWN0b3J5PixcbiAgTW9kYWxEaWFsb2c6IFJldHVyblR5cGU8dHlwZW9mIE1vZGFsRGlhbG9nRmFjdG9yeT4sXG4gIFNhdmVNYXBNb2RhbDogUmV0dXJuVHlwZTx0eXBlb2YgU2F2ZU1hcE1vZGFsRmFjdG9yeT4sXG4gIFNoYXJlTWFwTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIFNoYXJlTWFwTW9kYWxGYWN0b3J5PlxuKTogUmVhY3QuRWxlbWVudFR5cGU8TW9kYWxDb250YWluZXJQcm9wcz4ge1xuICAvKiogQGF1Z21lbnRzIFJlYWN0LkNvbXBvbmVudDxNb2RhbENvbnRhaW5lclByb3BzPiAqL1xuICBjbGFzcyBNb2RhbENvbnRhaW5lciBleHRlbmRzIENvbXBvbmVudDxNb2RhbENvbnRhaW5lclByb3BzPiB7XG4gICAgLy8gVE9ETyAtIHJlbW92ZSB3aGVuIHByb3AgdHlwZXMgYXJlIGZ1bGx5IGV4cG9ydGVkXG4gICAgY29tcG9uZW50RGlkTW91bnQgPSAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdrZXl1cCcsIHRoaXMuX29uS2V5VXApO1xuICAgIH07XG4gICAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXl1cCcsIHRoaXMuX29uS2V5VXApO1xuICAgIH1cblxuICAgIF9vbktleVVwID0gZXZlbnQgPT4ge1xuICAgICAgY29uc3Qga2V5Q29kZSA9IGV2ZW50LmtleUNvZGU7XG4gICAgICBpZiAoa2V5Q29kZSA9PT0gS2V5RXZlbnQuRE9NX1ZLX0VTQ0FQRSkge1xuICAgICAgICB0aGlzLl9jbG9zZU1vZGFsKCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIF9jbG9zZU1vZGFsID0gKCkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy51aVN0YXRlQWN0aW9ucy50b2dnbGVNb2RhbChudWxsKTtcbiAgICB9O1xuXG4gICAgX2RlbGV0ZURhdGFzZXQgPSBrZXkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy52aXNTdGF0ZUFjdGlvbnMucmVtb3ZlRGF0YXNldChrZXkpO1xuICAgICAgdGhpcy5fY2xvc2VNb2RhbCgpO1xuICAgIH07XG5cbiAgICBfb25BZGRDdXN0b21NYXBTdHlsZSA9ICgpID0+IHtcbiAgICAgIHRoaXMucHJvcHMubWFwU3R5bGVBY3Rpb25zLmFkZEN1c3RvbU1hcFN0eWxlKCk7XG4gICAgICB0aGlzLl9jbG9zZU1vZGFsKCk7XG4gICAgfTtcblxuICAgIF9vbkZpbGVVcGxvYWQgPSBmaWxlTGlzdCA9PiB7XG4gICAgICB0aGlzLnByb3BzLnZpc1N0YXRlQWN0aW9ucy5sb2FkRmlsZXMoZmlsZUxpc3QpO1xuICAgIH07XG5cbiAgICBfb25UaWxlc2V0QWRkZWQgPSAoXG4gICAgICB0aWxlc2V0OiB7bmFtZTogc3RyaW5nOyB0eXBlOiBzdHJpbmc7IG1ldGFkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+fSxcbiAgICAgIHByb2Nlc3NlZE1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgYW55PlxuICAgICkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy52aXNTdGF0ZUFjdGlvbnMudXBkYXRlVmlzRGF0YShcbiAgICAgICAge1xuICAgICAgICAgIGluZm86IHtsYWJlbDogdGlsZXNldC5uYW1lLCB0eXBlOiB0aWxlc2V0LnR5cGUsIGZvcm1hdDogJ3Jvd3MnfSxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBmaWVsZHM6IHByb2Nlc3NlZE1ldGFkYXRhPy5maWVsZHMgfHwgW10sXG4gICAgICAgICAgICByb3dzOiBbXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICAgIC4uLnByb2Nlc3NlZE1ldGFkYXRhLFxuICAgICAgICAgICAgLi4udGlsZXNldC5tZXRhZGF0YVxuICAgICAgICAgIH0sXG4gICAgICAgICAgLy8gdmVjdG9yIHRpbGUgbGF5ZXIgb25seSBzdXBwb3J0cyBncHUgZmlsdGVyaW5nIGZvciBub3dcbiAgICAgICAgICBzdXBwb3J0ZWRGaWx0ZXJUeXBlczogW0FMTF9GSUVMRF9UWVBFUy5yZWFsLCBBTExfRklFTERfVFlQRVMuaW50ZWdlcl0sXG4gICAgICAgICAgZGlzYWJsZURhdGFPcGVyYXRpb246IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGF1dG9DcmVhdGVMYXllcnM6IHRydWVcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICAgIHRoaXMuX2Nsb3NlTW9kYWwoKTtcbiAgICB9O1xuXG4gICAgX29uRXhwb3J0SW1hZ2UgPSAoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMucHJvcHMudWlTdGF0ZS5leHBvcnRJbWFnZS5wcm9jZXNzaW5nKSB7XG4gICAgICAgIGV4cG9ydEltYWdlKHRoaXMucHJvcHMudWlTdGF0ZS5leHBvcnRJbWFnZSwgYCR7dGhpcy5wcm9wcy5hcHBOYW1lfS5wbmdgKTtcbiAgICAgICAgdGhpcy5wcm9wcy51aVN0YXRlQWN0aW9ucy5jbGVhbnVwRXhwb3J0SW1hZ2UoKTtcbiAgICAgICAgdGhpcy5fY2xvc2VNb2RhbCgpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBfb25FeHBvcnREYXRhID0gKCkgPT4ge1xuICAgICAgZXhwb3J0RGF0YSh0aGlzLnByb3BzLCB0aGlzLnByb3BzLnVpU3RhdGUuZXhwb3J0RGF0YSk7XG4gICAgICB0aGlzLl9jbG9zZU1vZGFsKCk7XG4gICAgfTtcblxuICAgIF9vbkV4cG9ydE1hcCA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHt1aVN0YXRlfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCB7Zm9ybWF0fSA9IHVpU3RhdGUuZXhwb3J0TWFwO1xuICAgICAgKGZvcm1hdCA9PT0gRVhQT1JUX01BUF9GT1JNQVRTLkhUTUwgPyBleHBvcnRIdG1sIDogZXhwb3J0SnNvbikoXG4gICAgICAgIHRoaXMucHJvcHMsXG4gICAgICAgIHRoaXMucHJvcHMudWlTdGF0ZS5leHBvcnRNYXBbZm9ybWF0XSB8fCB7fVxuICAgICAgKTtcbiAgICAgIHRoaXMuX2Nsb3NlTW9kYWwoKTtcbiAgICB9O1xuXG4gICAgX2V4cG9ydEZpbGVUb0Nsb3VkID0gKHtwcm92aWRlciwgaXNQdWJsaWMsIG92ZXJ3cml0ZSwgY2xvc2VNb2RhbH0pID0+IHtcbiAgICAgIGNvbnN0IHRvU2F2ZSA9IGV4cG9ydE1hcCh0aGlzLnByb3BzKTtcblxuICAgICAgdGhpcy5wcm9wcy5wcm92aWRlckFjdGlvbnMuZXhwb3J0RmlsZVRvQ2xvdWQoe1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIG1hcERhdGE6IHRvU2F2ZSxcbiAgICAgICAgcHJvdmlkZXIsXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBpc1B1YmxpYyxcbiAgICAgICAgICBvdmVyd3JpdGVcbiAgICAgICAgfSxcbiAgICAgICAgY2xvc2VNb2RhbCxcbiAgICAgICAgb25TdWNjZXNzOiB0aGlzLnByb3BzLm9uRXhwb3J0VG9DbG91ZFN1Y2Nlc3MsXG4gICAgICAgIG9uRXJyb3I6IHRoaXMucHJvcHMub25FeHBvcnRUb0Nsb3VkRXJyb3JcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBfb25TYXZlTWFwID0gKHByb3ZpZGVyLCBvdmVyd3JpdGUgPSBmYWxzZSkgPT4ge1xuICAgICAgdGhpcy5fZXhwb3J0RmlsZVRvQ2xvdWQoe1xuICAgICAgICBwcm92aWRlcixcbiAgICAgICAgaXNQdWJsaWM6IGZhbHNlLFxuICAgICAgICBvdmVyd3JpdGUsXG4gICAgICAgIGNsb3NlTW9kYWw6IHRydWVcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBfb25PdmVyd3JpdGVNYXAgPSAoKSA9PiB7XG4gICAgICB0aGlzLl9vblNhdmVNYXAodHJ1ZSk7XG4gICAgfTtcblxuICAgIF9vblNoYXJlTWFwVXJsID0gcHJvdmlkZXIgPT4ge1xuICAgICAgdGhpcy5fZXhwb3J0RmlsZVRvQ2xvdWQoe3Byb3ZpZGVyLCBpc1B1YmxpYzogdHJ1ZSwgb3ZlcndyaXRlOiBmYWxzZSwgY2xvc2VNb2RhbDogZmFsc2V9KTtcbiAgICB9O1xuXG4gICAgX29uQ2xvc2VTYXZlTWFwID0gKCkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5wcm92aWRlckFjdGlvbnMucmVzZXRQcm92aWRlclN0YXR1cygpO1xuICAgICAgdGhpcy5fY2xvc2VNb2RhbCgpO1xuICAgIH07XG5cbiAgICBfb25Mb2FkQ2xvdWRNYXAgPSBwYXlsb2FkID0+IHtcbiAgICAgIHRoaXMucHJvcHMucHJvdmlkZXJBY3Rpb25zLmxvYWRDbG91ZE1hcCh7XG4gICAgICAgIC4uLnBheWxvYWQsXG4gICAgICAgIG9uU3VjY2VzczogdGhpcy5wcm9wcy5vbkxvYWRDbG91ZE1hcFN1Y2Nlc3MsXG4gICAgICAgIG9uRXJyb3I6IHRoaXMucHJvcHMub25Mb2FkQ2xvdWRNYXBFcnJvclxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIGNvbXBsZXhpdHkgKi9cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7XG4gICAgICAgIGNvbnRhaW5lclcsXG4gICAgICAgIGNvbnRhaW5lckgsXG4gICAgICAgIG1hcFN0eWxlLFxuICAgICAgICBtYXBTdGF0ZSxcbiAgICAgICAgdWlTdGF0ZSxcbiAgICAgICAgdmlzU3RhdGUsXG4gICAgICAgIHJvb3ROb2RlLFxuICAgICAgICB2aXNTdGF0ZUFjdGlvbnMsXG4gICAgICAgIHVpU3RhdGVBY3Rpb25zLFxuICAgICAgICBwcm92aWRlclN0YXRlXG4gICAgICB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHtjdXJyZW50TW9kYWwsIGRhdGFzZXRLZXlUb1JlbW92ZX0gPSB1aVN0YXRlO1xuICAgICAgY29uc3Qge2RhdGFzZXRzLCBsYXllcnMsIGVkaXRpbmdEYXRhc2V0fSA9IHZpc1N0YXRlO1xuXG4gICAgICBsZXQgdGVtcGxhdGU6IEpTWC5FbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gICAgICBsZXQgbW9kYWxQcm9wczogUGFydGlhbDxNb2RhbERpYWxvZ1Byb3BzPiA9IHt9O1xuXG4gICAgICAvLyBUT0RPIC0gY3VycmVudE1vZGFsIGlzIGEgc3RyaW5nXG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBpZiAoY3VycmVudE1vZGFsICYmIGN1cnJlbnRNb2RhbC5pZCAmJiBjdXJyZW50TW9kYWwudGVtcGxhdGUpIHtcbiAgICAgICAgLy8gaWYgY3VycmVudE1kb2FsIHRlbXBsYXRlIGlzIGFscmVhZHkgcHJvdmlkZWRcbiAgICAgICAgLy8gVE9ETzogbmVlZCB0byBjaGVjayB3aGV0aGVyIHRlbXBsYXRlIGlzIHZhbGlkXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgdGVtcGxhdGUgPSA8Y3VycmVudE1vZGFsLnRlbXBsYXRlIC8+O1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIG1vZGFsUHJvcHMgPSBjdXJyZW50TW9kYWwubW9kYWxQcm9wcztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN3aXRjaCAoY3VycmVudE1vZGFsKSB7XG4gICAgICAgICAgY2FzZSBEQVRBX1RBQkxFX0lEOiB7XG4gICAgICAgICAgICBjb25zdCB3aWR0aCA9IGNvbnRhaW5lclcgKiAwLjk7XG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IChcbiAgICAgICAgICAgICAgPERhdGFUYWJsZU1vZGFsXG4gICAgICAgICAgICAgICAgZGF0YXNldHM9e2RhdGFzZXRzfVxuICAgICAgICAgICAgICAgIGRhdGFJZD17ZWRpdGluZ0RhdGFzZXR9XG4gICAgICAgICAgICAgICAgc2hvd0RhdGFzZXRUYWJsZT17dmlzU3RhdGVBY3Rpb25zLnNob3dEYXRhc2V0VGFibGV9XG4gICAgICAgICAgICAgICAgc29ydFRhYmxlQ29sdW1uPXt2aXNTdGF0ZUFjdGlvbnMuc29ydFRhYmxlQ29sdW1ufVxuICAgICAgICAgICAgICAgIHBpblRhYmxlQ29sdW1uPXt2aXNTdGF0ZUFjdGlvbnMucGluVGFibGVDb2x1bW59XG4gICAgICAgICAgICAgICAgY29weVRhYmxlQ29sdW1uPXt2aXNTdGF0ZUFjdGlvbnMuY29weVRhYmxlQ29sdW1ufVxuICAgICAgICAgICAgICAgIHNldENvbHVtbkRpc3BsYXlGb3JtYXQ9e3Zpc1N0YXRlQWN0aW9ucy5zZXRDb2x1bW5EaXNwbGF5Rm9ybWF0fVxuICAgICAgICAgICAgICAgIHVpU3RhdGVBY3Rpb25zPXt1aVN0YXRlQWN0aW9uc31cbiAgICAgICAgICAgICAgICB1aVN0YXRlPXt1aVN0YXRlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgLy8gVE9ETzogd2UgbmVlZCB0byBtYWtlIHRoaXMgd2lkdGggY29uc2lzdGVudCB3aXRoIHRoZSBjc3MgcnVsZSBkZWZpbmVkIG1vZGFsLmpzOjMyIG1heC13aWR0aDogNzB2d1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZSAvLyBUT0RPIGZpeCB0aGlzIGFmdGVyIGFkZCB0eXBlcyB0byBUaGVtZVxuICAgICAgICAgICAgbW9kYWxQcm9wcy5jc3NTdHlsZSA9IGNzc2BcbiAgICAgICAgICAgICAgJHtEYXRhVGFibGVNb2RhbFN0eWxlfTtcbiAgICAgICAgICAgICAgJHttZWRpYS5wYWxtYFxuICAgICAgICAgICAgICAgIHdpZHRoOiAke3dpZHRofXB4O1xuICAgICAgICAgICAgICBgfTtcbiAgICAgICAgICAgIGA7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgICAgY2FzZSBERUxFVEVfREFUQV9JRDoge1xuICAgICAgICAgICAgLy8gdmFsaWRhdGUgb3B0aW9uc1xuICAgICAgICAgICAgaWYgKGRhdGFzZXRLZXlUb1JlbW92ZSAmJiBkYXRhc2V0cyAmJiBkYXRhc2V0c1tkYXRhc2V0S2V5VG9SZW1vdmVdKSB7XG4gICAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICAgIDxEZWxldGVEYXRhc2V0TW9kYWwgZGF0YXNldD17ZGF0YXNldHNbZGF0YXNldEtleVRvUmVtb3ZlXX0gbGF5ZXJzPXtsYXllcnN9IC8+XG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICdtb2RhbC50aXRsZS5kZWxldGVEYXRhc2V0JyxcbiAgICAgICAgICAgICAgICBjc3NTdHlsZTogc21hbGxNb2RhbENzcyxcbiAgICAgICAgICAgICAgICBmb290ZXI6IHRydWUsXG4gICAgICAgICAgICAgICAgb25Db25maXJtOiAoKSA9PiB0aGlzLl9kZWxldGVEYXRhc2V0KGRhdGFzZXRLZXlUb1JlbW92ZSksXG4gICAgICAgICAgICAgICAgb25DYW5jZWw6IHRoaXMuX2Nsb3NlTW9kYWwsXG4gICAgICAgICAgICAgICAgY29uZmlybUJ1dHRvbjoge1xuICAgICAgICAgICAgICAgICAgbmVnYXRpdmU6IHRydWUsXG4gICAgICAgICAgICAgICAgICBsYXJnZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIGNoaWxkcmVuOiAnbW9kYWwuYnV0dG9uLmRlbGV0ZSdcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBicmVhazsgLy8gaW4gY2FzZSB3ZSBhZGQgYSBuZXcgY2FzZSBhZnRlciB0aGlzIG9uZVxuICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlIEFERF9EQVRBX0lEOlxuICAgICAgICAgICAgdGVtcGxhdGUgPSAoXG4gICAgICAgICAgICAgIDxMb2FkRGF0YU1vZGFsXG4gICAgICAgICAgICAgICAgey4uLnByb3ZpZGVyU3RhdGV9XG4gICAgICAgICAgICAgICAgb25DbG9zZT17dGhpcy5fY2xvc2VNb2RhbH1cbiAgICAgICAgICAgICAgICBvbkZpbGVVcGxvYWQ9e3RoaXMuX29uRmlsZVVwbG9hZH1cbiAgICAgICAgICAgICAgICBvblRpbGVzZXRBZGRlZD17dGhpcy5fb25UaWxlc2V0QWRkZWR9XG4gICAgICAgICAgICAgICAgb25Mb2FkQ2xvdWRNYXA9e3RoaXMuX29uTG9hZENsb3VkTWFwfVxuICAgICAgICAgICAgICAgIGxvYWRGaWxlcz17dWlTdGF0ZS5sb2FkRmlsZXN9XG4gICAgICAgICAgICAgICAgZmlsZUxvYWRpbmc9e3Zpc1N0YXRlLmZpbGVMb2FkaW5nfVxuICAgICAgICAgICAgICAgIGZpbGVMb2FkaW5nUHJvZ3Jlc3M9e3Zpc1N0YXRlLmZpbGVMb2FkaW5nUHJvZ3Jlc3N9XG4gICAgICAgICAgICAgICAgZmlsZUZvcm1hdE5hbWVzPXtnZXRGaWxlRm9ybWF0TmFtZXModGhpcy5wcm9wcy52aXNTdGF0ZSl9XG4gICAgICAgICAgICAgICAgZmlsZUV4dGVuc2lvbnM9e2dldEZpbGVFeHRlbnNpb25zKHRoaXMucHJvcHMudmlzU3RhdGUpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnbW9kYWwudGl0bGUuYWRkRGF0YVRvTWFwJyxcbiAgICAgICAgICAgICAgY3NzU3R5bGU6IExvYWREYXRhTW9kYWxTdHlsZSxcbiAgICAgICAgICAgICAgZm9vdGVyOiBmYWxzZSxcbiAgICAgICAgICAgICAgb25Db25maXJtOiB0aGlzLl9jbG9zZU1vZGFsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBFWFBPUlRfSU1BR0VfSUQ6XG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IChcbiAgICAgICAgICAgICAgPEV4cG9ydEltYWdlTW9kYWxcbiAgICAgICAgICAgICAgICBleHBvcnRJbWFnZT17dWlTdGF0ZS5leHBvcnRJbWFnZX1cbiAgICAgICAgICAgICAgICBtYXBXPXtjb250YWluZXJXfVxuICAgICAgICAgICAgICAgIG1hcEg9e2NvbnRhaW5lckh9XG4gICAgICAgICAgICAgICAgb25VcGRhdGVJbWFnZVNldHRpbmc9e3VpU3RhdGVBY3Rpb25zLnNldEV4cG9ydEltYWdlU2V0dGluZ31cbiAgICAgICAgICAgICAgICBjbGVhbnVwRXhwb3J0SW1hZ2U9e3VpU3RhdGVBY3Rpb25zLmNsZWFudXBFeHBvcnRJbWFnZX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBtb2RhbFByb3BzID0ge1xuICAgICAgICAgICAgICB0aXRsZTogJ21vZGFsLnRpdGxlLmV4cG9ydEltYWdlJyxcbiAgICAgICAgICAgICAgY3NzU3R5bGU6ICcnLFxuICAgICAgICAgICAgICBmb290ZXI6IHRydWUsXG4gICAgICAgICAgICAgIG9uQ2FuY2VsOiB0aGlzLl9jbG9zZU1vZGFsLFxuICAgICAgICAgICAgICBvbkNvbmZpcm06IHRoaXMuX29uRXhwb3J0SW1hZ2UsXG4gICAgICAgICAgICAgIGNvbmZpcm1CdXR0b246IHtcbiAgICAgICAgICAgICAgICBsYXJnZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZDogdWlTdGF0ZS5leHBvcnRJbWFnZS5wcm9jZXNzaW5nLFxuICAgICAgICAgICAgICAgIGNoaWxkcmVuOiAnbW9kYWwuYnV0dG9uLmRvd25sb2FkJ1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBFWFBPUlRfREFUQV9JRDpcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8RXhwb3J0RGF0YU1vZGFsXG4gICAgICAgICAgICAgICAgey4uLnVpU3RhdGUuZXhwb3J0RGF0YX1cbiAgICAgICAgICAgICAgICBzdXBwb3J0ZWREYXRhVHlwZXM9e0VYUE9SVF9EQVRBX1RZUEVfT1BUSU9OU31cbiAgICAgICAgICAgICAgICBkYXRhc2V0cz17ZGF0YXNldHN9XG4gICAgICAgICAgICAgICAgYXBwbHlDUFVGaWx0ZXI9e3RoaXMucHJvcHMudmlzU3RhdGVBY3Rpb25zLmFwcGx5Q1BVRmlsdGVyfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlRXhwb3J0RGF0YVR5cGU9e3VpU3RhdGVBY3Rpb25zLnNldEV4cG9ydERhdGFUeXBlfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlRXhwb3J0U2VsZWN0ZWREYXRhc2V0PXt1aVN0YXRlQWN0aW9ucy5zZXRFeHBvcnRTZWxlY3RlZERhdGFzZXR9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2VFeHBvcnRGaWx0ZXJlZD17dWlTdGF0ZUFjdGlvbnMuc2V0RXhwb3J0RmlsdGVyZWR9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbW9kYWxQcm9wcyA9IHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdtb2RhbC50aXRsZS5leHBvcnREYXRhJyxcbiAgICAgICAgICAgICAgY3NzU3R5bGU6ICcnLFxuICAgICAgICAgICAgICBmb290ZXI6IHRydWUsXG4gICAgICAgICAgICAgIG9uQ2FuY2VsOiB0aGlzLl9jbG9zZU1vZGFsLFxuICAgICAgICAgICAgICBvbkNvbmZpcm06IHRoaXMuX29uRXhwb3J0RGF0YSxcbiAgICAgICAgICAgICAgY29uZmlybUJ1dHRvbjoge1xuICAgICAgICAgICAgICAgIGxhcmdlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGNoaWxkcmVuOiAnbW9kYWwuYnV0dG9uLmV4cG9ydCdcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgRVhQT1JUX01BUF9JRDoge1xuICAgICAgICAgICAgY29uc3Qga2VwbGVyR2xDb25maWcgPSB2aXNTdGF0ZS5zY2hlbWEuZ2V0Q29uZmlnVG9TYXZlKHtcbiAgICAgICAgICAgICAgbWFwU3R5bGUsXG4gICAgICAgICAgICAgIHZpc1N0YXRlLFxuICAgICAgICAgICAgICBtYXBTdGF0ZSxcbiAgICAgICAgICAgICAgdWlTdGF0ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IChcbiAgICAgICAgICAgICAgPEV4cG9ydE1hcE1vZGFsXG4gICAgICAgICAgICAgICAgY29uZmlnPXtrZXBsZXJHbENvbmZpZ31cbiAgICAgICAgICAgICAgICBvcHRpb25zPXt1aVN0YXRlLmV4cG9ydE1hcH1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZUV4cG9ydE1hcEZvcm1hdD17dWlTdGF0ZUFjdGlvbnMuc2V0RXhwb3J0TWFwRm9ybWF0fVxuICAgICAgICAgICAgICAgIG9uRWRpdFVzZXJNYXBib3hBY2Nlc3NUb2tlbj17dWlTdGF0ZUFjdGlvbnMuc2V0VXNlck1hcGJveEFjY2Vzc1Rva2VufVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlRXhwb3J0TWFwSFRNTE1vZGU9e3VpU3RhdGVBY3Rpb25zLnNldEV4cG9ydEhUTUxNYXBNb2RlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnbW9kYWwudGl0bGUuZXhwb3J0TWFwJyxcbiAgICAgICAgICAgICAgY3NzU3R5bGU6ICcnLFxuICAgICAgICAgICAgICBmb290ZXI6IHRydWUsXG4gICAgICAgICAgICAgIG9uQ2FuY2VsOiB0aGlzLl9jbG9zZU1vZGFsLFxuICAgICAgICAgICAgICBvbkNvbmZpcm06IHRoaXMuX29uRXhwb3J0TWFwLFxuICAgICAgICAgICAgICBjb25maXJtQnV0dG9uOiB7XG4gICAgICAgICAgICAgICAgbGFyZ2U6IHRydWUsXG4gICAgICAgICAgICAgICAgY2hpbGRyZW46ICdtb2RhbC5idXR0b24uZXhwb3J0J1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgQUREX01BUF9TVFlMRV9JRDpcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8QWRkTWFwU3R5bGVNb2RhbFxuICAgICAgICAgICAgICAgIG1hcGJveEFwaUFjY2Vzc1Rva2VuPXt0aGlzLnByb3BzLm1hcGJveEFwaUFjY2Vzc1Rva2VufVxuICAgICAgICAgICAgICAgIG1hcGJveEFwaVVybD17dGhpcy5wcm9wcy5tYXBib3hBcGlVcmx9XG4gICAgICAgICAgICAgICAgbWFwU3RhdGU9e3RoaXMucHJvcHMubWFwU3RhdGV9XG4gICAgICAgICAgICAgICAgaW5wdXRTdHlsZT17bWFwU3R5bGUuaW5wdXRTdHlsZX1cbiAgICAgICAgICAgICAgICBpbnB1dE1hcFN0eWxlPXt0aGlzLnByb3BzLm1hcFN0eWxlQWN0aW9ucy5pbnB1dE1hcFN0eWxlfVxuICAgICAgICAgICAgICAgIGxvYWRDdXN0b21NYXBTdHlsZT17dGhpcy5wcm9wcy5tYXBTdHlsZUFjdGlvbnMubG9hZEN1c3RvbU1hcFN0eWxlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnbW9kYWwudGl0bGUuYWRkQ3VzdG9tTWFwYm94U3R5bGUnLFxuICAgICAgICAgICAgICBjc3NTdHlsZTogJycsXG4gICAgICAgICAgICAgIGZvb3RlcjogdHJ1ZSxcbiAgICAgICAgICAgICAgb25DYW5jZWw6IHRoaXMuX2Nsb3NlTW9kYWwsXG4gICAgICAgICAgICAgIG9uQ29uZmlybTogdGhpcy5fb25BZGRDdXN0b21NYXBTdHlsZSxcbiAgICAgICAgICAgICAgY29uZmlybUJ1dHRvbjoge1xuICAgICAgICAgICAgICAgIGxhcmdlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkOiAhbWFwU3R5bGUuaW5wdXRTdHlsZS51cmwgfHwgIW1hcFN0eWxlLmlucHV0U3R5bGUubGFiZWwsXG4gICAgICAgICAgICAgICAgY2hpbGRyZW46ICdtb2RhbC5idXR0b24uYWRkU3R5bGUnXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIFNBVkVfTUFQX0lEOlxuICAgICAgICAgICAgdGVtcGxhdGUgPSAoXG4gICAgICAgICAgICAgIDxTYXZlTWFwTW9kYWxcbiAgICAgICAgICAgICAgICB7Li4ucHJvdmlkZXJTdGF0ZX1cbiAgICAgICAgICAgICAgICBleHBvcnRJbWFnZT17dWlTdGF0ZS5leHBvcnRJbWFnZX1cbiAgICAgICAgICAgICAgICBtYXBJbmZvPXt2aXNTdGF0ZS5tYXBJbmZvfVxuICAgICAgICAgICAgICAgIG9uU2V0TWFwSW5mbz17dmlzU3RhdGVBY3Rpb25zLnNldE1hcEluZm99XG4gICAgICAgICAgICAgICAgY2xlYW51cEV4cG9ydEltYWdlPXt1aVN0YXRlQWN0aW9ucy5jbGVhbnVwRXhwb3J0SW1hZ2V9XG4gICAgICAgICAgICAgICAgb25VcGRhdGVJbWFnZVNldHRpbmc9e3VpU3RhdGVBY3Rpb25zLnNldEV4cG9ydEltYWdlU2V0dGluZ31cbiAgICAgICAgICAgICAgICBvbkNhbmNlbD17dGhpcy5fY2xvc2VNb2RhbH1cbiAgICAgICAgICAgICAgICBvbkNvbmZpcm09e3Byb3ZpZGVyID0+IHRoaXMuX29uU2F2ZU1hcChwcm92aWRlciwgZmFsc2UpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnbW9kYWwudGl0bGUuc2F2ZU1hcCcsXG4gICAgICAgICAgICAgIGNzc1N0eWxlOiAnJyxcbiAgICAgICAgICAgICAgZm9vdGVyOiBmYWxzZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgT1ZFUldSSVRFX01BUF9JRDpcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8T3ZlcldyaXRlTWFwTW9kYWxcbiAgICAgICAgICAgICAgICB7Li4ucHJvdmlkZXJTdGF0ZX1cbiAgICAgICAgICAgICAgICB0aXRsZT17Z2V0KHZpc1N0YXRlLCBbJ21hcEluZm8nLCAndGl0bGUnXSl9XG4gICAgICAgICAgICAgICAgb25VcGRhdGVJbWFnZVNldHRpbmc9e3VpU3RhdGVBY3Rpb25zLnNldEV4cG9ydEltYWdlU2V0dGluZ31cbiAgICAgICAgICAgICAgICBjbGVhbnVwRXhwb3J0SW1hZ2U9e3VpU3RhdGVBY3Rpb25zLmNsZWFudXBFeHBvcnRJbWFnZX1cbiAgICAgICAgICAgICAgICBvbkNvbmZpcm09e3RoaXMuX29uT3ZlcndyaXRlTWFwfVxuICAgICAgICAgICAgICAgIG9uQ2FuY2VsPXt0aGlzLl9jbG9zZU1vZGFsfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnT3ZlcndyaXRlIEV4aXN0aW5nIEZpbGU/JyxcbiAgICAgICAgICAgICAgY3NzU3R5bGU6IHNtYWxsTW9kYWxDc3MsXG4gICAgICAgICAgICAgIGZvb3RlcjogZmFsc2VcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIFNIQVJFX01BUF9JRDpcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8U2hhcmVNYXBNb2RhbFxuICAgICAgICAgICAgICAgIHsuLi5wcm92aWRlclN0YXRlfVxuICAgICAgICAgICAgICAgIG9uRXhwb3J0PXt0aGlzLl9vblNoYXJlTWFwVXJsfVxuICAgICAgICAgICAgICAgIGNsZWFudXBFeHBvcnRJbWFnZT17dWlTdGF0ZUFjdGlvbnMuY2xlYW51cEV4cG9ydEltYWdlfVxuICAgICAgICAgICAgICAgIG9uVXBkYXRlSW1hZ2VTZXR0aW5nPXt1aVN0YXRlQWN0aW9ucy5zZXRFeHBvcnRJbWFnZVNldHRpbmd9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbW9kYWxQcm9wcyA9IHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdtb2RhbC50aXRsZS5zaGFyZVVSTCcsXG4gICAgICAgICAgICAgIGNzc1N0eWxlOiAnJyxcbiAgICAgICAgICAgICAgb25DYW5jZWw6IHRoaXMuX29uQ2xvc2VTYXZlTWFwXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByb290Tm9kZSA/IChcbiAgICAgICAgPE1vZGFsRGlhbG9nXG4gICAgICAgICAgcGFyZW50U2VsZWN0b3I9eygpID0+IGZpbmRET01Ob2RlKHJvb3ROb2RlKSBhcyBIVE1MRWxlbWVudH1cbiAgICAgICAgICBpc09wZW49e0Jvb2xlYW4oY3VycmVudE1vZGFsKX1cbiAgICAgICAgICBvbkNhbmNlbD17dGhpcy5fY2xvc2VNb2RhbH1cbiAgICAgICAgICB7Li4ubW9kYWxQcm9wc31cbiAgICAgICAgICBjc3NTdHlsZT17RGVmYXVsdFN0eWxlLmNvbmNhdChtb2RhbFByb3BzLmNzc1N0eWxlKX1cbiAgICAgICAgPlxuICAgICAgICAgIHt0ZW1wbGF0ZX1cbiAgICAgICAgPC9Nb2RhbERpYWxvZz5cbiAgICAgICkgOiBudWxsO1xuICAgIH1cbiAgICAvKiBlc2xpbnQtZW5hYmxlIGNvbXBsZXhpdHkgKi9cbiAgfVxuXG4gIHJldHVybiBNb2RhbENvbnRhaW5lcjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxPQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxTQUFBLEdBQUFELHNCQUFBLENBQUFILE9BQUE7QUFFQSxJQUFBSyxVQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxTQUFBLEdBQUFOLE9BQUE7QUFPQSxJQUFBTyxNQUFBLEdBQUFQLE9BQUE7QUFFQSxJQUFBUSxZQUFBLEdBQUFMLHNCQUFBLENBQUFILE9BQUE7QUFHQSxJQUFBUyxnQkFBQSxHQUFBTixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQVUsa0JBQUEsR0FBQVAsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFXLGVBQUEsR0FBQVIsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFZLGNBQUEsR0FBQVQsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFhLGlCQUFBLEdBQUFWLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBYyxnQkFBQSxHQUFBWCxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQWUsZUFBQSxHQUFBWixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQWdCLGlCQUFBLEdBQUFiLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBaUIsYUFBQSxHQUFBZCxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQWtCLGNBQUEsR0FBQWYsc0JBQUEsQ0FBQUgsT0FBQTtBQUdBLElBQUFtQixPQUFBLEdBQUFuQixPQUFBO0FBNkJBLElB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
435
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9sb2Rhc2giLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2RvY3VtZW50IiwiX2NvbnN0YW50cyIsIl9yZWR1Y2VycyIsIl91dGlscyIsIl9tb2RhbERpYWxvZyIsIl9kZWxldGVEYXRhTW9kYWwiLCJfb3ZlcndyaXRlTWFwTW9kYWwiLCJfZGF0YVRhYmxlTW9kYWwiLCJfbG9hZERhdGFNb2RhbCIsIl9leHBvcnRJbWFnZU1vZGFsIiwiX2V4cG9ydERhdGFNb2RhbCIsIl9leHBvcnRNYXBNb2RhbCIsIl9hZGRNYXBTdHlsZU1vZGFsIiwiX3NhdmVNYXBNb2RhbCIsIl9zaGFyZU1hcE1vZGFsIiwiX3N0eWxlcyIsIl9yZWFjdERvbSIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX3RlbXBsYXRlT2JqZWN0NCIsIl90ZW1wbGF0ZU9iamVjdDUiLCJfdGVtcGxhdGVPYmplY3Q2IiwiX3RlbXBsYXRlT2JqZWN0NyIsIl90ZW1wbGF0ZU9iamVjdDgiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsIkRhdGFUYWJsZU1vZGFsU3R5bGUiLCJjc3MiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIm1lZGlhIiwicG9ydGFibGUiLCJwYWxtIiwic21hbGxNb2RhbENzcyIsIkxvYWREYXRhTW9kYWxTdHlsZSIsIkRlZmF1bHRTdHlsZSIsIk1vZGFsQ29udGFpbmVyRmFjdG9yeSIsImRlcHMiLCJEZWxldGVEYXRhc2V0TW9kYWxGYWN0b3J5IiwiT3ZlcldyaXRlTWFwTW9kYWxGYWN0b3J5IiwiRGF0YVRhYmxlTW9kYWxGYWN0b3J5IiwiTG9hZERhdGFNb2RhbEZhY3RvcnkiLCJFeHBvcnRJbWFnZU1vZGFsRmFjdG9yeSIsIkV4cG9ydERhdGFNb2RhbEZhY3RvcnkiLCJFeHBvcnRNYXBNb2RhbEZhY3RvcnkiLCJBZGRNYXBTdHlsZU1vZGFsRmFjdG9yeSIsIk1vZGFsRGlhbG9nRmFjdG9yeSIsIlNhdmVNYXBNb2RhbEZhY3RvcnkiLCJTaGFyZU1hcE1vZGFsRmFjdG9yeSIsIkRlbGV0ZURhdGFzZXRNb2RhbCIsIk92ZXJXcml0ZU1hcE1vZGFsIiwiRGF0YVRhYmxlTW9kYWwiLCJMb2FkRGF0YU1vZGFsIiwiRXhwb3J0SW1hZ2VNb2RhbCIsIkV4cG9ydERhdGFNb2RhbCIsIkV4cG9ydE1hcE1vZGFsIiwiQWRkTWFwU3R5bGVNb2RhbCIsIk1vZGFsRGlhbG9nIiwiU2F2ZU1hcE1vZGFsIiwiU2hhcmVNYXBNb2RhbCIsIk1vZGFsQ29udGFpbmVyIiwiX0NvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29uY2F0IiwiZG9jdW1lbnQiLCJhZGRFdmVudExpc3RlbmVyIiwiX29uS2V5VXAiLCJldmVudCIsImtleUNvZGUiLCJLZXlFdmVudCIsIkRPTV9WS19FU0NBUEUiLCJfY2xvc2VNb2RhbCIsInByb3BzIiwidWlTdGF0ZUFjdGlvbnMiLCJ0b2dnbGVNb2RhbCIsImtleSIsInZpc1N0YXRlQWN0aW9ucyIsInJlbW92ZURhdGFzZXQiLCJtYXBTdHlsZUFjdGlvbnMiLCJhZGRDdXN0b21NYXBTdHlsZSIsImZpbGVMaXN0IiwibG9hZEZpbGVzIiwidGlsZXNldCIsInByb2Nlc3NlZE1ldGFkYXRhIiwidXBkYXRlVmlzRGF0YSIsImluZm8iLCJsYWJlbCIsIm5hbWUiLCJ0eXBlIiwiZm9ybWF0IiwiZGF0YSIsImZpZWxkcyIsInJvd3MiLCJtZXRhZGF0YSIsInN1cHBvcnRlZEZpbHRlclR5cGVzIiwiQUxMX0ZJRUxEX1RZUEVTIiwicmVhbCIsImludGVnZXIiLCJkaXNhYmxlRGF0YU9wZXJhdGlvbiIsImF1dG9DcmVhdGVMYXllcnMiLCJ1aVN0YXRlIiwiZXhwb3J0SW1hZ2UiLCJwcm9jZXNzaW5nIiwiYXBwTmFtZSIsImNsZWFudXBFeHBvcnRJbWFnZSIsImV4cG9ydERhdGEiLCJleHBvcnRNYXAiLCJFWFBPUlRfTUFQX0ZPUk1BVFMiLCJIVE1MIiwiZXhwb3J0SHRtbCIsImV4cG9ydEpzb24iLCJfcmVmIiwicHJvdmlkZXIiLCJpc1B1YmxpYyIsIm92ZXJ3cml0ZSIsImNsb3NlTW9kYWwiLCJ0b1NhdmUiLCJwcm92aWRlckFjdGlvbnMiLCJleHBvcnRGaWxlVG9DbG91ZCIsIm1hcERhdGEiLCJvcHRpb25zIiwib25TdWNjZXNzIiwib25FeHBvcnRUb0Nsb3VkU3VjY2VzcyIsIm9uRXJyb3IiLCJvbkV4cG9ydFRvQ2xvdWRFcnJvciIsInVuZGVmaW5lZCIsIl9leHBvcnRGaWxlVG9DbG91ZCIsIl9vblNhdmVNYXAiLCJyZXNldFByb3ZpZGVyU3RhdHVzIiwicGF5bG9hZCIsImxvYWRDbG91ZE1hcCIsIm9uTG9hZENsb3VkTWFwU3VjY2VzcyIsIm9uTG9hZENsb3VkTWFwRXJyb3IiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsInZhbHVlIiwiY29tcG9uZW50V2lsbFVubW91bnQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicmVuZGVyIiwiX3RoaXMyIiwiX3RoaXMkcHJvcHMiLCJjb250YWluZXJXIiwiY29udGFpbmVySCIsIm1hcFN0eWxlIiwibWFwU3RhdGUiLCJ2aXNTdGF0ZSIsInJvb3ROb2RlIiwicHJvdmlkZXJTdGF0ZSIsImN1cnJlbnRNb2RhbCIsImRhdGFzZXRLZXlUb1JlbW92ZSIsImRhdGFzZXRzIiwibGF5ZXJzIiwiZWRpdGluZ0RhdGFzZXQiLCJ0ZW1wbGF0ZSIsIm1vZGFsUHJvcHMiLCJpZCIsImNyZWF0ZUVsZW1lbnQiLCJEQVRBX1RBQkxFX0lEIiwid2lkdGgiLCJkYXRhSWQiLCJzaG93RGF0YXNldFRhYmxlIiwic29ydFRhYmxlQ29sdW1uIiwicGluVGFibGVDb2x1bW4iLCJjb3B5VGFibGVDb2x1bW4iLCJzZXRDb2x1bW5EaXNwbGF5Rm9ybWF0IiwiY3NzU3R5bGUiLCJERUxFVEVfREFUQV9JRCIsImRhdGFzZXQiLCJ0aXRsZSIsImZvb3RlciIsIm9uQ29uZmlybSIsIl9kZWxldGVEYXRhc2V0Iiwib25DYW5jZWwiLCJjb25maXJtQnV0dG9uIiwibmVnYXRpdmUiLCJsYXJnZSIsImNoaWxkcmVuIiwiQUREX0RBVEFfSUQiLCJfZXh0ZW5kczIiLCJvbkNsb3NlIiwib25GaWxlVXBsb2FkIiwiX29uRmlsZVVwbG9hZCIsIm9uVGlsZXNldEFkZGVkIiwiX29uVGlsZXNldEFkZGVkIiwib25Mb2FkQ2xvdWRNYXAiLCJfb25Mb2FkQ2xvdWRNYXAiLCJmaWxlTG9hZGluZyIsImZpbGVMb2FkaW5nUHJvZ3Jlc3MiLCJmaWxlRm9ybWF0TmFtZXMiLCJnZXRGaWxlRm9ybWF0TmFtZXMiLCJmaWxlRXh0ZW5zaW9ucyIsImdldEZpbGVFeHRlbnNpb25zIiwiRVhQT1JUX0lNQUdFX0lEIiwibWFwVyIsIm1hcEgiLCJvblVwZGF0ZUltYWdlU2V0dGluZyIsInNldEV4cG9ydEltYWdlU2V0dGluZyIsIl9vbkV4cG9ydEltYWdlIiwiZGlzYWJsZWQiLCJFWFBPUlRfREFUQV9JRCIsInN1cHBvcnRlZERhdGFUeXBlcyIsIkVYUE9SVF9EQVRBX1RZUEVfT1BUSU9OUyIsImFwcGx5Q1BVRmlsdGVyIiwib25DaGFuZ2VFeHBvcnREYXRhVHlwZSIsInNldEV4cG9ydERhdGFUeXBlIiwib25DaGFuZ2VFeHBvcnRTZWxlY3RlZERhdGFzZXQiLCJzZXRFeHBvcnRTZWxlY3RlZERhdGFzZXQiLCJvbkNoYW5nZUV4cG9ydEZpbHRlcmVkIiwic2V0RXhwb3J0RmlsdGVyZWQiLCJfb25FeHBvcnREYXRhIiwiRVhQT1JUX01BUF9JRCIsImtlcGxlckdsQ29uZmlnIiwic2NoZW1hIiwiZ2V0Q29uZmlnVG9TYXZlIiwiY29uZmlnIiwib25DaGFuZ2VFeHBvcnRNYXBGb3JtYXQiLCJzZXRFeHBvcnRNYXBGb3JtYXQiLCJvbkVkaXRVc2VyTWFwYm94QWNjZXNzVG9rZW4iLCJzZXRVc2VyTWFwYm94QWNjZXNzVG9rZW4iLCJvbkNoYW5nZUV4cG9ydE1hcEhUTUxNb2RlIiwic2V0RXhwb3J0SFRNTE1hcE1vZGUiLCJfb25FeHBvcnRNYXAiLCJBRERfTUFQX1NUWUxFX0lEIiwibWFwYm94QXBpQWNjZXNzVG9rZW4iLCJtYXBib3hBcGlVcmwiLCJpbnB1dFN0eWxlIiwiaW5wdXRNYXBTdHlsZSIsImxvYWRDdXN0b21NYXBTdHlsZSIsIl9vbkFkZEN1c3RvbU1hcFN0eWxlIiwiZXJyb3IiLCJ1cmwiLCJTQVZFX01BUF9JRCIsIm1hcEluZm8iLCJvblNldE1hcEluZm8iLCJzZXRNYXBJbmZvIiwiT1ZFUldSSVRFX01BUF9JRCIsIl9vbk92ZXJ3cml0ZU1hcCIsIlNIQVJFX01BUF9JRCIsIm9uRXhwb3J0IiwiX29uU2hhcmVNYXBVcmwiLCJfb25DbG9zZVNhdmVNYXAiLCJwYXJlbnRTZWxlY3RvciIsImZpbmRET01Ob2RlIiwiaXNPcGVuIiwiQ29tcG9uZW50Il0sInNvdXJjZXMiOlsiLi4vc3JjL21vZGFsLWNvbnRhaW5lci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge2Nzc30gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2guZ2V0JztcbmltcG9ydCBkb2N1bWVudCBmcm9tICdnbG9iYWwvZG9jdW1lbnQnO1xuXG5pbXBvcnQge0FMTF9GSUVMRF9UWVBFU30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgZXhwb3J0RGF0YSxcbiAgZ2V0RmlsZUZvcm1hdE5hbWVzLFxuICBnZXRGaWxlRXh0ZW5zaW9ucyxcbiAgTWFwU3R5bGUsXG4gIFByb3ZpZGVyU3RhdGVcbn0gZnJvbSAnQGtlcGxlci5nbC9yZWR1Y2Vycyc7XG5pbXBvcnQge2V4cG9ydEh0bWwsIGV4cG9ydE1hcCwgZXhwb3J0SnNvbiwgZXhwb3J0SW1hZ2V9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuXG5pbXBvcnQgTW9kYWxEaWFsb2dGYWN0b3J5IGZyb20gJy4vbW9kYWxzL21vZGFsLWRpYWxvZyc7XG5cbi8vIG1vZGFsc1xuaW1wb3J0IERlbGV0ZURhdGFzZXRNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvZGVsZXRlLWRhdGEtbW9kYWwnO1xuaW1wb3J0IE92ZXJXcml0ZU1hcE1vZGFsRmFjdG9yeSBmcm9tICcuL21vZGFscy9vdmVyd3JpdGUtbWFwLW1vZGFsJztcbmltcG9ydCBEYXRhVGFibGVNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvZGF0YS10YWJsZS1tb2RhbCc7XG5pbXBvcnQgTG9hZERhdGFNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvbG9hZC1kYXRhLW1vZGFsJztcbmltcG9ydCBFeHBvcnRJbWFnZU1vZGFsRmFjdG9yeSBmcm9tICcuL21vZGFscy9leHBvcnQtaW1hZ2UtbW9kYWwnO1xuaW1wb3J0IEV4cG9ydERhdGFNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvZXhwb3J0LWRhdGEtbW9kYWwnO1xuaW1wb3J0IEV4cG9ydE1hcE1vZGFsRmFjdG9yeSBmcm9tICcuL21vZGFscy9leHBvcnQtbWFwLW1vZGFsL2V4cG9ydC1tYXAtbW9kYWwnO1xuaW1wb3J0IEFkZE1hcFN0eWxlTW9kYWxGYWN0b3J5IGZyb20gJy4vbW9kYWxzL2FkZC1tYXAtc3R5bGUtbW9kYWwnO1xuaW1wb3J0IFNhdmVNYXBNb2RhbEZhY3RvcnkgZnJvbSAnLi9tb2RhbHMvc2F2ZS1tYXAtbW9kYWwnO1xuaW1wb3J0IFNoYXJlTWFwTW9kYWxGYWN0b3J5IGZyb20gJy4vbW9kYWxzL3NoYXJlLW1hcC1tb2RhbCc7XG5cbi8vIEJyZWFrcG9pbnRzXG5pbXBvcnQge21lZGlhfSBmcm9tICdAa2VwbGVyLmdsL3N0eWxlcyc7XG5cbi8vIFRlbXBsYXRlXG5pbXBvcnQge1xuICBFWFBPUlRfREFUQV9UWVBFX09QVElPTlMsXG4gIEVYUE9SVF9NQVBfRk9STUFUUyxcbiAgS2V5RXZlbnQsXG4gIEFERF9EQVRBX0lELFxuICBEQVRBX1RBQkxFX0lELFxuICBERUxFVEVfREFUQV9JRCxcbiAgRVhQT1JUX0RBVEFfSUQsXG4gIEVYUE9SVF9JTUFHRV9JRCxcbiAgRVhQT1JUX01BUF9JRCxcbiAgQUREX01BUF9TVFlMRV9JRCxcbiAgU0FWRV9NQVBfSUQsXG4gIFNIQVJFX01BUF9JRCxcbiAgT1ZFUldSSVRFX01BUF9JRFxufSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5cbmltcG9ydCB7TWFwU3RhdGUsIFVpU3RhdGUsIE9uU3VjY2Vzc0NhbGxCYWNrLCBPbkVycm9yQ2FsbEJhY2t9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuXG5pbXBvcnQge1xuICBWaXNTdGF0ZUFjdGlvbnMsXG4gIFVJU3RhdGVBY3Rpb25zLFxuICBNYXBTdHlsZUFjdGlvbnMsXG4gIFByb3ZpZGVyQWN0aW9uc1xufSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuaW1wb3J0IHtNb2RhbERpYWxvZ1Byb3BzfSBmcm9tICcuL2NvbW1vbi9tb2RhbCc7XG5pbXBvcnQge1Byb3ZpZGVyfSBmcm9tICdAa2VwbGVyLmdsL2Nsb3VkLXByb3ZpZGVycyc7XG5pbXBvcnQge2ZpbmRET01Ob2RlfSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHtWaXNTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC9zY2hlbWFzJztcblxuY29uc3QgRGF0YVRhYmxlTW9kYWxTdHlsZSA9IGNzc2BcbiAgdG9wOiA3MHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogOTB2dztcbiAgbWF4LXdpZHRoOiA5MHZ3O1xuXG4gICR7bWVkaWEucG9ydGFibGVgXG4gICAgcGFkZGluZzogMDtcbiAgYH0gJHttZWRpYS5wYWxtYFxuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIGB9O1xuYDtcbmNvbnN0IHNtYWxsTW9kYWxDc3MgPSBjc3NgXG4gIHdpZHRoOiA0MCU7XG4gIHBhZGRpbmc6IDQwcHggNDBweCAzMnB4IDQwcHg7XG5gO1xuXG5jb25zdCBMb2FkRGF0YU1vZGFsU3R5bGUgPSBjc3NgXG4gIHRvcDogNjBweDtcbmA7XG5cbmNvbnN0IERlZmF1bHRTdHlsZSA9IGNzc2BcbiAgbWF4LXdpZHRoOiA5NjBweDtcbmA7XG5cbmV4cG9ydCB0eXBlIE1vZGFsQ29udGFpbmVyUHJvcHMgPSB7XG4gIGFwcE5hbWU6IHN0cmluZztcbiAgcm9vdE5vZGU6IFJlYWN0LlJlYWN0SW5zdGFuY2UgfCBudWxsIHwgdW5kZWZpbmVkO1xuICBjb250YWluZXJXOiBudW1iZXI7XG4gIGNvbnRhaW5lckg6IG51bWJlcjtcbiAgbWFwYm94QXBpQWNjZXNzVG9rZW46IHN0cmluZztcbiAgbWFwYm94QXBpVXJsPzogc3RyaW5nO1xuICBtYXBTdGF0ZTogTWFwU3RhdGU7XG4gIG1hcFN0eWxlOiBNYXBTdHlsZTtcbiAgdWlTdGF0ZTogVWlTdGF0ZTtcbiAgdmlzU3RhdGU6IFZpc1N0YXRlO1xuICBwcm92aWRlclN0YXRlOiBQcm92aWRlclN0YXRlO1xuICB2aXNTdGF0ZUFjdGlvbnM6IHR5cGVvZiBWaXNTdGF0ZUFjdGlvbnM7XG4gIHVpU3RhdGVBY3Rpb25zOiB0eXBlb2YgVUlTdGF0ZUFjdGlvbnM7XG4gIG1hcFN0eWxlQWN0aW9uczogdHlwZW9mIE1hcFN0eWxlQWN0aW9ucztcbiAgcHJvdmlkZXJBY3Rpb25zOiB0eXBlb2YgUHJvdmlkZXJBY3Rpb25zO1xuICBvblNhdmVUb1N0b3JhZ2U/OiAoKSA9PiB2b2lkO1xuICBjbG91ZFByb3ZpZGVyczogUHJvdmlkZXJbXTtcbiAgb25Mb2FkQ2xvdWRNYXBTdWNjZXNzPzogT25TdWNjZXNzQ2FsbEJhY2s7XG4gIG9uTG9hZENsb3VkTWFwRXJyb3I/OiBPbkVycm9yQ2FsbEJhY2s7XG4gIG9uRXhwb3J0VG9DbG91ZFN1Y2Nlc3M/OiBPblN1Y2Nlc3NDYWxsQmFjaztcbiAgb25FeHBvcnRUb0Nsb3VkRXJyb3I/OiBPbkVycm9yQ2FsbEJhY2s7XG59O1xuXG5Nb2RhbENvbnRhaW5lckZhY3RvcnkuZGVwcyA9IFtcbiAgRGVsZXRlRGF0YXNldE1vZGFsRmFjdG9yeSxcbiAgT3ZlcldyaXRlTWFwTW9kYWxGYWN0b3J5LFxuICBEYXRhVGFibGVNb2RhbEZhY3RvcnksXG4gIExvYWREYXRhTW9kYWxGYWN0b3J5LFxuICBFeHBvcnRJbWFnZU1vZGFsRmFjdG9yeSxcbiAgRXhwb3J0RGF0YU1vZGFsRmFjdG9yeSxcbiAgRXhwb3J0TWFwTW9kYWxGYWN0b3J5LFxuICBBZGRNYXBTdHlsZU1vZGFsRmFjdG9yeSxcbiAgTW9kYWxEaWFsb2dGYWN0b3J5LFxuICBTYXZlTWFwTW9kYWxGYWN0b3J5LFxuICBTaGFyZU1hcE1vZGFsRmFjdG9yeVxuXTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTW9kYWxDb250YWluZXJGYWN0b3J5KFxuICBEZWxldGVEYXRhc2V0TW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIERlbGV0ZURhdGFzZXRNb2RhbEZhY3Rvcnk+LFxuICBPdmVyV3JpdGVNYXBNb2RhbDogUmV0dXJuVHlwZTx0eXBlb2YgT3ZlcldyaXRlTWFwTW9kYWxGYWN0b3J5PixcbiAgRGF0YVRhYmxlTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIERhdGFUYWJsZU1vZGFsRmFjdG9yeT4sXG4gIExvYWREYXRhTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIExvYWREYXRhTW9kYWxGYWN0b3J5PixcbiAgRXhwb3J0SW1hZ2VNb2RhbDogUmV0dXJuVHlwZTx0eXBlb2YgRXhwb3J0SW1hZ2VNb2RhbEZhY3Rvcnk+LFxuICBFeHBvcnREYXRhTW9kYWw6IFJldHVyblR5cGU8dHlwZW9mIEV4cG9ydERhdGFNb2RhbEZhY3Rvcnk+LFxuICBFeHBvcnRNYXBNb2RhbDogUmV0dXJuVHlwZTx0eXBlb2YgRXhwb3J0TWFwTW9kYWxGYWN0b3J5PixcbiAgQWRkTWFwU3R5bGVNb2RhbDogUmV0dXJuVHlwZTx0eXBlb2YgQWRkTWFwU3R5bGVNb2RhbEZhY3Rvcnk+LFxuICBNb2RhbERpYWxvZzogUmV0dXJuVHlwZTx0eXBlb2YgTW9kYWxEaWFsb2dGYWN0b3J5PixcbiAgU2F2ZU1hcE1vZGFsOiBSZXR1cm5UeXBlPHR5cGVvZiBTYXZlTWFwTW9kYWxGYWN0b3J5PixcbiAgU2hhcmVNYXBNb2RhbDogUmV0dXJuVHlwZTx0eXBlb2YgU2hhcmVNYXBNb2RhbEZhY3Rvcnk+XG4pOiBSZWFjdC5FbGVtZW50VHlwZTxNb2RhbENvbnRhaW5lclByb3BzPiB7XG4gIC8qKiBAYXVnbWVudHMgUmVhY3QuQ29tcG9uZW50PE1vZGFsQ29udGFpbmVyUHJvcHM+ICovXG4gIGNsYXNzIE1vZGFsQ29udGFpbmVyIGV4dGVuZHMgQ29tcG9uZW50PE1vZGFsQ29udGFpbmVyUHJvcHM+IHtcbiAgICAvLyBUT0RPIC0gcmVtb3ZlIHdoZW4gcHJvcCB0eXBlcyBhcmUgZnVsbHkgZXhwb3J0ZWRcbiAgICBjb21wb25lbnREaWRNb3VudCA9ICgpID0+IHtcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5fb25LZXlVcCk7XG4gICAgfTtcbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5fb25LZXlVcCk7XG4gICAgfVxuXG4gICAgX29uS2V5VXAgPSBldmVudCA9PiB7XG4gICAgICBjb25zdCBrZXlDb2RlID0gZXZlbnQua2V5Q29kZTtcbiAgICAgIGlmIChrZXlDb2RlID09PSBLZXlFdmVudC5ET01fVktfRVNDQVBFKSB7XG4gICAgICAgIHRoaXMuX2Nsb3NlTW9kYWwoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgX2Nsb3NlTW9kYWwgPSAoKSA9PiB7XG4gICAgICB0aGlzLnByb3BzLnVpU3RhdGVBY3Rpb25zLnRvZ2dsZU1vZGFsKG51bGwpO1xuICAgIH07XG5cbiAgICBfZGVsZXRlRGF0YXNldCA9IGtleSA9PiB7XG4gICAgICB0aGlzLnByb3BzLnZpc1N0YXRlQWN0aW9ucy5yZW1vdmVEYXRhc2V0KGtleSk7XG4gICAgICB0aGlzLl9jbG9zZU1vZGFsKCk7XG4gICAgfTtcblxuICAgIF9vbkFkZEN1c3RvbU1hcFN0eWxlID0gKCkgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5tYXBTdHlsZUFjdGlvbnMuYWRkQ3VzdG9tTWFwU3R5bGUoKTtcbiAgICAgIHRoaXMuX2Nsb3NlTW9kYWwoKTtcbiAgICB9O1xuXG4gICAgX29uRmlsZVVwbG9hZCA9IGZpbGVMaXN0ID0+IHtcbiAgICAgIHRoaXMucHJvcHMudmlzU3RhdGVBY3Rpb25zLmxvYWRGaWxlcyhmaWxlTGlzdCk7XG4gICAgfTtcblxuICAgIF9vblRpbGVzZXRBZGRlZCA9IChcbiAgICAgIHRpbGVzZXQ6IHtuYW1lOiBzdHJpbmc7IHR5cGU6IHN0cmluZzsgbWV0YWRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT59LFxuICAgICAgcHJvY2Vzc2VkTWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICAgKSA9PiB7XG4gICAgICB0aGlzLnByb3BzLnZpc1N0YXRlQWN0aW9ucy51cGRhdGVWaXNEYXRhKFxuICAgICAgICB7XG4gICAgICAgICAgaW5mbzoge2xhYmVsOiB0aWxlc2V0Lm5hbWUsIHR5cGU6IHRpbGVzZXQudHlwZSwgZm9ybWF0OiAncm93cyd9LFxuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIGZpZWxkczogcHJvY2Vzc2VkTWV0YWRhdGE/LmZpZWxkcyB8fCBbXSxcbiAgICAgICAgICAgIHJvd3M6IFtdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICAgICAgLi4ucHJvY2Vzc2VkTWV0YWRhdGEsXG4gICAgICAgICAgICAuLi50aWxlc2V0Lm1ldGFkYXRhXG4gICAgICAgICAgfSxcbiAgICAgICAgICAvLyB2ZWN0b3IgdGlsZSBsYXllciBvbmx5IHN1cHBvcnRzIGdwdSBmaWx0ZXJpbmcgZm9yIG5vd1xuICAgICAgICAgIHN1cHBvcnRlZEZpbHRlclR5cGVzOiBbQUxMX0ZJRUxEX1RZUEVTLnJlYWwsIEFMTF9GSUVMRF9UWVBFUy5pbnRlZ2VyXSxcbiAgICAgICAgICBkaXNhYmxlRGF0YU9wZXJhdGlvbjogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgYXV0b0NyZWF0ZUxheWVyczogdHJ1ZVxuICAgICAgICB9XG4gICAgICApO1xuICAgICAgdGhpcy5fY2xvc2VNb2RhbCgpO1xuICAgIH07XG5cbiAgICBfb25FeHBvcnRJbWFnZSA9ICgpID0+IHtcbiAgICAgIGlmICghdGhpcy5wcm9wcy51aVN0YXRlLmV4cG9ydEltYWdlLnByb2Nlc3NpbmcpIHtcbiAgICAgICAgZXhwb3J0SW1hZ2UodGhpcy5wcm9wcy51aVN0YXRlLmV4cG9ydEltYWdlLCBgJHt0aGlzLnByb3BzLmFwcE5hbWV9LnBuZ2ApO1xuICAgICAgICB0aGlzLnByb3BzLnVpU3RhdGVBY3Rpb25zLmNsZWFudXBFeHBvcnRJbWFnZSgpO1xuICAgICAgICB0aGlzLl9jbG9zZU1vZGFsKCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIF9vbkV4cG9ydERhdGEgPSAoKSA9PiB7XG4gICAgICBleHBvcnREYXRhKHRoaXMucHJvcHMsIHRoaXMucHJvcHMudWlTdGF0ZS5leHBvcnREYXRhKTtcbiAgICAgIHRoaXMuX2Nsb3NlTW9kYWwoKTtcbiAgICB9O1xuXG4gICAgX29uRXhwb3J0TWFwID0gKCkgPT4ge1xuICAgICAgY29uc3Qge3VpU3RhdGV9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHtmb3JtYXR9ID0gdWlTdGF0ZS5leHBvcnRNYXA7XG4gICAgICAoZm9ybWF0ID09PSBFWFBPUlRfTUFQX0ZPUk1BVFMuSFRNTCA/IGV4cG9ydEh0bWwgOiBleHBvcnRKc29uKShcbiAgICAgICAgdGhpcy5wcm9wcyxcbiAgICAgICAgdGhpcy5wcm9wcy51aVN0YXRlLmV4cG9ydE1hcFtmb3JtYXRdIHx8IHt9XG4gICAgICApO1xuICAgICAgdGhpcy5fY2xvc2VNb2RhbCgpO1xuICAgIH07XG5cbiAgICBfZXhwb3J0RmlsZVRvQ2xvdWQgPSAoe3Byb3ZpZGVyLCBpc1B1YmxpYywgb3ZlcndyaXRlLCBjbG9zZU1vZGFsfSkgPT4ge1xuICAgICAgY29uc3QgdG9TYXZlID0gZXhwb3J0TWFwKHRoaXMucHJvcHMpO1xuXG4gICAgICB0aGlzLnByb3BzLnByb3ZpZGVyQWN0aW9ucy5leHBvcnRGaWxlVG9DbG91ZCh7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgbWFwRGF0YTogdG9TYXZlLFxuICAgICAgICBwcm92aWRlcixcbiAgICAgICAgb3B0aW9uczoge1xuICAgICAgICAgIGlzUHVibGljLFxuICAgICAgICAgIG92ZXJ3cml0ZVxuICAgICAgICB9LFxuICAgICAgICBjbG9zZU1vZGFsLFxuICAgICAgICBvblN1Y2Nlc3M6IHRoaXMucHJvcHMub25FeHBvcnRUb0Nsb3VkU3VjY2VzcyxcbiAgICAgICAgb25FcnJvcjogdGhpcy5wcm9wcy5vbkV4cG9ydFRvQ2xvdWRFcnJvclxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIF9vblNhdmVNYXAgPSAocHJvdmlkZXIsIG92ZXJ3cml0ZSA9IGZhbHNlKSA9PiB7XG4gICAgICB0aGlzLl9leHBvcnRGaWxlVG9DbG91ZCh7XG4gICAgICAgIHByb3ZpZGVyLFxuICAgICAgICBpc1B1YmxpYzogZmFsc2UsXG4gICAgICAgIG92ZXJ3cml0ZSxcbiAgICAgICAgY2xvc2VNb2RhbDogdHJ1ZVxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIF9vbk92ZXJ3cml0ZU1hcCA9ICgpID0+IHtcbiAgICAgIHRoaXMuX29uU2F2ZU1hcCh0cnVlKTtcbiAgICB9O1xuXG4gICAgX29uU2hhcmVNYXBVcmwgPSBwcm92aWRlciA9PiB7XG4gICAgICB0aGlzLl9leHBvcnRGaWxlVG9DbG91ZCh7cHJvdmlkZXIsIGlzUHVibGljOiB0cnVlLCBvdmVyd3JpdGU6IGZhbHNlLCBjbG9zZU1vZGFsOiBmYWxzZX0pO1xuICAgIH07XG5cbiAgICBfb25DbG9zZVNhdmVNYXAgPSAoKSA9PiB7XG4gICAgICB0aGlzLnByb3BzLnByb3ZpZGVyQWN0aW9ucy5yZXNldFByb3ZpZGVyU3RhdHVzKCk7XG4gICAgICB0aGlzLl9jbG9zZU1vZGFsKCk7XG4gICAgfTtcblxuICAgIF9vbkxvYWRDbG91ZE1hcCA9IHBheWxvYWQgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5wcm92aWRlckFjdGlvbnMubG9hZENsb3VkTWFwKHtcbiAgICAgICAgLi4ucGF5bG9hZCxcbiAgICAgICAgb25TdWNjZXNzOiB0aGlzLnByb3BzLm9uTG9hZENsb3VkTWFwU3VjY2VzcyxcbiAgICAgICAgb25FcnJvcjogdGhpcy5wcm9wcy5vbkxvYWRDbG91ZE1hcEVycm9yXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgY29tcGxleGl0eSAqL1xuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgY29udGFpbmVyVyxcbiAgICAgICAgY29udGFpbmVySCxcbiAgICAgICAgbWFwU3R5bGUsXG4gICAgICAgIG1hcFN0YXRlLFxuICAgICAgICB1aVN0YXRlLFxuICAgICAgICB2aXNTdGF0ZSxcbiAgICAgICAgcm9vdE5vZGUsXG4gICAgICAgIHZpc1N0YXRlQWN0aW9ucyxcbiAgICAgICAgdWlTdGF0ZUFjdGlvbnMsXG4gICAgICAgIHByb3ZpZGVyU3RhdGVcbiAgICAgIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qge2N1cnJlbnRNb2RhbCwgZGF0YXNldEtleVRvUmVtb3ZlfSA9IHVpU3RhdGU7XG4gICAgICBjb25zdCB7ZGF0YXNldHMsIGxheWVycywgZWRpdGluZ0RhdGFzZXR9ID0gdmlzU3RhdGU7XG5cbiAgICAgIGxldCB0ZW1wbGF0ZTogSlNYLkVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgICAgIGxldCBtb2RhbFByb3BzOiBQYXJ0aWFsPE1vZGFsRGlhbG9nUHJvcHM+ID0ge307XG5cbiAgICAgIC8vIFRPRE8gLSBjdXJyZW50TW9kYWwgaXMgYSBzdHJpbmdcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmIChjdXJyZW50TW9kYWwgJiYgY3VycmVudE1vZGFsLmlkICYmIGN1cnJlbnRNb2RhbC50ZW1wbGF0ZSkge1xuICAgICAgICAvLyBpZiBjdXJyZW50TWRvYWwgdGVtcGxhdGUgaXMgYWxyZWFkeSBwcm92aWRlZFxuICAgICAgICAvLyBUT0RPOiBuZWVkIHRvIGNoZWNrIHdoZXRoZXIgdGVtcGxhdGUgaXMgdmFsaWRcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0ZW1wbGF0ZSA9IDxjdXJyZW50TW9kYWwudGVtcGxhdGUgLz47XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgbW9kYWxQcm9wcyA9IGN1cnJlbnRNb2RhbC5tb2RhbFByb3BzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3dpdGNoIChjdXJyZW50TW9kYWwpIHtcbiAgICAgICAgICBjYXNlIERBVEFfVEFCTEVfSUQ6IHtcbiAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gY29udGFpbmVyVyAqIDAuOTtcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8RGF0YVRhYmxlTW9kYWxcbiAgICAgICAgICAgICAgICBkYXRhc2V0cz17ZGF0YXNldHN9XG4gICAgICAgICAgICAgICAgZGF0YUlkPXtlZGl0aW5nRGF0YXNldH1cbiAgICAgICAgICAgICAgICBzaG93RGF0YXNldFRhYmxlPXt2aXNTdGF0ZUFjdGlvbnMuc2hvd0RhdGFzZXRUYWJsZX1cbiAgICAgICAgICAgICAgICBzb3J0VGFibGVDb2x1bW49e3Zpc1N0YXRlQWN0aW9ucy5zb3J0VGFibGVDb2x1bW59XG4gICAgICAgICAgICAgICAgcGluVGFibGVDb2x1bW49e3Zpc1N0YXRlQWN0aW9ucy5waW5UYWJsZUNvbHVtbn1cbiAgICAgICAgICAgICAgICBjb3B5VGFibGVDb2x1bW49e3Zpc1N0YXRlQWN0aW9ucy5jb3B5VGFibGVDb2x1bW59XG4gICAgICAgICAgICAgICAgc2V0Q29sdW1uRGlzcGxheUZvcm1hdD17dmlzU3RhdGVBY3Rpb25zLnNldENvbHVtbkRpc3BsYXlGb3JtYXR9XG4gICAgICAgICAgICAgICAgdWlTdGF0ZUFjdGlvbnM9e3VpU3RhdGVBY3Rpb25zfVxuICAgICAgICAgICAgICAgIHVpU3RhdGU9e3VpU3RhdGV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAvLyBUT0RPOiB3ZSBuZWVkIHRvIG1ha2UgdGhpcyB3aWR0aCBjb25zaXN0ZW50IHdpdGggdGhlIGNzcyBydWxlIGRlZmluZWQgbW9kYWwuanM6MzIgbWF4LXdpZHRoOiA3MHZ3XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlIC8vIFRPRE8gZml4IHRoaXMgYWZ0ZXIgYWRkIHR5cGVzIHRvIFRoZW1lXG4gICAgICAgICAgICBtb2RhbFByb3BzLmNzc1N0eWxlID0gY3NzYFxuICAgICAgICAgICAgICAke0RhdGFUYWJsZU1vZGFsU3R5bGV9O1xuICAgICAgICAgICAgICAke21lZGlhLnBhbG1gXG4gICAgICAgICAgICAgICAgd2lkdGg6ICR7d2lkdGh9cHg7XG4gICAgICAgICAgICAgIGB9O1xuICAgICAgICAgICAgYDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlIERFTEVURV9EQVRBX0lEOiB7XG4gICAgICAgICAgICAvLyB2YWxpZGF0ZSBvcHRpb25zXG4gICAgICAgICAgICBpZiAoZGF0YXNldEtleVRvUmVtb3ZlICYmIGRhdGFzZXRzICYmIGRhdGFzZXRzW2RhdGFzZXRLZXlUb1JlbW92ZV0pIHtcbiAgICAgICAgICAgICAgdGVtcGxhdGUgPSAoXG4gICAgICAgICAgICAgICAgPERlbGV0ZURhdGFzZXRNb2RhbCBkYXRhc2V0PXtkYXRhc2V0c1tkYXRhc2V0S2V5VG9SZW1vdmVdfSBsYXllcnM9e2xheWVyc30gLz5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgbW9kYWxQcm9wcyA9IHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ21vZGFsLnRpdGxlLmRlbGV0ZURhdGFzZXQnLFxuICAgICAgICAgICAgICAgIGNzc1N0eWxlOiBzbWFsbE1vZGFsQ3NzLFxuICAgICAgICAgICAgICAgIGZvb3RlcjogdHJ1ZSxcbiAgICAgICAgICAgICAgICBvbkNvbmZpcm06ICgpID0+IHRoaXMuX2RlbGV0ZURhdGFzZXQoZGF0YXNldEtleVRvUmVtb3ZlKSxcbiAgICAgICAgICAgICAgICBvbkNhbmNlbDogdGhpcy5fY2xvc2VNb2RhbCxcbiAgICAgICAgICAgICAgICBjb25maXJtQnV0dG9uOiB7XG4gICAgICAgICAgICAgICAgICBuZWdhdGl2ZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIGxhcmdlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgY2hpbGRyZW46ICdtb2RhbC5idXR0b24uZGVsZXRlJ1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrOyAvLyBpbiBjYXNlIHdlIGFkZCBhIG5ldyBjYXNlIGFmdGVyIHRoaXMgb25lXG4gICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgQUREX0RBVEFfSUQ6XG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IChcbiAgICAgICAgICAgICAgPExvYWREYXRhTW9kYWxcbiAgICAgICAgICAgICAgICB7Li4ucHJvdmlkZXJTdGF0ZX1cbiAgICAgICAgICAgICAgICBvbkNsb3NlPXt0aGlzLl9jbG9zZU1vZGFsfVxuICAgICAgICAgICAgICAgIG9uRmlsZVVwbG9hZD17dGhpcy5fb25GaWxlVXBsb2FkfVxuICAgICAgICAgICAgICAgIG9uVGlsZXNldEFkZGVkPXt0aGlzLl9vblRpbGVzZXRBZGRlZH1cbiAgICAgICAgICAgICAgICBvbkxvYWRDbG91ZE1hcD17dGhpcy5fb25Mb2FkQ2xvdWRNYXB9XG4gICAgICAgICAgICAgICAgbG9hZEZpbGVzPXt1aVN0YXRlLmxvYWRGaWxlc31cbiAgICAgICAgICAgICAgICBmaWxlTG9hZGluZz17dmlzU3RhdGUuZmlsZUxvYWRpbmd9XG4gICAgICAgICAgICAgICAgZmlsZUxvYWRpbmdQcm9ncmVzcz17dmlzU3RhdGUuZmlsZUxvYWRpbmdQcm9ncmVzc31cbiAgICAgICAgICAgICAgICBmaWxlRm9ybWF0TmFtZXM9e2dldEZpbGVGb3JtYXROYW1lcyh0aGlzLnByb3BzLnZpc1N0YXRlKX1cbiAgICAgICAgICAgICAgICBmaWxlRXh0ZW5zaW9ucz17Z2V0RmlsZUV4dGVuc2lvbnModGhpcy5wcm9wcy52aXNTdGF0ZSl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbW9kYWxQcm9wcyA9IHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdtb2RhbC50aXRsZS5hZGREYXRhVG9NYXAnLFxuICAgICAgICAgICAgICBjc3NTdHlsZTogTG9hZERhdGFNb2RhbFN0eWxlLFxuICAgICAgICAgICAgICBmb290ZXI6IGZhbHNlLFxuICAgICAgICAgICAgICBvbkNvbmZpcm06IHRoaXMuX2Nsb3NlTW9kYWxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIEVYUE9SVF9JTUFHRV9JRDpcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8RXhwb3J0SW1hZ2VNb2RhbFxuICAgICAgICAgICAgICAgIGV4cG9ydEltYWdlPXt1aVN0YXRlLmV4cG9ydEltYWdlfVxuICAgICAgICAgICAgICAgIG1hcFc9e2NvbnRhaW5lcld9XG4gICAgICAgICAgICAgICAgbWFwSD17Y29udGFpbmVySH1cbiAgICAgICAgICAgICAgICBvblVwZGF0ZUltYWdlU2V0dGluZz17dWlTdGF0ZUFjdGlvbnMuc2V0RXhwb3J0SW1hZ2VTZXR0aW5nfVxuICAgICAgICAgICAgICAgIGNsZWFudXBFeHBvcnRJbWFnZT17dWlTdGF0ZUFjdGlvbnMuY2xlYW51cEV4cG9ydEltYWdlfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnbW9kYWwudGl0bGUuZXhwb3J0SW1hZ2UnLFxuICAgICAgICAgICAgICBjc3NTdHlsZTogJycsXG4gICAgICAgICAgICAgIGZvb3RlcjogdHJ1ZSxcbiAgICAgICAgICAgICAgb25DYW5jZWw6IHRoaXMuX2Nsb3NlTW9kYWwsXG4gICAgICAgICAgICAgIG9uQ29uZmlybTogdGhpcy5fb25FeHBvcnRJbWFnZSxcbiAgICAgICAgICAgICAgY29uZmlybUJ1dHRvbjoge1xuICAgICAgICAgICAgICAgIGxhcmdlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkOiB1aVN0YXRlLmV4cG9ydEltYWdlLnByb2Nlc3NpbmcsXG4gICAgICAgICAgICAgICAgY2hpbGRyZW46ICdtb2RhbC5idXR0b24uZG93bmxvYWQnXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIEVYUE9SVF9EQVRBX0lEOlxuICAgICAgICAgICAgdGVtcGxhdGUgPSAoXG4gICAgICAgICAgICAgIDxFeHBvcnREYXRhTW9kYWxcbiAgICAgICAgICAgICAgICB7Li4udWlTdGF0ZS5leHBvcnREYXRhfVxuICAgICAgICAgICAgICAgIHN1cHBvcnRlZERhdGFUeXBlcz17RVhQT1JUX0RBVEFfVFlQRV9PUFRJT05TfVxuICAgICAgICAgICAgICAgIGRhdGFzZXRzPXtkYXRhc2V0c31cbiAgICAgICAgICAgICAgICBhcHBseUNQVUZpbHRlcj17dGhpcy5wcm9wcy52aXNTdGF0ZUFjdGlvbnMuYXBwbHlDUFVGaWx0ZXJ9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2VFeHBvcnREYXRhVHlwZT17dWlTdGF0ZUFjdGlvbnMuc2V0RXhwb3J0RGF0YVR5cGV9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2VFeHBvcnRTZWxlY3RlZERhdGFzZXQ9e3VpU3RhdGVBY3Rpb25zLnNldEV4cG9ydFNlbGVjdGVkRGF0YXNldH1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZUV4cG9ydEZpbHRlcmVkPXt1aVN0YXRlQWN0aW9ucy5zZXRFeHBvcnRGaWx0ZXJlZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBtb2RhbFByb3BzID0ge1xuICAgICAgICAgICAgICB0aXRsZTogJ21vZGFsLnRpdGxlLmV4cG9ydERhdGEnLFxuICAgICAgICAgICAgICBjc3NTdHlsZTogJycsXG4gICAgICAgICAgICAgIGZvb3RlcjogdHJ1ZSxcbiAgICAgICAgICAgICAgb25DYW5jZWw6IHRoaXMuX2Nsb3NlTW9kYWwsXG4gICAgICAgICAgICAgIG9uQ29uZmlybTogdGhpcy5fb25FeHBvcnREYXRhLFxuICAgICAgICAgICAgICBjb25maXJtQnV0dG9uOiB7XG4gICAgICAgICAgICAgICAgbGFyZ2U6IHRydWUsXG4gICAgICAgICAgICAgICAgY2hpbGRyZW46ICdtb2RhbC5idXR0b24uZXhwb3J0J1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBFWFBPUlRfTUFQX0lEOiB7XG4gICAgICAgICAgICBjb25zdCBrZXBsZXJHbENvbmZpZyA9IHZpc1N0YXRlLnNjaGVtYS5nZXRDb25maWdUb1NhdmUoe1xuICAgICAgICAgICAgICBtYXBTdHlsZSxcbiAgICAgICAgICAgICAgdmlzU3RhdGUsXG4gICAgICAgICAgICAgIG1hcFN0YXRlLFxuICAgICAgICAgICAgICB1aVN0YXRlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8RXhwb3J0TWFwTW9kYWxcbiAgICAgICAgICAgICAgICBjb25maWc9e2tlcGxlckdsQ29uZmlnfVxuICAgICAgICAgICAgICAgIG9wdGlvbnM9e3VpU3RhdGUuZXhwb3J0TWFwfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlRXhwb3J0TWFwRm9ybWF0PXt1aVN0YXRlQWN0aW9ucy5zZXRFeHBvcnRNYXBGb3JtYXR9XG4gICAgICAgICAgICAgICAgb25FZGl0VXNlck1hcGJveEFjY2Vzc1Rva2VuPXt1aVN0YXRlQWN0aW9ucy5zZXRVc2VyTWFwYm94QWNjZXNzVG9rZW59XG4gICAgICAgICAgICAgICAgb25DaGFuZ2VFeHBvcnRNYXBIVE1MTW9kZT17dWlTdGF0ZUFjdGlvbnMuc2V0RXhwb3J0SFRNTE1hcE1vZGV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbW9kYWxQcm9wcyA9IHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdtb2RhbC50aXRsZS5leHBvcnRNYXAnLFxuICAgICAgICAgICAgICBjc3NTdHlsZTogJycsXG4gICAgICAgICAgICAgIGZvb3RlcjogdHJ1ZSxcbiAgICAgICAgICAgICAgb25DYW5jZWw6IHRoaXMuX2Nsb3NlTW9kYWwsXG4gICAgICAgICAgICAgIG9uQ29uZmlybTogdGhpcy5fb25FeHBvcnRNYXAsXG4gICAgICAgICAgICAgIGNvbmZpcm1CdXR0b246IHtcbiAgICAgICAgICAgICAgICBsYXJnZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBjaGlsZHJlbjogJ21vZGFsLmJ1dHRvbi5leHBvcnQnXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgICAgY2FzZSBBRERfTUFQX1NUWUxFX0lEOlxuICAgICAgICAgICAgdGVtcGxhdGUgPSAoXG4gICAgICAgICAgICAgIDxBZGRNYXBTdHlsZU1vZGFsXG4gICAgICAgICAgICAgICAgbWFwYm94QXBpQWNjZXNzVG9rZW49e3RoaXMucHJvcHMubWFwYm94QXBpQWNjZXNzVG9rZW59XG4gICAgICAgICAgICAgICAgbWFwYm94QXBpVXJsPXt0aGlzLnByb3BzLm1hcGJveEFwaVVybH1cbiAgICAgICAgICAgICAgICBtYXBTdGF0ZT17dGhpcy5wcm9wcy5tYXBTdGF0ZX1cbiAgICAgICAgICAgICAgICBpbnB1dFN0eWxlPXttYXBTdHlsZS5pbnB1dFN0eWxlfVxuICAgICAgICAgICAgICAgIGlucHV0TWFwU3R5bGU9e3RoaXMucHJvcHMubWFwU3R5bGVBY3Rpb25zLmlucHV0TWFwU3R5bGV9XG4gICAgICAgICAgICAgICAgbG9hZEN1c3RvbU1hcFN0eWxlPXt0aGlzLnByb3BzLm1hcFN0eWxlQWN0aW9ucy5sb2FkQ3VzdG9tTWFwU3R5bGV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbW9kYWxQcm9wcyA9IHtcbiAgICAgICAgICAgICAgdGl0bGU6ICdtb2RhbC50aXRsZS5hZGRDdXN0b21NYXBib3hTdHlsZScsXG4gICAgICAgICAgICAgIGNzc1N0eWxlOiAnJyxcbiAgICAgICAgICAgICAgZm9vdGVyOiB0cnVlLFxuICAgICAgICAgICAgICBvbkNhbmNlbDogdGhpcy5fY2xvc2VNb2RhbCxcbiAgICAgICAgICAgICAgb25Db25maXJtOiB0aGlzLl9vbkFkZEN1c3RvbU1hcFN0eWxlLFxuICAgICAgICAgICAgICBjb25maXJtQnV0dG9uOiB7XG4gICAgICAgICAgICAgICAgbGFyZ2U6IHRydWUsXG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ6XG4gICAgICAgICAgICAgICAgICBtYXBTdHlsZS5pbnB1dFN0eWxlLmVycm9yIHx8XG4gICAgICAgICAgICAgICAgICAhbWFwU3R5bGUuaW5wdXRTdHlsZS51cmwgfHxcbiAgICAgICAgICAgICAgICAgICFtYXBTdHlsZS5pbnB1dFN0eWxlLmxhYmVsLFxuICAgICAgICAgICAgICAgIGNoaWxkcmVuOiAnbW9kYWwuYnV0dG9uLmFkZFN0eWxlJ1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBTQVZFX01BUF9JRDpcbiAgICAgICAgICAgIHRlbXBsYXRlID0gKFxuICAgICAgICAgICAgICA8U2F2ZU1hcE1vZGFsXG4gICAgICAgICAgICAgICAgey4uLnByb3ZpZGVyU3RhdGV9XG4gICAgICAgICAgICAgICAgZXhwb3J0SW1hZ2U9e3VpU3RhdGUuZXhwb3J0SW1hZ2V9XG4gICAgICAgICAgICAgICAgbWFwSW5mbz17dmlzU3RhdGUubWFwSW5mb31cbiAgICAgICAgICAgICAgICBvblNldE1hcEluZm89e3Zpc1N0YXRlQWN0aW9ucy5zZXRNYXBJbmZvfVxuICAgICAgICAgICAgICAgIGNsZWFudXBFeHBvcnRJbWFnZT17dWlTdGF0ZUFjdGlvbnMuY2xlYW51cEV4cG9ydEltYWdlfVxuICAgICAgICAgICAgICAgIG9uVXBkYXRlSW1hZ2VTZXR0aW5nPXt1aVN0YXRlQWN0aW9ucy5zZXRFeHBvcnRJbWFnZVNldHRpbmd9XG4gICAgICAgICAgICAgICAgb25DYW5jZWw9e3RoaXMuX2Nsb3NlTW9kYWx9XG4gICAgICAgICAgICAgICAgb25Db25maXJtPXtwcm92aWRlciA9PiB0aGlzLl9vblNhdmVNYXAocHJvdmlkZXIsIGZhbHNlKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBtb2RhbFByb3BzID0ge1xuICAgICAgICAgICAgICB0aXRsZTogJ21vZGFsLnRpdGxlLnNhdmVNYXAnLFxuICAgICAgICAgICAgICBjc3NTdHlsZTogJycsXG4gICAgICAgICAgICAgIGZvb3RlcjogZmFsc2VcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIE9WRVJXUklURV9NQVBfSUQ6XG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IChcbiAgICAgICAgICAgICAgPE92ZXJXcml0ZU1hcE1vZGFsXG4gICAgICAgICAgICAgICAgey4uLnByb3ZpZGVyU3RhdGV9XG4gICAgICAgICAgICAgICAgdGl0bGU9e2dldCh2aXNTdGF0ZSwgWydtYXBJbmZvJywgJ3RpdGxlJ10pfVxuICAgICAgICAgICAgICAgIG9uVXBkYXRlSW1hZ2VTZXR0aW5nPXt1aVN0YXRlQWN0aW9ucy5zZXRFeHBvcnRJbWFnZVNldHRpbmd9XG4gICAgICAgICAgICAgICAgY2xlYW51cEV4cG9ydEltYWdlPXt1aVN0YXRlQWN0aW9ucy5jbGVhbnVwRXhwb3J0SW1hZ2V9XG4gICAgICAgICAgICAgICAgb25Db25maXJtPXt0aGlzLl9vbk92ZXJ3cml0ZU1hcH1cbiAgICAgICAgICAgICAgICBvbkNhbmNlbD17dGhpcy5fY2xvc2VNb2RhbH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBtb2RhbFByb3BzID0ge1xuICAgICAgICAgICAgICB0aXRsZTogJ092ZXJ3cml0ZSBFeGlzdGluZyBGaWxlPycsXG4gICAgICAgICAgICAgIGNzc1N0eWxlOiBzbWFsbE1vZGFsQ3NzLFxuICAgICAgICAgICAgICBmb290ZXI6IGZhbHNlXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBTSEFSRV9NQVBfSUQ6XG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IChcbiAgICAgICAgICAgICAgPFNoYXJlTWFwTW9kYWxcbiAgICAgICAgICAgICAgICB7Li4ucHJvdmlkZXJTdGF0ZX1cbiAgICAgICAgICAgICAgICBvbkV4cG9ydD17dGhpcy5fb25TaGFyZU1hcFVybH1cbiAgICAgICAgICAgICAgICBjbGVhbnVwRXhwb3J0SW1hZ2U9e3VpU3RhdGVBY3Rpb25zLmNsZWFudXBFeHBvcnRJbWFnZX1cbiAgICAgICAgICAgICAgICBvblVwZGF0ZUltYWdlU2V0dGluZz17dWlTdGF0ZUFjdGlvbnMuc2V0RXhwb3J0SW1hZ2VTZXR0aW5nfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIG1vZGFsUHJvcHMgPSB7XG4gICAgICAgICAgICAgIHRpdGxlOiAnbW9kYWwudGl0bGUuc2hhcmVVUkwnLFxuICAgICAgICAgICAgICBjc3NTdHlsZTogJycsXG4gICAgICAgICAgICAgIG9uQ2FuY2VsOiB0aGlzLl9vbkNsb3NlU2F2ZU1hcFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcm9vdE5vZGUgPyAoXG4gICAgICAgIDxNb2RhbERpYWxvZ1xuICAgICAgICAgIHBhcmVudFNlbGVjdG9yPXsoKSA9PiBmaW5kRE9NTm9kZShyb290Tm9kZSkgYXMgSFRNTEVsZW1lbnR9XG4gICAgICAgICAgaXNPcGVuPXtCb29sZWFuKGN1cnJlbnRNb2RhbCl9XG4gICAgICAgICAgb25DYW5jZWw9e3RoaXMuX2Nsb3NlTW9kYWx9XG4gICAgICAgICAgey4uLm1vZGFsUHJvcHN9XG4gICAgICAgICAgY3NzU3R5bGU9e0RlZmF1bHRTdHlsZS5jb25jYXQobW9kYWxQcm9wcy5jc3NTdHlsZSl9XG4gICAgICAgID5cbiAgICAgICAgICB7dGVtcGxhdGV9XG4gICAgICAgIDwvTW9kYWxEaWFsb2c+XG4gICAgICApIDogbnVsbDtcbiAgICB9XG4gICAgLyogZXNsaW50LWVuYWJsZSBjb21wbGV4aXR5ICovXG4gIH1cblxuICByZXR1cm4gTW9kYWxDb250YWluZXI7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsT0FBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksU0FBQSxHQUFBRCxzQkFBQSxDQUFBSCxPQUFBO0FBRUEsSUFBQUssVUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sU0FBQSxHQUFBTixPQUFBO0FBT0EsSUFBQU8sTUFBQSxHQUFBUCxPQUFBO0FBRUEsSUFBQVEsWUFBQSxHQUFBTCxzQkFBQSxDQUFBSCxPQUFBO0FBR0EsSUFBQVMsZ0JBQUEsR0FBQU4sc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFVLGtCQUFBLEdBQUFQLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBVyxlQUFBLEdBQUFSLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBWSxjQUFBLEdBQUFULHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBYSxpQkFBQSxHQUFBVixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQWMsZ0JBQUEsR0FBQVgsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFlLGVBQUEsR0FBQVosc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFnQixpQkFBQSxHQUFBYixzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQWlCLGFBQUEsR0FBQWQs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U0FBQSxpQkFDWi9CLGFBQWE7Z0JBQ2pCcUIsS0FBSyxFQUFFLElBQUF2TCxrQkFBRyxFQUFDZ0ssUUFBUSxFQUFFLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFFO2dCQUMzQ2tELG9CQUFvQixFQUFFMUgsY0FBYyxDQUFDMkgscUJBQXNCO2dCQUMzRDVGLGtCQUFrQixFQUFFL0IsY0FBYyxDQUFDK0Isa0JBQW1CO2dCQUN0RGtFLFNBQVMsRUFBRSxJQUFJLENBQUNrRSxlQUFnQjtnQkFDaENoRSxRQUFRLEVBQUUsSUFBSSxDQUFDckc7Y0FBWSxFQUM1QixDQUNGO2NBQ0RtRixVQUFVLEdBQUc7Z0JBQ1hjLEtBQUssRUFBRSwwQkFBMEI7Z0JBQ2pDSCxRQUFRLEVBQUV6SSxhQUFhO2dCQUN2QjZJLE1BQU0sRUFBRTtjQUNWLENBQUM7Y0FDRDtZQUNGLEtBQUtvRSx1QkFBWTtjQUNmcEYsUUFBUSxnQkFDTi9NLE1BQUEsWUFBQWtOLGFBQUEsQ0FBQ3RHLGFBQWEsTUFBQTRILFNBQUEsaUJBQ1IvQixhQUFhO2dCQUNqQjJGLFFBQVEsRUFBRSxJQUFJLENBQUNDLGNBQWU7Z0JBQzlCdkksa0JBQWtCLEVBQUUvQixjQUFjLENBQUMrQixrQkFBbUI7Z0JBQ3REMkYsb0JBQW9CLEVBQUUxSCxjQUFjLENBQUMySDtjQUFzQixFQUM1RCxDQUNGO2NBQ0QxQyxVQUFVLEdBQUc7Z0JBQ1hjLEtBQUssRUFBRSxzQkFBc0I7Z0JBQzdCSCxRQUFRLEVBQUUsRUFBRTtnQkFDWk8sUUFBUSxFQUFFLElBQUksQ0FBQ29FO2NBQ2pCLENBQUM7Y0FDRDtZQUNGO2NBQ0U7VUFDSjtRQUNGO1FBRUEsT0FBTzlGLFFBQVEsZ0JBQ2J4TSxNQUFBLFlBQUFrTixhQUFBLENBQUN4RyxXQUFXLE1BQUE4SCxTQUFBO1VBQ1YrRCxjQUFjLEVBQUUsU0FBaEJBLGNBQWNBLENBQUE7WUFBQSxPQUFRLElBQUFDLHFCQUFXLEVBQUNoRyxRQUFRLENBQUM7VUFBQSxDQUFnQjtVQUMzRGlHLE1BQU0sRUFBRWhPLE9BQU8sQ0FBQ2lJLFlBQVksQ0FBRTtVQUM5QndCLFFBQVEsRUFBRSxJQUFJLENBQUNyRztRQUFZLEdBQ3ZCbUYsVUFBVTtVQUNkVyxRQUFRLEVBQUV2SSxZQUFZLENBQUNpQyxNQUFNLENBQUMyRixVQUFVLENBQUNXLFFBQVE7UUFBRSxJQUVsRFosUUFDVSxDQUFDLEdBQ1osSUFBSTtNQUNWO01BQ0E7SUFBQTtFQUFBLEVBaloyQjJGLGdCQUFTO0VBb1p0QyxPQUFPN0wsY0FBYztBQUN2QiIsImlnbm9yZUxpc3QiOltdfQ==
@@ -39,13 +39,16 @@ var MapW = 264;
39
39
  var ErrorMsg = {
40
40
  styleError: 'Failed to load map style, make sure it is published. For private style, paste in your access token.'
41
41
  };
42
- var PreviewMap = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n align-items: center;\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-left: 116px;\n flex-shrink: 0;\n\n .preview-title {\n font-weight: 500;\n font-size: 10px;\n padding: 8px 0px;\n }\n\n .preview-title.error {\n color: ", ";\n }\n\n ", ";\n\n ", ";\n"])), function (props) {
42
+ var PreviewMap = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n align-items: center;\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-left: 116px;\n flex-shrink: 0;\n\n .preview-title {\n font-weight: 500;\n font-size: 10px;\n padding: 8px 0px;\n }\n\n .preview-title.error {\n color: ", ";\n max-width: 250px;\n }\n\n ", ";\n\n ", ";\n"])), function (props) {
43
43
  return props.theme.errorColor;
44
44
  }, _styles.media.portable(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 32px;\n "]))), _styles.media.palm(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: unset;\n .preview-title {\n margin-top: 0px;\n }\n "]))));
45
45
  var StyledPreviewImage = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n background: ", ";\n border-radius: 4px;\n box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.18);\n width: ", "px;\n height: ", "px;\n position: relative;\n\n .preview-image-placeholder {\n position: absolute;\n top: 0;\n left: 0;\n }\n\n .preview-image-spinner {\n position: absolute;\n left: calc(50% - 25px);\n top: calc(50% - 25px);\n }\n"])), function (props) {
46
46
  return props.theme.modalImagePlaceHolder;
47
47
  }, MapW, MapH);
48
48
  var InlineLink = _styledComponents["default"].a(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-weight: 500;\n\n &:hover {\n cursor: pointer;\n }\n"])));
49
+ var nop = function nop() {
50
+ return;
51
+ };
49
52
  function AddMapStyleModalFactory() {
50
53
  var AddMapStyleModal = /*#__PURE__*/function (_Component) {
51
54
  function AddMapStyleModal() {
@@ -59,8 +62,29 @@ function AddMapStyleModalFactory() {
59
62
  reRenderKey: 0,
60
63
  previousToken: null
61
64
  });
62
- (0, _defineProperty2["default"])(_this, "mapRef", void 0);
63
65
  (0, _defineProperty2["default"])(_this, "_map", void 0);
66
+ (0, _defineProperty2["default"])(_this, "_setMapRef", function (mapRef) {
67
+ // Handle change of the basemap library
68
+ if (_this._map && mapRef) {
69
+ var _map = mapRef.getMap();
70
+ if (_map && _this._map !== _map) {
71
+ _this._map.off('style.load', nop);
72
+ _this._map.off('error', nop);
73
+ _this._map = null;
74
+ }
75
+ }
76
+ var map = mapRef && mapRef.getMap();
77
+ if (map && _this._map !== map) {
78
+ _this._map = map;
79
+ map.on('style.load', function () {
80
+ var style = map.getStyle();
81
+ _this.loadMapStyleJson(style);
82
+ });
83
+ map.on('error', function () {
84
+ _this.loadMapStyleError();
85
+ });
86
+ }
87
+ });
64
88
  (0, _defineProperty2["default"])(_this, "loadMapStyleJson", function (style) {
65
89
  _this.props.loadCustomMapStyle({
66
90
  style: style,
@@ -76,27 +100,11 @@ function AddMapStyleModalFactory() {
76
100
  }
77
101
  (0, _inherits2["default"])(AddMapStyleModal, _Component);
78
102
  return (0, _createClass2["default"])(AddMapStyleModal, [{
79
- key: "componentDidUpdate",
80
- value: function componentDidUpdate() {
81
- var _this2 = this;
82
- var map = this.mapRef && this.mapRef.getMap();
83
- if (map && this._map !== map) {
84
- this._map = map;
85
- map.on('style.load', function () {
86
- var style = map.getStyle();
87
- _this2.loadMapStyleJson(style);
88
- });
89
- map.on('error', function () {
90
- _this2.loadMapStyleError();
91
- });
92
- }
93
- }
94
- }, {
95
103
  key: "render",
96
104
  value: function render() {
97
105
  var _this$props$transform,
98
106
  _this$props2,
99
- _this3 = this;
107
+ _this2 = this;
100
108
  var _this$props = this.props,
101
109
  inputStyle = _this$props.inputStyle,
102
110
  mapState = _this$props.mapState,
@@ -139,7 +147,7 @@ function AddMapStyleModalFactory() {
139
147
  value: inputStyle.url || '',
140
148
  onChange: function onChange(_ref) {
141
149
  var value = _ref.target.value;
142
- return _this3.props.inputMapStyle({
150
+ return _this2.props.inputMapStyle({
143
151
  url: value,
144
152
  id: 'Custom Style',
145
153
  icon: _constants.NO_BASEMAP_ICON
@@ -182,7 +190,7 @@ function AddMapStyleModalFactory() {
182
190
  value: inputStyle.accessToken || '',
183
191
  onChange: function onChange(_ref2) {
184
192
  var value = _ref2.target.value;
185
- return _this3.props.inputMapStyle({
193
+ return _this2.props.inputMapStyle({
186
194
  accessToken: value
187
195
  });
188
196
  },
@@ -198,7 +206,7 @@ function AddMapStyleModalFactory() {
198
206
  value: inputStyle.label || '',
199
207
  onChange: function onChange(_ref3) {
200
208
  var value = _ref3.target.value;
201
- return _this3.props.inputMapStyle({
209
+ return _this2.props.inputMapStyle({
202
210
  label: value
203
211
  });
204
212
  },
@@ -212,10 +220,8 @@ function AddMapStyleModalFactory() {
212
220
  }, !inputStyle.isValid ? /*#__PURE__*/_react["default"].createElement("div", {
213
221
  className: "preview-image-spinner"
214
222
  }) : /*#__PURE__*/_react["default"].createElement(_styledComponents2.StyledMapContainer, null, /*#__PURE__*/_react["default"].createElement(_reactMapGl.Map, (0, _extends2["default"])({}, mapProps, {
215
- ref: function ref(el) {
216
- _this3.mapRef = el;
217
- },
218
- key: this.state.reRenderKey,
223
+ ref: this._setMapRef,
224
+ key: "".concat(baseMapLibraryName, "-").concat(this.state.reRenderKey, "-").concat(inputStyle.url, "-").concat(mapboxApiAccessToken),
219
225
  style: {
220
226
  width: MapW,
221
227
  height: MapH
@@ -243,4 +249,4 @@ function AddMapStyleModalFactory() {
243
249
  return (0, _reactIntl.injectIntl)((0, _reactLifecyclesCompat.polyfill)(AddMapStyleModal));
244
250
  }
245
251
  var _default = exports["default"] = AddMapStyleModalFactory;
246
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RMaWZlY3ljbGVzQ29tcGF0IiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3N0eWxlZENvbXBvbmVudHMiLCJfcmVhY3RNYXBHbCIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9zdHlsZXMiLCJfdXRpbHMiLCJfcmVhY3RJbnRsIiwiX2xvY2FsaXphdGlvbiIsIl9jb25zdGFudHMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl90ZW1wbGF0ZU9iamVjdDQiLCJfdGVtcGxhdGVPYmplY3Q1IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiX2NhbGxTdXBlciIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJNYXBIIiwiTWFwVyIsIkVycm9yTXNnIiwic3R5bGVFcnJvciIsIlByZXZpZXdNYXAiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJlcnJvckNvbG9yIiwibWVkaWEiLCJwb3J0YWJsZSIsInBhbG0iLCJTdHlsZWRQcmV2aWV3SW1hZ2UiLCJtb2RhbEltYWdlUGxhY2VIb2xkZXIiLCJJbmxpbmVMaW5rIiwiQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnkiLCJBZGRNYXBTdHlsZU1vZGFsIiwiX0NvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29uY2F0IiwicmVSZW5kZXJLZXkiLCJwcmV2aW91c1Rva2VuIiwic3R5bGUiLCJsb2FkQ3VzdG9tTWFwU3R5bGUiLCJlcnJvciIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwia2V5IiwidmFsdWUiLCJjb21wb25lbnREaWRVcGRhdGUiLCJfdGhpczIiLCJtYXAiLCJtYXBSZWYiLCJnZXRNYXAiLCJfbWFwIiwib24iLCJnZXRTdHlsZSIsImxvYWRNYXBTdHlsZUpzb24iLCJsb2FkTWFwU3R5bGVFcnJvciIsInJlbmRlciIsIl90aGlzJHByb3BzJHRyYW5zZm9ybSIsIl90aGlzJHByb3BzMiIsIl90aGlzMyIsIl90aGlzJHByb3BzIiwiaW5wdXRTdHlsZSIsIm1hcFN0YXRlIiwiaW50bCIsImJhc2VNYXBMaWJyYXJ5TmFtZSIsImdldEJhc2VNYXBMaWJyYXJ5IiwiYmFzZU1hcExpYnJhcnlDb25maWciLCJnZXRBcHBsaWNhdGlvbkNvbmZpZyIsIm1hcGJveEFwaUFjY2Vzc1Rva2VuIiwiYWNjZXNzVG9rZW4iLCJtYXBQcm9wcyIsIm1hcGJveEFjY2Vzc1Rva2VuIiwibWFwTGliIiwiZ2V0TWFwTGliIiwicHJlc2VydmVEcmF3aW5nQnVmZmVyIiwidHJhbnNmb3JtUmVxdWVzdCIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJTdHlsZWRNb2RhbENvbnRlbnQiLCJTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWwiLCJTdHlsZWRNb2RhbFNlY3Rpb24iLCJGb3JtYXR0ZWRNZXNzYWdlIiwiaWQiLCJmb3JtYXRNZXNzYWdlIiwidGFyZ2V0IiwiaHJlZiIsIklucHV0TGlnaHQiLCJ0eXBlIiwidXJsIiwib25DaGFuZ2UiLCJfcmVmIiwiaW5wdXRNYXBTdHlsZSIsImljb24iLCJOT19CQVNFTUFQX0lDT04iLCJwbGFjZWhvbGRlciIsIl9yZWYyIiwibGFiZWwiLCJfcmVmMyIsImNsYXNzbmFtZXMiLCJuYW1lIiwiaXNWYWxpZCIsIlN0eWxlZE1hcENvbnRhaW5lciIsIk1hcCIsIl9leHRlbmRzMiIsInJlZiIsImVsIiwic3RhdGUiLCJ3aWR0aCIsImhlaWdodCIsIm1hcFN0eWxlIiwidW5kZWZpbmVkIiwiZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzIiwiQ29tcG9uZW50IiwiaW5qZWN0SW50bCIsInBvbHlmaWxsIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGFscy9hZGQtbWFwLXN0eWxlLW1vZGFsLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnR9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7cG9seWZpbGx9IGZyb20gJ3JlYWN0LWxpZmVjeWNsZXMtY29tcGF0JztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge01hcCwgTWFwYm94TWFwLCBNYXBSZWZ9IGZyb20gJ3JlYWN0LW1hcC1nbCc7XG5pbXBvcnQge1xuICBTdHlsZWRNb2RhbENvbnRlbnQsXG4gIElucHV0TGlnaHQsXG4gIFN0eWxlZE1hcENvbnRhaW5lcixcbiAgU3R5bGVkTW9kYWxWZXJ0aWNhbFBhbmVsLFxuICBTdHlsZWRNb2RhbFNlY3Rpb25cbn0gZnJvbSAnLi4vY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7bWVkaWF9IGZyb20gJ0BrZXBsZXIuZ2wvc3R5bGVzJztcblxuLy8gVXRpbHNcbmltcG9ydCB7Z2V0QXBwbGljYXRpb25Db25maWcsIGdldEJhc2VNYXBMaWJyYXJ5LCB0cmFuc2Zvcm1SZXF1ZXN0fSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7aW5qZWN0SW50bCwgSW50bFNoYXBlfSBmcm9tICdyZWFjdC1pbnRsJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtOT19CQVNFTUFQX0lDT059IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7SW5wdXRTdHlsZSwgTWFwU3RhdGV9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtBY3Rpb25IYW5kbGVyLCBpbnB1dE1hcFN0eWxlLCBsb2FkQ3VzdG9tTWFwU3R5bGV9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5cbmNvbnN0IE1hcEggPSAxOTA7XG5jb25zdCBNYXBXID0gMjY0O1xuY29uc3QgRXJyb3JNc2cgPSB7XG4gIHN0eWxlRXJyb3I6XG4gICAgJ0ZhaWxlZCB0byBsb2FkIG1hcCBzdHlsZSwgbWFrZSBzdXJlIGl0IGlzIHB1Ymxpc2hlZC4gRm9yIHByaXZhdGUgc3R5bGUsIHBhc3RlIGluIHlvdXIgYWNjZXNzIHRva2VuLidcbn07XG5cbmNvbnN0IFByZXZpZXdNYXAgPSBzdHlsZWQuZGl2YFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDExNnB4O1xuICBmbGV4LXNocmluazogMDtcblxuICAucHJldmlldy10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgcGFkZGluZzogOHB4IDBweDtcbiAgfVxuXG4gIC5wcmV2aWV3LXRpdGxlLmVycm9yIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5lcnJvckNvbG9yfTtcbiAgfVxuXG4gICR7bWVkaWEucG9ydGFibGVgXG4gICAgbWFyZ2luLWxlZnQ6IDMycHg7XG4gIGB9O1xuXG4gICR7bWVkaWEucGFsbWBcbiAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgLnByZXZpZXctdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIH1cbiAgYH07XG5gO1xuXG5jb25zdCBTdHlsZWRQcmV2aWV3SW1hZ2UgPSBzdHlsZWQuZGl2YFxuICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLm1vZGFsSW1hZ2VQbGFjZUhvbGRlcn07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCA4cHggMTZweCAwIHJnYmEoMCwgMCwgMCwgMC4xOCk7XG4gIHdpZHRoOiAke01hcFd9cHg7XG4gIGhlaWdodDogJHtNYXBIfXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnByZXZpZXctaW1hZ2UtcGxhY2Vob2xkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5wcmV2aWV3LWltYWdlLXNwaW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDI1cHgpO1xuICAgIHRvcDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgfVxuYDtcblxuY29uc3QgSW5saW5lTGluayA9IHN0eWxlZC5hYFxuICBmb250LXdlaWdodDogNTAwO1xuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuYDtcblxuaW50ZXJmYWNlIEFkZE1hcFN0eWxlTW9kYWxQcm9wcyB7XG4gIGlucHV0TWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGlucHV0TWFwU3R5bGU+O1xuICBpbnB1dFN0eWxlOiBJbnB1dFN0eWxlO1xuICBsb2FkQ3VzdG9tTWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGxvYWRDdXN0b21NYXBTdHlsZT47XG4gIG1hcGJveEFwaUFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIG1hcGJveEFwaVVybD86IHN0cmluZztcbiAgdHJhbnNmb3JtUmVxdWVzdD86IChtYXBib3hLZXk6IHN0cmluZykgPT4gKFxuICAgIHVybDogc3RyaW5nLFxuICAgIHJlc291cmNlVHlwZTogc3RyaW5nXG4gICkgPT4ge1xuICAgIHVybDogc3RyaW5nO1xuICB9O1xuICBtYXBTdGF0ZTogTWFwU3RhdGU7XG4gIGludGw6IEludGxTaGFwZTtcbn1cblxuZnVuY3Rpb24gQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnkoKSB7XG4gIGNsYXNzIEFkZE1hcFN0eWxlTW9kYWwgZXh0ZW5kcyBDb21wb25lbnQ8QWRkTWFwU3R5bGVNb2RhbFByb3BzPiB7XG4gICAgc3RhdGUgPSB7XG4gICAgICByZVJlbmRlcktleTogMCxcbiAgICAgIHByZXZpb3VzVG9rZW46IG51bGxcbiAgICB9O1xuXG4gICAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhwcm9wcywgc3RhdGUpIHtcbiAgICAgIGlmIChcbiAgICAgICAgcHJvcHMuaW5wdXRTdHlsZSAmJlxuICAgICAgICBwcm9wcy5pbnB1dFN0eWxlLmFjY2Vzc1Rva2VuICYmXG4gICAgICAgIHByb3BzLmlucHV0U3R5bGUuYWNjZXNzVG9rZW4gIT09IHN0YXRlLnByZXZpb3VzVG9rZW5cbiAgICAgICkge1xuICAgICAgICAvLyB0b2tlIGhhcyBjaGFuZ2VkXG4gICAgICAgIC8vIFJlYWN0TWFwR2wgZG9lc24ndCByZS1jcmVhdGUgbWFwIHdoZW4gdG9rZW4gaGFzIGNoYW5nZWRcbiAgICAgICAgLy8gaGVyZSB3ZSBmb3JjZSB0aGUgbWFwIHRvIHVwZGF0ZVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVSZW5kZXJLZXk6IHN0YXRlLnJlUmVuZGVyS2V5ICsgMSxcbiAgICAgICAgICBwcmV2aW91c1Rva2VuOiBwcm9wcy5pbnB1dFN0eWxlLmFjY2Vzc1Rva2VuXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIG1hcFJlZjogTWFwUmVmIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgICBfbWFwOiBNYXBib3hNYXAgfCB1bmRlZmluZWQ7XG5cbiAgICBjb21wb25lbnREaWRVcGRhdGUoKSB7XG4gICAgICBjb25zdCBtYXAgPSB0aGlzLm1hcFJlZiAmJiB0aGlzLm1hcFJlZi5nZXRNYXAoKTtcbiAgICAgIGlmIChtYXAgJiYgdGhpcy5fbWFwICE9PSBtYXApIHtcbiAgICAgICAgdGhpcy5fbWFwID0gbWFwO1xuXG4gICAgICAgIG1hcC5vbignc3R5bGUubG9hZCcsICgpID0+IHtcbiAgICAgICAgICBjb25zdCBzdHlsZSA9IG1hcC5nZXRTdHlsZSgpO1xuICAgICAgICAgIHRoaXMubG9hZE1hcFN0eWxlSnNvbihzdHlsZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIG1hcC5vbignZXJyb3InLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5sb2FkTWFwU3R5bGVFcnJvcigpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsb2FkTWFwU3R5bGVKc29uID0gc3R5bGUgPT4ge1xuICAgICAgdGhpcy5wcm9wcy5sb2FkQ3VzdG9tTWFwU3R5bGUoe3N0eWxlLCBlcnJvcjogZmFsc2V9KTtcbiAgICB9O1xuXG4gICAgbG9hZE1hcFN0eWxlRXJyb3IgPSAoKSA9PiB7XG4gICAgICB0aGlzLnByb3BzLmxvYWRDdXN0b21NYXBTdHlsZSh7ZXJyb3I6IHRydWV9KTtcbiAgICB9O1xuXG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3Qge2lucHV0U3R5bGUsIG1hcFN0YXRlLCBpbnRsfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGNvbnN0IGJhc2VNYXBMaWJyYXJ5TmFtZSA9IGdldEJhc2VNYXBMaWJyYXJ5KGlucHV0U3R5bGUpO1xuICAgICAgY29uc3QgYmFzZU1hcExpYnJhcnlDb25maWcgPSBnZXRBcHBsaWNhdGlvbkNvbmZpZygpLmJhc2VNYXBMaWJyYXJ5Q29uZmlnW2Jhc2VNYXBMaWJyYXJ5TmFtZV07XG5cbiAgICAgIGNvbnN0IG1hcGJveEFwaUFjY2Vzc1Rva2VuID0gaW5wdXRTdHlsZS5hY2Nlc3NUb2tlbiB8fCB0aGlzLnByb3BzLm1hcGJveEFwaUFjY2Vzc1Rva2VuO1xuICAgICAgY29uc3QgbWFwUHJvcHMgPSB7XG4gICAgICAgIC4uLm1hcFN0YXRlLFxuICAgICAgICAvLyBUT0RPIGJhc2VBcGlVcmwgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCBpbiB0cmFuc2Zvcm1SZXF1ZXN0IGFzIHdlIHVzZSBkeW5hbWljIG1hcExpYiBpbXBvcnRcbiAgICAgICAgLy8gYmFzZUFwaVVybDogbWFwYm94QXBpVXJsLFxuICAgICAgICBtYXBib3hBY2Nlc3NUb2tlbjogbWFwYm94QXBpQWNjZXNzVG9rZW4sXG4gICAgICAgIG1hcExpYjogYmFzZU1hcExpYnJhcnlDb25maWcuZ2V0TWFwTGliKCksXG4gICAgICAgIHByZXNlcnZlRHJhd2luZ0J1ZmZlcjogdHJ1ZSxcbiAgICAgICAgdHJhbnNmb3JtUmVxdWVzdDpcbiAgICAgICAgICB0aGlzLnByb3BzLnRyYW5zZm9ybVJlcXVlc3Q/LihtYXBib3hBcGlBY2Nlc3NUb2tlbikgfHxcbiAgICAgICAgICB0cmFuc2Zvcm1SZXF1ZXN0KG1hcGJveEFwaUFjY2Vzc1Rva2VuKVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJhZGQtbWFwLXN0eWxlLW1vZGFsXCI+XG4gICAgICAgICAgPFN0eWxlZE1vZGFsQ29udGVudD5cbiAgICAgICAgICAgIDxTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWw+XG4gICAgICAgICAgICAgIDxTdHlsZWRNb2RhbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmFkZFN0eWxlLnBhc3RlVGl0bGUnfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibW9kYWwtc2VjdGlvbi1zdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wYXN0ZVN1YnRpdGxlMCd9KX1cbiAgICAgICAgICAgICAgICAgIDxJbmxpbmVMaW5rXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgICAgIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL2hlbHAvc3R1ZGlvLW1hbnVhbC1wdWJsaXNoLyNzdHlsZS11cmxcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnBhc3RlU3VidGl0bGUyJ30pfVxuICAgICAgICAgICAgICAgICAgPC9JbmxpbmVMaW5rPnsnICd9XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnBhc3RlU3VidGl0bGUzJ30pfVxuICAgICAgICAgICAgICAgICAgPElubGluZUxpbmtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vZG9jcy5tYXBib3guY29tL21hcGJveC1nbC1qcy9zdHlsZS1zcGVjXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wYXN0ZVN1YnRpdGxlNCd9KX1cbiAgICAgICAgICAgICAgICAgIDwvSW5saW5lTGluaz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8SW5wdXRMaWdodFxuICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2lucHV0U3R5bGUudXJsIHx8ICcnfVxuICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9eyh7dGFyZ2V0OiB7dmFsdWV9fSkgPT5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9wcy5pbnB1dE1hcFN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgICB1cmw6IHZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgIGlkOiAnQ3VzdG9tIFN0eWxlJyxcbiAgICAgICAgICAgICAgICAgICAgICBpY29uOiBOT19CQVNFTUFQX0lDT05cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiZS5nLiBodHRwczovL2Jhc2VtYXBzLmNhcnRvY2RuLmNvbS9nbC9wb3NpdHJvbi1nbC1zdHlsZS9zdHlsZS5qc29uXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZE1vZGFsU2VjdGlvbj5cblxuICAgICAgICAgICAgICA8U3R5bGVkTW9kYWxTZWN0aW9uPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibW9kYWwtc2VjdGlvbi10aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydtb2RhbC5hZGRTdHlsZS5wdWJsaXNoVGl0bGUnfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibW9kYWwtc2VjdGlvbi1zdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGUxJ30pfVxuICAgICAgICAgICAgICAgICAgPElubGluZUxpbmsgdGFyZ2V0PVwiX2JsYW5rXCIgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vc3R1ZGlvL3N0eWxlcy9cIj5cbiAgICAgICAgICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgICAgICAgICAgbWFwYm94XG4gICAgICAgICAgICAgICAgICA8L0lubGluZUxpbms+eycgJ31cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlMid9KX1cbiAgICAgICAgICAgICAgICAgIDxJbmxpbmVMaW5rXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgICAgIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL2hlbHAvc3R1ZGlvLW1hbnVhbC1wdWJsaXNoL1wiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlMyd9KX1cbiAgICAgICAgICAgICAgICAgIDwvSW5saW5lTGluaz57JyAnfVxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGU0J30pfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTUnfSl9XG4gICAgICAgICAgICAgICAgICA8SW5saW5lTGlua1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICBocmVmPVwiaHR0cHM6Ly93d3cubWFwYm94LmNvbS9oZWxwL2hvdy1hY2Nlc3MtdG9rZW5zLXdvcmsvXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGU2J30pfVxuICAgICAgICAgICAgICAgICAgPC9JbmxpbmVMaW5rPnsnICd9XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTcnfSl9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPElucHV0TGlnaHRcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtpbnB1dFN0eWxlLmFjY2Vzc1Rva2VuIHx8ICcnfVxuICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9eyh7dGFyZ2V0OiB7dmFsdWV9fSkgPT4gdGhpcy5wcm9wcy5pbnB1dE1hcFN0eWxlKHthY2Nlc3NUb2tlbjogdmFsdWV9KX1cbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUuZXhhbXBsZVRva2VuJ30pfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU3R5bGVkTW9kYWxTZWN0aW9uPlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRNb2RhbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmFkZFN0eWxlLm5hbWluZ1RpdGxlJ30gLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8SW5wdXRMaWdodFxuICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2lucHV0U3R5bGUubGFiZWwgfHwgJyd9XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17KHt0YXJnZXQ6IHt2YWx1ZX19KSA9PiB0aGlzLnByb3BzLmlucHV0TWFwU3R5bGUoe2xhYmVsOiB2YWx1ZX0pfVxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJOYW1lIHlvdXIgc3R5bGVcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU3R5bGVkTW9kYWxTZWN0aW9uPlxuICAgICAgICAgICAgPC9TdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWw+XG4gICAgICAgICAgICA8UHJldmlld01hcD5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NuYW1lcygncHJldmlldy10aXRsZScsIHtcbiAgICAgICAgICAgICAgICAgIGVycm9yOiBpbnB1dFN0eWxlLmVycm9yXG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aW5wdXRTdHlsZS5lcnJvclxuICAgICAgICAgICAgICAgICAgPyBFcnJvck1zZy5zdHlsZUVycm9yXG4gICAgICAgICAgICAgICAgICA6IChpbnB1dFN0eWxlLnN0eWxlICYmIGlucHV0U3R5bGUuc3R5bGUubmFtZSkgfHwgJyd9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8U3R5bGVkUHJldmlld0ltYWdlIGNsYXNzTmFtZT1cInByZXZpZXctaW1hZ2VcIj5cbiAgICAgICAgICAgICAgICB7IWlucHV0U3R5bGUuaXNWYWxpZCA/IChcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicHJldmlldy1pbWFnZS1zcGlubmVyXCIgLz5cbiAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZE1hcENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPE1hcFxuICAgICAgICAgICAgICAgICAgICAgIHsuLi5tYXBQcm9wc31cbiAgICAgICAgICAgICAgICAgICAgICByZWY9e2VsID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWFwUmVmID0gZWw7XG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICBrZXk9e3RoaXMuc3RhdGUucmVSZW5kZXJLZXl9XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBNYXBXLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBNYXBIXG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICBtYXBTdHlsZT17aW5wdXRTdHlsZS51cmwgPT09IG51bGwgPyB1bmRlZmluZWQgOiBpbnB1dFN0eWxlLnVybH1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkTWFwQ29udGFpbmVyPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUHJldmlld0ltYWdlPlxuICAgICAgICAgICAgPC9QcmV2aWV3TWFwPlxuICAgICAgICAgIDwvU3R5bGVkTW9kYWxDb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGluamVjdEludGwocG9seWZpbGwoQWRkTWFwU3R5bGVNb2RhbCkpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBBZGRNYXBTdHlsZU1vZGFsRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLHNCQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxpQkFBQSxHQUFBRCxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sa0JBQUEsR0FBQU4sT0FBQTtBQU9BLElBQUFPLE9BQUEsR0FBQVAsT0FBQTtBQUdBLElBQUFRLE1BQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLFVBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLGFBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLFVBQUEsR0FBQVgsT0FBQTtBQUFxRCxJQUFBWSxlQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBckJyRDtBQUNBO0FBZ0JBO0FBQUEsU0FBQUMseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFuQix3QkFBQW1CLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcs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O1VBQUNxRCxTQUFTLEVBQUM7UUFBZSxHQUMxQyxDQUFDaEIsVUFBVSxDQUFDdUMsT0FBTyxnQkFDbEIxSixNQUFBLFlBQUFrSSxhQUFBO1VBQUtDLFNBQVMsRUFBQztRQUF1QixDQUFFLENBQUMsZ0JBRXpDbkksTUFBQSxZQUFBa0ksYUFBQSxDQUFDMUgsa0JBQUEsQ0FBQW1KLGtCQUFrQixxQkFDakIzSixNQUFBLFlBQUFrSSxhQUFBLENBQUMzSCxXQUFBLENBQUFxSixHQUFHLE1BQUFDLFNBQUEsaUJBQ0VqQyxRQUFRO1VBQ1prQyxHQUFHLEVBQUUsU0FBTEEsR0FBR0EsQ0FBRUMsRUFBRSxFQUFJO1lBQ1Q5QyxNQUFJLENBQUNWLE1BQU0sR0FBR3dELEVBQUU7VUFDbEIsQ0FBRTtVQUNGN0QsR0FBRyxFQUFFLElBQUksQ0FBQzhELEtBQUssQ0FBQ3JFLFdBQVk7VUFDNUJFLEtBQUssRUFBRTtZQUNMb0UsS0FBSyxFQUFFaEcsSUFBSTtZQUNYaUcsTUFBTSxFQUFFbEc7VUFDVixDQUFFO1VBQ0ZtRyxRQUFRLEVBQUVoRCxVQUFVLENBQUMyQixHQUFHLEtBQUssSUFBSSxHQUFHc0IsU0FBUyxHQUFHakQsVUFBVSxDQUFDMkI7UUFBSSxFQUNoRSxDQUNpQixDQUVKLENBQ1YsQ0FDTSxDQUNqQixDQUFDO01BRVY7SUFBQztNQUFBNUMsR0FBQTtNQUFBQyxLQUFBLEVBL0xELFNBQU9rRSx3QkFBd0JBLENBQUM3RixLQUFLLEVBQUV3RixLQUFLLEVBQUU7UUFDNUMsSUFDRXhGLEtBQUssQ0FBQzJDLFVBQVUsSUFDaEIzQyxLQUFLLENBQUMyQyxVQUFVLENBQUNRLFdBQVcsSUFDNUJuRCxLQUFLLENBQUMyQyxVQUFVLENBQUNRLFdBQVcsS0FBS3FDLEtBQUssQ0FBQ3BFLGFBQWEsRUFDcEQ7VUFDQTtVQUNBO1VBQ0E7O1VBRUEsT0FBTztZQUNMRCxXQUFXLEVBQUVxRSxLQUFLLENBQUNyRSxXQUFXLEdBQUcsQ0FBQztZQUNsQ0MsYUFBYSxFQUFFcEIsS0FBSyxDQUFDMkMsVUFBVSxDQUFDUTtVQUNsQyxDQUFDO1FBQ0g7UUFFQSxPQUFPLElBQUk7TUFDYjtJQUFDO0VBQUEsRUF2QjRCMkMsZ0JBQVM7RUF3TXhDLE9BQU8sSUFBQUMscUJBQVUsRUFBQyxJQUFBQywrQkFBUSxFQUFDdEYsZ0JBQWdCLENBQUMsQ0FBQztBQUMvQztBQUFDLElBQUF1RixRQUFBLEdBQUFDLE9BQUEsY0FFY3pGLHVCQUF1QiIsImlnbm9yZUxpc3QiOltdfQ==
252
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RMaWZlY3ljbGVzQ29tcGF0IiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3N0eWxlZENvbXBvbmVudHMiLCJfcmVhY3RNYXBHbCIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9zdHlsZXMiLCJfdXRpbHMiLCJfcmVhY3RJbnRsIiwiX2xvY2FsaXphdGlvbiIsIl9jb25zdGFudHMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl90ZW1wbGF0ZU9iamVjdDQiLCJfdGVtcGxhdGVPYmplY3Q1IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiX2NhbGxTdXBlciIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJNYXBIIiwiTWFwVyIsIkVycm9yTXNnIiwic3R5bGVFcnJvciIsIlByZXZpZXdNYXAiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJlcnJvckNvbG9yIiwibWVkaWEiLCJwb3J0YWJsZSIsInBhbG0iLCJTdHlsZWRQcmV2aWV3SW1hZ2UiLCJtb2RhbEltYWdlUGxhY2VIb2xkZXIiLCJJbmxpbmVMaW5rIiwibm9wIiwiQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnkiLCJBZGRNYXBTdHlsZU1vZGFsIiwiX0NvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29uY2F0IiwicmVSZW5kZXJLZXkiLCJwcmV2aW91c1Rva2VuIiwibWFwUmVmIiwiX21hcCIsIm1hcCIsImdldE1hcCIsIm9mZiIsIm9uIiwic3R5bGUiLCJnZXRTdHlsZSIsImxvYWRNYXBTdHlsZUpzb24iLCJsb2FkTWFwU3R5bGVFcnJvciIsImxvYWRDdXN0b21NYXBTdHlsZSIsImVycm9yIiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJrZXkiLCJ2YWx1ZSIsInJlbmRlciIsIl90aGlzJHByb3BzJHRyYW5zZm9ybSIsIl90aGlzJHByb3BzMiIsIl90aGlzMiIsIl90aGlzJHByb3BzIiwiaW5wdXRTdHlsZSIsIm1hcFN0YXRlIiwiaW50bCIsImJhc2VNYXBMaWJyYXJ5TmFtZSIsImdldEJhc2VNYXBMaWJyYXJ5IiwiYmFzZU1hcExpYnJhcnlDb25maWciLCJnZXRBcHBsaWNhdGlvbkNvbmZpZyIsIm1hcGJveEFwaUFjY2Vzc1Rva2VuIiwiYWNjZXNzVG9rZW4iLCJtYXBQcm9wcyIsIm1hcGJveEFjY2Vzc1Rva2VuIiwibWFwTGliIiwiZ2V0TWFwTGliIiwicHJlc2VydmVEcmF3aW5nQnVmZmVyIiwidHJhbnNmb3JtUmVxdWVzdCIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJTdHlsZWRNb2RhbENvbnRlbnQiLCJTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWwiLCJTdHlsZWRNb2RhbFNlY3Rpb24iLCJGb3JtYXR0ZWRNZXNzYWdlIiwiaWQiLCJmb3JtYXRNZXNzYWdlIiwidGFyZ2V0IiwiaHJlZiIsIklucHV0TGlnaHQiLCJ0eXBlIiwidXJsIiwib25DaGFuZ2UiLCJfcmVmIiwiaW5wdXRNYXBTdHlsZSIsImljb24iLCJOT19CQVNFTUFQX0lDT04iLCJwbGFjZWhvbGRlciIsIl9yZWYyIiwibGFiZWwiLCJfcmVmMyIsImNsYXNzbmFtZXMiLCJuYW1lIiwiaXNWYWxpZCIsIlN0eWxlZE1hcENvbnRhaW5lciIsIk1hcCIsIl9leHRlbmRzMiIsInJlZiIsIl9zZXRNYXBSZWYiLCJzdGF0ZSIsIndpZHRoIiwiaGVpZ2h0IiwibWFwU3R5bGUiLCJ1bmRlZmluZWQiLCJnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMiLCJDb21wb25lbnQiLCJpbmplY3RJbnRsIiwicG9seWZpbGwiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kYWxzL2FkZC1tYXAtc3R5bGUtbW9kYWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHtwb2x5ZmlsbH0gZnJvbSAncmVhY3QtbGlmZWN5Y2xlcy1jb21wYXQnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7TWFwLCBNYXBib3hNYXAsIE1hcFJlZn0gZnJvbSAncmVhY3QtbWFwLWdsJztcbmltcG9ydCB7XG4gIFN0eWxlZE1vZGFsQ29udGVudCxcbiAgSW5wdXRMaWdodCxcbiAgU3R5bGVkTWFwQ29udGFpbmVyLFxuICBTdHlsZWRNb2RhbFZlcnRpY2FsUGFuZWwsXG4gIFN0eWxlZE1vZGFsU2VjdGlvblxufSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHttZWRpYX0gZnJvbSAnQGtlcGxlci5nbC9zdHlsZXMnO1xuXG4vLyBVdGlsc1xuaW1wb3J0IHtnZXRBcHBsaWNhdGlvbkNvbmZpZywgZ2V0QmFzZU1hcExpYnJhcnksIHRyYW5zZm9ybVJlcXVlc3R9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtpbmplY3RJbnRsLCBJbnRsU2hhcGV9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdAa2VwbGVyLmdsL2xvY2FsaXphdGlvbic7XG5pbXBvcnQge05PX0JBU0VNQVBfSUNPTn0gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtJbnB1dFN0eWxlLCBNYXBTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0FjdGlvbkhhbmRsZXIsIGlucHV0TWFwU3R5bGUsIGxvYWRDdXN0b21NYXBTdHlsZX0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcblxuY29uc3QgTWFwSCA9IDE5MDtcbmNvbnN0IE1hcFcgPSAyNjQ7XG5jb25zdCBFcnJvck1zZyA9IHtcbiAgc3R5bGVFcnJvcjpcbiAgICAnRmFpbGVkIHRvIGxvYWQgbWFwIHN0eWxlLCBtYWtlIHN1cmUgaXQgaXMgcHVibGlzaGVkLiBGb3IgcHJpdmF0ZSBzdHlsZSwgcGFzdGUgaW4geW91ciBhY2Nlc3MgdG9rZW4uJ1xufTtcblxuY29uc3QgUHJldmlld01hcCA9IHN0eWxlZC5kaXZgXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogMTE2cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gIC5wcmV2aWV3LXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBwYWRkaW5nOiA4cHggMHB4O1xuICB9XG5cbiAgLnByZXZpZXctdGl0bGUuZXJyb3Ige1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVycm9yQ29sb3J9O1xuICAgIG1heC13aWR0aDogMjUwcHg7XG4gIH1cblxuICAke21lZGlhLnBvcnRhYmxlYFxuICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xuICBgfTtcblxuICAke21lZGlhLnBhbG1gXG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0O1xuICAgIC5wcmV2aWV3LXRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB9XG4gIGB9O1xuYDtcblxuY29uc3QgU3R5bGVkUHJldmlld0ltYWdlID0gc3R5bGVkLmRpdmBcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5tb2RhbEltYWdlUGxhY2VIb2xkZXJ9O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE2cHggMCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xuICB3aWR0aDogJHtNYXBXfXB4O1xuICBoZWlnaHQ6ICR7TWFwSH1weDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5wcmV2aWV3LWltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAucHJldmlldy1pbWFnZS1zcGlubmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMjVweCk7XG4gIH1cbmA7XG5cbmNvbnN0IElubGluZUxpbmsgPSBzdHlsZWQuYWBcbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IG5vcCA9ICgpID0+IHtcbiAgcmV0dXJuO1xufTtcblxuaW50ZXJmYWNlIEFkZE1hcFN0eWxlTW9kYWxQcm9wcyB7XG4gIGlucHV0TWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGlucHV0TWFwU3R5bGU+O1xuICBpbnB1dFN0eWxlOiBJbnB1dFN0eWxlO1xuICBsb2FkQ3VzdG9tTWFwU3R5bGU6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIGxvYWRDdXN0b21NYXBTdHlsZT47XG4gIG1hcGJveEFwaUFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIG1hcGJveEFwaVVybD86IHN0cmluZztcbiAgdHJhbnNmb3JtUmVxdWVzdD86IChtYXBib3hLZXk6IHN0cmluZykgPT4gKFxuICAgIHVybDogc3RyaW5nLFxuICAgIHJlc291cmNlVHlwZTogc3RyaW5nXG4gICkgPT4ge1xuICAgIHVybDogc3RyaW5nO1xuICB9O1xuICBtYXBTdGF0ZTogTWFwU3RhdGU7XG4gIGludGw6IEludGxTaGFwZTtcbn1cblxuZnVuY3Rpb24gQWRkTWFwU3R5bGVNb2RhbEZhY3RvcnkoKSB7XG4gIGNsYXNzIEFkZE1hcFN0eWxlTW9kYWwgZXh0ZW5kcyBDb21wb25lbnQ8QWRkTWFwU3R5bGVNb2RhbFByb3BzPiB7XG4gICAgc3RhdGUgPSB7XG4gICAgICByZVJlbmRlcktleTogMCxcbiAgICAgIHByZXZpb3VzVG9rZW46IG51bGxcbiAgICB9O1xuXG4gICAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhwcm9wcywgc3RhdGUpIHtcbiAgICAgIGlmIChcbiAgICAgICAgcHJvcHMuaW5wdXRTdHlsZSAmJlxuICAgICAgICBwcm9wcy5pbnB1dFN0eWxlLmFjY2Vzc1Rva2VuICYmXG4gICAgICAgIHByb3BzLmlucHV0U3R5bGUuYWNjZXNzVG9rZW4gIT09IHN0YXRlLnByZXZpb3VzVG9rZW5cbiAgICAgICkge1xuICAgICAgICAvLyB0b2tlIGhhcyBjaGFuZ2VkXG4gICAgICAgIC8vIFJlYWN0TWFwR2wgZG9lc24ndCByZS1jcmVhdGUgbWFwIHdoZW4gdG9rZW4gaGFzIGNoYW5nZWRcbiAgICAgICAgLy8gaGVyZSB3ZSBmb3JjZSB0aGUgbWFwIHRvIHVwZGF0ZVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVSZW5kZXJLZXk6IHN0YXRlLnJlUmVuZGVyS2V5ICsgMSxcbiAgICAgICAgICBwcmV2aW91c1Rva2VuOiBwcm9wcy5pbnB1dFN0eWxlLmFjY2Vzc1Rva2VuXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIF9tYXA6IE1hcGJveE1hcCB8IHVuZGVmaW5lZCB8IG51bGw7XG5cbiAgICBfc2V0TWFwUmVmID0gKG1hcFJlZjogTWFwUmVmKSA9PiB7XG4gICAgICAvLyBIYW5kbGUgY2hhbmdlIG9mIHRoZSBiYXNlbWFwIGxpYnJhcnlcbiAgICAgIGlmICh0aGlzLl9tYXAgJiYgbWFwUmVmKSB7XG4gICAgICAgIGNvbnN0IG1hcCA9IG1hcFJlZi5nZXRNYXAoKTtcbiAgICAgICAgaWYgKG1hcCAmJiB0aGlzLl9tYXAgIT09IG1hcCkge1xuICAgICAgICAgIHRoaXMuX21hcC5vZmYoJ3N0eWxlLmxvYWQnLCBub3ApO1xuICAgICAgICAgIHRoaXMuX21hcC5vZmYoJ2Vycm9yJywgbm9wKTtcbiAgICAgICAgICB0aGlzLl9tYXAgPSBudWxsO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hcCA9IG1hcFJlZiAmJiBtYXBSZWYuZ2V0TWFwKCk7XG4gICAgICBpZiAobWFwICYmIHRoaXMuX21hcCAhPT0gbWFwKSB7XG4gICAgICAgIHRoaXMuX21hcCA9IG1hcDtcblxuICAgICAgICBtYXAub24oJ3N0eWxlLmxvYWQnLCAoKSA9PiB7XG4gICAgICAgICAgY29uc3Qgc3R5bGUgPSBtYXAuZ2V0U3R5bGUoKTtcbiAgICAgICAgICB0aGlzLmxvYWRNYXBTdHlsZUpzb24oc3R5bGUpO1xuICAgICAgICB9KTtcblxuICAgICAgICBtYXAub24oJ2Vycm9yJywgKCkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZE1hcFN0eWxlRXJyb3IoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGxvYWRNYXBTdHlsZUpzb24gPSBzdHlsZSA9PiB7XG4gICAgICB0aGlzLnByb3BzLmxvYWRDdXN0b21NYXBTdHlsZSh7c3R5bGUsIGVycm9yOiBmYWxzZX0pO1xuICAgIH07XG5cbiAgICBsb2FkTWFwU3R5bGVFcnJvciA9ICgpID0+IHtcbiAgICAgIHRoaXMucHJvcHMubG9hZEN1c3RvbU1hcFN0eWxlKHtlcnJvcjogdHJ1ZX0pO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7aW5wdXRTdHlsZSwgbWFwU3RhdGUsIGludGx9ID0gdGhpcy5wcm9wcztcblxuICAgICAgY29uc3QgYmFzZU1hcExpYnJhcnlOYW1lID0gZ2V0QmFzZU1hcExpYnJhcnkoaW5wdXRTdHlsZSk7XG4gICAgICBjb25zdCBiYXNlTWFwTGlicmFyeUNvbmZpZyA9IGdldEFwcGxpY2F0aW9uQ29uZmlnKCkuYmFzZU1hcExpYnJhcnlDb25maWdbYmFzZU1hcExpYnJhcnlOYW1lXTtcblxuICAgICAgY29uc3QgbWFwYm94QXBpQWNjZXNzVG9rZW4gPSBpbnB1dFN0eWxlLmFjY2Vzc1Rva2VuIHx8IHRoaXMucHJvcHMubWFwYm94QXBpQWNjZXNzVG9rZW47XG4gICAgICBjb25zdCBtYXBQcm9wcyA9IHtcbiAgICAgICAgLi4ubWFwU3RhdGUsXG4gICAgICAgIC8vIFRPRE8gYmFzZUFwaVVybCBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IGluIHRyYW5zZm9ybVJlcXVlc3QgYXMgd2UgdXNlIGR5bmFtaWMgbWFwTGliIGltcG9ydFxuICAgICAgICAvLyBiYXNlQXBpVXJsOiBtYXBib3hBcGlVcmwsXG4gICAgICAgIG1hcGJveEFjY2Vzc1Rva2VuOiBtYXBib3hBcGlBY2Nlc3NUb2tlbixcbiAgICAgICAgbWFwTGliOiBiYXNlTWFwTGlicmFyeUNvbmZpZy5nZXRNYXBMaWIoKSxcbiAgICAgICAgcHJlc2VydmVEcmF3aW5nQnVmZmVyOiB0cnVlLFxuICAgICAgICB0cmFuc2Zvcm1SZXF1ZXN0OlxuICAgICAgICAgIHRoaXMucHJvcHMudHJhbnNmb3JtUmVxdWVzdD8uKG1hcGJveEFwaUFjY2Vzc1Rva2VuKSB8fFxuICAgICAgICAgIHRyYW5zZm9ybVJlcXVlc3QobWFwYm94QXBpQWNjZXNzVG9rZW4pXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImFkZC1tYXAtc3R5bGUtbW9kYWxcIj5cbiAgICAgICAgICA8U3R5bGVkTW9kYWxDb250ZW50PlxuICAgICAgICAgICAgPFN0eWxlZE1vZGFsVmVydGljYWxQYW5lbD5cbiAgICAgICAgICAgICAgPFN0eWxlZE1vZGFsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuYWRkU3R5bGUucGFzdGVUaXRsZSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnBhc3RlU3VidGl0bGUwJ30pfVxuICAgICAgICAgICAgICAgICAgPElubGluZUxpbmtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vaGVscC9zdHVkaW8tbWFudWFsLXB1Ymxpc2gvI3N0eWxlLXVybFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucGFzdGVTdWJ0aXRsZTInfSl9XG4gICAgICAgICAgICAgICAgICA8L0lubGluZUxpbms+eycgJ31cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucGFzdGVTdWJ0aXRsZTMnfSl9XG4gICAgICAgICAgICAgICAgICA8SW5saW5lTGlua1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgICAgICAgICAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9kb2NzLm1hcGJveC5jb20vbWFwYm94LWdsLWpzL3N0eWxlLXNwZWNcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnBhc3RlU3VidGl0bGU0J30pfVxuICAgICAgICAgICAgICAgICAgPC9JbmxpbmVMaW5rPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICB2YWx1ZT17aW5wdXRTdHlsZS51cmwgfHwgJyd9XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17KHt0YXJnZXQ6IHt2YWx1ZX19KSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb3BzLmlucHV0TWFwU3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICAgIHVybDogdmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgaWQ6ICdDdXN0b20gU3R5bGUnLFxuICAgICAgICAgICAgICAgICAgICAgIGljb246IE5PX0JBU0VNQVBfSUNPTlxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJlLmcuIGh0dHBzOi8vYmFzZW1hcHMuY2FydG9jZG4uY29tL2dsL3Bvc2l0cm9uLWdsLXN0eWxlL3N0eWxlLmpzb25cIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU3R5bGVkTW9kYWxTZWN0aW9uPlxuXG4gICAgICAgICAgICAgIDxTdHlsZWRNb2RhbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hUaXRsZSd9IC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb2RhbC1zZWN0aW9uLXN1YnRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTEnfSl9XG4gICAgICAgICAgICAgICAgICA8SW5saW5lTGluayB0YXJnZXQ9XCJfYmxhbmtcIiBocmVmPVwiaHR0cHM6Ly93d3cubWFwYm94LmNvbS9zdHVkaW8vc3R5bGVzL1wiPlxuICAgICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgICBtYXBib3hcbiAgICAgICAgICAgICAgICAgIDwvSW5saW5lTGluaz57JyAnfVxuICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGUyJ30pfVxuICAgICAgICAgICAgICAgICAgPElubGluZUxpbmtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vaGVscC9zdHVkaW8tbWFudWFsLXB1Ymxpc2gvXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgICAgICAgICAge2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5wdWJsaXNoU3VidGl0bGUzJ30pfVxuICAgICAgICAgICAgICAgICAgPC9JbmxpbmVMaW5rPnsnICd9XG4gICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTQnfSl9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tc3VidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlNSd9KX1cbiAgICAgICAgICAgICAgICAgIDxJbmxpbmVMaW5rXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgICAgIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL2hlbHAvaG93LWFjY2Vzcy10b2tlbnMtd29yay9cIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgICB7aW50bC5mb3JtYXRNZXNzYWdlKHtpZDogJ21vZGFsLmFkZFN0eWxlLnB1Ymxpc2hTdWJ0aXRsZTYnfSl9XG4gICAgICAgICAgICAgICAgICA8L0lubGluZUxpbms+eycgJ31cbiAgICAgICAgICAgICAgICAgIHtpbnRsLmZvcm1hdE1lc3NhZ2Uoe2lkOiAnbW9kYWwuYWRkU3R5bGUucHVibGlzaFN1YnRpdGxlNyd9KX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8SW5wdXRMaWdodFxuICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2lucHV0U3R5bGUuYWNjZXNzVG9rZW4gfHwgJyd9XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17KHt0YXJnZXQ6IHt2YWx1ZX19KSA9PiB0aGlzLnByb3BzLmlucHV0TWFwU3R5bGUoe2FjY2Vzc1Rva2VuOiB2YWx1ZX0pfVxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6ICdtb2RhbC5hZGRTdHlsZS5leGFtcGxlVG9rZW4nfSl9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9TdHlsZWRNb2RhbFNlY3Rpb24+XG5cbiAgICAgICAgICAgICAgPFN0eWxlZE1vZGFsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vZGFsLXNlY3Rpb24tdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnbW9kYWwuYWRkU3R5bGUubmFtaW5nVGl0bGUnfSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICB2YWx1ZT17aW5wdXRTdHlsZS5sYWJlbCB8fCAnJ31cbiAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoe3RhcmdldDoge3ZhbHVlfX0pID0+IHRoaXMucHJvcHMuaW5wdXRNYXBTdHlsZSh7bGFiZWw6IHZhbHVlfSl9XG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIk5hbWUgeW91ciBzdHlsZVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9TdHlsZWRNb2RhbFNlY3Rpb24+XG4gICAgICAgICAgICA8L1N0eWxlZE1vZGFsVmVydGljYWxQYW5lbD5cbiAgICAgICAgICAgIDxQcmV2aWV3TWFwPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc25hbWVzKCdwcmV2aWV3LXRpdGxlJywge1xuICAgICAgICAgICAgICAgICAgZXJyb3I6IGlucHV0U3R5bGUuZXJyb3JcbiAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtpbnB1dFN0eWxlLmVycm9yXG4gICAgICAgICAgICAgICAgICA/IEVycm9yTXNnLnN0eWxlRXJyb3JcbiAgICAgICAgICAgICAgICAgIDogKGlucHV0U3R5bGUuc3R5bGUgJiYgaW5wdXRTdHlsZS5zdHlsZS5uYW1lKSB8fCAnJ31cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxTdHlsZWRQcmV2aWV3SW1hZ2UgY2xhc3NOYW1lPVwicHJldmlldy1pbWFnZVwiPlxuICAgICAgICAgICAgICAgIHsvKiogTm90ZSwgd2UgbmVlZCB0aGUgTWFwIHRvIHJlbmRlciB3aXRoIGVycm9yZWQgcGFyYW1zIHRvIGdldCBzdHlsZS5lcnJvciBtZXNzYWdlcyAqL31cbiAgICAgICAgICAgICAgICB7IWlucHV0U3R5bGUuaXNWYWxpZCA/IChcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicHJldmlldy1pbWFnZS1zcGlubmVyXCIgLz5cbiAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgPFN0eWxlZE1hcENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPE1hcFxuICAgICAgICAgICAgICAgICAgICAgIHsuLi5tYXBQcm9wc31cbiAgICAgICAgICAgICAgICAgICAgICByZWY9e3RoaXMuX3NldE1hcFJlZn1cbiAgICAgICAgICAgICAgICAgICAgICBrZXk9e2Ake2Jhc2VNYXBMaWJyYXJ5TmFtZX0tJHt0aGlzLnN0YXRlLnJlUmVuZGVyS2V5fS0ke2lucHV0U3R5bGUudXJsfS0ke21hcGJveEFwaUFjY2Vzc1Rva2VufWB9XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBNYXBXLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBNYXBIXG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICBtYXBTdHlsZT17aW5wdXRTdHlsZS51cmwgPT09IG51bGwgPyB1bmRlZmluZWQgOiBpbnB1dFN0eWxlLnVybH1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDwvU3R5bGVkTWFwQ29udGFpbmVyPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvU3R5bGVkUHJldmlld0ltYWdlPlxuICAgICAgICAgICAgPC9QcmV2aWV3TWFwPlxuICAgICAgICAgIDwvU3R5bGVkTW9kYWxDb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGluamVjdEludGwocG9seWZpbGwoQWRkTWFwU3R5bGVNb2RhbCkpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBBZGRNYXBTdHlsZU1vZGFsRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLHNCQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxpQkFBQSxHQUFBRCxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sa0JBQUEsR0FBQU4sT0FBQTtBQU9BLElBQUFPLE9BQUEsR0FBQVAsT0FBQTtBQUdBLElBQUFRLE1BQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLFVBQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLGFBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFX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
@@ -1,11 +1,16 @@
1
1
  import React from 'react';
2
+ import { VectorTileDatasetMetadata } from '@kepler.gl/constants';
3
+ import { Merge } from '@kepler.gl/types';
2
4
  import { DatasetCreationAttributes, MetaResponse } from './common';
3
5
  export declare type VectorTilesetFormData = {
4
6
  name: string;
5
7
  dataUrl: string;
6
8
  metadataUrl?: string;
7
9
  };
8
- export declare function getDatasetAttributesFromVectorTile({ name, dataUrl, metadataUrl }: VectorTilesetFormData): DatasetCreationAttributes;
10
+ export declare type VectorTileDatasetCreationAttributes = Merge<DatasetCreationAttributes, {
11
+ metadata: VectorTileDatasetMetadata;
12
+ }>;
13
+ export declare function getDatasetAttributesFromVectorTile({ name, dataUrl, metadataUrl }: VectorTilesetFormData): VectorTileDatasetCreationAttributes;
9
14
  declare type TilesetVectorFormProps = {
10
15
  setResponse: (response: MetaResponse) => void;
11
16
  };
@@ -36,7 +36,8 @@ function getDatasetAttributesFromVectorTile(_ref) {
36
36
  name: name,
37
37
  type: _constants.DatasetType.VECTOR_TILE,
38
38
  metadata: {
39
- type: isPMTilesUrl(dataUrl) ? _constants.VectorTileType.PMTILES : _constants.VectorTileType.MVT,
39
+ type: _constants.REMOTE_TILE,
40
+ remoteTileFormat: isPMTilesUrl(dataUrl) ? _constants.RemoteTileFormat.PMTILES : _constants.RemoteTileFormat.MVT,
40
41
  tilesetDataUrl: dataUrl,
41
42
  tilesetMetadataUrl: metadataUrl
42
43
  }
@@ -119,7 +120,7 @@ var TilesetVectorForm = function TilesetVectorForm(_ref2) {
119
120
  }, [metadataUrl]);
120
121
  var _useFetchVectorTileMe = (0, _useFetchVectorTileMetadata["default"])({
121
122
  url: metadataUrl,
122
- type: isPMTilesUrl(metadataUrl) ? _constants.VectorTileType.PMTILES : _constants.VectorTileType.MVT,
123
+ remoteTileFormat: isPMTilesUrl(metadataUrl) ? _constants.RemoteTileFormat.PMTILES : _constants.RemoteTileFormat.MVT,
123
124
  process: process
124
125
  }),
125
126
  metadata = _useFetchVectorTileMe.data,
@@ -176,4 +177,4 @@ var TilesetVectorForm = function TilesetVectorForm(_ref2) {
176
177
  }), /*#__PURE__*/_react["default"].createElement(TilesetInputDescription, null, "Optional, but recommended. Supports json, txt")));
177
178
  };
178
179
  var _default = exports["default"] = TilesetVectorForm;
179
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29uc3RhbnRzIiwiX3RhYmxlIiwiX3VzZUZldGNoVmVjdG9yVGlsZU1ldGFkYXRhIiwiX2NvbW1vbiIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJUaWxlc2V0SW5wdXRDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIlRpbGVzZXRJbnB1dERlc2NyaXB0aW9uIiwicHJvcHMiLCJ0aGVtZSIsIkFaVVJFMjAwIiwiaXNQTVRpbGVzVXJsIiwidXJsIiwiaW5jbHVkZXMiLCJnZXREYXRhc2V0QXR0cmlidXRlc0Zyb21WZWN0b3JUaWxlIiwiX3JlZiIsIm5hbWUiLCJkYXRhVXJsIiwibWV0YWRhdGFVcmwiLCJ0eXBlIiwiRGF0YXNldFR5cGUiLCJWRUNUT1JfVElMRSIsIm1ldGFkYXRhIiwiVmVjdG9yVGlsZVR5cGUiLCJQTVRJTEVTIiwiTVZUIiwidGlsZXNldERhdGFVcmwiLCJ0aWxlc2V0TWV0YWRhdGFVcmwiLCJUaWxlc2V0VmVjdG9yRm9ybSIsIl9yZWYyIiwic2V0UmVzcG9uc2UiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJ0aWxlTmFtZSIsInNldFRpbGVOYW1lIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJ0aWxlVXJsIiwic2V0VGlsZVVybCIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2Iiwic2V0TWV0YWRhdGFVcmwiLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsImluaXRpYWxGZXRjaEVycm9yIiwic2V0SW5pdGlhbEZldGNoRXJyb3IiLCJvblRpbGVOYW1lQ2hhbmdlIiwidXNlQ2FsbGJhY2siLCJldmVudCIsInByZXZlbnREZWZhdWx0IiwidGFyZ2V0IiwidmFsdWUiLCJvblRpbGVNZXRhVXJsQ2hhbmdlIiwib25UaWxlVXJsQ2hhbmdlIiwiX3JlZjMiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsIm5ld1RpbGVVcmwiLCJwb3RlbnRpYWxNZXRhZGF0YVVybCIsInJlc3AiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiZ2V0TWV0YVVybCIsImZldGNoIiwic2VudCIsIm9rIiwiRXJyb3IiLCJjb25jYXQiLCJzdGF0dXMiLCJzdGF0dXNUZXh0Iiwic3BsaXQiLCJwb3AiLCJzdG9wIiwiX3giLCJhcHBseSIsImFyZ3VtZW50cyIsInByb2Nlc3MiLCJ1c2VNZW1vIiwicGFyc2VWZWN0b3JNZXRhZGF0YSIsIl91c2VGZXRjaFZlY3RvclRpbGVNZSIsInVzZUZldGNoVmVjdG9yVGlsZU1ldGFkYXRhIiwiZGF0YSIsImxvYWRpbmciLCJtZXRhRXJyb3IiLCJlcnJvciIsInVzZUVmZmVjdCIsImRhdGFzZXQiLCJ1bmRlZmluZWQiLCJjcmVhdGVFbGVtZW50IiwiaHRtbEZvciIsIklucHV0TGlnaHQiLCJpZCIsInBsYWNlaG9sZGVyIiwib25DaGFuZ2UiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kYWxzL3RpbGVzZXRzLW1vZGFscy90aWxlc2V0LXZlY3Rvci1mb3JtLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZSwgdXNlTWVtb30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCB7RGF0YXNldFR5cGUsIFZlY3RvclRpbGVUeXBlfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge2dldE1ldGFVcmwsIHBhcnNlVmVjdG9yTWV0YWRhdGEsIFZlY3RvclRpbGVNZXRhZGF0YX0gZnJvbSAnQGtlcGxlci5nbC90YWJsZSc7XG5pbXBvcnQge1RpbGVKU09OfSBmcm9tICdAbG9hZGVycy5nbC9tdnQnO1xuaW1wb3J0IHtQTVRpbGVzTWV0YWRhdGF9IGZyb20gJ0Bsb2FkZXJzLmdsL3BtdGlsZXMnO1xuXG5pbXBvcnQge2RlZmF1bHQgYXMgdXNlRmV0Y2hWZWN0b3JUaWxlTWV0YWRhdGF9IGZyb20gJy4uLy4uL2hvb2tzL3VzZS1mZXRjaC12ZWN0b3ItdGlsZS1tZXRhZGF0YSc7XG5pbXBvcnQge0RhdGFzZXRDcmVhdGlvbkF0dHJpYnV0ZXMsIE1ldGFSZXNwb25zZX0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHtJbnB1dExpZ2h0fSBmcm9tICcuLi8uLi9jb21tb24nO1xuXG5jb25zdCBUaWxlc2V0SW5wdXRDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCAxZnIpO1xuICByb3ctZ2FwOiAxOHB4O1xuICBmb250LXNpemU6IDEycHg7XG5gO1xuXG5jb25zdCBUaWxlc2V0SW5wdXREZXNjcmlwdGlvbiA9IHN0eWxlZC5kaXZgXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuQVpVUkUyMDB9O1xuICBmb250LXNpemU6IDExcHg7XG5gO1xuXG5leHBvcnQgdHlwZSBWZWN0b3JUaWxlc2V0Rm9ybURhdGEgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgZGF0YVVybDogc3RyaW5nO1xuICBtZXRhZGF0YVVybD86IHN0cmluZztcbn07XG5cbmNvbnN0IGlzUE1UaWxlc1VybCA9ICh1cmw/OiBzdHJpbmcgfCBudWxsKSA9PiB1cmw/LmluY2x1ZGVzKCcucG10aWxlcycpO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGF0YXNldEF0dHJpYnV0ZXNGcm9tVmVjdG9yVGlsZSh7XG4gIG5hbWUsXG4gIGRhdGFVcmwsXG4gIG1ldGFkYXRhVXJsXG59OiBWZWN0b3JUaWxlc2V0Rm9ybURhdGEpOiBEYXRhc2V0Q3JlYXRpb25BdHRyaWJ1dGVzIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lLFxuICAgIHR5cGU6IERhdGFzZXRUeXBlLlZFQ1RPUl9USUxFLFxuICAgIG1ldGFkYXRhOiB7XG4gICAgICB0eXBlOiBpc1BNVGlsZXNVcmwoZGF0YVVybCkgPyBWZWN0b3JUaWxlVHlwZS5QTVRJTEVTIDogVmVjdG9yVGlsZVR5cGUuTVZULFxuICAgICAgdGlsZXNldERhdGFVcmw6IGRhdGFVcmwsXG4gICAgICB0aWxlc2V0TWV0YWRhdGFVcmw6IG1ldGFkYXRhVXJsXG4gICAgfVxuICB9O1xufVxuXG50eXBlIFRpbGVzZXRWZWN0b3JGb3JtUHJvcHMgPSB7XG4gIHNldFJlc3BvbnNlOiAocmVzcG9uc2U6IE1ldGFSZXNwb25zZSkgPT4gdm9pZDtcbn07XG5cbmNvbnN0IFRpbGVzZXRWZWN0b3JGb3JtOiBSZWFjdC5GQzxUaWxlc2V0VmVjdG9yRm9ybVByb3BzPiA9ICh7c2V0UmVzcG9uc2V9KSA9PiB7XG4gIGNvbnN0IFt0aWxlTmFtZSwgc2V0VGlsZU5hbWVdID0gdXNlU3RhdGU8c3RyaW5nPignJyk7XG4gIGNvbnN0IFt0aWxlVXJsLCBzZXRUaWxlVXJsXSA9IHVzZVN0YXRlPHN0cmluZz4oJycpO1xuICBjb25zdCBbbWV0YWRhdGFVcmwsIHNldE1ldGFkYXRhVXJsXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KCcnKTtcbiAgY29uc3QgW2luaXRpYWxGZXRjaEVycm9yLCBzZXRJbml0aWFsRmV0Y2hFcnJvcl0gPSB1c2VTdGF0ZTxFcnJvciB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0IG9uVGlsZU5hbWVDaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgc2V0VGlsZU5hbWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICB9LFxuICAgIFtzZXRUaWxlTmFtZV1cbiAgKTtcblxuICBjb25zdCBvblRpbGVNZXRhVXJsQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50OiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHNldE1ldGFkYXRhVXJsKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgfSxcbiAgICBbc2V0TWV0YWRhdGFVcmxdXG4gICk7XG5cbiAgY29uc3Qgb25UaWxlVXJsQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKGV2ZW50OiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG5ld1RpbGVVcmwgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgICBzZXRUaWxlVXJsKG5ld1RpbGVVcmwpO1xuICAgICAgY29uc3QgcG90ZW50aWFsTWV0YWRhdGFVcmwgPSBpc1BNVGlsZXNVcmwobmV3VGlsZVVybCkgPyBuZXdUaWxlVXJsIDogZ2V0TWV0YVVybChuZXdUaWxlVXJsKTtcbiAgICAgIGlmICghbWV0YWRhdGFVcmwgJiYgcG90ZW50aWFsTWV0YWRhdGFVcmwpIHtcbiAgICAgICAgLy8gY2hlY2sgaWYgVVJMIGV4aXN0cyBiZWZvcmUgc2V0dGluZyBpdCBhcyB0aGUgbWV0YWRhdGEgVVJMXG4gICAgICAgIGNvbnN0IHJlc3AgPSBhd2FpdCBmZXRjaChwb3RlbnRpYWxNZXRhZGF0YVVybCk7XG4gICAgICAgIGlmIChyZXNwLm9rKSB7XG4gICAgICAgICAgc2V0SW5pdGlhbEZldGNoRXJyb3IobnVsbCk7XG4gICAgICAgICAgc2V0TWV0YWRhdGFVcmwocG90ZW50aWFsTWV0YWRhdGFVcmwpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHNldEluaXRpYWxGZXRjaEVycm9yKFxuICAgICAgICAgICAgbmV3IEVycm9yKGBNZXRhZGF0YSBsb2FkaW5nIGZhaWxlZDogJHtyZXNwLnN0YXR1c30gJHtyZXNwLnN0YXR1c1RleHR9YClcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRJbml0aWFsRmV0Y2hFcnJvcihudWxsKTtcbiAgICAgIH1cbiAgICAgIGlmICghdGlsZU5hbWUpIHtcbiAgICAgICAgc2V0VGlsZU5hbWUobmV3VGlsZVVybC5zcGxpdCgnLycpLnBvcCgpIHx8IG5ld1RpbGVVcmwpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW3NldFRpbGVVcmwsIHRpbGVOYW1lLCBzZXRNZXRhZGF0YVVybCwgbWV0YWRhdGFVcmxdXG4gICk7XG5cbiAgY29uc3QgcHJvY2VzcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiAodmFsdWU6IFBNVGlsZXNNZXRhZGF0YSB8IFRpbGVKU09OKSA9PlxuICAgICAgcGFyc2VWZWN0b3JNZXRhZGF0YSh2YWx1ZSwge3RpbGVVcmw6IG1ldGFkYXRhVXJsfSk7XG4gIH0sIFttZXRhZGF0YVVybF0pO1xuXG4gIGNvbnN0IHtcbiAgICBkYXRhOiBtZXRhZGF0YSxcbiAgICBsb2FkaW5nLFxuICAgIGVycm9yOiBtZXRhRXJyb3JcbiAgfSA9IHVzZUZldGNoVmVjdG9yVGlsZU1ldGFkYXRhKHtcbiAgICB1cmw6IG1ldGFkYXRhVXJsLFxuICAgIHR5cGU6IGlzUE1UaWxlc1VybChtZXRhZGF0YVVybCkgPyBWZWN0b3JUaWxlVHlwZS5QTVRJTEVTIDogVmVjdG9yVGlsZVR5cGUuTVZULFxuICAgIHByb2Nlc3NcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGlsZU5hbWUgJiYgdGlsZVVybCkge1xuICAgICAgY29uc3QgZGF0YXNldCA9IGdldERhdGFzZXRBdHRyaWJ1dGVzRnJvbVZlY3RvclRpbGUoe1xuICAgICAgICBuYW1lOiB0aWxlTmFtZSxcbiAgICAgICAgZGF0YVVybDogdGlsZVVybCxcbiAgICAgICAgbWV0YWRhdGFVcmw6IG1ldGFkYXRhVXJsID8/IHVuZGVmaW5lZFxuICAgICAgfSk7XG4gICAgICBzZXRSZXNwb25zZSh7XG4gICAgICAgIG1ldGFkYXRhLFxuICAgICAgICBkYXRhc2V0LFxuICAgICAgICBsb2FkaW5nLFxuICAgICAgICBlcnJvcjogbWV0YUVycm9yIHx8IGluaXRpYWxGZXRjaEVycm9yXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0UmVzcG9uc2Uoe1xuICAgICAgICBtZXRhZGF0YSxcbiAgICAgICAgZGF0YXNldDogbnVsbCxcbiAgICAgICAgbG9hZGluZyxcbiAgICAgICAgZXJyb3I6IG1ldGFFcnJvciB8fCBpbml0aWFsRmV0Y2hFcnJvclxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbXG4gICAgc2V0UmVzcG9uc2UsXG4gICAgbWV0YWRhdGEsXG4gICAgbG9hZGluZyxcbiAgICBtZXRhRXJyb3IsXG4gICAgaW5pdGlhbEZldGNoRXJyb3IsXG4gICAgdGlsZVVybCxcbiAgICB0aWxlTmFtZSxcbiAgICBtZXRhZGF0YVVybFxuICBdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChtZXRhZGF0YSkge1xuICAgICAgc2V0VGlsZU5hbWUoKG1ldGFkYXRhIGFzIFZlY3RvclRpbGVNZXRhZGF0YSkubmFtZSB8fCAnJyk7XG4gICAgfVxuICB9LCBbbWV0YWRhdGFdKTtcblxuICByZXR1cm4gKFxuICAgIDxUaWxlc2V0SW5wdXRDb250YWluZXI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8bGFiZWwgaHRtbEZvcj1cInRpbGVzZXQtbmFtZVwiPk5hbWU8L2xhYmVsPlxuICAgICAgICA8SW5wdXRMaWdodFxuICAgICAgICAgIGlkPVwidGlsZS1uYW1lXCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIk5hbWUgeW91ciB0aWxlc2V0XCJcbiAgICAgICAgICB2YWx1ZT17dGlsZU5hbWV9XG4gICAgICAgICAgb25DaGFuZ2U9e29uVGlsZU5hbWVDaGFuZ2V9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxsYWJlbCBodG1sRm9yPVwidGlsZS11cmxcIj5UaWxlc2V0IFVSTDwvbGFiZWw+XG4gICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgaWQ9XCJ0aWxlLXVybFwiXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJUaWxlc2V0IFVSTFwiXG4gICAgICAgICAgdmFsdWU9e3RpbGVVcmx9XG4gICAgICAgICAgb25DaGFuZ2U9e29uVGlsZVVybENoYW5nZX1cbiAgICAgICAgLz5cbiAgICAgICAgPFRpbGVzZXRJbnB1dERlc2NyaXB0aW9uPlxuICAgICAgICAgIFJlcXVpcmVzICYjMTIzO3gmIzEyNTssICYjMTIzO3kmIzEyNTssICYjMTIzO3omIzEyNTsgcGxhY2Vob2xkZXJzIGluIFVSTCBvciAucG10aWxlXG4gICAgICAgICAgZXh0ZW5zaW9uLlxuICAgICAgICA8L1RpbGVzZXRJbnB1dERlc2NyaXB0aW9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2PlxuICAgICAgICA8bGFiZWwgaHRtbEZvcj1cInRpbGUtbWV0YWRhdGFcIj5UaWxlc2V0IG1ldGFkYXRhIFVSTDwvbGFiZWw+XG4gICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgaWQ9XCJ0aWxlLW1ldGFkYXRhXCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlRpbGVzZXQgbWV0YWRhdGFcIlxuICAgICAgICAgIHZhbHVlPXttZXRhZGF0YVVybCA/PyB1bmRlZmluZWR9XG4gICAgICAgICAgb25DaGFuZ2U9e29uVGlsZU1ldGFVcmxDaGFuZ2V9XG4gICAgICAgIC8+XG4gICAgICAgIDxUaWxlc2V0SW5wdXREZXNjcmlwdGlvbj5cbiAgICAgICAgICBPcHRpb25hbCwgYnV0IHJlY29tbWVuZGVkLiBTdXBwb3J0cyBqc29uLCB0eHRcbiAgICAgICAgPC9UaWxlc2V0SW5wdXREZXNjcmlwdGlvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvVGlsZXNldElucHV0Q29udGFpbmVyPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgVGlsZXNldFZlY3RvckZvcm07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBSUEsSUFBQUssMkJBQUEsR0FBQUgsc0JBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFNLE9BQUEsR0FBQU4sT0FBQTtBQUF3QyxJQUFBTyxlQUFBLEVBQUFDLGdCQUFBLEVBYnhDO0FBQ0E7QUFBQSxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQVgsd0JBQUFXLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFB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
180
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29uc3RhbnRzIiwiX3RhYmxlIiwiX3VzZUZldGNoVmVjdG9yVGlsZU1ldGFkYXRhIiwiX2NvbW1vbiIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJUaWxlc2V0SW5wdXRDb250YWluZXIiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIlRpbGVzZXRJbnB1dERlc2NyaXB0aW9uIiwicHJvcHMiLCJ0aGVtZSIsIkFaVVJFMjAwIiwiaXNQTVRpbGVzVXJsIiwidXJsIiwiaW5jbHVkZXMiLCJnZXREYXRhc2V0QXR0cmlidXRlc0Zyb21WZWN0b3JUaWxlIiwiX3JlZiIsIm5hbWUiLCJkYXRhVXJsIiwibWV0YWRhdGFVcmwiLCJ0eXBlIiwiRGF0YXNldFR5cGUiLCJWRUNUT1JfVElMRSIsIm1ldGFkYXRhIiwiUkVNT1RFX1RJTEUiLCJyZW1vdGVUaWxlRm9ybWF0IiwiUmVtb3RlVGlsZUZvcm1hdCIsIlBNVElMRVMiLCJNVlQiLCJ0aWxlc2V0RGF0YVVybCIsInRpbGVzZXRNZXRhZGF0YVVybCIsIlRpbGVzZXRWZWN0b3JGb3JtIiwiX3JlZjIiLCJzZXRSZXNwb25zZSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInRpbGVOYW1lIiwic2V0VGlsZU5hbWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInRpbGVVcmwiLCJzZXRUaWxlVXJsIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJzZXRNZXRhZGF0YVVybCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiaW5pdGlhbEZldGNoRXJyb3IiLCJzZXRJbml0aWFsRmV0Y2hFcnJvciIsIm9uVGlsZU5hbWVDaGFuZ2UiLCJ1c2VDYWxsYmFjayIsImV2ZW50IiwicHJldmVudERlZmF1bHQiLCJ0YXJnZXQiLCJ2YWx1ZSIsIm9uVGlsZU1ldGFVcmxDaGFuZ2UiLCJvblRpbGVVcmxDaGFuZ2UiLCJfcmVmMyIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwibmV3VGlsZVVybCIsInBvdGVudGlhbE1ldGFkYXRhVXJsIiwicmVzcCIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJnZXRNZXRhVXJsIiwiZmV0Y2giLCJzZW50Iiwib2siLCJFcnJvciIsImNvbmNhdCIsInN0YXR1cyIsInN0YXR1c1RleHQiLCJzcGxpdCIsInBvcCIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwicHJvY2VzcyIsInVzZU1lbW8iLCJwYXJzZVZlY3Rvck1ldGFkYXRhIiwiX3VzZUZldGNoVmVjdG9yVGlsZU1lIiwidXNlRmV0Y2hWZWN0b3JUaWxlTWV0YWRhdGEiLCJkYXRhIiwibG9hZGluZyIsIm1ldGFFcnJvciIsImVycm9yIiwidXNlRWZmZWN0IiwiZGF0YXNldCIsInVuZGVmaW5lZCIsImNyZWF0ZUVsZW1lbnQiLCJodG1sRm9yIiwiSW5wdXRMaWdodCIsImlkIiwicGxhY2Vob2xkZXIiLCJvbkNoYW5nZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2RhbHMvdGlsZXNldHMtbW9kYWxzL3RpbGVzZXQtdmVjdG9yLWZvcm0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVN0YXRlLCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcblxuaW1wb3J0IHtcbiAgRGF0YXNldFR5cGUsXG4gIFJlbW90ZVRpbGVGb3JtYXQsXG4gIFZlY3RvclRpbGVEYXRhc2V0TWV0YWRhdGEsXG4gIFJFTU9URV9USUxFXG59IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7VGlsZUpTT059IGZyb20gJ0Bsb2FkZXJzLmdsL212dCc7XG5pbXBvcnQge1BNVGlsZXNNZXRhZGF0YX0gZnJvbSAnQGxvYWRlcnMuZ2wvcG10aWxlcyc7XG5pbXBvcnQge2dldE1ldGFVcmwsIHBhcnNlVmVjdG9yTWV0YWRhdGEsIFZlY3RvclRpbGVNZXRhZGF0YX0gZnJvbSAnQGtlcGxlci5nbC90YWJsZSc7XG5pbXBvcnQge01lcmdlfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuaW1wb3J0IHtkZWZhdWx0IGFzIHVzZUZldGNoVmVjdG9yVGlsZU1ldGFkYXRhfSBmcm9tICcuLi8uLi9ob29rcy91c2UtZmV0Y2gtdmVjdG9yLXRpbGUtbWV0YWRhdGEnO1xuaW1wb3J0IHtEYXRhc2V0Q3JlYXRpb25BdHRyaWJ1dGVzLCBNZXRhUmVzcG9uc2V9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7SW5wdXRMaWdodH0gZnJvbSAnLi4vLi4vY29tbW9uJztcblxuY29uc3QgVGlsZXNldElucHV0Q29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgMWZyKTtcbiAgcm93LWdhcDogMThweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuYDtcblxuY29uc3QgVGlsZXNldElucHV0RGVzY3JpcHRpb24gPSBzdHlsZWQuZGl2YFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLkFaVVJFMjAwfTtcbiAgZm9udC1zaXplOiAxMXB4O1xuYDtcblxuZXhwb3J0IHR5cGUgVmVjdG9yVGlsZXNldEZvcm1EYXRhID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGRhdGFVcmw6IHN0cmluZztcbiAgbWV0YWRhdGFVcmw/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBpc1BNVGlsZXNVcmwgPSAodXJsPzogc3RyaW5nIHwgbnVsbCkgPT4gdXJsPy5pbmNsdWRlcygnLnBtdGlsZXMnKTtcblxuZXhwb3J0IHR5cGUgVmVjdG9yVGlsZURhdGFzZXRDcmVhdGlvbkF0dHJpYnV0ZXMgPSBNZXJnZTxcbiAgRGF0YXNldENyZWF0aW9uQXR0cmlidXRlcyxcbiAge1xuICAgIG1ldGFkYXRhOiBWZWN0b3JUaWxlRGF0YXNldE1ldGFkYXRhO1xuICB9XG4+O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGF0YXNldEF0dHJpYnV0ZXNGcm9tVmVjdG9yVGlsZSh7XG4gIG5hbWUsXG4gIGRhdGFVcmwsXG4gIG1ldGFkYXRhVXJsXG59OiBWZWN0b3JUaWxlc2V0Rm9ybURhdGEpOiBWZWN0b3JUaWxlRGF0YXNldENyZWF0aW9uQXR0cmlidXRlcyB7XG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICB0eXBlOiBEYXRhc2V0VHlwZS5WRUNUT1JfVElMRSxcbiAgICBtZXRhZGF0YToge1xuICAgICAgdHlwZTogUkVNT1RFX1RJTEUsXG4gICAgICByZW1vdGVUaWxlRm9ybWF0OiBpc1BNVGlsZXNVcmwoZGF0YVVybCkgPyBSZW1vdGVUaWxlRm9ybWF0LlBNVElMRVMgOiBSZW1vdGVUaWxlRm9ybWF0Lk1WVCxcbiAgICAgIHRpbGVzZXREYXRhVXJsOiBkYXRhVXJsLFxuICAgICAgdGlsZXNldE1ldGFkYXRhVXJsOiBtZXRhZGF0YVVybFxuICAgIH1cbiAgfTtcbn1cblxudHlwZSBUaWxlc2V0VmVjdG9yRm9ybVByb3BzID0ge1xuICBzZXRSZXNwb25zZTogKHJlc3BvbnNlOiBNZXRhUmVzcG9uc2UpID0+IHZvaWQ7XG59O1xuXG5jb25zdCBUaWxlc2V0VmVjdG9yRm9ybTogUmVhY3QuRkM8VGlsZXNldFZlY3RvckZvcm1Qcm9wcz4gPSAoe3NldFJlc3BvbnNlfSkgPT4ge1xuICBjb25zdCBbdGlsZU5hbWUsIHNldFRpbGVOYW1lXSA9IHVzZVN0YXRlPHN0cmluZz4oJycpO1xuICBjb25zdCBbdGlsZVVybCwgc2V0VGlsZVVybF0gPSB1c2VTdGF0ZTxzdHJpbmc+KCcnKTtcbiAgY29uc3QgW21ldGFkYXRhVXJsLCBzZXRNZXRhZGF0YVVybF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPignJyk7XG4gIGNvbnN0IFtpbml0aWFsRmV0Y2hFcnJvciwgc2V0SW5pdGlhbEZldGNoRXJyb3JdID0gdXNlU3RhdGU8RXJyb3IgfCBudWxsPihudWxsKTtcblxuICBjb25zdCBvblRpbGVOYW1lQ2hhbmdlID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50OiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHNldFRpbGVOYW1lKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgfSxcbiAgICBbc2V0VGlsZU5hbWVdXG4gICk7XG5cbiAgY29uc3Qgb25UaWxlTWV0YVVybENoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudDogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBzZXRNZXRhZGF0YVVybChldmVudC50YXJnZXQudmFsdWUpO1xuICAgIH0sXG4gICAgW3NldE1ldGFkYXRhVXJsXVxuICApO1xuXG4gIGNvbnN0IG9uVGlsZVVybENoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChldmVudDogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBjb25zdCBuZXdUaWxlVXJsID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgICAgc2V0VGlsZVVybChuZXdUaWxlVXJsKTtcbiAgICAgIGNvbnN0IHBvdGVudGlhbE1ldGFkYXRhVXJsID0gaXNQTVRpbGVzVXJsKG5ld1RpbGVVcmwpID8gbmV3VGlsZVVybCA6IGdldE1ldGFVcmwobmV3VGlsZVVybCk7XG4gICAgICBpZiAoIW1ldGFkYXRhVXJsICYmIHBvdGVudGlhbE1ldGFkYXRhVXJsKSB7XG4gICAgICAgIC8vIGNoZWNrIGlmIFVSTCBleGlzdHMgYmVmb3JlIHNldHRpbmcgaXQgYXMgdGhlIG1ldGFkYXRhIFVSTFxuICAgICAgICBjb25zdCByZXNwID0gYXdhaXQgZmV0Y2gocG90ZW50aWFsTWV0YWRhdGFVcmwpO1xuICAgICAgICBpZiAocmVzcC5vaykge1xuICAgICAgICAgIHNldEluaXRpYWxGZXRjaEVycm9yKG51bGwpO1xuICAgICAgICAgIHNldE1ldGFkYXRhVXJsKHBvdGVudGlhbE1ldGFkYXRhVXJsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzZXRJbml0aWFsRmV0Y2hFcnJvcihcbiAgICAgICAgICAgIG5ldyBFcnJvcihgTWV0YWRhdGEgbG9hZGluZyBmYWlsZWQ6ICR7cmVzcC5zdGF0dXN9ICR7cmVzcC5zdGF0dXNUZXh0fWApXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0SW5pdGlhbEZldGNoRXJyb3IobnVsbCk7XG4gICAgICB9XG4gICAgICBpZiAoIXRpbGVOYW1lKSB7XG4gICAgICAgIHNldFRpbGVOYW1lKG5ld1RpbGVVcmwuc3BsaXQoJy8nKS5wb3AoKSB8fCBuZXdUaWxlVXJsKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtzZXRUaWxlVXJsLCB0aWxlTmFtZSwgc2V0TWV0YWRhdGFVcmwsIG1ldGFkYXRhVXJsXVxuICApO1xuXG4gIGNvbnN0IHByb2Nlc3MgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gKHZhbHVlOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTikgPT5cbiAgICAgIHBhcnNlVmVjdG9yTWV0YWRhdGEodmFsdWUsIHt0aWxlVXJsOiBtZXRhZGF0YVVybH0pO1xuICB9LCBbbWV0YWRhdGFVcmxdKTtcblxuICBjb25zdCB7XG4gICAgZGF0YTogbWV0YWRhdGEsXG4gICAgbG9hZGluZyxcbiAgICBlcnJvcjogbWV0YUVycm9yXG4gIH0gPSB1c2VGZXRjaFZlY3RvclRpbGVNZXRhZGF0YSh7XG4gICAgdXJsOiBtZXRhZGF0YVVybCxcbiAgICByZW1vdGVUaWxlRm9ybWF0OiBpc1BNVGlsZXNVcmwobWV0YWRhdGFVcmwpID8gUmVtb3RlVGlsZUZvcm1hdC5QTVRJTEVTIDogUmVtb3RlVGlsZUZvcm1hdC5NVlQsXG4gICAgcHJvY2Vzc1xuICB9KTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh0aWxlTmFtZSAmJiB0aWxlVXJsKSB7XG4gICAgICBjb25zdCBkYXRhc2V0ID0gZ2V0RGF0YXNldEF0dHJpYnV0ZXNGcm9tVmVjdG9yVGlsZSh7XG4gICAgICAgIG5hbWU6IHRpbGVOYW1lLFxuICAgICAgICBkYXRhVXJsOiB0aWxlVXJsLFxuICAgICAgICBtZXRhZGF0YVVybDogbWV0YWRhdGFVcmwgPz8gdW5kZWZpbmVkXG4gICAgICB9KTtcbiAgICAgIHNldFJlc3BvbnNlKHtcbiAgICAgICAgbWV0YWRhdGEsXG4gICAgICAgIGRhdGFzZXQsXG4gICAgICAgIGxvYWRpbmcsXG4gICAgICAgIGVycm9yOiBtZXRhRXJyb3IgfHwgaW5pdGlhbEZldGNoRXJyb3JcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBzZXRSZXNwb25zZSh7XG4gICAgICAgIG1ldGFkYXRhLFxuICAgICAgICBkYXRhc2V0OiBudWxsLFxuICAgICAgICBsb2FkaW5nLFxuICAgICAgICBlcnJvcjogbWV0YUVycm9yIHx8IGluaXRpYWxGZXRjaEVycm9yXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtcbiAgICBzZXRSZXNwb25zZSxcbiAgICBtZXRhZGF0YSxcbiAgICBsb2FkaW5nLFxuICAgIG1ldGFFcnJvcixcbiAgICBpbml0aWFsRmV0Y2hFcnJvcixcbiAgICB0aWxlVXJsLFxuICAgIHRpbGVOYW1lLFxuICAgIG1ldGFkYXRhVXJsXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKG1ldGFkYXRhKSB7XG4gICAgICBzZXRUaWxlTmFtZSgobWV0YWRhdGEgYXMgVmVjdG9yVGlsZU1ldGFkYXRhKS5uYW1lIHx8ICcnKTtcbiAgICB9XG4gIH0sIFttZXRhZGF0YV0pO1xuXG4gIHJldHVybiAoXG4gICAgPFRpbGVzZXRJbnB1dENvbnRhaW5lcj5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxsYWJlbCBodG1sRm9yPVwidGlsZXNldC1uYW1lXCI+TmFtZTwvbGFiZWw+XG4gICAgICAgIDxJbnB1dExpZ2h0XG4gICAgICAgICAgaWQ9XCJ0aWxlLW5hbWVcIlxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiTmFtZSB5b3VyIHRpbGVzZXRcIlxuICAgICAgICAgIHZhbHVlPXt0aWxlTmFtZX1cbiAgICAgICAgICBvbkNoYW5nZT17b25UaWxlTmFtZUNoYW5nZX1cbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdj5cbiAgICAgICAgPGxhYmVsIGh0bWxGb3I9XCJ0aWxlLXVybFwiPlRpbGVzZXQgVVJMPC9sYWJlbD5cbiAgICAgICAgPElucHV0TGlnaHRcbiAgICAgICAgICBpZD1cInRpbGUtdXJsXCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlRpbGVzZXQgVVJMXCJcbiAgICAgICAgICB2YWx1ZT17dGlsZVVybH1cbiAgICAgICAgICBvbkNoYW5nZT17b25UaWxlVXJsQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgICA8VGlsZXNldElucHV0RGVzY3JpcHRpb24+XG4gICAgICAgICAgUmVxdWlyZXMgJiMxMjM7eCYjMTI1OywgJiMxMjM7eSYjMTI1OywgJiMxMjM7eiYjMTI1OyBwbGFjZWhvbGRlcnMgaW4gVVJMIG9yIC5wbXRpbGVcbiAgICAgICAgICBleHRlbnNpb24uXG4gICAgICAgIDwvVGlsZXNldElucHV0RGVzY3JpcHRpb24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxsYWJlbCBodG1sRm9yPVwidGlsZS1tZXRhZGF0YVwiPlRpbGVzZXQgbWV0YWRhdGEgVVJMPC9sYWJlbD5cbiAgICAgICAgPElucHV0TGlnaHRcbiAgICAgICAgICBpZD1cInRpbGUtbWV0YWRhdGFcIlxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiVGlsZXNldCBtZXRhZGF0YVwiXG4gICAgICAgICAgdmFsdWU9e21ldGFkYXRhVXJsID8/IHVuZGVmaW5lZH1cbiAgICAgICAgICBvbkNoYW5nZT17b25UaWxlTWV0YVVybENoYW5nZX1cbiAgICAgICAgLz5cbiAgICAgICAgPFRpbGVzZXRJbnB1dERlc2NyaXB0aW9uPlxuICAgICAgICAgIE9wdGlvbmFsLCBidXQgcmVjb21tZW5kZWQuIFN1cHBvcnRzIGpzb24sIHR4dFxuICAgICAgICA8L1RpbGVzZXRJbnB1dERlc2NyaXB0aW9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9UaWxlc2V0SW5wdXRDb250YWluZXI+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBUaWxlc2V0VmVjdG9yRm9ybTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxVQUFBLEdBQUFILE9BQUE7QUFRQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFHQSxJQUFBSywyQkFBQSxHQUFBSCxzQkFBQSxD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
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kepler.gl/components",
3
3
  "author": "Shan He <shan@uber.com>",
4
- "version": "3.1.0-alpha.4",
4
+ "version": "3.1.0-alpha.6",
5
5
  "description": "kepler.gl constants used by kepler.gl components, actions and reducers",
6
6
  "license": "MIT",
7
7
  "main": "dist/index.js",
@@ -38,20 +38,20 @@
38
38
  "@dnd-kit/utilities": "^3.2.2",
39
39
  "@emotion/is-prop-valid": "^1.2.1",
40
40
  "@floating-ui/react": "0.25.1",
41
- "@kepler.gl/actions": "3.1.0-alpha.4",
42
- "@kepler.gl/cloud-providers": "3.1.0-alpha.4",
43
- "@kepler.gl/common-utils": "3.1.0-alpha.4",
44
- "@kepler.gl/constants": "3.1.0-alpha.4",
45
- "@kepler.gl/effects": "3.1.0-alpha.4",
46
- "@kepler.gl/layers": "3.1.0-alpha.4",
47
- "@kepler.gl/localization": "3.1.0-alpha.4",
48
- "@kepler.gl/processors": "3.1.0-alpha.4",
49
- "@kepler.gl/reducers": "3.1.0-alpha.4",
50
- "@kepler.gl/schemas": "3.1.0-alpha.4",
51
- "@kepler.gl/styles": "3.1.0-alpha.4",
52
- "@kepler.gl/table": "3.1.0-alpha.4",
53
- "@kepler.gl/types": "3.1.0-alpha.4",
54
- "@kepler.gl/utils": "3.1.0-alpha.4",
41
+ "@kepler.gl/actions": "3.1.0-alpha.6",
42
+ "@kepler.gl/cloud-providers": "3.1.0-alpha.6",
43
+ "@kepler.gl/common-utils": "3.1.0-alpha.6",
44
+ "@kepler.gl/constants": "3.1.0-alpha.6",
45
+ "@kepler.gl/effects": "3.1.0-alpha.6",
46
+ "@kepler.gl/layers": "3.1.0-alpha.6",
47
+ "@kepler.gl/localization": "3.1.0-alpha.6",
48
+ "@kepler.gl/processors": "3.1.0-alpha.6",
49
+ "@kepler.gl/reducers": "3.1.0-alpha.6",
50
+ "@kepler.gl/schemas": "3.1.0-alpha.6",
51
+ "@kepler.gl/styles": "3.1.0-alpha.6",
52
+ "@kepler.gl/table": "3.1.0-alpha.6",
53
+ "@kepler.gl/types": "3.1.0-alpha.6",
54
+ "@kepler.gl/utils": "3.1.0-alpha.6",
55
55
  "@loaders.gl/mvt": "^4.3.2",
56
56
  "@loaders.gl/pmtiles": "^4.3.2",
57
57
  "@mapbox/mapbox-sdk": "^0.15.3",