@adobe/helix-rum-enhancer 2.34.3 → 2.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.releaserc.cjs CHANGED
@@ -6,9 +6,6 @@ module.exports = {
6
6
  "changelogFile": "CHANGELOG.md",
7
7
  }],
8
8
  "@semantic-release/npm",
9
- ["@semantic-release/exec", {
10
- "publishCmd": "./tagger.sh ${nextRelease.version} src/index.js src/plugins/cwv.js src/plugins/form.js src/plugins/martech.js src/plugins/onetrust.js src/plugins/video.js --push"
11
- }],
12
9
  ["@semantic-release/git", {
13
10
  "assets": ["package.json", "package-lock.json", "CHANGELOG.md"],
14
11
  "message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
@@ -22,9 +19,16 @@ module.exports = {
22
19
  {
23
20
  "path": "src/index.md5",
24
21
  "label": "RUM Enhancer Hash"
22
+ },
23
+ {
24
+ "path": "src/index.sha384",
25
+ "label": "RUM Enhancer SRI Hash"
25
26
  }
26
27
  ]
27
28
  }],
29
+ ["@semantic-release/exec", {
30
+ "publishCmd": "./tagger.sh ${nextRelease.version} src/index.js src/plugins/cwv.js src/plugins/form.js src/plugins/martech.js src/plugins/onetrust.js src/plugins/video.js --push"
31
+ }],
28
32
  ["semantic-release-slack-bot", {
29
33
  notifyOnSuccess: true,
30
34
  notifyOnFail: true,
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # [2.35.0](https://github.com/adobe/helix-rum-enhancer/compare/v2.34.3...v2.35.0) (2025-05-21)
2
+
3
+
4
+ ### Features
5
+
6
+ * update to @trieloff/rollup-plugin-checksum v1.1.0 with SHA-384 SRI hash support ([fad9251](https://github.com/adobe/helix-rum-enhancer/commit/fad9251b268951da05391381a4046e5e184ec43d))
7
+
1
8
  ## [2.34.3](https://github.com/adobe/helix-rum-enhancer/compare/v2.34.2...v2.34.3) (2025-05-12)
2
9
 
3
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adobe/helix-rum-enhancer",
3
- "version": "2.34.3",
3
+ "version": "2.35.0",
4
4
  "description": "Helix RUM Enhancer",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -55,14 +55,14 @@
55
55
  "jsdoc-to-markdown": "9.1.1",
56
56
  "junit-report-builder": "5.1.1",
57
57
  "lint-staged": "16.0.0",
58
- "mocha": "11.2.2",
58
+ "mocha": "11.4.0",
59
59
  "mocha-multi-reporters": "1.5.1",
60
- "rollup": "4.40.2",
61
- "rollup-plugin-checksum": "1.0.1",
60
+ "rollup": "4.41.0",
61
+ "@adobe/rollup-plugin-checksum": "1.2.0",
62
62
  "rollup-plugin-eslint-bundle": "9.0.0",
63
- "semantic-release": "24.2.3",
63
+ "semantic-release": "24.2.4",
64
64
  "semantic-release-slack-bot": "^4.0.2",
65
- "web-vitals": "5.0.0"
65
+ "web-vitals": "5.0.1"
66
66
  },
67
67
  "lint-staged": {
68
68
  "*.js": "eslint",
package/rollup.config.js CHANGED
@@ -12,7 +12,9 @@
12
12
 
13
13
  // eslint-disable-next-line import/no-extraneous-dependencies
14
14
  import { babel } from '@rollup/plugin-babel';
15
- import pkg from 'rollup-plugin-checksum';
15
+ import pkg from '@adobe/rollup-plugin-checksum';
16
+ import fs from 'fs';
17
+ import path from 'path';
16
18
 
17
19
  const checksum = pkg.default;
18
20
 
@@ -28,33 +30,73 @@ const banner = `/*
28
30
  * governing permissions and limitations under the License.
29
31
  */`;
30
32
 
31
- const bundles = [
32
- // Core library
33
- {
34
- source: 'modules/index.js',
35
- outputFile: 'src/index',
33
+ // Get list of plugins from the file system
34
+ const pluginFiles = fs.readdirSync('plugins').filter((file) => file.endsWith('.js'));
35
+ const plugins = pluginFiles.map((file) => path.basename(file, '.js'));
36
+
37
+ // Core library - index.js with sourcemap
38
+ const indexMapConfig = {
39
+ input: 'modules/index.js',
40
+ output: {
41
+ file: 'src/index.map.js',
42
+ format: 'iife',
43
+ sourcemap: 'inline',
44
+ exports: 'auto',
45
+ banner,
36
46
  },
37
- // Library plugins
38
- ...['cwv', 'form', 'martech', 'onetrust', 'video'].map((plugin) => ({
39
- source: `plugins/${plugin}.js`,
40
- outputFile: `src/plugins/${plugin}`,
41
- format: 'es',
42
- })),
43
- ];
47
+ plugins: [
48
+ babel({
49
+ babelHelpers: 'bundled',
50
+ comments: false,
51
+ }),
52
+ checksum({
53
+ filename: 'index.md5',
54
+ includeAssets: false,
55
+ }),
56
+ ],
57
+ };
44
58
 
45
- export default [...bundles.map(({ outputFile, source, format }) => ({
46
- input: source,
59
+ // Core library - index.js without sourcemap, with MD5 and SRI
60
+ const indexConfig = {
61
+ input: 'modules/index.js',
62
+ output: {
63
+ file: 'src/index.js',
64
+ format: 'iife',
65
+ sourcemap: false,
66
+ exports: 'auto',
67
+ banner,
68
+ },
69
+ plugins: [
70
+ babel({
71
+ babelHelpers: 'bundled',
72
+ comments: false,
73
+ }),
74
+ checksum({
75
+ filename: 'index.md5',
76
+ includeAssets: false,
77
+ }),
78
+ checksum({
79
+ filename: 'index',
80
+ includeAssets: false,
81
+ sri: 'sha384',
82
+ }),
83
+ ],
84
+ };
85
+
86
+ // Plugins
87
+ const pluginBundles = plugins.map((plugin) => ({
88
+ input: `plugins/${plugin}.js`,
47
89
  output: [
48
90
  {
49
- file: `${outputFile}.map.js`,
50
- format: format || 'iife',
91
+ file: `src/plugins/${plugin}.map.js`,
92
+ format: 'es',
51
93
  sourcemap: 'inline',
52
94
  exports: 'auto',
53
95
  banner,
54
96
  },
55
97
  {
56
- file: `${outputFile}.js`,
57
- format: format || 'iife',
98
+ file: `src/plugins/${plugin}.js`,
99
+ format: 'es',
58
100
  sourcemap: false,
59
101
  exports: 'auto',
60
102
  banner,
@@ -66,8 +108,14 @@ export default [...bundles.map(({ outputFile, source, format }) => ({
66
108
  comments: false,
67
109
  }),
68
110
  checksum({
69
- filename: `${outputFile.split('/').pop()}.md5`,
111
+ filename: `${plugin}.md5`,
70
112
  includeAssets: false,
71
113
  }),
72
114
  ],
73
- }))];
115
+ }));
116
+
117
+ export default [
118
+ indexMapConfig,
119
+ indexConfig,
120
+ ...pluginBundles,
121
+ ];
package/src/index.sri ADDED
@@ -0,0 +1 @@
1
+ sha384-nKGw+Uv2w5Lp892LtN6M6AKzK1dpb/b43UakX7zlZMsnJNu7wF9GJJ9rK193kJtd
@@ -98,8 +98,9 @@
98
98
  },
99
99
  y = () => {
100
100
  if (l < 0) {
101
- const e = document.prerendering ? void 0 : globalThis.performance.getEntriesByType("visibility-state").filter(e => "hidden" === e.name)[0]?.startTime;
102
- l = e ?? m(), v(), n(() => {
101
+ const e = r(),
102
+ t = document.prerendering ? void 0 : globalThis.performance.getEntriesByType("visibility-state").filter(t => "hidden" === t.name && t.startTime > e)[0]?.startTime;
103
+ l = t ?? m(), v(), n(() => {
103
104
  setTimeout(() => {
104
105
  l = m(), v();
105
106
  });
@@ -98,8 +98,9 @@
98
98
  },
99
99
  y = () => {
100
100
  if (l < 0) {
101
- const e = document.prerendering ? void 0 : globalThis.performance.getEntriesByType("visibility-state").filter(e => "hidden" === e.name)[0]?.startTime;
102
- l = e ?? m(), v(), n(() => {
101
+ const e = r(),
102
+ t = document.prerendering ? void 0 : globalThis.performance.getEntriesByType("visibility-state").filter(t => "hidden" === t.name && t.startTime > e)[0]?.startTime;
103
+ l = t ?? m(), v(), n(() => {
103
104
  setTimeout(() => {
104
105
  l = m(), v();
105
106
  });
@@ -323,4 +324,4 @@ function addCWVTracking({
323
324
  }
324
325
 
325
326
  export { addCWVTracking as default };
326
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3d2Lm1hcC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vbm9kZV9tb2R1bGVzL3dlYi12aXRhbHMvZGlzdC93ZWItdml0YWxzLmlpZmUuanMiLCIuLi8uLi9wbHVnaW5zL2N3di5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgd2ViVml0YWxzPWZ1bmN0aW9uKGUpe1widXNlIHN0cmljdFwiO2xldCB0PS0xO2NvbnN0IG49ZT0+e2FkZEV2ZW50TGlzdGVuZXIoXCJwYWdlc2hvd1wiLChuPT57bi5wZXJzaXN0ZWQmJih0PW4udGltZVN0YW1wLGUobikpfSksITApfSxpPShlLHQsbixpKT0+e2xldCBvLHM7cmV0dXJuIHI9Pnt0LnZhbHVlPj0wJiYocnx8aSkmJihzPXQudmFsdWUtKG8/PzApLChzfHx2b2lkIDA9PT1vKSYmKG89dC52YWx1ZSx0LmRlbHRhPXMsdC5yYXRpbmc9KChlLHQpPT5lPnRbMV0/XCJwb29yXCI6ZT50WzBdP1wibmVlZHMtaW1wcm92ZW1lbnRcIjpcImdvb2RcIikodC52YWx1ZSxuKSxlKHQpKSl9fSxvPWU9PntyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT5lKCkpKSkpfSxzPSgpPT57Y29uc3QgZT1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKFwibmF2aWdhdGlvblwiKVswXTtpZihlJiZlLnJlc3BvbnNlU3RhcnQ+MCYmZS5yZXNwb25zZVN0YXJ0PHBlcmZvcm1hbmNlLm5vdygpKXJldHVybiBlfSxyPSgpPT57Y29uc3QgZT1zKCk7cmV0dXJuIGU/LmFjdGl2YXRpb25TdGFydD8/MH0sYz0oZSxuPS0xKT0+e2NvbnN0IGk9cygpO2xldCBvPVwibmF2aWdhdGVcIjt0Pj0wP289XCJiYWNrLWZvcndhcmQtY2FjaGVcIjppJiYoZG9jdW1lbnQucHJlcmVuZGVyaW5nfHxyKCk+MD9vPVwicHJlcmVuZGVyXCI6ZG9jdW1lbnQud2FzRGlzY2FyZGVkP289XCJyZXN0b3JlXCI6aS50eXBlJiYobz1pLnR5cGUucmVwbGFjZSgvXy9nLFwiLVwiKSkpO3JldHVybntuYW1lOmUsdmFsdWU6bixyYXRpbmc6XCJnb29kXCIsZGVsdGE6MCxlbnRyaWVzOltdLGlkOmB2NS0ke0RhdGUubm93KCl9LSR7TWF0aC5mbG9vcig4OTk5OTk5OTk5OTk5Kk1hdGgucmFuZG9tKCkpKzFlMTJ9YCxuYXZpZ2F0aW9uVHlwZTpvfX0sYT1uZXcgV2Vha01hcDtmdW5jdGlvbiBkKGUsdCl7cmV0dXJuIGEuZ2V0KGUpfHxhLnNldChlLG5ldyB0KSxhLmdldChlKX1jbGFzcyBoe3Q7aT0wO289W107aChlKXtpZihlLmhhZFJlY2VudElucHV0KXJldHVybjtjb25zdCB0PXRoaXMub1swXSxuPXRoaXMuby5hdCgtMSk7dGhpcy5pJiZ0JiZuJiZlLnN0YXJ0VGltZS1uLnN0YXJ0VGltZTwxZTMmJmUuc3RhcnRUaW1lLXQuc3RhcnRUaW1lPDVlMz8odGhpcy5pKz1lLnZhbHVlLHRoaXMuby5wdXNoKGUpKToodGhpcy5pPWUudmFsdWUsdGhpcy5vPVtlXSksdGhpcy50Py4oZSl9fWNvbnN0IGY9KGUsdCxuPXt9KT0+e3RyeXtpZihQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMuaW5jbHVkZXMoZSkpe2NvbnN0IGk9bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKGU9PntQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+e3QoZS5nZXRFbnRyaWVzKCkpfSkpfSkpO3JldHVybiBpLm9ic2VydmUoe3R5cGU6ZSxidWZmZXJlZDohMCwuLi5ufSksaX19Y2F0Y2h7fX0sdT1lPT57bGV0IHQ9ITE7cmV0dXJuKCk9Pnt0fHwoZSgpLHQ9ITApfX07bGV0IGw9LTE7Y29uc3QgbT0oKT0+XCJoaWRkZW5cIiE9PWRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZXx8ZG9jdW1lbnQucHJlcmVuZGVyaW5nPzEvMDowLGc9ZT0+e1wiaGlkZGVuXCI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJmw+LTEmJihsPVwidmlzaWJpbGl0eWNoYW5nZVwiPT09ZS50eXBlP2UudGltZVN0YW1wOjAscCgpKX0sdj0oKT0+e2FkZEV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsZywhMCksYWRkRXZlbnRMaXN0ZW5lcihcInByZXJlbmRlcmluZ2NoYW5nZVwiLGcsITApfSxwPSgpPT57cmVtb3ZlRXZlbnRMaXN0ZW5lcihcInZpc2liaWxpdHljaGFuZ2VcIixnLCEwKSxyZW1vdmVFdmVudExpc3RlbmVyKFwicHJlcmVuZGVyaW5nY2hhbmdlXCIsZywhMCl9LHk9KCk9PntpZihsPDApe2NvbnN0IGU9ZG9jdW1lbnQucHJlcmVuZGVyaW5nP3ZvaWQgMDpnbG9iYWxUaGlzLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoXCJ2aXNpYmlsaXR5LXN0YXRlXCIpLmZpbHRlcigoZT0+XCJoaWRkZW5cIj09PWUubmFtZSkpWzBdPy5zdGFydFRpbWU7bD1lPz9tKCksdigpLG4oKCgpPT57c2V0VGltZW91dCgoKCk9PntsPW0oKSx2KCl9KSl9KSl9cmV0dXJue2dldCBmaXJzdEhpZGRlblRpbWUoKXtyZXR1cm4gbH19fSxiPWU9Pntkb2N1bWVudC5wcmVyZW5kZXJpbmc/YWRkRXZlbnRMaXN0ZW5lcihcInByZXJlbmRlcmluZ2NoYW5nZVwiLCgoKT0+ZSgpKSwhMCk6ZSgpfSxQPVsxODAwLDNlM10sVD0oZSx0PXt9KT0+e2IoKCgpPT57Y29uc3Qgcz15KCk7bGV0IGEsZD1jKFwiRkNQXCIpO2NvbnN0IGg9ZihcInBhaW50XCIsKGU9Pntmb3IoY29uc3QgdCBvZiBlKVwiZmlyc3QtY29udGVudGZ1bC1wYWludFwiPT09dC5uYW1lJiYoaC5kaXNjb25uZWN0KCksdC5zdGFydFRpbWU8cy5maXJzdEhpZGRlblRpbWUmJihkLnZhbHVlPU1hdGgubWF4KHQuc3RhcnRUaW1lLXIoKSwwKSxkLmVudHJpZXMucHVzaCh0KSxhKCEwKSkpfSkpO2gmJihhPWkoZSxkLFAsdC5yZXBvcnRBbGxDaGFuZ2VzKSxuKChuPT57ZD1jKFwiRkNQXCIpLGE9aShlLGQsUCx0LnJlcG9ydEFsbENoYW5nZXMpLG8oKCgpPT57ZC52YWx1ZT1wZXJmb3JtYW5jZS5ub3coKS1uLnRpbWVTdGFtcCxhKCEwKX0pKX0pKSl9KSl9LEU9Wy4xLC4yNV07bGV0IF89MCxMPTEvMCxNPTA7Y29uc3Qgdz1lPT57Zm9yKGNvbnN0IHQgb2YgZSl0LmludGVyYWN0aW9uSWQmJihMPU1hdGgubWluKEwsdC5pbnRlcmFjdGlvbklkKSxNPU1hdGgubWF4KE0sdC5pbnRlcmFjdGlvbklkKSxfPU0/KE0tTCkvNysxOjApfTtsZXQgQztjb25zdCBJPSgpPT5DP186cGVyZm9ybWFuY2UuaW50ZXJhY3Rpb25Db3VudD8/MCxGPSgpPT57XCJpbnRlcmFjdGlvbkNvdW50XCJpbiBwZXJmb3JtYW5jZXx8Q3x8KEM9ZihcImV2ZW50XCIsdyx7dHlwZTpcImV2ZW50XCIsYnVmZmVyZWQ6ITAsZHVyYXRpb25UaHJlc2hvbGQ6MH0pKX07bGV0IGs9MDtjbGFzcyBBe3U9W107bD1uZXcgTWFwO207djtwKCl7az1JKCksdGhpcy51Lmxlbmd0aD0wLHRoaXMubC5jbGVhcigpfVAoKXtjb25zdCBlPU1hdGgubWluKHRoaXMudS5sZW5ndGgtMSxNYXRoLmZsb29yKChJKCktaykvNTApKTtyZXR1cm4gdGhpcy51W2VdfWgoZSl7aWYodGhpcy5tPy4oZSksIWUuaW50ZXJhY3Rpb25JZCYmXCJmaXJzdC1pbnB1dFwiIT09ZS5lbnRyeVR5cGUpcmV0dXJuO2NvbnN0IHQ9dGhpcy51LmF0KC0xKTtsZXQgbj10aGlzLmwuZ2V0KGUuaW50ZXJhY3Rpb25JZCk7aWYobnx8dGhpcy51Lmxlbmd0aDwxMHx8ZS5kdXJhdGlvbj50LlQpe2lmKG4/ZS5kdXJhdGlvbj5uLlQ/KG4uZW50cmllcz1bZV0sbi5UPWUuZHVyYXRpb24pOmUuZHVyYXRpb249PT1uLlQmJmUuc3RhcnRUaW1lPT09bi5lbnRyaWVzWzBdLnN0YXJ0VGltZSYmbi5lbnRyaWVzLnB1c2goZSk6KG49e2lkOmUuaW50ZXJhY3Rpb25JZCxlbnRyaWVzOltlXSxUOmUuZHVyYXRpb259LHRoaXMubC5zZXQobi5pZCxuKSx0aGlzLnUucHVzaChuKSksdGhpcy51LnNvcnQoKChlLHQpPT50LlQtZS5UKSksdGhpcy51Lmxlbmd0aD4xMCl7Y29uc3QgZT10aGlzLnUuc3BsaWNlKDEwKTtmb3IoY29uc3QgdCBvZiBlKXRoaXMubC5kZWxldGUodC5pZCl9dGhpcy52Py4obil9fX1jb25zdCBCPWU9Pntjb25zdCB0PWdsb2JhbFRoaXMucmVxdWVzdElkbGVDYWxsYmFja3x8c2V0VGltZW91dDtcImhpZGRlblwiPT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlP2UoKToodChlPXUoZSkpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsZSx7b25jZTohMH0pKX0sTj1bMjAwLDUwMF07Y2xhc3MgU3ttO2goZSl7dGhpcy5tPy4oZSl9fWNvbnN0IHE9WzI1MDAsNGUzXSxPPVs4MDAsMTgwMF0sVj1lPT57ZG9jdW1lbnQucHJlcmVuZGVyaW5nP2IoKCgpPT5WKGUpKSk6XCJjb21wbGV0ZVwiIT09ZG9jdW1lbnQucmVhZHlTdGF0ZT9hZGRFdmVudExpc3RlbmVyKFwibG9hZFwiLCgoKT0+VihlKSksITApOnNldFRpbWVvdXQoZSl9O3JldHVybiBlLkNMU1RocmVzaG9sZHM9RSxlLkZDUFRocmVzaG9sZHM9UCxlLklOUFRocmVzaG9sZHM9TixlLkxDUFRocmVzaG9sZHM9cSxlLlRURkJUaHJlc2hvbGRzPU8sZS5vbkNMUz0oZSx0PXt9KT0+e1QodSgoKCk9PntsZXQgcyxyPWMoXCJDTFNcIiwwKTtjb25zdCBhPWQodCxoKSx1PWU9Pntmb3IoY29uc3QgdCBvZiBlKWEuaCh0KTthLmk+ci52YWx1ZSYmKHIudmFsdWU9YS5pLHIuZW50cmllcz1hLm8scygpKX0sbD1mKFwibGF5b3V0LXNoaWZ0XCIsdSk7bCYmKHM9aShlLHIsRSx0LnJlcG9ydEFsbENoYW5nZXMpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsKCgpPT57XCJoaWRkZW5cIj09PWRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSYmKHUobC50YWtlUmVjb3JkcygpKSxzKCEwKSl9KSksbigoKCk9PnthLmk9MCxyPWMoXCJDTFNcIiwwKSxzPWkoZSxyLEUsdC5yZXBvcnRBbGxDaGFuZ2VzKSxvKCgoKT0+cygpKSl9KSksc2V0VGltZW91dChzKSl9KSkpfSxlLm9uRkNQPVQsZS5vbklOUD0oZSx0PXt9KT0+e2dsb2JhbFRoaXMuUGVyZm9ybWFuY2VFdmVudFRpbWluZyYmXCJpbnRlcmFjdGlvbklkXCJpbiBQZXJmb3JtYW5jZUV2ZW50VGltaW5nLnByb3RvdHlwZSYmYigoKCk9PntGKCk7bGV0IG8scz1jKFwiSU5QXCIpO2NvbnN0IHI9ZCh0LEEpLGE9ZT0+e0IoKCgpPT57Zm9yKGNvbnN0IHQgb2YgZSlyLmgodCk7Y29uc3QgdD1yLlAoKTt0JiZ0LlQhPT1zLnZhbHVlJiYocy52YWx1ZT10LlQscy5lbnRyaWVzPXQuZW50cmllcyxvKCkpfSkpfSxoPWYoXCJldmVudFwiLGEse2R1cmF0aW9uVGhyZXNob2xkOnQuZHVyYXRpb25UaHJlc2hvbGQ/PzQwfSk7bz1pKGUscyxOLHQucmVwb3J0QWxsQ2hhbmdlcyksaCYmKGgub2JzZXJ2ZSh7dHlwZTpcImZpcnN0LWlucHV0XCIsYnVmZmVyZWQ6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidmlzaWJpbGl0eWNoYW5nZVwiLCgoKT0+e1wiaGlkZGVuXCI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJihhKGgudGFrZVJlY29yZHMoKSksbyghMCkpfSkpLG4oKCgpPT57ci5wKCkscz1jKFwiSU5QXCIpLG89aShlLHMsTix0LnJlcG9ydEFsbENoYW5nZXMpfSkpKX0pKX0sZS5vbkxDUD0oZSx0PXt9KT0+e2IoKCgpPT57Y29uc3Qgcz15KCk7bGV0IGEsaD1jKFwiTENQXCIpO2NvbnN0IGw9ZCh0LFMpLG09ZT0+e3QucmVwb3J0QWxsQ2hhbmdlc3x8KGU9ZS5zbGljZSgtMSkpO2Zvcihjb25zdCB0IG9mIGUpbC5oKHQpLHQuc3RhcnRUaW1lPHMuZmlyc3RIaWRkZW5UaW1lJiYoaC52YWx1ZT1NYXRoLm1heCh0LnN0YXJ0VGltZS1yKCksMCksaC5lbnRyaWVzPVt0XSxhKCkpfSxnPWYoXCJsYXJnZXN0LWNvbnRlbnRmdWwtcGFpbnRcIixtKTtpZihnKXthPWkoZSxoLHEsdC5yZXBvcnRBbGxDaGFuZ2VzKTtjb25zdCBzPXUoKCgpPT57bShnLnRha2VSZWNvcmRzKCkpLGcuZGlzY29ubmVjdCgpLGEoITApfSkpO2Zvcihjb25zdCBlIG9mW1wia2V5ZG93blwiLFwiY2xpY2tcIixcInZpc2liaWxpdHljaGFuZ2VcIl0pYWRkRXZlbnRMaXN0ZW5lcihlLCgoKT0+QihzKSkse2NhcHR1cmU6ITAsb25jZTohMH0pO24oKG49PntoPWMoXCJMQ1BcIiksYT1pKGUsaCxxLHQucmVwb3J0QWxsQ2hhbmdlcyksbygoKCk9PntoLnZhbHVlPXBlcmZvcm1hbmNlLm5vdygpLW4udGltZVN0YW1wLGEoITApfSkpfSkpfX0pKX0sZS5vblRURkI9KGUsdD17fSk9PntsZXQgbz1jKFwiVFRGQlwiKSxhPWkoZSxvLE8sdC5yZXBvcnRBbGxDaGFuZ2VzKTtWKCgoKT0+e2NvbnN0IGQ9cygpO2QmJihvLnZhbHVlPU1hdGgubWF4KGQucmVzcG9uc2VTdGFydC1yKCksMCksby5lbnRyaWVzPVtkXSxhKCEwKSxuKCgoKT0+e289YyhcIlRURkJcIiwwKSxhPWkoZSxvLE8sdC5yZXBvcnRBbGxDaGFuZ2VzKSxhKCEwKX0pKSl9KSl9LGV9KHt9KTtcbiIsIi8qXG4gKiBDb3B5cmlnaHQgMjAyNCBBZG9iZS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIFRoaXMgZmlsZSBpcyBsaWNlbnNlZCB0byB5b3UgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5XG4gKiBvZiB0aGUgTGljZW5zZSBhdCBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyXG4gKiB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBSRVBSRVNFTlRBVElPTlNcbiAqIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZVxuICogZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tZXh0cmFuZW91cy1kZXBlbmRlbmNpZXMsIGltcG9ydC9uby1yZWxhdGl2ZS1wYWNrYWdlcywgbm8tdW51c2VkLXZhcnNcbmltcG9ydCAqIGFzIHdlYlZpdGFscyBmcm9tICcuLi9ub2RlX21vZHVsZXMvd2ViLXZpdGFscy9kaXN0L3dlYi12aXRhbHMuaWlmZS5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFkZENXVlRyYWNraW5nKHtcbiAgc2FtcGxlUlVNLCBzb3VyY2VTZWxlY3RvciwgdGFyZ2V0U2VsZWN0b3IsIGZmbGFncyxcbn0pIHtcbiAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGN3dlNjcmlwdCA9IG5ldyBVUkwoJy5ydW0vd2ViLXZpdGFscy9kaXN0L3dlYi12aXRhbHMuaWlmZS5qcycsIHNhbXBsZVJVTS5iYXNlVVJMKS5ocmVmO1xuICAgICAgLyogYzggaWdub3JlIG5leHQgMyAqL1xuICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYHNjcmlwdFtzcmM9XCIke2N3dlNjcmlwdH1cIl1gKSkge1xuICAgICAgICAvLyB3ZWIgdml0YWxzIHNjcmlwdCBoYXMgYmVlbiBsb2FkZWQgYWxyZWFkeVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdC5zcmMgPSBjd3ZTY3JpcHQ7XG4gICAgICBzY3JpcHQub25sb2FkID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBzdG9yZUNXViA9IChtZWFzdXJlbWVudCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSB7IGN3djoge30gfTtcbiAgICAgICAgICBkYXRhLmN3dlttZWFzdXJlbWVudC5uYW1lXSA9IG1lYXN1cmVtZW50LnZhbHVlO1xuICAgICAgICAgIGlmIChtZWFzdXJlbWVudC5uYW1lID09PSAnTENQJyAmJiBtZWFzdXJlbWVudC5lbnRyaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IHsgZWxlbWVudCB9ID0gbWVhc3VyZW1lbnQuZW50cmllcy5wb3AoKTtcbiAgICAgICAgICAgIGRhdGEudGFyZ2V0ID0gdGFyZ2V0U2VsZWN0b3IoZWxlbWVudCk7XG4gICAgICAgICAgICBkYXRhLnNvdXJjZSA9IHNvdXJjZVNlbGVjdG9yKGVsZW1lbnQpIHx8IChlbGVtZW50ICYmIGVsZW1lbnQub3V0ZXJIVE1MLnNsaWNlKDAsIDMwKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNhbXBsZVJVTSgnY3d2JywgZGF0YSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgaXNFYWdlciA9IChtZXRyaWMpID0+IFsnQ0xTJywgJ0xDUCddLmluY2x1ZGVzKG1ldHJpYyk7XG5cbiAgICAgICAgLy8gV2hlbiBsb2FkaW5nIGB3ZWItdml0YWxzYCB1c2luZyBhIGNsYXNzaWMgc2NyaXB0LCBhbGwgdGhlIHB1YmxpY1xuICAgICAgICAvLyBtZXRob2RzIGNhbiBiZSBmb3VuZCBvbiB0aGUgYHdlYlZpdGFsc2AgZ2xvYmFsIG5hbWVzcGFjZS5cbiAgICAgICAgWydJTlAnLCAnVFRGQicsICdDTFMnLCAnTENQJ10uZm9yRWFjaCgobWV0cmljKSA9PiB7XG4gICAgICAgICAgY29uc3QgbWV0cmljRm4gPSB3aW5kb3cud2ViVml0YWxzW2BvbiR7bWV0cmljfWBdO1xuICAgICAgICAgIGlmICh0eXBlb2YgbWV0cmljRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGxldCBvcHRzID0ge307XG4gICAgICAgICAgICBmZmxhZ3MuZW5hYmxlZCgnZWFnZXJjd3YnLCAoKSA9PiB7XG4gICAgICAgICAgICAgIG9wdHMgPSB7IHJlcG9ydEFsbENoYW5nZXM6IGlzRWFnZXIobWV0cmljKSB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBtZXRyaWNGbihzdG9yZUNXViwgb3B0cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHNjcmlwdCk7XG4gICAgICAvKiBjOCBpZ25vcmUgbmV4dCAzICovXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIHNvbWV0aGluZyB3ZW50IHdyb25nXG4gICAgfVxuICB9LCAyMDAwKTsgLy8gd2FpdCBmb3IgZGVsYXllZFxufVxuIl0sIm5hbWVzIjpbImUiLCJ0IiwibiIsImFkZEV2ZW50TGlzdGVuZXIiLCJwZXJzaXN0ZWQiLCJ0aW1lU3RhbXAiLCJpIiwibyIsInMiLCJyIiwidmFsdWUiLCJkZWx0YSIsInJhdGluZyIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsInBlcmZvcm1hbmNlIiwiZ2V0RW50cmllc0J5VHlwZSIsInJlc3BvbnNlU3RhcnQiLCJub3ciLCJhY3RpdmF0aW9uU3RhcnQiLCJjIiwiZG9jdW1lbnQiLCJwcmVyZW5kZXJpbmciLCJ3YXNEaXNjYXJkZWQiLCJ0eXBlIiwicmVwbGFjZSIsIm5hbWUiLCJlbnRyaWVzIiwiaWQiLCJEYXRlIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwibmF2aWdhdGlvblR5cGUiLCJhIiwiV2Vha01hcCIsImQiLCJnZXQiLCJzZXQiLCJoIiwiaGFkUmVjZW50SW5wdXQiLCJhdCIsInN0YXJ0VGltZSIsInB1c2giLCJmIiwiUGVyZm9ybWFuY2VPYnNlcnZlciIsInN1cHBvcnRlZEVudHJ5VHlwZXMiLCJpbmNsdWRlcyIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImdldEVudHJpZXMiLCJvYnNlcnZlIiwiYnVmZmVyZWQiLCJ1IiwibCIsIm0iLCJ2aXNpYmlsaXR5U3RhdGUiLCJnIiwicCIsInYiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwieSIsImdsb2JhbFRoaXMiLCJmaWx0ZXIiLCJzZXRUaW1lb3V0IiwiZmlyc3RIaWRkZW5UaW1lIiwiYiIsIlAiLCJUIiwiZGlzY29ubmVjdCIsIm1heCIsInJlcG9ydEFsbENoYW5nZXMiLCJFIiwiXyIsIkwiLCJNIiwidyIsImludGVyYWN0aW9uSWQiLCJtaW4iLCJDIiwiSSIsImludGVyYWN0aW9uQ291bnQiLCJGIiwiZHVyYXRpb25UaHJlc2hvbGQiLCJrIiwiQSIsIk1hcCIsImxlbmd0aCIsImNsZWFyIiwiZW50cnlUeXBlIiwiZHVyYXRpb24iLCJzb3J0Iiwic3BsaWNlIiwiZGVsZXRlIiwiQiIsInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJvbmNlIiwiTiIsIlMiLCJxIiwiTyIsIlYiLCJyZWFkeVN0YXRlIiwiQ0xTVGhyZXNob2xkcyIsIkZDUFRocmVzaG9sZHMiLCJJTlBUaHJlc2hvbGRzIiwiTENQVGhyZXNob2xkcyIsIlRURkJUaHJlc2hvbGRzIiwib25DTFMiLCJ0YWtlUmVjb3JkcyIsIm9uRkNQIiwib25JTlAiLCJQZXJmb3JtYW5jZUV2ZW50VGltaW5nIiwicHJvdG90eXBlIiwib25MQ1AiLCJzbGljZSIsImNhcHR1cmUiLCJvblRURkIiLCJhZGRDV1ZUcmFja2luZyIsInNhbXBsZVJVTSIsInNvdXJjZVNlbGVjdG9yIiwidGFyZ2V0U2VsZWN0b3IiLCJmZmxhZ3MiLCJjd3ZTY3JpcHQiLCJVUkwiLCJiYXNlVVJMIiwiaHJlZiIsInF1ZXJ5U2VsZWN0b3IiLCJzY3JpcHQiLCJjcmVhdGVFbGVtZW50Iiwic3JjIiwib25sb2FkIiwic3RvcmVDV1YiLCJtZWFzdXJlbWVudCIsImRhdGEiLCJjd3YiLCJlbGVtZW50IiwicG9wIiwidGFyZ2V0Iiwic291cmNlIiwib3V0ZXJIVE1MIiwiaXNFYWdlciIsIm1ldHJpYyIsImZvckVhY2giLCJtZXRyaWNGbiIsIndpbmRvdyIsIndlYlZpdGFscyIsIm9wdHMiLCJlbmFibGVkIiwiaGVhZCIsImFwcGVuZENoaWxkIiwiZXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0NBQWMsVUFBU0EsQ0FBQyxFQUFDOztFQUFjLElBQUlDLENBQUMsR0FBQyxFQUFFO0VBQUMsTUFBTUMsQ0FBQyxHQUFDRixDQUFDLElBQUU7QUFBQ0csTUFBQUEsZ0JBQWdCLENBQUMsVUFBVSxFQUFFRCxDQUFDLElBQUU7QUFBQ0EsUUFBQUEsQ0FBQyxDQUFDRSxTQUFTLEtBQUdILENBQUMsR0FBQ0MsQ0FBQyxDQUFDRyxTQUFTLEVBQUNMLENBQUMsQ0FBQ0UsQ0FBQyxDQUFDLENBQUM7T0FBQyxFQUFFLElBQUUsQ0FBQztLQUFDO0lBQUNJLENBQUMsR0FBQ0EsQ0FBQ04sQ0FBQyxFQUFDQyxDQUFDLEVBQUNDLENBQUMsRUFBQ0ksQ0FBQyxLQUFHO01BQUMsSUFBSUMsQ0FBQyxFQUFDQyxDQUFDO0FBQUMsTUFBQSxPQUFPQyxDQUFDLElBQUU7QUFBQ1IsUUFBQUEsQ0FBQyxDQUFDUyxLQUFLLElBQUUsQ0FBQyxLQUFHRCxDQUFDLElBQUVILENBQUMsQ0FBQyxLQUFHRSxDQUFDLEdBQUNQLENBQUMsQ0FBQ1MsS0FBSyxJQUFFSCxDQUFDLElBQUUsQ0FBQyxDQUFDLEVBQUMsQ0FBQ0MsQ0FBQyxJQUFFLE1BQU0sS0FBR0QsQ0FBQyxNQUFJ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QUcsQ0FBQ0YsV0FBVyxDQUFDNUcsSUFBSSxDQUFDLEdBQUc0RyxXQUFXLENBQUMzSCxLQUFLO0FBQzlDLFVBQUEsSUFBSTJILFdBQVcsQ0FBQzVHLElBQUksS0FBSyxLQUFLLElBQUk0RyxXQUFXLENBQUMzRyxPQUFPLENBQUM2RCxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2hFLE1BQU07QUFBRWlELGNBQUFBO0FBQVEsYUFBQyxHQUFHSCxXQUFXLENBQUMzRyxPQUFPLENBQUMrRyxHQUFHLEVBQUU7QUFDN0NILFlBQUFBLElBQUksQ0FBQ0ksTUFBTSxHQUFHakIsY0FBYyxDQUFDZSxPQUFPLENBQUM7QUFDckNGLFlBQUFBLElBQUksQ0FBQ0ssTUFBTSxHQUFHbkIsY0FBYyxDQUFDZ0IsT0FBTyxDQUFDLElBQUtBLE9BQU8sSUFBSUEsT0FBTyxDQUFDSSxTQUFTLENBQUN6QixLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBRTtBQUN0RjtBQUNBSSxVQUFBQSxTQUFTLENBQUMsS0FBSyxFQUFFZSxJQUFJLENBQUM7U0FDdkI7QUFFRCxRQUFBLE1BQU1PLE9BQU8sR0FBSUMsTUFBTSxJQUFLLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDaEcsUUFBUSxDQUFDZ0csTUFBTSxDQUFDO0FBSTNELFFBQUEsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQ0MsT0FBTyxDQUFFRCxNQUFNLElBQUs7VUFDaEQsTUFBTUUsUUFBUSxHQUFHQyxNQUFNLENBQUNDLFNBQVMsQ0FBQyxDQUFBLEVBQUEsRUFBS0osTUFBTSxDQUFBLENBQUUsQ0FBQztBQUNoRCxVQUFBLElBQUksT0FBT0UsUUFBUSxLQUFLLFVBQVUsRUFBRTtZQUNsQyxJQUFJRyxJQUFJLEdBQUcsRUFBRTtBQUNiekIsWUFBQUEsTUFBTSxDQUFDMEIsT0FBTyxDQUFDLFVBQVUsRUFBRSxNQUFNO0FBQy9CRCxjQUFBQSxJQUFJLEdBQUc7Z0JBQUU1RSxnQkFBZ0IsRUFBRXNFLE9BQU8sQ0FBQ0MsTUFBTTtlQUFHO0FBQzlDLGFBQUMsQ0FBQztBQUNGRSxZQUFBQSxRQUFRLENBQUNaLFFBQVEsRUFBRWUsSUFBSSxDQUFDO0FBQzFCO0FBQ0YsU0FBQyxDQUFDO09BQ0g7QUFDRC9ILE1BQUFBLFFBQVEsQ0FBQ2lJLElBQUksQ0FBQ0MsV0FBVyxDQUFDdEIsTUFBTSxDQUFDO0FBRW5DLEtBQUMsQ0FBQyxPQUFPdUIsS0FBSyxFQUFFO0dBR2pCLEVBQUUsSUFBSSxDQUFDO0FBQ1Y7Ozs7IiwieF9nb29nbGVfaWdub3JlTGlzdCI6WzBdfQ==
327
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3d2Lm1hcC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vbm9kZV9tb2R1bGVzL3dlYi12aXRhbHMvZGlzdC93ZWItdml0YWxzLmlpZmUuanMiLCIuLi8uLi9wbHVnaW5zL2N3di5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgd2ViVml0YWxzPWZ1bmN0aW9uKGUpe1widXNlIHN0cmljdFwiO2xldCB0PS0xO2NvbnN0IG49ZT0+e2FkZEV2ZW50TGlzdGVuZXIoXCJwYWdlc2hvd1wiLChuPT57bi5wZXJzaXN0ZWQmJih0PW4udGltZVN0YW1wLGUobikpfSksITApfSxpPShlLHQsbixpKT0+e2xldCBvLHM7cmV0dXJuIHI9Pnt0LnZhbHVlPj0wJiYocnx8aSkmJihzPXQudmFsdWUtKG8/PzApLChzfHx2b2lkIDA9PT1vKSYmKG89dC52YWx1ZSx0LmRlbHRhPXMsdC5yYXRpbmc9KChlLHQpPT5lPnRbMV0/XCJwb29yXCI6ZT50WzBdP1wibmVlZHMtaW1wcm92ZW1lbnRcIjpcImdvb2RcIikodC52YWx1ZSxuKSxlKHQpKSl9fSxvPWU9PntyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT5lKCkpKSkpfSxzPSgpPT57Y29uc3QgZT1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKFwibmF2aWdhdGlvblwiKVswXTtpZihlJiZlLnJlc3BvbnNlU3RhcnQ+MCYmZS5yZXNwb25zZVN0YXJ0PHBlcmZvcm1hbmNlLm5vdygpKXJldHVybiBlfSxyPSgpPT57Y29uc3QgZT1zKCk7cmV0dXJuIGU/LmFjdGl2YXRpb25TdGFydD8/MH0sYz0oZSxuPS0xKT0+e2NvbnN0IGk9cygpO2xldCBvPVwibmF2aWdhdGVcIjt0Pj0wP289XCJiYWNrLWZvcndhcmQtY2FjaGVcIjppJiYoZG9jdW1lbnQucHJlcmVuZGVyaW5nfHxyKCk+MD9vPVwicHJlcmVuZGVyXCI6ZG9jdW1lbnQud2FzRGlzY2FyZGVkP289XCJyZXN0b3JlXCI6aS50eXBlJiYobz1pLnR5cGUucmVwbGFjZSgvXy9nLFwiLVwiKSkpO3JldHVybntuYW1lOmUsdmFsdWU6bixyYXRpbmc6XCJnb29kXCIsZGVsdGE6MCxlbnRyaWVzOltdLGlkOmB2NS0ke0RhdGUubm93KCl9LSR7TWF0aC5mbG9vcig4OTk5OTk5OTk5OTk5Kk1hdGgucmFuZG9tKCkpKzFlMTJ9YCxuYXZpZ2F0aW9uVHlwZTpvfX0sYT1uZXcgV2Vha01hcDtmdW5jdGlvbiBkKGUsdCl7cmV0dXJuIGEuZ2V0KGUpfHxhLnNldChlLG5ldyB0KSxhLmdldChlKX1jbGFzcyBoe3Q7aT0wO289W107aChlKXtpZihlLmhhZFJlY2VudElucHV0KXJldHVybjtjb25zdCB0PXRoaXMub1swXSxuPXRoaXMuby5hdCgtMSk7dGhpcy5pJiZ0JiZuJiZlLnN0YXJ0VGltZS1uLnN0YXJ0VGltZTwxZTMmJmUuc3RhcnRUaW1lLXQuc3RhcnRUaW1lPDVlMz8odGhpcy5pKz1lLnZhbHVlLHRoaXMuby5wdXNoKGUpKToodGhpcy5pPWUudmFsdWUsdGhpcy5vPVtlXSksdGhpcy50Py4oZSl9fWNvbnN0IGY9KGUsdCxuPXt9KT0+e3RyeXtpZihQZXJmb3JtYW5jZU9ic2VydmVyLnN1cHBvcnRlZEVudHJ5VHlwZXMuaW5jbHVkZXMoZSkpe2NvbnN0IGk9bmV3IFBlcmZvcm1hbmNlT2JzZXJ2ZXIoKGU9PntQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+e3QoZS5nZXRFbnRyaWVzKCkpfSkpfSkpO3JldHVybiBpLm9ic2VydmUoe3R5cGU6ZSxidWZmZXJlZDohMCwuLi5ufSksaX19Y2F0Y2h7fX0sdT1lPT57bGV0IHQ9ITE7cmV0dXJuKCk9Pnt0fHwoZSgpLHQ9ITApfX07bGV0IGw9LTE7Y29uc3QgbT0oKT0+XCJoaWRkZW5cIiE9PWRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZXx8ZG9jdW1lbnQucHJlcmVuZGVyaW5nPzEvMDowLGc9ZT0+e1wiaGlkZGVuXCI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJmw+LTEmJihsPVwidmlzaWJpbGl0eWNoYW5nZVwiPT09ZS50eXBlP2UudGltZVN0YW1wOjAscCgpKX0sdj0oKT0+e2FkZEV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsZywhMCksYWRkRXZlbnRMaXN0ZW5lcihcInByZXJlbmRlcmluZ2NoYW5nZVwiLGcsITApfSxwPSgpPT57cmVtb3ZlRXZlbnRMaXN0ZW5lcihcInZpc2liaWxpdHljaGFuZ2VcIixnLCEwKSxyZW1vdmVFdmVudExpc3RlbmVyKFwicHJlcmVuZGVyaW5nY2hhbmdlXCIsZywhMCl9LHk9KCk9PntpZihsPDApe2NvbnN0IGU9cigpLHQ9ZG9jdW1lbnQucHJlcmVuZGVyaW5nP3ZvaWQgMDpnbG9iYWxUaGlzLnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoXCJ2aXNpYmlsaXR5LXN0YXRlXCIpLmZpbHRlcigodD0+XCJoaWRkZW5cIj09PXQubmFtZSYmdC5zdGFydFRpbWU+ZSkpWzBdPy5zdGFydFRpbWU7bD10Pz9tKCksdigpLG4oKCgpPT57c2V0VGltZW91dCgoKCk9PntsPW0oKSx2KCl9KSl9KSl9cmV0dXJue2dldCBmaXJzdEhpZGRlblRpbWUoKXtyZXR1cm4gbH19fSxiPWU9Pntkb2N1bWVudC5wcmVyZW5kZXJpbmc/YWRkRXZlbnRMaXN0ZW5lcihcInByZXJlbmRlcmluZ2NoYW5nZVwiLCgoKT0+ZSgpKSwhMCk6ZSgpfSxQPVsxODAwLDNlM10sVD0oZSx0PXt9KT0+e2IoKCgpPT57Y29uc3Qgcz15KCk7bGV0IGEsZD1jKFwiRkNQXCIpO2NvbnN0IGg9ZihcInBhaW50XCIsKGU9Pntmb3IoY29uc3QgdCBvZiBlKVwiZmlyc3QtY29udGVudGZ1bC1wYWludFwiPT09dC5uYW1lJiYoaC5kaXNjb25uZWN0KCksdC5zdGFydFRpbWU8cy5maXJzdEhpZGRlblRpbWUmJihkLnZhbHVlPU1hdGgubWF4KHQuc3RhcnRUaW1lLXIoKSwwKSxkLmVudHJpZXMucHVzaCh0KSxhKCEwKSkpfSkpO2gmJihhPWkoZSxkLFAsdC5yZXBvcnRBbGxDaGFuZ2VzKSxuKChuPT57ZD1jKFwiRkNQXCIpLGE9aShlLGQsUCx0LnJlcG9ydEFsbENoYW5nZXMpLG8oKCgpPT57ZC52YWx1ZT1wZXJmb3JtYW5jZS5ub3coKS1uLnRpbWVTdGFtcCxhKCEwKX0pKX0pKSl9KSl9LEU9Wy4xLC4yNV07bGV0IF89MCxMPTEvMCxNPTA7Y29uc3Qgdz1lPT57Zm9yKGNvbnN0IHQgb2YgZSl0LmludGVyYWN0aW9uSWQmJihMPU1hdGgubWluKEwsdC5pbnRlcmFjdGlvbklkKSxNPU1hdGgubWF4KE0sdC5pbnRlcmFjdGlvbklkKSxfPU0/KE0tTCkvNysxOjApfTtsZXQgQztjb25zdCBJPSgpPT5DP186cGVyZm9ybWFuY2UuaW50ZXJhY3Rpb25Db3VudD8/MCxGPSgpPT57XCJpbnRlcmFjdGlvbkNvdW50XCJpbiBwZXJmb3JtYW5jZXx8Q3x8KEM9ZihcImV2ZW50XCIsdyx7dHlwZTpcImV2ZW50XCIsYnVmZmVyZWQ6ITAsZHVyYXRpb25UaHJlc2hvbGQ6MH0pKX07bGV0IGs9MDtjbGFzcyBBe3U9W107bD1uZXcgTWFwO207djtwKCl7az1JKCksdGhpcy51Lmxlbmd0aD0wLHRoaXMubC5jbGVhcigpfVAoKXtjb25zdCBlPU1hdGgubWluKHRoaXMudS5sZW5ndGgtMSxNYXRoLmZsb29yKChJKCktaykvNTApKTtyZXR1cm4gdGhpcy51W2VdfWgoZSl7aWYodGhpcy5tPy4oZSksIWUuaW50ZXJhY3Rpb25JZCYmXCJmaXJzdC1pbnB1dFwiIT09ZS5lbnRyeVR5cGUpcmV0dXJuO2NvbnN0IHQ9dGhpcy51LmF0KC0xKTtsZXQgbj10aGlzLmwuZ2V0KGUuaW50ZXJhY3Rpb25JZCk7aWYobnx8dGhpcy51Lmxlbmd0aDwxMHx8ZS5kdXJhdGlvbj50LlQpe2lmKG4/ZS5kdXJhdGlvbj5uLlQ/KG4uZW50cmllcz1bZV0sbi5UPWUuZHVyYXRpb24pOmUuZHVyYXRpb249PT1uLlQmJmUuc3RhcnRUaW1lPT09bi5lbnRyaWVzWzBdLnN0YXJ0VGltZSYmbi5lbnRyaWVzLnB1c2goZSk6KG49e2lkOmUuaW50ZXJhY3Rpb25JZCxlbnRyaWVzOltlXSxUOmUuZHVyYXRpb259LHRoaXMubC5zZXQobi5pZCxuKSx0aGlzLnUucHVzaChuKSksdGhpcy51LnNvcnQoKChlLHQpPT50LlQtZS5UKSksdGhpcy51Lmxlbmd0aD4xMCl7Y29uc3QgZT10aGlzLnUuc3BsaWNlKDEwKTtmb3IoY29uc3QgdCBvZiBlKXRoaXMubC5kZWxldGUodC5pZCl9dGhpcy52Py4obil9fX1jb25zdCBCPWU9Pntjb25zdCB0PWdsb2JhbFRoaXMucmVxdWVzdElkbGVDYWxsYmFja3x8c2V0VGltZW91dDtcImhpZGRlblwiPT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlP2UoKToodChlPXUoZSkpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsZSx7b25jZTohMH0pKX0sTj1bMjAwLDUwMF07Y2xhc3MgU3ttO2goZSl7dGhpcy5tPy4oZSl9fWNvbnN0IHE9WzI1MDAsNGUzXSxPPVs4MDAsMTgwMF0sVj1lPT57ZG9jdW1lbnQucHJlcmVuZGVyaW5nP2IoKCgpPT5WKGUpKSk6XCJjb21wbGV0ZVwiIT09ZG9jdW1lbnQucmVhZHlTdGF0ZT9hZGRFdmVudExpc3RlbmVyKFwibG9hZFwiLCgoKT0+VihlKSksITApOnNldFRpbWVvdXQoZSl9O3JldHVybiBlLkNMU1RocmVzaG9sZHM9RSxlLkZDUFRocmVzaG9sZHM9UCxlLklOUFRocmVzaG9sZHM9TixlLkxDUFRocmVzaG9sZHM9cSxlLlRURkJUaHJlc2hvbGRzPU8sZS5vbkNMUz0oZSx0PXt9KT0+e1QodSgoKCk9PntsZXQgcyxyPWMoXCJDTFNcIiwwKTtjb25zdCBhPWQodCxoKSx1PWU9Pntmb3IoY29uc3QgdCBvZiBlKWEuaCh0KTthLmk+ci52YWx1ZSYmKHIudmFsdWU9YS5pLHIuZW50cmllcz1hLm8scygpKX0sbD1mKFwibGF5b3V0LXNoaWZ0XCIsdSk7bCYmKHM9aShlLHIsRSx0LnJlcG9ydEFsbENoYW5nZXMpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJ2aXNpYmlsaXR5Y2hhbmdlXCIsKCgpPT57XCJoaWRkZW5cIj09PWRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSYmKHUobC50YWtlUmVjb3JkcygpKSxzKCEwKSl9KSksbigoKCk9PnthLmk9MCxyPWMoXCJDTFNcIiwwKSxzPWkoZSxyLEUsdC5yZXBvcnRBbGxDaGFuZ2VzKSxvKCgoKT0+cygpKSl9KSksc2V0VGltZW91dChzKSl9KSkpfSxlLm9uRkNQPVQsZS5vbklOUD0oZSx0PXt9KT0+e2dsb2JhbFRoaXMuUGVyZm9ybWFuY2VFdmVudFRpbWluZyYmXCJpbnRlcmFjdGlvbklkXCJpbiBQZXJmb3JtYW5jZUV2ZW50VGltaW5nLnByb3RvdHlwZSYmYigoKCk9PntGKCk7bGV0IG8scz1jKFwiSU5QXCIpO2NvbnN0IHI9ZCh0LEEpLGE9ZT0+e0IoKCgpPT57Zm9yKGNvbnN0IHQgb2YgZSlyLmgodCk7Y29uc3QgdD1yLlAoKTt0JiZ0LlQhPT1zLnZhbHVlJiYocy52YWx1ZT10LlQscy5lbnRyaWVzPXQuZW50cmllcyxvKCkpfSkpfSxoPWYoXCJldmVudFwiLGEse2R1cmF0aW9uVGhyZXNob2xkOnQuZHVyYXRpb25UaHJlc2hvbGQ/PzQwfSk7bz1pKGUscyxOLHQucmVwb3J0QWxsQ2hhbmdlcyksaCYmKGgub2JzZXJ2ZSh7dHlwZTpcImZpcnN0LWlucHV0XCIsYnVmZmVyZWQ6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidmlzaWJpbGl0eWNoYW5nZVwiLCgoKT0+e1wiaGlkZGVuXCI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJihhKGgudGFrZVJlY29yZHMoKSksbyghMCkpfSkpLG4oKCgpPT57ci5wKCkscz1jKFwiSU5QXCIpLG89aShlLHMsTix0LnJlcG9ydEFsbENoYW5nZXMpfSkpKX0pKX0sZS5vbkxDUD0oZSx0PXt9KT0+e2IoKCgpPT57Y29uc3Qgcz15KCk7bGV0IGEsaD1jKFwiTENQXCIpO2NvbnN0IGw9ZCh0LFMpLG09ZT0+e3QucmVwb3J0QWxsQ2hhbmdlc3x8KGU9ZS5zbGljZSgtMSkpO2Zvcihjb25zdCB0IG9mIGUpbC5oKHQpLHQuc3RhcnRUaW1lPHMuZmlyc3RIaWRkZW5UaW1lJiYoaC52YWx1ZT1NYXRoLm1heCh0LnN0YXJ0VGltZS1yKCksMCksaC5lbnRyaWVzPVt0XSxhKCkpfSxnPWYoXCJsYXJnZXN0LWNvbnRlbnRmdWwtcGFpbnRcIixtKTtpZihnKXthPWkoZSxoLHEsdC5yZXBvcnRBbGxDaGFuZ2VzKTtjb25zdCBzPXUoKCgpPT57bShnLnRha2VSZWNvcmRzKCkpLGcuZGlzY29ubmVjdCgpLGEoITApfSkpO2Zvcihjb25zdCBlIG9mW1wia2V5ZG93blwiLFwiY2xpY2tcIixcInZpc2liaWxpdHljaGFuZ2VcIl0pYWRkRXZlbnRMaXN0ZW5lcihlLCgoKT0+QihzKSkse2NhcHR1cmU6ITAsb25jZTohMH0pO24oKG49PntoPWMoXCJMQ1BcIiksYT1pKGUsaCxxLHQucmVwb3J0QWxsQ2hhbmdlcyksbygoKCk9PntoLnZhbHVlPXBlcmZvcm1hbmNlLm5vdygpLW4udGltZVN0YW1wLGEoITApfSkpfSkpfX0pKX0sZS5vblRURkI9KGUsdD17fSk9PntsZXQgbz1jKFwiVFRGQlwiKSxhPWkoZSxvLE8sdC5yZXBvcnRBbGxDaGFuZ2VzKTtWKCgoKT0+e2NvbnN0IGQ9cygpO2QmJihvLnZhbHVlPU1hdGgubWF4KGQucmVzcG9uc2VTdGFydC1yKCksMCksby5lbnRyaWVzPVtkXSxhKCEwKSxuKCgoKT0+e289YyhcIlRURkJcIiwwKSxhPWkoZSxvLE8sdC5yZXBvcnRBbGxDaGFuZ2VzKSxhKCEwKX0pKSl9KSl9LGV9KHt9KTtcbiIsIi8qXG4gKiBDb3B5cmlnaHQgMjAyNCBBZG9iZS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIFRoaXMgZmlsZSBpcyBsaWNlbnNlZCB0byB5b3UgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5XG4gKiBvZiB0aGUgTGljZW5zZSBhdCBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyXG4gKiB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBSRVBSRVNFTlRBVElPTlNcbiAqIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZVxuICogZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZCBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBpbXBvcnQvbm8tZXh0cmFuZW91cy1kZXBlbmRlbmNpZXMsIGltcG9ydC9uby1yZWxhdGl2ZS1wYWNrYWdlcywgbm8tdW51c2VkLXZhcnNcbmltcG9ydCAqIGFzIHdlYlZpdGFscyBmcm9tICcuLi9ub2RlX21vZHVsZXMvd2ViLXZpdGFscy9kaXN0L3dlYi12aXRhbHMuaWlmZS5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFkZENXVlRyYWNraW5nKHtcbiAgc2FtcGxlUlVNLCBzb3VyY2VTZWxlY3RvciwgdGFyZ2V0U2VsZWN0b3IsIGZmbGFncyxcbn0pIHtcbiAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGN3dlNjcmlwdCA9IG5ldyBVUkwoJy5ydW0vd2ViLXZpdGFscy9kaXN0L3dlYi12aXRhbHMuaWlmZS5qcycsIHNhbXBsZVJVTS5iYXNlVVJMKS5ocmVmO1xuICAgICAgLyogYzggaWdub3JlIG5leHQgMyAqL1xuICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYHNjcmlwdFtzcmM9XCIke2N3dlNjcmlwdH1cIl1gKSkge1xuICAgICAgICAvLyB3ZWIgdml0YWxzIHNjcmlwdCBoYXMgYmVlbiBsb2FkZWQgYWxyZWFkeVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdC5zcmMgPSBjd3ZTY3JpcHQ7XG4gICAgICBzY3JpcHQub25sb2FkID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBzdG9yZUNXViA9IChtZWFzdXJlbWVudCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSB7IGN3djoge30gfTtcbiAgICAgICAgICBkYXRhLmN3dlttZWFzdXJlbWVudC5uYW1lXSA9IG1lYXN1cmVtZW50LnZhbHVlO1xuICAgICAgICAgIGlmIChtZWFzdXJlbWVudC5uYW1lID09PSAnTENQJyAmJiBtZWFzdXJlbWVudC5lbnRyaWVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IHsgZWxlbWVudCB9ID0gbWVhc3VyZW1lbnQuZW50cmllcy5wb3AoKTtcbiAgICAgICAgICAgIGRhdGEudGFyZ2V0ID0gdGFyZ2V0U2VsZWN0b3IoZWxlbWVudCk7XG4gICAgICAgICAgICBkYXRhLnNvdXJjZSA9IHNvdXJjZVNlbGVjdG9yKGVsZW1lbnQpIHx8IChlbGVtZW50ICYmIGVsZW1lbnQub3V0ZXJIVE1MLnNsaWNlKDAsIDMwKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNhbXBsZVJVTSgnY3d2JywgZGF0YSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgaXNFYWdlciA9IChtZXRyaWMpID0+IFsnQ0xTJywgJ0xDUCddLmluY2x1ZGVzKG1ldHJpYyk7XG5cbiAgICAgICAgLy8gV2hlbiBsb2FkaW5nIGB3ZWItdml0YWxzYCB1c2luZyBhIGNsYXNzaWMgc2NyaXB0LCBhbGwgdGhlIHB1YmxpY1xuICAgICAgICAvLyBtZXRob2RzIGNhbiBiZSBmb3VuZCBvbiB0aGUgYHdlYlZpdGFsc2AgZ2xvYmFsIG5hbWVzcGFjZS5cbiAgICAgICAgWydJTlAnLCAnVFRGQicsICdDTFMnLCAnTENQJ10uZm9yRWFjaCgobWV0cmljKSA9PiB7XG4gICAgICAgICAgY29uc3QgbWV0cmljRm4gPSB3aW5kb3cud2ViVml0YWxzW2BvbiR7bWV0cmljfWBdO1xuICAgICAgICAgIGlmICh0eXBlb2YgbWV0cmljRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGxldCBvcHRzID0ge307XG4gICAgICAgICAgICBmZmxhZ3MuZW5hYmxlZCgnZWFnZXJjd3YnLCAoKSA9PiB7XG4gICAgICAgICAgICAgIG9wdHMgPSB7IHJlcG9ydEFsbENoYW5nZXM6IGlzRWFnZXIobWV0cmljKSB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBtZXRyaWNGbihzdG9yZUNXViwgb3B0cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH07XG4gICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHNjcmlwdCk7XG4gICAgICAvKiBjOCBpZ25vcmUgbmV4dCAzICovXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIHNvbWV0aGluZyB3ZW50IHdyb25nXG4gICAgfVxuICB9LCAyMDAwKTsgLy8gd2FpdCBmb3IgZGVsYXllZFxufVxuIl0sIm5hbWVzIjpbImUiLCJ0IiwibiIsImFkZEV2ZW50TGlzdGVuZXIiLCJwZXJzaXN0ZWQiLCJ0aW1lU3RhbXAiLCJpIiwibyIsInMiLCJyIiwidmFsdWUiLCJkZWx0YSIsInJhdGluZyIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsInBlcmZvcm1hbmNlIiwiZ2V0RW50cmllc0J5VHlwZSIsInJlc3BvbnNlU3RhcnQiLCJub3ciLCJhY3RpdmF0aW9uU3RhcnQiLCJjIiwiZG9jdW1lbnQiLCJwcmVyZW5kZXJpbmciLCJ3YXNEaXNjYXJkZWQiLCJ0eXBlIiwicmVwbGFjZSIsIm5hbWUiLCJlbnRyaWVzIiwiaWQiLCJEYXRlIiwiTWF0aCIsImZsb29yIiwicmFuZG9tIiwibmF2aWdhdGlvblR5cGUiLCJhIiwiV2Vha01hcCIsImQiLCJnZXQiLCJzZXQiLCJoIiwiaGFkUmVjZW50SW5wdXQiLCJhdCIsInN0YXJ0VGltZSIsInB1c2giLCJmIiwiUGVyZm9ybWFuY2VPYnNlcnZlciIsInN1cHBvcnRlZEVudHJ5VHlwZXMiLCJpbmNsdWRlcyIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImdldEVudHJpZXMiLCJvYnNlcnZlIiwiYnVmZmVyZWQiLCJ1IiwibCIsIm0iLCJ2aXNpYmlsaXR5U3RhdGUiLCJnIiwicCIsInYiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwieSIsImdsb2JhbFRoaXMiLCJmaWx0ZXIiLCJzZXRUaW1lb3V0IiwiZmlyc3RIaWRkZW5UaW1lIiwiYiIsIlAiLCJUIiwiZGlzY29ubmVjdCIsIm1heCIsInJlcG9ydEFsbENoYW5nZXMiLCJFIiwiXyIsIkwiLCJNIiwidyIsImludGVyYWN0aW9uSWQiLCJtaW4iLCJDIiwiSSIsImludGVyYWN0aW9uQ291bnQiLCJGIiwiZHVyYXRpb25UaHJlc2hvbGQiLCJrIiwiQSIsIk1hcCIsImxlbmd0aCIsImNsZWFyIiwiZW50cnlUeXBlIiwiZHVyYXRpb24iLCJzb3J0Iiwic3BsaWNlIiwiZGVsZXRlIiwiQiIsInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJvbmNlIiwiTiIsIlMiLCJxIiwiTyIsIlYiLCJyZWFkeVN0YXRlIiwiQ0xTVGhyZXNob2xkcyIsIkZDUFRocmVzaG9sZHMiLCJJTlBUaHJlc2hvbGRzIiwiTENQVGhyZXNob2xkcyIsIlRURkJUaHJlc2hvbGRzIiwib25DTFMiLCJ0YWtlUmVjb3JkcyIsIm9uRkNQIiwib25JTlAiLCJQZXJmb3JtYW5jZUV2ZW50VGltaW5nIiwicHJvdG90eXBlIiwib25MQ1AiLCJzbGljZSIsImNhcHR1cmUiLCJvblRURkIiLCJhZGRDV1ZUcmFja2luZyIsInNhbXBsZVJVTSIsInNvdXJjZVNlbGVjdG9yIiwidGFyZ2V0U2VsZWN0b3IiLCJmZmxhZ3MiLCJjd3ZTY3JpcHQiLCJVUkwiLCJiYXNlVVJMIiwiaHJlZiIsInF1ZXJ5U2VsZWN0b3IiLCJzY3JpcHQiLCJjcmVhdGVFbGVtZW50Iiwic3JjIiwib25sb2FkIiwic3RvcmVDV1YiLCJtZWFzdXJlbWVudCIsImRhdGEiLCJjd3YiLCJlbGVtZW50IiwicG9wIiwidGFyZ2V0Iiwic291cmNlIiwib3V0ZXJIVE1MIiwiaXNFYWdlciIsIm1ldHJpYyIsImZvckVhY2giLCJtZXRyaWNGbiIsIndpbmRvdyIsIndlYlZpdGFscyIsIm9wdHMiLCJlbmFibGVkIiwiaGVhZCIsImFwcGVuZENoaWxkIiwiZXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0NBQWMsVUFBU0EsQ0FBQyxFQUFDOztFQUFjLElBQUlDLENBQUMsR0FBQyxFQUFFO0VBQUMsTUFBTUMsQ0FBQyxHQUFDRixDQUFDLElBQUU7QUFBQ0csTUFBQUEsZ0JBQWdCLENBQUMsVUFBVSxFQUFFRCxDQUFDLElBQUU7QUFBQ0EsUUFBQUEsQ0FBQyxDQUFDRSxTQUFTLEtBQUdILENBQUMsR0FBQ0MsQ0FBQyxDQUFDRyxTQUFTLEVBQUNMLENBQUMsQ0FBQ0UsQ0FBQyxDQUFDLENBQUM7T0FBQyxFQUFFLElBQUUsQ0FBQztLQUFDO0lBQUNJLENBQUMsR0FBQ0EsQ0FBQ04sQ0FBQyxFQUFDQyxDQUFDLEVBQUNDLENBQUMsRUFBQ0ksQ0FBQyxLQUFHO01BQUMsSUFBSUMsQ0FBQyxFQUFDQyxDQUFDO0FBQUMsTUFBQSxPQUFPQyxDQUFDLElBQUU7QUFBQ1IsUUFBQUEsQ0FBQyxDQUFDUyxLQUFLLElBQUUsQ0FBQyxLQUFHRCxDQUFDLElBQUVILENBQUMsQ0FBQyxLQUFHRSxDQUFDLEdBQUNQLENBQUMsQ0FBQ1MsS0FBSyxJQUFFSCxDQUFDLElBQUUsQ0FBQyxDQUFDLEVBQUMsQ0FBQ0MsQ0FBQyxJQUFF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
@@ -1 +1 @@
1
- 532db9ce3ac2771f3c8502ccf7dd3547
1
+ dfa5478f232ee91172b33f547625e78f
@@ -1 +1 @@
1
- c485339de82fa4da1de092c51bd5230a
1
+ ddb71d9833428d7000bea86d3f3bc7e2
@@ -1 +1 @@
1
- 866b5825b7bdb273170fbab6fa8099bb
1
+ 65c04c4661e32005cec85954ff308008
@@ -1 +1 @@
1
- 517639c5549d69645ca8d34d41e99914
1
+ 5335d59147580bf5f51b609e1ce676b3