@sbb-esta/lyne-elements-experimental 1.0.0 → 1.2.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.
- package/{constants-ClrwyPF-.js → constants-DSR8hPvP.js} +10 -6
- package/core/datetime.js +65 -72
- package/core/timetable/timetable-helper.d.ts +7 -3
- package/core/timetable/timetable-helper.d.ts.map +1 -1
- package/custom-elements.json +8 -26
- package/development/{constants-D72r1E-c.js → constants-BMGwMkN3.js} +10 -2
- package/development/core/datetime.js +4 -11
- package/development/core/timetable/timetable-helper.d.ts +7 -3
- package/development/core/timetable/timetable-helper.d.ts.map +1 -1
- package/development/differenceInMinutes-DHtPDiUE.js +30 -0
- package/development/{format-BOXfsJCN.js → format-DkbylFCM.js} +3 -3
- package/development/{isValid-YTpbhEHG.js → isValid-BVccOlli.js} +2 -10
- package/development/journey-summary.js +9 -3
- package/development/pearl-chain/pearl-chain.d.ts.map +1 -1
- package/development/pearl-chain/pearl-chain.sample-data.d.ts +21 -3
- package/development/pearl-chain/pearl-chain.sample-data.d.ts.map +1 -1
- package/development/pearl-chain-time.js +8 -2
- package/development/pearl-chain-vertical-item.js +7 -1
- package/development/pearl-chain-vertical.js +7 -1
- package/development/pearl-chain.js +42 -20
- package/development/teaser-hero.js +7 -1
- package/development/teaser-paid.js +7 -1
- package/development/timetable-duration.js +7 -1
- package/development/timetable-row/timetable-row.d.ts +0 -1
- package/development/timetable-row/timetable-row.d.ts.map +1 -1
- package/development/timetable-row/timetable-row.sample-data.d.ts.map +1 -1
- package/development/timetable-row.js +16 -22
- package/differenceInMinutes-BhHyuJc4.js +28 -0
- package/{format-qHhIvnY8.js → format-fWxoS2xH.js} +2 -2
- package/{isValid-Df_caLp4.js → isValid-DSjxf8eh.js} +9 -13
- package/journey-summary.js +2 -2
- package/package.json +2 -2
- package/pearl-chain/pearl-chain.d.ts.map +1 -1
- package/pearl-chain/pearl-chain.sample-data.d.ts +21 -3
- package/pearl-chain/pearl-chain.sample-data.d.ts.map +1 -1
- package/pearl-chain-time.js +1 -1
- package/pearl-chain.js +106 -99
- package/timetable-row/timetable-row.d.ts +0 -1
- package/timetable-row/timetable-row.d.ts.map +1 -1
- package/timetable-row/timetable-row.sample-data.d.ts.map +1 -1
- package/timetable-row.js +124 -138
- package/development/differenceInMinutes-D47vcSvy.js +0 -21
- package/differenceInMinutes-CDpgJIgL.js +0 -19
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
function
|
|
1
|
+
function n(t) {
|
|
2
2
|
const e = Object.prototype.toString.call(t);
|
|
3
3
|
return t instanceof Date || typeof t == "object" && e === "[object Date]" ? new t.constructor(+t) : typeof t == "number" || e === "[object Number]" || typeof t == "string" || e === "[object String]" ? new Date(t) : /* @__PURE__ */ new Date(NaN);
|
|
4
4
|
}
|
|
5
|
-
|
|
5
|
+
function o(t, e) {
|
|
6
|
+
return t instanceof Date ? new t.constructor(e) : new Date(e);
|
|
7
|
+
}
|
|
8
|
+
const s = 6048e5, c = 864e5, i = 6e4, r = 36e5;
|
|
6
9
|
export {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
+
r as a,
|
|
11
|
+
i as b,
|
|
12
|
+
o as c,
|
|
13
|
+
c as d,
|
|
10
14
|
s as m,
|
|
11
|
-
|
|
15
|
+
n as t
|
|
12
16
|
};
|
package/core/datetime.js
CHANGED
|
@@ -1,53 +1,46 @@
|
|
|
1
|
-
import { i18nDurationDay as
|
|
2
|
-
import { t as
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
function F(t, e) {
|
|
6
|
-
const n = d(t);
|
|
7
|
-
return isNaN(e) ? w(t, NaN) : (e && n.setDate(n.getDate() + e), n);
|
|
8
|
-
}
|
|
9
|
-
function M(t, e) {
|
|
10
|
-
const n = +d(t);
|
|
11
|
-
return w(t, n + e);
|
|
12
|
-
}
|
|
1
|
+
import { i18nDurationDay as p, i18nDurationHour as g, i18nDurationMinute as N } from "@sbb-esta/lyne-elements/core/i18n.js";
|
|
2
|
+
import { t as m, c as M, a as d, b as h } from "../constants-DSR8hPvP.js";
|
|
3
|
+
import { d as I, i as $ } from "../isValid-DSjxf8eh.js";
|
|
4
|
+
import { b as y, c as U, g as C, a as Y, d as F } from "../differenceInMinutes-BhHyuJc4.js";
|
|
13
5
|
function x(t, e) {
|
|
14
|
-
|
|
6
|
+
const n = m(t);
|
|
7
|
+
return isNaN(e) ? M(t, NaN) : (e && n.setDate(n.getDate() + e), n);
|
|
15
8
|
}
|
|
16
9
|
function H(t, e) {
|
|
17
|
-
return
|
|
10
|
+
return y(t, e * d);
|
|
18
11
|
}
|
|
19
12
|
function S(t, e) {
|
|
20
|
-
const n =
|
|
21
|
-
n.setDate(n.getDate() -
|
|
22
|
-
const a = +(
|
|
13
|
+
const n = m(t), s = m(e), r = T(n, s), i = Math.abs(I(n, s));
|
|
14
|
+
n.setDate(n.getDate() - r * i);
|
|
15
|
+
const a = +(T(n, s) === -r), u = r * (i - a);
|
|
23
16
|
return u === 0 ? 0 : u;
|
|
24
17
|
}
|
|
25
|
-
function
|
|
18
|
+
function T(t, e) {
|
|
26
19
|
const n = t.getFullYear() - e.getFullYear() || t.getMonth() - e.getMonth() || t.getDate() - e.getDate() || t.getHours() - e.getHours() || t.getMinutes() - e.getMinutes() || t.getSeconds() - e.getSeconds() || t.getMilliseconds() - e.getMilliseconds();
|
|
27
20
|
return n < 0 ? -1 : n > 0 ? 1 : n;
|
|
28
21
|
}
|
|
29
22
|
function z(t, e, n) {
|
|
30
|
-
const
|
|
31
|
-
return C(n == null ? void 0 : n.roundingMethod)(
|
|
23
|
+
const s = U(t, e) / d;
|
|
24
|
+
return C(n == null ? void 0 : n.roundingMethod)(s);
|
|
32
25
|
}
|
|
33
26
|
function Z(t, e) {
|
|
34
|
-
return
|
|
27
|
+
return x(t, -e);
|
|
35
28
|
}
|
|
36
|
-
function
|
|
37
|
-
const
|
|
38
|
-
let
|
|
39
|
-
if (
|
|
40
|
-
const o = _(
|
|
41
|
-
|
|
29
|
+
function b(t, e) {
|
|
30
|
+
const s = W(t);
|
|
31
|
+
let r;
|
|
32
|
+
if (s.date) {
|
|
33
|
+
const o = _(s.date, 2);
|
|
34
|
+
r = j(o.restDateString, o.year);
|
|
42
35
|
}
|
|
43
|
-
if (!
|
|
36
|
+
if (!r || isNaN(r.getTime()))
|
|
44
37
|
return /* @__PURE__ */ new Date(NaN);
|
|
45
|
-
const i =
|
|
38
|
+
const i = r.getTime();
|
|
46
39
|
let a = 0, u;
|
|
47
|
-
if (
|
|
40
|
+
if (s.time && (a = A(s.time), isNaN(a)))
|
|
48
41
|
return /* @__PURE__ */ new Date(NaN);
|
|
49
|
-
if (
|
|
50
|
-
if (u = E(
|
|
42
|
+
if (s.timezone) {
|
|
43
|
+
if (u = E(s.timezone), isNaN(u))
|
|
51
44
|
return /* @__PURE__ */ new Date(NaN);
|
|
52
45
|
} else {
|
|
53
46
|
const o = new Date(i + a), c = /* @__PURE__ */ new Date(0);
|
|
@@ -68,42 +61,42 @@ const f = {
|
|
|
68
61
|
dateTimeDelimiter: /[T ]/,
|
|
69
62
|
timeZoneDelimiter: /[Z ]/i,
|
|
70
63
|
timezone: /([Z+-].*)$/
|
|
71
|
-
},
|
|
64
|
+
}, O = /^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/, v = /^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/, k = /^([+-])(\d{2})(?::?(\d{2}))?$/;
|
|
72
65
|
function W(t) {
|
|
73
66
|
const e = {}, n = t.split(f.dateTimeDelimiter);
|
|
74
|
-
let
|
|
67
|
+
let s;
|
|
75
68
|
if (n.length > 2)
|
|
76
69
|
return e;
|
|
77
|
-
if (/:/.test(n[0]) ?
|
|
70
|
+
if (/:/.test(n[0]) ? s = n[0] : (e.date = n[0], s = n[1], f.timeZoneDelimiter.test(e.date) && (e.date = t.split(f.timeZoneDelimiter)[0], s = t.substr(
|
|
78
71
|
e.date.length,
|
|
79
72
|
t.length
|
|
80
|
-
))),
|
|
81
|
-
const
|
|
82
|
-
|
|
73
|
+
))), s) {
|
|
74
|
+
const r = f.timezone.exec(s);
|
|
75
|
+
r ? (e.time = s.replace(r[1], ""), e.timezone = r[1]) : e.time = s;
|
|
83
76
|
}
|
|
84
77
|
return e;
|
|
85
78
|
}
|
|
86
79
|
function _(t, e) {
|
|
87
80
|
const n = new RegExp(
|
|
88
81
|
"^(?:(\\d{4}|[+-]\\d{" + (4 + e) + "})|(\\d{2}|[+-]\\d{" + (2 + e) + "})$)"
|
|
89
|
-
),
|
|
90
|
-
if (!
|
|
91
|
-
const
|
|
82
|
+
), s = t.match(n);
|
|
83
|
+
if (!s) return { year: NaN, restDateString: "" };
|
|
84
|
+
const r = s[1] ? parseInt(s[1]) : null, i = s[2] ? parseInt(s[2]) : null;
|
|
92
85
|
return {
|
|
93
|
-
year: i === null ?
|
|
94
|
-
restDateString: t.slice((
|
|
86
|
+
year: i === null ? r : i * 100,
|
|
87
|
+
restDateString: t.slice((s[1] || s[2]).length)
|
|
95
88
|
};
|
|
96
89
|
}
|
|
97
90
|
function j(t, e) {
|
|
98
91
|
if (e === null) return /* @__PURE__ */ new Date(NaN);
|
|
99
|
-
const n = t.match(
|
|
92
|
+
const n = t.match(O);
|
|
100
93
|
if (!n) return /* @__PURE__ */ new Date(NaN);
|
|
101
|
-
const
|
|
102
|
-
if (
|
|
94
|
+
const s = !!n[4], r = l(n[1]), i = l(n[2]) - 1, a = l(n[3]), u = l(n[4]), o = l(n[5]) - 1;
|
|
95
|
+
if (s)
|
|
103
96
|
return B(e, u, o) ? J(e, u, o) : /* @__PURE__ */ new Date(NaN);
|
|
104
97
|
{
|
|
105
98
|
const c = /* @__PURE__ */ new Date(0);
|
|
106
|
-
return !V(e, i, a) || !q(e,
|
|
99
|
+
return !V(e, i, a) || !q(e, r) ? /* @__PURE__ */ new Date(NaN) : (c.setUTCFullYear(e, i, Math.max(r, a)), c);
|
|
107
100
|
}
|
|
108
101
|
}
|
|
109
102
|
function l(t) {
|
|
@@ -112,34 +105,34 @@ function l(t) {
|
|
|
112
105
|
function A(t) {
|
|
113
106
|
const e = t.match(v);
|
|
114
107
|
if (!e) return NaN;
|
|
115
|
-
const n =
|
|
116
|
-
return G(n,
|
|
108
|
+
const n = D(e[1]), s = D(e[2]), r = D(e[3]);
|
|
109
|
+
return G(n, s, r) ? n * d + s * h + r * 1e3 : NaN;
|
|
117
110
|
}
|
|
118
|
-
function
|
|
111
|
+
function D(t) {
|
|
119
112
|
return t && parseFloat(t.replace(",", ".")) || 0;
|
|
120
113
|
}
|
|
121
114
|
function E(t) {
|
|
122
115
|
if (t === "Z") return 0;
|
|
123
116
|
const e = t.match(k);
|
|
124
117
|
if (!e) return 0;
|
|
125
|
-
const n = e[1] === "+" ? -1 : 1,
|
|
126
|
-
return K(
|
|
118
|
+
const n = e[1] === "+" ? -1 : 1, s = parseInt(e[2]), r = e[3] && parseInt(e[3]) || 0;
|
|
119
|
+
return K(s, r) ? n * (s * d + r * h) : NaN;
|
|
127
120
|
}
|
|
128
121
|
function J(t, e, n) {
|
|
129
|
-
const
|
|
130
|
-
|
|
131
|
-
const
|
|
132
|
-
return
|
|
122
|
+
const s = /* @__PURE__ */ new Date(0);
|
|
123
|
+
s.setUTCFullYear(t, 0, 4);
|
|
124
|
+
const r = s.getUTCDay() || 7, i = (e - 1) * 7 + n + 1 - r;
|
|
125
|
+
return s.setUTCDate(s.getUTCDate() + i), s;
|
|
133
126
|
}
|
|
134
127
|
const R = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
135
|
-
function
|
|
128
|
+
function w(t) {
|
|
136
129
|
return t % 400 === 0 || t % 4 === 0 && t % 100 !== 0;
|
|
137
130
|
}
|
|
138
131
|
function V(t, e, n) {
|
|
139
|
-
return e >= 0 && e <= 11 && n >= 1 && n <= (R[e] || (
|
|
132
|
+
return e >= 0 && e <= 11 && n >= 1 && n <= (R[e] || (w(t) ? 29 : 28));
|
|
140
133
|
}
|
|
141
134
|
function q(t, e) {
|
|
142
|
-
return e >= 1 && e <= (
|
|
135
|
+
return e >= 1 && e <= (w(t) ? 366 : 365);
|
|
143
136
|
}
|
|
144
137
|
function B(t, e, n) {
|
|
145
138
|
return e >= 1 && e <= 53 && n >= 0 && n <= 6;
|
|
@@ -151,13 +144,13 @@ function K(t, e) {
|
|
|
151
144
|
return e >= 0 && e <= 59;
|
|
152
145
|
}
|
|
153
146
|
function P(t, e) {
|
|
154
|
-
return
|
|
147
|
+
return H(t, -e);
|
|
155
148
|
}
|
|
156
149
|
function te(t) {
|
|
157
150
|
if (!t)
|
|
158
151
|
return;
|
|
159
|
-
const e =
|
|
160
|
-
if (
|
|
152
|
+
const e = b(t);
|
|
153
|
+
if ($(e)) {
|
|
161
154
|
if (t.includes("Z"))
|
|
162
155
|
return new Date(t.replace("Z", ""));
|
|
163
156
|
if (t.includes("T")) {
|
|
@@ -169,22 +162,22 @@ function te(t) {
|
|
|
169
162
|
}
|
|
170
163
|
}
|
|
171
164
|
const ne = (t, e) => {
|
|
172
|
-
const n = [],
|
|
173
|
-
let i =
|
|
165
|
+
const n = [], s = [];
|
|
166
|
+
let i = Y(0, t);
|
|
174
167
|
const a = S(i, 0);
|
|
175
|
-
a > 0 && (n.push(`${a} d`), e &&
|
|
176
|
-
`${a} ${a > 1 ?
|
|
168
|
+
a > 0 && (n.push(`${a} d`), e && s.push(
|
|
169
|
+
`${a} ${a > 1 ? p.multiple.long[e] : p.single.long[e]}`
|
|
177
170
|
), i = Z(i, a));
|
|
178
171
|
const u = z(i, 0);
|
|
179
|
-
u > 0 && (n.push(`${u} h`), e &&
|
|
180
|
-
`${u} ${u > 1 ?
|
|
172
|
+
u > 0 && (n.push(`${u} h`), e && s.push(
|
|
173
|
+
`${u} ${u > 1 ? g.multiple.long[e] : g.single.long[e]}`
|
|
181
174
|
), i = P(i, u));
|
|
182
|
-
const o =
|
|
183
|
-
return o > 0 && (n.push(`${o} min`), e &&
|
|
184
|
-
`${o} ${o > 1 ?
|
|
175
|
+
const o = F(i, 0);
|
|
176
|
+
return o > 0 && (n.push(`${o} min`), e && s.push(
|
|
177
|
+
`${o} ${o > 1 ? N.multiple.long[e] : N.single.long[e]}`
|
|
185
178
|
)), {
|
|
186
179
|
short: n.join(" "),
|
|
187
|
-
long:
|
|
180
|
+
long: s.join(" ")
|
|
188
181
|
};
|
|
189
182
|
};
|
|
190
183
|
export {
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import { Notice } from './timetable-properties.js';
|
|
1
|
+
import { Leg, Notice } from './timetable-properties.js';
|
|
2
2
|
|
|
3
|
-
export declare const isRideLeg: (leg: any) => leg is
|
|
4
|
-
|
|
3
|
+
export declare const isRideLeg: (leg: any) => leg is Extract<Leg, {
|
|
4
|
+
__typename: "PTRideLeg";
|
|
5
|
+
}>;
|
|
6
|
+
export declare const isConnectionLeg: (leg: any) => leg is Extract<Leg, {
|
|
7
|
+
__typename: "PTConnectionLeg";
|
|
8
|
+
}>;
|
|
5
9
|
export declare const extractTimeAndStringFromNoticeText: (notice?: Notice) => {
|
|
6
10
|
duration: number;
|
|
7
11
|
text: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timetable-helper.d.ts","sourceRoot":"","sources":["../../../../src/elements-experimental/core/timetable/timetable-helper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"timetable-helper.d.ts","sourceRoot":"","sources":["../../../../src/elements-experimental/core/timetable/timetable-helper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAE7D,eAAO,MAAM,SAAS,QAAS,GAAG,KAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;IAAE,UAAU,EAAE,WAAW,CAAA;CAAE,CAEnF,CAAC;AAEF,eAAO,MAAM,eAAe,QACrB,GAAG,KACP,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;IAAE,UAAU,EAAE,iBAAiB,CAAA;CAAE,CAEvD,CAAC;AAEF,eAAO,MAAM,kCAAkC,YACpC,MAAM,KACd;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAWlC,CAAC"}
|
package/custom-elements.json
CHANGED
|
@@ -681,14 +681,14 @@
|
|
|
681
681
|
"name": "start",
|
|
682
682
|
"optional": true,
|
|
683
683
|
"type": {
|
|
684
|
-
"text": "
|
|
684
|
+
"text": "Time"
|
|
685
685
|
}
|
|
686
686
|
},
|
|
687
687
|
{
|
|
688
688
|
"name": "end",
|
|
689
689
|
"optional": true,
|
|
690
690
|
"type": {
|
|
691
|
-
"text": "
|
|
691
|
+
"text": "Time"
|
|
692
692
|
}
|
|
693
693
|
}
|
|
694
694
|
]
|
|
@@ -710,17 +710,17 @@
|
|
|
710
710
|
}
|
|
711
711
|
},
|
|
712
712
|
{
|
|
713
|
-
"name": "
|
|
713
|
+
"name": "start",
|
|
714
714
|
"optional": true,
|
|
715
715
|
"type": {
|
|
716
|
-
"text": "
|
|
716
|
+
"text": "Time"
|
|
717
717
|
}
|
|
718
718
|
},
|
|
719
719
|
{
|
|
720
|
-
"name": "
|
|
720
|
+
"name": "end",
|
|
721
721
|
"optional": true,
|
|
722
722
|
"type": {
|
|
723
|
-
"text": "
|
|
723
|
+
"text": "Time"
|
|
724
724
|
}
|
|
725
725
|
}
|
|
726
726
|
]
|
|
@@ -745,14 +745,14 @@
|
|
|
745
745
|
"name": "start",
|
|
746
746
|
"optional": true,
|
|
747
747
|
"type": {
|
|
748
|
-
"text": "
|
|
748
|
+
"text": "Time"
|
|
749
749
|
}
|
|
750
750
|
},
|
|
751
751
|
{
|
|
752
752
|
"name": "end",
|
|
753
753
|
"optional": true,
|
|
754
754
|
"type": {
|
|
755
|
-
"text": "
|
|
755
|
+
"text": "Time"
|
|
756
756
|
}
|
|
757
757
|
}
|
|
758
758
|
]
|
|
@@ -1335,24 +1335,6 @@
|
|
|
1335
1335
|
},
|
|
1336
1336
|
"description": "The skeleton render function for the loading state"
|
|
1337
1337
|
},
|
|
1338
|
-
{
|
|
1339
|
-
"kind": "method",
|
|
1340
|
-
"name": "_getQuayType",
|
|
1341
|
-
"privacy": "private",
|
|
1342
|
-
"return": {
|
|
1343
|
-
"type": {
|
|
1344
|
-
"text": "any"
|
|
1345
|
-
}
|
|
1346
|
-
},
|
|
1347
|
-
"parameters": [
|
|
1348
|
-
{
|
|
1349
|
-
"name": "vehicleMode",
|
|
1350
|
-
"type": {
|
|
1351
|
-
"text": "string"
|
|
1352
|
-
}
|
|
1353
|
-
}
|
|
1354
|
-
]
|
|
1355
|
-
},
|
|
1356
1338
|
{
|
|
1357
1339
|
"kind": "method",
|
|
1358
1340
|
"name": "_getQuayTypeStrings",
|
|
@@ -8,6 +8,13 @@ function toDate(argument) {
|
|
|
8
8
|
return /* @__PURE__ */ new Date(NaN);
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
+
function constructFrom(date, value) {
|
|
12
|
+
if (date instanceof Date) {
|
|
13
|
+
return new date.constructor(value);
|
|
14
|
+
} else {
|
|
15
|
+
return new Date(value);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
11
18
|
const millisecondsInWeek = 6048e5;
|
|
12
19
|
const millisecondsInDay = 864e5;
|
|
13
20
|
const millisecondsInMinute = 6e4;
|
|
@@ -15,8 +22,9 @@ const millisecondsInHour = 36e5;
|
|
|
15
22
|
export {
|
|
16
23
|
millisecondsInHour as a,
|
|
17
24
|
millisecondsInMinute as b,
|
|
18
|
-
|
|
25
|
+
constructFrom as c,
|
|
26
|
+
millisecondsInDay as d,
|
|
19
27
|
millisecondsInWeek as m,
|
|
20
28
|
toDate as t
|
|
21
29
|
};
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLUQ3MnIxRS1jLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZGF0ZS1mbnMvdG9EYXRlLm1qcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9kYXRlLWZucy9jb25zdGFudHMubWpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG5hbWUgdG9EYXRlXG4gKiBAY2F0ZWdvcnkgQ29tbW9uIEhlbHBlcnNcbiAqIEBzdW1tYXJ5IENvbnZlcnQgdGhlIGdpdmVuIGFyZ3VtZW50IHRvIGFuIGluc3RhbmNlIG9mIERhdGUuXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKiBDb252ZXJ0IHRoZSBnaXZlbiBhcmd1bWVudCB0byBhbiBpbnN0YW5jZSBvZiBEYXRlLlxuICpcbiAqIElmIHRoZSBhcmd1bWVudCBpcyBhbiBpbnN0YW5jZSBvZiBEYXRlLCB0aGUgZnVuY3Rpb24gcmV0dXJucyBpdHMgY2xvbmUuXG4gKlxuICogSWYgdGhlIGFyZ3VtZW50IGlzIGEgbnVtYmVyLCBpdCBpcyB0cmVhdGVkIGFzIGEgdGltZXN0YW1wLlxuICpcbiAqIElmIHRoZSBhcmd1bWVudCBpcyBub25lIG9mIHRoZSBhYm92ZSwgdGhlIGZ1bmN0aW9uIHJldHVybnMgSW52YWxpZCBEYXRlLlxuICpcbiAqICoqTm90ZSoqOiAqYWxsKiBEYXRlIGFyZ3VtZW50cyBwYXNzZWQgdG8gYW55ICpkYXRlLWZucyogZnVuY3Rpb24gaXMgcHJvY2Vzc2VkIGJ5IGB0b0RhdGVgLlxuICpcbiAqIEB0eXBlUGFyYW0gRGF0ZVR5cGUgLSBUaGUgYERhdGVgIHR5cGUsIHRoZSBmdW5jdGlvbiBvcGVyYXRlcyBvbi4gR2V0cyBpbmZlcnJlZCBmcm9tIHBhc3NlZCBhcmd1bWVudHMuIEFsbG93cyB0byB1c2UgZXh0ZW5zaW9ucyBsaWtlIFtgVVRDRGF0ZWBdKGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRlLWZucy91dGMpLlxuICpcbiAqIEBwYXJhbSBhcmd1bWVudCAtIFRoZSB2YWx1ZSB0byBjb252ZXJ0XG4gKlxuICogQHJldHVybnMgVGhlIHBhcnNlZCBkYXRlIGluIHRoZSBsb2NhbCB0aW1lIHpvbmVcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gQ2xvbmUgdGhlIGRhdGU6XG4gKiBjb25zdCByZXN1bHQgPSB0b0RhdGUobmV3IERhdGUoMjAxNCwgMSwgMTEsIDExLCAzMCwgMzApKVxuICogLy89PiBUdWUgRmViIDExIDIwMTQgMTE6MzA6MzBcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gQ29udmVydCB0aGUgdGltZXN0YW1wIHRvIGRhdGU6XG4gKiBjb25zdCByZXN1bHQgPSB0b0RhdGUoMTM5MjA5ODQzMDAwMClcbiAqIC8vPT4gVHVlIEZlYiAxMSAyMDE0IDExOjMwOjMwXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0RhdGUoYXJndW1lbnQpIHtcbiAgY29uc3QgYXJnU3RyID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGFyZ3VtZW50KTtcblxuICAvLyBDbG9uZSB0aGUgZGF0ZVxuICBpZiAoXG4gICAgYXJndW1lbnQgaW5zdGFuY2VvZiBEYXRlIHx8XG4gICAgKHR5cGVvZiBhcmd1bWVudCA9PT0gXCJvYmplY3RcIiAmJiBhcmdTdHIgPT09IFwiW29iamVjdCBEYXRlXVwiKVxuICApIHtcbiAgICAvLyBQcmV2ZW50IHRoZSBkYXRlIHRvIGxvc2UgdGhlIG1pbGxpc2Vjb25kcyB3aGVuIHBhc3NlZCB0byBuZXcgRGF0ZSgpIGluIElFMTBcbiAgICByZXR1cm4gbmV3IGFyZ3VtZW50LmNvbnN0cnVjdG9yKCthcmd1bWVudCk7XG4gIH0gZWxzZSBpZiAoXG4gICAgdHlwZW9mIGFyZ3VtZW50ID09PSBcIm51bWJlclwiIHx8XG4gICAgYXJnU3RyID09PSBcIltvYmplY3QgTnVtYmVyXVwiIHx8XG4gICAgdHlwZW9mIGFyZ3VtZW50ID09PSBcInN0cmluZ1wiIHx8XG4gICAgYXJnU3RyID09PSBcIltvYmplY3QgU3RyaW5nXVwiXG4gICkge1xuICAgIC8vIFRPRE86IENhbiB3ZSBnZXQgcmlkIG9mIGFzP1xuICAgIHJldHVybiBuZXcgRGF0ZShhcmd1bWVudCk7XG4gIH0gZWxzZSB7XG4gICAgLy8gVE9ETzogQ2FuIHdlIGdldCByaWQgb2YgYXM/XG4gICAgcmV0dXJuIG5ldyBEYXRlKE5hTik7XG4gIH1cbn1cblxuLy8gRmFsbGJhY2sgZm9yIG1vZHVsYXJpemVkIGltcG9ydHM6XG5leHBvcnQgZGVmYXVsdCB0b0RhdGU7XG4iLCIvKipcbiAqIEBtb2R1bGUgY29uc3RhbnRzXG4gKiBAc3VtbWFyeSBVc2VmdWwgY29uc3RhbnRzXG4gKiBAZGVzY3JpcHRpb25cbiAqIENvbGxlY3Rpb24gb2YgdXNlZnVsIGRhdGUgY29uc3RhbnRzLlxuICpcbiAqIFRoZSBjb25zdGFudHMgY291bGQgYmUgaW1wb3J0ZWQgZnJvbSBgZGF0ZS1mbnMvY29uc3RhbnRzYDpcbiAqXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgbWF4VGltZSwgbWluVGltZSB9IGZyb20gXCIuL2NvbnN0YW50cy9kYXRlLWZucy9jb25zdGFudHNcIjtcbiAqXG4gKiBmdW5jdGlvbiBpc0FsbG93ZWRUaW1lKHRpbWUpIHtcbiAqICAgcmV0dXJuIHRpbWUgPD0gbWF4VGltZSAmJiB0aW1lID49IG1pblRpbWU7XG4gKiB9XG4gKiBgYGBcbiAqL1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgZGF5c0luV2Vla1xuICogQHN1bW1hcnkgRGF5cyBpbiAxIHdlZWsuXG4gKi9cbmV4cG9ydCBjb25zdCBkYXlzSW5XZWVrID0gNztcblxuLyoqXG4gKiBAY29uc3RhbnRcbiAqIEBuYW1lIGRheXNJblllYXJcbiAqIEBzdW1tYXJ5IERheXMgaW4gMSB5ZWFyLlxuICpcbiAqIEBkZXNjcmlwdGlvblxuICogSG93IG1hbnkgZGF5cyBpbiBhIHllYXIuXG4gKlxuICogT25lIHllYXJzIGVxdWFscyAzNjUuMjQyNSBkYXlzIGFjY29yZGluZyB0byB0aGUgZm9ybXVsYTpcbiAqXG4gKiA+IExlYXAgeWVhciBvY2N1cmVzIGV2ZXJ5IDQgeWVhcnMsIGV4Y2VwdCBmb3IgeWVhcnMgdGhhdCBhcmUgZGl2aXNhYmxlIGJ5IDEwMCBhbmQgbm90IGRpdmlzYWJsZSBieSA0MDAuXG4gKiA+IDEgbWVhbiB5ZWFyID0gKDM2NSsxLzQtMS8xMDArMS80MDApIGRheXMgPSAzNjUuMjQyNSBkYXlzXG4gKi9cbmV4cG9ydCBjb25zdCBkYXlzSW5ZZWFyID0gMzY1LjI0MjU7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtYXhUaW1lXG4gKiBAc3VtbWFyeSBNYXhpbXVtIGFsbG93ZWQgdGltZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgbWF4VGltZSB9IGZyb20gXCIuL2NvbnN0YW50cy9kYXRlLWZucy9jb25zdGFudHNcIjtcbiAqXG4gKiBjb25zdCBpc1ZhbGlkID0gODY0MDAwMDAwMDAwMDAwMSA8PSBtYXhUaW1lO1xuICogLy89PiBmYWxzZVxuICpcbiAqIG5ldyBEYXRlKDg2NDAwMDAwMDAwMDAwMDEpO1xuICogLy89PiBJbnZhbGlkIERhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IG1heFRpbWUgPSBNYXRoLnBvdygxMCwgOCkgKiAyNCAqIDYwICogNjAgKiAxMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWluVGltZVxuICogQHN1bW1hcnkgTWluaW11bSBhbGxvd2VkIHRpbWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IG1pblRpbWUgfSBmcm9tIFwiLi9jb25zdGFudHMvZGF0ZS1mbnMvY29uc3RhbnRzXCI7XG4gKlxuICogY29uc3QgaXNWYWxpZCA9IC04NjQwMDAwMDAwMDAwMDAxID49IG1pblRpbWU7XG4gKiAvLz0+IGZhbHNlXG4gKlxuICogbmV3IERhdGUoLTg2NDAwMDAwMDAwMDAwMDEpXG4gKiAvLz0+IEludmFsaWQgRGF0ZVxuICovXG5leHBvcnQgY29uc3QgbWluVGltZSA9IC1tYXhUaW1lO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5XZWVrXG4gKiBAc3VtbWFyeSBNaWxsaXNlY29uZHMgaW4gMSB3ZWVrLlxuICovXG5leHBvcnQgY29uc3QgbWlsbGlzZWNvbmRzSW5XZWVrID0gNjA0ODAwMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5EYXlcbiAqIEBzdW1tYXJ5IE1pbGxpc2Vjb25kcyBpbiAxIGRheS5cbiAqL1xuZXhwb3J0IGNvbnN0IG1pbGxpc2Vjb25kc0luRGF5ID0gODY0MDAwMDA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtaWxsaXNlY29uZHNJbk1pbnV0ZVxuICogQHN1bW1hcnkgTWlsbGlzZWNvbmRzIGluIDEgbWludXRlXG4gKi9cbmV4cG9ydCBjb25zdCBtaWxsaXNlY29uZHNJbk1pbnV0ZSA9IDYwMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5Ib3VyXG4gKiBAc3VtbWFyeSBNaWxsaXNlY29uZHMgaW4gMSBob3VyXG4gKi9cbmV4cG9ydCBjb25zdCBtaWxsaXNlY29uZHNJbkhvdXIgPSAzNjAwMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5TZWNvbmRcbiAqIEBzdW1tYXJ5IE1pbGxpc2Vjb25kcyBpbiAxIHNlY29uZFxuICovXG5leHBvcnQgY29uc3QgbWlsbGlzZWNvbmRzSW5TZWNvbmQgPSAxMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWludXRlc0luWWVhclxuICogQHN1bW1hcnkgTWludXRlcyBpbiAxIHllYXIuXG4gKi9cbmV4cG9ydCBjb25zdCBtaW51dGVzSW5ZZWFyID0gNTI1NjAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWludXRlc0luTW9udGhcbiAqIEBzdW1tYXJ5IE1pbnV0ZXMgaW4gMSBtb250aC5cbiAqL1xuZXhwb3J0IGNvbnN0IG1pbnV0ZXNJbk1vbnRoID0gNDMyMDA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtaW51dGVzSW5EYXlcbiAqIEBzdW1tYXJ5IE1pbnV0ZXMgaW4gMSBkYXkuXG4gKi9cbmV4cG9ydCBjb25zdCBtaW51dGVzSW5EYXkgPSAxNDQwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWludXRlc0luSG91clxuICogQHN1bW1hcnkgTWludXRlcyBpbiAxIGhvdXIuXG4gKi9cbmV4cG9ydCBjb25zdCBtaW51dGVzSW5Ib3VyID0gNjA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtb250aHNJblF1YXJ0ZXJcbiAqIEBzdW1tYXJ5IE1vbnRocyBpbiAxIHF1YXJ0ZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBtb250aHNJblF1YXJ0ZXIgPSAzO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbW9udGhzSW5ZZWFyXG4gKiBAc3VtbWFyeSBNb250aHMgaW4gMSB5ZWFyLlxuICovXG5leHBvcnQgY29uc3QgbW9udGhzSW5ZZWFyID0gMTI7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBxdWFydGVyc0luWWVhclxuICogQHN1bW1hcnkgUXVhcnRlcnMgaW4gMSB5ZWFyXG4gKi9cbmV4cG9ydCBjb25zdCBxdWFydGVyc0luWWVhciA9IDQ7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBzZWNvbmRzSW5Ib3VyXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgaG91ci5cbiAqL1xuZXhwb3J0IGNvbnN0IHNlY29uZHNJbkhvdXIgPSAzNjAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgc2Vjb25kc0luTWludXRlXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgbWludXRlLlxuICovXG5leHBvcnQgY29uc3Qgc2Vjb25kc0luTWludXRlID0gNjA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBzZWNvbmRzSW5EYXlcbiAqIEBzdW1tYXJ5IFNlY29uZHMgaW4gMSBkYXkuXG4gKi9cbmV4cG9ydCBjb25zdCBzZWNvbmRzSW5EYXkgPSBzZWNvbmRzSW5Ib3VyICogMjQ7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBzZWNvbmRzSW5XZWVrXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgd2Vlay5cbiAqL1xuZXhwb3J0IGNvbnN0IHNlY29uZHNJbldlZWsgPSBzZWNvbmRzSW5EYXkgKiA3O1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgc2Vjb25kc0luWWVhclxuICogQHN1bW1hcnkgU2Vjb25kcyBpbiAxIHllYXIuXG4gKi9cbmV4cG9ydCBjb25zdCBzZWNvbmRzSW5ZZWFyID0gc2Vjb25kc0luRGF5ICogZGF5c0luWWVhcjtcblxuLyoqXG4gKiBAY29uc3RhbnRcbiAqIEBuYW1lIHNlY29uZHNJbk1vbnRoXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgbW9udGhcbiAqL1xuZXhwb3J0IGNvbnN0IHNlY29uZHNJbk1vbnRoID0gc2Vjb25kc0luWWVhciAvIDEyO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgc2Vjb25kc0luUXVhcnRlclxuICogQHN1bW1hcnkgU2Vjb25kcyBpbiAxIHF1YXJ0ZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBzZWNvbmRzSW5RdWFydGVyID0gc2Vjb25kc0luTW9udGggKiAzO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdDTyxTQUFTLE9BQU8sVUFBVTtBQUMvQixRQUFNLFNBQVMsT0FBTyxVQUFVLFNBQVMsS0FBSyxRQUFRO0FBR3RELE1BQ0Usb0JBQW9CLFFBQ25CLE9BQU8sYUFBYSxZQUFZLFdBQVcsaUJBQzVDO0FBRUEsV0FBTyxJQUFJLFNBQVMsWUFBWSxDQUFDLFFBQVE7QUFBQSxFQUM3QyxXQUNJLE9BQU8sYUFBYSxZQUNwQixXQUFXLHFCQUNYLE9BQU8sYUFBYSxZQUNwQixXQUFXLG1CQUNYO0FBRUEsV0FBTyxJQUFJLEtBQUssUUFBUTtBQUFBLEVBQzVCLE9BQVM7QUFFTCxXQUFPLG9CQUFJLEtBQUssR0FBRztBQUFBLEVBQ3BCO0FBQ0g7QUNzQlksTUFBQyxxQkFBcUI7QUFPdEIsTUFBQyxvQkFBb0I7QUFPckIsTUFBQyx1QkFBdUI7QUFPeEIsTUFBQyxxQkFBcUI7IiwieF9nb29nbGVfaWdub3JlTGlzdCI6WzAsMV19
|
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLUJNR3dNa04zLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZGF0ZS1mbnMvdG9EYXRlLm1qcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9kYXRlLWZucy9jb25zdHJ1Y3RGcm9tLm1qcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9kYXRlLWZucy9jb25zdGFudHMubWpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG5hbWUgdG9EYXRlXG4gKiBAY2F0ZWdvcnkgQ29tbW9uIEhlbHBlcnNcbiAqIEBzdW1tYXJ5IENvbnZlcnQgdGhlIGdpdmVuIGFyZ3VtZW50IHRvIGFuIGluc3RhbmNlIG9mIERhdGUuXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKiBDb252ZXJ0IHRoZSBnaXZlbiBhcmd1bWVudCB0byBhbiBpbnN0YW5jZSBvZiBEYXRlLlxuICpcbiAqIElmIHRoZSBhcmd1bWVudCBpcyBhbiBpbnN0YW5jZSBvZiBEYXRlLCB0aGUgZnVuY3Rpb24gcmV0dXJucyBpdHMgY2xvbmUuXG4gKlxuICogSWYgdGhlIGFyZ3VtZW50IGlzIGEgbnVtYmVyLCBpdCBpcyB0cmVhdGVkIGFzIGEgdGltZXN0YW1wLlxuICpcbiAqIElmIHRoZSBhcmd1bWVudCBpcyBub25lIG9mIHRoZSBhYm92ZSwgdGhlIGZ1bmN0aW9uIHJldHVybnMgSW52YWxpZCBEYXRlLlxuICpcbiAqICoqTm90ZSoqOiAqYWxsKiBEYXRlIGFyZ3VtZW50cyBwYXNzZWQgdG8gYW55ICpkYXRlLWZucyogZnVuY3Rpb24gaXMgcHJvY2Vzc2VkIGJ5IGB0b0RhdGVgLlxuICpcbiAqIEB0eXBlUGFyYW0gRGF0ZVR5cGUgLSBUaGUgYERhdGVgIHR5cGUsIHRoZSBmdW5jdGlvbiBvcGVyYXRlcyBvbi4gR2V0cyBpbmZlcnJlZCBmcm9tIHBhc3NlZCBhcmd1bWVudHMuIEFsbG93cyB0byB1c2UgZXh0ZW5zaW9ucyBsaWtlIFtgVVRDRGF0ZWBdKGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRlLWZucy91dGMpLlxuICpcbiAqIEBwYXJhbSBhcmd1bWVudCAtIFRoZSB2YWx1ZSB0byBjb252ZXJ0XG4gKlxuICogQHJldHVybnMgVGhlIHBhcnNlZCBkYXRlIGluIHRoZSBsb2NhbCB0aW1lIHpvbmVcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gQ2xvbmUgdGhlIGRhdGU6XG4gKiBjb25zdCByZXN1bHQgPSB0b0RhdGUobmV3IERhdGUoMjAxNCwgMSwgMTEsIDExLCAzMCwgMzApKVxuICogLy89PiBUdWUgRmViIDExIDIwMTQgMTE6MzA6MzBcbiAqXG4gKiBAZXhhbXBsZVxuICogLy8gQ29udmVydCB0aGUgdGltZXN0YW1wIHRvIGRhdGU6XG4gKiBjb25zdCByZXN1bHQgPSB0b0RhdGUoMTM5MjA5ODQzMDAwMClcbiAqIC8vPT4gVHVlIEZlYiAxMSAyMDE0IDExOjMwOjMwXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0RhdGUoYXJndW1lbnQpIHtcbiAgY29uc3QgYXJnU3RyID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGFyZ3VtZW50KTtcblxuICAvLyBDbG9uZSB0aGUgZGF0ZVxuICBpZiAoXG4gICAgYXJndW1lbnQgaW5zdGFuY2VvZiBEYXRlIHx8XG4gICAgKHR5cGVvZiBhcmd1bWVudCA9PT0gXCJvYmplY3RcIiAmJiBhcmdTdHIgPT09IFwiW29iamVjdCBEYXRlXVwiKVxuICApIHtcbiAgICAvLyBQcmV2ZW50IHRoZSBkYXRlIHRvIGxvc2UgdGhlIG1pbGxpc2Vjb25kcyB3aGVuIHBhc3NlZCB0byBuZXcgRGF0ZSgpIGluIElFMTBcbiAgICByZXR1cm4gbmV3IGFyZ3VtZW50LmNvbnN0cnVjdG9yKCthcmd1bWVudCk7XG4gIH0gZWxzZSBpZiAoXG4gICAgdHlwZW9mIGFyZ3VtZW50ID09PSBcIm51bWJlclwiIHx8XG4gICAgYXJnU3RyID09PSBcIltvYmplY3QgTnVtYmVyXVwiIHx8XG4gICAgdHlwZW9mIGFyZ3VtZW50ID09PSBcInN0cmluZ1wiIHx8XG4gICAgYXJnU3RyID09PSBcIltvYmplY3QgU3RyaW5nXVwiXG4gICkge1xuICAgIC8vIFRPRE86IENhbiB3ZSBnZXQgcmlkIG9mIGFzP1xuICAgIHJldHVybiBuZXcgRGF0ZShhcmd1bWVudCk7XG4gIH0gZWxzZSB7XG4gICAgLy8gVE9ETzogQ2FuIHdlIGdldCByaWQgb2YgYXM/XG4gICAgcmV0dXJuIG5ldyBEYXRlKE5hTik7XG4gIH1cbn1cblxuLy8gRmFsbGJhY2sgZm9yIG1vZHVsYXJpemVkIGltcG9ydHM6XG5leHBvcnQgZGVmYXVsdCB0b0RhdGU7XG4iLCIvKipcbiAqIEBuYW1lIGNvbnN0cnVjdEZyb21cbiAqIEBjYXRlZ29yeSBHZW5lcmljIEhlbHBlcnNcbiAqIEBzdW1tYXJ5IENvbnN0cnVjdHMgYSBkYXRlIHVzaW5nIHRoZSByZWZlcmVuY2UgZGF0ZSBhbmQgdGhlIHZhbHVlXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKiBUaGUgZnVuY3Rpb24gY29uc3RydWN0cyBhIG5ldyBkYXRlIHVzaW5nIHRoZSBjb25zdHJ1Y3RvciBmcm9tIHRoZSByZWZlcmVuY2VcbiAqIGRhdGUgYW5kIHRoZSBnaXZlbiB2YWx1ZS4gSXQgaGVscHMgdG8gYnVpbGQgZ2VuZXJpYyBmdW5jdGlvbnMgdGhhdCBhY2NlcHRcbiAqIGRhdGUgZXh0ZW5zaW9ucy5cbiAqXG4gKiBJdCBkZWZhdWx0cyB0byBgRGF0ZWAgaWYgdGhlIHBhc3NlZCByZWZlcmVuY2UgZGF0ZSBpcyBhIG51bWJlciBvciBhIHN0cmluZy5cbiAqXG4gKiBAdHlwZVBhcmFtIERhdGVUeXBlIC0gVGhlIGBEYXRlYCB0eXBlLCB0aGUgZnVuY3Rpb24gb3BlcmF0ZXMgb24uIEdldHMgaW5mZXJyZWQgZnJvbSBwYXNzZWQgYXJndW1lbnRzLiBBbGxvd3MgdG8gdXNlIGV4dGVuc2lvbnMgbGlrZSBbYFVUQ0RhdGVgXShodHRwczovL2dpdGh1Yi5jb20vZGF0ZS1mbnMvdXRjKS5cbiAqXG4gKiBAcGFyYW0gZGF0ZSAtIFRoZSByZWZlcmVuY2UgZGF0ZSB0byB0YWtlIGNvbnN0cnVjdG9yIGZyb21cbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjcmVhdGUgdGhlIGRhdGVcbiAqXG4gKiBAcmV0dXJucyBEYXRlIGluaXRpYWxpemVkIHVzaW5nIHRoZSBnaXZlbiBkYXRlIGFuZCB2YWx1ZVxuICpcbiAqIEBleGFtcGxlXG4gKiBpbXBvcnQgeyBjb25zdHJ1Y3RGcm9tIH0gZnJvbSAnZGF0ZS1mbnMnXG4gKlxuICogLy8gQSBmdW5jdGlvbiB0aGF0IGNsb25lcyBhIGRhdGUgcHJlc2VydmluZyB0aGUgb3JpZ2luYWwgdHlwZVxuICogZnVuY3Rpb24gY2xvbmVEYXRlPERhdGVUeXBlIGV4dGVuZHMgRGF0ZShkYXRlOiBEYXRlVHlwZSk6IERhdGVUeXBlIHtcbiAqICAgcmV0dXJuIGNvbnN0cnVjdEZyb20oXG4gKiAgICAgZGF0ZSwgLy8gVXNlIGNvbnRydXN0b3IgZnJvbSB0aGUgZ2l2ZW4gZGF0ZVxuICogICAgIGRhdGUuZ2V0VGltZSgpIC8vIFVzZSB0aGUgZGF0ZSB2YWx1ZSB0byBjcmVhdGUgYSBuZXcgZGF0ZVxuICogICApXG4gKiB9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25zdHJ1Y3RGcm9tKGRhdGUsIHZhbHVlKSB7XG4gIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgIHJldHVybiBuZXcgZGF0ZS5jb25zdHJ1Y3Rvcih2YWx1ZSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKHZhbHVlKTtcbiAgfVxufVxuXG4vLyBGYWxsYmFjayBmb3IgbW9kdWxhcml6ZWQgaW1wb3J0czpcbmV4cG9ydCBkZWZhdWx0IGNvbnN0cnVjdEZyb207XG4iLCIvKipcbiAqIEBtb2R1bGUgY29uc3RhbnRzXG4gKiBAc3VtbWFyeSBVc2VmdWwgY29uc3RhbnRzXG4gKiBAZGVzY3JpcHRpb25cbiAqIENvbGxlY3Rpb24gb2YgdXNlZnVsIGRhdGUgY29uc3RhbnRzLlxuICpcbiAqIFRoZSBjb25zdGFudHMgY291bGQgYmUgaW1wb3J0ZWQgZnJvbSBgZGF0ZS1mbnMvY29uc3RhbnRzYDpcbiAqXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgbWF4VGltZSwgbWluVGltZSB9IGZyb20gXCIuL2NvbnN0YW50cy9kYXRlLWZucy9jb25zdGFudHNcIjtcbiAqXG4gKiBmdW5jdGlvbiBpc0FsbG93ZWRUaW1lKHRpbWUpIHtcbiAqICAgcmV0dXJuIHRpbWUgPD0gbWF4VGltZSAmJiB0aW1lID49IG1pblRpbWU7XG4gKiB9XG4gKiBgYGBcbiAqL1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgZGF5c0luV2Vla1xuICogQHN1bW1hcnkgRGF5cyBpbiAxIHdlZWsuXG4gKi9cbmV4cG9ydCBjb25zdCBkYXlzSW5XZWVrID0gNztcblxuLyoqXG4gKiBAY29uc3RhbnRcbiAqIEBuYW1lIGRheXNJblllYXJcbiAqIEBzdW1tYXJ5IERheXMgaW4gMSB5ZWFyLlxuICpcbiAqIEBkZXNjcmlwdGlvblxuICogSG93IG1hbnkgZGF5cyBpbiBhIHllYXIuXG4gKlxuICogT25lIHllYXJzIGVxdWFscyAzNjUuMjQyNSBkYXlzIGFjY29yZGluZyB0byB0aGUgZm9ybXVsYTpcbiAqXG4gKiA+IExlYXAgeWVhciBvY2N1cmVzIGV2ZXJ5IDQgeWVhcnMsIGV4Y2VwdCBmb3IgeWVhcnMgdGhhdCBhcmUgZGl2aXNhYmxlIGJ5IDEwMCBhbmQgbm90IGRpdmlzYWJsZSBieSA0MDAuXG4gKiA+IDEgbWVhbiB5ZWFyID0gKDM2NSsxLzQtMS8xMDArMS80MDApIGRheXMgPSAzNjUuMjQyNSBkYXlzXG4gKi9cbmV4cG9ydCBjb25zdCBkYXlzSW5ZZWFyID0gMzY1LjI0MjU7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtYXhUaW1lXG4gKiBAc3VtbWFyeSBNYXhpbXVtIGFsbG93ZWQgdGltZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHsgbWF4VGltZSB9IGZyb20gXCIuL2NvbnN0YW50cy9kYXRlLWZucy9jb25zdGFudHNcIjtcbiAqXG4gKiBjb25zdCBpc1ZhbGlkID0gODY0MDAwMDAwMDAwMDAwMSA8PSBtYXhUaW1lO1xuICogLy89PiBmYWxzZVxuICpcbiAqIG5ldyBEYXRlKDg2NDAwMDAwMDAwMDAwMDEpO1xuICogLy89PiBJbnZhbGlkIERhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IG1heFRpbWUgPSBNYXRoLnBvdygxMCwgOCkgKiAyNCAqIDYwICogNjAgKiAxMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWluVGltZVxuICogQHN1bW1hcnkgTWluaW11bSBhbGxvd2VkIHRpbWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGltcG9ydCB7IG1pblRpbWUgfSBmcm9tIFwiLi9jb25zdGFudHMvZGF0ZS1mbnMvY29uc3RhbnRzXCI7XG4gKlxuICogY29uc3QgaXNWYWxpZCA9IC04NjQwMDAwMDAwMDAwMDAxID49IG1pblRpbWU7XG4gKiAvLz0+IGZhbHNlXG4gKlxuICogbmV3IERhdGUoLTg2NDAwMDAwMDAwMDAwMDEpXG4gKiAvLz0+IEludmFsaWQgRGF0ZVxuICovXG5leHBvcnQgY29uc3QgbWluVGltZSA9IC1tYXhUaW1lO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5XZWVrXG4gKiBAc3VtbWFyeSBNaWxsaXNlY29uZHMgaW4gMSB3ZWVrLlxuICovXG5leHBvcnQgY29uc3QgbWlsbGlzZWNvbmRzSW5XZWVrID0gNjA0ODAwMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5EYXlcbiAqIEBzdW1tYXJ5IE1pbGxpc2Vjb25kcyBpbiAxIGRheS5cbiAqL1xuZXhwb3J0IGNvbnN0IG1pbGxpc2Vjb25kc0luRGF5ID0gODY0MDAwMDA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtaWxsaXNlY29uZHNJbk1pbnV0ZVxuICogQHN1bW1hcnkgTWlsbGlzZWNvbmRzIGluIDEgbWludXRlXG4gKi9cbmV4cG9ydCBjb25zdCBtaWxsaXNlY29uZHNJbk1pbnV0ZSA9IDYwMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5Ib3VyXG4gKiBAc3VtbWFyeSBNaWxsaXNlY29uZHMgaW4gMSBob3VyXG4gKi9cbmV4cG9ydCBjb25zdCBtaWxsaXNlY29uZHNJbkhvdXIgPSAzNjAwMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWlsbGlzZWNvbmRzSW5TZWNvbmRcbiAqIEBzdW1tYXJ5IE1pbGxpc2Vjb25kcyBpbiAxIHNlY29uZFxuICovXG5leHBvcnQgY29uc3QgbWlsbGlzZWNvbmRzSW5TZWNvbmQgPSAxMDAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWludXRlc0luWWVhclxuICogQHN1bW1hcnkgTWludXRlcyBpbiAxIHllYXIuXG4gKi9cbmV4cG9ydCBjb25zdCBtaW51dGVzSW5ZZWFyID0gNTI1NjAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWludXRlc0luTW9udGhcbiAqIEBzdW1tYXJ5IE1pbnV0ZXMgaW4gMSBtb250aC5cbiAqL1xuZXhwb3J0IGNvbnN0IG1pbnV0ZXNJbk1vbnRoID0gNDMyMDA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtaW51dGVzSW5EYXlcbiAqIEBzdW1tYXJ5IE1pbnV0ZXMgaW4gMSBkYXkuXG4gKi9cbmV4cG9ydCBjb25zdCBtaW51dGVzSW5EYXkgPSAxNDQwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbWludXRlc0luSG91clxuICogQHN1bW1hcnkgTWludXRlcyBpbiAxIGhvdXIuXG4gKi9cbmV4cG9ydCBjb25zdCBtaW51dGVzSW5Ib3VyID0gNjA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBtb250aHNJblF1YXJ0ZXJcbiAqIEBzdW1tYXJ5IE1vbnRocyBpbiAxIHF1YXJ0ZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBtb250aHNJblF1YXJ0ZXIgPSAzO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgbW9udGhzSW5ZZWFyXG4gKiBAc3VtbWFyeSBNb250aHMgaW4gMSB5ZWFyLlxuICovXG5leHBvcnQgY29uc3QgbW9udGhzSW5ZZWFyID0gMTI7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBxdWFydGVyc0luWWVhclxuICogQHN1bW1hcnkgUXVhcnRlcnMgaW4gMSB5ZWFyXG4gKi9cbmV4cG9ydCBjb25zdCBxdWFydGVyc0luWWVhciA9IDQ7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBzZWNvbmRzSW5Ib3VyXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgaG91ci5cbiAqL1xuZXhwb3J0IGNvbnN0IHNlY29uZHNJbkhvdXIgPSAzNjAwO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgc2Vjb25kc0luTWludXRlXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgbWludXRlLlxuICovXG5leHBvcnQgY29uc3Qgc2Vjb25kc0luTWludXRlID0gNjA7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBzZWNvbmRzSW5EYXlcbiAqIEBzdW1tYXJ5IFNlY29uZHMgaW4gMSBkYXkuXG4gKi9cbmV4cG9ydCBjb25zdCBzZWNvbmRzSW5EYXkgPSBzZWNvbmRzSW5Ib3VyICogMjQ7XG5cbi8qKlxuICogQGNvbnN0YW50XG4gKiBAbmFtZSBzZWNvbmRzSW5XZWVrXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgd2Vlay5cbiAqL1xuZXhwb3J0IGNvbnN0IHNlY29uZHNJbldlZWsgPSBzZWNvbmRzSW5EYXkgKiA3O1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgc2Vjb25kc0luWWVhclxuICogQHN1bW1hcnkgU2Vjb25kcyBpbiAxIHllYXIuXG4gKi9cbmV4cG9ydCBjb25zdCBzZWNvbmRzSW5ZZWFyID0gc2Vjb25kc0luRGF5ICogZGF5c0luWWVhcjtcblxuLyoqXG4gKiBAY29uc3RhbnRcbiAqIEBuYW1lIHNlY29uZHNJbk1vbnRoXG4gKiBAc3VtbWFyeSBTZWNvbmRzIGluIDEgbW9udGhcbiAqL1xuZXhwb3J0IGNvbnN0IHNlY29uZHNJbk1vbnRoID0gc2Vjb25kc0luWWVhciAvIDEyO1xuXG4vKipcbiAqIEBjb25zdGFudFxuICogQG5hbWUgc2Vjb25kc0luUXVhcnRlclxuICogQHN1bW1hcnkgU2Vjb25kcyBpbiAxIHF1YXJ0ZXIuXG4gKi9cbmV4cG9ydCBjb25zdCBzZWNvbmRzSW5RdWFydGVyID0gc2Vjb25kc0luTW9udGggKiAzO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdDTyxTQUFTLE9BQU8sVUFBVTtBQUMvQixRQUFNLFNBQVMsT0FBTyxVQUFVLFNBQVMsS0FBSyxRQUFRO0FBR3RELE1BQ0Usb0JBQW9CLFFBQ25CLE9BQU8sYUFBYSxZQUFZLFdBQVcsaUJBQzVDO0FBRUEsV0FBTyxJQUFJLFNBQVMsWUFBWSxDQUFDLFFBQVE7QUFBQSxFQUM3QyxXQUNJLE9BQU8sYUFBYSxZQUNwQixXQUFXLHFCQUNYLE9BQU8sYUFBYSxZQUNwQixXQUFXLG1CQUNYO0FBRUEsV0FBTyxJQUFJLEtBQUssUUFBUTtBQUFBLEVBQzVCLE9BQVM7QUFFTCxXQUFPLG9CQUFJLEtBQUssR0FBRztBQUFBLEVBQ3BCO0FBQ0g7QUN4Qk8sU0FBUyxjQUFjLE1BQU0sT0FBTztBQUN6QyxNQUFJLGdCQUFnQixNQUFNO0FBQ3hCLFdBQU8sSUFBSSxLQUFLLFlBQVksS0FBSztBQUFBLEVBQ3JDLE9BQVM7QUFDTCxXQUFPLElBQUksS0FBSyxLQUFLO0FBQUEsRUFDdEI7QUFDSDtBQ3dDWSxNQUFDLHFCQUFxQjtBQU90QixNQUFDLG9CQUFvQjtBQU9yQixNQUFDLHVCQUF1QjtBQU94QixNQUFDLHFCQUFxQjsiLCJ4X2dvb2dsZV9pZ25vcmVMaXN0IjpbMCwxLDJdfQ==
|