easy-drag-and-drop 1.2.56 → 1.2.59

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.
@@ -28,7 +28,7 @@ function isNativeReflectConstruct() {
28
28
  return false;
29
29
  }
30
30
  }
31
- function _construct(Parent1, args1, Class1) {
31
+ function _construct(Parent, args, Class) {
32
32
  if (isNativeReflectConstruct()) {
33
33
  _construct = Reflect.construct;
34
34
  } else {
@@ -72,11 +72,11 @@ function _defineProperty(obj, key, value) {
72
72
  }
73
73
  return obj;
74
74
  }
75
- function _getPrototypeOf(o1) {
75
+ function _getPrototypeOf(o) {
76
76
  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
77
77
  return o.__proto__ || Object.getPrototypeOf(o);
78
78
  };
79
- return _getPrototypeOf(o1);
79
+ return _getPrototypeOf(o);
80
80
  }
81
81
  function _inherits(subClass, superClass) {
82
82
  if (typeof superClass !== "function" && superClass !== null) {
@@ -105,12 +105,12 @@ function _possibleConstructorReturn(self, call) {
105
105
  }
106
106
  return _assertThisInitialized(self);
107
107
  }
108
- function _setPrototypeOf(o2, p1) {
108
+ function _setPrototypeOf(o, p) {
109
109
  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
110
110
  o.__proto__ = p;
111
111
  return o;
112
112
  };
113
- return _setPrototypeOf(o2, p1);
113
+ return _setPrototypeOf(o, p);
114
114
  }
115
115
  function _taggedTemplateLiteral(strings, raw) {
116
116
  if (!raw) {
@@ -126,7 +126,7 @@ var _typeof = function(obj) {
126
126
  "@swc/helpers - typeof";
127
127
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
128
128
  };
129
- function _wrapNativeSuper(Class2) {
129
+ function _wrapNativeSuper(Class) {
130
130
  var _cache = typeof Map === "function" ? new Map() : undefined;
131
131
  _wrapNativeSuper = function _wrapNativeSuper(Class) {
132
132
  if (Class === null || !_isNativeFunction(Class)) return Class;
@@ -150,7 +150,7 @@ function _wrapNativeSuper(Class2) {
150
150
  });
151
151
  return _setPrototypeOf(Wrapper, Class);
152
152
  };
153
- return _wrapNativeSuper(Class2);
153
+ return _wrapNativeSuper(Class);
154
154
  }
155
155
  function _isNativeReflectConstruct() {
156
156
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -27,7 +27,7 @@ function isNativeReflectConstruct() {
27
27
  return false;
28
28
  }
29
29
  }
30
- function _construct(Parent1, args1, Class1) {
30
+ function _construct(Parent, args, Class) {
31
31
  if (isNativeReflectConstruct()) {
32
32
  _construct = Reflect.construct;
33
33
  } else {
@@ -71,11 +71,11 @@ function _defineProperty(obj, key, value) {
71
71
  }
72
72
  return obj;
73
73
  }
74
- function _getPrototypeOf(o1) {
74
+ function _getPrototypeOf(o) {
75
75
  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
76
76
  return o.__proto__ || Object.getPrototypeOf(o);
77
77
  };
78
- return _getPrototypeOf(o1);
78
+ return _getPrototypeOf(o);
79
79
  }
80
80
  function _inherits(subClass, superClass) {
81
81
  if (typeof superClass !== "function" && superClass !== null) {
@@ -104,18 +104,18 @@ function _possibleConstructorReturn(self, call) {
104
104
  }
105
105
  return _assertThisInitialized(self);
106
106
  }
107
- function _setPrototypeOf(o2, p1) {
107
+ function _setPrototypeOf(o, p) {
108
108
  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
109
109
  o.__proto__ = p;
110
110
  return o;
111
111
  };
112
- return _setPrototypeOf(o2, p1);
112
+ return _setPrototypeOf(o, p);
113
113
  }
114
114
  var _typeof = function(obj) {
115
115
  "@swc/helpers - typeof";
116
116
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
117
117
  };
118
- function _wrapNativeSuper(Class2) {
118
+ function _wrapNativeSuper(Class) {
119
119
  var _cache = typeof Map === "function" ? new Map() : undefined;
120
120
  _wrapNativeSuper = function _wrapNativeSuper(Class) {
121
121
  if (Class === null || !_isNativeFunction(Class)) return Class;
@@ -139,7 +139,7 @@ function _wrapNativeSuper(Class2) {
139
139
  });
140
140
  return _setPrototypeOf(Wrapper, Class);
141
141
  };
142
- return _wrapNativeSuper(Class2);
142
+ return _wrapNativeSuper(Class);
143
143
  }
144
144
  function _isNativeReflectConstruct() {
145
145
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -45,11 +45,11 @@ function _defineProperty(obj, key, value) {
45
45
  }
46
46
  return obj;
47
47
  }
48
- function _getPrototypeOf(o1) {
48
+ function _getPrototypeOf(o) {
49
49
  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
50
50
  return o.__proto__ || Object.getPrototypeOf(o);
51
51
  };
52
- return _getPrototypeOf(o1);
52
+ return _getPrototypeOf(o);
53
53
  }
54
54
  function _inherits(subClass, superClass) {
55
55
  if (typeof superClass !== "function" && superClass !== null) {
@@ -75,12 +75,12 @@ function _possibleConstructorReturn(self, call) {
75
75
  }
76
76
  return _assertThisInitialized(self);
77
77
  }
78
- function _setPrototypeOf(o2, p1) {
78
+ function _setPrototypeOf(o, p) {
79
79
  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
80
80
  o.__proto__ = p;
81
81
  return o;
82
82
  };
83
- return _setPrototypeOf(o2, p1);
83
+ return _setPrototypeOf(o, p);
84
84
  }
85
85
  function _taggedTemplateLiteral(strings, raw) {
86
86
  if (!raw) {
@@ -29,7 +29,7 @@ function isNativeReflectConstruct() {
29
29
  return false;
30
30
  }
31
31
  }
32
- function _construct(Parent1, args1, Class1) {
32
+ function _construct(Parent, args, Class) {
33
33
  if (isNativeReflectConstruct()) {
34
34
  _construct = Reflect.construct;
35
35
  } else {
@@ -73,11 +73,11 @@ function _defineProperty(obj, key, value) {
73
73
  }
74
74
  return obj;
75
75
  }
76
- function _getPrototypeOf(o1) {
76
+ function _getPrototypeOf(o) {
77
77
  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
78
78
  return o.__proto__ || Object.getPrototypeOf(o);
79
79
  };
80
- return _getPrototypeOf(o1);
80
+ return _getPrototypeOf(o);
81
81
  }
82
82
  function _inherits(subClass, superClass) {
83
83
  if (typeof superClass !== "function" && superClass !== null) {
@@ -106,12 +106,12 @@ function _possibleConstructorReturn(self, call) {
106
106
  }
107
107
  return _assertThisInitialized(self);
108
108
  }
109
- function _setPrototypeOf(o2, p1) {
109
+ function _setPrototypeOf(o, p) {
110
110
  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
111
111
  o.__proto__ = p;
112
112
  return o;
113
113
  };
114
- return _setPrototypeOf(o2, p1);
114
+ return _setPrototypeOf(o, p);
115
115
  }
116
116
  function _taggedTemplateLiteral(strings, raw) {
117
117
  if (!raw) {
@@ -127,7 +127,7 @@ var _typeof = function(obj) {
127
127
  "@swc/helpers - typeof";
128
128
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
129
129
  };
130
- function _wrapNativeSuper(Class2) {
130
+ function _wrapNativeSuper(Class) {
131
131
  var _cache = typeof Map === "function" ? new Map() : undefined;
132
132
  _wrapNativeSuper = function _wrapNativeSuper(Class) {
133
133
  if (Class === null || !_isNativeFunction(Class)) return Class;
@@ -151,7 +151,7 @@ function _wrapNativeSuper(Class2) {
151
151
  });
152
152
  return _setPrototypeOf(Wrapper, Class);
153
153
  };
154
- return _wrapNativeSuper(Class2);
154
+ return _wrapNativeSuper(Class);
155
155
  }
156
156
  function _isNativeReflectConstruct() {
157
157
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -28,7 +28,7 @@ function isNativeReflectConstruct() {
28
28
  return false;
29
29
  }
30
30
  }
31
- function _construct(Parent1, args1, Class1) {
31
+ function _construct(Parent, args, Class) {
32
32
  if (isNativeReflectConstruct()) {
33
33
  _construct = Reflect.construct;
34
34
  } else {
@@ -72,11 +72,11 @@ function _defineProperty(obj, key, value) {
72
72
  }
73
73
  return obj;
74
74
  }
75
- function _getPrototypeOf(o1) {
75
+ function _getPrototypeOf(o) {
76
76
  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
77
77
  return o.__proto__ || Object.getPrototypeOf(o);
78
78
  };
79
- return _getPrototypeOf(o1);
79
+ return _getPrototypeOf(o);
80
80
  }
81
81
  function _inherits(subClass, superClass) {
82
82
  if (typeof superClass !== "function" && superClass !== null) {
@@ -105,18 +105,18 @@ function _possibleConstructorReturn(self, call) {
105
105
  }
106
106
  return _assertThisInitialized(self);
107
107
  }
108
- function _setPrototypeOf(o2, p1) {
108
+ function _setPrototypeOf(o, p) {
109
109
  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
110
110
  o.__proto__ = p;
111
111
  return o;
112
112
  };
113
- return _setPrototypeOf(o2, p1);
113
+ return _setPrototypeOf(o, p);
114
114
  }
115
115
  var _typeof = function(obj) {
116
116
  "@swc/helpers - typeof";
117
117
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
118
118
  };
119
- function _wrapNativeSuper(Class2) {
119
+ function _wrapNativeSuper(Class) {
120
120
  var _cache = typeof Map === "function" ? new Map() : undefined;
121
121
  _wrapNativeSuper = function _wrapNativeSuper(Class) {
122
122
  if (Class === null || !_isNativeFunction(Class)) return Class;
@@ -140,7 +140,7 @@ function _wrapNativeSuper(Class2) {
140
140
  });
141
141
  return _setPrototypeOf(Wrapper, Class);
142
142
  };
143
- return _wrapNativeSuper(Class2);
143
+ return _wrapNativeSuper(Class);
144
144
  }
145
145
  function _isNativeReflectConstruct() {
146
146
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -105,12 +105,12 @@ function stopWaitingToDrag() {
105
105
  }
106
106
  }
107
107
  function startDrag(mouseTop, mouseLeft) {
108
- var bounds = this.getBounds(), eventType = START_DRAG_EVENT_TYPE, boundsTop = bounds.getTop(), boundsLeft = bounds.getLeft(), boundsRight = bounds.getRight(), boundsBottom = bounds.getBottom(), boundsWidth = boundsRight - boundsLeft, boundsHeight = boundsBottom - boundsTop, topOffset = Math.floor(boundsHeight / 2), leftOffset = Math.floor(boundsWidth / 2), dragElement1 = this, startMouseTop = mouseTop, startMouseLeft = mouseLeft; ///
108
+ var bounds = this.getBounds(), eventType = START_DRAG_EVENT_TYPE, boundsTop = bounds.getTop(), boundsLeft = bounds.getLeft(), boundsRight = bounds.getRight(), boundsBottom = bounds.getBottom(), boundsWidth = boundsRight - boundsLeft, boundsHeight = boundsBottom - boundsTop, topOffset = Math.floor(boundsHeight / 2), leftOffset = Math.floor(boundsWidth / 2), dragElement = this, startMouseTop = mouseTop, startMouseLeft = mouseLeft; ///
109
109
  _easy.window.onKeyDown(keyDownHandler, this);
110
110
  _easy.window.onMouseMove(mouseMoveHandler, this);
111
111
  this.addClass("dragging");
112
112
  Object.assign(globalThis, {
113
- dragElement: dragElement1
113
+ dragElement: dragElement
114
114
  });
115
115
  this.setTopOffset(topOffset);
116
116
  this.setLeftOffset(leftOffset);
@@ -127,16 +127,16 @@ function stopDrag(aborted) {
127
127
  var done = function() {
128
128
  var _this1 = _this;
129
129
  _this.callHandlersAsync(eventType, dropElement, aborted, function() {
130
- var dragElement3 = null;
130
+ var dragElement = null;
131
131
  Object.assign(globalThis, {
132
- dragElement: dragElement3
132
+ dragElement: dragElement
133
133
  });
134
134
  _this1.removeClass("dragging");
135
135
  });
136
136
  };
137
137
  if (dropElement !== null) {
138
- var dragElement2 = this; ///
139
- dropElement.drop(dragElement2, aborted, done);
138
+ var dragElement = this; ///
139
+ dropElement.drop(dragElement, aborted, done);
140
140
  } else {
141
141
  done();
142
142
  }
@@ -223,7 +223,7 @@ function callHandlersAsync(eventType) {
223
223
  remainingArguments[_key - 1] = arguments[_key];
224
224
  }
225
225
  var _this = this;
226
- var done1 = remainingArguments.pop(), eventListeners = this.findEventListeners(eventType);
226
+ var done = remainingArguments.pop(), eventListeners = this.findEventListeners(eventType);
227
227
  forEach(eventListeners, function(eventListener, next) {
228
228
  var _handler;
229
229
  var handler = eventListener.handler, handlerElement = eventListener.element, element = _this, done = next; ///
@@ -233,7 +233,7 @@ function callHandlersAsync(eventType) {
233
233
  element,
234
234
  done
235
235
  ]));
236
- }, done1);
236
+ }, done);
237
237
  }
238
238
  var _default = {
239
239
  onDrag: onDrag,
@@ -301,4 +301,4 @@ function mouseMoveHandler(event, element) {
301
301
  event.stopPropagation();
302
302
  }
303
303
 
304
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJhZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgd2luZG93LCBidXR0b25zLCBldmVudFR5cGVzIH0gZnJvbSBcImVhc3lcIjtcbmltcG9ydCB7IGtleUNvZGVzLCBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCIgO1xuXG5pbXBvcnQgeyBTVEFSVF9EUkFHR0lOR19ERUxBWSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IG1vdXNlVG9wRnJvbUV2ZW50LCBtb3VzZUxlZnRGcm9tRXZlbnQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2V2ZW50XCI7XG5cbmNvbnN0IHsgZm9yRWFjaCB9ID0gYXN5bmNocm9ub3VzVXRpbGl0aWVzLFxuICAgICAgeyBFU0NBUEVfS0VZQ09ERSB9ID0ga2V5Q29kZXMsXG4gICAgICB7IExFRlRfTU9VU0VfQlVUVE9OIH0gPSBidXR0b25zLFxuICAgICAgeyBCTFVSX0VWRU5UX1RZUEUsIERSQUdfRVZFTlRfVFlQRSwgU1RPUF9EUkFHX0VWRU5UX1RZUEUsIFNUQVJUX0RSQUdfRVZFTlRfVFlQRSB9ID0gZXZlbnRUeXBlc1xuXG5jb25zdCBkcmFnRWxlbWVudCA9IG51bGw7XG5cbk9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICBkcmFnRWxlbWVudFxufSk7XG5cbmZ1bmN0aW9uIG9uRHJhZyhkcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZEcmFnKGRyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGRyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uU3RvcERyYWcoc3RvcERyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFNUT1BfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gc3RvcERyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZlN0b3BEcmFnKHN0b3BEcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBTVE9QX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHN0b3BEcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvblN0YXJ0RHJhZyhzdGFydERyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFNUQVJUX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHN0YXJ0RHJhZ0hhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmU3RhcnREcmFnKHN0YXJ0RHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gU1RBUlRfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gc3RhcnREcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBlbmFibGVEcmFnKCkge1xuICBjb25zdCB7IG9uRHJhZywgb25TdG9wRHJhZywgb25TdGFydERyYWcgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgZHJhZ0hhbmRsZXIgPSBvbkRyYWcsIC8vL1xuICAgICAgICBzdG9wRHJhZ0hhbmRsZXIgPSBvblN0b3BEcmFnLCAvLy9cbiAgICAgICAgc3RhcnREcmFnSGFuZGxlciA9IG9uU3RhcnREcmFnLCAvLy9cbiAgICAgICAgdGltZW91dCA9IG51bGwsXG4gICAgICAgIHRvcE9mZnNldCA9IG51bGwsXG4gICAgICAgIGxlZnRPZmZzZXQgPSBudWxsLFxuICAgICAgICBzdGFydE1vdXNlVG9wID0gbnVsbCxcbiAgICAgICAgc3RhcnRNb3VzZUxlZnQgPSBudWxsO1xuXG4gIGRyYWdIYW5kbGVyICYmIHRoaXMub25EcmFnKGRyYWdIYW5kbGVyKTtcbiAgc3RvcERyYWdIYW5kbGVyICYmIHRoaXMub25TdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIpO1xuICBzdGFydERyYWdIYW5kbGVyICYmIHRoaXMub25TdGFydERyYWcoc3RhcnREcmFnSGFuZGxlcik7XG5cbiAgdGhpcy5vbk1vdXNlRG93bihtb3VzZURvd25IYW5kbGVyLCB0aGlzKTtcblxuICB0aGlzLnNldFN0YXRlKHtcbiAgICB0aW1lb3V0LFxuICAgIHRvcE9mZnNldCxcbiAgICBsZWZ0T2Zmc2V0LFxuICAgIHN0YXJ0TW91c2VUb3AsXG4gICAgc3RhcnRNb3VzZUxlZnRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGRpc2FibGVEcmFnKCkge1xuICBjb25zdCB7IG9uRHJhZywgb25TdG9wRHJhZywgb25TdGFydERyYWcgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgZHJhZ0hhbmRsZXIgPSBvbkRyYWcsIC8vL1xuICAgICAgICBzdG9wRHJhZ0hhbmRsZXIgPSBvblN0b3BEcmFnLCAvLy9cbiAgICAgICAgc3RhcnREcmFnSGFuZGxlciA9IG9uU3RhcnREcmFnOyAvLy9cblxuICBkcmFnSGFuZGxlciAmJiB0aGlzLm9mZkRyYWcoZHJhZ0hhbmRsZXIpO1xuICBzdG9wRHJhZ0hhbmRsZXIgJiYgdGhpcy5vZmZTdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIpO1xuICBzdGFydERyYWdIYW5kbGVyICYmIHRoaXMub2ZmU3RhcnREcmFnKHN0YXJ0RHJhZ0hhbmRsZXIpO1xuXG4gIHRoaXMub2ZmTW91c2VEb3duKG1vdXNlRG93bkhhbmRsZXIsIHRoaXMpO1xufVxuXG5mdW5jdGlvbiBpc0RyYWdnaW5nKCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaGFzQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcblxuICByZXR1cm4gZHJhZ2dpbmc7XG59XG5cbmZ1bmN0aW9uIHN0YXJ0V2FpdGluZ1RvRHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KSB7XG4gIGxldCB0aW1lb3V0ID0gdGhpcy5nZXRUaW1lb3V0KCk7XG5cbiAgaWYgKHRpbWVvdXQgPT09IG51bGwpIHtcbiAgICB0aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0VGltZW91dCgpO1xuXG4gICAgICB0aGlzLnN0YXJ0RHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KTtcbiAgICB9LCBTVEFSVF9EUkFHR0lOR19ERUxBWSk7XG5cbiAgICB0aGlzLnVwZGF0ZVRpbWVvdXQodGltZW91dCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RvcFdhaXRpbmdUb0RyYWcoKSB7XG4gIGNvbnN0IHRpbWVvdXQgPSB0aGlzLmdldFRpbWVvdXQoKTtcblxuICBpZiAodGltZW91dCAhPT0gbnVsbCkge1xuICAgIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcblxuICAgIHRoaXMucmVzZXRUaW1lb3V0KCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RhcnREcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpIHtcbiAgY29uc3QgYm91bmRzID0gdGhpcy5nZXRCb3VuZHMoKSxcbiAgICAgICAgZXZlbnRUeXBlID0gU1RBUlRfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBib3VuZHNUb3AgPSBib3VuZHMuZ2V0VG9wKCksXG4gICAgICAgIGJvdW5kc0xlZnQgPSBib3VuZHMuZ2V0TGVmdCgpLFxuICAgICAgICBib3VuZHNSaWdodCA9IGJvdW5kcy5nZXRSaWdodCgpLFxuICAgICAgICBib3VuZHNCb3R0b20gPSBib3VuZHMuZ2V0Qm90dG9tKCksXG4gICAgICAgIGJvdW5kc1dpZHRoID0gYm91bmRzUmlnaHQgLSBib3VuZHNMZWZ0LFxuICAgICAgICBib3VuZHNIZWlnaHQgPSBib3VuZHNCb3R0b20gLSBib3VuZHNUb3AsXG4gICAgICAgIHRvcE9mZnNldCA9IE1hdGguZmxvb3IoYm91bmRzSGVpZ2h0IC8gMiksXG4gICAgICAgIGxlZnRPZmZzZXQgPSBNYXRoLmZsb29yKGJvdW5kc1dpZHRoIC8gMiksXG4gICAgICAgIGRyYWdFbGVtZW50ID0gdGhpcywgLy8vXG4gICAgICAgIHN0YXJ0TW91c2VUb3AgPSBtb3VzZVRvcCwgLy8vXG4gICAgICAgIHN0YXJ0TW91c2VMZWZ0ID0gbW91c2VMZWZ0OyAvLy9cblxuICB3aW5kb3cub25LZXlEb3duKGtleURvd25IYW5kbGVyLCB0aGlzKTtcblxuICB3aW5kb3cub25Nb3VzZU1vdmUobW91c2VNb3ZlSGFuZGxlciwgdGhpcyk7XG5cbiAgdGhpcy5hZGRDbGFzcyhcImRyYWdnaW5nXCIpO1xuXG4gIE9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICAgIGRyYWdFbGVtZW50XG4gIH0pO1xuXG4gIHRoaXMuc2V0VG9wT2Zmc2V0KHRvcE9mZnNldCk7XG5cbiAgdGhpcy5zZXRMZWZ0T2Zmc2V0KGxlZnRPZmZzZXQpO1xuXG4gIHRoaXMuc2V0U3RhcnRNb3VzZVRvcChzdGFydE1vdXNlVG9wKTtcblxuICB0aGlzLnNldFN0YXJ0TW91c2VMZWZ0KHN0YXJ0TW91c2VMZWZ0KTtcblxuICB0aGlzLmNhbGxIYW5kbGVycyhldmVudFR5cGUpO1xuXG4gIHRoaXMuZHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KTtcbn1cblxuZnVuY3Rpb24gc3RvcERyYWcoYWJvcnRlZCkge1xuICBjb25zdCB7IGRyb3BFbGVtZW50IH0gPSBnbG9iYWxUaGlzLFxuICAgICAgICBldmVudFR5cGUgPSBTVE9QX0RSQUdfRVZFTlRfVFlQRTtcblxuICB3aW5kb3cub2ZmS2V5RG93bihrZXlEb3duSGFuZGxlciwgdGhpcyk7XG5cbiAgd2luZG93Lm9mZk1vdXNlTW92ZShtb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICBjb25zdCBkb25lID0gKCkgPT4ge1xuICAgIHRoaXMuY2FsbEhhbmRsZXJzQXN5bmMoZXZlbnRUeXBlLCBkcm9wRWxlbWVudCwgYWJvcnRlZCwgKCkgPT4ge1xuICAgICAgY29uc3QgZHJhZ0VsZW1lbnQgPSBudWxsO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgICAgZHJhZ0VsZW1lbnRcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnJlbW92ZUNsYXNzKFwiZHJhZ2dpbmdcIik7XG4gICAgfSk7XG4gIH1cblxuICBpZiAoZHJvcEVsZW1lbnQgIT09IG51bGwpIHtcbiAgICBjb25zdCBkcmFnRWxlbWVudCA9IHRoaXM7IC8vL1xuXG4gICAgZHJvcEVsZW1lbnQuZHJvcChkcmFnRWxlbWVudCwgYWJvcnRlZCwgZG9uZSk7XG4gIH0gZWxzZSB7XG4gICAgZG9uZSgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIHNjcm9sbFRvcCA9IHdpbmRvdy5nZXRTY3JvbGxUb3AoKSxcbiAgICAgICAgc2Nyb2xsTGVmdCA9IHdpbmRvdy5nZXRTY3JvbGxMZWZ0KCksXG4gICAgICAgIHRvcE9mZnNldCA9IHRoaXMuZ2V0VG9wT2Zmc2V0KCksXG4gICAgICAgIGxlZnRPZmZzZXQgPSB0aGlzLmdldExlZnRPZmZzZXQoKSxcbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IHRoaXMuZ2V0U3RhcnRNb3VzZVRvcCgpLFxuICAgICAgICBzdGFydE1vdXNlTGVmdCA9IHRoaXMuZ2V0U3RhcnRNb3VzZUxlZnQoKSxcbiAgICAgICAgcmVsYXRpdmVNb3VzZVRvcCA9IG1vdXNlVG9wIC0gc3RhcnRNb3VzZVRvcCxcbiAgICAgICAgcmVsYXRpdmVNb3VzZUxlZnQgPSBtb3VzZUxlZnQgLSBzdGFydE1vdXNlTGVmdDtcblxuICBsZXQgdG9wID0gc3RhcnRNb3VzZVRvcCArIHJlbGF0aXZlTW91c2VUb3AgLSB0b3BPZmZzZXQgLSBzY3JvbGxUb3AsXG4gICAgICBsZWZ0ID0gc3RhcnRNb3VzZUxlZnQgKyByZWxhdGl2ZU1vdXNlTGVmdCAtIGxlZnRPZmZzZXQgLSBzY3JvbGxMZWZ0O1xuXG4gIHRvcCA9IGAke3RvcH1weGA7IC8vL1xuICBsZWZ0ID0gYCR7bGVmdH1weGA7IC8vL1xuXG4gIGNvbnN0IGNzcyA9IHtcbiAgICB0b3AsXG4gICAgbGVmdFxuICB9O1xuXG4gIHRoaXMuY3NzKGNzcyk7XG5cbiAgdGhpcy5jYWxsSGFuZGxlcnMoZXZlbnRUeXBlLCByZWxhdGl2ZU1vdXNlVG9wLCByZWxhdGl2ZU1vdXNlTGVmdCk7XG59XG5cbmZ1bmN0aW9uIGdldFRpbWVvdXQoKSB7XG4gIGNvbnN0IHN0YXRlID0gdGhpcy5nZXRTdGF0ZSgpLFxuICAgICAgICB7IHRpbWVvdXQgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB0aW1lb3V0O1xufVxuXG5mdW5jdGlvbiByZXNldFRpbWVvdXQoKSB7XG4gIGNvbnN0IHRpbWVvdXQgPSBudWxsO1xuXG4gIHRoaXMudXBkYXRlVGltZW91dCh0aW1lb3V0KTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlVGltZW91dCh0aW1lb3V0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHRpbWVvdXRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldFRvcE9mZnNldCgpIHtcbiAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFN0YXRlKCksXG4gICAgICAgIHsgdG9wT2Zmc2V0IH0gPSBzdGF0ZTtcblxuICByZXR1cm4gdG9wT2Zmc2V0O1xufVxuXG5mdW5jdGlvbiBnZXRMZWZ0T2Zmc2V0KCkge1xuICBjb25zdCBzdGF0ZSA9IHRoaXMuZ2V0U3RhdGUoKSxcbiAgICAgICAgeyBsZWZ0T2Zmc2V0IH0gPSBzdGF0ZTtcblxuICByZXR1cm4gbGVmdE9mZnNldDtcbn1cblxuZnVuY3Rpb24gZ2V0U3RhcnRNb3VzZVRvcCgpIHtcbiAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFN0YXRlKCksXG4gICAgICB7IHN0YXJ0TW91c2VUb3AgfSA9IHN0YXRlO1xuXG4gIHJldHVybiBzdGFydE1vdXNlVG9wO1xufVxuXG5mdW5jdGlvbiBnZXRTdGFydE1vdXNlTGVmdCgpIHtcbiAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFN0YXRlKCksXG4gICAgICB7IHN0YXJ0TW91c2VMZWZ0IH0gPSBzdGF0ZTtcblxuICByZXR1cm4gc3RhcnRNb3VzZUxlZnQ7XG59XG5cbmZ1bmN0aW9uIHNldFRvcE9mZnNldCh0b3BPZmZzZXQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgdG9wT2Zmc2V0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzZXRMZWZ0T2Zmc2V0KGxlZnRPZmZzZXQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgbGVmdE9mZnNldFxuICB9KTtcbn1cblxuZnVuY3Rpb24gc2V0U3RhcnRNb3VzZVRvcChzdGFydE1vdXNlVG9wKSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHN0YXJ0TW91c2VUb3BcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNldFN0YXJ0TW91c2VMZWZ0KHN0YXJ0TW91c2VMZWZ0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHN0YXJ0TW91c2VMZWZ0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjYWxsSGFuZGxlcnMoZXZlbnRUeXBlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgY29uc3QgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGV2ZW50TGlzdGVuZXJzLmZvckVhY2goKGV2ZW50TGlzdGVuZXIpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQ6IGhhbmRsZXJFbGVtZW50IH0gPSBldmVudExpc3RlbmVyLFxuICAgICAgICAgIGVsZW1lbnQgPSB0aGlzOyAvLy9cblxuICAgIGhhbmRsZXIuY2FsbChoYW5kbGVyRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBlbGVtZW50KTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNhbGxIYW5kbGVyc0FzeW5jKGV2ZW50VHlwZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGNvbnN0IGRvbmUgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksICAvLy9cbiAgICAgICAgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGZvckVhY2goZXZlbnRMaXN0ZW5lcnMsIChldmVudExpc3RlbmVyLCBuZXh0KSA9PiB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBlbGVtZW50OiBoYW5kbGVyRWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICBlbGVtZW50ID0gdGhpcywgLy8vXG4gICAgICAgICAgZG9uZSA9IG5leHQ7ICAvLy9cblxuICAgIGhhbmRsZXIuY2FsbChoYW5kbGVyRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBlbGVtZW50LCBkb25lKTtcbiAgfSwgZG9uZSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgb25EcmFnLFxuICBvZmZEcmFnLFxuICBvblN0b3BEcmFnLFxuICBvZmZTdG9wRHJhZyxcbiAgb25TdGFydERyYWcsXG4gIG9mZlN0YXJ0RHJhZyxcbiAgZW5hYmxlRHJhZyxcbiAgZGlzYWJsZURyYWcsXG4gIGlzRHJhZ2dpbmcsXG4gIHN0YXJ0V2FpdGluZ1RvRHJhZyxcbiAgc3RvcFdhaXRpbmdUb0RyYWcsXG4gIHN0YXJ0RHJhZyxcbiAgc3RvcERyYWcsXG4gIGRyYWcsXG4gIGdldFRpbWVvdXQsXG4gIHJlc2V0VGltZW91dCxcbiAgdXBkYXRlVGltZW91dCxcbiAgZ2V0VG9wT2Zmc2V0LFxuICBnZXRMZWZ0T2Zmc2V0LFxuICBnZXRTdGFydE1vdXNlVG9wLFxuICBnZXRTdGFydE1vdXNlTGVmdCxcbiAgc2V0VG9wT2Zmc2V0LFxuICBzZXRMZWZ0T2Zmc2V0LFxuICBzZXRTdGFydE1vdXNlVG9wLFxuICBzZXRTdGFydE1vdXNlTGVmdCxcbiAgY2FsbEhhbmRsZXJzLFxuICBjYWxsSGFuZGxlcnNBc3luY1xufTtcblxuZnVuY3Rpb24ga2V5RG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBrZXlDb2RlIH0gPSBldmVudCxcbiAgICAgICAgZXNjYXBlS2V5ID0gKGtleUNvZGUgPT09IEVTQ0FQRV9LRVlDT0RFKSxcbiAgICAgICAgYWJvcnRlZCA9IHRydWU7XG5cbiAgaWYgKGVzY2FwZUtleSkge1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCk7XG5cbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBtb3VzZVVwSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpLFxuICAgICAgICBhYm9ydGVkID0gZmFsc2U7XG5cbiAgZHJhZ2dpbmcgP1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCkgOlxuICAgICAgdGhpcy5zdG9wV2FpdGluZ1RvRHJhZygpO1xuXG4gIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gIHdpbmRvdy5vZmYoQkxVUl9FVkVOVF9UWVBFLCBtb3VzZVVwSGFuZGxlciwgdGhpcyk7ICAvLy9cblxuICB3aW5kb3cub2ZmTW91c2VVcChtb3VzZVVwSGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlRG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBidXR0b24gfSA9IGV2ZW50O1xuXG4gIGlmIChidXR0b24gPT09IExFRlRfTU9VU0VfQlVUVE9OKSB7XG4gICAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKTtcblxuICAgIGlmICghZHJhZ2dpbmcpIHtcbiAgICAgIGNvbnN0IG1vdXNlVG9wID0gbW91c2VUb3BGcm9tRXZlbnQoZXZlbnQpLFxuICAgICAgICAgICAgbW91c2VMZWZ0ID0gbW91c2VMZWZ0RnJvbUV2ZW50KGV2ZW50KTtcblxuICAgICAgdGhpcy5zdGFydFdhaXRpbmdUb0RyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gICAgfVxuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgd2luZG93Lm9uKEJMVVJfRVZFTlRfVFlQRSwgbW91c2VVcEhhbmRsZXIsIHRoaXMpOyAvLy9cblxuICB3aW5kb3cub25Nb3VzZVVwKG1vdXNlVXBIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gbW91c2VNb3ZlSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpO1xuXG4gIGlmIChkcmFnZ2luZykge1xuICAgIGNvbnN0IG1vdXNlVG9wID0gbW91c2VUb3BGcm9tRXZlbnQoZXZlbnQpLFxuICAgICAgICAgIG1vdXNlTGVmdCA9IG1vdXNlTGVmdEZyb21FdmVudChldmVudCk7XG5cbiAgICB0aGlzLmRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gIH1cblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cbiJdLCJuYW1lcyI6WyJmb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwiRVNDQVBFX0tFWUNPREUiLCJrZXlDb2RlcyIsIkxFRlRfTU9VU0VfQlVUVE9OIiwiYnV0dG9ucyIsIkJMVVJfRVZFTlRfVFlQRSIsImV2ZW50VHlwZXMiLCJEUkFHX0VWRU5UX1RZUEUiLCJTVE9QX0RSQUdfRVZFTlRfVFlQRSIsIlNUQVJUX0RSQUdfRVZFTlRfVFlQRSIsImRyYWdFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwiZ2xvYmFsVGhpcyIsIm9uRHJhZyIsImRyYWdIYW5kbGVyIiwiZWxlbWVudCIsImV2ZW50VHlwZSIsImhhbmRsZXIiLCJhZGRFdmVudExpc3RlbmVyIiwib2ZmRHJhZyIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJvblN0b3BEcmFnIiwic3RvcERyYWdIYW5kbGVyIiwib2ZmU3RvcERyYWciLCJvblN0YXJ0RHJhZyIsInN0YXJ0RHJhZ0hhbmRsZXIiLCJvZmZTdGFydERyYWciLCJlbmFibGVEcmFnIiwicHJvcGVydGllcyIsInRpbWVvdXQiLCJ0b3BPZmZzZXQiLCJsZWZ0T2Zmc2V0Iiwic3RhcnRNb3VzZVRvcCIsInN0YXJ0TW91c2VMZWZ0Iiwib25Nb3VzZURvd24iLCJtb3VzZURvd25IYW5kbGVyIiwic2V0U3RhdGUiLCJkaXNhYmxlRHJhZyIsIm9mZk1vdXNlRG93biIsImlzRHJhZ2dpbmciLCJkcmFnZ2luZyIsImhhc0NsYXNzIiwic3RhcnRXYWl0aW5nVG9EcmFnIiwibW91c2VUb3AiLCJtb3VzZUxlZnQiLCJnZXRUaW1lb3V0Iiwic2V0VGltZW91dCIsInJlc2V0VGltZW91dCIsInN0YXJ0RHJhZyIsIlNUQVJUX0RSQUdHSU5HX0RFTEFZIiwidXBkYXRlVGltZW91dCIsInN0b3BXYWl0aW5nVG9EcmFnIiwiY2xlYXJUaW1lb3V0IiwiYm91bmRzIiwiZ2V0Qm91bmRzIiwiYm91bmRzVG9wIiwiZ2V0VG9wIiwiYm91bmRzTGVmdCIsImdldExlZnQiLCJib3VuZHNSaWdodCIsImdldFJpZ2h0IiwiYm91bmRzQm90dG9tIiwiZ2V0Qm90dG9tIiwiYm91bmRzV2lkdGgiLCJib3VuZHNIZWlnaHQiLCJNYXRoIiwiZmxvb3IiLCJ3aW5kb3ciLCJvbktleURvd24iLCJrZXlEb3duSGFuZGxlciIsIm9uTW91c2VNb3ZlIiwibW91c2VNb3ZlSGFuZGxlciIsImFkZENsYXNzIiwic2V0VG9wT2Zmc2V0Iiwic2V0TGVmdE9mZnNldCIsInNldFN0YXJ0TW91c2VUb3AiLCJzZXRTdGFydE1vdXNlTGVmdCIsImNhbGxIYW5kbGVycyIsImRyYWciLCJzdG9wRHJhZyIsImFib3J0ZWQiLCJkcm9wRWxlbWVudCIsIm9mZktleURvd24iLCJvZmZNb3VzZU1vdmUiLCJkb25lIiwiY2FsbEhhbmRsZXJzQXN5bmMiLCJyZW1vdmVDbGFzcyIsImRyb3AiLCJzY3JvbGxUb3AiLCJnZXRTY3JvbGxUb3AiLCJzY3JvbGxMZWZ0IiwiZ2V0U2Nyb2xsTGVmdCIsImdldFRvcE9mZnNldCIsImdldExlZnRPZmZzZXQiLCJnZXRTdGFydE1vdXNlVG9wIiwiZ2V0U3RhcnRNb3VzZUxlZnQiLCJyZWxhdGl2ZU1vdXNlVG9wIiwicmVsYXRpdmVNb3VzZUxlZnQiLCJ0b3AiLCJsZWZ0IiwiY3NzIiwic3RhdGUiLCJnZXRTdGF0ZSIsInVwZGF0ZVN0YXRlIiwicmVtYWluaW5nQXJndW1lbnRzIiwiZXZlbnRMaXN0ZW5lcnMiLCJmaW5kRXZlbnRMaXN0ZW5lcnMiLCJldmVudExpc3RlbmVyIiwiaGFuZGxlckVsZW1lbnQiLCJjYWxsIiwicG9wIiwibmV4dCIsImV2ZW50Iiwia2V5Q29kZSIsImVzY2FwZUtleSIsInN0b3BQcm9wYWdhdGlvbiIsIm1vdXNlVXBIYW5kbGVyIiwib2ZmIiwib2ZmTW91c2VVcCIsImJ1dHRvbiIsIm1vdXNlVG9wRnJvbUV2ZW50IiwibW91c2VMZWZ0RnJvbUV2ZW50Iiwib24iLCJvbk1vdXNlVXAiXSwibWFwcGluZ3MiOiJBQUFBLFlBQVksQ0FBQzs7Ozs7QUFFK0IsSUFBQSxLQUFNLFdBQU4sTUFBTSxDQUFBO0FBQ0YsSUFBQSxVQUFXLFdBQVgsV0FBVyxDQUFBO0FBRXRCLElBQUEsVUFBYyxXQUFkLGNBQWMsQ0FBQTtBQUNHLElBQUEsTUFBb0IsV0FBcEIsb0JBQW9CLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFFLElBQU0sQUFBRUEsT0FBTyxHQUFLQyxVQUFxQixzQkFBQSxDQUFqQ0QsT0FBTyxBQUEwQixFQUNuQyxBQUFFRSxjQUFjLEdBQUtDLFVBQVEsU0FBQSxDQUEzQkQsY0FBYyxBQUFhLEVBQzdCLEFBQUVFLGlCQUFpQixHQUFLQyxLQUFPLFFBQUEsQ0FBN0JELGlCQUFpQixBQUFZLEVBQzdCRSxlQUFlLEdBQW1FQyxLQUFVLFdBQUEsQ0FBNUZELGVBQWUsRUFBRUUsZUFBZSxHQUFrREQsS0FBVSxXQUFBLENBQTNFQyxlQUFlLEVBQUVDLG9CQUFvQixHQUE0QkYsS0FBVSxXQUFBLENBQTFERSxvQkFBb0IsRUFBRUMscUJBQXFCLEdBQUtILEtBQVUsV0FBQSxDQUFwQ0cscUJBQXFCLEFBQWU7QUFFcEcsSUFBTUMsV0FBVyxHQUFHLElBQUksQUFBQztBQUV6QkMsTUFBTSxDQUFDQyxNQUFNLENBQUNDLFVBQVUsRUFBRTtJQUN4QkgsV0FBVyxFQUFYQSxXQUFXO0NBQ1osQ0FBQyxDQUFDO0FBRUgsU0FBU0ksTUFBTSxDQUFDQyxXQUFXLEVBQUVDLE9BQU8sRUFBRTtJQUNwQyxJQUFNQyxTQUFTLEdBQUdWLGVBQWUsRUFDM0JXLE9BQU8sR0FBR0gsV0FBVyxBQUFDLEVBQUUsR0FBRztJQUVqQyxJQUFJLENBQUNJLGdCQUFnQixDQUFDRixTQUFTLEVBQUVDLE9BQU8sRUFBRUYsT0FBTyxDQUFDLENBQUM7Q0FDcEQ7QUFFRCxTQUFTSSxPQUFPLENBQUNMLFdBQVcsRUFBRUMsT0FBTyxFQUFFO0lBQ3JDLElBQU1DLFNBQVMsR0FBR1YsZUFBZSxFQUMzQlcsT0FBTyxHQUFHSCxXQUFXLEFBQUMsRUFBRSxHQUFHO0lBRWpDLElBQUksQ0FBQ00sbUJBQW1CLENBQUNKLFNBQVMsRUFBRUMsT0FBTyxFQUFFRixPQUFPLENBQUMsQ0FBQztDQUN2RDtBQUVELFNBQVNNLFVBQVUsQ0FBQ0MsZUFBZSxFQUFFUCxPQUFPLEVBQUU7SUFDNUMsSUFBTUMsU0FBUyxHQUFHVCxvQkFBb0IsRUFDaENVLE9BQU8sR0FBR0ssZUFBZSxBQUFDLEVBQUUsR0FBRztJQUVyQyxJQUFJLENBQUNKLGdCQUFnQixDQUFDRixTQUFTLEVBQUVDLE9BQU8sRUFBRUYsT0FBTyxDQUFDLENBQUM7Q0FDcEQ7QUFFRCxTQUFTUSxXQUFXLENBQUNELGVBQWUsRUFBRVAsT0FBTyxFQUFFO0lBQzdDLElBQU1DLFNBQVMsR0FBR1Qsb0JBQW9CLEVBQ2hDVSxPQUFPLEdBQUdLLGVBQWUsQUFBQyxFQUFFLEdBQUc7SUFFckMsSUFBSSxDQUFDRixtQkFBbUIsQ0FBQ0osU0FBUyxFQUFFQyxPQUFPLEVBQUVGLE9BQU8sQ0FBQyxDQUFDO0NBQ3ZEO0FBRUQsU0FBU1MsV0FBVyxDQUFDQyxnQkFBZ0IsRUFBRVYsT0FBTyxFQUFFO0lBQzlDLElBQU1DLFNBQVMsR0FBR1IscUJBQXFCLEVBQ2pDUyxPQUFPLEdBQUdRLGdCQUFnQixBQUFDLEVBQUUsR0FBRztJQUV0QyxJQUFJLENBQUNQLGdCQUFnQixDQUFDRixTQUFTLEVBQUVDLE9BQU8sRUFBRUYsT0FBTyxDQUFDLENBQUM7Q0FDcEQ7QUFFRCxTQUFTVyxZQUFZLENBQUNELGdCQUFnQixFQUFFVixPQUFPLEVBQUU7SUFDL0MsSUFBTUMsU0FBUyxHQUFHUixxQkFBcUIsRUFDakNTLE9BQU8sR0FBR1EsZ0JBQWdCLEFBQUMsRUFBRSxHQUFHO0lBRXRDLElBQUksQ0FBQ0wsbUJBQW1CLENBQUNKLFNBQVMsRUFBRUMsT0FBTyxFQUFFRixPQUFPLENBQUMsQ0FBQztDQUN2RDtBQUVELFNBQVNZLFVBQVUsR0FBRztJQUNwQixJQUE0QyxXQUFlLEdBQWYsSUFBSSxDQUFDQyxVQUFVLEVBQW5EZixRQUFNLEdBQThCLFdBQWUsQ0FBbkRBLE1BQU0sRUFBRVEsWUFBVSxHQUFrQixXQUFlLENBQTNDQSxVQUFVLEVBQUVHLGFBQVcsR0FBSyxXQUFlLENBQS9CQSxXQUFXLEVBQ2pDVixXQUFXLEdBQUdELFFBQU0sRUFDcEJTLGVBQWUsR0FBR0QsWUFBVSxFQUM1QkksZ0JBQWdCLEdBQUdELGFBQVcsRUFDOUJLLE9BQU8sR0FBRyxJQUFJLEVBQ2RDLFNBQVMsR0FBRyxJQUFJLEVBQ2hCQyxVQUFVLEdBQUcsSUFBSSxFQUNqQkMsYUFBYSxHQUFHLElBQUksRUFDcEJDLGNBQWMsR0FBRyxJQUFJLEFBQUM7SUFFNUJuQixXQUFXLElBQUksSUFBSSxDQUFDRCxNQUFNLENBQUNDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hDUSxlQUFlLElBQUksSUFBSSxDQUFDRCxVQUFVLENBQUNDLGVBQWUsQ0FBQyxDQUFDO0lBQ3BERyxnQkFBZ0IsSUFBSSxJQUFJLENBQUNELFdBQVcsQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQztJQUV2RCxJQUFJLENBQUNTLFdBQVcsQ0FBQ0MsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFekMsSUFBSSxDQUFDQyxRQUFRLENBQUM7UUFDWlAsT0FBTyxFQUFQQSxPQUFPO1FBQ1BDLFNBQVMsRUFBVEEsU0FBUztRQUNUQyxVQUFVLEVBQVZBLFVBQVU7UUFDVkMsYUFBYSxFQUFiQSxhQUFhO1FBQ2JDLGNBQWMsRUFBZEEsY0FBYztLQUNmLENBQUMsQ0FBQztDQUNKO0FBRUQsU0FBU0ksV0FBVyxHQUFHO0lBQ3JCLElBQTRDLFdBQWUsR0FBZixJQUFJLENBQUNULFVBQVUsRUFBbkRmLFFBQU0sR0FBOEIsV0FBZSxDQUFuREEsTUFBTSxFQUFFUSxZQUFVLEdBQWtCLFdBQWUsQ0FBM0NBLFVBQVUsRUFBRUcsYUFBVyxHQUFLLFdBQWUsQ0FBL0JBLFdBQVcsRUFDakNWLFdBQVcsR0FBR0QsUUFBTSxFQUNwQlMsZUFBZSxHQUFHRCxZQUFVLEVBQzVCSSxnQkFBZ0IsR0FBR0QsYUFBVyxBQUFDLEVBQUMsR0FBRztJQUV6Q1YsV0FBVyxJQUFJLElBQUksQ0FBQ0ssT0FBTyxDQUFDTCxXQUFXLENBQUMsQ0FBQztJQUN6Q1EsZUFBZSxJQUFJLElBQUksQ0FBQ0MsV0FBVyxDQUFDRCxlQUFlLENBQUMsQ0FBQztJQUNyREcsZ0JBQWdCLElBQUksSUFBSSxDQUFDQyxZQUFZLENBQUNELGdCQUFnQixDQUFDLENBQUM7SUFFeEQsSUFBSSxDQUFDYSxZQUFZLENBQUNILGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO0NBQzNDO0FBRUQsU0FBU0ksVUFBVSxHQUFHO0lBQ3BCLElBQU1DLFFBQVEsR0FBRyxJQUFJLENBQUNDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQUFBQztJQUUzQyxPQUFPRCxRQUFRLENBQUM7Q0FDakI7QUFFRCxTQUFTRSxrQkFBa0IsQ0FBQ0MsUUFBUSxFQUFFQyxTQUFTLEVBQUU7SUFDL0MsSUFBSWYsT0FBTyxHQUFHLElBQUksQ0FBQ2dCLFVBQVUsRUFBRSxBQUFDO0lBRWhDLElBQUloQixPQUFPLEtBQUssSUFBSSxFQUFFOztRQUNwQkEsT0FBTyxHQUFHaUIsVUFBVSxDQUFDLFdBQU07WUFDekIsTUFBS0MsWUFBWSxFQUFFLENBQUM7WUFFcEIsTUFBS0MsU0FBUyxDQUFDTCxRQUFRLEVBQUVDLFNBQVMsQ0FBQyxDQUFDO1NBQ3JDLEVBQUVLLFVBQW9CLHFCQUFBLENBQUMsQ0FBQztRQUV6QixJQUFJLENBQUNDLGFBQWEsQ0FBQ3JCLE9BQU8sQ0FBQyxDQUFDO0tBQzdCO0NBQ0Y7QUFFRCxTQUFTc0IsaUJBQWlCLEdBQUc7SUFDM0IsSUFBTXRCLE9BQU8sR0FBRyxJQUFJLENBQUNnQixVQUFVLEVBQUUsQUFBQztJQUVsQyxJQUFJaEIsT0FBTyxLQUFLLElBQUksRUFBRTtRQUNwQnVCLFlBQVksQ0FBQ3ZCLE9BQU8sQ0FBQyxDQUFDO1FBRXRCLElBQUksQ0FBQ2tCLFlBQVksRUFBRSxDQUFDO0tBQ3JCO0NBQ0Y7QUFFRCxTQUFTQyxTQUFTLENBQUNMLFFBQVEsRUFBRUMsU0FBUyxFQUFFO0lBQ3RDLElBQU1TLE1BQU0sR0FBRyxJQUFJLENBQUNDLFNBQVMsRUFBRSxFQUN6QnRDLFNBQVMsR0FBR1IscUJBQXFCLEVBQ2pDK0MsU0FBUyxHQUFHRixNQUFNLENBQUNHLE1BQU0sRUFBRSxFQUMzQkMsVUFBVSxHQUFHSixNQUFNLENBQUNLLE9BQU8sRUFBRSxFQUM3QkMsV0FBVyxHQUFHTixNQUFNLENBQUNPLFFBQVEsRUFBRSxFQUMvQkMsWUFBWSxHQUFHUixNQUFNLENBQUNTLFNBQVMsRUFBRSxFQUNqQ0MsV0FBVyxHQUFHSixXQUFXLEdBQUdGLFVBQVUsRUFDdENPLFlBQVksR0FBR0gsWUFBWSxHQUFHTixTQUFTLEVBQ3ZDekIsU0FBUyxHQUFHbUMsSUFBSSxDQUFDQyxLQUFLLENBQUNGLFlBQVksR0FBRyxDQUFDLENBQUMsRUFDeENqQyxVQUFVLEdBQUdrQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0gsV0FBVyxHQUFHLENBQUMsQ0FBQyxFQUN4Q3RELFlBQVcsR0FBRyxJQUFJLEVBQ2xCdUIsYUFBYSxHQUFHVyxRQUFRLEVBQ3hCVixjQUFjLEdBQUdXLFNBQVMsQUFBQyxFQUFDLEdBQUc7SUFFckN1QixLQUFNLE9BQUEsQ0FBQ0MsU0FBUyxDQUFDQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFdkNGLEtBQU0sT0FBQSxDQUFDRyxXQUFXLENBQUNDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBRTNDLElBQUksQ0FBQ0MsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRTFCOUQsTUFBTSxDQUFDQyxNQUFNLENBQUNDLFVBQVUsRUFBRTtRQUN4QkgsV0FBVyxFQUFYQSxZQUFXO0tBQ1osQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDZ0UsWUFBWSxDQUFDM0MsU0FBUyxDQUFDLENBQUM7SUFFN0IsSUFBSSxDQUFDNEMsYUFBYSxDQUFDM0MsVUFBVSxDQUFDLENBQUM7SUFFL0IsSUFBSSxDQUFDNEMsZ0JBQWdCLENBQUMzQyxhQUFhLENBQUMsQ0FBQztJQUVyQyxJQUFJLENBQUM0QyxpQkFBaUIsQ0FBQzNDLGNBQWMsQ0FBQyxDQUFDO0lBRXZDLElBQUksQ0FBQzRDLFlBQVksQ0FBQzdELFNBQVMsQ0FBQyxDQUFDO0lBRTdCLElBQUksQ0FBQzhELElBQUksQ0FBQ25DLFFBQVEsRUFBRUMsU0FBUyxDQUFDLENBQUM7Q0FDaEM7QUFFRCxTQUFTbUMsUUFBUSxDQUFDQyxPQUFPLEVBQUU7O0lBQ3pCLElBQU0sQUFBRUMsV0FBVyxHQUFLckUsVUFBVSxDQUExQnFFLFdBQVcsQUFBZSxFQUM1QmpFLFNBQVMsR0FBR1Qsb0JBQW9CLEFBQUM7SUFFdkM0RCxLQUFNLE9BQUEsQ0FBQ2UsVUFBVSxDQUFDYixjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFeENGLEtBQU0sT0FBQSxDQUFDZ0IsWUFBWSxDQUFDWixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUU1QyxJQUFNYSxJQUFJLEdBQUcsV0FBTTs7UUFDakIsTUFBS0MsaUJBQWlCLENBQUNyRSxTQUFTLEVBQUVpRSxXQUFXLEVBQUVELE9BQU8sRUFBRSxXQUFNO1lBQzVELElBQU12RSxZQUFXLEdBQUcsSUFBSSxBQUFDO1lBRXpCQyxNQUFNLENBQUNDLE1BQU0sQ0FBQ0MsVUFBVSxFQUFFO2dCQUN4QkgsV0FBVyxFQUFYQSxZQUFXO2FBQ1osQ0FBQyxDQUFDO1lBRUgsT0FBSzZFLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUM5QixDQUFDLENBQUM7S0FDSjtJQUVELElBQUlMLFdBQVcsS0FBSyxJQUFJLEVBQUU7UUFDeEIsSUFBTXhFLFlBQVcsR0FBRyxJQUFJLEFBQUMsRUFBQyxHQUFHO1FBRTdCd0UsV0FBVyxDQUFDTSxJQUFJLENBQUM5RSxZQUFXLEVBQUV1RSxPQUFPLEVBQUVJLElBQUksQ0FBQyxDQUFDO0tBQzlDLE1BQU07UUFDTEEsSUFBSSxFQUFFLENBQUM7S0FDUjtDQUNGO0FBRUQsU0FBU04sSUFBSSxDQUFDbkMsUUFBUSxFQUFFQyxTQUFTLEVBQUU7SUFDakMsSUFBTTVCLFNBQVMsR0FBR1YsZUFBZSxFQUMzQmtGLFNBQVMsR0FBR3JCLEtBQU0sT0FBQSxDQUFDc0IsWUFBWSxFQUFFLEVBQ2pDQyxVQUFVLEdBQUd2QixLQUFNLE9BQUEsQ0FBQ3dCLGFBQWEsRUFBRSxFQUNuQzdELFNBQVMsR0FBRyxJQUFJLENBQUM4RCxZQUFZLEVBQUUsRUFDL0I3RCxVQUFVLEdBQUcsSUFBSSxDQUFDOEQsYUFBYSxFQUFFLEVBQ2pDN0QsYUFBYSxHQUFHLElBQUksQ0FBQzhELGdCQUFnQixFQUFFLEVBQ3ZDN0QsY0FBYyxHQUFHLElBQUksQ0FBQzhELGlCQUFpQixFQUFFLEVBQ3pDQyxnQkFBZ0IsR0FBR3JELFFBQVEsR0FBR1gsYUFBYSxFQUMzQ2lFLGlCQUFpQixHQUFHckQsU0FBUyxHQUFHWCxjQUFjLEFBQUM7SUFFckQsSUFBSWlFLEdBQUcsR0FBR2xFLGFBQWEsR0FBR2dFLGdCQUFnQixHQUFHbEUsU0FBUyxHQUFHMEQsU0FBUyxFQUM5RFcsSUFBSSxHQUFHbEUsY0FBYyxHQUFHZ0UsaUJBQWlCLEdBQUdsRSxVQUFVLEdBQUcyRCxVQUFVLEFBQUM7SUFFeEVRLEdBQUcsR0FBRyxBQUFDLEVBQUEsQ0FBTSxNQUFFLENBQU5BLEdBQUcsRUFBQyxJQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUc7SUFDckJDLElBQUksR0FBRyxBQUFDLEVBQUEsQ0FBTyxNQUFFLENBQVBBLElBQUksRUFBQyxJQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUc7SUFFdkIsSUFBTUMsR0FBRyxHQUFHO1FBQ1ZGLEdBQUcsRUFBSEEsR0FBRztRQUNIQyxJQUFJLEVBQUpBLElBQUk7S0FDTCxBQUFDO0lBRUYsSUFBSSxDQUFDQyxHQUFHLENBQUNBLEdBQUcsQ0FBQyxDQUFDO0lBRWQsSUFBSSxDQUFDdkIsWUFBWSxDQUFDN0QsU0FBUyxFQUFFZ0YsZ0JBQWdCLEVBQUVDLGlCQUFpQixDQUFDLENBQUM7Q0FDbkU7QUFFRCxTQUFTcEQsVUFBVSxHQUFHO0lBQ3BCLElBQU13RCxLQUFLLEdBQUcsSUFBSSxDQUFDQyxRQUFRLEVBQUUsRUFDdkIsQUFBRXpFLE9BQU8sR0FBS3dFLEtBQUssQ0FBakJ4RSxPQUFPLEFBQVUsQUFBQztJQUUxQixPQUFPQSxPQUFPLENBQUM7Q0FDaEI7QUFFRCxTQUFTa0IsWUFBWSxHQUFHO0lBQ3RCLElBQU1sQixPQUFPLEdBQUcsSUFBSSxBQUFDO0lBRXJCLElBQUksQ0FBQ3FCLGFBQWEsQ0FBQ3JCLE9BQU8sQ0FBQyxDQUFDO0NBQzdCO0FBRUQsU0FBU3FCLGFBQWEsQ0FBQ3JCLE9BQU8sRUFBRTtJQUM5QixJQUFJLENBQUMwRSxXQUFXLENBQUM7UUFDZjFFLE9BQU8sRUFBUEEsT0FBTztLQUNSLENBQUMsQ0FBQztDQUNKO0FBRUQsU0FBUytELFlBQVksR0FBRztJQUN0QixJQUFNUyxLQUFLLEdBQUcsSUFBSSxDQUFDQyxRQUFRLEVBQUUsRUFDdkIsQUFBRXhFLFNBQVMsR0FBS3VFLEtBQUssQ0FBbkJ2RSxTQUFTLEFBQVUsQUFBQztJQUU1QixPQUFPQSxTQUFTLENBQUM7Q0FDbEI7QUFFRCxTQUFTK0QsYUFBYSxHQUFHO0lBQ3ZCLElBQU1RLEtBQUssR0FBRyxJQUFJLENBQUNDLFFBQVEsRUFBRSxFQUN2QixBQUFFdkUsVUFBVSxHQUFLc0UsS0FBSyxDQUFwQnRFLFVBQVUsQUFBVSxBQUFDO0lBRTdCLE9BQU9BLFVBQVUsQ0FBQztDQUNuQjtBQUVELFNBQVMrRCxnQkFBZ0IsR0FBRztJQUMxQixJQUFNTyxLQUFLLEdBQUcsSUFBSSxDQUFDQyxRQUFRLEVBQUUsRUFDekIsQUFBRXRFLGFBQWEsR0FBS3FFLEtBQUssQ0FBdkJyRSxhQUFhLEFBQVUsQUFBQztJQUU5QixPQUFPQSxhQUFhLENBQUM7Q0FDdEI7QUFFRCxTQUFTK0QsaUJBQWlCLEdBQUc7SUFDM0IsSUFBTU0sS0FBSyxHQUFHLElBQUksQ0FBQ0MsUUFBUSxFQUFFLEVBQ3pCLEFBQUVyRSxjQUFjLEdBQUtvRSxLQUFLLENBQXhCcEUsY0FBYyxBQUFVLEFBQUM7SUFFL0IsT0FBT0EsY0FBYyxDQUFDO0NBQ3ZCO0FBRUQsU0FBU3dDLFlBQVksQ0FBQzNDLFNBQVMsRUFBRTtJQUMvQixJQUFJLENBQUN5RSxXQUFXLENBQUM7UUFDZnpFLFNBQVMsRUFBVEEsU0FBUztLQUNWLENBQUMsQ0FBQztDQUNKO0FBRUQsU0FBUzRDLGFBQWEsQ0FBQzNDLFVBQVUsRUFBRTtJQUNqQyxJQUFJLENBQUN3RSxXQUFXLENBQUM7UUFDZnhFLFVBQVUsRUFBVkEsVUFBVTtLQUNYLENBQUMsQ0FBQztDQUNKO0FBRUQsU0FBUzRDLGdCQUFnQixDQUFDM0MsYUFBYSxFQUFFO0lBQ3ZDLElBQUksQ0FBQ3VFLFdBQVcsQ0FBQztRQUNmdkUsYUFBYSxFQUFiQSxhQUFhO0tBQ2QsQ0FBQyxDQUFDO0NBQ0o7QUFFRCxTQUFTNEMsaUJBQWlCLENBQUMzQyxjQUFjLEVBQUU7SUFDekMsSUFBSSxDQUFDc0UsV0FBVyxDQUFDO1FBQ2Z0RSxjQUFjLEVBQWRBLGNBQWM7S0FDZixDQUFDLENBQUM7Q0FDSjtBQUVELFNBQVM0QyxZQUFZLENBQUM3RCxTQUFTLEVBQXlCO0lBQXZCLElBQUEsSUFBQSxJQUFxQixHQUFyQixTQUFxQixDQUFyQixNQUFxQixFQUFyQixBQUFHd0Ysa0JBQWtCLEdBQXJCLFVBQUEsSUFBcUIsR0FBckIsQ0FBcUIsR0FBckIsSUFBcUIsR0FBckIsQ0FBcUIsSUFBQSxDQUFBLEVBQXJCLElBQXFCLEdBQXJCLENBQXFCLEVBQXJCLElBQXFCLEdBQXJCLElBQXFCLEVBQXJCLElBQXFCLEVBQUEsQ0FBckI7UUFBQSxBQUFHQSxrQkFBa0IsQ0FBckIsSUFBcUIsR0FBckIsQ0FBcUIsSUFBckIsU0FBcUIsQUFBckIsQ0FBQSxJQUFxQixDQUFBLENBQUE7S0FBQTs7SUFDcEQsSUFBTUMsY0FBYyxHQUFHLElBQUksQ0FBQ0Msa0JBQWtCLENBQUMxRixTQUFTLENBQUMsQUFBQztJQUUxRHlGLGNBQWMsQ0FBQzNHLE9BQU8sQ0FBQyxTQUFDNkcsYUFBYSxFQUFLO1lBSXhDMUYsUUFBTztRQUhQLElBQVFBLE9BQU8sR0FBOEIwRixhQUFhLENBQWxEMUYsT0FBTyxFQUFFRixBQUFTNkYsY0FBYyxHQUFLRCxhQUFhLENBQXpDNUYsT0FBTyxBQUFnQixFQUNsQ0EsT0FBTyxRQUFPLEFBQUMsRUFBQyxHQUFHO1FBRXpCRSxDQUFBQSxRQUFPLEdBQVBBLE9BQU8sRUFBQzRGLElBQUksQ0FBWjVGLEtBQTRELENBQTVEQSxRQUFPLEVBQVBBO1lBQWEyRixjQUFjO1NBQWlDLENBQTVEM0YsTUFBNEQsQ0FBL0IsbUJBQUd1RixrQkFBa0IsQ0FBbEJBLEVBQWhDdkY7WUFBb0RGLE9BQU87U0FBQyxDQUFBLENBQUEsQ0FBQztLQUM5RCxDQUFDLENBQUM7Q0FDSjtBQUVELFNBQVNzRSxpQkFBaUIsQ0FBQ3JFLFNBQVMsRUFBeUI7SUFBdkIsSUFBQSxJQUFBLElBQXFCLEdBQXJCLFNBQXFCLENBQXJCLE1BQXFCLEVBQXJCLEFBQUd3RixrQkFBa0IsR0FBckIsVUFBQSxJQUFxQixHQUFyQixDQUFxQixHQUFyQixJQUFxQixHQUFyQixDQUFxQixJQUFBLENBQUEsRUFBckIsSUFBcUIsR0FBckIsQ0FBcUIsRUFBckIsSUFBcUIsR0FBckIsSUFBcUIsRUFBckIsSUFBcUIsRUFBQSxDQUFyQjtRQUFBLEFBQUdBLGtCQUFrQixDQUFyQixJQUFxQixHQUFyQixDQUFxQixJQUFyQixTQUFxQixBQUFyQixDQUFBLElBQXFCLENBQUEsQ0FBQTtLQUFBOztJQUN6RCxJQUFNcEIsS0FBSSxHQUFHb0Isa0JBQWtCLENBQUNNLEdBQUcsRUFBRSxFQUMvQkwsY0FBYyxHQUFHLElBQUksQ0FBQ0Msa0JBQWtCLENBQUMxRixTQUFTLENBQUMsQUFBQztJQUUxRGxCLE9BQU8sQ0FBQzJHLGNBQWMsRUFBRSxTQUFDRSxhQUFhLEVBQUVJLElBQUksRUFBSztZQUsvQzlGLFFBQU87UUFKUCxJQUFRQSxPQUFPLEdBQThCMEYsYUFBYSxDQUFsRDFGLE9BQU8sRUFBRUYsQUFBUzZGLGNBQWMsR0FBS0QsYUFBYSxDQUF6QzVGLE9BQU8sQUFBZ0IsRUFDbENBLE9BQU8sUUFBTyxFQUNkcUUsSUFBSSxHQUFHMkIsSUFBSSxBQUFDLEVBQUUsR0FBRztRQUV2QjlGLENBQUFBLFFBQU8sR0FBUEEsT0FBTyxFQUFDNEYsSUFBSSxDQUFaNUYsS0FBa0UsQ0FBbEVBLFFBQU8sRUFBUEE7WUFBYTJGLGNBQWM7U0FBdUMsQ0FBbEUzRixNQUFrRSxDQUFyQyxtQkFBR3VGLGtCQUFrQixDQUFsQkEsRUFBaEN2RjtZQUFvREYsT0FBTztZQUFFcUUsSUFBSTtTQUFDLENBQUEsQ0FBQSxDQUFDO0tBQ3BFLEVBQUVBLEtBQUksQ0FBQyxDQUFDO0NBQ1Y7ZUFFYztJQUNidkUsTUFBTSxFQUFOQSxNQUFNO0lBQ05NLE9BQU8sRUFBUEEsT0FBTztJQUNQRSxVQUFVLEVBQVZBLFVBQVU7SUFDVkUsV0FBVyxFQUFYQSxXQUFXO0lBQ1hDLFdBQVcsRUFBWEEsV0FBVztJQUNYRSxZQUFZLEVBQVpBLFlBQVk7SUFDWkMsVUFBVSxFQUFWQSxVQUFVO0lBQ1ZVLFdBQVcsRUFBWEEsV0FBVztJQUNYRSxVQUFVLEVBQVZBLFVBQVU7SUFDVkcsa0JBQWtCLEVBQWxCQSxrQkFBa0I7SUFDbEJTLGlCQUFpQixFQUFqQkEsaUJBQWlCO0lBQ2pCSCxTQUFTLEVBQVRBLFNBQVM7SUFDVCtCLFFBQVEsRUFBUkEsUUFBUTtJQUNSRCxJQUFJLEVBQUpBLElBQUk7SUFDSmpDLFVBQVUsRUFBVkEsVUFBVTtJQUNWRSxZQUFZLEVBQVpBLFlBQVk7SUFDWkcsYUFBYSxFQUFiQSxhQUFhO0lBQ2IwQyxZQUFZLEVBQVpBLFlBQVk7SUFDWkMsYUFBYSxFQUFiQSxhQUFhO0lBQ2JDLGdCQUFnQixFQUFoQkEsZ0JBQWdCO0lBQ2hCQyxpQkFBaUIsRUFBakJBLGlCQUFpQjtJQUNqQnRCLFlBQVksRUFBWkEsWUFBWTtJQUNaQyxhQUFhLEVBQWJBLGFBQWE7SUFDYkMsZ0JBQWdCLEVBQWhCQSxnQkFBZ0I7SUFDaEJDLGlCQUFpQixFQUFqQkEsaUJBQWlCO0lBQ2pCQyxZQUFZLEVBQVpBLFlBQVk7SUFDWlEsaUJBQWlCLEVBQWpCQSxpQkFBaUI7Q0FDbEI7O0FBRUQsU0FBU2hCLGNBQWMsQ0FBQzJDLEtBQUssRUFBRWpHLE9BQU8sRUFBRTtJQUN0QyxJQUFNLEFBQUVrRyxPQUFPLEdBQUtELEtBQUssQ0FBakJDLE9BQU8sQUFBVSxFQUNuQkMsU0FBUyxHQUFJRCxPQUFPLEtBQUtqSCxjQUFjLEFBQUMsRUFDeENnRixPQUFPLEdBQUcsSUFBSSxBQUFDO0lBRXJCLElBQUlrQyxTQUFTLEVBQUU7UUFDYixJQUFJLENBQUNuQyxRQUFRLENBQUNDLE9BQU8sQ0FBQyxDQUFDO1FBRXZCZ0MsS0FBSyxDQUFDRyxlQUFlLEVBQUUsQ0FBQztLQUN6QjtDQUNGO0FBRUQsU0FBU0MsY0FBYyxDQUFDSixLQUFLLEVBQUVqRyxPQUFPLEVBQUU7SUFDdEMsSUFBTXlCLFFBQVEsR0FBRyxJQUFJLENBQUNELFVBQVUsRUFBRSxFQUM1QnlDLE9BQU8sR0FBRyxLQUFLLEFBQUM7SUFFdEJ4QyxRQUFRLEdBQ04sSUFBSSxDQUFDdUMsUUFBUSxDQUFDQyxPQUFPLENBQUMsR0FDcEIsSUFBSSxDQUFDN0IsaUJBQWlCLEVBQUUsQ0FBQztJQUU3QjZELEtBQUssQ0FBQ0csZUFBZSxFQUFFLENBQUM7SUFFeEJoRCxLQUFNLE9BQUEsQ0FBQ2tELEdBQUcsQ0FBQ2pILGVBQWUsRUFBRWdILGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFFLEdBQUc7SUFFdkRqRCxLQUFNLE9BQUEsQ0FBQ21ELFVBQVUsQ0FBQ0YsY0FBYyxFQUFFLElBQUksQ0FBQyxDQUFDO0NBQ3pDO0FBRUQsU0FBU2pGLGdCQUFnQixDQUFDNkUsS0FBSyxFQUFFakcsT0FBTyxFQUFFO0lBQ3hDLElBQU0sQUFBRXdHLE1BQU0sR0FBS1AsS0FBSyxDQUFoQk8sTUFBTSxBQUFVLEFBQUM7SUFFekIsSUFBSUEsTUFBTSxLQUFLckgsaUJBQWlCLEVBQUU7UUFDaEMsSUFBTXNDLFFBQVEsR0FBRyxJQUFJLENBQUNELFVBQVUsRUFBRSxBQUFDO1FBRW5DLElBQUksQ0FBQ0MsUUFBUSxFQUFFO1lBQ2IsSUFBTUcsUUFBUSxHQUFHNkUsQ0FBQUEsR0FBQUEsTUFBaUIsQUFBTyxDQUFBLGtCQUFQLENBQUNSLEtBQUssQ0FBQyxFQUNuQ3BFLFNBQVMsR0FBRzZFLENBQUFBLEdBQUFBLE1BQWtCLEFBQU8sQ0FBQSxtQkFBUCxDQUFDVCxLQUFLLENBQUMsQUFBQztZQUU1QyxJQUFJLENBQUN0RSxrQkFBa0IsQ0FBQ0MsUUFBUSxFQUFFQyxTQUFTLENBQUMsQ0FBQztTQUM5QztLQUNGO0lBRURvRSxLQUFLLENBQUNHLGVBQWUsRUFBRSxDQUFDO0lBRXhCaEQsS0FBTSxPQUFBLENBQUN1RCxFQUFFLENBQUN0SCxlQUFlLEVBQUVnSCxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHO0lBRXJEakQsS0FBTSxPQUFBLENBQUN3RCxTQUFTLENBQUNQLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztDQUN4QztBQUVELFNBQVM3QyxnQkFBZ0IsQ0FBQ3lDLEtBQUssRUFBRWpHLE9BQU8sRUFBRTtJQUN4QyxJQUFNeUIsUUFBUSxHQUFHLElBQUksQ0FBQ0QsVUFBVSxFQUFFLEFBQUM7SUFFbkMsSUFBSUMsUUFBUSxFQUFFO1FBQ1osSUFBTUcsUUFBUSxHQUFHNkUsQ0FBQUEsR0FBQUEsTUFBaUIsQUFBTyxDQUFBLGtCQUFQLENBQUNSLEtBQUssQ0FBQyxFQUNuQ3BFLFNBQVMsR0FBRzZFLENBQUFBLEdBQUFBLE1BQWtCLEFBQU8sQ0FBQSxtQkFBUCxDQUFDVCxLQUFLLENBQUMsQUFBQztRQUU1QyxJQUFJLENBQUNsQyxJQUFJLENBQUNuQyxRQUFRLEVBQUVDLFNBQVMsQ0FBQyxDQUFDO0tBQ2hDO0lBRURvRSxLQUFLLENBQUNHLGVBQWUsRUFBRSxDQUFDO0NBQ3pCIn0=
304
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJhZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgd2luZG93LCBidXR0b25zLCBldmVudFR5cGVzIH0gZnJvbSBcImVhc3lcIjtcbmltcG9ydCB7IGtleUNvZGVzLCBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCIgO1xuXG5pbXBvcnQgeyBTVEFSVF9EUkFHR0lOR19ERUxBWSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IG1vdXNlVG9wRnJvbUV2ZW50LCBtb3VzZUxlZnRGcm9tRXZlbnQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2V2ZW50XCI7XG5cbmNvbnN0IHsgZm9yRWFjaCB9ID0gYXN5bmNocm9ub3VzVXRpbGl0aWVzLFxuICAgICAgeyBFU0NBUEVfS0VZQ09ERSB9ID0ga2V5Q29kZXMsXG4gICAgICB7IExFRlRfTU9VU0VfQlVUVE9OIH0gPSBidXR0b25zLFxuICAgICAgeyBCTFVSX0VWRU5UX1RZUEUsIERSQUdfRVZFTlRfVFlQRSwgU1RPUF9EUkFHX0VWRU5UX1RZUEUsIFNUQVJUX0RSQUdfRVZFTlRfVFlQRSB9ID0gZXZlbnRUeXBlc1xuXG5jb25zdCBkcmFnRWxlbWVudCA9IG51bGw7XG5cbk9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICBkcmFnRWxlbWVudFxufSk7XG5cbmZ1bmN0aW9uIG9uRHJhZyhkcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZEcmFnKGRyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGRyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uU3RvcERyYWcoc3RvcERyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFNUT1BfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gc3RvcERyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZlN0b3BEcmFnKHN0b3BEcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBTVE9QX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHN0b3BEcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvblN0YXJ0RHJhZyhzdGFydERyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFNUQVJUX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHN0YXJ0RHJhZ0hhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmU3RhcnREcmFnKHN0YXJ0RHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gU1RBUlRfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gc3RhcnREcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBlbmFibGVEcmFnKCkge1xuICBjb25zdCB7IG9uRHJhZywgb25TdG9wRHJhZywgb25TdGFydERyYWcgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgZHJhZ0hhbmRsZXIgPSBvbkRyYWcsIC8vL1xuICAgICAgICBzdG9wRHJhZ0hhbmRsZXIgPSBvblN0b3BEcmFnLCAvLy9cbiAgICAgICAgc3RhcnREcmFnSGFuZGxlciA9IG9uU3RhcnREcmFnLCAvLy9cbiAgICAgICAgdGltZW91dCA9IG51bGwsXG4gICAgICAgIHRvcE9mZnNldCA9IG51bGwsXG4gICAgICAgIGxlZnRPZmZzZXQgPSBudWxsLFxuICAgICAgICBzdGFydE1vdXNlVG9wID0gbnVsbCxcbiAgICAgICAgc3RhcnRNb3VzZUxlZnQgPSBudWxsO1xuXG4gIGRyYWdIYW5kbGVyICYmIHRoaXMub25EcmFnKGRyYWdIYW5kbGVyKTtcbiAgc3RvcERyYWdIYW5kbGVyICYmIHRoaXMub25TdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIpO1xuICBzdGFydERyYWdIYW5kbGVyICYmIHRoaXMub25TdGFydERyYWcoc3RhcnREcmFnSGFuZGxlcik7XG5cbiAgdGhpcy5vbk1vdXNlRG93bihtb3VzZURvd25IYW5kbGVyLCB0aGlzKTtcblxuICB0aGlzLnNldFN0YXRlKHtcbiAgICB0aW1lb3V0LFxuICAgIHRvcE9mZnNldCxcbiAgICBsZWZ0T2Zmc2V0LFxuICAgIHN0YXJ0TW91c2VUb3AsXG4gICAgc3RhcnRNb3VzZUxlZnRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGRpc2FibGVEcmFnKCkge1xuICBjb25zdCB7IG9uRHJhZywgb25TdG9wRHJhZywgb25TdGFydERyYWcgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgZHJhZ0hhbmRsZXIgPSBvbkRyYWcsIC8vL1xuICAgICAgICBzdG9wRHJhZ0hhbmRsZXIgPSBvblN0b3BEcmFnLCAvLy9cbiAgICAgICAgc3RhcnREcmFnSGFuZGxlciA9IG9uU3RhcnREcmFnOyAvLy9cblxuICBkcmFnSGFuZGxlciAmJiB0aGlzLm9mZkRyYWcoZHJhZ0hhbmRsZXIpO1xuICBzdG9wRHJhZ0hhbmRsZXIgJiYgdGhpcy5vZmZTdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIpO1xuICBzdGFydERyYWdIYW5kbGVyICYmIHRoaXMub2ZmU3RhcnREcmFnKHN0YXJ0RHJhZ0hhbmRsZXIpO1xuXG4gIHRoaXMub2ZmTW91c2VEb3duKG1vdXNlRG93bkhhbmRsZXIsIHRoaXMpO1xufVxuXG5mdW5jdGlvbiBpc0RyYWdnaW5nKCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaGFzQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcblxuICByZXR1cm4gZHJhZ2dpbmc7XG59XG5cbmZ1bmN0aW9uIHN0YXJ0V2FpdGluZ1RvRHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KSB7XG4gIGxldCB0aW1lb3V0ID0gdGhpcy5nZXRUaW1lb3V0KCk7XG5cbiAgaWYgKHRpbWVvdXQgPT09IG51bGwpIHtcbiAgICB0aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0VGltZW91dCgpO1xuXG4gICAgICB0aGlzLnN0YXJ0RHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KTtcbiAgICB9LCBTVEFSVF9EUkFHR0lOR19ERUxBWSk7XG5cbiAgICB0aGlzLnVwZGF0ZVRpbWVvdXQodGltZW91dCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RvcFdhaXRpbmdUb0RyYWcoKSB7XG4gIGNvbnN0IHRpbWVvdXQgPSB0aGlzLmdldFRpbWVvdXQoKTtcblxuICBpZiAodGltZW91dCAhPT0gbnVsbCkge1xuICAgIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcblxuICAgIHRoaXMucmVzZXRUaW1lb3V0KCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RhcnREcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpIHtcbiAgY29uc3QgYm91bmRzID0gdGhpcy5nZXRCb3VuZHMoKSxcbiAgICAgICAgZXZlbnRUeXBlID0gU1RBUlRfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBib3VuZHNUb3AgPSBib3VuZHMuZ2V0VG9wKCksXG4gICAgICAgIGJvdW5kc0xlZnQgPSBib3VuZHMuZ2V0TGVmdCgpLFxuICAgICAgICBib3VuZHNSaWdodCA9IGJvdW5kcy5nZXRSaWdodCgpLFxuICAgICAgICBib3VuZHNCb3R0b20gPSBib3VuZHMuZ2V0Qm90dG9tKCksXG4gICAgICAgIGJvdW5kc1dpZHRoID0gYm91bmRzUmlnaHQgLSBib3VuZHNMZWZ0LFxuICAgICAgICBib3VuZHNIZWlnaHQgPSBib3VuZHNCb3R0b20gLSBib3VuZHNUb3AsXG4gICAgICAgIHRvcE9mZnNldCA9IE1hdGguZmxvb3IoYm91bmRzSGVpZ2h0IC8gMiksXG4gICAgICAgIGxlZnRPZmZzZXQgPSBNYXRoLmZsb29yKGJvdW5kc1dpZHRoIC8gMiksXG4gICAgICAgIGRyYWdFbGVtZW50ID0gdGhpcywgLy8vXG4gICAgICAgIHN0YXJ0TW91c2VUb3AgPSBtb3VzZVRvcCwgLy8vXG4gICAgICAgIHN0YXJ0TW91c2VMZWZ0ID0gbW91c2VMZWZ0OyAvLy9cblxuICB3aW5kb3cub25LZXlEb3duKGtleURvd25IYW5kbGVyLCB0aGlzKTtcblxuICB3aW5kb3cub25Nb3VzZU1vdmUobW91c2VNb3ZlSGFuZGxlciwgdGhpcyk7XG5cbiAgdGhpcy5hZGRDbGFzcyhcImRyYWdnaW5nXCIpO1xuXG4gIE9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICAgIGRyYWdFbGVtZW50XG4gIH0pO1xuXG4gIHRoaXMuc2V0VG9wT2Zmc2V0KHRvcE9mZnNldCk7XG5cbiAgdGhpcy5zZXRMZWZ0T2Zmc2V0KGxlZnRPZmZzZXQpO1xuXG4gIHRoaXMuc2V0U3RhcnRNb3VzZVRvcChzdGFydE1vdXNlVG9wKTtcblxuICB0aGlzLnNldFN0YXJ0TW91c2VMZWZ0KHN0YXJ0TW91c2VMZWZ0KTtcblxuICB0aGlzLmNhbGxIYW5kbGVycyhldmVudFR5cGUpO1xuXG4gIHRoaXMuZHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KTtcbn1cblxuZnVuY3Rpb24gc3RvcERyYWcoYWJvcnRlZCkge1xuICBjb25zdCB7IGRyb3BFbGVtZW50IH0gPSBnbG9iYWxUaGlzLFxuICAgICAgICBldmVudFR5cGUgPSBTVE9QX0RSQUdfRVZFTlRfVFlQRTtcblxuICB3aW5kb3cub2ZmS2V5RG93bihrZXlEb3duSGFuZGxlciwgdGhpcyk7XG5cbiAgd2luZG93Lm9mZk1vdXNlTW92ZShtb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICBjb25zdCBkb25lID0gKCkgPT4ge1xuICAgIHRoaXMuY2FsbEhhbmRsZXJzQXN5bmMoZXZlbnRUeXBlLCBkcm9wRWxlbWVudCwgYWJvcnRlZCwgKCkgPT4ge1xuICAgICAgY29uc3QgZHJhZ0VsZW1lbnQgPSBudWxsO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgICAgZHJhZ0VsZW1lbnRcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnJlbW92ZUNsYXNzKFwiZHJhZ2dpbmdcIik7XG4gICAgfSk7XG4gIH1cblxuICBpZiAoZHJvcEVsZW1lbnQgIT09IG51bGwpIHtcbiAgICBjb25zdCBkcmFnRWxlbWVudCA9IHRoaXM7IC8vL1xuXG4gICAgZHJvcEVsZW1lbnQuZHJvcChkcmFnRWxlbWVudCwgYWJvcnRlZCwgZG9uZSk7XG4gIH0gZWxzZSB7XG4gICAgZG9uZSgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIHNjcm9sbFRvcCA9IHdpbmRvdy5nZXRTY3JvbGxUb3AoKSxcbiAgICAgICAgc2Nyb2xsTGVmdCA9IHdpbmRvdy5nZXRTY3JvbGxMZWZ0KCksXG4gICAgICAgIHRvcE9mZnNldCA9IHRoaXMuZ2V0VG9wT2Zmc2V0KCksXG4gICAgICAgIGxlZnRPZmZzZXQgPSB0aGlzLmdldExlZnRPZmZzZXQoKSxcbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IHRoaXMuZ2V0U3RhcnRNb3VzZVRvcCgpLFxuICAgICAgICBzdGFydE1vdXNlTGVmdCA9IHRoaXMuZ2V0U3RhcnRNb3VzZUxlZnQoKSxcbiAgICAgICAgcmVsYXRpdmVNb3VzZVRvcCA9IG1vdXNlVG9wIC0gc3RhcnRNb3VzZVRvcCxcbiAgICAgICAgcmVsYXRpdmVNb3VzZUxlZnQgPSBtb3VzZUxlZnQgLSBzdGFydE1vdXNlTGVmdDtcblxuICBsZXQgdG9wID0gc3RhcnRNb3VzZVRvcCArIHJlbGF0aXZlTW91c2VUb3AgLSB0b3BPZmZzZXQgLSBzY3JvbGxUb3AsXG4gICAgICBsZWZ0ID0gc3RhcnRNb3VzZUxlZnQgKyByZWxhdGl2ZU1vdXNlTGVmdCAtIGxlZnRPZmZzZXQgLSBzY3JvbGxMZWZ0O1xuXG4gIHRvcCA9IGAke3RvcH1weGA7IC8vL1xuICBsZWZ0ID0gYCR7bGVmdH1weGA7IC8vL1xuXG4gIGNvbnN0IGNzcyA9IHtcbiAgICB0b3AsXG4gICAgbGVmdFxuICB9O1xuXG4gIHRoaXMuY3NzKGNzcyk7XG5cbiAgdGhpcy5jYWxsSGFuZGxlcnMoZXZlbnRUeXBlLCByZWxhdGl2ZU1vdXNlVG9wLCByZWxhdGl2ZU1vdXNlTGVmdCk7XG59XG5cbmZ1bmN0aW9uIGdldFRpbWVvdXQoKSB7XG4gIGNvbnN0IHN0YXRlID0gdGhpcy5nZXRTdGF0ZSgpLFxuICAgICAgICB7IHRpbWVvdXQgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB0aW1lb3V0O1xufVxuXG5mdW5jdGlvbiByZXNldFRpbWVvdXQoKSB7XG4gIGNvbnN0IHRpbWVvdXQgPSBudWxsO1xuXG4gIHRoaXMudXBkYXRlVGltZW91dCh0aW1lb3V0KTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlVGltZW91dCh0aW1lb3V0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHRpbWVvdXRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldFRvcE9mZnNldCgpIHtcbiAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFN0YXRlKCksXG4gICAgICAgIHsgdG9wT2Zmc2V0IH0gPSBzdGF0ZTtcblxuICByZXR1cm4gdG9wT2Zmc2V0O1xufVxuXG5mdW5jdGlvbiBnZXRMZWZ0T2Zmc2V0KCkge1xuICBjb25zdCBzdGF0ZSA9IHRoaXMuZ2V0U3RhdGUoKSxcbiAgICAgICAgeyBsZWZ0T2Zmc2V0IH0gPSBzdGF0ZTtcblxuICByZXR1cm4gbGVmdE9mZnNldDtcbn1cblxuZnVuY3Rpb24gZ2V0U3RhcnRNb3VzZVRvcCgpIHtcbiAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFN0YXRlKCksXG4gICAgICB7IHN0YXJ0TW91c2VUb3AgfSA9IHN0YXRlO1xuXG4gIHJldHVybiBzdGFydE1vdXNlVG9wO1xufVxuXG5mdW5jdGlvbiBnZXRTdGFydE1vdXNlTGVmdCgpIHtcbiAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFN0YXRlKCksXG4gICAgICB7IHN0YXJ0TW91c2VMZWZ0IH0gPSBzdGF0ZTtcblxuICByZXR1cm4gc3RhcnRNb3VzZUxlZnQ7XG59XG5cbmZ1bmN0aW9uIHNldFRvcE9mZnNldCh0b3BPZmZzZXQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgdG9wT2Zmc2V0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzZXRMZWZ0T2Zmc2V0KGxlZnRPZmZzZXQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgbGVmdE9mZnNldFxuICB9KTtcbn1cblxuZnVuY3Rpb24gc2V0U3RhcnRNb3VzZVRvcChzdGFydE1vdXNlVG9wKSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHN0YXJ0TW91c2VUb3BcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNldFN0YXJ0TW91c2VMZWZ0KHN0YXJ0TW91c2VMZWZ0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHN0YXJ0TW91c2VMZWZ0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjYWxsSGFuZGxlcnMoZXZlbnRUeXBlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgY29uc3QgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGV2ZW50TGlzdGVuZXJzLmZvckVhY2goKGV2ZW50TGlzdGVuZXIpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQ6IGhhbmRsZXJFbGVtZW50IH0gPSBldmVudExpc3RlbmVyLFxuICAgICAgICAgIGVsZW1lbnQgPSB0aGlzOyAvLy9cblxuICAgIGhhbmRsZXIuY2FsbChoYW5kbGVyRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBlbGVtZW50KTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNhbGxIYW5kbGVyc0FzeW5jKGV2ZW50VHlwZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGNvbnN0IGRvbmUgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksICAvLy9cbiAgICAgICAgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGZvckVhY2goZXZlbnRMaXN0ZW5lcnMsIChldmVudExpc3RlbmVyLCBuZXh0KSA9PiB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBlbGVtZW50OiBoYW5kbGVyRWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICBlbGVtZW50ID0gdGhpcywgLy8vXG4gICAgICAgICAgZG9uZSA9IG5leHQ7ICAvLy9cblxuICAgIGhhbmRsZXIuY2FsbChoYW5kbGVyRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBlbGVtZW50LCBkb25lKTtcbiAgfSwgZG9uZSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgb25EcmFnLFxuICBvZmZEcmFnLFxuICBvblN0b3BEcmFnLFxuICBvZmZTdG9wRHJhZyxcbiAgb25TdGFydERyYWcsXG4gIG9mZlN0YXJ0RHJhZyxcbiAgZW5hYmxlRHJhZyxcbiAgZGlzYWJsZURyYWcsXG4gIGlzRHJhZ2dpbmcsXG4gIHN0YXJ0V2FpdGluZ1RvRHJhZyxcbiAgc3RvcFdhaXRpbmdUb0RyYWcsXG4gIHN0YXJ0RHJhZyxcbiAgc3RvcERyYWcsXG4gIGRyYWcsXG4gIGdldFRpbWVvdXQsXG4gIHJlc2V0VGltZW91dCxcbiAgdXBkYXRlVGltZW91dCxcbiAgZ2V0VG9wT2Zmc2V0LFxuICBnZXRMZWZ0T2Zmc2V0LFxuICBnZXRTdGFydE1vdXNlVG9wLFxuICBnZXRTdGFydE1vdXNlTGVmdCxcbiAgc2V0VG9wT2Zmc2V0LFxuICBzZXRMZWZ0T2Zmc2V0LFxuICBzZXRTdGFydE1vdXNlVG9wLFxuICBzZXRTdGFydE1vdXNlTGVmdCxcbiAgY2FsbEhhbmRsZXJzLFxuICBjYWxsSGFuZGxlcnNBc3luY1xufTtcblxuZnVuY3Rpb24ga2V5RG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBrZXlDb2RlIH0gPSBldmVudCxcbiAgICAgICAgZXNjYXBlS2V5ID0gKGtleUNvZGUgPT09IEVTQ0FQRV9LRVlDT0RFKSxcbiAgICAgICAgYWJvcnRlZCA9IHRydWU7XG5cbiAgaWYgKGVzY2FwZUtleSkge1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCk7XG5cbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBtb3VzZVVwSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpLFxuICAgICAgICBhYm9ydGVkID0gZmFsc2U7XG5cbiAgZHJhZ2dpbmcgP1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCkgOlxuICAgICAgdGhpcy5zdG9wV2FpdGluZ1RvRHJhZygpO1xuXG4gIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gIHdpbmRvdy5vZmYoQkxVUl9FVkVOVF9UWVBFLCBtb3VzZVVwSGFuZGxlciwgdGhpcyk7ICAvLy9cblxuICB3aW5kb3cub2ZmTW91c2VVcChtb3VzZVVwSGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlRG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBidXR0b24gfSA9IGV2ZW50O1xuXG4gIGlmIChidXR0b24gPT09IExFRlRfTU9VU0VfQlVUVE9OKSB7XG4gICAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKTtcblxuICAgIGlmICghZHJhZ2dpbmcpIHtcbiAgICAgIGNvbnN0IG1vdXNlVG9wID0gbW91c2VUb3BGcm9tRXZlbnQoZXZlbnQpLFxuICAgICAgICAgICAgbW91c2VMZWZ0ID0gbW91c2VMZWZ0RnJvbUV2ZW50KGV2ZW50KTtcblxuICAgICAgdGhpcy5zdGFydFdhaXRpbmdUb0RyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gICAgfVxuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgd2luZG93Lm9uKEJMVVJfRVZFTlRfVFlQRSwgbW91c2VVcEhhbmRsZXIsIHRoaXMpOyAvLy9cblxuICB3aW5kb3cub25Nb3VzZVVwKG1vdXNlVXBIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gbW91c2VNb3ZlSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpO1xuXG4gIGlmIChkcmFnZ2luZykge1xuICAgIGNvbnN0IG1vdXNlVG9wID0gbW91c2VUb3BGcm9tRXZlbnQoZXZlbnQpLFxuICAgICAgICAgIG1vdXNlTGVmdCA9IG1vdXNlTGVmdEZyb21FdmVudChldmVudCk7XG5cbiAgICB0aGlzLmRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gIH1cblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cbiJdLCJuYW1lcyI6WyJmb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwiRVNDQVBFX0tFWUNPREUiLCJrZXlDb2RlcyIsIkxFRlRfTU9VU0VfQlVUVE9OIiwiYnV0dG9ucyIsIkJMVVJfRVZFTlRfVFlQRSIsImV2ZW50VHlwZXMiLCJEUkFHX0VWRU5UX1RZUEUiLCJTVE9QX0RSQUdfRVZFTlRfVFlQRSIsIlNUQVJUX0RSQUdfRVZFTlRfVFlQRSIsImRyYWdFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwiZ2xvYmFsVGhpcyIsIm9uRHJhZyIsImRyYWdIYW5kbGVyIiwiZWxlbWVudCIsImV2ZW50VHlwZSIsImhhbmRsZXIiLCJhZGRFdmVudExpc3RlbmVyIiwib2ZmRHJhZyIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJvblN0b3BEcmFnIiwic3RvcERyYWdIYW5kbGVyIiwib2ZmU3RvcERyYWciLCJvblN0YXJ0RHJhZyIsInN0YXJ0RHJhZ0hhbmRsZXIiLCJvZmZTdGFydERyYWciLCJlbmFibGVEcmFnIiwicHJvcGVydGllcyIsInRpbWVvdXQiLCJ0b3BPZmZzZXQiLCJsZWZ0T2Zmc2V0Iiwic3RhcnRNb3VzZVRvcCIsInN0YXJ0TW91c2VMZWZ0Iiwib25Nb3VzZURvd24iLCJtb3VzZURvd25IYW5kbGVyIiwic2V0U3RhdGUiLCJkaXNhYmxlRHJhZyIsIm9mZk1vdXNlRG93biIsImlzRHJhZ2dpbmciLCJkcmFnZ2luZyIsImhhc0NsYXNzIiwic3RhcnRXYWl0aW5nVG9EcmFnIiwibW91c2VUb3AiLCJtb3VzZUxlZnQiLCJnZXRUaW1lb3V0Iiwic2V0VGltZW91dCIsInJlc2V0VGltZW91dCIsInN0YXJ0RHJhZyIsIlNUQVJUX0RSQUdHSU5HX0RFTEFZIiwidXBkYXRlVGltZW91dCIsInN0b3BXYWl0aW5nVG9EcmFnIiwiY2xlYXJUaW1lb3V0IiwiYm91bmRzIiwiZ2V0Qm91bmRzIiwiYm91bmRzVG9wIiwiZ2V0VG9wIiwiYm91bmRzTGVmdCIsImdldExlZnQiLCJib3VuZHNSaWdodCIsImdldFJpZ2h0IiwiYm91bmRzQm90dG9tIiwiZ2V0Qm90dG9tIiwiYm91bmRzV2lkdGgiLCJib3VuZHNIZWlnaHQiLCJNYXRoIiwiZmxvb3IiLCJ3aW5kb3ciLCJvbktleURvd24iLCJrZXlEb3duSGFuZGxlciIsIm9uTW91c2VNb3ZlIiwibW91c2VNb3ZlSGFuZGxlciIsImFkZENsYXNzIiwic2V0VG9wT2Zmc2V0Iiwic2V0TGVmdE9mZnNldCIsInNldFN0YXJ0TW91c2VUb3AiLCJzZXRTdGFydE1vdXNlTGVmdCIsImNhbGxIYW5kbGVycyIsImRyYWciLCJzdG9wRHJhZyIsImFib3J0ZWQiLCJkcm9wRWxlbWVudCIsIm9mZktleURvd24iLCJvZmZNb3VzZU1vdmUiLCJkb25lIiwiY2FsbEhhbmRsZXJzQXN5bmMiLCJyZW1vdmVDbGFzcyIsImRyb3AiLCJzY3JvbGxUb3AiLCJnZXRTY3JvbGxUb3AiLCJzY3JvbGxMZWZ0IiwiZ2V0U2Nyb2xsTGVmdCIsImdldFRvcE9mZnNldCIsImdldExlZnRPZmZzZXQiLCJnZXRTdGFydE1vdXNlVG9wIiwiZ2V0U3RhcnRNb3VzZUxlZnQiLCJyZWxhdGl2ZU1vdXNlVG9wIiwicmVsYXRpdmVNb3VzZUxlZnQiLCJ0b3AiLCJsZWZ0IiwiY3NzIiwic3RhdGUiLCJnZXRTdGF0ZSIsInVwZGF0ZVN0YXRlIiwicmVtYWluaW5nQXJndW1lbnRzIiwiZXZlbnRMaXN0ZW5lcnMiLCJmaW5kRXZlbnRMaXN0ZW5lcnMiLCJldmVudExpc3RlbmVyIiwiaGFuZGxlckVsZW1lbnQiLCJjYWxsIiwicG9wIiwibmV4dCIsImV2ZW50Iiwia2V5Q29kZSIsImVzY2FwZUtleSIsInN0b3BQcm9wYWdhdGlvbiIsIm1vdXNlVXBIYW5kbGVyIiwib2ZmIiwib2ZmTW91c2VVcCIsImJ1dHRvbiIsIm1vdXNlVG9wRnJvbUV2ZW50IiwibW91c2VMZWZ0RnJvbUV2ZW50Iiwib24iLCJvbk1vdXNlVXAiXSwibWFwcGluZ3MiOiJBQUFBLFlBQVksQ0FBQzs7Ozs7QUFFK0IsSUFBQSxLQUFNLFdBQU4sTUFBTSxDQUFBO0FBQ0YsSUFBQSxVQUFXLFdBQVgsV0FBVyxDQUFBO0FBRXRCLElBQUEsVUFBYyxXQUFkLGNBQWMsQ0FBQTtBQUNHLElBQUEsTUFBb0IsV0FBcEIsb0JBQW9CLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTFFLElBQU0sQUFBRUEsT0FBTyxHQUFLQyxVQUFxQixzQkFBQSxDQUFqQ0QsT0FB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
@@ -35,13 +35,13 @@ var dropElement = null;
35
35
  Object.assign(globalThis, {
36
36
  dropElement: dropElement
37
37
  });
38
- function drop(dragElement, aborted, done) {
38
+ function drop(dragElement1, aborted, done) {
39
39
  var eventType = DROP_EVENT_TYPE;
40
- this.callHandlersAsync(eventType, dragElement, aborted, done);
40
+ this.callHandlersAsync(eventType, dragElement1, aborted, done);
41
41
  }
42
- function dragOut(dragElement) {
42
+ function dragOut(dragElement1) {
43
43
  var eventType = DRAG_OUT_EVENT_TYPE;
44
- this.callHandlers(eventType, dragElement);
44
+ this.callHandlers(eventType, dragElement1);
45
45
  }
46
46
  function dragOver() {
47
47
  var eventType = DRAG_OVER_EVENT_TYPE;
@@ -108,7 +108,7 @@ function callHandlersAsync(eventType) {
108
108
  remainingArguments[_key - 1] = arguments[_key];
109
109
  }
110
110
  var _this = this;
111
- var done1 = remainingArguments.pop(), eventListeners = this.findEventListeners(eventType);
111
+ var done = remainingArguments.pop(), eventListeners = this.findEventListeners(eventType);
112
112
  forEach(eventListeners, function(eventListener, next) {
113
113
  var _handler;
114
114
  var handler = eventListener.handler, handlerElement = eventListener.element, element = _this, done = next; ///
@@ -118,7 +118,7 @@ function callHandlersAsync(eventType) {
118
118
  element,
119
119
  done
120
120
  ]));
121
- }, done1);
121
+ }, done);
122
122
  }
123
123
  var _default = {
124
124
  drop: drop,
@@ -137,26 +137,26 @@ var _default = {
137
137
  };
138
138
  exports.default = _default;
139
139
  function mouseOutHandler(event, element) {
140
- var dragElement = globalThis.dragElement;
141
- if (dragElement !== null) {
142
- var dropElement1 = null; ///
140
+ var dragElement1 = globalThis.dragElement;
141
+ if (dragElement1 !== null) {
142
+ var dropElement = null; ///
143
143
  Object.assign(globalThis, {
144
- dropElement: dropElement1
144
+ dropElement: dropElement
145
145
  });
146
- this.dragOut(dragElement);
146
+ this.dragOut(dragElement1);
147
147
  }
148
148
  event.stopPropagation();
149
149
  }
150
150
  function mouseOverHandler(event, element) {
151
- var dragElement = globalThis.dragElement;
152
- if (dragElement !== null) {
153
- var dropElement2 = this; ///
151
+ var dragElement1 = globalThis.dragElement;
152
+ if (dragElement1 !== null) {
153
+ var dropElement = this; ///
154
154
  Object.assign(globalThis, {
155
- dropElement: dropElement2
155
+ dropElement: dropElement
156
156
  });
157
- this.dragOver(dragElement);
157
+ this.dragOver(dragElement1);
158
158
  }
159
159
  event.stopPropagation();
160
160
  }
161
161
 
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJvcC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgZXZlbnRUeXBlcyB9IGZyb20gXCJlYXN5XCI7XG5pbXBvcnQgeyBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCIgO1xuXG5jb25zdCB7IGZvckVhY2ggfSA9IGFzeW5jaHJvbm91c1V0aWxpdGllcyxcbiAgICAgIHsgRFJPUF9FVkVOVF9UWVBFLCBEUkFHX09VVF9FVkVOVF9UWVBFLCBEUkFHX09WRVJfRVZFTlRfVFlQRSB9ID0gZXZlbnRUeXBlcztcblxuY29uc3QgZHJvcEVsZW1lbnQgPSBudWxsO1xuXG5PYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgZHJvcEVsZW1lbnRcbn0pO1xuXG5mdW5jdGlvbiBkcm9wKGRyYWdFbGVtZW50LCBhYm9ydGVkLCBkb25lKSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERST1BfRVZFTlRfVFlQRTtcblxuICB0aGlzLmNhbGxIYW5kbGVyc0FzeW5jKGV2ZW50VHlwZSwgZHJhZ0VsZW1lbnQsIGFib3J0ZWQsIGRvbmUpO1xufVxuXG5mdW5jdGlvbiBkcmFnT3V0KGRyYWdFbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfT1VUX0VWRU5UX1RZUEU7XG5cbiAgdGhpcy5jYWxsSGFuZGxlcnMoZXZlbnRUeXBlLCBkcmFnRWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIGRyYWdPdmVyKCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX09WRVJfRVZFTlRfVFlQRTtcblxuICB0aGlzLmNhbGxIYW5kbGVycyhldmVudFR5cGUsIGRyYWdFbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25Ecm9wKGRyb3BIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERST1BfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGRyb3BIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkRyb3AoZHJvcEhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gRFJPUF9FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gZHJvcEhhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25EcmFnT3V0KGRyYWdPdXRIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfT1VUX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnT3V0SGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZEcmFnT3V0KGRyYWdPdXRIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfT1VUX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnT3V0SGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkRyYWdPdmVyKGRyYWdPdmVySGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX09WRVJfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGRyYWdPdmVySGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZEcmFnT3ZlcihkcmFnT3ZlckhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gRFJBR19PVkVSX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnT3ZlckhhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gZW5hYmxlRHJvcCgpIHtcbiAgY29uc3QgeyBvbkRyb3AsIG9uRHJhZ091dCwgb25EcmFnT3ZlciB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICBkcm9wSGFuZGxlciA9IG9uRHJvcCwgLy8vXG4gICAgICAgIGRyYWdPdXRIYW5kbGVyID0gb25EcmFnT3V0LCAvLy9cbiAgICAgICAgZHJhZ092ZXJIYW5kbGVyID0gb25EcmFnT3ZlcjsgLy8vXG5cbiAgZHJvcEhhbmRsZXIgJiYgdGhpcy5vbkRyb3AoZHJvcEhhbmRsZXIpO1xuICBkcmFnT3V0SGFuZGxlciAmJiB0aGlzLm9uRHJhZ091dChkcmFnT3V0SGFuZGxlcik7XG4gIGRyYWdPdmVySGFuZGxlciAmJiB0aGlzLm9uRHJhZ092ZXIoZHJhZ092ZXJIYW5kbGVyKTtcblxuICB0aGlzLm9uTW91c2VPdXQobW91c2VPdXRIYW5kbGVyLCB0aGlzKTtcbiAgdGhpcy5vbk1vdXNlT3Zlcihtb3VzZU92ZXJIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gZGlzYWJsZURyb3AoKSB7XG4gIGNvbnN0IHsgb25Ecm9wLCBvbkRyYWdPdXQsIG9uRHJhZ092ZXIgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgZHJvcEhhbmRsZXIgPSBvbkRyb3AsIC8vL1xuICAgICAgICBkcmFnT3V0SGFuZGxlciA9IG9uRHJhZ091dCwgLy8vXG4gICAgICAgIGRyYWdPdmVySGFuZGxlciA9IG9uRHJhZ092ZXI7IC8vL1xuXG4gIGRyb3BIYW5kbGVyICYmIHRoaXMub2ZmRHJvcChkcm9wSGFuZGxlcik7XG4gIGRyYWdPdXRIYW5kbGVyICYmIHRoaXMub2ZmRHJhZ091dChkcmFnT3V0SGFuZGxlcik7XG4gIGRyYWdPdmVySGFuZGxlciAmJiB0aGlzLm9mZkRyYWdPdmVyKGRyYWdPdmVySGFuZGxlcik7XG5cbiAgdGhpcy5vZmZNb3VzZU91dChtb3VzZU91dEhhbmRsZXIsIHRoaXMpO1xuICB0aGlzLm9mZk1vdXNlT3Zlcihtb3VzZU92ZXJIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gY2FsbEhhbmRsZXJzKGV2ZW50VHlwZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGNvbnN0IGV2ZW50TGlzdGVuZXJzID0gdGhpcy5maW5kRXZlbnRMaXN0ZW5lcnMoZXZlbnRUeXBlKTtcblxuICBldmVudExpc3RlbmVycy5mb3JFYWNoKChldmVudExpc3RlbmVyKSA9PiB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBlbGVtZW50OiBoYW5kbGVyRWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICBlbGVtZW50ID0gdGhpczsgLy8vXG5cbiAgICBoYW5kbGVyLmNhbGwoaGFuZGxlckVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgZWxlbWVudCk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjYWxsSGFuZGxlcnNBc3luYyhldmVudFR5cGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICBjb25zdCBkb25lID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpLCAgLy8vXG4gICAgICAgIGV2ZW50TGlzdGVuZXJzID0gdGhpcy5maW5kRXZlbnRMaXN0ZW5lcnMoZXZlbnRUeXBlKTtcblxuICBmb3JFYWNoKGV2ZW50TGlzdGVuZXJzLCAoZXZlbnRMaXN0ZW5lciwgbmV4dCkgPT4ge1xuICAgIGNvbnN0IHsgaGFuZGxlciwgZWxlbWVudDogaGFuZGxlckVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgZWxlbWVudCA9IHRoaXMsIC8vL1xuICAgICAgICAgIGRvbmUgPSBuZXh0OyAgLy8vXG5cbiAgICBoYW5kbGVyLmNhbGwoaGFuZGxlckVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgZWxlbWVudCwgZG9uZSk7XG4gIH0sIGRvbmUpO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGRyb3AsXG4gIGRyYWdPdXQsXG4gIGRyYWdPdmVyLFxuICBvbkRyb3AsXG4gIG9mZkRyb3AsXG4gIG9uRHJhZ091dCxcbiAgb2ZmRHJhZ091dCxcbiAgb25EcmFnT3ZlcixcbiAgb2ZmRHJhZ092ZXIsXG4gIGVuYWJsZURyb3AsXG4gIGRpc2FibGVEcm9wLFxuICBjYWxsSGFuZGxlcnMsXG4gIGNhbGxIYW5kbGVyc0FzeW5jXG59XG5cbmZ1bmN0aW9uIG1vdXNlT3V0SGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCB7IGRyYWdFbGVtZW50IH0gPSBnbG9iYWxUaGlzO1xuXG4gIGlmIChkcmFnRWxlbWVudCAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGRyb3BFbGVtZW50ID0gbnVsbDsgLy8vXG5cbiAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgIGRyb3BFbGVtZW50XG4gICAgfSk7XG5cbiAgICB0aGlzLmRyYWdPdXQoZHJhZ0VsZW1lbnQpO1xuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlT3ZlckhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBkcmFnRWxlbWVudCB9ID0gZ2xvYmFsVGhpcztcblxuICBpZiAoZHJhZ0VsZW1lbnQgIT09IG51bGwpIHtcbiAgICBjb25zdCBkcm9wRWxlbWVudCA9IHRoaXM7IC8vL1xuXG4gICAgT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gICAgICBkcm9wRWxlbWVudFxuICAgIH0pO1xuXG4gICAgdGhpcy5kcmFnT3ZlcihkcmFnRWxlbWVudCk7XG4gIH1cblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cbiJdLCJuYW1lcyI6WyJmb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwiRFJPUF9FVkVOVF9UWVBFIiwiZXZlbnRUeXBlcyIsIkRSQUdfT1VUX0VWRU5UX1RZUEUiLCJEUkFHX09WRVJfRVZFTlRfVFlQRSIsImRyb3BFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwiZ2xvYmFsVGhpcyIsImRyb3AiLCJkcmFnRWxlbWVudCIsImFib3J0ZWQiLCJkb25lIiwiZXZlbnRUeXBlIiwiY2FsbEhhbmRsZXJzQXN5bmMiLCJkcmFnT3V0IiwiY2FsbEhhbmRsZXJzIiwiZHJhZ092ZXIiLCJvbkRyb3AiLCJkcm9wSGFuZGxlciIsImVsZW1lbnQiLCJoYW5kbGVyIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm9mZkRyb3AiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib25EcmFnT3V0IiwiZHJhZ091dEhhbmRsZXIiLCJvZmZEcmFnT3V0Iiwib25EcmFnT3ZlciIsImRyYWdPdmVySGFuZGxlciIsIm9mZkRyYWdPdmVyIiwiZW5hYmxlRHJvcCIsInByb3BlcnRpZXMiLCJvbk1vdXNlT3V0IiwibW91c2VPdXRIYW5kbGVyIiwib25Nb3VzZU92ZXIiLCJtb3VzZU92ZXJIYW5kbGVyIiwiZGlzYWJsZURyb3AiLCJvZmZNb3VzZU91dCIsIm9mZk1vdXNlT3ZlciIsInJlbWFpbmluZ0FyZ3VtZW50cyIsImV2ZW50TGlzdGVuZXJzIiwiZmluZEV2ZW50TGlzdGVuZXJzIiwiZXZlbnRMaXN0ZW5lciIsImhhbmRsZXJFbGVtZW50IiwiY2FsbCIsInBvcCIsIm5leHQiLCJldmVudCIsInN0b3BQcm9wYWdhdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVjLElBQUEsS0FBTSxXQUFOLE1BQU0sQ0FBQTtBQUNLLElBQUEsVUFBVyxXQUFYLFdBQVcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFakQsSUFBTSxBQUFFQSxPQUFPLEdBQUtDLFVBQXFCLHNCQUFBLENBQWpDRCxPQUFPLEFBQTBCLEVBQ2pDRSxlQUFlLEdBQWdEQyxLQUFVLFdBQUEsQ0FBekVELGVBQWUsRUFBRUUsbUJBQW1CLEdBQTJCRCxLQUFV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
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJvcC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgZXZlbnRUeXBlcyB9IGZyb20gXCJlYXN5XCI7XG5pbXBvcnQgeyBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCIgO1xuXG5jb25zdCB7IGZvckVhY2ggfSA9IGFzeW5jaHJvbm91c1V0aWxpdGllcyxcbiAgICAgIHsgRFJPUF9FVkVOVF9UWVBFLCBEUkFHX09VVF9FVkVOVF9UWVBFLCBEUkFHX09WRVJfRVZFTlRfVFlQRSB9ID0gZXZlbnRUeXBlcztcblxuY29uc3QgZHJvcEVsZW1lbnQgPSBudWxsO1xuXG5PYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgZHJvcEVsZW1lbnRcbn0pO1xuXG5mdW5jdGlvbiBkcm9wKGRyYWdFbGVtZW50LCBhYm9ydGVkLCBkb25lKSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERST1BfRVZFTlRfVFlQRTtcblxuICB0aGlzLmNhbGxIYW5kbGVyc0FzeW5jKGV2ZW50VHlwZSwgZHJhZ0VsZW1lbnQsIGFib3J0ZWQsIGRvbmUpO1xufVxuXG5mdW5jdGlvbiBkcmFnT3V0KGRyYWdFbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfT1VUX0VWRU5UX1RZUEU7XG5cbiAgdGhpcy5jYWxsSGFuZGxlcnMoZXZlbnRUeXBlLCBkcmFnRWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIGRyYWdPdmVyKCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX09WRVJfRVZFTlRfVFlQRTtcblxuICB0aGlzLmNhbGxIYW5kbGVycyhldmVudFR5cGUsIGRyYWdFbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25Ecm9wKGRyb3BIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERST1BfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGRyb3BIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkRyb3AoZHJvcEhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gRFJPUF9FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gZHJvcEhhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25EcmFnT3V0KGRyYWdPdXRIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfT1VUX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnT3V0SGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZEcmFnT3V0KGRyYWdPdXRIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfT1VUX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnT3V0SGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkRyYWdPdmVyKGRyYWdPdmVySGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX09WRVJfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGRyYWdPdmVySGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZEcmFnT3ZlcihkcmFnT3ZlckhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gRFJBR19PVkVSX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnT3ZlckhhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gZW5hYmxlRHJvcCgpIHtcbiAgY29uc3QgeyBvbkRyb3AsIG9uRHJhZ091dCwgb25EcmFnT3ZlciB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICBkcm9wSGFuZGxlciA9IG9uRHJvcCwgLy8vXG4gICAgICAgIGRyYWdPdXRIYW5kbGVyID0gb25EcmFnT3V0LCAvLy9cbiAgICAgICAgZHJhZ092ZXJIYW5kbGVyID0gb25EcmFnT3ZlcjsgLy8vXG5cbiAgZHJvcEhhbmRsZXIgJiYgdGhpcy5vbkRyb3AoZHJvcEhhbmRsZXIpO1xuICBkcmFnT3V0SGFuZGxlciAmJiB0aGlzLm9uRHJhZ091dChkcmFnT3V0SGFuZGxlcik7XG4gIGRyYWdPdmVySGFuZGxlciAmJiB0aGlzLm9uRHJhZ092ZXIoZHJhZ092ZXJIYW5kbGVyKTtcblxuICB0aGlzLm9uTW91c2VPdXQobW91c2VPdXRIYW5kbGVyLCB0aGlzKTtcbiAgdGhpcy5vbk1vdXNlT3Zlcihtb3VzZU92ZXJIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gZGlzYWJsZURyb3AoKSB7XG4gIGNvbnN0IHsgb25Ecm9wLCBvbkRyYWdPdXQsIG9uRHJhZ092ZXIgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgZHJvcEhhbmRsZXIgPSBvbkRyb3AsIC8vL1xuICAgICAgICBkcmFnT3V0SGFuZGxlciA9IG9uRHJhZ091dCwgLy8vXG4gICAgICAgIGRyYWdPdmVySGFuZGxlciA9IG9uRHJhZ092ZXI7IC8vL1xuXG4gIGRyb3BIYW5kbGVyICYmIHRoaXMub2ZmRHJvcChkcm9wSGFuZGxlcik7XG4gIGRyYWdPdXRIYW5kbGVyICYmIHRoaXMub2ZmRHJhZ091dChkcmFnT3V0SGFuZGxlcik7XG4gIGRyYWdPdmVySGFuZGxlciAmJiB0aGlzLm9mZkRyYWdPdmVyKGRyYWdPdmVySGFuZGxlcik7XG5cbiAgdGhpcy5vZmZNb3VzZU91dChtb3VzZU91dEhhbmRsZXIsIHRoaXMpO1xuICB0aGlzLm9mZk1vdXNlT3Zlcihtb3VzZU92ZXJIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gY2FsbEhhbmRsZXJzKGV2ZW50VHlwZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGNvbnN0IGV2ZW50TGlzdGVuZXJzID0gdGhpcy5maW5kRXZlbnRMaXN0ZW5lcnMoZXZlbnRUeXBlKTtcblxuICBldmVudExpc3RlbmVycy5mb3JFYWNoKChldmVudExpc3RlbmVyKSA9PiB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBlbGVtZW50OiBoYW5kbGVyRWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICBlbGVtZW50ID0gdGhpczsgLy8vXG5cbiAgICBoYW5kbGVyLmNhbGwoaGFuZGxlckVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgZWxlbWVudCk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjYWxsSGFuZGxlcnNBc3luYyhldmVudFR5cGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICBjb25zdCBkb25lID0gcmVtYWluaW5nQXJndW1lbnRzLnBvcCgpLCAgLy8vXG4gICAgICAgIGV2ZW50TGlzdGVuZXJzID0gdGhpcy5maW5kRXZlbnRMaXN0ZW5lcnMoZXZlbnRUeXBlKTtcblxuICBmb3JFYWNoKGV2ZW50TGlzdGVuZXJzLCAoZXZlbnRMaXN0ZW5lciwgbmV4dCkgPT4ge1xuICAgIGNvbnN0IHsgaGFuZGxlciwgZWxlbWVudDogaGFuZGxlckVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgZWxlbWVudCA9IHRoaXMsIC8vL1xuICAgICAgICAgIGRvbmUgPSBuZXh0OyAgLy8vXG5cbiAgICBoYW5kbGVyLmNhbGwoaGFuZGxlckVsZW1lbnQsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cywgZWxlbWVudCwgZG9uZSk7XG4gIH0sIGRvbmUpO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGRyb3AsXG4gIGRyYWdPdXQsXG4gIGRyYWdPdmVyLFxuICBvbkRyb3AsXG4gIG9mZkRyb3AsXG4gIG9uRHJhZ091dCxcbiAgb2ZmRHJhZ091dCxcbiAgb25EcmFnT3ZlcixcbiAgb2ZmRHJhZ092ZXIsXG4gIGVuYWJsZURyb3AsXG4gIGRpc2FibGVEcm9wLFxuICBjYWxsSGFuZGxlcnMsXG4gIGNhbGxIYW5kbGVyc0FzeW5jXG59XG5cbmZ1bmN0aW9uIG1vdXNlT3V0SGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCB7IGRyYWdFbGVtZW50IH0gPSBnbG9iYWxUaGlzO1xuXG4gIGlmIChkcmFnRWxlbWVudCAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGRyb3BFbGVtZW50ID0gbnVsbDsgLy8vXG5cbiAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgIGRyb3BFbGVtZW50XG4gICAgfSk7XG5cbiAgICB0aGlzLmRyYWdPdXQoZHJhZ0VsZW1lbnQpO1xuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlT3ZlckhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBkcmFnRWxlbWVudCB9ID0gZ2xvYmFsVGhpcztcblxuICBpZiAoZHJhZ0VsZW1lbnQgIT09IG51bGwpIHtcbiAgICBjb25zdCBkcm9wRWxlbWVudCA9IHRoaXM7IC8vL1xuXG4gICAgT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gICAgICBkcm9wRWxlbWVudFxuICAgIH0pO1xuXG4gICAgdGhpcy5kcmFnT3ZlcihkcmFnRWxlbWVudCk7XG4gIH1cblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cbiJdLCJuYW1lcyI6WyJmb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwiRFJPUF9FVkVOVF9UWVBFIiwiZXZlbnRUeXBlcyIsIkRSQUdfT1VUX0VWRU5UX1RZUEUiLCJEUkFHX09WRVJfRVZFTlRfVFlQRSIsImRyb3BFbGVtZW50IiwiT2JqZWN0IiwiYXNzaWduIiwiZ2xvYmFsVGhpcyIsImRyb3AiLCJkcmFnRWxlbWVudCIsImFib3J0ZWQiLCJkb25lIiwiZXZlbnRUeXBlIiwiY2FsbEhhbmRsZXJzQXN5bmMiLCJkcmFnT3V0IiwiY2FsbEhhbmRsZXJzIiwiZHJhZ092ZXIiLCJvbkRyb3AiLCJkcm9wSGFuZGxlciIsImVsZW1lbnQiLCJoYW5kbGVyIiwiYWRkRXZlbnRMaXN0ZW5lciIsIm9mZkRyb3AiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib25EcmFnT3V0IiwiZHJhZ091dEhhbmRsZXIiLCJvZmZEcmFnT3V0Iiwib25EcmFnT3ZlciIsImRyYWdPdmVySGFuZGxlciIsIm9mZkRyYWdPdmVyIiwiZW5hYmxlRHJvcCIsInByb3BlcnRpZXMiLCJvbk1vdXNlT3V0IiwibW91c2VPdXRIYW5kbGVyIiwib25Nb3VzZU92ZXIiLCJtb3VzZU92ZXJIYW5kbGVyIiwiZGlzYWJsZURyb3AiLCJvZmZNb3VzZU91dCIsIm9mZk1vdXNlT3ZlciIsInJlbWFpbmluZ0FyZ3VtZW50cyIsImV2ZW50TGlzdGVuZXJzIiwiZmluZEV2ZW50TGlzdGVuZXJzIiwiZXZlbnRMaXN0ZW5lciIsImhhbmRsZXJFbGVtZW50IiwiY2FsbCIsInBvcCIsIm5leHQiLCJldmVudCIsInN0b3BQcm9wYWdhdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVjLElBQUEsS0FBTSxXQUFOLE1BQU0sQ0FBQTtBQUNLLElBQUEsVUFBVyxXQUFYLFdBQVcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFakQsSUFBTSxBQUFFQSxPQUFPLEdBQUtDLFVBQXFCLHNCQUFBLENBQWpDRCxPQUFPLEFBQTBCLEVBQ2pDRSxlQUFlLEdBQWdEQyxLQUFVLFdBQUEsQ0FBekVELGVBQWUsRUFBRUUsbUJBQW1CLEdBQTJCRCxLQUFVLFdBQUEsQ0FBeERDLG1CQUFtQixFQUFFQyxvQkFBb0IsR0FBS0YsS0FBVSxXQUFBLENBQW5DRSxvQkFBb0IsQUFBZ0I7QUFFbEYsSUFBTUMsV0FBVyxHQUFHLElBQUksQUFBQztBQUV6QkMsTUFBTSxDQUFDQyxNQUFNLENBQUNDLFVBQVUsRUFBRTtJQUN4QkgsV0FBVyxFQUFYQSxXQUFXO0NBQ1osQ0FBQyxDQUFDO0FBRUgsU0FBU0ksSUFBSSxDQUFDQyxZQUFXLEVBQUVDLE9BQU8sRUFBRUMsSUFBSSxFQUFFO0lBQ3hDLElBQU1DLFNBQVMsR0FBR1osZUFBZSxBQUFDO0lBRWxDLElBQUksQ0FBQ2EsaUJBQWlCLENBQUNELFNBQVMsRUFBRUgsWUFBVyxFQUFFQyxPQUFPLEVBQUVDLElBQUksQ0FBQyxDQUFDO0NBQy9EO0FBRUQsU0FBU0csT0FBTyxDQUFDTCxZQUFXLEVBQUU7SUFDNUIsSUFBTUcsU0FBUyxHQUFHVixtQkFBbUIsQUFBQztJQUV0QyxJQUFJLENBQUNhLFlBQVksQ0FBQ0gsU0FBUyxFQUFFSCxZQUFXLENBQUMsQ0FBQztDQUMzQztBQUVELFNBQVNPLFFBQVEsR0FBRztJQUNsQixJQUFNSixTQUFTLEdBQUdULG9CQUFvQixBQUFDO0lBRXZDLElBQUksQ0FBQ1ksWUFBWSxDQUFDSCxTQUFTLEVBQUVILFdBQVcsQ0FBQyxDQUFDO0NBQzNDO0FBRUQsU0FBU1EsTUFBTSxDQUFDQyxXQUFXLEVBQUVDLE9BQU8sRUFBRTtJQUNwQyxJQUFNUCxTQUFTLEdBQUdaLGVBQWUsRUFDM0JvQixPQUFPLEdBQUdGLFdBQVcsQUFBQyxFQUFFLEdBQUc7SUFFakMsSUFBSSxDQUFDRyxnQkFBZ0IsQ0FBQ1QsU0FBUyxFQUFFUSxPQUFPLEVBQUVELE9BQU8sQ0FBQyxDQUFDO0NBQ3BEO0FBRUQsU0FBU0csT0FBTyxDQUFDSixXQUFXLEVBQUVDLE9BQU8sRUFBRTtJQUNyQyxJQUFNUCxTQUFTLEdBQUdaLGVBQWUsRUFDM0JvQixPQUFPLEdBQUdGLFdBQVcsQUFBQyxFQUFFLEdBQUc7SUFFakMsSUFBSSxDQUFDSyxtQkFBbUIsQ0FBQ1gsU0FBUyxFQUFFUSxPQUFPLEVBQUVELE9BQU8sQ0FBQyxDQUFDO0NBQ3ZEO0FBRUQsU0FBU0ssU0FBUyxDQUFDQyxjQUFjLEVBQUVOLE9BQU8sRUFBRTtJQUMxQyxJQUFNUCxTQUFTLEdBQUdWLG1CQUFtQixFQUMvQmtCLE9BQU8sR0FBR0ssY0FBYyxBQUFDLEVBQUUsR0FBRztJQUVwQyxJQUFJLENBQUNKLGdCQUFnQixDQUFDVCxTQUFTLEVBQUVRLE9BQU8sRUFBRUQsT0FBTyxDQUFDLENBQUM7Q0FDcEQ7QUFFRCxTQUFTTyxVQUFVLENBQUNELGNBQWMsRUFBRU4sT0FBTyxFQUFFO0lBQzNDLElBQU1QLFNBQVMsR0FBR1YsbUJBQW1CLEVBQy9Ca0IsT0FBTyxHQUFHSyxjQUFjLEFBQUMsRUFBRSxHQUFHO0lBRXBDLElBQUksQ0FBQ0YsbUJBQW1CLENBQUNYLFNBQVMsRUFBRVEsT0FBTyxFQUFFRCxPQUFPLENBQUMsQ0FBQztDQUN2RDtBQUVELFNBQVNRLFVBQVUsQ0FBQ0MsZUFBZSxFQUFFVCxPQUFPLEVBQUU7SUFDNUMsSUFBTVAsU0FBUyxHQUFHVCxvQkFBb0IsRUFDaENpQixPQUFPLEdBQUdRLGVBQWUsQUFBQyxFQUFFLEdBQUc7SUFFckMsSUFBSSxDQUFDUCxnQkFBZ0IsQ0FBQ1QsU0FBUyxFQUFFUSxPQUFPLEVBQUVELE9BQU8sQ0FBQyxDQUFDO0NBQ3BEO0FBRUQsU0FBU1UsV0FBVyxDQUFDRCxlQUFlLEVBQUVULE9BQU8sRUFBRTtJQUM3QyxJQUFNUCxTQUFTLEdBQUdULG9CQUFvQixFQUNoQ2lCLE9BQU8sR0FBR1EsZUFBZSxBQUFDLEVBQUUsR0FBRztJQUVyQyxJQUFJLENBQUNMLG1CQUFtQixDQUFDWCxTQUFTLEVBQUVRLE9BQU8sRUFBRUQsT0FBTyxDQUFDLENBQUM7Q0FDdkQ7QUFFRCxTQUFTVyxVQUFVLEdBQUc7SUFDcEIsSUFBMEMsV0FBZSxHQUFmLElBQUksQ0FBQ0MsVUFBVSxFQUFqRGQsUUFBTSxHQUE0QixXQUFlLENBQWpEQSxNQUFNLEVBQUVPLFdBQVMsR0FBaUIsV0FBZSxDQUF6Q0EsU0FBUyxFQUFFRyxZQUFVLEdBQUssV0FBZSxDQUE5QkEsVUFBVSxFQUMvQlQsV0FBVyxHQUFHRCxRQUFNLEVBQ3BCUSxjQUFjLEdBQUdELFdBQVMsRUFDMUJJLGVBQWUsR0FBR0QsWUFBVSxBQUFDLEVBQUMsR0FBRztJQUV2Q1QsV0FBVyxJQUFJLElBQUksQ0FBQ0QsTUFBTSxDQUFDQyxXQUFXLENBQUMsQ0FBQztJQUN4Q08sY0FBYyxJQUFJLElBQUksQ0FBQ0QsU0FBUyxDQUFDQyxjQUFjLENBQUMsQ0FBQztJQUNqREcsZUFBZSxJQUFJLElBQUksQ0FBQ0QsVUFBVSxDQUFDQyxlQUFlLENBQUMsQ0FBQztJQUVwRCxJQUFJLENBQUNJLFVBQVUsQ0FBQ0MsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLElBQUksQ0FBQ0MsV0FBVyxDQUFDQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsQ0FBQztDQUMxQztBQUVELFNBQVNDLFdBQVcsR0FBRztJQUNyQixJQUEwQyxXQUFlLEdBQWYsSUFBSSxDQUFDTCxVQUFVLEVBQWpEZCxRQUFNLEdBQTRCLFdBQWUsQ0FBakRBLE1BQU0sRUFBRU8sV0FBUyxHQUFpQixXQUFlLENBQXpDQSxTQUFTLEVBQUVHLFlBQVUsR0FBSyxXQUFlLENBQTlCQSxVQUFVLEVBQy9CVCxXQUFXLEdBQUdELFFBQU0sRUFDcEJRLGNBQWMsR0FBR0QsV0FBUyxFQUMxQkksZUFBZSxHQUFHRCxZQUFVLEFBQUMsRUFBQyxHQUFHO0lBRXZDVCxXQUFXLElBQUksSUFBSSxDQUFDSSxPQUFPLENBQUNKLFdBQVcsQ0FBQyxDQUFDO0lBQ3pDTyxjQUFjLElBQUksSUFBSSxDQUFDQyxVQUFVLENBQUNELGNBQWMsQ0FBQyxDQUFDO0lBQ2xERyxlQUFlLElBQUksSUFBSSxDQUFDQyxXQUFXLENBQUNELGVBQWUsQ0FBQyxDQUFDO0lBRXJELElBQUksQ0FBQ1MsV0FBVyxDQUFDSixlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEMsSUFBSSxDQUFDSyxZQUFZLENBQUNILGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO0NBQzNDO0FBRUQsU0FBU3BCLFlBQVksQ0FBQ0gsU0FBUyxFQUF5QjtJQUF2QixJQUFBLElBQUEsSUFBcUIsR0FBckIsU0FBcUIsQ0FBckIsTUFBcUIsRUFBckIsQUFBRzJCLGtCQUFrQixHQUFyQixVQUFBLElBQXFCLEdBQXJCLENBQXFCLEdBQXJCLElBQXFCLEdBQXJCLENBQXFCLElBQUEsQ0FBQSxFQUFyQixJQUFxQixHQUFyQixDQUFxQixFQUFyQixJQUFxQixHQUFyQixJQUFxQixFQUFyQixJQUFxQixFQUFBLENBQXJCO1FBQUEsQUFBR0Esa0JBQWtCLENBQXJCLElBQXFCLEdBQXJCLENBQXFCLElBQXJCLFNBQXFCLEFBQXJCLENBQUEsSUFBcUIsQ0FBQSxDQUFBO0tBQUE7O0lBQ3BELElBQU1DLGNBQWMsR0FBRyxJQUFJLENBQUNDLGtCQUFrQixDQUFDN0IsU0FBUyxDQUFDLEFBQUM7SUFFMUQ0QixjQUFjLENBQUMxQyxPQUFPLENBQUMsU0FBQzRDLGFBQWEsRUFBSztZQUl4Q3RCLFFBQU87UUFIUCxJQUFRQSxPQUFPLEdBQThCc0IsYUFBYSxDQUFsRHRCLE9BQU8sRUFBRUQsQUFBU3dCLGNBQWMsR0FBS0QsYUFBYSxDQUF6Q3ZCLE9BQU8sQUFBZ0IsRUFDbENBLE9BQU8sUUFBTyxBQUFDLEVBQUMsR0FBRztRQUV6QkMsQ0FBQUEsUUFBTyxHQUFQQSxPQUFPLEVBQUN3QixJQUFJLENBQVp4QixLQUE0RCxDQUE1REEsUUFBTyxFQUFQQTtZQUFhdUIsY0FBYztTQUFpQyxDQUE1RHZCLE1BQTRELENBQS9CLG1CQUFHbUIsa0JBQWtCLENBQWxCQSxFQUFoQ25CO1lBQW9ERCxPQUFPO1NBQUMsQ0FBQSxDQUFBLENBQUM7S0FDOUQsQ0FBQyxDQUFDO0NBQ0o7QUFFRCxTQUFTTixpQkFBaUIsQ0FBQ0QsU0FBUyxFQUF5QjtJQUF2QixJQUFBLElBQUEsSUFBcUIsR0FBckIsU0FBcUIsQ0FBckIsTUFBcUIsRUFBckIsQUFBRzJCLGtCQUFrQixHQUFyQixVQUFBLElBQXFCLEdBQXJCLENBQXFCLEdBQXJCLElBQXFCLEdBQXJCLENBQXFCLElBQUEsQ0FBQSxFQUFyQixJQUFxQixHQUFyQixDQUFxQixFQUFyQixJQUFxQixHQUFyQixJQUFxQixFQUFyQixJQUFxQixFQUFBLENBQXJCO1FBQUEsQUFBR0Esa0JBQWtCLENBQXJCLElBQXFCLEdBQXJCLENBQXFCLElBQXJCLFNBQXFCLEFBQXJCLENBQUEsSUFBcUIsQ0FBQSxDQUFBO0tBQUE7O0lBQ3pELElBQU01QixJQUFJLEdBQUc0QixrQkFBa0IsQ0FBQ00sR0FBRyxFQUFFLEVBQy9CTCxjQUFjLEdBQUcsSUFBSSxDQUFDQyxrQkFBa0IsQ0FBQzdCLFNBQVMsQ0FBQyxBQUFDO0lBRTFEZCxPQUFPLENBQUMwQyxjQUFjLEVBQUUsU0FBQ0UsYUFBYSxFQUFFSSxJQUFJLEVBQUs7WUFLL0MxQixRQUFPO1FBSlAsSUFBUUEsT0FBTyxHQUE4QnNCLGFBQWEsQ0FBbER0QixPQUFPLEVBQUVELEFBQVN3QixjQUFjLEdBQUtELGFBQWEsQ0FBekN2QixPQUFPLEFBQWdCLEVBQ2xDQSxPQUFPLFFBQU8sRUFDZFIsSUFBSSxHQUFHbUMsSUFBSSxBQUFDLEVBQUUsR0FBRztRQUV2QjFCLENBQUFBLFFBQU8sR0FBUEEsT0FBTyxFQUFDd0IsSUFBSSxDQUFaeEIsS0FBa0UsQ0FBbEVBLFFBQU8sRUFBUEE7WUFBYXVCLGNBQWM7U0FBdUMsQ0FBbEV2QixNQUFrRSxDQUFyQyxtQkFBR21CLGtCQUFrQixDQUFsQkEsRUFBaENuQjtZQUFvREQsT0FBTztZQUFFUixJQUFJO1NBQUMsQ0FBQSxDQUFBLENBQUM7S0FDcEUsRUFBRUEsSUFBSSxDQUFDLENBQUM7Q0FDVjtlQUVjO0lBQ2JILElBQUksRUFBSkEsSUFBSTtJQUNKTSxPQUFPLEVBQVBBLE9BQU87SUFDUEUsUUFBUSxFQUFSQSxRQUFRO0lBQ1JDLE1BQU0sRUFBTkEsTUFBTTtJQUNOSyxPQUFPLEVBQVBBLE9BQU87SUFDUEUsU0FBUyxFQUFUQSxTQUFTO0lBQ1RFLFVBQVUsRUFBVkEsVUFBVTtJQUNWQyxVQUFVLEVBQVZBLFVBQVU7SUFDVkUsV0FBVyxFQUFYQSxXQUFXO0lBQ1hDLFVBQVUsRUFBVkEsVUFBVTtJQUNWTSxXQUFXLEVBQVhBLFdBQVc7SUFDWHJCLFlBQVksRUFBWkEsWUFBWTtJQUNaRixpQkFBaUIsRUFBakJBLGlCQUFpQjtDQUNsQjs7QUFFRCxTQUFTb0IsZUFBZSxDQUFDYyxLQUFLLEVBQUU1QixPQUFPLEVBQUU7SUFDdkMsSUFBTSxBQUFFVixZQUFXLEdBQUtGLFVBQVUsQ0FBMUJFLFdBQVcsQUFBZSxBQUFDO0lBRW5DLElBQUlBLFlBQVcsS0FBSyxJQUFJLEVBQUU7UUFDeEIsSUFBTUwsV0FBVyxHQUFHLElBQUksQUFBQyxFQUFDLEdBQUc7UUFFN0JDLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDQyxVQUFVLEVBQUU7WUFDeEJILFdBQVcsRUFBWEEsV0FBVztTQUNaLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQ1UsT0FBTyxDQUFDTCxZQUFXLENBQUMsQ0FBQztLQUMzQjtJQUVEc0MsS0FBSyxDQUFDQyxlQUFlLEVBQUUsQ0FBQztDQUN6QjtBQUVELFNBQVNiLGdCQUFnQixDQUFDWSxLQUFLLEVBQUU1QixPQUFPLEVBQUU7SUFDeEMsSUFBTSxBQUFFVixZQUFXLEdBQUtGLFVBQVUsQ0FBMUJFLFdBQVcsQUFBZSxBQUFDO0lBRW5DLElBQUlBLFlBQVcsS0FBSyxJQUFJLEVBQUU7UUFDeEIsSUFBTUwsV0FBVyxHQUFHLElBQUksQUFBQyxFQUFDLEdBQUc7UUFFN0JDLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDQyxVQUFVLEVBQUU7WUFDeEJILFdBQVcsRUFBWEEsV0FBVztTQUNaLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQ1ksUUFBUSxDQUFDUCxZQUFXLENBQUMsQ0FBQztLQUM1QjtJQUVEc0MsS0FBSyxDQUFDQyxlQUFlLEVBQUUsQ0FBQztDQUN6QiJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "easy-drag-and-drop",
3
3
  "author": "James Smith",
4
- "version": "1.2.56",
4
+ "version": "1.2.59",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/easy-drag-and-drop",
7
7
  "description": "Drag and drop functionality for Easy elements.",
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "easy": "^13.0.41",
14
- "easy-with-style": "^3.0.134",
14
+ "easy-with-style": "^3.0.141",
15
15
  "necessary": "^11.0.40"
16
16
  },
17
17
  "devDependencies": {