@sbb-esta/lyne-elements-experimental 1.12.0 → 1.12.1

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.
@@ -10,14 +10,7 @@ import "@sbb-esta/lyne-elements/journey-header.js";
10
10
  import "./pearl-chain-time.js";
11
11
  import { i as isValid } from "./isValid-DO_pHwcW.js";
12
12
  import { f as format } from "./format-DTy5_IOt.js";
13
- const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
14
- /*
15
- * SBB table mixin
16
- * Notes:
17
- * We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
18
- * Therefore, we have to build the grid avoiding double borders.
19
- */
20
- *,
13
+ const style = css`*,
21
14
  ::before,
22
15
  ::after {
23
16
  box-sizing: border-box;
@@ -203,4 +196,4 @@ SbbJourneySummaryElement = __decorateClass([
203
196
  export {
204
197
  SbbJourneySummaryElement
205
198
  };
206
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zdW1tYXJ5LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2pvdXJuZXktc3VtbWFyeS9qb3VybmV5LXN1bW1hcnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB7IGkxOG5UcmlwRHVyYXRpb24gfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlTGlrZSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRpdGxlTGV2ZWwgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy90aXRsZS5qcyc7XG5pbXBvcnQgeyBmb3JtYXQsIGlzVmFsaWQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50LCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBkdXJhdGlvblRvVGltZSwgcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyB9IGZyb20gJy4uL2NvcmUvZGF0ZXRpbWUuanMnO1xuaW1wb3J0IHR5cGUgeyBMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2pvdXJuZXktc3VtbWFyeS5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2RpdmlkZXIuanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9zY3JlZW4tcmVhZGVyLW9ubHkuanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9qb3VybmV5LWhlYWRlci5qcyc7XG5pbXBvcnQgJy4uL3BlYXJsLWNoYWluLXRpbWUuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEludGVyZmFjZVNiYkpvdXJuZXlTdW1tYXJ5QXR0cmlidXRlcyB7XG4gIGxlZ3M6IExlZ1tdO1xuICB2aWFzPzogc3RyaW5nW107XG4gIG9yaWdpbjogc3RyaW5nO1xuICBkZXN0aW5hdGlvbjogc3RyaW5nO1xuICBhcnJpdmFsV2Fsaz86IG51bWJlcjtcbiAgZGVwYXJ0dXJlOiBzdHJpbmc7XG4gIGFycml2YWw6IHN0cmluZztcbiAgZGVwYXJ0dXJlV2Fsaz86IG51bWJlcjtcbiAgZHVyYXRpb24/OiBudW1iZXI7XG59XG5cbi8qKlxuICogSXQgZGlzcGxheXMgam91cm5leSdzIGluZm9ybWF0aW9uLlxuICpcbiAqIEBzbG90IGNvbnRlbnQgLSBVc2UgdGhpcyBzbG90IHRvIGFkZCBgc2JiLWJ1dHRvbmBzIG9yIG90aGVyIGludGVyYWN0aXZlIGVsZW1lbnRzLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLWpvdXJuZXktc3VtbWFyeScpXG5leHBvcnQgY2xhc3MgU2JiSm91cm5leVN1bW1hcnlFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiAgVGhlIHRyaXAgcHJvcCAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBPYmplY3QgfSkgcHVibGljIHRyaXAhOiBJbnRlcmZhY2VTYmJKb3VybmV5U3VtbWFyeUF0dHJpYnV0ZXM7XG5cbiAgLyoqICBUaGUgdHJpcEJhY2sgcHJvcCAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0cmlwLWJhY2snLCB0eXBlOiBPYmplY3QgfSlcbiAgcHVibGljIHRyaXBCYWNrPzogSW50ZXJmYWNlU2JiSm91cm5leVN1bW1hcnlBdHRyaWJ1dGVzO1xuXG4gIC8qKlxuICAgKiBUaGUgUm91bmRUcmlwIHByb3AuIFRoaXMgcHJvcCBjb250cm9scyBpZiBvbmUgb3IgdHdvIGFycm93cyBhcmUgZGlzcGxheWVkIGluIHRoZSBoZWFkZXIuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdyb3VuZC10cmlwJywgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgcm91bmRUcmlwPzogYm9vbGVhbjtcblxuICAvKiogSGVhZGluZyBsZXZlbCBvZiB0aGUgam91cm5leSBoZWFkZXIgZWxlbWVudCAoZS5nLiBoMS1oNikuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2hlYWRlci1sZXZlbCcgfSkgcHVibGljIGhlYWRlckxldmVsOiBTYmJUaXRsZUxldmVsID0gJzMnO1xuXG4gIC8qKlxuICAgKiBQZXIgZGVmYXVsdCwgdGhlIGN1cnJlbnQgbG9jYXRpb24gaGFzIGEgcHVsc2F0aW5nIGFuaW1hdGlvbi4gWW91IGNhblxuICAgKiBkaXNhYmxlIHRoZSBhbmltYXRpb24gd2l0aCB0aGlzIHByb3BlcnR5LlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGlzYWJsZS1hbmltYXRpb24nLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBkaXNhYmxlQW5pbWF0aW9uPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIEZvb3RwYXRoIGF0dHJpYnV0ZSBmb3IgcmVuZGVyaW5nIGRpZmZlcmVudCBpY29uc1xuICAgKiB0cnVlOiByZW5kZXIgYTExeS1pY29uXG4gICAqIGZhbHNlOiByZW5kZXIgd2Fsay1pY29uXG4gICAqIGRlZmF1bHQ6IHJlbmRlciB3YWxrLWljb25cbiAgICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ExMXktZm9vdHBhdGgnLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhMTF5Rm9vdHBhdGg/OiBib29sZWFuO1xuXG4gIC8qKiBBIGNvbmZpZ3VyZWQgZGF0ZSB3aGljaCBhY3RzIGFzIHRoZSBjdXJyZW50IGRhdGUgaW5zdGVhZCBvZiB0aGUgcmVhbCBjdXJyZW50IGRhdGUuIFJlY29tbWVuZGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IG5vdyh2YWx1ZTogU2JiRGF0ZUxpa2UgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9ub3cgPSBkZWZhdWx0RGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKGRlZmF1bHREYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgbm93KCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9ub3cgPz8gbmV3IERhdGUoKTtcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9oYXNDb250ZW50U2xvdDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5faGFzQ29udGVudFNsb3QgPSBCb29sZWFuKHRoaXMucXVlcnlTZWxlY3Rvcj8uKCdbc2xvdD1cImNvbnRlbnRcIl0nKSk7XG4gIH1cblxuICAvKiogIHJlbmRlcnMgdGhlIGRhdGUgb2YgdGhlIGpvdXJuZXkgb3IgaWYgaXQgaXMgdGhlIGN1cnJlbnQgb3IgbmV4dCBkYXkgKi9cbiAgcHJpdmF0ZSBfcmVuZGVySm91cm5leVN0YXJ0KFxuICAgIGRlcGFydHVyZVRpbWU6IERhdGUgfCB1bmRlZmluZWQsXG4gICAgZHVyYXRpb246IG51bWJlciB8IHVuZGVmaW5lZCxcbiAgKTogVGVtcGxhdGVSZXN1bHQgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGRhdGVBZGFwdGVyID0gZGVmYXVsdERhdGVBZGFwdGVyO1xuICAgIGNvbnN0IGR1cmF0aW9uT2JqID0gZHVyYXRpb24gPyBkdXJhdGlvblRvVGltZShkdXJhdGlvbiwgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCkgOiBudWxsO1xuXG4gICAgaWYgKGlzVmFsaWQoZGVwYXJ0dXJlVGltZSkpIHtcbiAgICAgIHJldHVybiBodG1sYFxuICAgICAgICA8dGltZSBkYXRldGltZT0ke2Zvcm1hdChkZXBhcnR1cmVUaW1lISwgJ2QnKSArICcgJyArIGZvcm1hdChkZXBhcnR1cmVUaW1lISwgJ00nKX0+XG4gICAgICAgICAgJHtkYXRlQWRhcHRlci5mb3JtYXQoZGVwYXJ0dXJlVGltZSkucmVwbGFjZSgnLCcsICcuJyl9PC90aW1lXG4gICAgICAgID4ke2R1cmF0aW9uICYmIGR1cmF0aW9uID4gMFxuICAgICAgICAgID8gaHRtbGAsPHRpbWU+XG4gICAgICAgICAgICAgICAgPHNiYi1zY3JlZW4tcmVhZGVyLW9ubHk+XG4gICAgICAgICAgICAgICAgICAke2kxOG5UcmlwRHVyYXRpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7ZHVyYXRpb25PYmohLmxvbmd9XG4gICAgICAgICAgICAgICAgPC9zYmItc2NyZWVuLXJlYWRlci1vbmx5PlxuICAgICAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiR7ZHVyYXRpb25PYmohLnNob3J0fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC90aW1lPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICBgO1xuICAgIH1cbiAgICByZXR1cm47XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJKb3VybmV5Vmlhcyh2aWFzOiBzdHJpbmdbXSk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBzbGljZWRWaWFzID0gdmlhcy5zbGljZSgwLCA1KTtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X192aWEtYmxvY2tcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X192aWEtdGV4dFwiPlZpYTwvc3Bhbj5cbiAgICAgICAgPHVsIGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fdmlhc1wiIHJvbGU9JHt2aWFzLmxlbmd0aCA8PSAxID8gJ3ByZXNlbnRhdGlvbicgOiBub3RoaW5nfT5cbiAgICAgICAgICAke3NsaWNlZFZpYXMubWFwKFxuICAgICAgICAgICAgKHZpYSwgaW5kZXgpID0+XG4gICAgICAgICAgICAgIGh0bWxgPGxpIGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fdmlhXCI+XG4gICAgICAgICAgICAgICAgJHt2aWF9JHtpbmRleCAhPT0gc2xpY2VkVmlhcy5sZW5ndGggLSAxICYmIGluZGV4IDwgNFxuICAgICAgICAgICAgICAgICAgPyBodG1sYDxzcGFuPiw8L3NwYW4+YFxuICAgICAgICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAgICAgICA8L2xpPmAsXG4gICAgICAgICAgKX1cbiAgICAgICAgPC91bD5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJKb3VybmV5SW5mb3JtYXRpb24odHJpcDogSW50ZXJmYWNlU2JiSm91cm5leVN1bW1hcnlBdHRyaWJ1dGVzKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IHsgdmlhcywgZHVyYXRpb24sIGRlcGFydHVyZVdhbGssIGRlcGFydHVyZSwgYXJyaXZhbFdhbGssIGFycml2YWwsIGxlZ3MgfSA9IHRyaXAgfHwge307XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXY+XG4gICAgICAgICR7dmlhcyAmJiB2aWFzLmxlbmd0aCA+IDAgPyB0aGlzLl9yZW5kZXJKb3VybmV5Vmlhcyh2aWFzKSA6IG5vdGhpbmd9XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X19kYXRlXCI+XG4gICAgICAgICAgJHt0aGlzLl9yZW5kZXJKb3VybmV5U3RhcnQocmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhkZXBhcnR1cmUpLCBkdXJhdGlvbil9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c2JiLXBlYXJsLWNoYWluLXRpbWVcbiAgICAgICAgICAuYXJyaXZhbFRpbWU9JHthcnJpdmFsfVxuICAgICAgICAgIC5kZXBhcnR1cmVUaW1lPSR7ZGVwYXJ0dXJlfVxuICAgICAgICAgIC5kZXBhcnR1cmVXYWxrPSR7ZGVwYXJ0dXJlV2Fsa31cbiAgICAgICAgICAuYXJyaXZhbFdhbGs9JHthcnJpdmFsV2Fsa31cbiAgICAgICAgICAubGVncz0ke2xlZ3N9XG4gICAgICAgICAgLmRpc2FibGVBbmltYXRpb249JHt0aGlzLmRpc2FibGVBbmltYXRpb259XG4gICAgICAgICAgLmExMXlGb290cGF0aD0ke3RoaXMuYTExeUZvb3RwYXRofVxuICAgICAgICAgIC5ub3c9JHt0aGlzLm5vd31cbiAgICAgICAgPjwvc2JiLXBlYXJsLWNoYWluLXRpbWU+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgeyBvcmlnaW4sIGRlc3RpbmF0aW9uIH0gPSB0aGlzLnRyaXAgfHwge307XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeVwiPlxuICAgICAgICAke29yaWdpblxuICAgICAgICAgID8gaHRtbGA8c2JiLWpvdXJuZXktaGVhZGVyXG4gICAgICAgICAgICAgIHNpemU9XCJsXCJcbiAgICAgICAgICAgICAgLmxldmVsPSR7dGhpcy5oZWFkZXJMZXZlbCB8fCBub3RoaW5nfVxuICAgICAgICAgICAgICAub3JpZ2luPSR7b3JpZ2lufVxuICAgICAgICAgICAgICAuZGVzdGluYXRpb249JHtkZXN0aW5hdGlvbn1cbiAgICAgICAgICAgICAgLnJvdW5kVHJpcD0ke3RoaXMucm91bmRUcmlwID8/IG5vdGhpbmd9XG4gICAgICAgICAgICA+PC9zYmItam91cm5leS1oZWFkZXI+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgJHt0aGlzLl9yZW5kZXJKb3VybmV5SW5mb3JtYXRpb24odGhpcy50cmlwKX1cbiAgICAgICAgJHt0aGlzLnRyaXBCYWNrXG4gICAgICAgICAgPyBodG1sYDxkaXY+XG4gICAgICAgICAgICAgIDxzYmItZGl2aWRlciBjbGFzcz1cInNiYi1qb3VybmV5LXN1bW1hcnlfX2RpdmlkZXJcIj48L3NiYi1kaXZpZGVyPlxuICAgICAgICAgICAgICAke3RoaXMuX3JlbmRlckpvdXJuZXlJbmZvcm1hdGlvbih0aGlzLnRyaXBCYWNrKX1cbiAgICAgICAgICAgIDwvZGl2PmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICR7dGhpcy5faGFzQ29udGVudFNsb3RcbiAgICAgICAgICA/IGh0bWxgIDxkaXYgY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X19zbG90XCI+XG4gICAgICAgICAgICAgIDxzbG90IG5hbWU9XCJjb250ZW50XCI+PC9zbG90PlxuICAgICAgICAgICAgPC9kaXY+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1qb3VybmV5LXN1bW1hcnknOiBTYmJKb3VybmV5U3VtbWFyeUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1h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
199
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam91cm5leS1zdW1tYXJ5LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL2pvdXJuZXktc3VtbWFyeS9qb3VybmV5LXN1bW1hcnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB7IGkxOG5UcmlwRHVyYXRpb24gfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlTGlrZSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRpdGxlTGV2ZWwgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy90aXRsZS5qcyc7XG5pbXBvcnQgeyBmb3JtYXQsIGlzVmFsaWQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50LCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBkdXJhdGlvblRvVGltZSwgcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyB9IGZyb20gJy4uL2NvcmUvZGF0ZXRpbWUuanMnO1xuaW1wb3J0IHR5cGUgeyBMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2pvdXJuZXktc3VtbWFyeS5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2RpdmlkZXIuanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9zY3JlZW4tcmVhZGVyLW9ubHkuanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9qb3VybmV5LWhlYWRlci5qcyc7XG5pbXBvcnQgJy4uL3BlYXJsLWNoYWluLXRpbWUuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEludGVyZmFjZVNiYkpvdXJuZXlTdW1tYXJ5QXR0cmlidXRlcyB7XG4gIGxlZ3M6IExlZ1tdO1xuICB2aWFzPzogc3RyaW5nW107XG4gIG9yaWdpbjogc3RyaW5nO1xuICBkZXN0aW5hdGlvbjogc3RyaW5nO1xuICBhcnJpdmFsV2Fsaz86IG51bWJlcjtcbiAgZGVwYXJ0dXJlOiBzdHJpbmc7XG4gIGFycml2YWw6IHN0cmluZztcbiAgZGVwYXJ0dXJlV2Fsaz86IG51bWJlcjtcbiAgZHVyYXRpb24/OiBudW1iZXI7XG59XG5cbi8qKlxuICogSXQgZGlzcGxheXMgam91cm5leSdzIGluZm9ybWF0aW9uLlxuICpcbiAqIEBzbG90IGNvbnRlbnQgLSBVc2UgdGhpcyBzbG90IHRvIGFkZCBgc2JiLWJ1dHRvbmBzIG9yIG90aGVyIGludGVyYWN0aXZlIGVsZW1lbnRzLlxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLWpvdXJuZXktc3VtbWFyeScpXG5leHBvcnQgY2xhc3MgU2JiSm91cm5leVN1bW1hcnlFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiAgVGhlIHRyaXAgcHJvcCAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBPYmplY3QgfSkgcHVibGljIHRyaXAhOiBJbnRlcmZhY2VTYmJKb3VybmV5U3VtbWFyeUF0dHJpYnV0ZXM7XG5cbiAgLyoqICBUaGUgdHJpcEJhY2sgcHJvcCAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0cmlwLWJhY2snLCB0eXBlOiBPYmplY3QgfSlcbiAgcHVibGljIHRyaXBCYWNrPzogSW50ZXJmYWNlU2JiSm91cm5leVN1bW1hcnlBdHRyaWJ1dGVzO1xuXG4gIC8qKlxuICAgKiBUaGUgUm91bmRUcmlwIHByb3AuIFRoaXMgcHJvcCBjb250cm9scyBpZiBvbmUgb3IgdHdvIGFycm93cyBhcmUgZGlzcGxheWVkIGluIHRoZSBoZWFkZXIuXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdyb3VuZC10cmlwJywgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgcm91bmRUcmlwPzogYm9vbGVhbjtcblxuICAvKiogSGVhZGluZyBsZXZlbCBvZiB0aGUgam91cm5leSBoZWFkZXIgZWxlbWVudCAoZS5nLiBoMS1oNikuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2hlYWRlci1sZXZlbCcgfSkgcHVibGljIGhlYWRlckxldmVsOiBTYmJUaXRsZUxldmVsID0gJzMnO1xuXG4gIC8qKlxuICAgKiBQZXIgZGVmYXVsdCwgdGhlIGN1cnJlbnQgbG9jYXRpb24gaGFzIGEgcHVsc2F0aW5nIGFuaW1hdGlvbi4gWW91IGNhblxuICAgKiBkaXNhYmxlIHRoZSBhbmltYXRpb24gd2l0aCB0aGlzIHByb3BlcnR5LlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGlzYWJsZS1hbmltYXRpb24nLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBkaXNhYmxlQW5pbWF0aW9uPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIEZvb3RwYXRoIGF0dHJpYnV0ZSBmb3IgcmVuZGVyaW5nIGRpZmZlcmVudCBpY29uc1xuICAgKiB0cnVlOiByZW5kZXIgYTExeS1pY29uXG4gICAqIGZhbHNlOiByZW5kZXIgd2Fsay1pY29uXG4gICAqIGRlZmF1bHQ6IHJlbmRlciB3YWxrLWljb25cbiAgICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ExMXktZm9vdHBhdGgnLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhMTF5Rm9vdHBhdGg/OiBib29sZWFuO1xuXG4gIC8qKiBBIGNvbmZpZ3VyZWQgZGF0ZSB3aGljaCBhY3RzIGFzIHRoZSBjdXJyZW50IGRhdGUgaW5zdGVhZCBvZiB0aGUgcmVhbCBjdXJyZW50IGRhdGUuIFJlY29tbWVuZGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IG5vdyh2YWx1ZTogU2JiRGF0ZUxpa2UgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9ub3cgPSBkZWZhdWx0RGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKGRlZmF1bHREYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgbm93KCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9ub3cgPz8gbmV3IERhdGUoKTtcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9oYXNDb250ZW50U2xvdDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5faGFzQ29udGVudFNsb3QgPSBCb29sZWFuKHRoaXMucXVlcnlTZWxlY3Rvcj8uKCdbc2xvdD1cImNvbnRlbnRcIl0nKSk7XG4gIH1cblxuICAvKiogIHJlbmRlcnMgdGhlIGRhdGUgb2YgdGhlIGpvdXJuZXkgb3IgaWYgaXQgaXMgdGhlIGN1cnJlbnQgb3IgbmV4dCBkYXkgKi9cbiAgcHJpdmF0ZSBfcmVuZGVySm91cm5leVN0YXJ0KFxuICAgIGRlcGFydHVyZVRpbWU6IERhdGUgfCB1bmRlZmluZWQsXG4gICAgZHVyYXRpb246IG51bWJlciB8IHVuZGVmaW5lZCxcbiAgKTogVGVtcGxhdGVSZXN1bHQgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGRhdGVBZGFwdGVyID0gZGVmYXVsdERhdGVBZGFwdGVyO1xuICAgIGNvbnN0IGR1cmF0aW9uT2JqID0gZHVyYXRpb24gPyBkdXJhdGlvblRvVGltZShkdXJhdGlvbiwgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCkgOiBudWxsO1xuXG4gICAgaWYgKGlzVmFsaWQoZGVwYXJ0dXJlVGltZSkpIHtcbiAgICAgIHJldHVybiBodG1sYFxuICAgICAgICA8dGltZSBkYXRldGltZT0ke2Zvcm1hdChkZXBhcnR1cmVUaW1lISwgJ2QnKSArICcgJyArIGZvcm1hdChkZXBhcnR1cmVUaW1lISwgJ00nKX0+XG4gICAgICAgICAgJHtkYXRlQWRhcHRlci5mb3JtYXQoZGVwYXJ0dXJlVGltZSkucmVwbGFjZSgnLCcsICcuJyl9PC90aW1lXG4gICAgICAgID4ke2R1cmF0aW9uICYmIGR1cmF0aW9uID4gMFxuICAgICAgICAgID8gaHRtbGAsPHRpbWU+XG4gICAgICAgICAgICAgICAgPHNiYi1zY3JlZW4tcmVhZGVyLW9ubHk+XG4gICAgICAgICAgICAgICAgICAke2kxOG5UcmlwRHVyYXRpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7ZHVyYXRpb25PYmohLmxvbmd9XG4gICAgICAgICAgICAgICAgPC9zYmItc2NyZWVuLXJlYWRlci1vbmx5PlxuICAgICAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiR7ZHVyYXRpb25PYmohLnNob3J0fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC90aW1lPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICBgO1xuICAgIH1cbiAgICByZXR1cm47XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJKb3VybmV5Vmlhcyh2aWFzOiBzdHJpbmdbXSk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBzbGljZWRWaWFzID0gdmlhcy5zbGljZSgwLCA1KTtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X192aWEtYmxvY2tcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X192aWEtdGV4dFwiPlZpYTwvc3Bhbj5cbiAgICAgICAgPHVsIGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fdmlhc1wiIHJvbGU9JHt2aWFzLmxlbmd0aCA8PSAxID8gJ3ByZXNlbnRhdGlvbicgOiBub3RoaW5nfT5cbiAgICAgICAgICAke3NsaWNlZFZpYXMubWFwKFxuICAgICAgICAgICAgKHZpYSwgaW5kZXgpID0+XG4gICAgICAgICAgICAgIGh0bWxgPGxpIGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeV9fdmlhXCI+XG4gICAgICAgICAgICAgICAgJHt2aWF9JHtpbmRleCAhPT0gc2xpY2VkVmlhcy5sZW5ndGggLSAxICYmIGluZGV4IDwgNFxuICAgICAgICAgICAgICAgICAgPyBodG1sYDxzcGFuPiw8L3NwYW4+YFxuICAgICAgICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAgICAgICA8L2xpPmAsXG4gICAgICAgICAgKX1cbiAgICAgICAgPC91bD5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJKb3VybmV5SW5mb3JtYXRpb24odHJpcDogSW50ZXJmYWNlU2JiSm91cm5leVN1bW1hcnlBdHRyaWJ1dGVzKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IHsgdmlhcywgZHVyYXRpb24sIGRlcGFydHVyZVdhbGssIGRlcGFydHVyZSwgYXJyaXZhbFdhbGssIGFycml2YWwsIGxlZ3MgfSA9IHRyaXAgfHwge307XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXY+XG4gICAgICAgICR7dmlhcyAmJiB2aWFzLmxlbmd0aCA+IDAgPyB0aGlzLl9yZW5kZXJKb3VybmV5Vmlhcyh2aWFzKSA6IG5vdGhpbmd9XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X19kYXRlXCI+XG4gICAgICAgICAgJHt0aGlzLl9yZW5kZXJKb3VybmV5U3RhcnQocmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhkZXBhcnR1cmUpLCBkdXJhdGlvbil9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c2JiLXBlYXJsLWNoYWluLXRpbWVcbiAgICAgICAgICAuYXJyaXZhbFRpbWU9JHthcnJpdmFsfVxuICAgICAgICAgIC5kZXBhcnR1cmVUaW1lPSR7ZGVwYXJ0dXJlfVxuICAgICAgICAgIC5kZXBhcnR1cmVXYWxrPSR7ZGVwYXJ0dXJlV2Fsa31cbiAgICAgICAgICAuYXJyaXZhbFdhbGs9JHthcnJpdmFsV2Fsa31cbiAgICAgICAgICAubGVncz0ke2xlZ3N9XG4gICAgICAgICAgLmRpc2FibGVBbmltYXRpb249JHt0aGlzLmRpc2FibGVBbmltYXRpb259XG4gICAgICAgICAgLmExMXlGb290cGF0aD0ke3RoaXMuYTExeUZvb3RwYXRofVxuICAgICAgICAgIC5ub3c9JHt0aGlzLm5vd31cbiAgICAgICAgPjwvc2JiLXBlYXJsLWNoYWluLXRpbWU+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgeyBvcmlnaW4sIGRlc3RpbmF0aW9uIH0gPSB0aGlzLnRyaXAgfHwge307XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLWpvdXJuZXktc3VtbWFyeVwiPlxuICAgICAgICAke29yaWdpblxuICAgICAgICAgID8gaHRtbGA8c2JiLWpvdXJuZXktaGVhZGVyXG4gICAgICAgICAgICAgIHNpemU9XCJsXCJcbiAgICAgICAgICAgICAgLmxldmVsPSR7dGhpcy5oZWFkZXJMZXZlbCB8fCBub3RoaW5nfVxuICAgICAgICAgICAgICAub3JpZ2luPSR7b3JpZ2lufVxuICAgICAgICAgICAgICAuZGVzdGluYXRpb249JHtkZXN0aW5hdGlvbn1cbiAgICAgICAgICAgICAgLnJvdW5kVHJpcD0ke3RoaXMucm91bmRUcmlwID8/IG5vdGhpbmd9XG4gICAgICAgICAgICA+PC9zYmItam91cm5leS1oZWFkZXI+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgJHt0aGlzLl9yZW5kZXJKb3VybmV5SW5mb3JtYXRpb24odGhpcy50cmlwKX1cbiAgICAgICAgJHt0aGlzLnRyaXBCYWNrXG4gICAgICAgICAgPyBodG1sYDxkaXY+XG4gICAgICAgICAgICAgIDxzYmItZGl2aWRlciBjbGFzcz1cInNiYi1qb3VybmV5LXN1bW1hcnlfX2RpdmlkZXJcIj48L3NiYi1kaXZpZGVyPlxuICAgICAgICAgICAgICAke3RoaXMuX3JlbmRlckpvdXJuZXlJbmZvcm1hdGlvbih0aGlzLnRyaXBCYWNrKX1cbiAgICAgICAgICAgIDwvZGl2PmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICR7dGhpcy5faGFzQ29udGVudFNsb3RcbiAgICAgICAgICA/IGh0bWxgIDxkaXYgY2xhc3M9XCJzYmItam91cm5leS1zdW1tYXJ5X19zbG90XCI+XG4gICAgICAgICAgICAgIDxzbG90IG5hbWU9XCJjb250ZW50XCI+PC9zbG90PlxuICAgICAgICAgICAgPC9kaXY+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1qb3VybmV5LXN1bW1hcnknOiBTYmJKb3VybmV5U3VtbWFyeUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1h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
@@ -7,14 +7,7 @@ import { removeTimezoneFromISOTimeString } from "./core/datetime.js";
7
7
  import { getDepartureArrivalTimeAttribute, isRideLeg } from "./core/timetable.js";
8
8
  import "./pearl-chain.js";
9
9
  import { f as format } from "./format-DTy5_IOt.js";
10
- const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
11
- /*
12
- * SBB table mixin
13
- * Notes:
14
- * We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
15
- * Therefore, we have to build the grid avoiding double borders.
16
- */
17
- *,
10
+ const style = css`*,
18
11
  ::before,
19
12
  ::after {
20
13
  box-sizing: border-box;
@@ -211,4 +204,4 @@ SbbPearlChainTimeElement = __decorateClass([
211
204
  export {
212
205
  SbbPearlChainTimeElement
213
206
  };
214
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4tdGltZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi10aW1lL3BlYXJsLWNoYWluLXRpbWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB7XG4gIGkxOG5BcnJpdmFsLFxuICBpMThuRGVwYXJ0dXJlLFxuICBpMThuVHJhbnNmZXJQcm9jZWR1cmVzLFxufSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlTGlrZSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy90eXBlcyc7XG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50LCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nIH0gZnJvbSAnLi4vY29yZS9kYXRldGltZS5qcyc7XG5pbXBvcnQgdHlwZSB7IExlZywgUHRSaWRlTGVnIH0gZnJvbSAnLi4vY29yZS90aW1ldGFibGUuanMnO1xuaW1wb3J0IHsgZ2V0RGVwYXJ0dXJlQXJyaXZhbFRpbWVBdHRyaWJ1dGUsIGlzUmlkZUxlZyB9IGZyb20gJy4uL2NvcmUvdGltZXRhYmxlLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vcGVhcmwtY2hhaW4tdGltZS5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL3BlYXJsLWNoYWluLmpzJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGBzYmItcGVhcmwtY2hhaW5gLCBpdCBkaXNwbGF5cyB3YWxrIHRpbWUgaW5mb3JtYXRpb24uXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItcGVhcmwtY2hhaW4tdGltZScpXG5leHBvcnQgY2xhc3MgU2JiUGVhcmxDaGFpblRpbWVFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKlxuICAgKiBkZWZpbmUgdGhlIGxlZ3Mgb2YgdGhlIHBlYXJsLWNoYWluLlxuICAgKiBGb3JtYXQ6XG4gICAqIGB7XCJsZWdzXCI6IFt7XCJkdXJhdGlvblwiOiAyNX0sIC4uLl19YFxuICAgKiBgZHVyYXRpb25gIGluIG1pbnV0ZXMuIER1cmF0aW9uIG9mIHRoZSBsZWcgaXMgcmVsYXRpdmVcbiAgICogdG8gdGhlIHRvdGFsIHRyYXZlbCB0aW1lLiBFeGFtcGxlOiBkZXBhcnR1cmUgMTY6MzAsIGNoYW5nZSBhdCAxNjo0MCxcbiAgICogYXJyaXZhbCBhdCAxNzowMC4gU28gdGhlIGNoYW5nZSBzaG91bGQgaGF2ZSBhIGR1cmF0aW9uIG9mIDMzLjMzJS5cbiAgICovXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEFycmF5IH0pIHB1YmxpYyBsZWdzITogKExlZyB8IFB0UmlkZUxlZylbXTtcblxuICAvKiogUHJvcCB0byByZW5kZXIgdGhlIGRlcGFydHVyZSB0aW1lIC0gd2lsbCBiZSBmb3JtYXR0ZWQgYXMgXCJIOm1tXCIgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGVwYXJ0dXJlLXRpbWUnIH0pIHB1YmxpYyBkZXBhcnR1cmVUaW1lPzogc3RyaW5nO1xuXG4gIC8qKiBQcm9wIHRvIHJlbmRlciB0aGUgYXJyaXZhbCB0aW1lIC0gd2lsbCBiZSBmb3JtYXR0ZWQgYXMgXCJIOm1tXCIgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYXJyaXZhbC10aW1lJyB9KSBwdWJsaWMgYXJyaXZhbFRpbWU/OiBzdHJpbmc7XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHRoZSB3YWxrIHRpbWUgKGluIG1pbnV0ZXMpIGJlZm9yZSBkZXBhcnR1cmUgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGVwYXJ0dXJlLXdhbGsnLCB0eXBlOiBOdW1iZXIgfSkgcHVibGljIGRlcGFydHVyZVdhbGs/OiBudW1iZXI7XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHRoZSB3YWxrIHRpbWUgKGluIG1pbnV0ZXMpIGFmdGVyIGFycml2YWwgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYXJyaXZhbC13YWxrJywgdHlwZTogTnVtYmVyIH0pIHB1YmxpYyBhcnJpdmFsV2Fsaz86IG51bWJlcjtcblxuICAvKipcbiAgICogUGVyIGRlZmF1bHQsIHRoZSBjdXJyZW50IGxvY2F0aW9uIGhhcyBhIHB1bHNhdGluZyBhbmltYXRpb24uIFlvdSBjYW5cbiAgICogZGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdpdGggdGhpcyBwcm9wZXJ0eS5cbiAgICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Rpc2FibGUtYW5pbWF0aW9uJywgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgZGlzYWJsZUFuaW1hdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHdoZWVsY2hhaXItc21hbGwgaW5zdGVhZCBvZiB3YWxrLXNtYWxsICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ExMXktZm9vdHBhdGgnLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhMTF5Rm9vdHBhdGg/OiBib29sZWFuO1xuXG4gIC8qKiBBIGNvbmZpZ3VyZWQgZGF0ZSB3aGljaCBhY3RzIGFzIHRoZSBjdXJyZW50IGRhdGUgaW5zdGVhZCBvZiB0aGUgcmVhbCBjdXJyZW50IGRhdGUuIFJlY29tbWVuZGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IG5vdyh2YWx1ZTogU2JiRGF0ZUxpa2UgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9ub3cgPSBkZWZhdWx0RGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKGRlZmF1bHREYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgbm93KCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9ub3cgPz8gbmV3IERhdGUoKTtcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgZGVwYXJ0dXJlOiBEYXRlIHwgdW5kZWZpbmVkID0gdGhpcy5kZXBhcnR1cmVUaW1lXG4gICAgICA/IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcodGhpcy5kZXBhcnR1cmVUaW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgYXJyaXZhbDogRGF0ZSB8IHVuZGVmaW5lZCA9IHRoaXMuYXJyaXZhbFRpbWVcbiAgICAgID8gcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyh0aGlzLmFycml2YWxUaW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCB7IHJlbmRlckRlcGFydHVyZVRpbWVBdHRyaWJ1dGUsIHJlbmRlckFycml2YWxUaW1lQXR0cmlidXRlIH0gPVxuICAgICAgZ2V0RGVwYXJ0dXJlQXJyaXZhbFRpbWVBdHRyaWJ1dGUoXG4gICAgICAgIHRoaXMubGVncyxcbiAgICAgICAgdGhpcy5kZXBhcnR1cmVXYWxrIHx8IDAsXG4gICAgICAgIHRoaXMuYXJyaXZhbFdhbGsgfHwgMCxcbiAgICAgICAgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCxcbiAgICAgICAgdGhpcy5hMTF5Rm9vdHBhdGgsXG4gICAgICApO1xuXG4gICAgY29uc3QgcmlkZUxlZ3MgPSB0aGlzLmxlZ3M/LmZpbHRlcigobGVnKSA9PiBpc1JpZGVMZWcobGVnKSk7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lXCI+XG4gICAgICAgICR7cmVuZGVyRGVwYXJ0dXJlVGltZUF0dHJpYnV0ZSgpfVxuICAgICAgICAke2RlcGFydHVyZVxuICAgICAgICAgID8gaHRtbGA8dGltZSBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fdGltZS10aW1lXCIgZGF0ZXRpbWU9JHt0aGlzLmRlcGFydHVyZVRpbWUhfT5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCJcbiAgICAgICAgICAgICAgICA+JHtpMThuRGVwYXJ0dXJlW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfTombmJzcDs8L3NwYW5cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAke2Zvcm1hdChkZXBhcnR1cmUsICdISDptbScpfVxuICAgICAgICAgICAgPC90aW1lPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICR7cmlkZUxlZ3M/Lmxlbmd0aCA+IDFcbiAgICAgICAgICA/IGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCIgcm9sZT1cInBhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAke3JpZGVMZWdzPy5sZW5ndGggLSAxfSAke2kxOG5UcmFuc2ZlclByb2NlZHVyZXNbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgPHNiYi1wZWFybC1jaGFpblxuICAgICAgICAgIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lLWNoYWluXCJcbiAgICAgICAgICAubGVncz0ke3RoaXMubGVnc31cbiAgICAgICAgICAuZGlzYWJsZUFuaW1hdGlvbj0ke3RoaXMuZGlzYWJsZUFuaW1hdGlvbn1cbiAgICAgICAgICAubm93PSR7dGhpcy5ub3d9XG4gICAgICAgID48L3NiYi1wZWFybC1jaGFpbj5cbiAgICAgICAgJHthcnJpdmFsXG4gICAgICAgICAgPyBodG1sYDx0aW1lIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lLXRpbWVcIiBkYXRldGltZT0ke3RoaXMuYXJyaXZhbFRpbWUhfT5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCJcbiAgICAgICAgICAgICAgICA+JHtpMThuQXJyaXZhbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX06Jm5ic3A7PC9zcGFuXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgJHtmb3JtYXQoYXJyaXZhbCwgJ0hIOm1tJyl9XG4gICAgICAgICAgICA8L3RpbWU+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgJHtyZW5kZXJBcnJpdmFsVGltZUF0dHJpYnV0ZSgpfVxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXBlYXJsLWNoYWluLXRpbWUnOiBTYmJQZWFybENoYWluVGltZUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
207
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4tdGltZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi10aW1lL3BlYXJsLWNoYWluLXRpbWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB7XG4gIGkxOG5BcnJpdmFsLFxuICBpMThuRGVwYXJ0dXJlLFxuICBpMThuVHJhbnNmZXJQcm9jZWR1cmVzLFxufSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlTGlrZSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy90eXBlcyc7XG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBMaXRFbGVtZW50LCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nIH0gZnJvbSAnLi4vY29yZS9kYXRldGltZS5qcyc7XG5pbXBvcnQgdHlwZSB7IExlZywgUHRSaWRlTGVnIH0gZnJvbSAnLi4vY29yZS90aW1ldGFibGUuanMnO1xuaW1wb3J0IHsgZ2V0RGVwYXJ0dXJlQXJyaXZhbFRpbWVBdHRyaWJ1dGUsIGlzUmlkZUxlZyB9IGZyb20gJy4uL2NvcmUvdGltZXRhYmxlLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vcGVhcmwtY2hhaW4tdGltZS5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL3BlYXJsLWNoYWluLmpzJztcblxuLyoqXG4gKiBDb21iaW5lZCB3aXRoIGBzYmItcGVhcmwtY2hhaW5gLCBpdCBkaXNwbGF5cyB3YWxrIHRpbWUgaW5mb3JtYXRpb24uXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItcGVhcmwtY2hhaW4tdGltZScpXG5leHBvcnQgY2xhc3MgU2JiUGVhcmxDaGFpblRpbWVFbGVtZW50IGV4dGVuZHMgTGl0RWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKlxuICAgKiBkZWZpbmUgdGhlIGxlZ3Mgb2YgdGhlIHBlYXJsLWNoYWluLlxuICAgKiBGb3JtYXQ6XG4gICAqIGB7XCJsZWdzXCI6IFt7XCJkdXJhdGlvblwiOiAyNX0sIC4uLl19YFxuICAgKiBgZHVyYXRpb25gIGluIG1pbnV0ZXMuIER1cmF0aW9uIG9mIHRoZSBsZWcgaXMgcmVsYXRpdmVcbiAgICogdG8gdGhlIHRvdGFsIHRyYXZlbCB0aW1lLiBFeGFtcGxlOiBkZXBhcnR1cmUgMTY6MzAsIGNoYW5nZSBhdCAxNjo0MCxcbiAgICogYXJyaXZhbCBhdCAxNzowMC4gU28gdGhlIGNoYW5nZSBzaG91bGQgaGF2ZSBhIGR1cmF0aW9uIG9mIDMzLjMzJS5cbiAgICovXG4gIEBwcm9wZXJ0eSh7IHR5cGU6IEFycmF5IH0pIHB1YmxpYyBsZWdzITogKExlZyB8IFB0UmlkZUxlZylbXTtcblxuICAvKiogUHJvcCB0byByZW5kZXIgdGhlIGRlcGFydHVyZSB0aW1lIC0gd2lsbCBiZSBmb3JtYXR0ZWQgYXMgXCJIOm1tXCIgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGVwYXJ0dXJlLXRpbWUnIH0pIHB1YmxpYyBkZXBhcnR1cmVUaW1lPzogc3RyaW5nO1xuXG4gIC8qKiBQcm9wIHRvIHJlbmRlciB0aGUgYXJyaXZhbCB0aW1lIC0gd2lsbCBiZSBmb3JtYXR0ZWQgYXMgXCJIOm1tXCIgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYXJyaXZhbC10aW1lJyB9KSBwdWJsaWMgYXJyaXZhbFRpbWU/OiBzdHJpbmc7XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHRoZSB3YWxrIHRpbWUgKGluIG1pbnV0ZXMpIGJlZm9yZSBkZXBhcnR1cmUgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGVwYXJ0dXJlLXdhbGsnLCB0eXBlOiBOdW1iZXIgfSkgcHVibGljIGRlcGFydHVyZVdhbGs/OiBudW1iZXI7XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHRoZSB3YWxrIHRpbWUgKGluIG1pbnV0ZXMpIGFmdGVyIGFycml2YWwgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYXJyaXZhbC13YWxrJywgdHlwZTogTnVtYmVyIH0pIHB1YmxpYyBhcnJpdmFsV2Fsaz86IG51bWJlcjtcblxuICAvKipcbiAgICogUGVyIGRlZmF1bHQsIHRoZSBjdXJyZW50IGxvY2F0aW9uIGhhcyBhIHB1bHNhdGluZyBhbmltYXRpb24uIFlvdSBjYW5cbiAgICogZGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdpdGggdGhpcyBwcm9wZXJ0eS5cbiAgICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Rpc2FibGUtYW5pbWF0aW9uJywgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgZGlzYWJsZUFuaW1hdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqIE9wdGlvbmFsIHByb3AgdG8gcmVuZGVyIHdoZWVsY2hhaXItc21hbGwgaW5zdGVhZCBvZiB3YWxrLXNtYWxsICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ExMXktZm9vdHBhdGgnLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhMTF5Rm9vdHBhdGg/OiBib29sZWFuO1xuXG4gIC8qKiBBIGNvbmZpZ3VyZWQgZGF0ZSB3aGljaCBhY3RzIGFzIHRoZSBjdXJyZW50IGRhdGUgaW5zdGVhZCBvZiB0aGUgcmVhbCBjdXJyZW50IGRhdGUuIFJlY29tbWVuZGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IG5vdyh2YWx1ZTogU2JiRGF0ZUxpa2UgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9ub3cgPSBkZWZhdWx0RGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKGRlZmF1bHREYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgbm93KCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9ub3cgPz8gbmV3IERhdGUoKTtcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgZGVwYXJ0dXJlOiBEYXRlIHwgdW5kZWZpbmVkID0gdGhpcy5kZXBhcnR1cmVUaW1lXG4gICAgICA/IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcodGhpcy5kZXBhcnR1cmVUaW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgYXJyaXZhbDogRGF0ZSB8IHVuZGVmaW5lZCA9IHRoaXMuYXJyaXZhbFRpbWVcbiAgICAgID8gcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyh0aGlzLmFycml2YWxUaW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCB7IHJlbmRlckRlcGFydHVyZVRpbWVBdHRyaWJ1dGUsIHJlbmRlckFycml2YWxUaW1lQXR0cmlidXRlIH0gPVxuICAgICAgZ2V0RGVwYXJ0dXJlQXJyaXZhbFRpbWVBdHRyaWJ1dGUoXG4gICAgICAgIHRoaXMubGVncyxcbiAgICAgICAgdGhpcy5kZXBhcnR1cmVXYWxrIHx8IDAsXG4gICAgICAgIHRoaXMuYXJyaXZhbFdhbGsgfHwgMCxcbiAgICAgICAgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCxcbiAgICAgICAgdGhpcy5hMTF5Rm9vdHBhdGgsXG4gICAgICApO1xuXG4gICAgY29uc3QgcmlkZUxlZ3MgPSB0aGlzLmxlZ3M/LmZpbHRlcigobGVnKSA9PiBpc1JpZGVMZWcobGVnKSk7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lXCI+XG4gICAgICAgICR7cmVuZGVyRGVwYXJ0dXJlVGltZUF0dHJpYnV0ZSgpfVxuICAgICAgICAke2RlcGFydHVyZVxuICAgICAgICAgID8gaHRtbGA8dGltZSBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fdGltZS10aW1lXCIgZGF0ZXRpbWU9JHt0aGlzLmRlcGFydHVyZVRpbWUhfT5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCJcbiAgICAgICAgICAgICAgICA+JHtpMThuRGVwYXJ0dXJlW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfTombmJzcDs8L3NwYW5cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAke2Zvcm1hdChkZXBhcnR1cmUsICdISDptbScpfVxuICAgICAgICAgICAgPC90aW1lPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICR7cmlkZUxlZ3M/Lmxlbmd0aCA+IDFcbiAgICAgICAgICA/IGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCIgcm9sZT1cInBhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAke3JpZGVMZWdzPy5sZW5ndGggLSAxfSAke2kxOG5UcmFuc2ZlclByb2NlZHVyZXNbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgPHNiYi1wZWFybC1jaGFpblxuICAgICAgICAgIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lLWNoYWluXCJcbiAgICAgICAgICAubGVncz0ke3RoaXMubGVnc31cbiAgICAgICAgICAuZGlzYWJsZUFuaW1hdGlvbj0ke3RoaXMuZGlzYWJsZUFuaW1hdGlvbn1cbiAgICAgICAgICAubm93PSR7dGhpcy5ub3d9XG4gICAgICAgID48L3NiYi1wZWFybC1jaGFpbj5cbiAgICAgICAgJHthcnJpdmFsXG4gICAgICAgICAgPyBodG1sYDx0aW1lIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX190aW1lLXRpbWVcIiBkYXRldGltZT0ke3RoaXMuYXJyaXZhbFRpbWUhfT5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCJcbiAgICAgICAgICAgICAgICA+JHtpMThuQXJyaXZhbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX06Jm5ic3A7PC9zcGFuXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgJHtmb3JtYXQoYXJyaXZhbCwgJ0hIOm1tJyl9XG4gICAgICAgICAgICA8L3RpbWU+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgJHtyZW5kZXJBcnJpdmFsVGltZUF0dHJpYnV0ZSgpfVxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXBlYXJsLWNoYWluLXRpbWUnOiBTYmJQZWFybENoYWluVGltZUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -1,13 +1,6 @@
1
1
  import { css, LitElement, html, nothing } from "lit";
2
2
  import { property, customElement } from "lit/decorators.js";
3
- const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
4
- /*
5
- * SBB table mixin
6
- * Notes:
7
- * We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
8
- * Therefore, we have to build the grid avoiding double borders.
9
- */
10
- *,
3
+ const style = css`*,
11
4
  ::before,
12
5
  ::after {
13
6
  box-sizing: border-box;
@@ -362,4 +355,4 @@ SbbPearlChainVerticalItemElement = __decorateClass([
362
355
  export {
363
356
  SbbPearlChainVerticalItemElement
364
357
  };
365
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtL3BlYXJsLWNoYWluLXZlcnRpY2FsLWl0ZW0udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS5zY3NzP2xpdCZpbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBMaW5lVHlwZSA9ICdkb3R0ZWQnIHwgJ3N0YW5kYXJkJyB8ICd0aGluJztcblxuZXhwb3J0IHR5cGUgQnVsbGV0VHlwZSA9ICdkZWZhdWx0JyB8ICdwYXN0JyB8ICdpcnJlbGV2YW50JyB8ICdza2lwcGVkJyB8ICdkaXNydXB0aW9uJztcblxuZXhwb3J0IHR5cGUgTGluZUNvbG9yID0gJ2RlZmF1bHQnIHwgJ3Bhc3QnIHwgJ2Rpc3J1cHRpb24nIHwgJ3dhbGsnO1xuXG5leHBvcnQgdHlwZSBCdWxsZXRTaXplID0gJ3N0YXJ0LWVuZCcgfCAnc3RvcCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVhcmxDaGFpblZlcnRpY2FsSXRlbUF0dHJpYnV0ZXMge1xuICBsaW5lVHlwZTogTGluZVR5cGU7XG4gIGxpbmVDb2xvcjogTGluZUNvbG9yO1xuICBidWxsZXRUeXBlPzogQnVsbGV0VHlwZTtcbiAgbWluSGVpZ2h0OiBudW1iZXI7XG4gIGhpZGVMaW5lOiBib29sZWFuO1xuICBidWxsZXRTaXplOiBCdWxsZXRTaXplO1xuICBwb3NpdGlvbj86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBkZXRhaWxzIGFib3V0IGNvbm5lY3Rpb24gYmV0d2VlbiBzdGF0aW9ucy5cbiAqXG4gKiBAc2xvdCBsZWZ0IC0gQ29udGVudCBvZiB0aGUgbGVmdCBzaWRlIG9mIHRoZSBpdGVtXG4gKiBAc2xvdCByaWdodCAtIENvbnRlbnQgb2YgdGhlIHJpZ2h0IHNpZGUgb2YgdGhlIGl0ZW1cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtJylcbmV4cG9ydCBjbGFzcyBTYmJQZWFybENoYWluVmVydGljYWxJdGVtRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKiogVGhlIHBlYXJsQ2hhaW5WZXJ0aWNhbEl0ZW1BdHRyaWJ1dGVzIFByb3AgZm9yIHN0eWxpbmcgdGhlIGJ1bGxldHMgYW5kIGxpbmUuKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS1hdHRyaWJ1dGVzJywgdHlwZTogT2JqZWN0IH0pXG4gIHB1YmxpYyBwZWFybENoYWluVmVydGljYWxJdGVtQXR0cmlidXRlcyE6IFBlYXJsQ2hhaW5WZXJ0aWNhbEl0ZW1BdHRyaWJ1dGVzO1xuXG4gIC8qKiBJZiB0cnVlLCB0aGUgcG9zaXRpb24gd29uJ3QgYmUgYW5pbWF0ZWQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Rpc2FibGUtYW5pbWF0aW9uJywgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgZGlzYWJsZUFuaW1hdGlvbj86IGJvb2xlYW47XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgeyBidWxsZXRUeXBlLCBsaW5lVHlwZSwgbGluZUNvbG9yLCBoaWRlTGluZSwgbWluSGVpZ2h0LCBidWxsZXRTaXplLCBwb3NpdGlvbiB9ID1cbiAgICAgIHRoaXMucGVhcmxDaGFpblZlcnRpY2FsSXRlbUF0dHJpYnV0ZXMgfHwge307XG5cbiAgICBjb25zdCBidWxsZXRUeXBlQ2xhc3MgPVxuICAgICAgcG9zaXRpb24gJiYgcG9zaXRpb24gPiAwICYmIHBvc2l0aW9uIDw9IDEwMFxuICAgICAgICA/ICdzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fYnVsbGV0LS1wYXN0J1xuICAgICAgICA6IGBzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fYnVsbGV0LS0ke2J1bGxldFR5cGV9YDtcblxuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19jb2x1bW5cIiBzdHlsZT1cImhlaWdodDogJHttaW5IZWlnaHR9cHg7XCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJsZWZ0XCI+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluLXZlcnRpY2FsLWl0ZW1fX2NvbHVtbiBzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fY29sdW1uLS1taWRkbGVcIlxuICAgICAgPlxuICAgICAgICAkeyFoaWRlTGluZVxuICAgICAgICAgID8gaHRtbGA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPVwiLS1zYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS1sZWctc3RhdHVzOiR7cG9zaXRpb259JTtcIlxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19saW5lIHNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19saW5lLS0ke2xpbmVUeXBlfSBzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fbGluZS0tJHtsaW5lQ29sb3J9XCJcbiAgICAgICAgICAgID48L2Rpdj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAke2J1bGxldFR5cGVcbiAgICAgICAgICA/IGh0bWxgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19idWxsZXQgIHNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19idWxsZXQtLSR7YnVsbGV0U2l6ZX0gJHtidWxsZXRUeXBlQ2xhc3N9XCJcbiAgICAgICAgICAgID48L2Rpdj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAke3Bvc2l0aW9uICYmIHBvc2l0aW9uID4gMFxuICAgICAgICAgID8gaHRtbGA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPVwiLS1zYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS1wb3NpdGlvbjoke3Bvc2l0aW9ufSU7XCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fYnVsbGV0LS1wb3NpdGlvblwiXG4gICAgICAgICAgICA+PC9kaXY+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgIDwvZGl2PlxuICAgICAgPHNsb3QgbmFtZT1cInJpZ2h0XCI+PC9zbG90PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtJzogU2JiUGVhcmxDaGFpblZlcnRpY2FsSXRlbUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQStCYSxJQUFBLG1DQUFOLGNBQStDLFdBQVc7QUFBQSxFQVc1QyxTQUF5QjtBQUNwQyxVQUFBLEVBQUUsWUFBWSxVQUFVLFdBQVcsVUFBVSxXQUFXLFlBQVksU0FBUyxJQUNqRixLQUFLLG9DQUFvQyxDQUFBO0FBRXJDLFVBQUEsa0JBQ0osWUFBWSxXQUFXLEtBQUssWUFBWSxNQUNwQyxnREFDQSwwQ0FBMEMsVUFBVTtBQUVuRCxXQUFBO0FBQUEsMEVBQytELFNBQVM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxVQU96RSxDQUFDLFdBQ0M7QUFBQSxrRUFDc0QsUUFBUTtBQUFBLGdHQUNzQixRQUFRLHlDQUF5QyxTQUFTO0FBQUEsdUJBRTlJLE9BQU87QUFBQSxVQUNULGFBQ0U7QUFBQSxxR0FDeUYsVUFBVSxJQUFJLGVBQWU7QUFBQSx1QkFFdEgsT0FBTztBQUFBLFVBQ1QsWUFBWSxXQUFXLElBQ3JCO0FBQUEsZ0VBQ29ELFFBQVE7QUFBQTtBQUFBLHVCQUc1RCxPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFJakI7QUFDRjtBQWpEYSxpQ0FDWSxTQUF5QjtBQUl6QyxnQkFBQTtBQUFBLEVBRE4sU0FBUyxFQUFFLFdBQVcsd0NBQXdDLE1BQU0sUUFBUTtBQUFBLEdBSmxFLGlDQUtKLFdBQUEsb0NBQUEsQ0FBQTtBQUlBLGdCQUFBO0FBQUEsRUFETixTQUFTLEVBQUUsV0FBVyxxQkFBcUIsU0FBUyxNQUFNLE1BQU0sU0FBUztBQUFBLEdBUi9ELGlDQVNKLFdBQUEsb0JBQUEsQ0FBQTtBQVRJLG1DQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLCtCQUErQjtBQUFBLEdBQ2pDLGdDQUFBOyJ9
358
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtL3BlYXJsLWNoYWluLXZlcnRpY2FsLWl0ZW0udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS5zY3NzP2xpdCZpbmxpbmUnO1xuXG5leHBvcnQgdHlwZSBMaW5lVHlwZSA9ICdkb3R0ZWQnIHwgJ3N0YW5kYXJkJyB8ICd0aGluJztcblxuZXhwb3J0IHR5cGUgQnVsbGV0VHlwZSA9ICdkZWZhdWx0JyB8ICdwYXN0JyB8ICdpcnJlbGV2YW50JyB8ICdza2lwcGVkJyB8ICdkaXNydXB0aW9uJztcblxuZXhwb3J0IHR5cGUgTGluZUNvbG9yID0gJ2RlZmF1bHQnIHwgJ3Bhc3QnIHwgJ2Rpc3J1cHRpb24nIHwgJ3dhbGsnO1xuXG5leHBvcnQgdHlwZSBCdWxsZXRTaXplID0gJ3N0YXJ0LWVuZCcgfCAnc3RvcCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVhcmxDaGFpblZlcnRpY2FsSXRlbUF0dHJpYnV0ZXMge1xuICBsaW5lVHlwZTogTGluZVR5cGU7XG4gIGxpbmVDb2xvcjogTGluZUNvbG9yO1xuICBidWxsZXRUeXBlPzogQnVsbGV0VHlwZTtcbiAgbWluSGVpZ2h0OiBudW1iZXI7XG4gIGhpZGVMaW5lOiBib29sZWFuO1xuICBidWxsZXRTaXplOiBCdWxsZXRTaXplO1xuICBwb3NpdGlvbj86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBkZXRhaWxzIGFib3V0IGNvbm5lY3Rpb24gYmV0d2VlbiBzdGF0aW9ucy5cbiAqXG4gKiBAc2xvdCBsZWZ0IC0gQ29udGVudCBvZiB0aGUgbGVmdCBzaWRlIG9mIHRoZSBpdGVtXG4gKiBAc2xvdCByaWdodCAtIENvbnRlbnQgb2YgdGhlIHJpZ2h0IHNpZGUgb2YgdGhlIGl0ZW1cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtJylcbmV4cG9ydCBjbGFzcyBTYmJQZWFybENoYWluVmVydGljYWxJdGVtRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKiogVGhlIHBlYXJsQ2hhaW5WZXJ0aWNhbEl0ZW1BdHRyaWJ1dGVzIFByb3AgZm9yIHN0eWxpbmcgdGhlIGJ1bGxldHMgYW5kIGxpbmUuKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS1hdHRyaWJ1dGVzJywgdHlwZTogT2JqZWN0IH0pXG4gIHB1YmxpYyBwZWFybENoYWluVmVydGljYWxJdGVtQXR0cmlidXRlcyE6IFBlYXJsQ2hhaW5WZXJ0aWNhbEl0ZW1BdHRyaWJ1dGVzO1xuXG4gIC8qKiBJZiB0cnVlLCB0aGUgcG9zaXRpb24gd29uJ3QgYmUgYW5pbWF0ZWQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Rpc2FibGUtYW5pbWF0aW9uJywgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgZGlzYWJsZUFuaW1hdGlvbj86IGJvb2xlYW47XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgeyBidWxsZXRUeXBlLCBsaW5lVHlwZSwgbGluZUNvbG9yLCBoaWRlTGluZSwgbWluSGVpZ2h0LCBidWxsZXRTaXplLCBwb3NpdGlvbiB9ID1cbiAgICAgIHRoaXMucGVhcmxDaGFpblZlcnRpY2FsSXRlbUF0dHJpYnV0ZXMgfHwge307XG5cbiAgICBjb25zdCBidWxsZXRUeXBlQ2xhc3MgPVxuICAgICAgcG9zaXRpb24gJiYgcG9zaXRpb24gPiAwICYmIHBvc2l0aW9uIDw9IDEwMFxuICAgICAgICA/ICdzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fYnVsbGV0LS1wYXN0J1xuICAgICAgICA6IGBzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fYnVsbGV0LS0ke2J1bGxldFR5cGV9YDtcblxuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19jb2x1bW5cIiBzdHlsZT1cImhlaWdodDogJHttaW5IZWlnaHR9cHg7XCI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJsZWZ0XCI+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluLXZlcnRpY2FsLWl0ZW1fX2NvbHVtbiBzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fY29sdW1uLS1taWRkbGVcIlxuICAgICAgPlxuICAgICAgICAkeyFoaWRlTGluZVxuICAgICAgICAgID8gaHRtbGA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPVwiLS1zYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS1sZWctc3RhdHVzOiR7cG9zaXRpb259JTtcIlxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19saW5lIHNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19saW5lLS0ke2xpbmVUeXBlfSBzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fbGluZS0tJHtsaW5lQ29sb3J9XCJcbiAgICAgICAgICAgID48L2Rpdj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAke2J1bGxldFR5cGVcbiAgICAgICAgICA/IGh0bWxgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19idWxsZXQgIHNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtX19idWxsZXQtLSR7YnVsbGV0U2l6ZX0gJHtidWxsZXRUeXBlQ2xhc3N9XCJcbiAgICAgICAgICAgID48L2Rpdj5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAke3Bvc2l0aW9uICYmIHBvc2l0aW9uID4gMFxuICAgICAgICAgID8gaHRtbGA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPVwiLS1zYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbS1wb3NpdGlvbjoke3Bvc2l0aW9ufSU7XCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW4tdmVydGljYWwtaXRlbV9fYnVsbGV0LS1wb3NpdGlvblwiXG4gICAgICAgICAgICA+PC9kaXY+YFxuICAgICAgICAgIDogbm90aGluZ31cbiAgICAgIDwvZGl2PlxuICAgICAgPHNsb3QgbmFtZT1cInJpZ2h0XCI+PC9zbG90PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtJzogU2JiUGVhcmxDaGFpblZlcnRpY2FsSXRlbUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBK0JhLElBQUEsbUNBQU4sY0FBK0MsV0FBVztBQUFBLEVBVzVDLFNBQXlCO0FBQ3BDLFVBQUEsRUFBRSxZQUFZLFVBQVUsV0FBVyxVQUFVLFdBQVcsWUFBWSxTQUFTLElBQ2pGLEtBQUssb0NBQW9DLENBQUE7QUFFckMsVUFBQSxrQkFDSixZQUFZLFdBQVcsS0FBSyxZQUFZLE1BQ3BDLGdEQUNBLDBDQUEwQyxVQUFVO0FBRW5ELFdBQUE7QUFBQSwwRUFDK0QsU0FBUztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLFVBT3pFLENBQUMsV0FDQztBQUFBLGtFQUNzRCxRQUFRO0FBQUEsZ0dBQ3NCLFFBQVEseUNBQXlDLFNBQVM7QUFBQSx1QkFFOUksT0FBTztBQUFBLFVBQ1QsYUFDRTtBQUFBLHFHQUN5RixVQUFVLElBQUksZUFBZTtBQUFBLHVCQUV0SCxPQUFPO0FBQUEsVUFDVCxZQUFZLFdBQVcsSUFDckI7QUFBQSxnRUFDb0QsUUFBUTtBQUFBO0FBQUEsdUJBRzVELE9BQU87QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUlqQjtBQUNGO0FBakRhLGlDQUNZLFNBQXlCO0FBSXpDLGdCQUFBO0FBQUEsRUFETixTQUFTLEVBQUUsV0FBVyx3Q0FBd0MsTUFBTSxRQUFRO0FBQUEsR0FKbEUsaUNBS0osV0FBQSxvQ0FBQSxDQUFBO0FBSUEsZ0JBQUE7QUFBQSxFQUROLFNBQVMsRUFBRSxXQUFXLHFCQUFxQixTQUFTLE1BQU0sTUFBTSxTQUFTO0FBQUEsR0FSL0QsaUNBU0osV0FBQSxvQkFBQSxDQUFBO0FBVEksbUNBQU4sZ0JBQUE7QUFBQSxFQUROLGNBQWMsK0JBQStCO0FBQUEsR0FDakMsZ0NBQUE7In0=
@@ -1,13 +1,6 @@
1
1
  import { css, LitElement, html } from "lit";
2
2
  import { customElement } from "lit/decorators.js";
3
- const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
4
- /*
5
- * SBB table mixin
6
- * Notes:
7
- * We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
8
- * Therefore, we have to build the grid avoiding double borders.
9
- */
10
- *,
3
+ const style = css`*,
11
4
  ::before,
12
5
  ::after {
13
6
  box-sizing: border-box;
@@ -48,4 +41,4 @@ SbbPearlChainVerticalElement = __decorateClass([
48
41
  export {
49
42
  SbbPearlChainVerticalElement
50
43
  };
51
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4tdmVydGljYWwuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy1leHBlcmltZW50YWwvcGVhcmwtY2hhaW4tdmVydGljYWwvcGVhcmwtY2hhaW4tdmVydGljYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wZWFybC1jaGFpbi12ZXJ0aWNhbC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciB0aGUgYHNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtYCBjb21wb25lbnQuXG4gKlxuICogQHNsb3QgLSBUaGUgdW5uYW1lZCBzbG90IGlzIHVzZWQgZm9yIHRoZSBgc2JiLXBlYXJsLWNoYWluLXZlcnRpY2FsLWl0ZW1gIGNvbXBvbmVudC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbCcpXG5leHBvcnQgY2xhc3MgU2JiUGVhcmxDaGFpblZlcnRpY2FsRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW4tdmVydGljYWxcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXBlYXJsLWNoYWluLXZlcnRpY2FsJzogU2JiUGVhcmxDaGFpblZlcnRpY2FsRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZYSxJQUFBLCtCQUFOLGNBQTJDLFdBQVc7QUFBQSxFQUd4QyxTQUF5QjtBQUNuQyxXQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtUO0FBQ0Y7QUFWYSw2QkFDWSxTQUF5QjtBQURyQywrQkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYywwQkFBMEI7QUFBQSxHQUM1Qiw0QkFBQTsifQ==
44
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4tdmVydGljYWwuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy1leHBlcmltZW50YWwvcGVhcmwtY2hhaW4tdmVydGljYWwvcGVhcmwtY2hhaW4tdmVydGljYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9wZWFybC1jaGFpbi12ZXJ0aWNhbC5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciB0aGUgYHNiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbC1pdGVtYCBjb21wb25lbnQuXG4gKlxuICogQHNsb3QgLSBUaGUgdW5uYW1lZCBzbG90IGlzIHVzZWQgZm9yIHRoZSBgc2JiLXBlYXJsLWNoYWluLXZlcnRpY2FsLWl0ZW1gIGNvbXBvbmVudC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1wZWFybC1jaGFpbi12ZXJ0aWNhbCcpXG5leHBvcnQgY2xhc3MgU2JiUGVhcmxDaGFpblZlcnRpY2FsRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW4tdmVydGljYWxcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXBlYXJsLWNoYWluLXZlcnRpY2FsJzogU2JiUGVhcmxDaGFpblZlcnRpY2FsRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlhLElBQUEsK0JBQU4sY0FBMkMsV0FBVztBQUFBLEVBR3hDLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS1Q7QUFDRjtBQVZhLDZCQUNZLFNBQXlCO0FBRHJDLCtCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLDBCQUEwQjtBQUFBLEdBQzVCLDRCQUFBOyJ9
@@ -12,14 +12,7 @@ function isAfter(date, dateToCompare) {
12
12
  function isBefore(date, dateToCompare) {
13
13
  return +toDate(date) < +toDate(dateToCompare);
14
14
  }
15
- const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
16
- /*
17
- * SBB table mixin
18
- * Notes:
19
- * We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
20
- * Therefore, we have to build the grid avoiding double borders.
21
- */
22
- *,
15
+ const style = css`*,
23
16
  ::before,
24
17
  ::after {
25
18
  box-sizing: border-box;
@@ -609,4 +602,4 @@ SbbPearlChainElement = __decorateClass([
609
602
  export {
610
603
  SbbPearlChainElement
611
604
  };
612
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9kYXRlLWZucy9pc0FmdGVyLmpzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2RhdGUtZm5zL2lzQmVmb3JlLmpzIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi9wZWFybC1jaGFpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0b0RhdGUgfSBmcm9tIFwiLi90b0RhdGUuanNcIjtcblxuLyoqXG4gKiBAbmFtZSBpc0FmdGVyXG4gKiBAY2F0ZWdvcnkgQ29tbW9uIEhlbHBlcnNcbiAqIEBzdW1tYXJ5IElzIHRoZSBmaXJzdCBkYXRlIGFmdGVyIHRoZSBzZWNvbmQgb25lP1xuICpcbiAqIEBkZXNjcmlwdGlvblxuICogSXMgdGhlIGZpcnN0IGRhdGUgYWZ0ZXIgdGhlIHNlY29uZCBvbmU/XG4gKlxuICogQHBhcmFtIGRhdGUgLSBUaGUgZGF0ZSB0aGF0IHNob3VsZCBiZSBhZnRlciB0aGUgb3RoZXIgb25lIHRvIHJldHVybiB0cnVlXG4gKiBAcGFyYW0gZGF0ZVRvQ29tcGFyZSAtIFRoZSBkYXRlIHRvIGNvbXBhcmUgd2l0aFxuICpcbiAqIEByZXR1cm5zIFRoZSBmaXJzdCBkYXRlIGlzIGFmdGVyIHRoZSBzZWNvbmQgZGF0ZVxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBJcyAxMCBKdWx5IDE5ODkgYWZ0ZXIgMTEgRmVicnVhcnkgMTk4Nz9cbiAqIGNvbnN0IHJlc3VsdCA9IGlzQWZ0ZXIobmV3IERhdGUoMTk4OSwgNiwgMTApLCBuZXcgRGF0ZSgxOTg3LCAxLCAxMSkpXG4gKiAvLz0+IHRydWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQWZ0ZXIoZGF0ZSwgZGF0ZVRvQ29tcGFyZSkge1xuICByZXR1cm4gK3RvRGF0ZShkYXRlKSA+ICt0b0RhdGUoZGF0ZVRvQ29tcGFyZSk7XG59XG5cbi8vIEZhbGxiYWNrIGZvciBtb2R1bGFyaXplZCBpbXBvcnRzOlxuZXhwb3J0IGRlZmF1bHQgaXNBZnRlcjtcbiIsImltcG9ydCB7IHRvRGF0ZSB9IGZyb20gXCIuL3RvRGF0ZS5qc1wiO1xuXG4vKipcbiAqIEBuYW1lIGlzQmVmb3JlXG4gKiBAY2F0ZWdvcnkgQ29tbW9uIEhlbHBlcnNcbiAqIEBzdW1tYXJ5IElzIHRoZSBmaXJzdCBkYXRlIGJlZm9yZSB0aGUgc2Vjb25kIG9uZT9cbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqIElzIHRoZSBmaXJzdCBkYXRlIGJlZm9yZSB0aGUgc2Vjb25kIG9uZT9cbiAqXG4gKiBAcGFyYW0gZGF0ZSAtIFRoZSBkYXRlIHRoYXQgc2hvdWxkIGJlIGJlZm9yZSB0aGUgb3RoZXIgb25lIHRvIHJldHVybiB0cnVlXG4gKiBAcGFyYW0gZGF0ZVRvQ29tcGFyZSAtIFRoZSBkYXRlIHRvIGNvbXBhcmUgd2l0aFxuICpcbiAqIEByZXR1cm5zIFRoZSBmaXJzdCBkYXRlIGlzIGJlZm9yZSB0aGUgc2Vjb25kIGRhdGVcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gSXMgMTAgSnVseSAxOTg5IGJlZm9yZSAxMSBGZWJydWFyeSAxOTg3P1xuICogY29uc3QgcmVzdWx0ID0gaXNCZWZvcmUobmV3IERhdGUoMTk4OSwgNiwgMTApLCBuZXcgRGF0ZSgxOTg3LCAxLCAxMSkpXG4gKiAvLz0+IGZhbHNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0JlZm9yZShkYXRlLCBkYXRlVG9Db21wYXJlKSB7XG4gIHJldHVybiArdG9EYXRlKGRhdGUpIDwgK3RvRGF0ZShkYXRlVG9Db21wYXJlKTtcbn1cblxuLy8gRmFsbGJhY2sgZm9yIG1vZHVsYXJpemVkIGltcG9ydHM6XG5leHBvcnQgZGVmYXVsdCBpc0JlZm9yZTtcbiIsImltcG9ydCB7IGRlZmF1bHREYXRlQWRhcHRlciB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvZGF0ZXRpbWUuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlTGlrZSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy90eXBlcyc7XG5pbXBvcnQgeyBhZGRNaW51dGVzLCBkaWZmZXJlbmNlSW5NaW51dGVzLCBpc0FmdGVyLCBpc0JlZm9yZSB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQsIG5vdGhpbmcgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBzdHlsZU1hcCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3N0eWxlLW1hcC5qcyc7XG5cbmltcG9ydCB7IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcgfSBmcm9tICcuLi9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB0eXBlIHsgTGVnLCBQdFJpZGVMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5pbXBvcnQgeyBpc1JpZGVMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3BlYXJsLWNoYWluLnNjc3M/bGl0JmlubGluZSc7XG5cbnR5cGUgU3RhdHVzID0gJ3Byb2dyZXNzJyB8ICdmdXR1cmUnIHwgJ3Bhc3QnO1xudHlwZSBUaW1lID0ge1xuICB0aW1lPzogRGF0ZTtcbiAgZGVsYXk6IG51bWJlcjtcbn07XG5cbi8qKlxuICogSXQgdmlzdWFsbHkgZGlzcGxheXMgam91cm5leSBpbmZvcm1hdGlvbi5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1wZWFybC1jaGFpbicpXG5leHBvcnQgY2xhc3MgU2JiUGVhcmxDaGFpbkVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqXG4gICAqIERlZmluZSB0aGUgbGVncyBvZiB0aGUgcGVhcmwtY2hhaW4uXG4gICAqIEZvcm1hdDpcbiAgICogYHtcImxlZ3NcIjogW3tcImR1cmF0aW9uXCI6IDI1fSwgLi4uXX1gXG4gICAqIGBkdXJhdGlvbmAgaW4gbWludXRlcy4gRHVyYXRpb24gb2YgdGhlIGxlZyBpcyByZWxhdGl2ZVxuICAgKiB0byB0aGUgdG90YWwgdHJhdmVsIHRpbWUuIEV4YW1wbGU6IGRlcGFydHVyZSAxNjozMCwgY2hhbmdlIGF0IDE2OjQwLFxuICAgKiBhcnJpdmFsIGF0IDE3OjAwLiBTbyB0aGUgY2hhbmdlIHNob3VsZCBoYXZlIGEgZHVyYXRpb24gb2YgMzMuMzMlLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQXJyYXkgfSkgcHVibGljIGxlZ3M/OiAoTGVnIHwgUHRSaWRlTGVnKVtdO1xuXG4gIC8qKlxuICAgKiBQZXIgZGVmYXVsdCwgdGhlIGN1cnJlbnQgbG9jYXRpb24gaGFzIGEgcHVsc2F0aW5nIGFuaW1hdGlvbi4gWW91IGNhblxuICAgKiBkaXNhYmxlIHRoZSBhbmltYXRpb24gd2l0aCB0aGlzIHByb3BlcnR5LlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGlzYWJsZS1hbmltYXRpb24nLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBkaXNhYmxlQW5pbWF0aW9uPzogYm9vbGVhbjtcblxuICAvKiogQSBjb25maWd1cmVkIGRhdGUgd2hpY2ggYWN0cyBhcyB0aGUgY3VycmVudCBkYXRlIGluc3RlYWQgb2YgdGhlIHJlYWwgY3VycmVudCBkYXRlLiBSZWNvbW1lbmRlZCBmb3IgdGVzdGluZyBwdXJwb3Nlcy4gKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIHNldCBub3codmFsdWU6IFNiYkRhdGVMaWtlIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fbm93ID0gZGVmYXVsdERhdGVBZGFwdGVyLmdldFZhbGlkRGF0ZU9yTnVsbChkZWZhdWx0RGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUodmFsdWUpKTtcbiAgfVxuICBwdWJsaWMgZ2V0IG5vdygpOiBEYXRlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX25vdztcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9nZXRBbGxEdXJhdGlvbihsZWdzOiBQdFJpZGVMZWdbXSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGxlZ3M/LnJlZHVjZSgoc3VtOiBudW1iZXIsIGxlZykgPT4ge1xuICAgICAgY29uc3QgYXJyaXZhbE5vVHogPSByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKGxlZy5hcnJpdmFsPy50aW1lKTtcbiAgICAgIGNvbnN0IGRlcGFydHVyZU5vVHogPSByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKGxlZy5kZXBhcnR1cmU/LnRpbWUpO1xuICAgICAgaWYgKGFycml2YWxOb1R6ICYmIGRlcGFydHVyZU5vVHopIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBzdW0gK1xuICAgICAgICAgIGRpZmZlcmVuY2VJbk1pbnV0ZXMoXG4gICAgICAgICAgICByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKGxlZy5hcnJpdmFsLnRpbWUpISxcbiAgICAgICAgICAgIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZS50aW1lKSEsXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHN1bTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzQWxsQ2FuY2VsbGVkKGxlZ3M6IFB0UmlkZUxlZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGxlZ3M/LmV2ZXJ5KChsZWcpID0+IGxlZz8uc2VydmljZUpvdXJuZXk/LnNlcnZpY2VBbHRlcmF0aW9uPy5jYW5jZWxsZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0UmVsYXRpdmVEdXJhdGlvbihsZWdzOiBQdFJpZGVMZWdbXSwgbGVnOiBQdFJpZGVMZWcpOiBudW1iZXIge1xuICAgIGNvbnN0IGFycml2YWxOb1R6ID0gcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhsZWcuYXJyaXZhbD8udGltZSk7XG4gICAgY29uc3QgZGVwYXJ0dXJlTm9UeiA9IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZT8udGltZSk7XG4gICAgaWYgKGFycml2YWxOb1R6ICYmIGRlcGFydHVyZU5vVHopIHtcbiAgICAgIGNvbnN0IGR1cmF0aW9uID0gZGlmZmVyZW5jZUluTWludXRlcyhcbiAgICAgICAgcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhsZWcuYXJyaXZhbC50aW1lKSEsXG4gICAgICAgIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZS50aW1lKSEsXG4gICAgICApO1xuICAgICAgY29uc3QgYWxsRHVyYXRpb25zID0gdGhpcy5fZ2V0QWxsRHVyYXRpb24obGVncyk7XG5cbiAgICAgIGlmIChhbGxEdXJhdGlvbnMgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIDEwMDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIChkdXJhdGlvbiAvIGFsbER1cmF0aW9ucykgKiAxMDA7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0UHJvZ3Jlc3Mobm93OiBEYXRlLCBzdGFydD86IFRpbWUsIGVuZD86IFRpbWUpOiBudW1iZXIge1xuICAgIGlmICghc3RhcnQ/LnRpbWUgfHwgIWVuZD8udGltZSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RhcnRXaXRoRGVsYXkgPSBhZGRNaW51dGVzKHN0YXJ0LnRpbWUsIHN0YXJ0LmRlbGF5ID8/IDApO1xuICAgIGNvbnN0IGVuZFdpdGhEZWxheSA9IGFkZE1pbnV0ZXMoZW5kLnRpbWUsIGVuZC5kZWxheSA/PyAwKTtcbiAgICBjb25zdCB0b3RhbCA9IGRpZmZlcmVuY2VJbk1pbnV0ZXMoZW5kV2l0aERlbGF5LCBzdGFydFdpdGhEZWxheSk7XG4gICAgY29uc3QgcHJvZ3Jlc3MgPSBkaWZmZXJlbmNlSW5NaW51dGVzKG5vdywgc3RhcnRXaXRoRGVsYXkpO1xuXG4gICAgcmV0dXJuIHRvdGFsICYmIChwcm9ncmVzcyAvIHRvdGFsKSAqIDEwMDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFN0YXR1cyhub3c6IERhdGUsIHN0YXJ0PzogVGltZSwgZW5kPzogVGltZSk6IFN0YXR1cyB7XG4gICAgY29uc3Qgc3RhcnRXaXRoRGVsYXkgPSBzdGFydCAmJiBzdGFydC50aW1lICYmIGFkZE1pbnV0ZXMoc3RhcnQudGltZSwgc3RhcnQuZGVsYXkgPz8gMCk7XG4gICAgY29uc3QgZW5kV2l0aERlbGF5ID0gZW5kICYmIGVuZC50aW1lICYmIGFkZE1pbnV0ZXMoZW5kLnRpbWUsIGVuZC5kZWxheSA/PyAwKTtcblxuICAgIGlmIChcbiAgICAgIHN0YXJ0V2l0aERlbGF5ICYmXG4gICAgICBpc0JlZm9yZShzdGFydFdpdGhEZWxheSwgbm93KSAmJlxuICAgICAgZW5kV2l0aERlbGF5ICYmXG4gICAgICBpc0FmdGVyKGVuZFdpdGhEZWxheSwgbm93KVxuICAgICkge1xuICAgICAgcmV0dXJuICdwcm9ncmVzcyc7XG4gICAgfSBlbHNlIGlmIChlbmRXaXRoRGVsYXkgJiYgaXNCZWZvcmUoZW5kV2l0aERlbGF5LCBub3cpKSB7XG4gICAgICByZXR1cm4gJ3Bhc3QnO1xuICAgIH1cbiAgICByZXR1cm4gJ2Z1dHVyZSc7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJQb3NpdGlvbihub3c6IERhdGUsIHN0YXJ0PzogVGltZSwgZW5kPzogVGltZSk6IFRlbXBsYXRlUmVzdWx0IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLl9nZXRQcm9ncmVzcyhub3csIHN0YXJ0LCBlbmQpO1xuICAgIGlmIChjdXJyZW50UG9zaXRpb24gPCAwICYmIGN1cnJlbnRQb3NpdGlvbiA+IDEwMCkgcmV0dXJuIHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHN0YXR1c1N0eWxlID0gKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJy0tc2JiLXBlYXJsLWNoYWluLXN0YXR1cy1wb3NpdGlvbic6IGAke2N1cnJlbnRQb3NpdGlvbn0lYCxcbiAgICAgICAgLi4uKGN1cnJlbnRQb3NpdGlvbiA+PSA1MCA/IHsgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWCgtMTAwJSlgIH0gOiB7fSksXG4gICAgICB9O1xuICAgIH07XG5cbiAgICBjb25zdCBhbmltYXRpb24gPSB0aGlzLmRpc2FibGVBbmltYXRpb24gPyAnc2JiLXBlYXJsLWNoYWluX19wb3NpdGlvbi0tbm8tYW5pbWF0aW9uJyA6ICcnO1xuXG4gICAgcmV0dXJuIGh0bWxgPHNwYW5cbiAgICAgIHN0eWxlPSR7c3R5bGVNYXAoc3RhdHVzU3R5bGUoKSl9XG4gICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fcG9zaXRpb24gJHthbmltYXRpb259XCJcbiAgICA+PC9zcGFuPmA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBub3cgPSB0aGlzLm5vdyA/PyBuZXcgRGF0ZSgpO1xuXG4gICAgY29uc3QgcmlkZUxlZ3M6IFB0UmlkZUxlZ1tdID0gdGhpcy5sZWdzPy5maWx0ZXIoKGxlZykgPT4gaXNSaWRlTGVnKGxlZykpIGFzIFB0UmlkZUxlZ1tdO1xuXG4gICAgY29uc3QgZGVwYXJ0dXJlVGltZSA9XG4gICAgICByaWRlTGVncz8ubGVuZ3RoICYmIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcocmlkZUxlZ3NbMF0/LmRlcGFydHVyZT8udGltZSk7XG4gICAgY29uc3QgZGVwYXJ0dXJlV2l0aERlbGF5ID0gZGVwYXJ0dXJlVGltZSAmJiB7XG4gICAgICB0aW1lOiBkZXBhcnR1cmVUaW1lLFxuICAgICAgZGVsYXk6IHJpZGVMZWdzWzBdLmRlcGFydHVyZS5kZWxheSA/PyAwLFxuICAgIH07XG5cbiAgICBjb25zdCBhcnJpdmFsVGltZSA9XG4gICAgICByaWRlTGVncz8ubGVuZ3RoICYmXG4gICAgICByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKHJpZGVMZWdzW3JpZGVMZWdzLmxlbmd0aCAtIDFdLmFycml2YWw/LnRpbWUpO1xuICAgIGNvbnN0IGFycml2YWxUaW1lRGVsYXkgPSBhcnJpdmFsVGltZSAmJiB7XG4gICAgICB0aW1lOiBhcnJpdmFsVGltZSxcbiAgICAgIGRlbGF5OiByaWRlTGVnc1tyaWRlTGVncy5sZW5ndGggLSAxXT8uYXJyaXZhbC5kZWxheSA/PyAwLFxuICAgIH07XG5cbiAgICBjb25zdCBkZXBhcnR1cmVOb3RTZXJ2aWNlZCA9ICgoKTogc3RyaW5nID0+IHtcbiAgICAgIHJldHVybiByaWRlTGVncyAmJlxuICAgICAgICByaWRlTGVnc1swXT8uc2VydmljZUpvdXJuZXk/LnN0b3BQb2ludHMgJiZcbiAgICAgICAgcmlkZUxlZ3NbMF0/LnNlcnZpY2VKb3VybmV5Py5zdG9wUG9pbnRzWzBdLnN0b3BTdGF0dXMgPT09ICdOT1RfU0VSVklDRUQnXG4gICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbi0tZGVwYXJ0dXJlLXNraXBwZWQnXG4gICAgICAgIDogJyc7XG4gICAgfSkoKTtcblxuICAgIGNvbnN0IGFycml2YWxOb3RTZXJ2aWNlZCA9ICgoKTogc3RyaW5nID0+IHtcbiAgICAgIGNvbnN0IGxhc3RMZWcgPSByaWRlTGVncyAmJiByaWRlTGVnc1tyaWRlTGVncy5sZW5ndGggLSAxXTtcbiAgICAgIGNvbnN0IHN0b3BzID0gbGFzdExlZyAmJiBsYXN0TGVnLnNlcnZpY2VKb3VybmV5Py5zdG9wUG9pbnRzO1xuXG4gICAgICByZXR1cm4gc3RvcHMgJiYgc3RvcHNbc3RvcHMubGVuZ3RoIC0gMV0uc3RvcFN0YXR1cyA9PT0gJ05PVF9TRVJWSUNFRCdcbiAgICAgICAgPyAnc2JiLXBlYXJsLWNoYWluLS1hcnJpdmFsLXNraXBwZWQnXG4gICAgICAgIDogJyc7XG4gICAgfSkoKTtcblxuICAgIGNvbnN0IGRlcGFydHVyZUNhbmNlbENsYXNzID0gKCgpOiBzdHJpbmcgPT4ge1xuICAgICAgcmV0dXJuIHJpZGVMZWdzICYmIHJpZGVMZWdzWzBdPy5zZXJ2aWNlSm91cm5leT8uc2VydmljZUFsdGVyYXRpb24/LmNhbmNlbGxlZFxuICAgICAgICA/ICdzYmItcGVhcmwtY2hhaW4tLWRlcGFydHVyZS1kaXNydXB0aW9uJ1xuICAgICAgICA6ICcnO1xuICAgIH0pKCk7XG5cbiAgICBjb25zdCBhcnJpdmFsQ2FuY2VsQ2xhc3MgPSAoKCk6IHN0cmluZyA9PiB7XG4gICAgICByZXR1cm4gcmlkZUxlZ3MgJiYgcmlkZUxlZ3NbcmlkZUxlZ3MubGVuZ3RoIC0gMV0/LnNlcnZpY2VKb3VybmV5Py5zZXJ2aWNlQWx0ZXJhdGlvbj8uY2FuY2VsbGVkXG4gICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbi0tYXJyaXZhbC1kaXNydXB0aW9uJ1xuICAgICAgICA6ICcnO1xuICAgIH0pKCk7XG5cbiAgICBjb25zdCBzdGF0dXMgPVxuICAgICAgZGVwYXJ0dXJlV2l0aERlbGF5ICYmXG4gICAgICBhcnJpdmFsVGltZURlbGF5ICYmXG4gICAgICB0aGlzLl9nZXRTdGF0dXMobm93LCBkZXBhcnR1cmVXaXRoRGVsYXksIGFycml2YWxUaW1lRGVsYXkpO1xuXG4gICAgY29uc3Qgc3RhdHVzQ2xhc3NEZXBhcnR1cmUgPVxuICAgICAgcmlkZUxlZ3MgJiYgc3RhdHVzICYmICFkZXBhcnR1cmVDYW5jZWxDbGFzcyA/ICdzYmItcGVhcmwtY2hhaW5fX2J1bGxldC0tJyArIHN0YXR1cyA6ICcnO1xuXG4gICAgY29uc3Qgc3RhdHVzQ2xhc3NBcnJpdmFsID1cbiAgICAgIHJpZGVMZWdzICYmIHN0YXR1cyAmJiAhYXJyaXZhbENhbmNlbENsYXNzXG4gICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbl9fYnVsbGV0LS0nICsgdGhpcy5fZ2V0U3RhdHVzKG5vdywgdW5kZWZpbmVkLCBhcnJpdmFsVGltZURlbGF5KVxuICAgICAgICA6ICcnO1xuXG4gICAgaWYgKHRoaXMuX2lzQWxsQ2FuY2VsbGVkKHJpZGVMZWdzKSkge1xuICAgICAgcmV0dXJuIGh0bWxgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5cIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fYnVsbGV0IHNiYi1wZWFybC1jaGFpbi0tZGVwYXJ0dXJlLWRpc3J1cHRpb25cIj48L3NwYW4+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fbGVnIHNiYi1wZWFybC1jaGFpbl9fbGVnLS1kaXNydXB0aW9uXCI+PC9kaXY+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5fX2J1bGxldCBzYmItcGVhcmwtY2hhaW4tLWRlcGFydHVyZS1kaXNydXB0aW9uXCI+PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIGA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXBlYXJsLWNoYWluXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5fX2J1bGxldCAke3N0YXR1c0NsYXNzRGVwYXJ0dXJlfSAke2RlcGFydHVyZU5vdFNlcnZpY2VkfSAke2RlcGFydHVyZUNhbmNlbENsYXNzfVwiXG4gICAgICAgID48L3NwYW4+XG4gICAgICAgICR7cmlkZUxlZ3M/Lm1hcCgobGVnOiBQdFJpZGVMZWcsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICBjb25zdCB7IHN0b3BQb2ludHMsIHNlcnZpY2VBbHRlcmF0aW9uIH0gPSBsZWc/LnNlcnZpY2VKb3VybmV5IHx8IHt9O1xuXG4gICAgICAgICAgY29uc3QgZHVyYXRpb24gPSB0aGlzLl9nZXRSZWxhdGl2ZUR1cmF0aW9uKHJpZGVMZWdzLCBsZWcpO1xuICAgICAgICAgIGNvbnN0IGRlcGFydHVyZSA9IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZT8udGltZSk7XG4gICAgICAgICAgY29uc3QgYXJyaXZhbCA9IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmFycml2YWw/LnRpbWUpO1xuXG4gICAgICAgICAgY29uc3QgaXNBcnJpdmFsTm90U2VydmljZWQgPVxuICAgICAgICAgICAgc3RvcFBvaW50cyAmJiBzdG9wUG9pbnRzW3N0b3BQb2ludHMubGVuZ3RoIC0gMV0/LnN0b3BTdGF0dXMgPT09ICdOT1RfU0VSVklDRUQnO1xuICAgICAgICAgIGNvbnN0IGlzQXJyaXZhbFBsYW5uZWQgPVxuICAgICAgICAgICAgc3RvcFBvaW50cyAmJiBzdG9wUG9pbnRzW3N0b3BQb2ludHMubGVuZ3RoIC0gMV0/LnN0b3BTdGF0dXMgPT09ICdQTEFOTkVEJztcbiAgICAgICAgICBjb25zdCBpc0RlcGFydHVyZU5vdFNlcnZpY2VkID0gc3RvcFBvaW50cyAmJiBzdG9wUG9pbnRzWzBdPy5zdG9wU3RhdHVzID09PSAnTk9UX1NFUlZJQ0VEJztcblxuICAgICAgICAgIGNvbnN0IHN0b3BQb2ludHNCZWZvcmUgPSBpbmRleCA+IDAgJiYgcmlkZUxlZ3NbaW5kZXggLSAxXS5zZXJ2aWNlSm91cm5leS5zdG9wUG9pbnRzO1xuICAgICAgICAgIGNvbnN0IGlzQmVmb3JlTGVnQXJyaXZhbE5vdFNlcnZpY2VkID1cbiAgICAgICAgICAgIHN0b3BQb2ludHNCZWZvcmUgJiZcbiAgICAgICAgICAgIHN0b3BQb2ludHNCZWZvcmVbc3RvcFBvaW50c0JlZm9yZS5sZW5ndGggLSAxXT8uc3RvcFN0YXR1cyA9PT0gJ05PVF9TRVJWSUNFRCc7XG5cbiAgICAgICAgICBjb25zdCBza2lwcGVkTGVnID1cbiAgICAgICAgICAgIGlzQXJyaXZhbE5vdFNlcnZpY2VkIHx8IChpc0RlcGFydHVyZU5vdFNlcnZpY2VkICYmIGlzQXJyaXZhbFBsYW5uZWQpXG4gICAgICAgICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbl9fbGVnLS1za2lwcGVkJ1xuICAgICAgICAgICAgICA6ICcnO1xuICAgICAgICAgIGNvbnN0IGRlcGFydHVyZVNraXBwZWRCdWxsZXQgPVxuICAgICAgICAgICAgaXNEZXBhcnR1cmVOb3RTZXJ2aWNlZCB8fCBpc0JlZm9yZUxlZ0Fycml2YWxOb3RTZXJ2aWNlZFxuICAgICAgICAgICAgICA/ICdzYmItcGVhcmwtY2hhaW5fX3N0b3AtLWRlcGFydHVyZS1za2lwcGVkJ1xuICAgICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgICAgY29uc3QgY2FuY2VsbGVkID0gc2VydmljZUFsdGVyYXRpb24/LmNhbmNlbGxlZCA/ICdzYmItcGVhcmwtY2hhaW5fX2xlZy0tZGlzcnVwdGlvbicgOiAnJztcblxuICAgICAgICAgIGNvbnN0IGxlZ0RlcGFydHVyZVdpdGhEZWxheSA9IHsgdGltZTogZGVwYXJ0dXJlLCBkZWxheTogbGVnLmRlcGFydHVyZT8uZGVsYXkgPz8gMCB9O1xuICAgICAgICAgIGNvbnN0IGxlZ0Fycml2YWxXaXRoRGVsYXkgPSB7IHRpbWU6IGFycml2YWwsIGRlbGF5OiBsZWcuYXJyaXZhbD8uZGVsYXkgPz8gMCB9O1xuICAgICAgICAgIGNvbnN0IHN0YXR1cyA9IHRoaXMuX2dldFN0YXR1cyhub3csIGxlZ0RlcGFydHVyZVdpdGhEZWxheSwgbGVnQXJyaXZhbFdpdGhEZWxheSk7XG5cbiAgICAgICAgICBjb25zdCBsZWdTdGF0dXMgPSAhY2FuY2VsbGVkICYmICFza2lwcGVkTGVnICYmICdzYmItcGVhcmwtY2hhaW5fX2xlZy0tJyArIHN0YXR1cztcbiAgICAgICAgICBjb25zdCBsZWdTdHlsZSA9ICgpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICctLXNiYi1wZWFybC1jaGFpbi1sZWctd2lkdGgnOiBgJHtkdXJhdGlvbn0lYCxcbiAgICAgICAgICAgICAgLi4uKHN0YXR1cyA9PT0gJ3Byb2dyZXNzJyAmJiAhY2FuY2VsbGVkICYmICFza2lwcGVkTGVnXG4gICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICctLXNiYi1wZWFybC1jaGFpbi1sZWctc3RhdHVzJzogYCR7dGhpcy5fZ2V0UHJvZ3Jlc3Mobm93LCBsZWdEZXBhcnR1cmVXaXRoRGVsYXksIGxlZ0Fycml2YWxXaXRoRGVsYXkpfSVgLFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDoge30pLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgcmV0dXJuIGh0bWxgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX19sZWcgJHtsZWdTdGF0dXMgfHwgJyd9ICR7Y2FuY2VsbGVkfSAke3NraXBwZWRMZWd9XCJcbiAgICAgICAgICAgIHN0eWxlPSR7c3R5bGVNYXAobGVnU3R5bGUoKSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgJHtpbmRleCA+IDAgJiYgaW5kZXggPCByaWRlTGVncy5sZW5ndGhcbiAgICAgICAgICAgICAgPyBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX19zdG9wICR7ZGVwYXJ0dXJlU2tpcHBlZEJ1bGxldH1cIj48L3NwYW4+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAke3N0YXR1cyA9PT0gJ3Byb2dyZXNzJyAmJiAhY2FuY2VsbGVkICYmICFza2lwcGVkTGVnXG4gICAgICAgICAgICAgID8gdGhpcy5fcmVuZGVyUG9zaXRpb24obm93LCBsZWdEZXBhcnR1cmVXaXRoRGVsYXksIGxlZ0Fycml2YWxXaXRoRGVsYXkpXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICA8L2Rpdj5gO1xuICAgICAgICB9KX1cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fYnVsbGV0ICR7c3RhdHVzQ2xhc3NBcnJpdmFsfSAke2Fycml2YWxOb3RTZXJ2aWNlZH0gJHthcnJpdmFsQ2FuY2VsQ2xhc3N9XCJcbiAgICAgICAgPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1wZWFybC1jaGFpbic6IFNiYlBlYXJsQ2hhaW5FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2IiLCJfYSIsIl9kIiwiX2MiLCJfZSIsInN0YXR1cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFvQk8sU0FBUyxRQUFRLE1BQU0sZUFBZTtBQUMzQyxTQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLGFBQWE7QUFDOUM7QUNGTyxTQUFTLFNBQVMsTUFBTSxlQUFlO0FBQzVDLFNBQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sYUFBYTtBQUM5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
605
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVhcmwtY2hhaW4uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9kYXRlLWZucy9pc0FmdGVyLmpzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2RhdGUtZm5zL2lzQmVmb3JlLmpzIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC9wZWFybC1jaGFpbi9wZWFybC1jaGFpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0b0RhdGUgfSBmcm9tIFwiLi90b0RhdGUuanNcIjtcblxuLyoqXG4gKiBAbmFtZSBpc0FmdGVyXG4gKiBAY2F0ZWdvcnkgQ29tbW9uIEhlbHBlcnNcbiAqIEBzdW1tYXJ5IElzIHRoZSBmaXJzdCBkYXRlIGFmdGVyIHRoZSBzZWNvbmQgb25lP1xuICpcbiAqIEBkZXNjcmlwdGlvblxuICogSXMgdGhlIGZpcnN0IGRhdGUgYWZ0ZXIgdGhlIHNlY29uZCBvbmU/XG4gKlxuICogQHBhcmFtIGRhdGUgLSBUaGUgZGF0ZSB0aGF0IHNob3VsZCBiZSBhZnRlciB0aGUgb3RoZXIgb25lIHRvIHJldHVybiB0cnVlXG4gKiBAcGFyYW0gZGF0ZVRvQ29tcGFyZSAtIFRoZSBkYXRlIHRvIGNvbXBhcmUgd2l0aFxuICpcbiAqIEByZXR1cm5zIFRoZSBmaXJzdCBkYXRlIGlzIGFmdGVyIHRoZSBzZWNvbmQgZGF0ZVxuICpcbiAqIEBleGFtcGxlXG4gKiAvLyBJcyAxMCBKdWx5IDE5ODkgYWZ0ZXIgMTEgRmVicnVhcnkgMTk4Nz9cbiAqIGNvbnN0IHJlc3VsdCA9IGlzQWZ0ZXIobmV3IERhdGUoMTk4OSwgNiwgMTApLCBuZXcgRGF0ZSgxOTg3LCAxLCAxMSkpXG4gKiAvLz0+IHRydWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQWZ0ZXIoZGF0ZSwgZGF0ZVRvQ29tcGFyZSkge1xuICByZXR1cm4gK3RvRGF0ZShkYXRlKSA+ICt0b0RhdGUoZGF0ZVRvQ29tcGFyZSk7XG59XG5cbi8vIEZhbGxiYWNrIGZvciBtb2R1bGFyaXplZCBpbXBvcnRzOlxuZXhwb3J0IGRlZmF1bHQgaXNBZnRlcjtcbiIsImltcG9ydCB7IHRvRGF0ZSB9IGZyb20gXCIuL3RvRGF0ZS5qc1wiO1xuXG4vKipcbiAqIEBuYW1lIGlzQmVmb3JlXG4gKiBAY2F0ZWdvcnkgQ29tbW9uIEhlbHBlcnNcbiAqIEBzdW1tYXJ5IElzIHRoZSBmaXJzdCBkYXRlIGJlZm9yZSB0aGUgc2Vjb25kIG9uZT9cbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqIElzIHRoZSBmaXJzdCBkYXRlIGJlZm9yZSB0aGUgc2Vjb25kIG9uZT9cbiAqXG4gKiBAcGFyYW0gZGF0ZSAtIFRoZSBkYXRlIHRoYXQgc2hvdWxkIGJlIGJlZm9yZSB0aGUgb3RoZXIgb25lIHRvIHJldHVybiB0cnVlXG4gKiBAcGFyYW0gZGF0ZVRvQ29tcGFyZSAtIFRoZSBkYXRlIHRvIGNvbXBhcmUgd2l0aFxuICpcbiAqIEByZXR1cm5zIFRoZSBmaXJzdCBkYXRlIGlzIGJlZm9yZSB0aGUgc2Vjb25kIGRhdGVcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gSXMgMTAgSnVseSAxOTg5IGJlZm9yZSAxMSBGZWJydWFyeSAxOTg3P1xuICogY29uc3QgcmVzdWx0ID0gaXNCZWZvcmUobmV3IERhdGUoMTk4OSwgNiwgMTApLCBuZXcgRGF0ZSgxOTg3LCAxLCAxMSkpXG4gKiAvLz0+IGZhbHNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0JlZm9yZShkYXRlLCBkYXRlVG9Db21wYXJlKSB7XG4gIHJldHVybiArdG9EYXRlKGRhdGUpIDwgK3RvRGF0ZShkYXRlVG9Db21wYXJlKTtcbn1cblxuLy8gRmFsbGJhY2sgZm9yIG1vZHVsYXJpemVkIGltcG9ydHM6XG5leHBvcnQgZGVmYXVsdCBpc0JlZm9yZTtcbiIsImltcG9ydCB7IGRlZmF1bHREYXRlQWRhcHRlciB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvZGF0ZXRpbWUuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJEYXRlTGlrZSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy90eXBlcyc7XG5pbXBvcnQgeyBhZGRNaW51dGVzLCBkaWZmZXJlbmNlSW5NaW51dGVzLCBpc0FmdGVyLCBpc0JlZm9yZSB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQsIG5vdGhpbmcgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBzdHlsZU1hcCB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3N0eWxlLW1hcC5qcyc7XG5cbmltcG9ydCB7IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcgfSBmcm9tICcuLi9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB0eXBlIHsgTGVnLCBQdFJpZGVMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5pbXBvcnQgeyBpc1JpZGVMZWcgfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3BlYXJsLWNoYWluLnNjc3M/bGl0JmlubGluZSc7XG5cbnR5cGUgU3RhdHVzID0gJ3Byb2dyZXNzJyB8ICdmdXR1cmUnIHwgJ3Bhc3QnO1xudHlwZSBUaW1lID0ge1xuICB0aW1lPzogRGF0ZTtcbiAgZGVsYXk6IG51bWJlcjtcbn07XG5cbi8qKlxuICogSXQgdmlzdWFsbHkgZGlzcGxheXMgam91cm5leSBpbmZvcm1hdGlvbi5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1wZWFybC1jaGFpbicpXG5leHBvcnQgY2xhc3MgU2JiUGVhcmxDaGFpbkVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqXG4gICAqIERlZmluZSB0aGUgbGVncyBvZiB0aGUgcGVhcmwtY2hhaW4uXG4gICAqIEZvcm1hdDpcbiAgICogYHtcImxlZ3NcIjogW3tcImR1cmF0aW9uXCI6IDI1fSwgLi4uXX1gXG4gICAqIGBkdXJhdGlvbmAgaW4gbWludXRlcy4gRHVyYXRpb24gb2YgdGhlIGxlZyBpcyByZWxhdGl2ZVxuICAgKiB0byB0aGUgdG90YWwgdHJhdmVsIHRpbWUuIEV4YW1wbGU6IGRlcGFydHVyZSAxNjozMCwgY2hhbmdlIGF0IDE2OjQwLFxuICAgKiBhcnJpdmFsIGF0IDE3OjAwLiBTbyB0aGUgY2hhbmdlIHNob3VsZCBoYXZlIGEgZHVyYXRpb24gb2YgMzMuMzMlLlxuICAgKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQXJyYXkgfSkgcHVibGljIGxlZ3M/OiAoTGVnIHwgUHRSaWRlTGVnKVtdO1xuXG4gIC8qKlxuICAgKiBQZXIgZGVmYXVsdCwgdGhlIGN1cnJlbnQgbG9jYXRpb24gaGFzIGEgcHVsc2F0aW5nIGFuaW1hdGlvbi4gWW91IGNhblxuICAgKiBkaXNhYmxlIHRoZSBhbmltYXRpb24gd2l0aCB0aGlzIHByb3BlcnR5LlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnZGlzYWJsZS1hbmltYXRpb24nLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBkaXNhYmxlQW5pbWF0aW9uPzogYm9vbGVhbjtcblxuICAvKiogQSBjb25maWd1cmVkIGRhdGUgd2hpY2ggYWN0cyBhcyB0aGUgY3VycmVudCBkYXRlIGluc3RlYWQgb2YgdGhlIHJlYWwgY3VycmVudCBkYXRlLiBSZWNvbW1lbmRlZCBmb3IgdGVzdGluZyBwdXJwb3Nlcy4gKi9cbiAgQHByb3BlcnR5KClcbiAgcHVibGljIHNldCBub3codmFsdWU6IFNiYkRhdGVMaWtlIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fbm93ID0gZGVmYXVsdERhdGVBZGFwdGVyLmdldFZhbGlkRGF0ZU9yTnVsbChkZWZhdWx0RGF0ZUFkYXB0ZXIuZGVzZXJpYWxpemUodmFsdWUpKTtcbiAgfVxuICBwdWJsaWMgZ2V0IG5vdygpOiBEYXRlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX25vdztcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9nZXRBbGxEdXJhdGlvbihsZWdzOiBQdFJpZGVMZWdbXSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGxlZ3M/LnJlZHVjZSgoc3VtOiBudW1iZXIsIGxlZykgPT4ge1xuICAgICAgY29uc3QgYXJyaXZhbE5vVHogPSByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKGxlZy5hcnJpdmFsPy50aW1lKTtcbiAgICAgIGNvbnN0IGRlcGFydHVyZU5vVHogPSByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKGxlZy5kZXBhcnR1cmU/LnRpbWUpO1xuICAgICAgaWYgKGFycml2YWxOb1R6ICYmIGRlcGFydHVyZU5vVHopIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBzdW0gK1xuICAgICAgICAgIGRpZmZlcmVuY2VJbk1pbnV0ZXMoXG4gICAgICAgICAgICByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKGxlZy5hcnJpdmFsLnRpbWUpISxcbiAgICAgICAgICAgIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZS50aW1lKSEsXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHN1bTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzQWxsQ2FuY2VsbGVkKGxlZ3M6IFB0UmlkZUxlZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGxlZ3M/LmV2ZXJ5KChsZWcpID0+IGxlZz8uc2VydmljZUpvdXJuZXk/LnNlcnZpY2VBbHRlcmF0aW9uPy5jYW5jZWxsZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0UmVsYXRpdmVEdXJhdGlvbihsZWdzOiBQdFJpZGVMZWdbXSwgbGVnOiBQdFJpZGVMZWcpOiBudW1iZXIge1xuICAgIGNvbnN0IGFycml2YWxOb1R6ID0gcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhsZWcuYXJyaXZhbD8udGltZSk7XG4gICAgY29uc3QgZGVwYXJ0dXJlTm9UeiA9IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZT8udGltZSk7XG4gICAgaWYgKGFycml2YWxOb1R6ICYmIGRlcGFydHVyZU5vVHopIHtcbiAgICAgIGNvbnN0IGR1cmF0aW9uID0gZGlmZmVyZW5jZUluTWludXRlcyhcbiAgICAgICAgcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhsZWcuYXJyaXZhbC50aW1lKSEsXG4gICAgICAgIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZS50aW1lKSEsXG4gICAgICApO1xuICAgICAgY29uc3QgYWxsRHVyYXRpb25zID0gdGhpcy5fZ2V0QWxsRHVyYXRpb24obGVncyk7XG5cbiAgICAgIGlmIChhbGxEdXJhdGlvbnMgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIDEwMDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIChkdXJhdGlvbiAvIGFsbER1cmF0aW9ucykgKiAxMDA7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0UHJvZ3Jlc3Mobm93OiBEYXRlLCBzdGFydD86IFRpbWUsIGVuZD86IFRpbWUpOiBudW1iZXIge1xuICAgIGlmICghc3RhcnQ/LnRpbWUgfHwgIWVuZD8udGltZSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RhcnRXaXRoRGVsYXkgPSBhZGRNaW51dGVzKHN0YXJ0LnRpbWUsIHN0YXJ0LmRlbGF5ID8/IDApO1xuICAgIGNvbnN0IGVuZFdpdGhEZWxheSA9IGFkZE1pbnV0ZXMoZW5kLnRpbWUsIGVuZC5kZWxheSA/PyAwKTtcbiAgICBjb25zdCB0b3RhbCA9IGRpZmZlcmVuY2VJbk1pbnV0ZXMoZW5kV2l0aERlbGF5LCBzdGFydFdpdGhEZWxheSk7XG4gICAgY29uc3QgcHJvZ3Jlc3MgPSBkaWZmZXJlbmNlSW5NaW51dGVzKG5vdywgc3RhcnRXaXRoRGVsYXkpO1xuXG4gICAgcmV0dXJuIHRvdGFsICYmIChwcm9ncmVzcyAvIHRvdGFsKSAqIDEwMDtcbiAgfVxuXG4gIHByaXZhdGUgX2dldFN0YXR1cyhub3c6IERhdGUsIHN0YXJ0PzogVGltZSwgZW5kPzogVGltZSk6IFN0YXR1cyB7XG4gICAgY29uc3Qgc3RhcnRXaXRoRGVsYXkgPSBzdGFydCAmJiBzdGFydC50aW1lICYmIGFkZE1pbnV0ZXMoc3RhcnQudGltZSwgc3RhcnQuZGVsYXkgPz8gMCk7XG4gICAgY29uc3QgZW5kV2l0aERlbGF5ID0gZW5kICYmIGVuZC50aW1lICYmIGFkZE1pbnV0ZXMoZW5kLnRpbWUsIGVuZC5kZWxheSA/PyAwKTtcblxuICAgIGlmIChcbiAgICAgIHN0YXJ0V2l0aERlbGF5ICYmXG4gICAgICBpc0JlZm9yZShzdGFydFdpdGhEZWxheSwgbm93KSAmJlxuICAgICAgZW5kV2l0aERlbGF5ICYmXG4gICAgICBpc0FmdGVyKGVuZFdpdGhEZWxheSwgbm93KVxuICAgICkge1xuICAgICAgcmV0dXJuICdwcm9ncmVzcyc7XG4gICAgfSBlbHNlIGlmIChlbmRXaXRoRGVsYXkgJiYgaXNCZWZvcmUoZW5kV2l0aERlbGF5LCBub3cpKSB7XG4gICAgICByZXR1cm4gJ3Bhc3QnO1xuICAgIH1cbiAgICByZXR1cm4gJ2Z1dHVyZSc7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJQb3NpdGlvbihub3c6IERhdGUsIHN0YXJ0PzogVGltZSwgZW5kPzogVGltZSk6IFRlbXBsYXRlUmVzdWx0IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLl9nZXRQcm9ncmVzcyhub3csIHN0YXJ0LCBlbmQpO1xuICAgIGlmIChjdXJyZW50UG9zaXRpb24gPCAwICYmIGN1cnJlbnRQb3NpdGlvbiA+IDEwMCkgcmV0dXJuIHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHN0YXR1c1N0eWxlID0gKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJy0tc2JiLXBlYXJsLWNoYWluLXN0YXR1cy1wb3NpdGlvbic6IGAke2N1cnJlbnRQb3NpdGlvbn0lYCxcbiAgICAgICAgLi4uKGN1cnJlbnRQb3NpdGlvbiA+PSA1MCA/IHsgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWCgtMTAwJSlgIH0gOiB7fSksXG4gICAgICB9O1xuICAgIH07XG5cbiAgICBjb25zdCBhbmltYXRpb24gPSB0aGlzLmRpc2FibGVBbmltYXRpb24gPyAnc2JiLXBlYXJsLWNoYWluX19wb3NpdGlvbi0tbm8tYW5pbWF0aW9uJyA6ICcnO1xuXG4gICAgcmV0dXJuIGh0bWxgPHNwYW5cbiAgICAgIHN0eWxlPSR7c3R5bGVNYXAoc3RhdHVzU3R5bGUoKSl9XG4gICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fcG9zaXRpb24gJHthbmltYXRpb259XCJcbiAgICA+PC9zcGFuPmA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBub3cgPSB0aGlzLm5vdyA/PyBuZXcgRGF0ZSgpO1xuXG4gICAgY29uc3QgcmlkZUxlZ3M6IFB0UmlkZUxlZ1tdID0gdGhpcy5sZWdzPy5maWx0ZXIoKGxlZykgPT4gaXNSaWRlTGVnKGxlZykpIGFzIFB0UmlkZUxlZ1tdO1xuXG4gICAgY29uc3QgZGVwYXJ0dXJlVGltZSA9XG4gICAgICByaWRlTGVncz8ubGVuZ3RoICYmIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcocmlkZUxlZ3NbMF0/LmRlcGFydHVyZT8udGltZSk7XG4gICAgY29uc3QgZGVwYXJ0dXJlV2l0aERlbGF5ID0gZGVwYXJ0dXJlVGltZSAmJiB7XG4gICAgICB0aW1lOiBkZXBhcnR1cmVUaW1lLFxuICAgICAgZGVsYXk6IHJpZGVMZWdzWzBdLmRlcGFydHVyZS5kZWxheSA/PyAwLFxuICAgIH07XG5cbiAgICBjb25zdCBhcnJpdmFsVGltZSA9XG4gICAgICByaWRlTGVncz8ubGVuZ3RoICYmXG4gICAgICByZW1vdmVUaW1lem9uZUZyb21JU09UaW1lU3RyaW5nKHJpZGVMZWdzW3JpZGVMZWdzLmxlbmd0aCAtIDFdLmFycml2YWw/LnRpbWUpO1xuICAgIGNvbnN0IGFycml2YWxUaW1lRGVsYXkgPSBhcnJpdmFsVGltZSAmJiB7XG4gICAgICB0aW1lOiBhcnJpdmFsVGltZSxcbiAgICAgIGRlbGF5OiByaWRlTGVnc1tyaWRlTGVncy5sZW5ndGggLSAxXT8uYXJyaXZhbC5kZWxheSA/PyAwLFxuICAgIH07XG5cbiAgICBjb25zdCBkZXBhcnR1cmVOb3RTZXJ2aWNlZCA9ICgoKTogc3RyaW5nID0+IHtcbiAgICAgIHJldHVybiByaWRlTGVncyAmJlxuICAgICAgICByaWRlTGVnc1swXT8uc2VydmljZUpvdXJuZXk/LnN0b3BQb2ludHMgJiZcbiAgICAgICAgcmlkZUxlZ3NbMF0/LnNlcnZpY2VKb3VybmV5Py5zdG9wUG9pbnRzWzBdLnN0b3BTdGF0dXMgPT09ICdOT1RfU0VSVklDRUQnXG4gICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbi0tZGVwYXJ0dXJlLXNraXBwZWQnXG4gICAgICAgIDogJyc7XG4gICAgfSkoKTtcblxuICAgIGNvbnN0IGFycml2YWxOb3RTZXJ2aWNlZCA9ICgoKTogc3RyaW5nID0+IHtcbiAgICAgIGNvbnN0IGxhc3RMZWcgPSByaWRlTGVncyAmJiByaWRlTGVnc1tyaWRlTGVncy5sZW5ndGggLSAxXTtcbiAgICAgIGNvbnN0IHN0b3BzID0gbGFzdExlZyAmJiBsYXN0TGVnLnNlcnZpY2VKb3VybmV5Py5zdG9wUG9pbnRzO1xuXG4gICAgICByZXR1cm4gc3RvcHMgJiYgc3RvcHNbc3RvcHMubGVuZ3RoIC0gMV0uc3RvcFN0YXR1cyA9PT0gJ05PVF9TRVJWSUNFRCdcbiAgICAgICAgPyAnc2JiLXBlYXJsLWNoYWluLS1hcnJpdmFsLXNraXBwZWQnXG4gICAgICAgIDogJyc7XG4gICAgfSkoKTtcblxuICAgIGNvbnN0IGRlcGFydHVyZUNhbmNlbENsYXNzID0gKCgpOiBzdHJpbmcgPT4ge1xuICAgICAgcmV0dXJuIHJpZGVMZWdzICYmIHJpZGVMZWdzWzBdPy5zZXJ2aWNlSm91cm5leT8uc2VydmljZUFsdGVyYXRpb24/LmNhbmNlbGxlZFxuICAgICAgICA/ICdzYmItcGVhcmwtY2hhaW4tLWRlcGFydHVyZS1kaXNydXB0aW9uJ1xuICAgICAgICA6ICcnO1xuICAgIH0pKCk7XG5cbiAgICBjb25zdCBhcnJpdmFsQ2FuY2VsQ2xhc3MgPSAoKCk6IHN0cmluZyA9PiB7XG4gICAgICByZXR1cm4gcmlkZUxlZ3MgJiYgcmlkZUxlZ3NbcmlkZUxlZ3MubGVuZ3RoIC0gMV0/LnNlcnZpY2VKb3VybmV5Py5zZXJ2aWNlQWx0ZXJhdGlvbj8uY2FuY2VsbGVkXG4gICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbi0tYXJyaXZhbC1kaXNydXB0aW9uJ1xuICAgICAgICA6ICcnO1xuICAgIH0pKCk7XG5cbiAgICBjb25zdCBzdGF0dXMgPVxuICAgICAgZGVwYXJ0dXJlV2l0aERlbGF5ICYmXG4gICAgICBhcnJpdmFsVGltZURlbGF5ICYmXG4gICAgICB0aGlzLl9nZXRTdGF0dXMobm93LCBkZXBhcnR1cmVXaXRoRGVsYXksIGFycml2YWxUaW1lRGVsYXkpO1xuXG4gICAgY29uc3Qgc3RhdHVzQ2xhc3NEZXBhcnR1cmUgPVxuICAgICAgcmlkZUxlZ3MgJiYgc3RhdHVzICYmICFkZXBhcnR1cmVDYW5jZWxDbGFzcyA/ICdzYmItcGVhcmwtY2hhaW5fX2J1bGxldC0tJyArIHN0YXR1cyA6ICcnO1xuXG4gICAgY29uc3Qgc3RhdHVzQ2xhc3NBcnJpdmFsID1cbiAgICAgIHJpZGVMZWdzICYmIHN0YXR1cyAmJiAhYXJyaXZhbENhbmNlbENsYXNzXG4gICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbl9fYnVsbGV0LS0nICsgdGhpcy5fZ2V0U3RhdHVzKG5vdywgdW5kZWZpbmVkLCBhcnJpdmFsVGltZURlbGF5KVxuICAgICAgICA6ICcnO1xuXG4gICAgaWYgKHRoaXMuX2lzQWxsQ2FuY2VsbGVkKHJpZGVMZWdzKSkge1xuICAgICAgcmV0dXJuIGh0bWxgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5cIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fYnVsbGV0IHNiYi1wZWFybC1jaGFpbi0tZGVwYXJ0dXJlLWRpc3J1cHRpb25cIj48L3NwYW4+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fbGVnIHNiYi1wZWFybC1jaGFpbl9fbGVnLS1kaXNydXB0aW9uXCI+PC9kaXY+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5fX2J1bGxldCBzYmItcGVhcmwtY2hhaW4tLWRlcGFydHVyZS1kaXNydXB0aW9uXCI+PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIGA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXBlYXJsLWNoYWluXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJzYmItcGVhcmwtY2hhaW5fX2J1bGxldCAke3N0YXR1c0NsYXNzRGVwYXJ0dXJlfSAke2RlcGFydHVyZU5vdFNlcnZpY2VkfSAke2RlcGFydHVyZUNhbmNlbENsYXNzfVwiXG4gICAgICAgID48L3NwYW4+XG4gICAgICAgICR7cmlkZUxlZ3M/Lm1hcCgobGVnOiBQdFJpZGVMZWcsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICBjb25zdCB7IHN0b3BQb2ludHMsIHNlcnZpY2VBbHRlcmF0aW9uIH0gPSBsZWc/LnNlcnZpY2VKb3VybmV5IHx8IHt9O1xuXG4gICAgICAgICAgY29uc3QgZHVyYXRpb24gPSB0aGlzLl9nZXRSZWxhdGl2ZUR1cmF0aW9uKHJpZGVMZWdzLCBsZWcpO1xuICAgICAgICAgIGNvbnN0IGRlcGFydHVyZSA9IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmRlcGFydHVyZT8udGltZSk7XG4gICAgICAgICAgY29uc3QgYXJyaXZhbCA9IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcobGVnLmFycml2YWw/LnRpbWUpO1xuXG4gICAgICAgICAgY29uc3QgaXNBcnJpdmFsTm90U2VydmljZWQgPVxuICAgICAgICAgICAgc3RvcFBvaW50cyAmJiBzdG9wUG9pbnRzW3N0b3BQb2ludHMubGVuZ3RoIC0gMV0/LnN0b3BTdGF0dXMgPT09ICdOT1RfU0VSVklDRUQnO1xuICAgICAgICAgIGNvbnN0IGlzQXJyaXZhbFBsYW5uZWQgPVxuICAgICAgICAgICAgc3RvcFBvaW50cyAmJiBzdG9wUG9pbnRzW3N0b3BQb2ludHMubGVuZ3RoIC0gMV0/LnN0b3BTdGF0dXMgPT09ICdQTEFOTkVEJztcbiAgICAgICAgICBjb25zdCBpc0RlcGFydHVyZU5vdFNlcnZpY2VkID0gc3RvcFBvaW50cyAmJiBzdG9wUG9pbnRzWzBdPy5zdG9wU3RhdHVzID09PSAnTk9UX1NFUlZJQ0VEJztcblxuICAgICAgICAgIGNvbnN0IHN0b3BQb2ludHNCZWZvcmUgPSBpbmRleCA+IDAgJiYgcmlkZUxlZ3NbaW5kZXggLSAxXS5zZXJ2aWNlSm91cm5leS5zdG9wUG9pbnRzO1xuICAgICAgICAgIGNvbnN0IGlzQmVmb3JlTGVnQXJyaXZhbE5vdFNlcnZpY2VkID1cbiAgICAgICAgICAgIHN0b3BQb2ludHNCZWZvcmUgJiZcbiAgICAgICAgICAgIHN0b3BQb2ludHNCZWZvcmVbc3RvcFBvaW50c0JlZm9yZS5sZW5ndGggLSAxXT8uc3RvcFN0YXR1cyA9PT0gJ05PVF9TRVJWSUNFRCc7XG5cbiAgICAgICAgICBjb25zdCBza2lwcGVkTGVnID1cbiAgICAgICAgICAgIGlzQXJyaXZhbE5vdFNlcnZpY2VkIHx8IChpc0RlcGFydHVyZU5vdFNlcnZpY2VkICYmIGlzQXJyaXZhbFBsYW5uZWQpXG4gICAgICAgICAgICAgID8gJ3NiYi1wZWFybC1jaGFpbl9fbGVnLS1za2lwcGVkJ1xuICAgICAgICAgICAgICA6ICcnO1xuICAgICAgICAgIGNvbnN0IGRlcGFydHVyZVNraXBwZWRCdWxsZXQgPVxuICAgICAgICAgICAgaXNEZXBhcnR1cmVOb3RTZXJ2aWNlZCB8fCBpc0JlZm9yZUxlZ0Fycml2YWxOb3RTZXJ2aWNlZFxuICAgICAgICAgICAgICA/ICdzYmItcGVhcmwtY2hhaW5fX3N0b3AtLWRlcGFydHVyZS1za2lwcGVkJ1xuICAgICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgICAgY29uc3QgY2FuY2VsbGVkID0gc2VydmljZUFsdGVyYXRpb24/LmNhbmNlbGxlZCA/ICdzYmItcGVhcmwtY2hhaW5fX2xlZy0tZGlzcnVwdGlvbicgOiAnJztcblxuICAgICAgICAgIGNvbnN0IGxlZ0RlcGFydHVyZVdpdGhEZWxheSA9IHsgdGltZTogZGVwYXJ0dXJlLCBkZWxheTogbGVnLmRlcGFydHVyZT8uZGVsYXkgPz8gMCB9O1xuICAgICAgICAgIGNvbnN0IGxlZ0Fycml2YWxXaXRoRGVsYXkgPSB7IHRpbWU6IGFycml2YWwsIGRlbGF5OiBsZWcuYXJyaXZhbD8uZGVsYXkgPz8gMCB9O1xuICAgICAgICAgIGNvbnN0IHN0YXR1cyA9IHRoaXMuX2dldFN0YXR1cyhub3csIGxlZ0RlcGFydHVyZVdpdGhEZWxheSwgbGVnQXJyaXZhbFdpdGhEZWxheSk7XG5cbiAgICAgICAgICBjb25zdCBsZWdTdGF0dXMgPSAhY2FuY2VsbGVkICYmICFza2lwcGVkTGVnICYmICdzYmItcGVhcmwtY2hhaW5fX2xlZy0tJyArIHN0YXR1cztcbiAgICAgICAgICBjb25zdCBsZWdTdHlsZSA9ICgpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICctLXNiYi1wZWFybC1jaGFpbi1sZWctd2lkdGgnOiBgJHtkdXJhdGlvbn0lYCxcbiAgICAgICAgICAgICAgLi4uKHN0YXR1cyA9PT0gJ3Byb2dyZXNzJyAmJiAhY2FuY2VsbGVkICYmICFza2lwcGVkTGVnXG4gICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICctLXNiYi1wZWFybC1jaGFpbi1sZWctc3RhdHVzJzogYCR7dGhpcy5fZ2V0UHJvZ3Jlc3Mobm93LCBsZWdEZXBhcnR1cmVXaXRoRGVsYXksIGxlZ0Fycml2YWxXaXRoRGVsYXkpfSVgLFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDoge30pLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgcmV0dXJuIGh0bWxgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX19sZWcgJHtsZWdTdGF0dXMgfHwgJyd9ICR7Y2FuY2VsbGVkfSAke3NraXBwZWRMZWd9XCJcbiAgICAgICAgICAgIHN0eWxlPSR7c3R5bGVNYXAobGVnU3R5bGUoKSl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgJHtpbmRleCA+IDAgJiYgaW5kZXggPCByaWRlTGVncy5sZW5ndGhcbiAgICAgICAgICAgICAgPyBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXBlYXJsLWNoYWluX19zdG9wICR7ZGVwYXJ0dXJlU2tpcHBlZEJ1bGxldH1cIj48L3NwYW4+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAke3N0YXR1cyA9PT0gJ3Byb2dyZXNzJyAmJiAhY2FuY2VsbGVkICYmICFza2lwcGVkTGVnXG4gICAgICAgICAgICAgID8gdGhpcy5fcmVuZGVyUG9zaXRpb24obm93LCBsZWdEZXBhcnR1cmVXaXRoRGVsYXksIGxlZ0Fycml2YWxXaXRoRGVsYXkpXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICA8L2Rpdj5gO1xuICAgICAgICB9KX1cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cInNiYi1wZWFybC1jaGFpbl9fYnVsbGV0ICR7c3RhdHVzQ2xhc3NBcnJpdmFsfSAke2Fycml2YWxOb3RTZXJ2aWNlZH0gJHthcnJpdmFsQ2FuY2VsQ2xhc3N9XCJcbiAgICAgICAgPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1wZWFybC1jaGFpbic6IFNiYlBlYXJsQ2hhaW5FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2IiLCJfYSIsIl9kIiwiX2MiLCJfZSIsInN0YXR1cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFvQk8sU0FBUyxRQUFRLE1BQU0sZUFBZTtBQUMzQyxTQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLGFBQWE7QUFDOUM7QUNGTyxTQUFTLFNBQVMsTUFBTSxlQUFlO0FBQzVDLFNBQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sYUFBYTtBQUM5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -2,14 +2,7 @@ import { SbbLanguageController } from "@sbb-esta/lyne-elements/core/controllers.
2
2
  import { i18nDurationHour, i18nDurationMinute } from "@sbb-esta/lyne-elements/core/i18n.js";
3
3
  import { css, LitElement, html } from "lit";
4
4
  import { property, customElement } from "lit/decorators.js";
5
- const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
6
- /*
7
- * SBB table mixin
8
- * Notes:
9
- * We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
10
- * Therefore, we have to build the grid avoiding double borders.
11
- */
12
- *,
5
+ const style = css`*,
13
6
  ::before,
14
7
  ::after {
15
8
  box-sizing: border-box;
@@ -96,4 +89,4 @@ SbbTimetableDurationElement = __decorateClass([
96
89
  export {
97
90
  SbbTimetableDurationElement
98
91
  };
99
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXRhYmxlLWR1cmF0aW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL3RpbWV0YWJsZS1kdXJhdGlvbi90aW1ldGFibGUtZHVyYXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBpMThuRHVyYXRpb25Ib3VyLCBpMThuRHVyYXRpb25NaW51dGUgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdGltZXRhYmxlLWR1cmF0aW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogVXNlZCBpbiBgc2JiLXRpbWV0YWJsZS1yb3dgLCBpdCBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJpcCBkdXJhdGlvbi5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi10aW1ldGFibGUtZHVyYXRpb24nKVxuZXhwb3J0IGNsYXNzIFNiYlRpbWV0YWJsZUR1cmF0aW9uRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKipcbiAgICogU3RyaW5naWZpZWQgSlNPTiB3aGljaCBkZWZpbmVzIG1vc3Qgb2YgdGhlXG4gICAqIGNvbnRlbnQgb2YgdGhlIGNvbXBvbmVudC4gUGxlYXNlIGNoZWNrIHRoZVxuICAgKiBpbmRpdmlkdWFsIHN0b3JpZXMgdG8gZ2V0IGFuIGlkZWEgb2YgdGhlXG4gICAqIHN0cnVjdHVyZS5cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBjb25maWchOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IGNvbmZpZyA9IEpTT04ucGFyc2UodGhpcy5jb25maWcpO1xuXG4gICAgY29uc3QgaG91cnNMYWJlbFNob3J0ID0gaTE4bkR1cmF0aW9uSG91ci5tdWx0aXBsZS5zaG9ydFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XTtcbiAgICBjb25zdCBtaW51dGVzTGFiZWxTaG9ydCA9IGkxOG5EdXJhdGlvbk1pbnV0ZS5tdWx0aXBsZS5zaG9ydFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XTtcblxuICAgIGxldCB2aXN1YWxUZXh0ID0gJyc7XG4gICAgbGV0IGExMXlMYWJlbCA9ICcnO1xuXG4gICAgbGV0IGhvdXJzTGFiZWxMb25nID0gaTE4bkR1cmF0aW9uSG91ci5tdWx0aXBsZS5sb25nW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdO1xuICAgIGxldCBtaW51dGVzTGFiZWxMb25nID0gaTE4bkR1cmF0aW9uTWludXRlLm11bHRpcGxlLmxvbmdbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF07XG5cbiAgICBpZiAoY29uZmlnLmhvdXJzID09PSAxKSB7XG4gICAgICBob3Vyc0xhYmVsTG9uZyA9IGkxOG5EdXJhdGlvbkhvdXIuc2luZ2xlLmxvbmdbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF07XG4gICAgfVxuXG4gICAgaWYgKGNvbmZpZy5taW51dGVzID09PSAxKSB7XG4gICAgICBtaW51dGVzTGFiZWxMb25nID0gaTE4bkR1cmF0aW9uTWludXRlLnNpbmdsZS5sb25nW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdO1xuICAgIH1cblxuICAgIGlmIChjb25maWcuaG91cnMgIT09IDApIHtcbiAgICAgIHZpc3VhbFRleHQgKz0gYCR7Y29uZmlnLmhvdXJzfSAke2hvdXJzTGFiZWxTaG9ydH1gO1xuICAgICAgYTExeUxhYmVsICs9IGAke2NvbmZpZy5ob3Vyc30gJHtob3Vyc0xhYmVsTG9uZ31gO1xuICAgIH1cblxuICAgIHZpc3VhbFRleHQgKz0gYCAke2NvbmZpZy5taW51dGVzfSAke21pbnV0ZXNMYWJlbFNob3J0fWA7XG4gICAgYTExeUxhYmVsICs9IGAgJHtjb25maWcubWludXRlc30gJHttaW51dGVzTGFiZWxMb25nfS5gO1xuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8cCBhcmlhLWxhYmVsPSR7YTExeUxhYmVsfSBjbGFzcz1cImR1cmF0aW9uXCIgcm9sZT1cInRleHRcIj5cbiAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgY2xhc3M9XCJkdXJhdGlvbl9fdGV4dC0tdmlzdWFsXCIgcm9sZT1cInByZXNlbnRhdGlvblwiPlxuICAgICAgICAgICR7dmlzdWFsVGV4dH1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImR1cmF0aW9uX190ZXh0LS12aXN1YWxseS1oaWRkZW5cIj4ke2ExMXlMYWJlbH08L3NwYW4+XG4gICAgICA8L3A+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRpbWV0YWJsZS1kdXJhdGlvbic6IFNiYlRpbWV0YWJsZUR1cmF0aW9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBWWEsSUFBQSw4QkFBTixjQUEwQyxXQUFXO0FBQUEsRUFBckQsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBV0csU0FBQSxZQUFZLElBQUksc0JBQXNCLElBQUk7QUFBQSxFQUFBO0FBQUEsRUFFL0IsU0FBeUI7QUFDMUMsVUFBTSxTQUFTLEtBQUssTUFBTSxLQUFLLE1BQU07QUFFckMsVUFBTSxrQkFBa0IsaUJBQWlCLFNBQVMsTUFBTSxLQUFLLFVBQVUsT0FBTztBQUM5RSxVQUFNLG9CQUFvQixtQkFBbUIsU0FBUyxNQUFNLEtBQUssVUFBVSxPQUFPO0FBRWxGLFFBQUksYUFBYTtBQUNqQixRQUFJLFlBQVk7QUFFaEIsUUFBSSxpQkFBaUIsaUJBQWlCLFNBQVMsS0FBSyxLQUFLLFVBQVUsT0FBTztBQUMxRSxRQUFJLG1CQUFtQixtQkFBbUIsU0FBUyxLQUFLLEtBQUssVUFBVSxPQUFPO0FBRTFFLFFBQUEsT0FBTyxVQUFVLEdBQUc7QUFDdEIsdUJBQWlCLGlCQUFpQixPQUFPLEtBQUssS0FBSyxVQUFVLE9BQU87QUFBQSxJQUN0RTtBQUVJLFFBQUEsT0FBTyxZQUFZLEdBQUc7QUFDeEIseUJBQW1CLG1CQUFtQixPQUFPLEtBQUssS0FBSyxVQUFVLE9BQU87QUFBQSxJQUMxRTtBQUVJLFFBQUEsT0FBTyxVQUFVLEdBQUc7QUFDdEIsb0JBQWMsR0FBRyxPQUFPLEtBQUssSUFBSSxlQUFlO0FBQ2hELG1CQUFhLEdBQUcsT0FBTyxLQUFLLElBQUksY0FBYztBQUFBLElBQ2hEO0FBRUEsa0JBQWMsSUFBSSxPQUFPLE9BQU8sSUFBSSxpQkFBaUI7QUFDckQsaUJBQWEsSUFBSSxPQUFPLE9BQU8sSUFBSSxnQkFBZ0I7QUFFNUMsV0FBQTtBQUFBLHNCQUNXLFNBQVM7QUFBQTtBQUFBLFlBRW5CLFVBQVU7QUFBQTtBQUFBLHdEQUVrQyxTQUFTO0FBQUE7QUFBQTtBQUFBLEVBRy9EO0FBQ0Y7QUFsRGEsNEJBQ1ksU0FBeUI7QUFRN0IsZ0JBQUE7QUFBQSxFQUFsQixTQUFTO0FBQUEsR0FUQyw0QkFTUSxXQUFBLFVBQUEsQ0FBQTtBQVRSLDhCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLHdCQUF3QjtBQUFBLEdBQzFCLDJCQUFBOyJ9
92
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXRhYmxlLWR1cmF0aW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMtZXhwZXJpbWVudGFsL3RpbWV0YWJsZS1kdXJhdGlvbi90aW1ldGFibGUtZHVyYXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBpMThuRHVyYXRpb25Ib3VyLCBpMThuRHVyYXRpb25NaW51dGUgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdGltZXRhYmxlLWR1cmF0aW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogVXNlZCBpbiBgc2JiLXRpbWV0YWJsZS1yb3dgLCBpdCBkaXNwbGF5cyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJpcCBkdXJhdGlvbi5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi10aW1ldGFibGUtZHVyYXRpb24nKVxuZXhwb3J0IGNsYXNzIFNiYlRpbWV0YWJsZUR1cmF0aW9uRWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKipcbiAgICogU3RyaW5naWZpZWQgSlNPTiB3aGljaCBkZWZpbmVzIG1vc3Qgb2YgdGhlXG4gICAqIGNvbnRlbnQgb2YgdGhlIGNvbXBvbmVudC4gUGxlYXNlIGNoZWNrIHRoZVxuICAgKiBpbmRpdmlkdWFsIHN0b3JpZXMgdG8gZ2V0IGFuIGlkZWEgb2YgdGhlXG4gICAqIHN0cnVjdHVyZS5cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBjb25maWchOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIGNvbnN0IGNvbmZpZyA9IEpTT04ucGFyc2UodGhpcy5jb25maWcpO1xuXG4gICAgY29uc3QgaG91cnNMYWJlbFNob3J0ID0gaTE4bkR1cmF0aW9uSG91ci5tdWx0aXBsZS5zaG9ydFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XTtcbiAgICBjb25zdCBtaW51dGVzTGFiZWxTaG9ydCA9IGkxOG5EdXJhdGlvbk1pbnV0ZS5tdWx0aXBsZS5zaG9ydFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XTtcblxuICAgIGxldCB2aXN1YWxUZXh0ID0gJyc7XG4gICAgbGV0IGExMXlMYWJlbCA9ICcnO1xuXG4gICAgbGV0IGhvdXJzTGFiZWxMb25nID0gaTE4bkR1cmF0aW9uSG91ci5tdWx0aXBsZS5sb25nW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdO1xuICAgIGxldCBtaW51dGVzTGFiZWxMb25nID0gaTE4bkR1cmF0aW9uTWludXRlLm11bHRpcGxlLmxvbmdbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF07XG5cbiAgICBpZiAoY29uZmlnLmhvdXJzID09PSAxKSB7XG4gICAgICBob3Vyc0xhYmVsTG9uZyA9IGkxOG5EdXJhdGlvbkhvdXIuc2luZ2xlLmxvbmdbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF07XG4gICAgfVxuXG4gICAgaWYgKGNvbmZpZy5taW51dGVzID09PSAxKSB7XG4gICAgICBtaW51dGVzTGFiZWxMb25nID0gaTE4bkR1cmF0aW9uTWludXRlLnNpbmdsZS5sb25nW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdO1xuICAgIH1cblxuICAgIGlmIChjb25maWcuaG91cnMgIT09IDApIHtcbiAgICAgIHZpc3VhbFRleHQgKz0gYCR7Y29uZmlnLmhvdXJzfSAke2hvdXJzTGFiZWxTaG9ydH1gO1xuICAgICAgYTExeUxhYmVsICs9IGAke2NvbmZpZy5ob3Vyc30gJHtob3Vyc0xhYmVsTG9uZ31gO1xuICAgIH1cblxuICAgIHZpc3VhbFRleHQgKz0gYCAke2NvbmZpZy5taW51dGVzfSAke21pbnV0ZXNMYWJlbFNob3J0fWA7XG4gICAgYTExeUxhYmVsICs9IGAgJHtjb25maWcubWludXRlc30gJHttaW51dGVzTGFiZWxMb25nfS5gO1xuXG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8cCBhcmlhLWxhYmVsPSR7YTExeUxhYmVsfSBjbGFzcz1cImR1cmF0aW9uXCIgcm9sZT1cInRleHRcIj5cbiAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgY2xhc3M9XCJkdXJhdGlvbl9fdGV4dC0tdmlzdWFsXCIgcm9sZT1cInByZXNlbnRhdGlvblwiPlxuICAgICAgICAgICR7dmlzdWFsVGV4dH1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImR1cmF0aW9uX190ZXh0LS12aXN1YWxseS1oaWRkZW5cIj4ke2ExMXlMYWJlbH08L3NwYW4+XG4gICAgICA8L3A+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRpbWV0YWJsZS1kdXJhdGlvbic6IFNiYlRpbWV0YWJsZUR1cmF0aW9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZYSxJQUFBLDhCQUFOLGNBQTBDLFdBQVc7QUFBQSxFQUFyRCxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFXRyxTQUFBLFlBQVksSUFBSSxzQkFBc0IsSUFBSTtBQUFBLEVBQUE7QUFBQSxFQUUvQixTQUF5QjtBQUMxQyxVQUFNLFNBQVMsS0FBSyxNQUFNLEtBQUssTUFBTTtBQUVyQyxVQUFNLGtCQUFrQixpQkFBaUIsU0FBUyxNQUFNLEtBQUssVUFBVSxPQUFPO0FBQzlFLFVBQU0sb0JBQW9CLG1CQUFtQixTQUFTLE1BQU0sS0FBSyxVQUFVLE9BQU87QUFFbEYsUUFBSSxhQUFhO0FBQ2pCLFFBQUksWUFBWTtBQUVoQixRQUFJLGlCQUFpQixpQkFBaUIsU0FBUyxLQUFLLEtBQUssVUFBVSxPQUFPO0FBQzFFLFFBQUksbUJBQW1CLG1CQUFtQixTQUFTLEtBQUssS0FBSyxVQUFVLE9BQU87QUFFMUUsUUFBQSxPQUFPLFVBQVUsR0FBRztBQUN0Qix1QkFBaUIsaUJBQWlCLE9BQU8sS0FBSyxLQUFLLFVBQVUsT0FBTztBQUFBLElBQ3RFO0FBRUksUUFBQSxPQUFPLFlBQVksR0FBRztBQUN4Qix5QkFBbUIsbUJBQW1CLE9BQU8sS0FBSyxLQUFLLFVBQVUsT0FBTztBQUFBLElBQzFFO0FBRUksUUFBQSxPQUFPLFVBQVUsR0FBRztBQUN0QixvQkFBYyxHQUFHLE9BQU8sS0FBSyxJQUFJLGVBQWU7QUFDaEQsbUJBQWEsR0FBRyxPQUFPLEtBQUssSUFBSSxjQUFjO0FBQUEsSUFDaEQ7QUFFQSxrQkFBYyxJQUFJLE9BQU8sT0FBTyxJQUFJLGlCQUFpQjtBQUNyRCxpQkFBYSxJQUFJLE9BQU8sT0FBTyxJQUFJLGdCQUFnQjtBQUU1QyxXQUFBO0FBQUEsc0JBQ1csU0FBUztBQUFBO0FBQUEsWUFFbkIsVUFBVTtBQUFBO0FBQUEsd0RBRWtDLFNBQVM7QUFBQTtBQUFBO0FBQUEsRUFHL0Q7QUFDRjtBQWxEYSw0QkFDWSxTQUF5QjtBQVE3QixnQkFBQTtBQUFBLEVBQWxCLFNBQVM7QUFBQSxHQVRDLDRCQVNRLFdBQUEsVUFBQSxDQUFBO0FBVFIsOEJBQU4sZ0JBQUE7QUFBQSxFQUROLGNBQWMsd0JBQXdCO0FBQUEsR0FDMUIsMkJBQUE7In0=
@@ -11,14 +11,7 @@ import "@sbb-esta/lyne-elements/icon.js";
11
11
  import "@sbb-esta/lyne-elements/timetable-occupancy.js";
12
12
  import "./pearl-chain-time.js";
13
13
  import { f as format } from "./format-DTy5_IOt.js";
14
- const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
15
- /*
16
- * SBB table mixin
17
- * Notes:
18
- * We cannot use \`border-collapse\` because it is not compatible with the \`border-radius\` property.
19
- * Therefore, we have to build the grid avoiding double borders.
20
- */
21
- *,
14
+ const style = css`*,
22
15
  ::before,
23
16
  ::after {
24
17
  box-sizing: border-box;
@@ -670,4 +663,4 @@ export {
670
663
  renderStringProduct,
671
664
  sortSituation
672
665
  };
673
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXRhYmxlLXJvdy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC90aW1ldGFibGUtcm93L3RpbWV0YWJsZS1yb3cudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB7IHNldE9yUmVtb3ZlQXR0cmlidXRlIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kb20uanMnO1xuaW1wb3J0IHtcbiAgaTE4bkFycml2YWwsXG4gIGkxOG5DbGFzcyxcbiAgaTE4bkRlcGFydHVyZSxcbiAgaTE4bkRpcmVjdGlvbixcbiAgaTE4bkZyb21QbGF0Zm9ybSxcbiAgaTE4bk1lYW5zT2ZUcmFuc3BvcnQsXG4gIGkxOG5OZXcsXG4gIGkxOG5PY2N1cGFuY3ksXG4gIGkxOG5SZWFsVGltZUluZm8sXG4gIGkxOG5TdXBlcnNhdmVyLFxuICBpMThuVHJhbnNmZXJQcm9jZWR1cmVzLFxuICBpMThuVHJhdmVsaGludHMsXG4gIGkxOG5UcmlwRHVyYXRpb24sXG4gIGkxOG5UcmlwUXVheUNoYW5nZSxcbn0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRGF0ZUxpa2UsIFNiYk9jY3VwYW5jeSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgZHVyYXRpb25Ub1RpbWUsIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcgfSBmcm9tICcuLi9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB0eXBlIHsgSVRyaXBJdGVtLCBOb3RpY2UsIFB0UmlkZUxlZywgUHRTaXR1YXRpb24gfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5pbXBvcnQgeyBnZXREZXBhcnR1cmVBcnJpdmFsVGltZUF0dHJpYnV0ZSwgaXNSaWRlTGVnIH0gZnJvbSAnLi4vY29yZS90aW1ldGFibGUuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90aW1ldGFibGUtcm93LnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY2FyZC5qcyc7XG5pbXBvcnQgJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2ljb24uanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy90aW1ldGFibGUtb2NjdXBhbmN5LmpzJztcbmltcG9ydCAnLi4vcGVhcmwtY2hhaW4tdGltZS5qcyc7XG5cbi8qKiBIaW1DdXMgaW50ZXJmYWNlIGZvciBtYXBwZWQgaWNvbiBuYW1lIGFuZCB0ZXh0ICovXG5leHBvcnQgaW50ZXJmYWNlIEhpbUN1cyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGV4dD86IHN0cmluZyB8IG51bGw7XG59XG5cbi8qKiBCb2FyZGluZyBpY29uIGludGVyZmFjZSBmb3IgbWFwcGVkIGljb24gbmFtZSBhbmQgdGV4dCAqL1xuZXhwb3J0IGludGVyZmFjZSBCb2FyZGluZyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGV4dDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByaWNlIHtcbiAgcHJpY2U/OiBzdHJpbmc7XG4gIHRleHQ/OiBzdHJpbmc7XG4gIGlzRGlzY291bnQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgcmVuZGVySWNvblByb2R1Y3QgPSAoaWNvbjogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBUZW1wbGF0ZVJlc3VsdCA9PiB7XG4gIHJldHVybiBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LXRyYW5zcG9ydFwiPlxuICAgIDxzYmItaWNvbiBuYW1lPSR7aWNvbn0+PC9zYmItaWNvbj5cbiAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4ke25hbWV9PC9zcGFuPlxuICA8L3NwYW4+YDtcbn07XG5cbmV4cG9ydCBjb25zdCByZW5kZXJTdHJpbmdQcm9kdWN0ID0gKHZlaGljbGVOYW1lOiBzdHJpbmcsIGxpbmU/OiBzdHJpbmcgfCBudWxsKTogVGVtcGxhdGVSZXN1bHQgPT4ge1xuICBjb25zdCBzcGFjZSA9IFsnTScsICdCJywgJ1QnXS5pbmNsdWRlcyh2ZWhpY2xlTmFtZSkgPyAnICcgOiAnJztcbiAgcmV0dXJuIGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctdHJhbnNwb3J0bnVtYmVyXCI+XG4gICAgJHtsaW5lICE9PSBudWxsID8gdmVoaWNsZU5hbWUgKyBzcGFjZSArIGxpbmUgOiB2ZWhpY2xlTmFtZX1cbiAgPC9zcGFuPmA7XG59O1xuXG5jb25zdCBnZXRSZWFjaGFibGVUZXh0ID0gKGxlZ3M6IFB0UmlkZUxlZ1tdKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9PiB7XG4gIHJldHVybiBsZWdzPy5maW5kKChsZWcpID0+IGxlZy5zZXJ2aWNlSm91cm5leT8uc2VydmljZUFsdGVyYXRpb24/LnJlYWNoYWJsZVRleHQpPy5zZXJ2aWNlSm91cm5leVxuICAgID8uc2VydmljZUFsdGVyYXRpb24/LnJlYWNoYWJsZVRleHQ7XG59O1xuXG5jb25zdCBnZXREZWxheVRleHQgPSAobGVnczogUHRSaWRlTGVnW10pOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkID0+IHtcbiAgcmV0dXJuIGxlZ3M/LmZpbmQoKGxlZykgPT4gbGVnLnNlcnZpY2VKb3VybmV5Py5zZXJ2aWNlQWx0ZXJhdGlvbj8uZGVsYXlUZXh0KT8uc2VydmljZUpvdXJuZXlcbiAgICA/LnNlcnZpY2VBbHRlcmF0aW9uPy5kZWxheVRleHQ7XG59O1xuXG5jb25zdCBnZXRSZWRpcmVjdGVkVGV4dCA9IChsZWdzOiBQdFJpZGVMZWdbXSk6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgPT4ge1xuICByZXR1cm4gbGVncz8uZmluZCgobGVnKSA9PiAhIWxlZy5zZXJ2aWNlSm91cm5leT8uc2VydmljZUFsdGVyYXRpb24/LnJlZGlyZWN0ZWRUZXh0KVxuICAgID8uc2VydmljZUpvdXJuZXk/LnNlcnZpY2VBbHRlcmF0aW9uPy5yZWRpcmVjdGVkVGV4dDtcbn07XG5cbmNvbnN0IGdldFVucGxhbm5lZFN0b3AgPSAobGVnczogUHRSaWRlTGVnW10pOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkID0+IHtcbiAgcmV0dXJuIGxlZ3M/LmZpbmQoKGxlZykgPT4gISFsZWcuc2VydmljZUpvdXJuZXk/LnNlcnZpY2VBbHRlcmF0aW9uPy51bnBsYW5uZWRTdG9wUG9pbnRzVGV4dClcbiAgICA/LnNlcnZpY2VKb3VybmV5Py5zZXJ2aWNlQWx0ZXJhdGlvbj8udW5wbGFubmVkU3RvcFBvaW50c1RleHQ7XG59O1xuXG5leHBvcnQgY29uc3Qgc29ydFNpdHVhdGlvbiA9IChzaXR1YXRpb25zOiBQdFNpdHVhdGlvbltdKTogUHRTaXR1YXRpb25bXSA9PiB7XG4gIGNvbnN0IHByaW9yaXRpZXMgPSB7XG4gICAgRElTVFVSQkFOQ0U6IDAsXG4gICAgSU5GT1JNQVRJT046IDEsXG4gICAgREVMQVk6IDIsXG4gICAgVFJBSU5fUkVQTEFDRU1FTlRfQllfQlVTOiAzLFxuICAgIENPTlNUUlVDVElPTl9TSVRFOiA0LFxuICAgIEVORF9NRVNTQUdFOiA1LFxuICB9O1xuXG4gIHJldHVybiBbLi4uc2l0dWF0aW9uc10/LnNvcnQoXG4gICAgKGE6IFB0U2l0dWF0aW9uLCBiOiBQdFNpdHVhdGlvbikgPT4gcHJpb3JpdGllc1thLmNhdXNlIV0gLSBwcmlvcml0aWVzW2IuY2F1c2UhXSxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRIaW1JY29uID0gKHNpdHVhdGlvbjogUHRTaXR1YXRpb24pOiBIaW1DdXMgPT4ge1xuICBzd2l0Y2ggKHNpdHVhdGlvbj8uY2F1c2UpIHtcbiAgICBjYXNlICdESVNUVVJCQU5DRSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAnZGlzcnVwdGlvbicsXG4gICAgICAgIHRleHQ6IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXM/Lmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gICAgY2FzZSAnSU5GT1JNQVRJT04nOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2luZm8nLFxuICAgICAgICB0ZXh0OiBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzLmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gICAgY2FzZSAnREVMQVknOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2RlbGF5JyxcbiAgICAgICAgdGV4dDogc2l0dWF0aW9uPy5icm9hZGNhc3RNZXNzYWdlcy5sZW5ndGggPyBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzWzBdLnRpdGxlIDogJycsXG4gICAgICB9O1xuICAgIGNhc2UgJ1RSQUlOX1JFUExBQ0VNRU5UX0JZX0JVUyc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAncmVwbGFjZW1lbnRidXMnLFxuICAgICAgICB0ZXh0OiBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzLmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gICAgY2FzZSAnQ09OU1RSVUNUSU9OX1NJVEUnOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2NvbnN0cnVjdGlvbicsXG4gICAgICAgIHRleHQ6IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXMubGVuZ3RoID8gc2l0dWF0aW9uPy5icm9hZGNhc3RNZXNzYWdlc1swXS50aXRsZSA6ICcnLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2luZm8nLFxuICAgICAgICB0ZXh0OiBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzLmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDdXMgPSAodHJpcDogSVRyaXBJdGVtLCBjdXJyZW50TGFuZ3VhZ2U6IHN0cmluZyk6IEhpbUN1cyA9PiB7XG4gIGNvbnN0IHsgc3VtbWFyeSwgbGVncyB9ID0gdHJpcCB8fCB7fTtcbiAgY29uc3QgcmlkZUxlZ3MgPSBsZWdzPy5maWx0ZXIoKGxlZykgPT4gaXNSaWRlTGVnKGxlZykpIGFzIFB0UmlkZUxlZ1tdO1xuICBjb25zdCB7IHRyaXBTdGF0dXMgfSA9IHN1bW1hcnkgfHwge307XG5cbiAgaWYgKHRyaXBTdGF0dXM/LmNhbmNlbGxlZCB8fCB0cmlwU3RhdHVzPy5wYXJ0aWFsbHlDYW5jZWxsZWQpXG4gICAgcmV0dXJuIHsgbmFtZTogJ2NhbmNlbGxhdGlvbicsIHRleHQ6IHRyaXBTdGF0dXM/LmNhbmNlbGxlZFRleHQgfTtcbiAgaWYgKGdldFJlYWNoYWJsZVRleHQocmlkZUxlZ3MpKVxuICAgIHJldHVybiB7IG5hbWU6ICdtaXNzZWQtY29ubmVjdGlvbicsIHRleHQ6IGdldFJlYWNoYWJsZVRleHQocmlkZUxlZ3MpIH07XG4gIGlmICh0cmlwU3RhdHVzPy5hbHRlcm5hdGl2ZSkgcmV0dXJuIHsgbmFtZTogJ2FsdGVybmF0aXZlJywgdGV4dDogdHJpcFN0YXR1cy5hbHRlcm5hdGl2ZVRleHQgfTtcbiAgaWYgKGdldFJlZGlyZWN0ZWRUZXh0KHJpZGVMZWdzKSkgcmV0dXJuIHsgbmFtZTogJ3Jlcm91dGUnLCB0ZXh0OiBnZXRSZWRpcmVjdGVkVGV4dChyaWRlTGVncykgfTtcbiAgaWYgKGdldFVucGxhbm5lZFN0b3AocmlkZUxlZ3MpKSByZXR1cm4geyBuYW1lOiAnYWRkLXN0b3AnLCB0ZXh0OiBnZXRVbnBsYW5uZWRTdG9wKHJpZGVMZWdzKSB9O1xuICBpZiAodHJpcFN0YXR1cz8uZGVsYXllZCB8fCB0cmlwU3RhdHVzPy5kZWxheWVkVW5rbm93bilcbiAgICByZXR1cm4geyBuYW1lOiAnZGVsYXknLCB0ZXh0OiBnZXREZWxheVRleHQocmlkZUxlZ3MpIH07XG4gIGlmICh0cmlwU3RhdHVzPy5xdWF5Q2hhbmdlZCkge1xuICAgIGNvbnN0IGRlcGFydHVyZSA9IHJpZGVMZWdzWzBdLmRlcGFydHVyZTtcbiAgICByZXR1cm4ge1xuICAgICAgbmFtZTogJ3BsYXRmb3JtLWNoYW5nZScsXG4gICAgICB0ZXh0OiBkZXBhcnR1cmUucXVheUNoYW5nZWQgPyBkZXBhcnR1cmUucXVheUNoYW5nZWRUZXh0IDogaTE4blRyaXBRdWF5Q2hhbmdlW2N1cnJlbnRMYW5ndWFnZV0sXG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiB7fSBhcyBIaW1DdXM7XG59O1xuXG5jb25zdCBmaW5kQW5kUmVwbGFjZU5vdGljZSA9IChub3RpY2VzOiBOb3RpY2VbXSk6IE5vdGljZSB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHJlc2VydmF0aW9uTm90aWNlID0gWydSUicsICdSSycsICdSQycsICdSTCcsICdSTScsICdSUycsICdSVScsICdYUCcsICdYUicsICdYVCddO1xuXG4gIHJldHVybiBub3RpY2VzLnJlZHVjZSgoZm91bmROb3RpY2U6IE5vdGljZSB8IHVuZGVmaW5lZCwgbm90aWNlOiBOb3RpY2UpOiBOb3RpY2UgfCB1bmRlZmluZWQgPT4ge1xuICAgIGlmIChmb3VuZE5vdGljZSkgcmV0dXJuIGZvdW5kTm90aWNlO1xuICAgIGlmIChyZXNlcnZhdGlvbk5vdGljZS5pbmNsdWRlcyhub3RpY2UubmFtZSkpIHtcbiAgICAgIHJldHVybiB7IC4uLm5vdGljZSwgbmFtZTogJ1JSJyB9IGFzIE5vdGljZTtcbiAgICB9XG4gIH0sIHVuZGVmaW5lZCk7XG59O1xuXG5leHBvcnQgY29uc3QgZmlsdGVyTm90aWNlcyA9IChub3RpY2VzOiBOb3RpY2VbXSk6IE5vdGljZVtdID0+IHtcbiAgY29uc3QgYWxsb3dlZE5hbWVzID0gWydaJywgJ1NCJywgJ1NaJywgJ1ZSJywgJ1RHJ107XG5cbiAgY29uc3QgZmlsdGVyTm90aWNlID0gbm90aWNlcy5maWx0ZXIoKG5vdGljZSwgaW5kZXgpID0+IHtcbiAgICByZXR1cm4gbm90aWNlcy5maW5kSW5kZXgoKG4pID0+IG4ubmFtZSA9PT0gbm90aWNlLm5hbWUpID09PSBpbmRleDtcbiAgfSk7XG5cbiAgcmV0dXJuIGZpbHRlck5vdGljZVxuICAgIC5maWx0ZXIoKG5vdGljZSkgPT4gYWxsb3dlZE5hbWVzLmluY2x1ZGVzKG5vdGljZS5uYW1lKSlcbiAgICAuc29ydCgoYSwgYikgPT4gYWxsb3dlZE5hbWVzLmluZGV4T2YoYS5uYW1lKSAtIGFsbG93ZWROYW1lcy5pbmRleE9mKGIubmFtZSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZU5vdGljZXMgPSAobm90aWNlczogTm90aWNlW10pOiBOb3RpY2VbXSA9PiB7XG4gIGNvbnN0IHJlc2VydmF0aW9uTm90aWNlID0gZmluZEFuZFJlcGxhY2VOb3RpY2Uobm90aWNlcyk7XG4gIGNvbnN0IGZpbHRlcmVkTm90aWNlcyA9IGZpbHRlck5vdGljZXMobm90aWNlcyk7XG5cbiAgaWYgKHJlc2VydmF0aW9uTm90aWNlID09PSB1bmRlZmluZWQpIHJldHVybiBmaWx0ZXJlZE5vdGljZXM7XG4gIGlmICghZmlsdGVyZWROb3RpY2VzLmxlbmd0aCkgcmV0dXJuIFtyZXNlcnZhdGlvbk5vdGljZV07XG5cbiAgaWYgKGZpbHRlcmVkTm90aWNlc1swXS5uYW1lID09PSAnWicgJiYgZmlsdGVyZWROb3RpY2VzWzFdKSB7XG4gICAgcmV0dXJuIFtmaWx0ZXJlZE5vdGljZXNbMF0sIHJlc2VydmF0aW9uTm90aWNlLCBmaWx0ZXJlZE5vdGljZXNbMV1dLmNvbmNhdChcbiAgICAgIGZpbHRlcmVkTm90aWNlcy5zbGljZSgyKSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIFtyZXNlcnZhdGlvbk5vdGljZSwgLi4uZmlsdGVyZWROb3RpY2VzXTtcbn07XG5cbi8qKlxuICogSXQgZGlzcGxheXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyaXAsIGFjdGluZyBhcyBhIGNvbnRhaW5lciBmb3IgYWxsIHRoZSBgc2JiLXRpbWV0YWJsZS0qYCBjb21wb25lbnRzLlxuICogKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGltZXRhYmxlLXJvdycpXG5leHBvcnQgY2xhc3MgU2JiVGltZXRhYmxlUm93RWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKiogVGhlIHRyaXAgUHJvcC4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogT2JqZWN0IH0pIHB1YmxpYyB0cmlwITogSVRyaXBJdGVtO1xuXG4gIC8qKiBUaGUgcHJpY2UgUHJvcCwgd2hpY2ggY29uc2lzdHMgb2YgdGhlIGRhdGEgZm9yIHRoZSBiYWRnZS4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogT2JqZWN0IH0pIHB1YmxpYyBwcmljZT86IFByaWNlO1xuXG4gIC8qKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIHRoZSBzYmItcGVhcmwtY2hhaW4gY29tcG9uZW50IC0gaWYgdHJ1ZSB0aGUgcG9zaXRpb24gd29uJ3QgYmUgYW5pbWF0ZWQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Rpc2FibGUtYW5pbWF0aW9uJywgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgZGlzYWJsZUFuaW1hdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gdGhlIG5vdGljZXMgc2VjdGlvbiAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBPYmplY3QgfSkgcHVibGljIGJvYXJkaW5nPzogQm9hcmRpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBsb2FkaW5nIHN0YXRlIC1cbiAgICogd2hlbiB0aGlzIGlzIHRydWUgaXQgd2lsbCBiZSByZW5kZXIgc2tlbGV0b24gd2l0aCBhbiBpZGxpbmcgYW5pbWF0aW9uXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdsb2FkaW5nLXRyaXAnLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBsb2FkaW5nVHJpcCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgRm9vdHBhdGggYXR0cmlidXRlIGZvciByZW5kZXJpbmcgZGlmZmVyZW50IGljb25zXG4gICAqIHRydWU6IHJlbmRlciBhMTF5LWljb25cbiAgICogZmFsc2U6IHJlbmRlciB3YWxrLWljb25cbiAgICogZGVmYXVsdDogcmVuZGVyIHdhbGstaWNvblxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYTExeS1mb290cGF0aCcsIHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIGExMXlGb290cGF0aD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBsb2FkaW5nIHN0YXRlIC1cbiAgICogd2hlbiB0aGlzIGlzIHRydWUgaXQgd2lsbCBiZSByZW5kZXIgc2tlbGV0b24gd2l0aCBhbiBpZGxpbmcgYW5pbWF0aW9uXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdsb2FkaW5nLXByaWNlJywgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgbG9hZGluZ1ByaWNlID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEhpZGRlbiBsYWJlbCBmb3IgdGhlIGNhcmQgYWN0aW9uLiBJdCBvdmVycmlkZXMgdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGFjY2Vzc2liaWxpdHkgdGV4dCBmb3IgdGhlIGNvbXBvbmVudC4gVXNlIHRoaXMgcHJvcCB0byBwcm92aWRlIGN1c3RvbSBhY2Nlc3NpYmlsaXR5IGluZm9ybWF0aW9uIGZvciB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnY2FyZC1hY3Rpb24tbGFiZWwnIH0pIHB1YmxpYyBjYXJkQWN0aW9uTGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gdGhlIHNiYi1jYXJkIGNvbXBvbmVudCBhcyBhcmlhLWV4cGFuZGVkLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWV4cGFuZGVkJywgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzaWJpbGl0eUV4cGFuZGVkPzogYm9vbGVhbjtcblxuICAvKiogV2hlbiB0aGlzIHByb3AgaXMgdHJ1ZSB0aGUgc2JiLWNhcmQgd2lsbCBiZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhY3RpdmU/OiBib29sZWFuO1xuXG4gIC8qKiBBIGNvbmZpZ3VyZWQgZGF0ZSB3aGljaCBhY3RzIGFzIHRoZSBjdXJyZW50IGRhdGUgaW5zdGVhZCBvZiB0aGUgcmVhbCBjdXJyZW50IGRhdGUuIFJlY29tbWVuZGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IG5vdyh2YWx1ZTogU2JiRGF0ZUxpa2UgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9ub3cgPSBkZWZhdWx0RGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKGRlZmF1bHREYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgbm93KCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9ub3cgPz8gbmV3IERhdGUoKTtcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsb2FkaW5nVHJpcCcpKSB7XG4gICAgICBzZXRPclJlbW92ZUF0dHJpYnV0ZSh0aGlzLCAncm9sZScsICF0aGlzLmxvYWRpbmdUcmlwID8gJ3Jvd2dyb3VwJyA6IG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBUaGUgc2tlbGV0b24gcmVuZGVyIGZ1bmN0aW9uIGZvciB0aGUgbG9hZGluZyBzdGF0ZSAqL1xuICBwcml2YXRlIF9yZW5kZXJTa2VsZXRvbigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c2JiLWNhcmQgc2l6ZT1cImxcIiBjbGFzcz1cInNiYi1sb2FkaW5nXCI+XG4gICAgICAgICR7dGhpcy5sb2FkaW5nUHJpY2VcbiAgICAgICAgICA/IGh0bWxgPHNiYi1jYXJkLWJhZGdlIGNsYXNzPVwic2JiLWxvYWRpbmdfX2JhZGdlXCI+PC9zYmItY2FyZC1iYWRnZT5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLWxvYWRpbmdfX3dyYXBwZXJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLWxvYWRpbmdfX3Jvd1wiPjwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbG9hZGluZ19fcm93XCI+PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1sb2FkaW5nX19yb3dcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NiYi1jYXJkPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRRdWF5VHlwZVN0cmluZ3MoKTogeyBsb25nOiBzdHJpbmc7IHNob3J0OiBzdHJpbmcgfSB8IG51bGwge1xuICAgIGlmICghdGhpcy50cmlwLnN1bW1hcnk/LnByb2R1Y3QpIHJldHVybiBudWxsO1xuICAgIGNvbnN0IHJpZGVMZWdzID0gdGhpcy50cmlwLmxlZ3M/LmZpbHRlcigobGVnKSA9PiBpc1JpZGVMZWcobGVnKSkgYXMgUHRSaWRlTGVnW107XG4gICAgY29uc3QgaXNTaG9ydCA9IHRoaXMudHJpcC5zdW1tYXJ5LnByb2R1Y3Q/LnZlaGljbGVNb2RlID09PSAnVFJBSU4nO1xuICAgIGNvbnN0IHNob3J0ID0gaXNTaG9ydFxuICAgICAgPyByaWRlTGVnc1swXS5zZXJ2aWNlSm91cm5leS5xdWF5VHlwZVNob3J0TmFtZSB8fCAnJ1xuICAgICAgOiByaWRlTGVnc1swXS5zZXJ2aWNlSm91cm5leS5xdWF5VHlwZU5hbWUgfHwgJyc7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbG9uZzogaTE4bkZyb21QbGF0Zm9ybVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XSArICcgJyArIHNob3J0LFxuICAgICAgc2hvcnQsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBtYXAgUXVheSAqL1xuICBwcml2YXRlIF9yZW5kZXJRdWF5VHlwZSgpOiBUZW1wbGF0ZVJlc3VsdCB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLnRyaXAuc3VtbWFyeT8ucHJvZHVjdCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBjb25zdCBxdWF5VHlwZVN0cmluZ3MgPSB0aGlzLl9nZXRRdWF5VHlwZVN0cmluZ3MoKTtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LS1xdWF5XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPiR7cXVheVR5cGVTdHJpbmdzPy5sb25nfSZuYnNwOzwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctLXF1YXktdHlwZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgPiR7cXVheVR5cGVTdHJpbmdzPy5zaG9ydH08L3NwYW5cbiAgICAgICAgPlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVIaW1DdXModHJpcDogSVRyaXBJdGVtKTogeyBjdXM6IEhpbUN1cyB8IG51bGw7IGhpbTogSGltQ3VzIHwgbnVsbCB9IHtcbiAgICBjb25zdCB7IHNpdHVhdGlvbnMgfSA9IHRyaXAgfHwge307XG4gICAgY29uc3Qgc29ydGVkU2l0dWF0aW9ucyA9IHNpdHVhdGlvbnMgJiYgc29ydFNpdHVhdGlvbihzaXR1YXRpb25zKTtcbiAgICBjb25zdCBjdXMgPSBnZXRDdXModHJpcCwgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgY3VzOiBPYmplY3Qua2V5cyhjdXMpPy5sZW5ndGggPyBjdXMgOiBudWxsLFxuICAgICAgaGltOiBzaXR1YXRpb25zPy5sZW5ndGggPyBnZXRIaW1JY29uKHNvcnRlZFNpdHVhdGlvbnNbMF0pIDogbnVsbCxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0QWNjZXNzaWJpbGl0eVRleHQodHJpcDogSVRyaXBJdGVtKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IHN1bW1hcnksIGxlZ3MsIG5vdGljZXMgfSA9IHRyaXAgfHwge307XG4gICAgY29uc3Qge1xuICAgICAgZGVwYXJ0dXJlV2FsayxcbiAgICAgIGFycml2YWxXYWxrLFxuICAgICAgZGVwYXJ0dXJlLFxuICAgICAgYXJyaXZhbCxcbiAgICAgIHByb2R1Y3QsXG4gICAgICBkaXJlY3Rpb24sXG4gICAgICBvY2N1cGFuY3ksXG4gICAgICBkdXJhdGlvbixcbiAgICB9ID0gc3VtbWFyeSB8fCB7fTtcblxuICAgIGNvbnN0IHsgZGVwYXJ0dXJlVGltZUF0dHJpYnV0ZSwgYXJyaXZhbFRpbWVBdHRyaWJ1dGUgfSA9IGdldERlcGFydHVyZUFycml2YWxUaW1lQXR0cmlidXRlKFxuICAgICAgbGVncyxcbiAgICAgIGRlcGFydHVyZVdhbGsgfHwgMCxcbiAgICAgIGFycml2YWxXYWxrIHx8IDAsXG4gICAgICB0aGlzLl9sYW5ndWFnZS5jdXJyZW50LFxuICAgICAgdGhpcy5hMTF5Rm9vdHBhdGgsXG4gICAgKTtcblxuICAgIGNvbnN0IGRlcGFydHVyZVRpbWU6IERhdGUgfCB1bmRlZmluZWQgPSBkZXBhcnR1cmU/LnRpbWVcbiAgICAgID8gcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhkZXBhcnR1cmUudGltZSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgYXJyaXZhbFRpbWU6IERhdGUgfCB1bmRlZmluZWQgPSBhcnJpdmFsPy50aW1lXG4gICAgICA/IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcoYXJyaXZhbC50aW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBkZXBhcnR1cmVXYWxrVGV4dCA9IGRlcGFydHVyZVRpbWVBdHRyaWJ1dGVcbiAgICAgID8gYCR7ZGVwYXJ0dXJlVGltZUF0dHJpYnV0ZS50ZXh0fSAke2RlcGFydHVyZVRpbWVBdHRyaWJ1dGUuZHVyYXRpb259LCBgXG4gICAgICA6ICcnO1xuXG4gICAgY29uc3QgYXJyaXZhbFdhbGtUZXh0ID0gYXJyaXZhbFRpbWVBdHRyaWJ1dGVcbiAgICAgID8gYCR7YXJyaXZhbFRpbWVBdHRyaWJ1dGUudGV4dH0gJHthcnJpdmFsVGltZUF0dHJpYnV0ZS5kdXJhdGlvbn0sIGBcbiAgICAgIDogJyc7XG5cbiAgICBjb25zdCBkZXBhcnR1cmVUaW1lVGV4dCA9IGRlcGFydHVyZVRpbWVcbiAgICAgID8gYCR7aTE4bkRlcGFydHVyZVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX06ICR7Zm9ybWF0KGRlcGFydHVyZVRpbWUsICdISDptbScpfSwgYFxuICAgICAgOiAnJztcblxuICAgIGNvbnN0IGdldERlcGFydHVyZVF1YXlUZXh0ID0gKCk6IHN0cmluZyA9PiB7XG4gICAgICBpZiAoIWRlcGFydHVyZT8ucXVheUZvcm1hdHRlZCkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG5cbiAgICAgIC8vIGFkZCBwcmVmaXggXCJuZXdcIiBpZiBxdWF5IHdhcyBjaGFuZ2VkXG4gICAgICBjb25zdCBjaGFuZ2VkUXVheVByZWZpeCA9IGRlcGFydHVyZT8ucXVheUNoYW5nZWQgPyBgJHtpMThuTmV3W3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSBgIDogJyc7XG4gICAgICByZXR1cm4gYCR7Y2hhbmdlZFF1YXlQcmVmaXh9JHtcbiAgICAgICAgdGhpcy5fZ2V0UXVheVR5cGVTdHJpbmdzKCk/LmxvbmdcbiAgICAgIH0gJHtkZXBhcnR1cmU/LnF1YXlGb3JtYXR0ZWR9LCBgO1xuICAgIH07XG5cbiAgICBjb25zdCBtZWFuc09mVHJhbnNwb3J0VGV4dCA9XG4gICAgICBwcm9kdWN0ICYmIHByb2R1Y3QudmVoaWNsZU1vZGVcbiAgICAgICAgPyBpMThuTWVhbnNPZlRyYW5zcG9ydFtwcm9kdWN0LnZlaGljbGVNb2RlLnRvTG93ZXJDYXNlKCldICYmXG4gICAgICAgICAgYCR7aTE4bk1lYW5zT2ZUcmFuc3BvcnRbcHJvZHVjdC52ZWhpY2xlTW9kZS50b0xvd2VyQ2FzZSgpXVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX0sIGBcbiAgICAgICAgOiAnJztcblxuICAgIGNvbnN0IHZlaGljbGVTdWJNb2RlVGV4dCA9IHByb2R1Y3Q/LnZlaGljbGVTdWJNb2RlU2hvcnROYW1lXG4gICAgICA/IGAke3Byb2R1Y3QudmVoaWNsZVN1Yk1vZGVTaG9ydE5hbWV9ICR7cHJvZHVjdC5saW5lIHx8ICcnfSwgYFxuICAgICAgOiAnJztcblxuICAgIGNvbnN0IGRpcmVjdGlvblRleHQgPSBgJHtpMThuRGlyZWN0aW9uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke2RpcmVjdGlvbn0sIGA7XG5cbiAgICBjb25zdCBoaW1DdXMgPSB0aGlzLl9oYW5kbGVIaW1DdXModHJpcCk7XG4gICAgY29uc3QgY3VzVGV4dCA9IGhpbUN1cz8uY3VzPy50ZXh0XG4gICAgICA/IGAke2kxOG5SZWFsVGltZUluZm9bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19OiAke2hpbUN1cz8uY3VzPy50ZXh0fSwgYFxuICAgICAgOiAnJztcbiAgICBjb25zdCBoaW1UZXh0ID0gaGltQ3VzPy5oaW0/LnRleHRcbiAgICAgID8gYCR7aTE4blJlYWxUaW1lSW5mb1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX06ICR7aGltQ3VzPy5oaW0/LnRleHR9LCBgXG4gICAgICA6ICcnO1xuXG4gICAgY29uc3QgYm9hcmRpbmdUZXh0ID0gdGhpcy5ib2FyZGluZyA/IGAke3RoaXMuYm9hcmRpbmcudGV4dH0sIGAgOiAnJztcblxuICAgIGNvbnN0IHByaWNlVGV4dCA9IGAke3RoaXMucHJpY2U/LmlzRGlzY291bnQgPyBpMThuU3VwZXJzYXZlclt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XSA6ICcnfSAke1xuICAgICAgdGhpcy5wcmljZT8udGV4dCAmJiB0aGlzLnByaWNlPy5wcmljZVxuICAgICAgICA/ICh0aGlzLnByaWNlPy50ZXh0IHx8ICcnKSArICcgJyArICh0aGlzLnByaWNlPy5wcmljZSB8fCAnJykgKyAnLCAnXG4gICAgICAgIDogJydcbiAgICB9YDtcblxuICAgIGNvbnN0IHRyYW5zZmVyUHJvY2VkdXJlcyA9XG4gICAgICBsZWdzPy5sZW5ndGggPiAxXG4gICAgICAgID8gYCR7bGVncz8ubGVuZ3RoIC0gMX0gJHtpMThuVHJhbnNmZXJQcm9jZWR1cmVzW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSwgYFxuICAgICAgICA6ICcnO1xuXG4gICAgY29uc3QgYXJyaXZhbFRpbWVUZXh0ID0gYXJyaXZhbFRpbWVcbiAgICAgID8gYCR7aTE4bkFycml2YWxbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19OiAke2Zvcm1hdChhcnJpdmFsVGltZSwgJ0hIOm1tJyl9LCBgXG4gICAgICA6ICcnO1xuXG4gICAgbGV0IG9jY3VwYW5jeVRleHQ6IHN0cmluZyA9ICcnO1xuICAgIGlmIChvY2N1cGFuY3kpIHtcbiAgICAgIGlmIChvY2N1cGFuY3kuZmlyc3RDbGFzcyAmJiBvY2N1cGFuY3kuZmlyc3RDbGFzcyAhPT0gJ1VOS05PV04nKSB7XG4gICAgICAgIG9jY3VwYW5jeVRleHQgKz0gYCR7aTE4bkNsYXNzLmZpcnN0W3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke1xuICAgICAgICAgIChcbiAgICAgICAgICAgIGkxOG5PY2N1cGFuY3lbb2NjdXBhbmN5LmZpcnN0Q2xhc3MudG9Mb3dlckNhc2UoKSBhcyBTYmJPY2N1cGFuY3ldIGFzIFJlY29yZDxcbiAgICAgICAgICAgICAgc3RyaW5nLFxuICAgICAgICAgICAgICBzdHJpbmdcbiAgICAgICAgICAgID5cbiAgICAgICAgICApPy5bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF1cbiAgICAgICAgfS5gO1xuICAgICAgfVxuICAgICAgaWYgKG9jY3VwYW5jeS5zZWNvbmRDbGFzcyAmJiBvY2N1cGFuY3kuc2Vjb25kQ2xhc3MgIT09ICdVTktOT1dOJykge1xuICAgICAgICBvY2N1cGFuY3lUZXh0ICs9IGAgJHtpMThuQ2xhc3Muc2Vjb25kW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke1xuICAgICAgICAgIChcbiAgICAgICAgICAgIGkxOG5PY2N1cGFuY3lbb2NjdXBhbmN5LnNlY29uZENsYXNzLnRvTG93ZXJDYXNlKCkgYXMgU2JiT2NjdXBhbmN5XSBhcyBSZWNvcmQ8XG4gICAgICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICAgICAgc3RyaW5nXG4gICAgICAgICAgICA+XG4gICAgICAgICAgKT8uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdXG4gICAgICAgIH0uYDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVzID1cbiAgICAgIG5vdGljZXMgJiZcbiAgICAgIGhhbmRsZU5vdGljZXMobm90aWNlcykubGVuZ3RoICYmXG4gICAgICBoYW5kbGVOb3RpY2VzKG5vdGljZXMpXG4gICAgICAgID8ubWFwKChub3RpY2UsIGluZGV4KSA9PiBpbmRleCA8IDQgJiYgbm90aWNlLnRleHQ/LnRlbXBsYXRlKVxuICAgICAgICAuam9pbignLCAnKSArICcsICc7XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVzVGV4dCA9IGF0dHJpYnV0ZXNcbiAgICAgID8gYCR7aTE4blRyYXZlbGhpbnRzW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfTogJHthdHRyaWJ1dGVzfWBcbiAgICAgIDogJyc7XG5cbiAgICBjb25zdCBkdXJhdGlvblRleHQgPVxuICAgICAgISFkdXJhdGlvbiAmJiBkdXJhdGlvbiA+IDBcbiAgICAgICAgPyBgJHtpMThuVHJpcER1cmF0aW9uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke1xuICAgICAgICAgICAgZHVyYXRpb25Ub1RpbWUoZHVyYXRpb24sIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQpLmxvbmdcbiAgICAgICAgICB9LCBgXG4gICAgICAgIDogJyc7XG5cbiAgICByZXR1cm4gYCR7ZGVwYXJ0dXJlV2Fsa1RleHR9ICR7ZGVwYXJ0dXJlVGltZVRleHR9ICR7Z2V0RGVwYXJ0dXJlUXVheVRleHQoKX0gJHttZWFuc09mVHJhbnNwb3J0VGV4dH0gJHt2ZWhpY2xlU3ViTW9kZVRleHR9ICR7ZGlyZWN0aW9uVGV4dH0gJHtjdXNUZXh0fSAke2JvYXJkaW5nVGV4dH0gJHtwcmljZVRleHR9ICR7XG4gICAgICBjdXNUZXh0ID8gJycgOiBoaW1UZXh0XG4gICAgfSAke2Fycml2YWxUaW1lVGV4dH0gJHthcnJpdmFsV2Fsa1RleHR9ICR7ZHVyYXRpb25UZXh0fSAke3RyYW5zZmVyUHJvY2VkdXJlc30gJHtvY2N1cGFuY3lUZXh0fSAke2F0dHJpYnV0ZXNUZXh0fWA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBpZiAodGhpcy5sb2FkaW5nVHJpcCkge1xuICAgICAgcmV0dXJuIHRoaXMuX3JlbmRlclNrZWxldG9uKCk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBsZWdzLCBpZCwgbm90aWNlcywgc3VtbWFyeSB9ID0gdGhpcy50cmlwIHx8IHt9O1xuXG4gICAgY29uc3Qge1xuICAgICAgcHJvZHVjdCxcbiAgICAgIGRpcmVjdGlvbixcbiAgICAgIGRlcGFydHVyZVdhbGssXG4gICAgICBkZXBhcnR1cmUsXG4gICAgICBhcnJpdmFsLFxuICAgICAgYXJyaXZhbFdhbGssXG4gICAgICBvY2N1cGFuY3ksXG4gICAgICBkdXJhdGlvbixcbiAgICB9ID0gc3VtbWFyeSB8fCB7fTtcblxuICAgIGNvbnN0IGhpbUN1cyA9IHRoaXMuX2hhbmRsZUhpbUN1cyh0aGlzLnRyaXApO1xuICAgIGNvbnN0IGhhc0hpbUN1cyA9ICEhaGltQ3VzLmN1cyB8fCAhIWhpbUN1cy5oaW07XG5cbiAgICBjb25zdCBub3RpY2VBdHRyaWJ1dGVzID0gbm90aWNlcyAmJiBoYW5kbGVOb3RpY2VzKG5vdGljZXMpO1xuXG4gICAgY29uc3QgZHVyYXRpb25PYmogPSBkdXJhdGlvbiA/IGR1cmF0aW9uVG9UaW1lKGR1cmF0aW9uLCB0aGlzLl9sYW5ndWFnZS5jdXJyZW50KSA6IG51bGw7XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzYmItY2FyZCBzaXplPVwibFwiIGlkPSR7aWR9PlxuICAgICAgICA8c2JiLWNhcmQtYnV0dG9uXG4gICAgICAgICAgP2FjdGl2ZT0ke3RoaXMuYWN0aXZlfVxuICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9JHt0aGlzLmFjY2Vzc2liaWxpdHlFeHBhbmRlZD8udG9TdHJpbmcoKSA/PyBub3RoaW5nfVxuICAgICAgICA+XG4gICAgICAgICAgJHt0aGlzLmNhcmRBY3Rpb25MYWJlbCA/IHRoaXMuY2FyZEFjdGlvbkxhYmVsIDogdGhpcy5fZ2V0QWNjZXNzaWJpbGl0eVRleHQodGhpcy50cmlwKX1cbiAgICAgICAgPC9zYmItY2FyZC1idXR0b24+XG4gICAgICAgICR7dGhpcy5sb2FkaW5nUHJpY2VcbiAgICAgICAgICA/IGh0bWxgPHNiYi1jYXJkLWJhZGdlIGNsYXNzPVwic2JiLWxvYWRpbmdfX2JhZGdlXCI+PC9zYmItY2FyZC1iYWRnZT5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAke3RoaXMucHJpY2UgJiYgIXRoaXMubG9hZGluZ1ByaWNlXG4gICAgICAgICAgPyBodG1sYDxzYmItY2FyZC1iYWRnZSBjb2xvcj0ke3RoaXMucHJpY2UuaXNEaXNjb3VudCA/ICdjaGFyY29hbCcgOiAnd2hpdGUnfT5cbiAgICAgICAgICAgICAgJHt0aGlzLnByaWNlLmlzRGlzY291bnRcbiAgICAgICAgICAgICAgICA/IGh0bWxgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgICAgICU8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgID4ke2kxOG5TdXBlcnNhdmVyW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfTwvc3BhblxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICAgICAgJHt0aGlzLnByaWNlLnRleHQgPyBodG1sYDxzcGFuPiR7dGhpcy5wcmljZS50ZXh0fTwvc3Bhbj5gIDogbm90aGluZ31cbiAgICAgICAgICAgICAgJHt0aGlzLnByaWNlLnByaWNlID8gaHRtbGA8c3Bhbj4ke3RoaXMucHJpY2UucHJpY2V9PC9zcGFuPmAgOiBub3RoaW5nfVxuICAgICAgICAgICAgPC9zYmItY2FyZC1iYWRnZT5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93XCIgcm9sZT1cInJvd1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctaGVhZGVyXCIgcm9sZT1cImdyaWRjZWxsXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LWRldGFpbHNcIj5cbiAgICAgICAgICAgICAgJHtwcm9kdWN0Py5jb3Jwb3JhdGVJZGVudGl0eVBpY3RvZ3JhbSAmJlxuICAgICAgICAgICAgICBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LXRyYW5zcG9ydC13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNiYi10aW1ldGFibGVfX3Jvdy10cmFuc3BvcnQtaWNvblwiXG4gICAgICAgICAgICAgICAgICBuYW1lPVwicGljdG86JHtwcm9kdWN0LmNvcnBvcmF0ZUlkZW50aXR5UGljdG9ncmFtfVwiXG4gICAgICAgICAgICAgICAgPjwvc2JiLWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCI+XG4gICAgICAgICAgICAgICAgICAke3Byb2R1Y3QgJiZcbiAgICAgICAgICAgICAgICAgIHByb2R1Y3QudmVoaWNsZU1vZGUgJiZcbiAgICAgICAgICAgICAgICAgIGkxOG5NZWFuc09mVHJhbnNwb3J0W3Byb2R1Y3QudmVoaWNsZU1vZGUudG9Mb3dlckNhc2UoKV0gJiZcbiAgICAgICAgICAgICAgICAgIGkxOG5NZWFuc09mVHJhbnNwb3J0W3Byb2R1Y3QudmVoaWNsZU1vZGUudG9Mb3dlckNhc2UoKV1bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgICAgICAgICAmbmJzcDtcbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvc3Bhbj5gfVxuICAgICAgICAgICAgICAke3Byb2R1Y3QgJiZcbiAgICAgICAgICAgICAgKHByb2R1Y3QuY29ycG9yYXRlSWRlbnRpdHlJY29uXG4gICAgICAgICAgICAgICAgPyByZW5kZXJJY29uUHJvZHVjdChwcm9kdWN0LmNvcnBvcmF0ZUlkZW50aXR5SWNvbiwgcHJvZHVjdC5uYW1lKVxuICAgICAgICAgICAgICAgIDogcHJvZHVjdC52ZWhpY2xlU3ViTW9kZVNob3J0TmFtZSAmJlxuICAgICAgICAgICAgICAgICAgcmVuZGVyU3RyaW5nUHJvZHVjdChwcm9kdWN0LnZlaGljbGVTdWJNb2RlU2hvcnROYW1lLCBwcm9kdWN0Py5saW5lKSl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICR7ZGlyZWN0aW9uXG4gICAgICAgICAgICAgID8gaHRtbGA8cD4ke2Ake2kxOG5EaXJlY3Rpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7ZGlyZWN0aW9ufWB9PC9wPmBcbiAgICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxzYmItcGVhcmwtY2hhaW4tdGltZVxuICAgICAgICAgICAgcm9sZT1cImdyaWRjZWxsXCJcbiAgICAgICAgICAgIC5sZWdzPSR7bGVnc31cbiAgICAgICAgICAgIC5kZXBhcnR1cmVUaW1lPSR7ZGVwYXJ0dXJlPy50aW1lfVxuICAgICAgICAgICAgLmFycml2YWxUaW1lPSR7YXJyaXZhbD8udGltZX1cbiAgICAgICAgICAgIC5kZXBhcnR1cmVXYWxrPSR7ZGVwYXJ0dXJlV2Fsa31cbiAgICAgICAgICAgIC5hcnJpdmFsV2Fsaz0ke2Fycml2YWxXYWxrfVxuICAgICAgICAgICAgP2Rpc2FibGUtYW5pbWF0aW9uPSR7dGhpcy5kaXNhYmxlQW5pbWF0aW9ufVxuICAgICAgICAgICAgP2ExMXktZm9vdHBhdGg9JHt0aGlzLmExMXlGb290cGF0aH1cbiAgICAgICAgICAgIC5ub3c9JHt0aGlzLm5vd31cbiAgICAgICAgICA+PC9zYmItcGVhcmwtY2hhaW4tdGltZT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LWZvb3RlclwiIHJvbGU9XCJncmlkY2VsbFwiPlxuICAgICAgICAgICAgJHtwcm9kdWN0ICYmIGRlcGFydHVyZT8ucXVheUZvcm1hdHRlZFxuICAgICAgICAgICAgICA/IGh0bWxgPHNwYW5cbiAgICAgICAgICAgICAgICAgIGNsYXNzPSR7ZGVwYXJ0dXJlPy5xdWF5Q2hhbmdlZCA/IGBzYmItdGltZXRhYmxlX19yb3ctcXVheS0tY2hhbmdlZGAgOiBub3RoaW5nfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPlxuICAgICAgICAgICAgICAgICAgICAke2Ake2kxOG5EZXBhcnR1cmVbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7XG4gICAgICAgICAgICAgICAgICAgICAgZGVwYXJ0dXJlPy5xdWF5Q2hhbmdlZCA/IGkxOG5OZXdbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF0gOiAnJ1xuICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgJm5ic3A7XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAke3RoaXMuX3JlbmRlclF1YXlUeXBlKCl9ICR7ZGVwYXJ0dXJlPy5xdWF5Rm9ybWF0dGVkfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICAgICR7KG9jY3VwYW5jeT8uZmlyc3RDbGFzcyAmJiBvY2N1cGFuY3k/LmZpcnN0Q2xhc3MgIT09ICdVTktOT1dOJykgfHxcbiAgICAgICAgICAgIChvY2N1cGFuY3k/LnNlY29uZENsYXNzICYmIG9jY3VwYW5jeS5zZWNvbmRDbGFzcyAhPT0gJ1VOS05PV04nKVxuICAgICAgICAgICAgICA/IGh0bWxgPHNiYi10aW1ldGFibGUtb2NjdXBhbmN5XG4gICAgICAgICAgICAgICAgICAuZmlyc3RDbGFzc09jY3VwYW5jeT0ke29jY3VwYW5jeT8uZmlyc3RDbGFzcz8udG9Mb3dlckNhc2UoKX1cbiAgICAgICAgICAgICAgICAgIC5zZWNvbmRDbGFzc09jY3VwYW5jeT0ke29jY3VwYW5jeT8uc2Vjb25kQ2xhc3M/LnRvTG93ZXJDYXNlKCl9XG4gICAgICAgICAgICAgICAgPjwvc2JiLXRpbWV0YWJsZS1vY2N1cGFuY3k+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAkeyhub3RpY2VBdHRyaWJ1dGVzICYmIG5vdGljZUF0dHJpYnV0ZXMubGVuZ3RoKSB8fCB0aGlzLmJvYXJkaW5nXG4gICAgICAgICAgICAgID8gaHRtbGA8dWwgY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctaGludHNcIiByb2xlPVwibGlzdFwiPlxuICAgICAgICAgICAgICAgICAgJHtub3RpY2VBdHRyaWJ1dGVzPy5tYXAoKG5vdGljZSwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgICAgIGluZGV4IDwgNFxuICAgICAgICAgICAgICAgICAgICAgID8gaHRtbGA8bGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzYmItaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLXRyYXZlbC1oaW50c19faXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT0keydzYS0nICsgbm90aWNlLm5hbWU/LnRvTG93ZXJDYXNlKCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4ke25vdGljZS50ZXh0Py50ZW1wbGF0ZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPmBcbiAgICAgICAgICAgICAgICAgICAgICA6IG5vdGhpbmcsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgJHt0aGlzLmJvYXJkaW5nXG4gICAgICAgICAgICAgICAgICAgID8gaHRtbGA8bGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c2JiLWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItdHJhdmVsLWhpbnRzX19pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT0ke3RoaXMuYm9hcmRpbmc/Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmJvYXJkaW5nPy50ZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbGk+YFxuICAgICAgICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAgICAgPC91bD5gXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICAgICR7ZHVyYXRpb24gJiYgZHVyYXRpb24gPiAwXG4gICAgICAgICAgICAgID8gaHRtbGA8dGltZT5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPlxuICAgICAgICAgICAgICAgICAgICAke2Ake2kxOG5UcmlwRHVyYXRpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7ZHVyYXRpb25PYmohLmxvbmd9YH1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiR7ZHVyYXRpb25PYmohLnNob3J0fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3RpbWU+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAke2hhc0hpbUN1cyAmJiAoaGltQ3VzLmN1cyB8fCBoaW1DdXMuaGltKVxuICAgICAgICAgICAgICA/IGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctd2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgPHNiYi1pY29uIG5hbWU9JHsoaGltQ3VzLmN1cyB8fCBoaW1DdXMuaGltKSEubmFtZX0+PC9zYmItaWNvbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPiR7KGhpbUN1cy5jdXMgfHwgaGltQ3VzLmhpbSkhLnRleHR9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NiYi1jYXJkPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10aW1ldGFibGUtcm93JzogU2JiVGltZXRhYmxlUm93RWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIl9iIiwiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNEYSxNQUFBLG9CQUFvQixDQUFDLE1BQWMsU0FB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
666
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXRhYmxlLXJvdy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzLWV4cGVyaW1lbnRhbC90aW1ldGFibGUtcm93L3RpbWV0YWJsZS1yb3cudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBkZWZhdWx0RGF0ZUFkYXB0ZXIgfSBmcm9tICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB7IHNldE9yUmVtb3ZlQXR0cmlidXRlIH0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9kb20uanMnO1xuaW1wb3J0IHtcbiAgaTE4bkFycml2YWwsXG4gIGkxOG5DbGFzcyxcbiAgaTE4bkRlcGFydHVyZSxcbiAgaTE4bkRpcmVjdGlvbixcbiAgaTE4bkZyb21QbGF0Zm9ybSxcbiAgaTE4bk1lYW5zT2ZUcmFuc3BvcnQsXG4gIGkxOG5OZXcsXG4gIGkxOG5PY2N1cGFuY3ksXG4gIGkxOG5SZWFsVGltZUluZm8sXG4gIGkxOG5TdXBlcnNhdmVyLFxuICBpMThuVHJhbnNmZXJQcm9jZWR1cmVzLFxuICBpMThuVHJhdmVsaGludHMsXG4gIGkxOG5UcmlwRHVyYXRpb24sXG4gIGkxOG5UcmlwUXVheUNoYW5nZSxcbn0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRGF0ZUxpa2UsIFNiYk9jY3VwYW5jeSB9IGZyb20gJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgeyBmb3JtYXQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCwgbm90aGluZyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgZHVyYXRpb25Ub1RpbWUsIHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcgfSBmcm9tICcuLi9jb3JlL2RhdGV0aW1lLmpzJztcbmltcG9ydCB0eXBlIHsgSVRyaXBJdGVtLCBOb3RpY2UsIFB0UmlkZUxlZywgUHRTaXR1YXRpb24gfSBmcm9tICcuLi9jb3JlL3RpbWV0YWJsZS5qcyc7XG5pbXBvcnQgeyBnZXREZXBhcnR1cmVBcnJpdmFsVGltZUF0dHJpYnV0ZSwgaXNSaWRlTGVnIH0gZnJvbSAnLi4vY29yZS90aW1ldGFibGUuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90aW1ldGFibGUtcm93LnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnQHNiYi1lc3RhL2x5bmUtZWxlbWVudHMvY2FyZC5qcyc7XG5pbXBvcnQgJ0BzYmItZXN0YS9seW5lLWVsZW1lbnRzL2ljb24uanMnO1xuaW1wb3J0ICdAc2JiLWVzdGEvbHluZS1lbGVtZW50cy90aW1ldGFibGUtb2NjdXBhbmN5LmpzJztcbmltcG9ydCAnLi4vcGVhcmwtY2hhaW4tdGltZS5qcyc7XG5cbi8qKiBIaW1DdXMgaW50ZXJmYWNlIGZvciBtYXBwZWQgaWNvbiBuYW1lIGFuZCB0ZXh0ICovXG5leHBvcnQgaW50ZXJmYWNlIEhpbUN1cyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGV4dD86IHN0cmluZyB8IG51bGw7XG59XG5cbi8qKiBCb2FyZGluZyBpY29uIGludGVyZmFjZSBmb3IgbWFwcGVkIGljb24gbmFtZSBhbmQgdGV4dCAqL1xuZXhwb3J0IGludGVyZmFjZSBCb2FyZGluZyB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGV4dDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByaWNlIHtcbiAgcHJpY2U/OiBzdHJpbmc7XG4gIHRleHQ/OiBzdHJpbmc7XG4gIGlzRGlzY291bnQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgcmVuZGVySWNvblByb2R1Y3QgPSAoaWNvbjogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBUZW1wbGF0ZVJlc3VsdCA9PiB7XG4gIHJldHVybiBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LXRyYW5zcG9ydFwiPlxuICAgIDxzYmItaWNvbiBuYW1lPSR7aWNvbn0+PC9zYmItaWNvbj5cbiAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4ke25hbWV9PC9zcGFuPlxuICA8L3NwYW4+YDtcbn07XG5cbmV4cG9ydCBjb25zdCByZW5kZXJTdHJpbmdQcm9kdWN0ID0gKHZlaGljbGVOYW1lOiBzdHJpbmcsIGxpbmU/OiBzdHJpbmcgfCBudWxsKTogVGVtcGxhdGVSZXN1bHQgPT4ge1xuICBjb25zdCBzcGFjZSA9IFsnTScsICdCJywgJ1QnXS5pbmNsdWRlcyh2ZWhpY2xlTmFtZSkgPyAnICcgOiAnJztcbiAgcmV0dXJuIGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctdHJhbnNwb3J0bnVtYmVyXCI+XG4gICAgJHtsaW5lICE9PSBudWxsID8gdmVoaWNsZU5hbWUgKyBzcGFjZSArIGxpbmUgOiB2ZWhpY2xlTmFtZX1cbiAgPC9zcGFuPmA7XG59O1xuXG5jb25zdCBnZXRSZWFjaGFibGVUZXh0ID0gKGxlZ3M6IFB0UmlkZUxlZ1tdKTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9PiB7XG4gIHJldHVybiBsZWdzPy5maW5kKChsZWcpID0+IGxlZy5zZXJ2aWNlSm91cm5leT8uc2VydmljZUFsdGVyYXRpb24/LnJlYWNoYWJsZVRleHQpPy5zZXJ2aWNlSm91cm5leVxuICAgID8uc2VydmljZUFsdGVyYXRpb24/LnJlYWNoYWJsZVRleHQ7XG59O1xuXG5jb25zdCBnZXREZWxheVRleHQgPSAobGVnczogUHRSaWRlTGVnW10pOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkID0+IHtcbiAgcmV0dXJuIGxlZ3M/LmZpbmQoKGxlZykgPT4gbGVnLnNlcnZpY2VKb3VybmV5Py5zZXJ2aWNlQWx0ZXJhdGlvbj8uZGVsYXlUZXh0KT8uc2VydmljZUpvdXJuZXlcbiAgICA/LnNlcnZpY2VBbHRlcmF0aW9uPy5kZWxheVRleHQ7XG59O1xuXG5jb25zdCBnZXRSZWRpcmVjdGVkVGV4dCA9IChsZWdzOiBQdFJpZGVMZWdbXSk6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgPT4ge1xuICByZXR1cm4gbGVncz8uZmluZCgobGVnKSA9PiAhIWxlZy5zZXJ2aWNlSm91cm5leT8uc2VydmljZUFsdGVyYXRpb24/LnJlZGlyZWN0ZWRUZXh0KVxuICAgID8uc2VydmljZUpvdXJuZXk/LnNlcnZpY2VBbHRlcmF0aW9uPy5yZWRpcmVjdGVkVGV4dDtcbn07XG5cbmNvbnN0IGdldFVucGxhbm5lZFN0b3AgPSAobGVnczogUHRSaWRlTGVnW10pOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkID0+IHtcbiAgcmV0dXJuIGxlZ3M/LmZpbmQoKGxlZykgPT4gISFsZWcuc2VydmljZUpvdXJuZXk/LnNlcnZpY2VBbHRlcmF0aW9uPy51bnBsYW5uZWRTdG9wUG9pbnRzVGV4dClcbiAgICA/LnNlcnZpY2VKb3VybmV5Py5zZXJ2aWNlQWx0ZXJhdGlvbj8udW5wbGFubmVkU3RvcFBvaW50c1RleHQ7XG59O1xuXG5leHBvcnQgY29uc3Qgc29ydFNpdHVhdGlvbiA9IChzaXR1YXRpb25zOiBQdFNpdHVhdGlvbltdKTogUHRTaXR1YXRpb25bXSA9PiB7XG4gIGNvbnN0IHByaW9yaXRpZXMgPSB7XG4gICAgRElTVFVSQkFOQ0U6IDAsXG4gICAgSU5GT1JNQVRJT046IDEsXG4gICAgREVMQVk6IDIsXG4gICAgVFJBSU5fUkVQTEFDRU1FTlRfQllfQlVTOiAzLFxuICAgIENPTlNUUlVDVElPTl9TSVRFOiA0LFxuICAgIEVORF9NRVNTQUdFOiA1LFxuICB9O1xuXG4gIHJldHVybiBbLi4uc2l0dWF0aW9uc10/LnNvcnQoXG4gICAgKGE6IFB0U2l0dWF0aW9uLCBiOiBQdFNpdHVhdGlvbikgPT4gcHJpb3JpdGllc1thLmNhdXNlIV0gLSBwcmlvcml0aWVzW2IuY2F1c2UhXSxcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRIaW1JY29uID0gKHNpdHVhdGlvbjogUHRTaXR1YXRpb24pOiBIaW1DdXMgPT4ge1xuICBzd2l0Y2ggKHNpdHVhdGlvbj8uY2F1c2UpIHtcbiAgICBjYXNlICdESVNUVVJCQU5DRSc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAnZGlzcnVwdGlvbicsXG4gICAgICAgIHRleHQ6IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXM/Lmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gICAgY2FzZSAnSU5GT1JNQVRJT04nOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2luZm8nLFxuICAgICAgICB0ZXh0OiBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzLmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gICAgY2FzZSAnREVMQVknOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2RlbGF5JyxcbiAgICAgICAgdGV4dDogc2l0dWF0aW9uPy5icm9hZGNhc3RNZXNzYWdlcy5sZW5ndGggPyBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzWzBdLnRpdGxlIDogJycsXG4gICAgICB9O1xuICAgIGNhc2UgJ1RSQUlOX1JFUExBQ0VNRU5UX0JZX0JVUyc6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiAncmVwbGFjZW1lbnRidXMnLFxuICAgICAgICB0ZXh0OiBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzLmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gICAgY2FzZSAnQ09OU1RSVUNUSU9OX1NJVEUnOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2NvbnN0cnVjdGlvbicsXG4gICAgICAgIHRleHQ6IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXMubGVuZ3RoID8gc2l0dWF0aW9uPy5icm9hZGNhc3RNZXNzYWdlc1swXS50aXRsZSA6ICcnLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogJ2luZm8nLFxuICAgICAgICB0ZXh0OiBzaXR1YXRpb24/LmJyb2FkY2FzdE1lc3NhZ2VzLmxlbmd0aCA/IHNpdHVhdGlvbj8uYnJvYWRjYXN0TWVzc2FnZXNbMF0udGl0bGUgOiAnJyxcbiAgICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDdXMgPSAodHJpcDogSVRyaXBJdGVtLCBjdXJyZW50TGFuZ3VhZ2U6IHN0cmluZyk6IEhpbUN1cyA9PiB7XG4gIGNvbnN0IHsgc3VtbWFyeSwgbGVncyB9ID0gdHJpcCB8fCB7fTtcbiAgY29uc3QgcmlkZUxlZ3MgPSBsZWdzPy5maWx0ZXIoKGxlZykgPT4gaXNSaWRlTGVnKGxlZykpIGFzIFB0UmlkZUxlZ1tdO1xuICBjb25zdCB7IHRyaXBTdGF0dXMgfSA9IHN1bW1hcnkgfHwge307XG5cbiAgaWYgKHRyaXBTdGF0dXM/LmNhbmNlbGxlZCB8fCB0cmlwU3RhdHVzPy5wYXJ0aWFsbHlDYW5jZWxsZWQpXG4gICAgcmV0dXJuIHsgbmFtZTogJ2NhbmNlbGxhdGlvbicsIHRleHQ6IHRyaXBTdGF0dXM/LmNhbmNlbGxlZFRleHQgfTtcbiAgaWYgKGdldFJlYWNoYWJsZVRleHQocmlkZUxlZ3MpKVxuICAgIHJldHVybiB7IG5hbWU6ICdtaXNzZWQtY29ubmVjdGlvbicsIHRleHQ6IGdldFJlYWNoYWJsZVRleHQocmlkZUxlZ3MpIH07XG4gIGlmICh0cmlwU3RhdHVzPy5hbHRlcm5hdGl2ZSkgcmV0dXJuIHsgbmFtZTogJ2FsdGVybmF0aXZlJywgdGV4dDogdHJpcFN0YXR1cy5hbHRlcm5hdGl2ZVRleHQgfTtcbiAgaWYgKGdldFJlZGlyZWN0ZWRUZXh0KHJpZGVMZWdzKSkgcmV0dXJuIHsgbmFtZTogJ3Jlcm91dGUnLCB0ZXh0OiBnZXRSZWRpcmVjdGVkVGV4dChyaWRlTGVncykgfTtcbiAgaWYgKGdldFVucGxhbm5lZFN0b3AocmlkZUxlZ3MpKSByZXR1cm4geyBuYW1lOiAnYWRkLXN0b3AnLCB0ZXh0OiBnZXRVbnBsYW5uZWRTdG9wKHJpZGVMZWdzKSB9O1xuICBpZiAodHJpcFN0YXR1cz8uZGVsYXllZCB8fCB0cmlwU3RhdHVzPy5kZWxheWVkVW5rbm93bilcbiAgICByZXR1cm4geyBuYW1lOiAnZGVsYXknLCB0ZXh0OiBnZXREZWxheVRleHQocmlkZUxlZ3MpIH07XG4gIGlmICh0cmlwU3RhdHVzPy5xdWF5Q2hhbmdlZCkge1xuICAgIGNvbnN0IGRlcGFydHVyZSA9IHJpZGVMZWdzWzBdLmRlcGFydHVyZTtcbiAgICByZXR1cm4ge1xuICAgICAgbmFtZTogJ3BsYXRmb3JtLWNoYW5nZScsXG4gICAgICB0ZXh0OiBkZXBhcnR1cmUucXVheUNoYW5nZWQgPyBkZXBhcnR1cmUucXVheUNoYW5nZWRUZXh0IDogaTE4blRyaXBRdWF5Q2hhbmdlW2N1cnJlbnRMYW5ndWFnZV0sXG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiB7fSBhcyBIaW1DdXM7XG59O1xuXG5jb25zdCBmaW5kQW5kUmVwbGFjZU5vdGljZSA9IChub3RpY2VzOiBOb3RpY2VbXSk6IE5vdGljZSB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IHJlc2VydmF0aW9uTm90aWNlID0gWydSUicsICdSSycsICdSQycsICdSTCcsICdSTScsICdSUycsICdSVScsICdYUCcsICdYUicsICdYVCddO1xuXG4gIHJldHVybiBub3RpY2VzLnJlZHVjZSgoZm91bmROb3RpY2U6IE5vdGljZSB8IHVuZGVmaW5lZCwgbm90aWNlOiBOb3RpY2UpOiBOb3RpY2UgfCB1bmRlZmluZWQgPT4ge1xuICAgIGlmIChmb3VuZE5vdGljZSkgcmV0dXJuIGZvdW5kTm90aWNlO1xuICAgIGlmIChyZXNlcnZhdGlvbk5vdGljZS5pbmNsdWRlcyhub3RpY2UubmFtZSkpIHtcbiAgICAgIHJldHVybiB7IC4uLm5vdGljZSwgbmFtZTogJ1JSJyB9IGFzIE5vdGljZTtcbiAgICB9XG4gIH0sIHVuZGVmaW5lZCk7XG59O1xuXG5leHBvcnQgY29uc3QgZmlsdGVyTm90aWNlcyA9IChub3RpY2VzOiBOb3RpY2VbXSk6IE5vdGljZVtdID0+IHtcbiAgY29uc3QgYWxsb3dlZE5hbWVzID0gWydaJywgJ1NCJywgJ1NaJywgJ1ZSJywgJ1RHJ107XG5cbiAgY29uc3QgZmlsdGVyTm90aWNlID0gbm90aWNlcy5maWx0ZXIoKG5vdGljZSwgaW5kZXgpID0+IHtcbiAgICByZXR1cm4gbm90aWNlcy5maW5kSW5kZXgoKG4pID0+IG4ubmFtZSA9PT0gbm90aWNlLm5hbWUpID09PSBpbmRleDtcbiAgfSk7XG5cbiAgcmV0dXJuIGZpbHRlck5vdGljZVxuICAgIC5maWx0ZXIoKG5vdGljZSkgPT4gYWxsb3dlZE5hbWVzLmluY2x1ZGVzKG5vdGljZS5uYW1lKSlcbiAgICAuc29ydCgoYSwgYikgPT4gYWxsb3dlZE5hbWVzLmluZGV4T2YoYS5uYW1lKSAtIGFsbG93ZWROYW1lcy5pbmRleE9mKGIubmFtZSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZU5vdGljZXMgPSAobm90aWNlczogTm90aWNlW10pOiBOb3RpY2VbXSA9PiB7XG4gIGNvbnN0IHJlc2VydmF0aW9uTm90aWNlID0gZmluZEFuZFJlcGxhY2VOb3RpY2Uobm90aWNlcyk7XG4gIGNvbnN0IGZpbHRlcmVkTm90aWNlcyA9IGZpbHRlck5vdGljZXMobm90aWNlcyk7XG5cbiAgaWYgKHJlc2VydmF0aW9uTm90aWNlID09PSB1bmRlZmluZWQpIHJldHVybiBmaWx0ZXJlZE5vdGljZXM7XG4gIGlmICghZmlsdGVyZWROb3RpY2VzLmxlbmd0aCkgcmV0dXJuIFtyZXNlcnZhdGlvbk5vdGljZV07XG5cbiAgaWYgKGZpbHRlcmVkTm90aWNlc1swXS5uYW1lID09PSAnWicgJiYgZmlsdGVyZWROb3RpY2VzWzFdKSB7XG4gICAgcmV0dXJuIFtmaWx0ZXJlZE5vdGljZXNbMF0sIHJlc2VydmF0aW9uTm90aWNlLCBmaWx0ZXJlZE5vdGljZXNbMV1dLmNvbmNhdChcbiAgICAgIGZpbHRlcmVkTm90aWNlcy5zbGljZSgyKSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIFtyZXNlcnZhdGlvbk5vdGljZSwgLi4uZmlsdGVyZWROb3RpY2VzXTtcbn07XG5cbi8qKlxuICogSXQgZGlzcGxheXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyaXAsIGFjdGluZyBhcyBhIGNvbnRhaW5lciBmb3IgYWxsIHRoZSBgc2JiLXRpbWV0YWJsZS0qYCBjb21wb25lbnRzLlxuICogKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGltZXRhYmxlLXJvdycpXG5leHBvcnQgY2xhc3MgU2JiVGltZXRhYmxlUm93RWxlbWVudCBleHRlbmRzIExpdEVsZW1lbnQge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKiogVGhlIHRyaXAgUHJvcC4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogT2JqZWN0IH0pIHB1YmxpYyB0cmlwITogSVRyaXBJdGVtO1xuXG4gIC8qKiBUaGUgcHJpY2UgUHJvcCwgd2hpY2ggY29uc2lzdHMgb2YgdGhlIGRhdGEgZm9yIHRoZSBiYWRnZS4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogT2JqZWN0IH0pIHB1YmxpYyBwcmljZT86IFByaWNlO1xuXG4gIC8qKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIHRvIHRoZSBzYmItcGVhcmwtY2hhaW4gY29tcG9uZW50IC0gaWYgdHJ1ZSB0aGUgcG9zaXRpb24gd29uJ3QgYmUgYW5pbWF0ZWQuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2Rpc2FibGUtYW5pbWF0aW9uJywgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgZGlzYWJsZUFuaW1hdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gdGhlIG5vdGljZXMgc2VjdGlvbiAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBPYmplY3QgfSkgcHVibGljIGJvYXJkaW5nPzogQm9hcmRpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBsb2FkaW5nIHN0YXRlIC1cbiAgICogd2hlbiB0aGlzIGlzIHRydWUgaXQgd2lsbCBiZSByZW5kZXIgc2tlbGV0b24gd2l0aCBhbiBpZGxpbmcgYW5pbWF0aW9uXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdsb2FkaW5nLXRyaXAnLCB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBsb2FkaW5nVHJpcCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUaGUgRm9vdHBhdGggYXR0cmlidXRlIGZvciByZW5kZXJpbmcgZGlmZmVyZW50IGljb25zXG4gICAqIHRydWU6IHJlbmRlciBhMTF5LWljb25cbiAgICogZmFsc2U6IHJlbmRlciB3YWxrLWljb25cbiAgICogZGVmYXVsdDogcmVuZGVyIHdhbGstaWNvblxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYTExeS1mb290cGF0aCcsIHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIGExMXlGb290cGF0aD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBsb2FkaW5nIHN0YXRlIC1cbiAgICogd2hlbiB0aGlzIGlzIHRydWUgaXQgd2lsbCBiZSByZW5kZXIgc2tlbGV0b24gd2l0aCBhbiBpZGxpbmcgYW5pbWF0aW9uXG4gICAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdsb2FkaW5nLXByaWNlJywgdHlwZTogQm9vbGVhbiB9KSBwdWJsaWMgbG9hZGluZ1ByaWNlID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEhpZGRlbiBsYWJlbCBmb3IgdGhlIGNhcmQgYWN0aW9uLiBJdCBvdmVycmlkZXMgdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGFjY2Vzc2liaWxpdHkgdGV4dCBmb3IgdGhlIGNvbXBvbmVudC4gVXNlIHRoaXMgcHJvcCB0byBwcm92aWRlIGN1c3RvbSBhY2Nlc3NpYmlsaXR5IGluZm9ybWF0aW9uIGZvciB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnY2FyZC1hY3Rpb24tbGFiZWwnIH0pIHB1YmxpYyBjYXJkQWN0aW9uTGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgdG8gdGhlIHNiYi1jYXJkIGNvbXBvbmVudCBhcyBhcmlhLWV4cGFuZGVkLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWV4cGFuZGVkJywgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzaWJpbGl0eUV4cGFuZGVkPzogYm9vbGVhbjtcblxuICAvKiogV2hlbiB0aGlzIHByb3AgaXMgdHJ1ZSB0aGUgc2JiLWNhcmQgd2lsbCBiZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pIHB1YmxpYyBhY3RpdmU/OiBib29sZWFuO1xuXG4gIC8qKiBBIGNvbmZpZ3VyZWQgZGF0ZSB3aGljaCBhY3RzIGFzIHRoZSBjdXJyZW50IGRhdGUgaW5zdGVhZCBvZiB0aGUgcmVhbCBjdXJyZW50IGRhdGUuIFJlY29tbWVuZGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IG5vdyh2YWx1ZTogU2JiRGF0ZUxpa2UgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9ub3cgPSBkZWZhdWx0RGF0ZUFkYXB0ZXIuZ2V0VmFsaWREYXRlT3JOdWxsKGRlZmF1bHREYXRlQWRhcHRlci5kZXNlcmlhbGl6ZSh2YWx1ZSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgbm93KCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9ub3cgPz8gbmV3IERhdGUoKTtcbiAgfVxuICBwcml2YXRlIF9ub3c6IERhdGUgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsb2FkaW5nVHJpcCcpKSB7XG4gICAgICBzZXRPclJlbW92ZUF0dHJpYnV0ZSh0aGlzLCAncm9sZScsICF0aGlzLmxvYWRpbmdUcmlwID8gJ3Jvd2dyb3VwJyA6IG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBUaGUgc2tlbGV0b24gcmVuZGVyIGZ1bmN0aW9uIGZvciB0aGUgbG9hZGluZyBzdGF0ZSAqL1xuICBwcml2YXRlIF9yZW5kZXJTa2VsZXRvbigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8c2JiLWNhcmQgc2l6ZT1cImxcIiBjbGFzcz1cInNiYi1sb2FkaW5nXCI+XG4gICAgICAgICR7dGhpcy5sb2FkaW5nUHJpY2VcbiAgICAgICAgICA/IGh0bWxgPHNiYi1jYXJkLWJhZGdlIGNsYXNzPVwic2JiLWxvYWRpbmdfX2JhZGdlXCI+PC9zYmItY2FyZC1iYWRnZT5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLWxvYWRpbmdfX3dyYXBwZXJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLWxvYWRpbmdfX3Jvd1wiPjwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbG9hZGluZ19fcm93XCI+PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1sb2FkaW5nX19yb3dcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NiYi1jYXJkPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9nZXRRdWF5VHlwZVN0cmluZ3MoKTogeyBsb25nOiBzdHJpbmc7IHNob3J0OiBzdHJpbmcgfSB8IG51bGwge1xuICAgIGlmICghdGhpcy50cmlwLnN1bW1hcnk/LnByb2R1Y3QpIHJldHVybiBudWxsO1xuICAgIGNvbnN0IHJpZGVMZWdzID0gdGhpcy50cmlwLmxlZ3M/LmZpbHRlcigobGVnKSA9PiBpc1JpZGVMZWcobGVnKSkgYXMgUHRSaWRlTGVnW107XG4gICAgY29uc3QgaXNTaG9ydCA9IHRoaXMudHJpcC5zdW1tYXJ5LnByb2R1Y3Q/LnZlaGljbGVNb2RlID09PSAnVFJBSU4nO1xuICAgIGNvbnN0IHNob3J0ID0gaXNTaG9ydFxuICAgICAgPyByaWRlTGVnc1swXS5zZXJ2aWNlSm91cm5leS5xdWF5VHlwZVNob3J0TmFtZSB8fCAnJ1xuICAgICAgOiByaWRlTGVnc1swXS5zZXJ2aWNlSm91cm5leS5xdWF5VHlwZU5hbWUgfHwgJyc7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbG9uZzogaTE4bkZyb21QbGF0Zm9ybVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XSArICcgJyArIHNob3J0LFxuICAgICAgc2hvcnQsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBtYXAgUXVheSAqL1xuICBwcml2YXRlIF9yZW5kZXJRdWF5VHlwZSgpOiBUZW1wbGF0ZVJlc3VsdCB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLnRyaXAuc3VtbWFyeT8ucHJvZHVjdCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBjb25zdCBxdWF5VHlwZVN0cmluZ3MgPSB0aGlzLl9nZXRRdWF5VHlwZVN0cmluZ3MoKTtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LS1xdWF5XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPiR7cXVheVR5cGVTdHJpbmdzPy5sb25nfSZuYnNwOzwvc3Bhbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctLXF1YXktdHlwZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgPiR7cXVheVR5cGVTdHJpbmdzPy5zaG9ydH08L3NwYW5cbiAgICAgICAgPlxuICAgICAgPC9zcGFuPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVIaW1DdXModHJpcDogSVRyaXBJdGVtKTogeyBjdXM6IEhpbUN1cyB8IG51bGw7IGhpbTogSGltQ3VzIHwgbnVsbCB9IHtcbiAgICBjb25zdCB7IHNpdHVhdGlvbnMgfSA9IHRyaXAgfHwge307XG4gICAgY29uc3Qgc29ydGVkU2l0dWF0aW9ucyA9IHNpdHVhdGlvbnMgJiYgc29ydFNpdHVhdGlvbihzaXR1YXRpb25zKTtcbiAgICBjb25zdCBjdXMgPSBnZXRDdXModHJpcCwgdGhpcy5fbGFuZ3VhZ2UuY3VycmVudCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgY3VzOiBPYmplY3Qua2V5cyhjdXMpPy5sZW5ndGggPyBjdXMgOiBudWxsLFxuICAgICAgaGltOiBzaXR1YXRpb25zPy5sZW5ndGggPyBnZXRIaW1JY29uKHNvcnRlZFNpdHVhdGlvbnNbMF0pIDogbnVsbCxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0QWNjZXNzaWJpbGl0eVRleHQodHJpcDogSVRyaXBJdGVtKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IHN1bW1hcnksIGxlZ3MsIG5vdGljZXMgfSA9IHRyaXAgfHwge307XG4gICAgY29uc3Qge1xuICAgICAgZGVwYXJ0dXJlV2FsayxcbiAgICAgIGFycml2YWxXYWxrLFxuICAgICAgZGVwYXJ0dXJlLFxuICAgICAgYXJyaXZhbCxcbiAgICAgIHByb2R1Y3QsXG4gICAgICBkaXJlY3Rpb24sXG4gICAgICBvY2N1cGFuY3ksXG4gICAgICBkdXJhdGlvbixcbiAgICB9ID0gc3VtbWFyeSB8fCB7fTtcblxuICAgIGNvbnN0IHsgZGVwYXJ0dXJlVGltZUF0dHJpYnV0ZSwgYXJyaXZhbFRpbWVBdHRyaWJ1dGUgfSA9IGdldERlcGFydHVyZUFycml2YWxUaW1lQXR0cmlidXRlKFxuICAgICAgbGVncyxcbiAgICAgIGRlcGFydHVyZVdhbGsgfHwgMCxcbiAgICAgIGFycml2YWxXYWxrIHx8IDAsXG4gICAgICB0aGlzLl9sYW5ndWFnZS5jdXJyZW50LFxuICAgICAgdGhpcy5hMTF5Rm9vdHBhdGgsXG4gICAgKTtcblxuICAgIGNvbnN0IGRlcGFydHVyZVRpbWU6IERhdGUgfCB1bmRlZmluZWQgPSBkZXBhcnR1cmU/LnRpbWVcbiAgICAgID8gcmVtb3ZlVGltZXpvbmVGcm9tSVNPVGltZVN0cmluZyhkZXBhcnR1cmUudGltZSlcbiAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgYXJyaXZhbFRpbWU6IERhdGUgfCB1bmRlZmluZWQgPSBhcnJpdmFsPy50aW1lXG4gICAgICA/IHJlbW92ZVRpbWV6b25lRnJvbUlTT1RpbWVTdHJpbmcoYXJyaXZhbC50aW1lKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBkZXBhcnR1cmVXYWxrVGV4dCA9IGRlcGFydHVyZVRpbWVBdHRyaWJ1dGVcbiAgICAgID8gYCR7ZGVwYXJ0dXJlVGltZUF0dHJpYnV0ZS50ZXh0fSAke2RlcGFydHVyZVRpbWVBdHRyaWJ1dGUuZHVyYXRpb259LCBgXG4gICAgICA6ICcnO1xuXG4gICAgY29uc3QgYXJyaXZhbFdhbGtUZXh0ID0gYXJyaXZhbFRpbWVBdHRyaWJ1dGVcbiAgICAgID8gYCR7YXJyaXZhbFRpbWVBdHRyaWJ1dGUudGV4dH0gJHthcnJpdmFsVGltZUF0dHJpYnV0ZS5kdXJhdGlvbn0sIGBcbiAgICAgIDogJyc7XG5cbiAgICBjb25zdCBkZXBhcnR1cmVUaW1lVGV4dCA9IGRlcGFydHVyZVRpbWVcbiAgICAgID8gYCR7aTE4bkRlcGFydHVyZVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX06ICR7Zm9ybWF0KGRlcGFydHVyZVRpbWUsICdISDptbScpfSwgYFxuICAgICAgOiAnJztcblxuICAgIGNvbnN0IGdldERlcGFydHVyZVF1YXlUZXh0ID0gKCk6IHN0cmluZyA9PiB7XG4gICAgICBpZiAoIWRlcGFydHVyZT8ucXVheUZvcm1hdHRlZCkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG5cbiAgICAgIC8vIGFkZCBwcmVmaXggXCJuZXdcIiBpZiBxdWF5IHdhcyBjaGFuZ2VkXG4gICAgICBjb25zdCBjaGFuZ2VkUXVheVByZWZpeCA9IGRlcGFydHVyZT8ucXVheUNoYW5nZWQgPyBgJHtpMThuTmV3W3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSBgIDogJyc7XG4gICAgICByZXR1cm4gYCR7Y2hhbmdlZFF1YXlQcmVmaXh9JHtcbiAgICAgICAgdGhpcy5fZ2V0UXVheVR5cGVTdHJpbmdzKCk/LmxvbmdcbiAgICAgIH0gJHtkZXBhcnR1cmU/LnF1YXlGb3JtYXR0ZWR9LCBgO1xuICAgIH07XG5cbiAgICBjb25zdCBtZWFuc09mVHJhbnNwb3J0VGV4dCA9XG4gICAgICBwcm9kdWN0ICYmIHByb2R1Y3QudmVoaWNsZU1vZGVcbiAgICAgICAgPyBpMThuTWVhbnNPZlRyYW5zcG9ydFtwcm9kdWN0LnZlaGljbGVNb2RlLnRvTG93ZXJDYXNlKCldICYmXG4gICAgICAgICAgYCR7aTE4bk1lYW5zT2ZUcmFuc3BvcnRbcHJvZHVjdC52ZWhpY2xlTW9kZS50b0xvd2VyQ2FzZSgpXVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX0sIGBcbiAgICAgICAgOiAnJztcblxuICAgIGNvbnN0IHZlaGljbGVTdWJNb2RlVGV4dCA9IHByb2R1Y3Q/LnZlaGljbGVTdWJNb2RlU2hvcnROYW1lXG4gICAgICA/IGAke3Byb2R1Y3QudmVoaWNsZVN1Yk1vZGVTaG9ydE5hbWV9ICR7cHJvZHVjdC5saW5lIHx8ICcnfSwgYFxuICAgICAgOiAnJztcblxuICAgIGNvbnN0IGRpcmVjdGlvblRleHQgPSBgJHtpMThuRGlyZWN0aW9uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke2RpcmVjdGlvbn0sIGA7XG5cbiAgICBjb25zdCBoaW1DdXMgPSB0aGlzLl9oYW5kbGVIaW1DdXModHJpcCk7XG4gICAgY29uc3QgY3VzVGV4dCA9IGhpbUN1cz8uY3VzPy50ZXh0XG4gICAgICA/IGAke2kxOG5SZWFsVGltZUluZm9bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19OiAke2hpbUN1cz8uY3VzPy50ZXh0fSwgYFxuICAgICAgOiAnJztcbiAgICBjb25zdCBoaW1UZXh0ID0gaGltQ3VzPy5oaW0/LnRleHRcbiAgICAgID8gYCR7aTE4blJlYWxUaW1lSW5mb1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX06ICR7aGltQ3VzPy5oaW0/LnRleHR9LCBgXG4gICAgICA6ICcnO1xuXG4gICAgY29uc3QgYm9hcmRpbmdUZXh0ID0gdGhpcy5ib2FyZGluZyA/IGAke3RoaXMuYm9hcmRpbmcudGV4dH0sIGAgOiAnJztcblxuICAgIGNvbnN0IHByaWNlVGV4dCA9IGAke3RoaXMucHJpY2U/LmlzRGlzY291bnQgPyBpMThuU3VwZXJzYXZlclt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XSA6ICcnfSAke1xuICAgICAgdGhpcy5wcmljZT8udGV4dCAmJiB0aGlzLnByaWNlPy5wcmljZVxuICAgICAgICA/ICh0aGlzLnByaWNlPy50ZXh0IHx8ICcnKSArICcgJyArICh0aGlzLnByaWNlPy5wcmljZSB8fCAnJykgKyAnLCAnXG4gICAgICAgIDogJydcbiAgICB9YDtcblxuICAgIGNvbnN0IHRyYW5zZmVyUHJvY2VkdXJlcyA9XG4gICAgICBsZWdzPy5sZW5ndGggPiAxXG4gICAgICAgID8gYCR7bGVncz8ubGVuZ3RoIC0gMX0gJHtpMThuVHJhbnNmZXJQcm9jZWR1cmVzW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSwgYFxuICAgICAgICA6ICcnO1xuXG4gICAgY29uc3QgYXJyaXZhbFRpbWVUZXh0ID0gYXJyaXZhbFRpbWVcbiAgICAgID8gYCR7aTE4bkFycml2YWxbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19OiAke2Zvcm1hdChhcnJpdmFsVGltZSwgJ0hIOm1tJyl9LCBgXG4gICAgICA6ICcnO1xuXG4gICAgbGV0IG9jY3VwYW5jeVRleHQ6IHN0cmluZyA9ICcnO1xuICAgIGlmIChvY2N1cGFuY3kpIHtcbiAgICAgIGlmIChvY2N1cGFuY3kuZmlyc3RDbGFzcyAmJiBvY2N1cGFuY3kuZmlyc3RDbGFzcyAhPT0gJ1VOS05PV04nKSB7XG4gICAgICAgIG9jY3VwYW5jeVRleHQgKz0gYCR7aTE4bkNsYXNzLmZpcnN0W3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke1xuICAgICAgICAgIChcbiAgICAgICAgICAgIGkxOG5PY2N1cGFuY3lbb2NjdXBhbmN5LmZpcnN0Q2xhc3MudG9Mb3dlckNhc2UoKSBhcyBTYmJPY2N1cGFuY3ldIGFzIFJlY29yZDxcbiAgICAgICAgICAgICAgc3RyaW5nLFxuICAgICAgICAgICAgICBzdHJpbmdcbiAgICAgICAgICAgID5cbiAgICAgICAgICApPy5bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF1cbiAgICAgICAgfS5gO1xuICAgICAgfVxuICAgICAgaWYgKG9jY3VwYW5jeS5zZWNvbmRDbGFzcyAmJiBvY2N1cGFuY3kuc2Vjb25kQ2xhc3MgIT09ICdVTktOT1dOJykge1xuICAgICAgICBvY2N1cGFuY3lUZXh0ICs9IGAgJHtpMThuQ2xhc3Muc2Vjb25kW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke1xuICAgICAgICAgIChcbiAgICAgICAgICAgIGkxOG5PY2N1cGFuY3lbb2NjdXBhbmN5LnNlY29uZENsYXNzLnRvTG93ZXJDYXNlKCkgYXMgU2JiT2NjdXBhbmN5XSBhcyBSZWNvcmQ8XG4gICAgICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICAgICAgc3RyaW5nXG4gICAgICAgICAgICA+XG4gICAgICAgICAgKT8uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdXG4gICAgICAgIH0uYDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVzID1cbiAgICAgIG5vdGljZXMgJiZcbiAgICAgIGhhbmRsZU5vdGljZXMobm90aWNlcykubGVuZ3RoICYmXG4gICAgICBoYW5kbGVOb3RpY2VzKG5vdGljZXMpXG4gICAgICAgID8ubWFwKChub3RpY2UsIGluZGV4KSA9PiBpbmRleCA8IDQgJiYgbm90aWNlLnRleHQ/LnRlbXBsYXRlKVxuICAgICAgICAuam9pbignLCAnKSArICcsICc7XG5cbiAgICBjb25zdCBhdHRyaWJ1dGVzVGV4dCA9IGF0dHJpYnV0ZXNcbiAgICAgID8gYCR7aTE4blRyYXZlbGhpbnRzW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfTogJHthdHRyaWJ1dGVzfWBcbiAgICAgIDogJyc7XG5cbiAgICBjb25zdCBkdXJhdGlvblRleHQgPVxuICAgICAgISFkdXJhdGlvbiAmJiBkdXJhdGlvbiA+IDBcbiAgICAgICAgPyBgJHtpMThuVHJpcER1cmF0aW9uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke1xuICAgICAgICAgICAgZHVyYXRpb25Ub1RpbWUoZHVyYXRpb24sIHRoaXMuX2xhbmd1YWdlLmN1cnJlbnQpLmxvbmdcbiAgICAgICAgICB9LCBgXG4gICAgICAgIDogJyc7XG5cbiAgICByZXR1cm4gYCR7ZGVwYXJ0dXJlV2Fsa1RleHR9ICR7ZGVwYXJ0dXJlVGltZVRleHR9ICR7Z2V0RGVwYXJ0dXJlUXVheVRleHQoKX0gJHttZWFuc09mVHJhbnNwb3J0VGV4dH0gJHt2ZWhpY2xlU3ViTW9kZVRleHR9ICR7ZGlyZWN0aW9uVGV4dH0gJHtjdXNUZXh0fSAke2JvYXJkaW5nVGV4dH0gJHtwcmljZVRleHR9ICR7XG4gICAgICBjdXNUZXh0ID8gJycgOiBoaW1UZXh0XG4gICAgfSAke2Fycml2YWxUaW1lVGV4dH0gJHthcnJpdmFsV2Fsa1RleHR9ICR7ZHVyYXRpb25UZXh0fSAke3RyYW5zZmVyUHJvY2VkdXJlc30gJHtvY2N1cGFuY3lUZXh0fSAke2F0dHJpYnV0ZXNUZXh0fWA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBpZiAodGhpcy5sb2FkaW5nVHJpcCkge1xuICAgICAgcmV0dXJuIHRoaXMuX3JlbmRlclNrZWxldG9uKCk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBsZWdzLCBpZCwgbm90aWNlcywgc3VtbWFyeSB9ID0gdGhpcy50cmlwIHx8IHt9O1xuXG4gICAgY29uc3Qge1xuICAgICAgcHJvZHVjdCxcbiAgICAgIGRpcmVjdGlvbixcbiAgICAgIGRlcGFydHVyZVdhbGssXG4gICAgICBkZXBhcnR1cmUsXG4gICAgICBhcnJpdmFsLFxuICAgICAgYXJyaXZhbFdhbGssXG4gICAgICBvY2N1cGFuY3ksXG4gICAgICBkdXJhdGlvbixcbiAgICB9ID0gc3VtbWFyeSB8fCB7fTtcblxuICAgIGNvbnN0IGhpbUN1cyA9IHRoaXMuX2hhbmRsZUhpbUN1cyh0aGlzLnRyaXApO1xuICAgIGNvbnN0IGhhc0hpbUN1cyA9ICEhaGltQ3VzLmN1cyB8fCAhIWhpbUN1cy5oaW07XG5cbiAgICBjb25zdCBub3RpY2VBdHRyaWJ1dGVzID0gbm90aWNlcyAmJiBoYW5kbGVOb3RpY2VzKG5vdGljZXMpO1xuXG4gICAgY29uc3QgZHVyYXRpb25PYmogPSBkdXJhdGlvbiA/IGR1cmF0aW9uVG9UaW1lKGR1cmF0aW9uLCB0aGlzLl9sYW5ndWFnZS5jdXJyZW50KSA6IG51bGw7XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxzYmItY2FyZCBzaXplPVwibFwiIGlkPSR7aWR9PlxuICAgICAgICA8c2JiLWNhcmQtYnV0dG9uXG4gICAgICAgICAgP2FjdGl2ZT0ke3RoaXMuYWN0aXZlfVxuICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9JHt0aGlzLmFjY2Vzc2liaWxpdHlFeHBhbmRlZD8udG9TdHJpbmcoKSA/PyBub3RoaW5nfVxuICAgICAgICA+XG4gICAgICAgICAgJHt0aGlzLmNhcmRBY3Rpb25MYWJlbCA/IHRoaXMuY2FyZEFjdGlvbkxhYmVsIDogdGhpcy5fZ2V0QWNjZXNzaWJpbGl0eVRleHQodGhpcy50cmlwKX1cbiAgICAgICAgPC9zYmItY2FyZC1idXR0b24+XG4gICAgICAgICR7dGhpcy5sb2FkaW5nUHJpY2VcbiAgICAgICAgICA/IGh0bWxgPHNiYi1jYXJkLWJhZGdlIGNsYXNzPVwic2JiLWxvYWRpbmdfX2JhZGdlXCI+PC9zYmItY2FyZC1iYWRnZT5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAke3RoaXMucHJpY2UgJiYgIXRoaXMubG9hZGluZ1ByaWNlXG4gICAgICAgICAgPyBodG1sYDxzYmItY2FyZC1iYWRnZSBjb2xvcj0ke3RoaXMucHJpY2UuaXNEaXNjb3VudCA/ICdjaGFyY29hbCcgOiAnd2hpdGUnfT5cbiAgICAgICAgICAgICAgJHt0aGlzLnByaWNlLmlzRGlzY291bnRcbiAgICAgICAgICAgICAgICA/IGh0bWxgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgICAgICU8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgID4ke2kxOG5TdXBlcnNhdmVyW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfTwvc3BhblxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICAgICAgJHt0aGlzLnByaWNlLnRleHQgPyBodG1sYDxzcGFuPiR7dGhpcy5wcmljZS50ZXh0fTwvc3Bhbj5gIDogbm90aGluZ31cbiAgICAgICAgICAgICAgJHt0aGlzLnByaWNlLnByaWNlID8gaHRtbGA8c3Bhbj4ke3RoaXMucHJpY2UucHJpY2V9PC9zcGFuPmAgOiBub3RoaW5nfVxuICAgICAgICAgICAgPC9zYmItY2FyZC1iYWRnZT5gXG4gICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93XCIgcm9sZT1cInJvd1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctaGVhZGVyXCIgcm9sZT1cImdyaWRjZWxsXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LWRldGFpbHNcIj5cbiAgICAgICAgICAgICAgJHtwcm9kdWN0Py5jb3Jwb3JhdGVJZGVudGl0eVBpY3RvZ3JhbSAmJlxuICAgICAgICAgICAgICBodG1sYDxzcGFuIGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LXRyYW5zcG9ydC13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNiYi10aW1ldGFibGVfX3Jvdy10cmFuc3BvcnQtaWNvblwiXG4gICAgICAgICAgICAgICAgICBuYW1lPVwicGljdG86JHtwcm9kdWN0LmNvcnBvcmF0ZUlkZW50aXR5UGljdG9ncmFtfVwiXG4gICAgICAgICAgICAgICAgPjwvc2JiLWljb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItc2NyZWVuLXJlYWRlci1vbmx5XCI+XG4gICAgICAgICAgICAgICAgICAke3Byb2R1Y3QgJiZcbiAgICAgICAgICAgICAgICAgIHByb2R1Y3QudmVoaWNsZU1vZGUgJiZcbiAgICAgICAgICAgICAgICAgIGkxOG5NZWFuc09mVHJhbnNwb3J0W3Byb2R1Y3QudmVoaWNsZU1vZGUudG9Mb3dlckNhc2UoKV0gJiZcbiAgICAgICAgICAgICAgICAgIGkxOG5NZWFuc09mVHJhbnNwb3J0W3Byb2R1Y3QudmVoaWNsZU1vZGUudG9Mb3dlckNhc2UoKV1bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgICAgICAgICAmbmJzcDtcbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvc3Bhbj5gfVxuICAgICAgICAgICAgICAke3Byb2R1Y3QgJiZcbiAgICAgICAgICAgICAgKHByb2R1Y3QuY29ycG9yYXRlSWRlbnRpdHlJY29uXG4gICAgICAgICAgICAgICAgPyByZW5kZXJJY29uUHJvZHVjdChwcm9kdWN0LmNvcnBvcmF0ZUlkZW50aXR5SWNvbiwgcHJvZHVjdC5uYW1lKVxuICAgICAgICAgICAgICAgIDogcHJvZHVjdC52ZWhpY2xlU3ViTW9kZVNob3J0TmFtZSAmJlxuICAgICAgICAgICAgICAgICAgcmVuZGVyU3RyaW5nUHJvZHVjdChwcm9kdWN0LnZlaGljbGVTdWJNb2RlU2hvcnROYW1lLCBwcm9kdWN0Py5saW5lKSl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICR7ZGlyZWN0aW9uXG4gICAgICAgICAgICAgID8gaHRtbGA8cD4ke2Ake2kxOG5EaXJlY3Rpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7ZGlyZWN0aW9ufWB9PC9wPmBcbiAgICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxzYmItcGVhcmwtY2hhaW4tdGltZVxuICAgICAgICAgICAgcm9sZT1cImdyaWRjZWxsXCJcbiAgICAgICAgICAgIC5sZWdzPSR7bGVnc31cbiAgICAgICAgICAgIC5kZXBhcnR1cmVUaW1lPSR7ZGVwYXJ0dXJlPy50aW1lfVxuICAgICAgICAgICAgLmFycml2YWxUaW1lPSR7YXJyaXZhbD8udGltZX1cbiAgICAgICAgICAgIC5kZXBhcnR1cmVXYWxrPSR7ZGVwYXJ0dXJlV2Fsa31cbiAgICAgICAgICAgIC5hcnJpdmFsV2Fsaz0ke2Fycml2YWxXYWxrfVxuICAgICAgICAgICAgP2Rpc2FibGUtYW5pbWF0aW9uPSR7dGhpcy5kaXNhYmxlQW5pbWF0aW9ufVxuICAgICAgICAgICAgP2ExMXktZm9vdHBhdGg9JHt0aGlzLmExMXlGb290cGF0aH1cbiAgICAgICAgICAgIC5ub3c9JHt0aGlzLm5vd31cbiAgICAgICAgICA+PC9zYmItcGVhcmwtY2hhaW4tdGltZT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXRpbWV0YWJsZV9fcm93LWZvb3RlclwiIHJvbGU9XCJncmlkY2VsbFwiPlxuICAgICAgICAgICAgJHtwcm9kdWN0ICYmIGRlcGFydHVyZT8ucXVheUZvcm1hdHRlZFxuICAgICAgICAgICAgICA/IGh0bWxgPHNwYW5cbiAgICAgICAgICAgICAgICAgIGNsYXNzPSR7ZGVwYXJ0dXJlPy5xdWF5Q2hhbmdlZCA/IGBzYmItdGltZXRhYmxlX19yb3ctcXVheS0tY2hhbmdlZGAgOiBub3RoaW5nfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPlxuICAgICAgICAgICAgICAgICAgICAke2Ake2kxOG5EZXBhcnR1cmVbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7XG4gICAgICAgICAgICAgICAgICAgICAgZGVwYXJ0dXJlPy5xdWF5Q2hhbmdlZCA/IGkxOG5OZXdbdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF0gOiAnJ1xuICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgJm5ic3A7XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAke3RoaXMuX3JlbmRlclF1YXlUeXBlKCl9ICR7ZGVwYXJ0dXJlPy5xdWF5Rm9ybWF0dGVkfVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICAgICR7KG9jY3VwYW5jeT8uZmlyc3RDbGFzcyAmJiBvY2N1cGFuY3k/LmZpcnN0Q2xhc3MgIT09ICdVTktOT1dOJykgfHxcbiAgICAgICAgICAgIChvY2N1cGFuY3k/LnNlY29uZENsYXNzICYmIG9jY3VwYW5jeS5zZWNvbmRDbGFzcyAhPT0gJ1VOS05PV04nKVxuICAgICAgICAgICAgICA/IGh0bWxgPHNiYi10aW1ldGFibGUtb2NjdXBhbmN5XG4gICAgICAgICAgICAgICAgICAuZmlyc3RDbGFzc09jY3VwYW5jeT0ke29jY3VwYW5jeT8uZmlyc3RDbGFzcz8udG9Mb3dlckNhc2UoKX1cbiAgICAgICAgICAgICAgICAgIC5zZWNvbmRDbGFzc09jY3VwYW5jeT0ke29jY3VwYW5jeT8uc2Vjb25kQ2xhc3M/LnRvTG93ZXJDYXNlKCl9XG4gICAgICAgICAgICAgICAgPjwvc2JiLXRpbWV0YWJsZS1vY2N1cGFuY3k+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAkeyhub3RpY2VBdHRyaWJ1dGVzICYmIG5vdGljZUF0dHJpYnV0ZXMubGVuZ3RoKSB8fCB0aGlzLmJvYXJkaW5nXG4gICAgICAgICAgICAgID8gaHRtbGA8dWwgY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctaGludHNcIiByb2xlPVwibGlzdFwiPlxuICAgICAgICAgICAgICAgICAgJHtub3RpY2VBdHRyaWJ1dGVzPy5tYXAoKG5vdGljZSwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgICAgIGluZGV4IDwgNFxuICAgICAgICAgICAgICAgICAgICAgID8gaHRtbGA8bGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzYmItaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLXRyYXZlbC1oaW50c19faXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT0keydzYS0nICsgbm90aWNlLm5hbWU/LnRvTG93ZXJDYXNlKCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1zY3JlZW4tcmVhZGVyLW9ubHlcIj4ke25vdGljZS50ZXh0Py50ZW1wbGF0ZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPmBcbiAgICAgICAgICAgICAgICAgICAgICA6IG5vdGhpbmcsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgJHt0aGlzLmJvYXJkaW5nXG4gICAgICAgICAgICAgICAgICAgID8gaHRtbGA8bGk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c2JiLWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItdHJhdmVsLWhpbnRzX19pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT0ke3RoaXMuYm9hcmRpbmc/Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmJvYXJkaW5nPy50ZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbGk+YFxuICAgICAgICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAgICAgPC91bD5gXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICAgICR7ZHVyYXRpb24gJiYgZHVyYXRpb24gPiAwXG4gICAgICAgICAgICAgID8gaHRtbGA8dGltZT5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPlxuICAgICAgICAgICAgICAgICAgICAke2Ake2kxOG5UcmlwRHVyYXRpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19ICR7ZHVyYXRpb25PYmohLmxvbmd9YH1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiR7ZHVyYXRpb25PYmohLnNob3J0fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L3RpbWU+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgICAke2hhc0hpbUN1cyAmJiAoaGltQ3VzLmN1cyB8fCBoaW1DdXMuaGltKVxuICAgICAgICAgICAgICA/IGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItdGltZXRhYmxlX19yb3ctd2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgPHNiYi1pY29uIG5hbWU9JHsoaGltQ3VzLmN1cyB8fCBoaW1DdXMuaGltKSEubmFtZX0+PC9zYmItaWNvbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLXNjcmVlbi1yZWFkZXItb25seVwiPiR7KGhpbUN1cy5jdXMgfHwgaGltQ3VzLmhpbSkhLnRleHR9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5gXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L3NiYi1jYXJkPlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10aW1ldGFibGUtcm93JzogU2JiVGltZXRhYmxlUm93RWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIl9iIiwiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBc0RhLE1BQUEsb0JBQW9CLENBQUMsTUFBYyxTQUFpQztBQUN4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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sbb-esta/lyne-elements-experimental",
3
- "version": "1.12.0",
3
+ "version": "1.12.1",
4
4
  "description": "Lyne Design System",
5
5
  "keywords": [
6
6
  "design system",
@@ -11,7 +11,7 @@
11
11
  "type": "module",
12
12
  "customElements": "custom-elements.json",
13
13
  "peerDependencies": {
14
- "@sbb-esta/lyne-elements": "1.12.0"
14
+ "@sbb-esta/lyne-elements": "1.12.1"
15
15
  },
16
16
  "dependencies": {
17
17
  "lit": "^3.2.0"