@jsenv/cli 0.3.1 → 0.3.2
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/package.json +1 -1
- package/template-node-package/package.json +2 -2
- package/template-web/package.json +2 -2
- package/template-web-components/package.json +2 -2
- package/template-web-preact/package.json +2 -2
- package/template-web-react/package.json +2 -2
- package/template-web/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/inline_content.js +0 -19
- package/template-web/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/new_stylesheet.js +0 -320
- package/template-web/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -553
- package/template-web/.jsenv/craft/app/counter.js +0 -10
- package/template-web/.jsenv/craft/index.html +0 -26
- package/template-web/.jsenv/craft/jsenv_logo.svg +0 -140
- package/template-web/.jsenv/craft/main.css +0 -4
- package/template-web/.jsenv/craft/main.css7as_css_module=.js +0 -8
- package/template-web/.jsenv/craft/main.js +0 -14
- package/template-web/.jsenv/shape/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -1
- package/template-web/.jsenv/shape/index.html +0 -27
- package/template-web/.jsenv/shape/jsenv_logo.svg +0 -91
- package/template-web/.jsenv/shape/main.js +0 -1
- package/template-web/.jsenv/shape/main.nomodule7js_module_fallback=.js +0 -1
- package/template-web/dist/index.html +0 -27
- package/template-web/dist/js/main.nomodule.js +0 -1
- package/template-web/dist/other/jsenv_logo.svg +0 -91
- package/template-web-components/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/inline_content.js +0 -19
- package/template-web-components/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/new_stylesheet.js +0 -320
- package/template-web-components/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/packages/independent/frontend/custom-elements-redefine/src/main.js +0 -154
- package/template-web-components/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -553
- package/template-web-components/.jsenv/craft/app/app_custom_element.css +0 -4
- package/template-web-components/.jsenv/craft/app/app_custom_element.css7as_css_module=.js +0 -8
- package/template-web-components/.jsenv/craft/app/app_custom_element.js +0 -15
- package/template-web-components/.jsenv/craft/app/counter.js +0 -10
- package/template-web-components/.jsenv/craft/app/custom_elements_redefine.js +0 -4
- package/template-web-components/.jsenv/craft/index.html +0 -26
- package/template-web-components/.jsenv/craft/jsenv_logo.svg +0 -140
- package/template-web-components/.jsenv/craft/main.js +0 -9
- package/template-web-components/.jsenv/shape/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -1
- package/template-web-components/.jsenv/shape/index.html +0 -27
- package/template-web-components/.jsenv/shape/jsenv_logo.svg +0 -91
- package/template-web-components/.jsenv/shape/main.js +0 -1
- package/template-web-components/.jsenv/shape/main.nomodule7js_module_fallback=.js +0 -1
- package/template-web-components/dist/index.html +0 -27
- package/template-web-components/dist/js/main.nomodule.js +0 -1
- package/template-web-components/dist/other/jsenv_logo.svg +0 -91
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/computeKey.js +0 -38
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/computeKey.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/constants.js +0 -13
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/index.js +0 -210
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/index.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/catchError.js +0 -17
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/catchError.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/debounceRendering.js +0 -21
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/debounceRendering.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/signaturesForType.js +0 -2
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/unmount.js +0 -20
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/unmount.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/vnode.js +0 -68
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/vnode.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/vnodesForComponent.js +0 -3
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/utils/src/index.js +0 -43
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/debug/dist/debug.module.js +0 -2
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/debug/dist/debug.module.js.map +0 -181
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/devtools/dist/devtools.module.js +0 -2
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/devtools/dist/devtools.module.js.map +0 -29
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/dist/preact.module.js +0 -2
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/dist/preact.module.js.map +0 -270
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/hooks/dist/hooks.module.js +0 -195
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/hooks/dist/hooks.module.js.map +0 -168
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js +0 -2
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js.map +0 -77
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/packages/internal/ast/src/html/html_src_set.js +0 -18
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/packages/internal/plugin-supervisor/src/client/supervisor.js +0 -1360
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/packages/related/plugin-preact/src/client/preact_refresh.js +0 -36
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/packages/related/plugin-preact/src/client/preact_refresh.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/src/plugins/autoreload/client/autoreload.js +0 -382
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/src/plugins/autoreload/client/autoreload.js.map +0 -11
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/src/plugins/import_meta_hot/client/import_meta_hot.js +0 -81
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/src/plugins/ribbon/client/ribbon.js +0 -93
- package/template-web-preact/.jsenv/chrome@131.00/@fs/Users/dmail/Documents/dev/core/src/plugins/server_events/client/server_events_client.js +0 -461
- package/template-web-preact/.jsenv/chrome@131.00/app/app.css +0 -43
- package/template-web-preact/.jsenv/chrome@131.00/app/app.jsx +0 -95
- package/template-web-preact/.jsenv/chrome@131.00/app/app.jsx.map +0 -44
- package/template-web-preact/.jsenv/chrome@131.00/app/counter.jsx +0 -45
- package/template-web-preact/.jsenv/chrome@131.00/app/counter.jsx.map +0 -33
- package/template-web-preact/.jsenv/chrome@131.00/index.html +0 -68
- package/template-web-preact/.jsenv/chrome@131.00/index.html@L11C7-L15C16.js +0 -5
- package/template-web-preact/.jsenv/chrome@131.00/index.html@L7C5-L21C13.css +0 -10
- package/template-web-preact/.jsenv/chrome@131.00/main.jsx +0 -10
- package/template-web-preact/.jsenv/chrome@131.00/main.jsx.map +0 -24
- package/template-web-preact/.jsenv/chrome@131.00/preact_logo.svg +0 -6
- package/template-web-preact/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/inline_content.js +0 -19
- package/template-web-preact/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/new_stylesheet.js +0 -320
- package/template-web-preact/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/preact/dist/preact.module.js +0 -357
- package/template-web-preact/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/preact/hooks/dist/hooks.module.js +0 -198
- package/template-web-preact/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js +0 -93
- package/template-web-preact/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -553
- package/template-web-preact/.jsenv/craft/app/app.css +0 -43
- package/template-web-preact/.jsenv/craft/app/app.css7as_css_module=.js +0 -8
- package/template-web-preact/.jsenv/craft/app/app.jsx +0 -46
- package/template-web-preact/.jsenv/craft/app/counter.jsx +0 -17
- package/template-web-preact/.jsenv/craft/index.html +0 -24
- package/template-web-preact/.jsenv/craft/main.jsx +0 -4
- package/template-web-preact/.jsenv/craft/preact_logo.svg +0 -6
- package/template-web-preact/.jsenv/shape/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -1
- package/template-web-preact/.jsenv/shape/index.html +0 -28
- package/template-web-preact/.jsenv/shape/main.jsx +0 -1
- package/template-web-preact/.jsenv/shape/main.nomodule7js_module_fallback=.jsx +0 -1
- package/template-web-preact/.jsenv/shape/preact_logo.svg +0 -6
- package/template-web-preact/.jsenv/shape/vendors.js +0 -1
- package/template-web-preact/.jsenv/shape/vendors.nomodule7js_module_fallback=.js +0 -1
- package/template-web-preact/dist/index.html +0 -28
- package/template-web-preact/dist/js/main.nomodule.js +0 -1
- package/template-web-preact/dist/js/vendors.nomodule.js +0 -1
- package/template-web-preact/dist/other/preact_logo.svg +0 -6
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/inline_content.js +0 -19
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/dist/js/new_stylesheet.js +0 -320
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/react/index.js +0 -7
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/react/jsx-runtime.js +0 -7
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/react/react/jsx-runtime7cjs_as_js_module=.jsx +0 -61
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/react/react7cjs_as_js_module=.jsx +0 -635
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/react-dom/client.js +0 -34
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/node_modules/react-dom/react-dom/client7cjs_as_js_module=.jsx +0 -9847
- package/template-web-react/.jsenv/craft/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -553
- package/template-web-react/.jsenv/craft/app/app.css +0 -43
- package/template-web-react/.jsenv/craft/app/app.css7as_css_module=.js +0 -8
- package/template-web-react/.jsenv/craft/app/app.jsx +0 -46
- package/template-web-react/.jsenv/craft/app/counter.jsx +0 -16
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react/index.production.js +0 -824
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react/index.production.js__compile_info__.json +0 -26
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react/index.production.map +0 -1
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react/jsx-runtime.production.js +0 -69
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react/jsx-runtime.production.js__compile_info__.json +0 -18
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react/jsx-runtime.production.map +0 -1
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react-dom/client.production.js +0 -16066
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react-dom/client.production.js__compile_info__.json +0 -42
- package/template-web-react/.jsenv/craft/cjs_to_esm/@fs/Users/dmail/Documents/dev/core/node_modules/react-dom/client.production.map +0 -1
- package/template-web-react/.jsenv/craft/cjs_to_esm/__compile_context__.json +0 -3
- package/template-web-react/.jsenv/craft/index.html +0 -24
- package/template-web-react/.jsenv/craft/main.jsx +0 -10
- package/template-web-react/.jsenv/craft/react_logo.svg +0 -7
- package/template-web-react/.jsenv/shape/@fs/Users/dmail/Documents/dev/core/packages/internal/js-module-fallback/dist/js/s.js +0 -1
- package/template-web-react/.jsenv/shape/index.html +0 -28
- package/template-web-react/.jsenv/shape/main.jsx +0 -1
- package/template-web-react/.jsenv/shape/main.nomodule7js_module_fallback=.jsx +0 -1
- package/template-web-react/.jsenv/shape/react_logo.svg +0 -7
- package/template-web-react/.jsenv/shape/vendors.js +0 -1
- package/template-web-react/.jsenv/shape/vendors.nomodule7js_module_fallback=.js +0 -1
- package/template-web-react/dist/index.html +0 -28
- package/template-web-react/dist/js/main.nomodule.js +0 -1
- package/template-web-react/dist/js/vendors.nomodule.js +0 -1
- package/template-web-react/dist/other/react_logo.svg +0 -7
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { options } from "/@fs/Users/dmail/Documents/dev/core/node_modules/preact/dist/preact.module.js?v=10.25.0";
|
|
2
|
-
import { vnodesForComponent, mappedVNodes } from "/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/vnodesForComponent.js?v=1.5.3";
|
|
3
|
-
import { VNODE_COMPONENT } from "/@fs/Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/constants.js?v=1.5.3";
|
|
4
|
-
|
|
5
|
-
const getMappedVnode = type => {
|
|
6
|
-
if (mappedVNodes.has(type)) {
|
|
7
|
-
return getMappedVnode(mappedVNodes.get(type));
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
return type;
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
const BUILT_IN_COMPONENTS = ['Fragment', 'Suspense', 'SuspenseList'];
|
|
14
|
-
|
|
15
|
-
const isBuiltIn = type => {
|
|
16
|
-
return BUILT_IN_COMPONENTS.includes(type.name)
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
const oldVnode = options.vnode;
|
|
20
|
-
options.vnode = vnode => {
|
|
21
|
-
if (vnode && typeof vnode.type === 'function' && !isBuiltIn(vnode.type)) {
|
|
22
|
-
const vnodes = vnodesForComponent.get(vnode.type);
|
|
23
|
-
if (!vnodes) {
|
|
24
|
-
vnodesForComponent.set(vnode.type, [vnode]);
|
|
25
|
-
} else {
|
|
26
|
-
vnodes.push(vnode);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
const foundType = getMappedVnode(vnode.type);
|
|
30
|
-
if (foundType !== vnode.type) {
|
|
31
|
-
const vnodes = vnodesForComponent.get(foundType);
|
|
32
|
-
if (!vnodes) {
|
|
33
|
-
vnodesForComponent.set(foundType, [vnode]);
|
|
34
|
-
} else {
|
|
35
|
-
vnodes.push(vnode);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
vnode.type = foundType;
|
|
40
|
-
if (
|
|
41
|
-
vnode[VNODE_COMPONENT] &&
|
|
42
|
-
'prototype' in vnode.type &&
|
|
43
|
-
vnode.type.prototype.render
|
|
44
|
-
) {
|
|
45
|
-
vnode[VNODE_COMPONENT].constructor = vnode.type;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
if (oldVnode) oldVnode(vnode);
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
const oldDiffed = options.diffed;
|
|
53
|
-
options.diffed = vnode => {
|
|
54
|
-
if (vnode && typeof vnode.type === 'function') {
|
|
55
|
-
const vnodes = vnodesForComponent.get(vnode.type);
|
|
56
|
-
if (vnodes) {
|
|
57
|
-
const matchingDom = vnodes.filter(p => p.__c === vnode.__c);
|
|
58
|
-
if (matchingDom.length > 1) {
|
|
59
|
-
const i = vnodes.findIndex(p => p === matchingDom[0]);
|
|
60
|
-
vnodes.splice(i, 1);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
if (oldDiffed) oldDiffed(vnode);
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGU6Ly8vVXNlcnMvZG1haWwvRG9jdW1lbnRzL2Rldi9jb3JlL25vZGVfbW9kdWxlcy9AcHJlZnJlc2gvY29yZS9zcmMvcnVudGltZS92bm9kZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBvcHRpb25zIH0gZnJvbSAncHJlYWN0JztcbmltcG9ydCB7IHZub2Rlc0ZvckNvbXBvbmVudCwgbWFwcGVkVk5vZGVzIH0gZnJvbSAnLi92bm9kZXNGb3JDb21wb25lbnQnO1xuaW1wb3J0IHsgVk5PREVfQ09NUE9ORU5UIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuY29uc3QgZ2V0TWFwcGVkVm5vZGUgPSB0eXBlID0+IHtcbiAgaWYgKG1hcHBlZFZOb2Rlcy5oYXModHlwZSkpIHtcbiAgICByZXR1cm4gZ2V0TWFwcGVkVm5vZGUobWFwcGVkVk5vZGVzLmdldCh0eXBlKSk7XG4gIH1cblxuICByZXR1cm4gdHlwZTtcbn07XG5cbmNvbnN0IEJVSUxUX0lOX0NPTVBPTkVOVFMgPSBbJ0ZyYWdtZW50JywgJ1N1c3BlbnNlJywgJ1N1c3BlbnNlTGlzdCddO1xuXG5jb25zdCBpc0J1aWx0SW4gPSB0eXBlID0+IHtcbiAgcmV0dXJuIEJVSUxUX0lOX0NPTVBPTkVOVFMuaW5jbHVkZXModHlwZS5uYW1lKVxufVxuXG5jb25zdCBvbGRWbm9kZSA9IG9wdGlvbnMudm5vZGU7XG5vcHRpb25zLnZub2RlID0gdm5vZGUgPT4ge1xuICBpZiAodm5vZGUgJiYgdHlwZW9mIHZub2RlLnR5cGUgPT09ICdmdW5jdGlvbicgJiYgIWlzQnVpbHRJbih2bm9kZS50eXBlKSkge1xuICAgIGNvbnN0IHZub2RlcyA9IHZub2Rlc0ZvckNvbXBvbmVudC5nZXQodm5vZGUudHlwZSk7XG4gICAgaWYgKCF2bm9kZXMpIHtcbiAgICAgIHZub2Rlc0ZvckNvbXBvbmVudC5zZXQodm5vZGUudHlwZSwgW3Zub2RlXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZub2Rlcy5wdXNoKHZub2RlKTtcbiAgICB9XG5cbiAgICBjb25zdCBmb3VuZFR5cGUgPSBnZXRNYXBwZWRWbm9kZSh2bm9kZS50eXBlKTtcbiAgICBpZiAoZm91bmRUeXBlICE9PSB2bm9kZS50eXBlKSB7XG4gICAgICBjb25zdCB2bm9kZXMgPSB2bm9kZXNGb3JDb21wb25lbnQuZ2V0KGZvdW5kVHlwZSk7XG4gICAgICBpZiAoIXZub2Rlcykge1xuICAgICAgICB2bm9kZXNGb3JDb21wb25lbnQuc2V0KGZvdW5kVHlwZSwgW3Zub2RlXSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2bm9kZXMucHVzaCh2bm9kZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdm5vZGUudHlwZSA9IGZvdW5kVHlwZTtcbiAgICBpZiAoXG4gICAgICB2bm9kZVtWTk9ERV9DT01QT05FTlRdICYmXG4gICAgICAncHJvdG90eXBlJyBpbiB2bm9kZS50eXBlICYmXG4gICAgICB2bm9kZS50eXBlLnByb3RvdHlwZS5yZW5kZXJcbiAgICApIHtcbiAgICAgIHZub2RlW1ZOT0RFX0NPTVBPTkVOVF0uY29uc3RydWN0b3IgPSB2bm9kZS50eXBlO1xuICAgIH1cbiAgfVxuXG4gIGlmIChvbGRWbm9kZSkgb2xkVm5vZGUodm5vZGUpO1xufTtcblxuY29uc3Qgb2xkRGlmZmVkID0gb3B0aW9ucy5kaWZmZWQ7XG5vcHRpb25zLmRpZmZlZCA9IHZub2RlID0+IHtcbiAgaWYgKHZub2RlICYmIHR5cGVvZiB2bm9kZS50eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgY29uc3Qgdm5vZGVzID0gdm5vZGVzRm9yQ29tcG9uZW50LmdldCh2bm9kZS50eXBlKTtcbiAgICBpZiAodm5vZGVzKSB7XG4gICAgICBjb25zdCBtYXRjaGluZ0RvbSA9IHZub2Rlcy5maWx0ZXIocCA9PiBwLl9fYyA9PT0gdm5vZGUuX19jKTtcbiAgICAgIGlmIChtYXRjaGluZ0RvbS5sZW5ndGggPiAxKSB7XG4gICAgICAgIGNvbnN0IGkgPSB2bm9kZXMuZmluZEluZGV4KHAgPT4gcCA9PT0gbWF0Y2hpbmdEb21bMF0pO1xuICAgICAgICB2bm9kZXMuc3BsaWNlKGksIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlmIChvbGREaWZmZWQpIG9sZERpZmZlZCh2bm9kZSk7XG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLHlGQUFRO0FBQ2hDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsMkdBQXNCO0FBQ3ZFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQywwRkFBYzs7QUFFOUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMvQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM5QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2pELENBQUMsQ0FBQzs7QUFFRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2IsQ0FBQzs7QUFFRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7O0FBRXBFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMxQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDL0M7O0FBRUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDOUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN6QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMzRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2pCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ1gsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDeEIsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7QUFFSixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNoRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3RELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbkIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDYixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDMUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDTixDQUFDLENBQUMsQ0FBQyxDQUFDOztBQUVKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMxQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDOUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2hDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3JELENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDSixDQUFDLENBQUM7O0FBRUYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMvQixDQUFDOztBQUVELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNoQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDMUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNqRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNoQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzdELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzNCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQzs7QUFFRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNqQyxDQUFDOyJ9
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
"file:///Users/dmail/Documents/dev/core/node_modules/@prefresh/core/src/runtime/vnode"
|
|
5
|
-
],
|
|
6
|
-
"sourcesContent": [
|
|
7
|
-
"import { options } from 'preact';\nimport { vnodesForComponent, mappedVNodes } from './vnodesForComponent';\nimport { VNODE_COMPONENT } from '../constants';\n\nconst getMappedVnode = type => {\n if (mappedVNodes.has(type)) {\n return getMappedVnode(mappedVNodes.get(type));\n }\n\n return type;\n};\n\nconst BUILT_IN_COMPONENTS = ['Fragment', 'Suspense', 'SuspenseList'];\n\nconst isBuiltIn = type => {\n return BUILT_IN_COMPONENTS.includes(type.name)\n}\n\nconst oldVnode = options.vnode;\noptions.vnode = vnode => {\n if (vnode && typeof vnode.type === 'function' && !isBuiltIn(vnode.type)) {\n const vnodes = vnodesForComponent.get(vnode.type);\n if (!vnodes) {\n vnodesForComponent.set(vnode.type, [vnode]);\n } else {\n vnodes.push(vnode);\n }\n\n const foundType = getMappedVnode(vnode.type);\n if (foundType !== vnode.type) {\n const vnodes = vnodesForComponent.get(foundType);\n if (!vnodes) {\n vnodesForComponent.set(foundType, [vnode]);\n } else {\n vnodes.push(vnode);\n }\n }\n\n vnode.type = foundType;\n if (\n vnode[VNODE_COMPONENT] &&\n 'prototype' in vnode.type &&\n vnode.type.prototype.render\n ) {\n vnode[VNODE_COMPONENT].constructor = vnode.type;\n }\n }\n\n if (oldVnode) oldVnode(vnode);\n};\n\nconst oldDiffed = options.diffed;\noptions.diffed = vnode => {\n if (vnode && typeof vnode.type === 'function') {\n const vnodes = vnodesForComponent.get(vnode.type);\n if (vnodes) {\n const matchingDom = vnodes.filter(p => p.__c === vnode.__c);\n if (matchingDom.length > 1) {\n const i = vnodes.findIndex(p => p === matchingDom[0]);\n vnodes.splice(i, 1);\n }\n }\n }\n\n if (oldDiffed) oldDiffed(vnode);\n};\n"
|
|
8
|
-
],
|
|
9
|
-
"names": [],
|
|
10
|
-
"mappings": "AAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,yFAAQ;AAChC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,2GAAsB;AACvE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0FAAc;;AAE9C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC;;AAEF,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACb,CAAC;;AAED,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;AAEpE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/C;;AAEA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC,CAAC,CAAC,CAAC;;AAEJ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACb,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACN,CAAC,CAAC,CAAC,CAAC;;AAEJ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACN,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;;AAEF,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/B,CAAC;;AAED,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACN,CAAC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;;AAEF,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjC,CAAC;"
|
|
11
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
const compareSignatures = (prev, next) => {
|
|
2
|
-
const prevSignature = self.__PREFRESH__.getSignature(prev) || {};
|
|
3
|
-
const nextSignature = self.__PREFRESH__.getSignature(next) || {};
|
|
4
|
-
|
|
5
|
-
if (
|
|
6
|
-
prevSignature.key !== nextSignature.key ||
|
|
7
|
-
self.__PREFRESH__.computeKey(prevSignature) !==
|
|
8
|
-
self.__PREFRESH__.computeKey(nextSignature) ||
|
|
9
|
-
nextSignature.forceReset
|
|
10
|
-
) {
|
|
11
|
-
self.__PREFRESH__.replaceComponent(prev, next, true);
|
|
12
|
-
} else {
|
|
13
|
-
self.__PREFRESH__.replaceComponent(prev, next, false);
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
export const flush = () => {
|
|
18
|
-
const pending = [...self.__PREFRESH__.getPendingUpdates()];
|
|
19
|
-
self.__PREFRESH__.flush();
|
|
20
|
-
|
|
21
|
-
if (pending.length > 0) {
|
|
22
|
-
pending.forEach(([prev, next]) => {
|
|
23
|
-
compareSignatures(prev, next);
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export const isComponent = exportValue => {
|
|
29
|
-
if (typeof exportValue === 'function') {
|
|
30
|
-
if (
|
|
31
|
-
exportValue.prototype != null &&
|
|
32
|
-
exportValue.prototype.isReactComponent
|
|
33
|
-
) {
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
const name = exportValue.name || exportValue.displayName;
|
|
38
|
-
return (
|
|
39
|
-
typeof name === 'string' && name[0] && name[0] == name[0].toUpperCase()
|
|
40
|
-
);
|
|
41
|
-
}
|
|
42
|
-
return false;
|
|
43
|
-
};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{Fragment as n,options as e,Component as o}from"/@fs/Users/dmail/Documents/dev/core/node_modules/preact/dist/preact.module.js?v=10.25.0";import"/@fs/Users/dmail/Documents/dev/core/node_modules/preact/devtools/dist/devtools.module.js?v=1.0.0";var t={};function r(){t={}}function a(e){return e.type===n?"Fragment":"function"==typeof e.type?e.type.displayName||e.type.name:"string"==typeof e.type?e.type:"#text"}var i=[],s=[];function c(){return i.length>0?i[i.length-1]:null}var l=!0;function u(e){return"function"==typeof e.type&&e.type!=n}function f(n){for(var e=[n],o=n;null!=o.__o;)e.push(o.__o),o=o.__o;return e.reduce(function(n,e){n+=" in "+a(e);var o=e.__source;return o?n+=" (at "+o.fileName+":"+o.lineNumber+")":l&&console.warn("Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons."),l=!1,n+"\n"},"")}var d="function"==typeof WeakMap;function p(n){var e=[];return n.__k?(n.__k.forEach(function(n){n&&"function"==typeof n.type?e.push.apply(e,p(n)):n&&"string"==typeof n.type&&e.push(n.type)}),e):e}function h(n){return n?"function"==typeof n.type?null==n.__?null!=n.__e&&null!=n.__e.parentNode?n.__e.parentNode.localName:"":h(n.__):n.type:""}var v=o.prototype.setState;function y(n){return"table"===n||"tfoot"===n||"tbody"===n||"thead"===n||"td"===n||"tr"===n||"th"===n}o.prototype.setState=function(n,e){return null==this.__v&&null==this.state&&console.warn('Calling "this.setState" inside the constructor of a component is a no-op and might be a bug in your application. Instead, set "this.state = {}" directly.\n\n'+f(c())),v.call(this,n,e)};var m=/^(address|article|aside|blockquote|details|div|dl|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|main|menu|nav|ol|p|pre|search|section|table|ul)$/,b=o.prototype.forceUpdate;function w(n){var e=n.props,o=a(n),t="";for(var r in e)if(e.hasOwnProperty(r)&&"children"!==r){var i=e[r];"function"==typeof i&&(i="function "+(i.displayName||i.name)+"() {}"),i=Object(i)!==i||i.toString?i+"":Object.prototype.toString.call(i),t+=" "+r+"="+JSON.stringify(i)}var s=e.children;return"<"+o+t+(s&&s.length?">..</"+o+">":" />")}o.prototype.forceUpdate=function(n){return null==this.__v?console.warn('Calling "this.forceUpdate" inside the constructor of a component is a no-op and might be a bug in your application.\n\n'+f(c())):null==this.__P&&console.warn('Can\'t call "this.forceUpdate" on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method.\n\n'+f(this.__v)),b.call(this,n)},e.__m=function(n,e){var o=n.type,t=e.map(function(n){return n&&n.localName}).filter(Boolean);console.error("Expected a DOM node of type "+o+" but found "+t.join(", ")+"as available DOM-node(s), this is caused by the SSR'd HTML containing different DOM-nodes compared to the hydrated one.\n\n"+f(n))},function(){!function(){var n=e.__b,o=e.diffed,t=e.__,r=e.vnode,a=e.__r;e.diffed=function(n){u(n)&&s.pop(),i.pop(),o&&o(n)},e.__b=function(e){u(e)&&i.push(e),n&&n(e)},e.__=function(n,e){s=[],t&&t(n,e)},e.vnode=function(n){n.__o=s.length>0?s[s.length-1]:null,r&&r(n)},e.__r=function(n){u(n)&&s.push(n),a&&a(n)}}();var n=!1,o=e.__b,r=e.diffed,c=e.vnode,l=e.__r,v=e.__e,b=e.__,g=e.__h,E=d?{useEffect:new WeakMap,useLayoutEffect:new WeakMap,lazyPropTypes:new WeakMap}:null,k=[];e.__e=function(n,e,o,t){if(e&&e.__c&&"function"==typeof n.then){var r=n;n=new Error("Missing Suspense. The throwing component was: "+a(e));for(var i=e;i;i=i.__)if(i.__c&&i.__c.__c){n=r;break}if(n instanceof Error)throw n}try{(t=t||{}).componentStack=f(e),v(n,e,o,t),"function"!=typeof n.then&&setTimeout(function(){throw n})}catch(n){throw n}},e.__=function(n,e){if(!e)throw new Error("Undefined parent passed to render(), this is the second argument.\nCheck if the element is available in the DOM/has the correct id.");var o;switch(e.nodeType){case 1:case 11:case 9:o=!0;break;default:o=!1}if(!o){var t=a(n);throw new Error("Expected a valid HTML node as a second argument to render.\tReceived "+e+" instead: render(<"+t+" />, "+e+");")}b&&b(n,e)},e.__b=function(e){var r=e.type;if(n=!0,void 0===r)throw new Error("Undefined component passed to createElement()\n\nYou likely forgot to export your component or might have mixed up default and named imports"+w(e)+"\n\n"+f(e));if(null!=r&&"object"==typeof r){if(void 0!==r.__k&&void 0!==r.__e)throw new Error("Invalid type passed to createElement(): "+r+"\n\nDid you accidentally pass a JSX literal as JSX twice?\n\n let My"+a(e)+" = "+w(r)+";\n let vnode = <My"+a(e)+" />;\n\nThis usually happens when you export a JSX literal and not the component.\n\n"+f(e));throw new Error("Invalid type passed to createElement(): "+(Array.isArray(r)?"array":r))}if(void 0!==e.ref&&"function"!=typeof e.ref&&"object"!=typeof e.ref&&!("$$typeof"in e))throw new Error('Component\'s "ref" property should be a function, or an object created by createRef(), but got ['+typeof e.ref+"] instead\n"+w(e)+"\n\n"+f(e));if("string"==typeof e.type)for(var i in e.props)if("o"===i[0]&&"n"===i[1]&&"function"!=typeof e.props[i]&&null!=e.props[i])throw new Error("Component's \""+i+'" property should be a function, but got ['+typeof e.props[i]+"] instead\n"+w(e)+"\n\n"+f(e));if("function"==typeof e.type&&e.type.propTypes){if("Lazy"===e.type.displayName&&E&&!E.lazyPropTypes.has(e.type)){var s="PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ";try{var c=e.type();E.lazyPropTypes.set(e.type,!0),console.warn(s+"Component wrapped in lazy() is "+a(c))}catch(n){console.warn(s+"We will log the wrapped component's name once it is loaded.")}}var l=e.props;e.type.__f&&delete(l=function(n,e){for(var o in e)n[o]=e[o];return n}({},l)).ref,function(n,e,o,r,a){Object.keys(n).forEach(function(o){var i;try{i=n[o](e,o,r,"prop",null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(n){i=n}i&&!(i.message in t)&&(t[i.message]=!0,console.error("Failed prop type: "+i.message+(a&&"\n"+a()||"")))})}(e.type.propTypes,l,0,a(e),function(){return f(e)})}o&&o(e)};var T,_=0;e.__r=function(e){l&&l(e),n=!0;var o=e.__c;if(o===T?_++:_=1,_>=25)throw new Error("Too many re-renders. This is limited to prevent an infinite loop which may lock up your browser. The component causing this is: "+a(e));T=o},e.__h=function(e,o,t){if(!e||!n)throw new Error("Hook can only be invoked from render methods.");g&&g(e,o,t)};var O=function(n,e){return{get:function(){var o="get"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("getting vnode."+n+" is deprecated, "+e))},set:function(){var o="set"+n+e;k&&k.indexOf(o)<0&&(k.push(o),console.warn("setting vnode."+n+" is not allowed, "+e))}}},I={nodeName:O("nodeName","use vnode.type"),attributes:O("attributes","use vnode.props"),children:O("children","use vnode.props.children")},M=Object.create({},I);e.vnode=function(n){var e=n.props;if(null!==n.type&&null!=e&&("__source"in e||"__self"in e)){var o=n.props={};for(var t in e){var r=e[t];"__source"===t?n.__source=r:"__self"===t?n.__self=r:o[t]=r}}n.__proto__=M,c&&c(n)},e.diffed=function(e){var o,t=e.type,i=e.__;if(e.__k&&e.__k.forEach(function(n){if("object"==typeof n&&n&&void 0===n.type){var o=Object.keys(n).join(",");throw new Error("Objects are not valid as a child. Encountered an object with the keys {"+o+"}.\n\n"+f(e))}}),e.__c===T&&(_=0),"string"==typeof t&&(y(t)||"p"===t||"a"===t||"button"===t)){var s=h(i);if(""!==s&&y(t))"table"===t&&"td"!==s&&y(s)?(console.log(s,i.__e),console.error("Improper nesting of table. Your <table> should not have a table-node parent."+w(e)+"\n\n"+f(e))):"thead"!==t&&"tfoot"!==t&&"tbody"!==t||"table"===s?"tr"===t&&"thead"!==s&&"tfoot"!==s&&"tbody"!==s?console.error("Improper nesting of table. Your <tr> should have a <thead/tbody/tfoot> parent."+w(e)+"\n\n"+f(e)):"td"===t&&"tr"!==s?console.error("Improper nesting of table. Your <td> should have a <tr> parent."+w(e)+"\n\n"+f(e)):"th"===t&&"tr"!==s&&console.error("Improper nesting of table. Your <th> should have a <tr>."+w(e)+"\n\n"+f(e)):console.error("Improper nesting of table. Your <thead/tbody/tfoot> should have a <table> parent."+w(e)+"\n\n"+f(e));else if("p"===t){var c=p(e).filter(function(n){return m.test(n)});c.length&&console.error("Improper nesting of paragraph. Your <p> should not have "+c.join(", ")+" as child-elements."+w(e)+"\n\n"+f(e))}else"a"!==t&&"button"!==t||-1!==p(e).indexOf(t)&&console.error("Improper nesting of interactive content. Your <"+t+"> should not have other "+("a"===t?"anchor":"button")+" tags as child-elements."+w(e)+"\n\n"+f(e))}if(n=!1,r&&r(e),null!=e.__k)for(var l=[],u=0;u<e.__k.length;u++){var d=e.__k[u];if(d&&null!=d.key){var v=d.key;if(-1!==l.indexOf(v)){console.error('Following component has two or more children with the same key attribute: "'+v+'". This may cause glitches and misbehavior in rendering process. Component: \n\n'+w(e)+"\n\n"+f(e));break}l.push(v)}}if(null!=e.__c&&null!=e.__c.__H){var b=e.__c.__H.__;if(b)for(var g=0;g<b.length;g+=1){var E=b[g];if(E.__H)for(var k=0;k<E.__H.length;k++)if((o=E.__H[k])!=o){var O=a(e);console.warn("Invalid argument passed to hook. Hooks should not be called with NaN in the dependency array. Hook index "+g+" in component "+O+" was called with NaN.")}}}}}();export{r as resetPropWarnings};
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGU6Ly8vVXNlcnMvZG1haWwvRG9jdW1lbnRzL2Rldi9jb3JlL25vZGVfbW9kdWxlcy9wcmVhY3QvZGVidWcvc3JjL2NoZWNrLXByb3BzLmpzIiwiZmlsZTovLy9Vc2Vycy9kbWFpbC9Eb2N1bWVudHMvZGV2L2NvcmUvbm9kZV9tb2R1bGVzL3ByZWFjdC9kZWJ1Zy9zcmMvY29tcG9uZW50LXN0YWNrLmpzIiwiZmlsZTovLy9Vc2Vycy9kbWFpbC9Eb2N1bWVudHMvZGV2L2NvcmUvbm9kZV9tb2R1bGVzL3ByZWFjdC9kZWJ1Zy9zcmMvZGVidWcuanMiLCJmaWxlOi8vL1VzZXJzL2RtYWlsL0RvY3VtZW50cy9kZXYvY29yZS9ub2RlX21vZHVsZXMvcHJlYWN0L2RlYnVnL3NyYy9jb25zdGFudHMuanMiLCJmaWxlOi8vL1VzZXJzL2RtYWlsL0RvY3VtZW50cy9kZXYvY29yZS9ub2RlX21vZHVsZXMvcHJlYWN0L2RlYnVnL3NyYy91dGlsLmpzIiwiZmlsZTovLy9Vc2Vycy9kbWFpbC9Eb2N1bWVudHMvZGV2L2NvcmUvbm9kZV9tb2R1bGVzL3ByZWFjdC9kZWJ1Zy9zcmMvaW5kZXguanMiLCJmaWxlOi8vL1VzZXJzL2RtYWlsL0RvY3VtZW50cy9kZXYvY29yZS9ub2RlX21vZHVsZXMvcHJlYWN0L2RlYnVnL2Rpc3QvZGVidWcubW9kdWxlLmpzIl0sIm5hbWVzIjpbImxvZ2dlZFR5cGVGYWlsdXJlcyIsInJlc2V0UHJvcFdhcm5pbmdzIiwiZ2V0RGlzcGxheU5hbWUiLCJ2bm9kZSIsInR5cGUiLCJGcmFnbWVudCIsImRpc3BsYXlOYW1lIiwibmFtZSIsInJlbmRlclN0YWNrIiwib3duZXJTdGFjayIsImdldEN1cnJlbnRWTm9kZSIsImxlbmd0aCIsInNob3dKc3hTb3VyY2VQbHVnaW5XYXJuaW5nIiwiaXNQb3NzaWJsZU93bmVyIiwiZ2V0T3duZXJTdGFjayIsInN0YWNrIiwibmV4dCIsIl9fbyIsInB1c2giLCJyZWR1Y2UiLCJhY2MiLCJvd25lciIsInNvdXJjZSIsIl9fc291cmNlIiwiZmlsZU5hbWUiLCJsaW5lTnVtYmVyIiwiY29uc29sZSIsIndhcm4iLCJpc1dlYWtNYXBTdXBwb3J0ZWQiLCJXZWFrTWFwIiwiZ2V0RG9tQ2hpbGRyZW4iLCJkb21DaGlsZHJlbiIsIl9fayIsImZvckVhY2giLCJjaGlsZCIsImFwcGx5IiwiZ2V0Q2xvc2VzdERvbU5vZGVQYXJlbnROYW1lIiwicGFyZW50IiwiX18iLCJfX2UiLCJwYXJlbnROb2RlIiwibG9jYWxOYW1lIiwic2V0U3RhdGUiLCJDb21wb25lbnQiLCJwcm90b3R5cGUiLCJpc1RhYmxlRWxlbWVudCIsInVwZGF0ZSIsImNhbGxiYWNrIiwidGhpcyIsIl9fdiIsInN0YXRlIiwiY2FsbCIsIklMTEVHQUxfUEFSQUdSQVBIX0NISUxEX0VMRU1FTlRTIiwiZm9yY2VVcGRhdGUiLCJzZXJpYWxpemVWTm9kZSIsInByb3BzIiwiYXR0cnMiLCJwcm9wIiwiaGFzT3duUHJvcGVydHkiLCJ2YWx1ZSIsIk9iamVjdCIsInRvU3RyaW5nIiwiSlNPTiIsInN0cmluZ2lmeSIsImNoaWxkcmVuIiwiX19QIiwib3B0aW9ucyIsIl9fbSIsIm5ld1ZOb2RlIiwiZXhjZXNzRG9tQ2hpbGRyZW4iLCJhdmFpbGFibGVUeXBlcyIsIm1hcCIsImZpbHRlciIsIkJvb2xlYW4iLCJlcnJvciIsImpvaW4iLCJvbGREaWZmIiwiX19iIiwib2xkRGlmZmVkIiwiZGlmZmVkIiwib2xkUm9vdCIsIm9sZFZOb2RlIiwib2xkUmVuZGVyIiwiX19yIiwicG9wIiwic2V0dXBDb21wb25lbnRTdGFjayIsImhvb2tzQWxsb3dlZCIsIm9sZEJlZm9yZURpZmYiLCJvbGRWbm9kZSIsIm9sZENhdGNoRXJyb3IiLCJvbGRIb29rIiwiX19oIiwid2FybmVkQ29tcG9uZW50cyIsInVzZUVmZmVjdCIsInVzZUxheW91dEVmZmVjdCIsImxhenlQcm9wVHlwZXMiLCJkZXByZWNhdGlvbnMiLCJlcnJvckluZm8iLCJfX2MiLCJ0aGVuIiwicHJvbWlzZSIsIkVycm9yIiwiY29tcG9uZW50U3RhY2siLCJzZXRUaW1lb3V0IiwiZSIsImlzVmFsaWQiLCJub2RlVHlwZSIsImNvbXBvbmVudE5hbWUiLCJ1bmRlZmluZWQiLCJBcnJheSIsImlzQXJyYXkiLCJyZWYiLCJrZXkiLCJwcm9wVHlwZXMiLCJoYXMiLCJtIiwibGF6eVZOb2RlIiwic2V0IiwidmFsdWVzIiwiX19mIiwib2JqIiwiaSIsImFzc2lnbiIsInR5cGVTcGVjcyIsImxvY2F0aW9uIiwiZ2V0U3RhY2siLCJrZXlzIiwidHlwZVNwZWNOYW1lIiwibWVzc2FnZSIsImNoZWNrUHJvcFR5cGVzIiwiY3VycmVudENvbXBvbmVudCIsInJlbmRlckNvdW50IiwibmV4dENvbXBvbmVudCIsImNvbXAiLCJpbmRleCIsInByb3BlcnR5IiwiZ2V0IiwiaW5kZXhPZiIsImRlcHJlY2F0ZWRBdHRyaWJ1dGVzIiwibm9kZU5hbWUiLCJhdHRyaWJ1dGVzIiwiZGVwcmVjYXRlZFByb3RvIiwiY3JlYXRlIiwibmV3UHJvcHMiLCJ2IiwiX19zZWxmIiwiX19wcm90b19fIiwiZG9tUGFyZW50TmFtZSIsImxvZyIsImlsbGVnYWxEb21DaGlsZHJlblR5cGVzIiwiY2hpbGRUeXBlIiwidGVzdCIsIl9fSCIsImhvb2tzIiwiaG9vayIsImoiLCJpbml0RGVidWciXSwibWFwcGluZ3MiOiJBTUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQ05BckQsSUFFSUEsRUFBcUIsQ0FBQSxFQUtsQixTQUFTQyxJQUNmRCxFQUFxQixDQUFBLENBQ3RCLENDRE8sU0FBU0UsRUFBZUMsR0FDOUIsT0FBSUEsRUFBTUMsTUtUa0QsQ0FBQyxBTFMxQ0MsQ0tUMkMsQ0FBQyxBTFV2RCxDS1Z3RCxDQUFDLENBQUMsQ0FBQyxPTFduQyxtQkFBZEYsRUFBTUMsS0FDaEJELEVBQU1DLEtBQUtFLGFBQWVILEVBQU1DLEtBQUtHLEtBQ2IsaUJBQWRKLEVBQU1DLEtBQ2hCRCxFQUFNQyxLQUdQLEVLakI2RSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxrQjFGLENLbEIyRixBTHdCM0YsQ0t4QjRGLENBQUMsQ0FBQyxDQUFDLEFMd0IzRkksQ0t4QjRGLENBQUMsQUx3Qi9FLENLeEJnRixDQUFDLENBQUMsQUw0Q2hHQyxDSzVDaUcsQ0FBQyxBTDRDckYsQ0s1Q3NGLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTGtEbEdDLENLbERtRyxDQUFDLENBQUMsQ0FBQyxBTG1EckgsQ0tuRHNILENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMbURySEYsQ0tuRHNILENBQUMsQUxtRDNHRyxDS25ENEcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxtRHpHLENLbkQwRyxDQUFDLEFMbUR2R0gsQ0tuRHdHLENBQUMsQUxtRDdGQSxDS25EOEYsQ0FBQyxBTG1EbkZHLENLbkRvRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTG1EakYsQ0tuRGtGLENBQUMsQ0FBQyxBTG1EL0UsQ0tuRGdGLENBQUMsQ0FBQyxDQUFDLEFMb0QxSixDS3BEMkosQUw0RDNKLENLNUQ0SixDQUFDLENBQUMsQ0FBQyxBTDREM0pDLENLNUQ0SixDQUFDLENBQUMsQUw0RGpJLENLNURrSSxDQUFDLEFMa0VwSyxDS2xFcUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMa0VwS0MsQ0tsRXFLLENBQUMsQUxrRXRKVixDS2xFdUosQ0FBQyxDQUFDLEFMbUVqTCxDS25Fa0wsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMbUUzSixDS25FNEosQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxtRTVMQSxDS25FNkwsQ0FBQyxBTG1FeExDLENLbkV5TCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxtRXhLRCxDS25FeUssQ0FBQyxBTG1FcEtDLENLbkVxSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxtRWxLQyxDS25FbUssQUxvRTVOLENLcEU2TixBTDJFdE4sQ0szRXVOLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTDJFdE5TLENLM0V1TixDQUFDLEFMMkUxTVgsQ0szRTJNLENBQUMsQ0FBQyxBTDhFMU8sQ0s5RTJPLENBQUMsQ0FBQyxDQUFDLEFMNEU5TyxDSzVFK08sQ0FBQyxDQUFDLENBQUMsQUw0RTVPWSxDSzVFNk8sQ0FBQyxBTDRFdE8sQ0s1RXVPLEFMNEV0T1osQ0s1RXVPLENBQUMsQ0FBQyxBTDZFcFBhLENLN0VxUCxDQUFDLEFMNkUvT2IsQ0s3RWdQLENBQUMsQUw4RXRPLENLOUV1TyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUw4RTNQYSxDSzlFNFAsQ0FBQyxBTDhFelBDLENLOUUwUCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMK0V4UUYsQ0svRXlRLENBQUMsQUwrRXBRRyxDSy9FcVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTCtFcFFGLENLL0VxUSxDQUFDLEFMK0VsUUMsQ0svRW1RLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxnRnRSRCxDS2hGdVIsQ0FBQyxBTGdGalJBLENLaEZrUixDQUFDLEFMZ0YvUUMsQ0toRmdSLENBQUMsQ0FBQyxDQUFDLEFMbUYvUixDS25GZ1MsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxtRi9SRixDS25GZ1MsQ0FBQyxBTG1GM1JJLENLbkY0UixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTG1GM1IsQ0tuRjRSLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTG1GblNDLENLbkZvUyxDQUFDLEFMbUZoU0MsQ0tuRmlTLENBQUMsQ0FBQyxBTG9GNVRELENLcEY2VCxDQUFDLENBQUMsQUxvRmhUbEIsQ0twRmlULENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxvRnhUQSxDS3BGeVQsQ0FBQyxBTG9GM1NtQixDS3BGNFMsQ0FBQyxDQUFDLEFMc0Y1VSxDS3RGNlUsQ0FBQyxDQUFDLENBQUMsQUxzRjFVQyxDS3RGMlUsQ0FBQyxBTHNGblVELENLdEZvVSxDQUFDLEFMc0YvVEUsQ0t0RmdVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTGdHN1YsQ0toRzhWLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMdUZoV0QsQ0t2RmlXLENBQUMsQUx3RnJXRixDS3hGc1csQ0FBQyxDQUFDLEFMd0Z6VkUsQ0t4RjBWLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUx3RmpXQSxDS3hGa1csQ0FBQyxBTHdGNVZFLENLeEY2VixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUx3RnpWRixDS3hGMFYsQ0FBQyxDQUFDLENBQUMsQUx3RjdWQSxDS3hGOFYsQ0FBQyxBTHdGeFZHLENLeEZ5VixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMeUY3WSxDS3pGOFksQ0FBQyxDQUFDLENBQUMsQUx5RnRZYixDS3pGdVksQ0FBQyxDQUFDLEFMMEZuWmMsQ0sxRm9aLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUwwRm5aQyxDSzFGb1osQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTDJGL1osQ0szRmdhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMOEZubEJmLENLOUZvbEIsQ0FBQyxDQUFDLEFMOEZ6akIsQ0s5RjBqQixDQUFDLEFMZ0dobEJRLENLaEdpbEIsQ0FBQyxBTGdHM2tCLENLaEc0a0IsQ0FBQyxDQUFDLENBQUMsQUxpRy9sQixDS2pHZ21CLENBQUMsQUxpRzlsQixDS2pHK2xCLENBQUMsQ0FBQyxBTGtHcm1CLENLbEdzbUIsQUpldG1CLENJZnVtQixDQUFDLENBQUMsQ0FBQyxBSmVwbUJRLENJZnFtQixDQUFDLEFKZS9qQixDSWZna0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUplN2xCQyxDSWY4bEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFCdm9CLENJckJ3b0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcUJ2b0JDLENJckJ3b0IsQ0FBQyxBSnFCMW5CM0IsQ0lyQjJuQixDQUFDLENBQUMsQUpzQnBwQixDSXRCcXBCLENBQUMsQ0FBQyxDQUFDLEFKc0JwcEI0QixDSXRCcXBCLENBQUMsQUpzQnhvQixDSXRCeW9CLENBQUMsQ0FBQyxBSndCN3BCLENJeEI4cEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3Qi9wQjVCLENJeEJncUIsQ0FBQyxBSndCNXBCNkIsQ0l4QjZwQixDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMEIzcUI3QixDSTFCNHFCLENBQUMsQUowQnhxQjZCLENJMUJ5cUIsQ0FBQyxDQUFDLENBQUMsQUowQmpxQkMsQ0kxQmtxQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMEJqcUIsQ0kxQmtxQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowQjFxQkMsQ0kxQjJxQixDQUFDLENBQUMsQUoyQmhzQkEsQ0kzQmlzQixDQUFDLENBQUMsQUoyQnBxQixDSTNCcXFCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMkJ0c0JBLENJM0J1c0IsQ0FBQyxBSjJCbHNCOUIsQ0kzQm1zQixDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNEJodUIyQixDSTVCaXVCLENBQUMsQUo0QnR0QmIsQ0k1QnV0QixDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNEJ0dEJpQixDSTVCdXRCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRCdHRCSixDSTVCdXRCLENBQUMsQUo0QjNzQkQsQ0k1QjRzQixDQUFDLEFKNEI5ckJJLENJNUIrckIsQ0FBQyxDQUFDLENBQUMsQUo2QjN1QkEsQ0k3QjR1QixDQUFDLENBQUMsQUo2Qi9zQixDSTdCZ3RCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2Qi91QkEsQ0k3Qmd2QixDQUFDLEFKNkIzdUI5QixDSTdCNHVCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhCanhCMkIsQ0k5Qmt4QixDQUFDLEFKOEJ2d0JiLENJOUJ3d0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhCdndCZ0IsQ0k5Qnd3QixDQUFDLEFKOEJud0I5QixDSTlCb3dCLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnQ2p5QixDSWhDa3lCLENBQUMsQ0FBQyxBSmtDN3hCMkIsQ0lsQzh4QixDQUFDLENBQUMsQUp3QjF3QkEsQ0l4QjJ3QixBSm1DenlCLENJbkMweUIsQUp5QzF5QixDSXpDMnlCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlDMXlCSyxDSXpDMnlCLENBQUMsQUp5Q2h4QkMsQ0l6Q2l4QixDQUFDLENBQUMsQUowQ3Z6QixDSTFDd3pCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMEN6ekJBLENJMUMwekIsQ0FBQyxBSjJDdHlCLENJM0N1eUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyQ3gwQkEsQ0kzQ3kwQixDQUFDLEFKMkNuMEJqQyxDSTNDbzBCLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0Q24wQixDSTVDbzBCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRDMzFCaUMsQ0k1QzQxQixDQUFDLEFKNEN2MUJDLENJNUN3MUIsQ0FBQyxDQUFDLEFKNkNoMUIsQ0k3Q2kxQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2Q3IyQkQsQ0k3Q3MyQixDQUFDLEFKNkNqMkJFLENJN0NrMkIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjZDM3pCLENJN0M0ekIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNkMzMUJGLENJN0M0MUIsQ0FBQyxBSjZDdjFCRSxDSTdDdzFCLENBQUMsQ0FBQyxDQUFDLEFKNkNyMUJDLENJN0NzMUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhDLzNCSCxDSTlDZzRCLENBQUMsQUo4QzMzQkUsQ0k5QzQzQixDQUFDLENBQUMsQ0FBQyxBSjhDejNCQyxDSTlDMDNCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4Q3ozQkMsQ0k5QzAzQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmdEMzVCLENJaEQ0NUIsQ0FBQyxDQUFDLEFKa0QvNUJMLENJbERnNkIsQ0FBQyxBSmtEcjRCQyxDSWxEczRCLENBQUMsQUprRGo0QkMsQ0lsRGs0QixDQUFDLENBQUMsQ0FBQyxBSm9EajVCRCxDSXBEazVCLENBQUMsQUpvRDU0QmpDLENJcEQ2NEIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjBDbDZCLENJMUNtNkIsQ0FBQyxBSnFEejdCLENJckQwN0IsQUppZjE3QixDSWpmMjdCLENBQUMsQ0FBQyxDQUFDLEFKaWZ4N0JzQyxDSWpmeTdCLENBQUMsQUppZi82QkMsQ0lqZmc3QixDQUFDLEFKaWZ2NkJDLENJamZ3NkIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUppZnY2QkYsQ0lqZnc2QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvZ0JyOUIsQ0lwZ0JzOUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2dCcjlCRyxDSXBnQnM5QixDQUFDLEFKb2dCeDhCekMsQ0lwZ0J5OEIsQ0FBQyxDQUFDLEFKcWdCbCtCLENJcmdCbStCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnNnQjk5QixDSXRnQis5QixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnNnQmovQkEsQ0l0Z0JrL0IsQ0FBQyxDQUFDLEFKdWdCMytCLENJdmdCNCtCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKdWdCOS9CQSxDSXZnQisvQixDQUFDLENBQUMsQUp3Z0J4L0IsQ0l4Z0J5L0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3Z0IzZ0NBLENJeGdCNGdDLENBQUMsQ0FBQyxBSnlnQnJnQyxDSXpnQnNnQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlnQnhoQ0EsQ0l6Z0J5aEMsQ0FBQyxDQUFDLEFKMGdCbGhDLENJMWdCbWhDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMGdCbGlDQSxDSTFnQm1pQyxDQUFDLENBQUMsQUoyZ0I1aEMsQ0kzZ0I2aEMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyZ0I1aUNBLENJM2dCNmlDLENBQUMsQ0FBQyxBSjRnQnRpQyxDSTVnQnVpQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRnQnRqQ0EsQ0k1Z0J1akMsQUo4Z0J6akMsQ0k5Z0IwakMsQUprZjFqQ3VDLENJbGYyakMsQ0FBQyxBSmtmbGpDQyxDSWxmbWpDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa2ZsakNGLENJbGZtakMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa2ZoakMsQ0lsZmlqQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprZi9pQ0ksQ0lsZmdqQyxDQUFDLEFKa2Z6aUNDLENJbGYwaUMsQ0FBQyxDQUFDLEFKaWdCNWxDLENJamdCNmxDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbWZobEMsQ0luZmlsQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptZnJtQ0MsQ0luZnNtQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbWZ0bUNDLENJbmZ1bUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndmaG1DLENJeGZpbUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd2ZwbkNELENJeGZxbkMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndmcG5DRSxDSXhmcW5DLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeWZub0N4QixDSXpmb29DLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5Zm5vQ0MsQ0l6Zm9vQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMGYvb0MsQ0kxZmdwQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRmNXdDYixDSTVmNndDLENBQUMsQUo0Zmh3Q0osQ0k1Zml3QyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUppZ0JuekNnQyxDSWpnQm96QyxDQUFDLEFKaWdCNXlDUyxDSWpnQjZ5QyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKaWdCNXlDSCxDSWpnQjZ5QyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKaWdCM3lDRixDSWpnQjR5QyxDQUFDLEFKaWdCcnlDQyxDSWpnQnN5QyxDQUFDLEFKa2dCMzBDLENJbGdCNDBDLENBQUMsQUpnaEI3MEMsQ0loaEI4MEMsQ0FBQyxDQUFDLENBQUMsQUpnaEIzMENLLENJaGhCNDBDLENBQUMsQUppaEJsMUMsQ0lqaEJtMUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptaEI1L0NDLENJbmhCNi9DLENBQUMsQUptaEJoL0NWLENJbmhCaS9DLENBQUMsQUptaEJ4K0NDLENJbmhCeStDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbWhCeCtDUyxDSW5oQnkrQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0aUI1Z0QsQ0k1aUI2Z0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNGlCcmhEQyxDSTVpQnNoRCxDQUFDLEFKNGlCeGdEbkQsQ0k1aUJ5Z0QsQ0FBQyxDQUFDLEFKNmlCemlELENJN2lCMGlELENBQUMsQ0FBQyxDQUFDLEFKNmlCdmlEb0QsQ0k3aUJ3aUQsQ0FBQyxBSjZpQi9oRHBELENJN2lCZ2lELENBQUMsQUo2aUIzaURvRCxDSTdpQjRpRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4aUJuakRoRCxDSTlpQm9qRCxDQUFDLEFKOGlCOWlETCxDSTlpQitpRCxDQUFDLEFKOGlCamlEQyxDSTlpQmtpRCxDQUFDLENBQUMsQUpnakIxakRxRCxDSWhqQjJqRCxDQUFDLEFKZ2pCcGpELENJaGpCcWpELENBQUMsQ0FBQyxBSmlqQm5rRCxDSWpqQm9rRCxDQUFDLENBQUMsQ0FBQyxBSmlqQmxrRCxDSWpqQm1rRCxDQUFDLENBQUMsQ0FBQyxBSmlqQmxrREMsQ0lqakJta0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmlqQi9qREYsQ0lqakJna0QsQ0FBQyxBSmtqQmpsRCxDSWxqQmtsRCxDQUFDLENBQUMsQUprakJobERBLENJbGpCaWxELENBQUMsQUprakI1a0RHLENJbGpCNmtELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmtqQjVrREQsQ0lsakI2a0QsQ0FBQyxDQUFDLENBQUMsQUprakI5akQsQ0lsakIrakQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprakJwbERBLENJbGpCcWxELENBQUMsQUprakJqa0QsQ0lsakJra0QsQUptakJ4bkQsQ0luakJ5bkQsQ0FBQyxDQUFDLENBQUMsQUptakJ4bkRFLENJbmpCeW5ELENBQUMsQUptakJsbkRKLENJbmpCbW5ELENBQUMsQUptakI5bURFLENJbmpCK21ELENBQUMsQ0FBQyxBSnNqQi9tRCxDSXRqQmduRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnNqQjNvREUsQ0l0akI0b0QsQ0FBQyxDQUFDLENBQUMsQUp1akJ6cERBLENJdmpCMHBELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnVqQnBwREEsQ0l2akJxcEQsQ0FBQyxBSnVqQmhwRHJELENJdmpCaXBELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKdWpCOW9EcUQsQ0l2akIrb0QsQ0FBQyxBSnVqQjFvRHBELENJdmpCMm9ELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndqQmhzRCxDSXhqQmlzRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowakJ6c0RvRCxDSTFqQjBzRCxDQUFDLEFKMmpCMXNEQyxDSTNqQjJzRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjJqQjFzREQsQ0kzakIyc0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjJqQnBzREEsQ0kzakJxc0QsQ0FBQyxDQUFDLEFKMmpCN3JEQSxDSTNqQjhyRCxDQUFDLEFKMmpCenJERSxDSTNqQjByRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2akJqdURGLENJN2pCa3VELENBQUMsQUo2akIzdEQsQ0k3akI0dEQsQ0FBQyxDQUFDLEFKNGpCdHVEQyxDSTVqQnV1RCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRqQnR1RGhCLENJNWpCdXVELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNGpCdHVEaUIsQ0k1akJ1dUQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNGpCdHVEVixDSTVqQnV1RCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNGpCdHVEUSxDSTVqQnV1RCxDQUFDLENBQUMsQUorakI1d0RILENJL2pCNndELENBQUMsQ0FBQyxBSitqQmx3REMsQ0kvakJtd0QsQ0FBQyxDQUFDLENBQUMsQUorakJ0d0RBLENJL2pCdXdELENBQUMsQUorakJod0RLLENJL2pCaXdELENBQUMsQ0FBQyxDQUFDLEFKK2pCcHdEQSxDSS9qQnF3RCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKK2pCcHdEQyxDSS9qQnF3RCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSitqQnB3REosQ0kvakJxd0QsQ0FBQyxBSmdrQjN5RCxDSWhrQjR5RCxBSm1rQjd5RCxDSW5rQjh5RCxDQUFDLENBQUMsQ0FBQyxBSm1rQjd5REssQ0lua0I4eUQsQ0FBQyxBSm1rQnB5RFQsQ0lua0JxeUQsQ0FBQyxBSm1rQmh5RFMsQ0lua0JpeUQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2tCOXpELENJcGtCK3pELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2tCN3pEekQsQ0lwa0I4ekQsQ0FBQyxBSm9rQnh6RGlELENJcGtCeXpELENBQUMsQ0FBQyxBSnFrQjUwRFEsQ0lya0I2MEQsQ0FBQyxDQUFDLEFKcWtCbjBEQSxDSXJrQm8wRCxDQUFDLEFKcWtCNXpEckQsQ0lya0I2ekQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxa0IxekQsQ0lya0IyekQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFrQnh6REosQ0lya0J5ekQsQ0FBQyxBSnFrQm56RCxDSXJrQm96RCxDQUFDLENBQUMsQ0FBQyxBSnFrQmp6RCxDSXJrQmt6RCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp1a0I5MkQsQ0l2a0IrMkQsQUpvaEIvMkRvQyxDSXBoQmczRCxDQUFDLEFKb2hCdjJEQyxDSXBoQncyRCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9oQnYyRFMsQ0lwaEJ3MkQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2hCcjJELENJcGhCczJELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9oQnAyRE4sQ0lwaEJxMkQsQ0FBQyxDQUFDLEFKb2lCbDVELENJcGlCbTVELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcWhCdDRELENJcmhCdTRELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFoQjM1REMsQ0lyaEI0NUQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFoQjU1REMsQ0lyaEI2NUQsQ0FBQyxDQUFDLENBQUMsQUpzaEJ2NkR2QixDSXRoQnc2RCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKc2hCdjZEQyxDSXRoQnc2RCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKdWhCbjdELENJdmhCbzdELENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3aEJ4L0RiLENJeGhCeS9ELENBQUMsQUp5aEI3aUVKLENJemhCOGlFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRoQnpoRSxDSTVoQjBoRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0aEJsakVzQyxDSTVoQm1qRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNGhCbmpFaUIsQ0k1aEJvakUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjZoQnRrRXZDLENJN2hCdWtFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2aEJ0a0VDLENJN2hCdWtFLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4aEJsbEUsQ0k5aEJtbEUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKaWlCM3lFYixDSWppQjR5RSxDQUFDLEFKaWlCL3hFa0MsQ0lqaUJneUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmlpQmh5RUMsQ0lqaUJpeUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2lCM3pFSSxDSXBpQjR6RSxDQUFDLEFKb2lCanpFRixDSXBpQmt6RSxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2lCanpFSCxDSXBpQmt6RSxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2lCaHpFRCxDSXBpQml6RSxDQUFDLEFKcWlCajFFLENJcmlCazFFLENBQUMsQUp5a0JuMUVtQixDSXprQm8xRSxDQUFDLEFKeWtCOTBFQyxDSXprQiswRSxDQUFDLENBQUMsQ0FBQyxBSnlrQjV6RSxDSXprQjZ6RSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5a0JwMEVDLENJemtCcTBFLENBQUMsQUp5a0I1ekVDLENJemtCNnpFLENBQUMsQ0FBQyxBSjBrQnQyRSxDSTFrQnUyRSxDQUFDLENBQUMsQ0FBQyxBSjBrQmwyRWpFLENJMWtCbTJFLENBQUMsQUowa0IzMUVnRSxDSTFrQjQxRSxDQUFDLEFKMGtCdDJFaEUsQ0kxa0J1MkUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjJrQjcyRWtFLENJM2tCODJFLENBQUMsQUoya0I5MUVELENJM2tCKzFFLENBQUMsQUo0a0JyM0VFLENJNWtCczNFLENBQUMsQ0FBQyxDQUFDLEFKNGtCcjNFLENJNWtCczNFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRrQjkzRXJDLENJNWtCKzNFLENBQUMsQ0FBQyxBSjRrQjUzRSxDSTVrQjYzRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRrQi8zRUEsQ0k1a0JnNEUsQ0FBQyxDQUFDLEFKNGtCejNFQSxDSTVrQjAzRSxDQUFDLEFKNGtCcjNFTyxDSTVrQnMzRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0a0JyM0UsQ0k1a0JzM0UsQ0FBQyxDQUFDLEFKNmtCNzVFK0IsQ0k3a0I4NUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2a0I3NUVDLENJN2tCODVFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhrQi82RS9DLENJOWtCZzdFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4a0IvNkVnRCxDSTlrQmc3RSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUora0I3NUV0RSxDSS9rQjg1RSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSitrQjU3RUEsQ0kva0I2N0UsQ0FBQyxBSitrQjU2RWtFLENJL2tCNjZFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUora0IxN0VBLENJL2tCMjdFLENBQUMsQUora0I3NkVLLENJL2tCODZFLENBQUMsQ0FBQyxDQUFDLENBQUMsQUora0I3NkUsQ0kva0I4NkUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKK2tCOTZFN0QsQ0kva0IrNkUsQ0FBQyxBSitrQmw2RXNELENJL2tCbTZFLENBQUMsQ0FBQyxBSmlsQjduRixDSWpsQjhuRixDQUFDLEFKdUR4bkYsQ0l2RHluRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUx5R3BvRixDS3pHcW9GLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUwwR3JwRixDSzFHc3BGLENBQUMsQ0FBQyxDQUFDLEFMMEdycEZRLENLMUdzcEYsQ0FBQyxBTDBHN29GVixDSzFHOG9GLENBQUMsQUwwR3hvRlcsQ0sxR3lvRixDQUFDLENBQUMsQ0FBQyxBTDJHN3BGQyxDSzNHOHBGLENBQUMsQUwyR25wRlosQ0szR29wRixDQUFDLEFMMkc3b0ZhLENLM0c4b0YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUw0R3hxRkMsQ0s1R3lxRixDQUFDLEFMNEdocUZkLENLNUdpcUYsQ0FBQyxBTDRHM3BGNUIsQ0s1RzRwRixDQUFDLENBQUMsQUw2Ry9xRjJDLENLN0dnckYsQ0FBQyxBTDZHdHFGZixDSzdHdXFGLENBQUMsQUw2R2hxRi9ELENLN0dpcUYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMOEd6ckYrRSxDSzlHMHJGLENBQUMsQUw4Ry9xRmhCLENLOUdnckYsQ0FBQyxBTDhHMXFGaUIsQ0s5RzJxRixDQUFDLENBQUMsQ0FBQyxBTGdIcnNGakIsQ0toSHNzRixDQUFDLEFMZ0gvckZhLENLaEhnc0YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxnSDdyRixDS2hIOHJGLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTGdIdHNGNUUsQ0toSHVzRixDQUFDLENBQUMsQUxpSHJ0RlUsQ0tqSHN0RixDQUFDLEFMaUh2c0ZWLENLakh3c0YsQ0FBQyxDQUFDLENBQUMsQUxrSDl0Rk0sQ0tsSCt0RixDQUFDLEFMa0hydEYyRSxDS2xIc3RGLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTG9IdnVGNUUsQ0twSHd1RixDQUFDLEFMb0g3dEY0RSxDS3BIOHRGLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTHFIM3VGTixDS3JINHVGLENBQUMsQ0FBQyxBTHFIbnVGQSxDS3JIb3VGLENBQUMsQUxxSDN0RjNFLENLckg0dEYsQ0FBQyxBTHNIdnZGLENLdEh3dkYsQ0FBQyxBTHdIenZGK0QsQ0t4SDB2RixDQUFDLEFMd0hwdkZXLENLeEhxdkYsQ0FBQyxDQUFDLENBQUMsQUx3SC91RixDS3hIZ3ZGLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTHdIeHZGMUUsQ0t4SHl2RixDQUFDLENBQUMsQUx5SHR3RlUsQ0t6SHV3RixDQUFDLEFMeUh4dkZWLENLekh5dkYsQ0FBQyxDQUFDLENBQUMsQUwwSC93RkssQ0sxSGd4RixDQUFDLEFMMEhyd0ZVLENLMUhzd0YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTDBIcndGZixDSzFIc3dGLENBQUMsQ0FBQyxBTDRIdHhGeUUsQ0s1SHV4RixDQUFDLENBQUMsQUw0SGh4RkEsQ0s1SGl4RixDQUFDLEFMNEgxd0Z6RSxDSzVIMndGLENBQUMsQUw2SGx5RixDSzdIbXlGLENBQUMsQUwrSHB5RitELENLL0hxeUYsQ0FBQyxBTCtIL3hGNUIsQ0svSGd5RixDQUFDLENBQUMsQUwrSHp4RixDSy9IMHhGLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTCtIanlGbkMsQ0svSGt5RixDQUFDLEFMK0g1eEZrQyxDSy9INnhGLENBQUMsQ0FBQyxBTGdJdHpGNUIsQ0toSXV6RixDQUFDLEFMZ0kzeUYsQ0toSTR5RixDQUFDLENBQUMsQUxpSXZ6RnVFLENLakl3ekYsQ0FBQyxDQUFDLEFMaUlqekZBLENLaklrekYsQ0FBQyxBTGlJM3lGN0UsQ0tqSTR5RixDQUFDLEFMaUl0eUZrQyxDS2pJdXlGLENBQUMsQUxrSXIwRixDS2xJczBGLENBQUMsQUxvSXYwRjZCLENLcEl3MEYsQ0FBQyxBTG9JajBGL0QsQ0twSWswRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxvSS96RixDS3BJZzBGLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTG9JeDBGQSxDS3BJeTBGLENBQUMsQ0FBQyxBTHFJMTFGQSxDS3JJMjFGLENBQUMsQUxxSXYxRmMsQ0tySXcxRixDQUFDLENBQUMsQ0FBQyxBTHNJLzFGUixDS3RJZzJGLENBQUMsQUxzSXQxRkUsQ0t0SXUxRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTHNJcDFGLENLdElxMUYsQ0FBQyxBTHNJbDFGRixDS3RJbTFGLENBQUMsQUxzSXowRkEsQ0t0STAwRixDQUFDLEFMc0loMEZFLENLdElpMEYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUxzSTl6RixDS3RJK3pGLENBQUMsQ0FBQyxBTHNJNXpGLENLdEk2ekYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTHVJMTNGc0UsQ0t2STIzRixDQUFDLENBQUMsQUx1SW4zRkEsQ0t2SW8zRixDQUFDLEFMdUk1MkY5RSxDS3ZJNjJGLENBQUMsQUx3SXQ0RixDS3hJdTRGLENBQUMsQUwwSXg0RitELENLMUl5NEYsQ0FBQyxBTDBJbjRGaUIsQ0sxSW80RixDQUFDLENBQUMsQ0FBQyxBTDBJNTNGLENLMUk2M0YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFMMElyNEZoRixDSzFJczRGLENBQUMsQ0FBQyxBTDJJcjVGVSxDSzNJczVGLENBQUMsQUwySXY0RlYsQ0szSXc0RixDQUFDLENBQUMsQ0FBQyxBTDRJOTVGTSxDSzVJKzVGLENBQUMsQUw0SXI1RlMsQ0s1SXM1RixDQUFDLENBQUMsQ0FBQyxDQUFDLEFMNElyNUZmLENLNUlzNUYsQ0FBQyxDQUFDLEFMK0lyNkYrRSxDSy9JczZGLENBQUMsQ0FBQyxBTCtJNzVGQSxDSy9JODVGLENBQUMsQUwrSXI1Ri9FLENLL0lzNUYsQ0FBQyxBTGdKajdGLENLaEprN0YsQUxpSm43RixDS2pKbzdGLEFKd0RuN0ZrRixDSXhEbzdGLENBQUMsQ0FBQyxBSjBEdDdGLENJMUR1N0YsQ0FBQyxDQUFDLENBQUMsQUowRHQ3RkMsQ0kxRHU3RixDQUFDLENBQUMsQUowRDE2RixDSTFEMjZGLENBQUMsQUo2RDM3RkMsQ0k3RDQ3RixDQUFDLEFKNkQ3NkZyQixDSTdEODZGLENBQUMsQUo2RHg2RlcsQ0k3RHk2RixDQUFDLENBQUMsQ0FBQyxBSjhEbjhGQyxDSTlEbzhGLENBQUMsQUo4RHo3RlosQ0k5RDA3RixDQUFDLEFKOERuN0ZhLENJOURvN0YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorRDk4RlMsQ0kvRCs4RixDQUFDLEFKK0RyOEZ0QixDSS9EczhGLENBQUMsQUorRC83Ri9ELENJL0RnOEYsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKZ0V4OUYrRSxDSWhFeTlGLENBQUMsQUpnRTk4RmhCLENJaEUrOEYsQ0FBQyxBSmdFejhGaUIsQ0loRTA4RixDQUFDLENBQUMsQ0FBQyxBSmlFaCtGTSxDSWpFaStGLENBQUMsQUppRWw5RnZCLENJakVtOUYsQ0FBQyxBSmlFNzhGM0IsQ0lqRTg4RixDQUFDLENBQUMsQ0FBQyxBSmtFeCtGeUMsQ0lsRXkrRixDQUFDLEFKa0VoK0ZkLENJbEVpK0YsQ0FBQyxBSmtFMzlGNUIsQ0lsRTQ5RixDQUFDLENBQUMsQUptRS8rRm9ELENJbkVnL0YsQ0FBQyxBSm1FditGeEIsQ0luRXcrRixDQUFDLEFKbUVsK0Z5QixDSW5FbStGLENBQUMsQ0FBQyxDQUFDLEFKb0VyL0ZDLENJcEVzL0YsQ0FBQyxBSm9FbitGaEUsQ0lwRW8rRixDQUFDLEFKc0U1L0YsQ0l0RTYvRixBSnVFNy9GaUUsQ0l2RTgvRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnVFNS9GLENJdkU2L0YsQ0FBQyxDQUFDLENBQUMsQUp1RTUvRmhFLENJdkU2L0YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndFbmhHaUUsQ0l4RW9oRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndFbGhHLENJeEVtaEcsQ0FBQyxDQUFDLENBQUMsQUp3RWxoR2pFLENJeEVtaEcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlFL2lHa0UsQ0l6RWdqRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeUU5aUcsQ0l6RStpRyxDQUFDLENBQUMsQ0FBQyxBSnlFOWlHbEUsQ0l6RStpRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxRTFrRyxDSXJFMmtHLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyRTVrR21FLENJM0U2a0csQ0FBQyxBSjJFL2pHLENJM0Vna0csQ0FBQyxDQUFDLEFKNkV2bEc5QixDSTdFd2xHLENBQUMsQUo2RWxsRzNCLENJN0VtbEcsQ0FBQyxDQUFDLENBQUMsQUo2RXZrRyxDSTdFd2tHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjZFL2tHbUMsQ0k3RWdsRyxDQUFDLEFKNkUxa0d2RSxDSTdFMmtHLENBQUMsQUo2RXJrRzhFLENJN0Vza0csQ0FBQyxBSjZFN2pHZ0IsQ0k3RThqRyxDQUFDLENBQUMsQUorRTltRyxDSS9FK21HLENBQUMsQ0FBQyxBSjhFam1HOUYsQ0k5RWttRyxDQUFDLENBQUMsQUo4RTNsR0EsQ0k5RTRsRyxDQUFDLEFKOEV4bEcrRixDSTlFeWxHLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorRXJsRyxDSS9Fc2xHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKK0V0bkd4QixDSS9FdW5HLENBQUMsQUorRWxuR3lCLENJL0VtbkcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSitFbm1HLENJL0VvbUcsQUpnRnJwRyxDSWhGc3BHLENBQUMsQ0FBQyxDQUFDLEFKZ0ZucEdDLENJaEZvcEcsQ0FBQyxBSmdGM29HMUIsQ0loRjRvRyxDQUFDLEFKaUY3cEdBLENJakY4cEcsQ0FBQyxBSmlGdnBHLENJakZ3cEcsQ0FBQyxDQUFDLENBQUMsQUppRnZwRzJCLENJakZ3cEcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKaUZ4cEcsQ0lqRnlwRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmtGeHFHbkcsQ0lsRnlxRyxDQUFDLEFKa0YzcEdDLENJbEY0cEcsQ0FBQyxDQUFDLENBQUMsQUpzRmh1RyxDSXRGaXVHLENBQUMsQ0FBQyxDQUFDLEFKcUZwdUcsQ0lyRnF1RyxDQUFDLENBQUMsQ0FBQyxBSnFGcHVHa0MsQ0lyRnF1RyxDQUFDLEFKcUY3dEdsQyxDSXJGOHRHLENBQUMsQUpzRnJ1R2tDLENJdEZzdUcsQ0FBQyxBSnNGL3RHQSxDSXRGZ3VHLENBQUMsQUpzRnh0R0EsQ0l0Rnl0RyxDQUFDLEFKc0ZwdEdDLENJdEZxdEcsQ0FBQyxDQUFDLEFKdUZwdkcsQ0l2RnF2RyxDQUFDLENBQUMsQUp1Rm52R0QsQ0l2Rm92RyxDQUFDLEFKdUYvdUc2RCxDSXZGZ3ZHLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp1RnJ1RzdELENJdkZzdUcsQ0FBQyxBSnVGanVHNkQsQ0l2Rmt1RyxDQUFDLENBQUMsQ0FBQyxBSnVGcnVHQSxDSXZGc3VHLENBQUMsQ0FBQyxDQUFDLEFKdUYzc0csQ0l2RjRzRyxBSndGeHdHeEIsQ0l4Rnl3RyxDQUFDLEFKd0Zsd0cwQixDSXhGbXdHLENBQUMsQUp5RjV3RyxDSXpGNndHLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowRmx4RyxDSTFGbXhHLEFKK0ZweEcsQ0kvRnF4RyxDQUFDLENBQUMsQUorRm54RzFCLENJL0ZveEcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorRi93RzJCLENJL0ZneEcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKZ0d6eUcsQ0loRzB5RyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnR3p5RzNCLENJaEcweUcsQUprR2x6RyxDSWxHbXpHLEFKb0duekcsQ0lwR296RyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcUd2ekd1QixDSXJHd3pHLENBQUMsQUpxRzd5R0EsQ0lyRzh5RyxDQUFDLENBQUMsQUpxR255RyxDSXJHb3lHLEFKcUdweUcsQ0lyR3F5RyxDQUFDLENBQUMsQUpzR3R6R0ssQ0l0R3V6RyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpzR3B6R3hGLENJdEdxekcsQ0FBQyxBSnNHeHlHWCxDSXRHeXlHLENBQUMsQ0FBQyxBSnVHcDFHc0YsQ0l2R3ExRyxDQUFDLEFKdUd4MEdmLENJdkd5MEcsQ0FBQyxBSnVHbjBHdkUsQ0l2R28wRyxDQUFDLEFKdUc5ekc4RSxDSXZHK3pHLENBQUMsQUp1R3R6R2dCLENJdkd1ekcsQ0FBQyxDQUFDLEFKNEd0MEcsQ0k1R3UwRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRHdjJHdkIsQ0k1R3cyRyxDQUFDLEFKNEduMkd5QixDSTVHbzJHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjZHejNHSSxDSTdHMDNHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2R3ozRyxDSTdHMDNHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4Rzk0RyxDSTlHKzRHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhHOTRHN0IsQ0k5Rys0RyxBSitHdDVHLENJL0d1NUcsQ0FBQyxBSm1IMTVHLENJbkgyNUcsQUppSHo1RyxDSWpIMDVHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmlIeDVHOEIsQ0lqSHk1RyxDQUFDLENBQUMsQUprSG42RyxDSWxIbzZHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmtIbjZHQSxDSWxIbzZHLEFKbUgzNkcsQ0luSDQ2RyxBSm9INzZHLENJcEg4NkcsQ0FBQyxBSnNILzZHdEMsQ0l0SGc3RyxDQUFDLEFKc0gxNkc1QixDSXRIMjZHLENBQUMsQ0FBQyxBSnNIcDZHLENJdEhxNkcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKc0g1NkduQyxDSXRINjZHLENBQUMsQUpzSHY2R3FDLENJdEh3NkcsQ0FBQyxDQUFDLEFKdUhqOEcsQ0l2SGs4RyxDQUFDLENBQUMsQ0FBQyxBSnVIaDhHQSxDSXZIaThHLENBQUMsQUp3SHQ4RyxDSXhIdThHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd0h0OEc2RCxDSXhIdThHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlIcjlHLENJekhzOUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKOEg5bEgsQ0k5SCtsSCxDQUFDLENBQUMsQ0FBQyxBSjhIOWxISSxDSTlIK2xILENBQUMsQUorSHBtSCxDSS9IcW1ILENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKK0hubUhqRSxDSS9Ib21ILENBQUMsQUorSDFsSGtFLENJL0gybEgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnSXRuSCxDSWhJdW5ILENBQUMsQ0FBQyxDQUFDLENBQUMsQUhBbG1ILENHQW1tSCxDQUFDLEFKaUk3bkgsQ0lqSThuSCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFIRS9sSCxDR0ZnbUgsQ0FBQyxDQUFDLEFKa0lyb0gsQ0lsSXNvSCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFIQ2huSCxDR0RpbkgsQ0FBQyxBSm1JM29IRCxDSW5JNG9ILENBQUMsQ0FBQyxBSm1JcG9ILENJbklxb0gsQ0FBQyxBSm9JaHBILENJcElpcEgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcUl2cEgsQ0lySXdwSCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKc0k5cEhBLENJdEkrcEgsQ0FBQyxDQUFDLEFKc0l2cEgsQ0l0SXdwSCxDQUFDLEFKeUlycUgsQ0l6SXNxSCxDQUFDLENBQUMsQ0FBQyxBSnlJcHFIQSxDSXpJcXFILENBQUMsQUp5STdwSCxDSXpJOHBILEFKMEkzcUgsQ0kxSTRxSCxDQUFDLENBQUMsQ0FBQyxBSjBJM3FIRSxDSTFJNHFILENBQUMsQUowSTdwSHpHLENJMUk4cEgsQ0FBQyxBSjBJaHBIQyxDSTFJaXBILENBQUMsQ0FBQyxBSjJJdHJILENJM0l1ckgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMkl0ckgsQ0kzSXVySCxDQUFDLENBQUMsQ0FBQyxBSjJJdHJIa0csQ0kzSXVySCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0SXRzSDdELENJNUl1c0gsQ0FBQyxBSjRJOXJILENJNUkrckgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNEk5ckhtRSxDSTVJK3JILENBQUMsQUo0SW5ySCxDSTVJb3JILENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0SW5ySG5FLENJNUlvckgsQ0FBQyxBSjZJanpILENJN0lrekgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhJdnpILENJOUl3ekgsQUpnSnB6SHdDLENJaEpxekgsQ0FBQyxDQUFDLEFKZ0o5eUhBLENJaEoreUgsQ0FBQyxBSmdKeHlIN0UsQ0loSnl5SCxDQUFDLEFKZ0pueUhxQyxDSWhKb3lILENBQUMsQUppSmwwSCxDSWpKbTBILENBQUMsQUptSnAwSDBCLENJbkpxMEgsQ0FBQyxBSm1KL3pIVyxDSW5KZzBILENBQUMsQ0FBQyxDQUFDLEFKbUoxekgsQ0luSjJ6SCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptSm4wSDFFLENJbkpvMEgsQ0FBQyxDQUFDLEFKb0pyMUgsQ0lwSnMxSCxDQUFDLENBQUMsQ0FBQyxBSm9KbjFIQyxDSXBKbzFILENBQUMsQUpvSjUwSEQsQ0lwSjYwSCxDQUFDLEFKb0p2MUhDLENJcEp3MUgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndKbDJILENJeEptMkgsQ0FBQyxDQUFDLEFKc0pyMkhrRixDSXRKczJILENBQUMsQ0FBQyxBSnNKejFILENJdEowMUgsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3SmwySHNCLENJeEptMkgsQ0FBQyxDQUFDLENBQUMsQUp3Si8ySHhHLENJeEpnM0gsQ0FBQyxBSnlKcDNILENJekpxM0gsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeUpwM0gsQ0l6SnEzSCxDQUFDLENBQUMsQ0FBQyxBSnlKcDNIaUcsQ0l6SnEzSCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowSm40SCxDSTFKbzRILENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0SmpoSS9DLENJNUpraEksQ0FBQyxBSjRKcGdJbkQsQ0k1SnFnSSxDQUFDLENBQUMsQUo0SmpnSSxDSTVKa2dJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNkp0aElXLENJN0p1aEksQ0FBQyxBSjZKMWdJWCxDSTdKMmdJLENBQUMsQ0FBQyxDQUFDLEFKK0ozaElDLENJL0o0aEksQ0FBQyxDQUFDLEFKK0p0aEksQ0kvSnVoSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorSnBpSUEsQ0kvSnFpSSxDQUFDLENBQUMsQUorSnhnSSxDSS9KeWdJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorSmppSUEsQ0kvSmtpSSxDQUFDLEFKK0pqaEksQ0kvSmtoSSxBSmdLcmtJLENJaEtza0ksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmdLdGpJd0csQ0loS3VqSSxDQUFDLENBQUMsQ0FBQyxBSmdLN2tJeEcsQ0loSzhrSSxDQUFDLEFKZ0sza0k0QixDSWhLNGtJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKZ0szaUk0RSxDSWhLNGlJLENBQUMsQ0FBQyxDQUFDLEFKZ0s3akl4RyxDSWhLOGpJLENBQUMsQUpnSzNqSW1DLENJaEs0akksQ0FBQyxDQUFDLENBQUMsQUppS3RtSSxDSWpLdW1JLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmlLbG1JLENJakttbUksQ0FBQyxDQUFDLENBQUMsQUppS3RtSThELENJakt1bUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa0tybkksQ0lsS3NuSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmtLcm5JakcsQ0lsS3NuSSxDQUFDLEFKa0tscUksQ0lsS21xSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvSzl0SUYsQ0lwSyt0SSxDQUFDLEFKb0tqdElDLENJcEtrdEksQ0FBQyxDQUFDLEFKb0s5c0ksQ0lwSytzSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvSzlzSW1ELENJcEsrc0ksQ0FBQyxBSm9LanNJbEQsQ0lwS2tzSSxDQUFDLENBQUMsQUprSzF2SSxDSWxLMnZJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxSzV2SUYsQ0lySzZ2SSxDQUFDLEFKcUsvdUlDLENJcktndkksQ0FBQyxDQUFDLEFKa0t0eEksQ0lsS3V4SSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnVLdDJJVyxDSXZLdTJJLENBQUMsQUp1SzExSVgsQ0l2SzIxSSxDQUFDLENBQUMsQ0FBQyxBSjJLdDNJLENJM0t1M0ksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMktsM0ksQ0kzS20zSSxDQUFDLENBQUMsQ0FBQyxBSjJLdDNJa0csQ0kzS3UzSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0S3I0SSxDSTVLczRJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2Sy82SVEsQ0k3S2c3SSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2Sy82SUMsQ0k3S2c3SSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNksvNkkxRyxDSTdLZzdJLENBQUMsQ0FBQyxBSjZLMTZJLENJN0syNkksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjZLeDZJQSxDSTdLeTZJLENBQUMsQ0FBQyxBSitLLzhJLENJL0tnOUksQUppTGg5SSxDSWpMaTlJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprTHo4SXdHLENJbEwwOEksQ0FBQyxDQUFDLENBQUMsQUprTDM5SXpHLENJbEw0OUksQ0FBQyxBSmtMdjlJNEcsQ0lsTHc5SSxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbUw5OEksQ0luTCs4SSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm1MOStJNUcsQ0luTCsrSSxDQUFDLEFKbUwxK0k0RyxDSW5MMitJLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvTHgrSSxDSXBMeStJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvTHRnSjVHLENJcEx1Z0osQ0FBQyxBSm9MbGdKNEcsQ0lwTG1nSixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFMcGhKLENJckxxaEosQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxTG5oSjVHLENJckxvaEosQ0FBQyxDQUFDLEFKdUx0aUosQ0l2THVpSixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnVMdGlKa0csQ0l2THVpSixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3THJqSixDSXhMc2pKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeUwzbkpsRyxDSXpMNG5KLENBQUMsQUp5THZuSjRHLENJekx3bkosQ0FBQyxDQUFDLENBQUMsQUp5TDNtSixDSXpMNG1KLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowTGxySnpELENJMUxtckosQ0FBQyxBSjBMcnFKbkQsQ0kxTHNxSixDQUFDLENBQUMsQUowTGxxSixDSTFMbXFKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMkx2ckpXLENJM0x3ckosQ0FBQyxBSjJMM3FKWCxDSTNMNHFKLENBQUMsQ0FBQyxDQUFDLEFKK0x2c0osQ0kvTHdzSixDQUFDLENBQUMsQUorTGpySixDSS9Ma3JKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorTGh0SkEsQ0kvTGl0SixDQUFDLEFKK0w1c0pDLENJL0w2c0osQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmdNanVKLENJaE1rdUosQ0FBQyxDQUFDLENBQUMsQUpnTWh1SixDSWhNaXVKLENBQUMsQ0FBQyxDQUFDLEFKZ005dEo0RyxDSWhNK3RKLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnTTV0SjdHLENJaE02dEosQ0FBQyxBSmdNeHRKb0QsQ0loTXl0SixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUppTXJ2SixDSWpNc3ZKLENBQUMsQ0FBQyxBSmtNNXVKLENJbE02dUosQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa003dkp5RCxDSWxNOHZKLENBQUMsQUprTTN2SixDSWxNNHZKLENBQUMsQ0FBQyxDQUFDLEFKbU14dkosQ0luTXl2SixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptTXp3SkEsQ0luTTB3SixDQUFDLEFKbU12d0osQ0luTXd3SixDQUFDLENBQUMsQ0FBQyxBSm9NcHZKLENJcE1xdkosQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvTTN4SjdHLENJcE00eEosQ0FBQyxBSm9NdnhKb0QsQ0lwTXd4SixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvTXZ4SnlELENJcE13eEosQ0FBQyxDQUFDLENBQUMsQUpxTTF4SixDSXJNMnhKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFNcHpKN0csQ0lyTXF6SixDQUFDLEFKcU1oekpvRCxDSXJNaXpKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFNaHpKeUQsQ0lyTWl6SixDQUFDLENBQUMsQUp1TS96SixDSXZNZzBKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnVNL3pKLENJdk1nMEosQ0FBQyxDQUFDLENBQUMsQUp1TS96SlgsQ0l2TWcwSixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3TTkwSixDSXhNKzBKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3TS8wSlcsQ0l4TWcxSixDQUFDLEFKd01qMkosQ0l4TWsySixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlNajRKN0csQ0l6TWs0SixDQUFDLEFKeU03M0pvRCxDSXpNODNKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlNNzNKeUQsQ0l6TTgzSixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKME03NkoxRCxDSTFNODZKLENBQUMsQUowTWg2Sm5ELENJMU1pNkosQ0FBQyxDQUFDLEFKMk0zNkpXLENJM000NkosQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyTWw3SkEsQ0kzTW03SixDQUFDLEFKMk10NkpYLENJM011NkosQ0FBQyxDQUFDLENBQUMsQUprTnA4SixDSWxOcThKLENBQUMsQ0FBQyxBSmtOOTZKLENJbE4rNkosQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprTi84SkEsQ0lsTmc5SixDQUFDLEFKa04zOEpDLENJbE40OEosQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa04zN0pELENJbE40N0osQ0FBQyxBSmtOdjdKQyxDSWxOdzdKLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprTnY3SjZHLENJbE53N0osQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprTnQ3SixDSWxOdTdKLEFKbU5uL0osQ0luTm8vSixDQUFDLENBQUMsQUpvTjE5SixDSXBOMjlKLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9OOS9KOUcsQ0lwTisvSixDQUFDLEFKb04xL0pDLENJcE4yL0osQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9OMS9KRSxDSXBOMi9KLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcU5saEtzRixDSXJObWhLLENBQUMsQ0FBQyxDQUFDLEFKc05yaEtBLENJdE5zaEssQ0FBQyxBSnNOdGdLRyxDSXROdWdLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpzTnRnS21CLENJdE51Z0ssQ0FBQyxDQUFDLENBQUMsQUpzTnRnSy9HLENJdE51Z0ssQ0FBQyxBSnNObGdLQyxDSXRObWdLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnVOampLLENJdk5rakssQUp3Tm5qSyxDSXhOb2pLLENBQUMsQ0FBQyxDQUFDLEFKd05qaksrRyxDSXhOa2pLLENBQUMsQUp5TnhqSyxDSXpOeWpLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowTmxwSyxDSTFObXBLLENBQUMsQ0FBQyxDQUFDLEFKMk5ycEssQ0kzTnNwSyxDQUFDLENBQUMsQ0FBQyxBSjJObnBLQyxDSTNOb3BLLENBQUMsQUoyTnpvS2pILENJM04wb0ssQ0FBQyxBSjJOcm9LQyxDSTNOc29LLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNE5wcUt3RixDSTVOcXFLLENBQUMsQUo0TnJwS0csQ0k1TnNwSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNE5ycEtzQixDSTVOc3BLLENBQUMsQ0FBQyxDQUFDLEFKNE5ycEtsSCxDSTVOc3BLLENBQUMsQUo0TmpwS0MsQ0k1TmtwSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0TmpwSyxDSTVOa3BLLENBQUMsQ0FBQyxBSjZObnNLc0IsQ0k3Tm9zSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNk5uc0tDLENJN05vc0ssQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhOL3NLd0YsQ0k5Tmd0SyxDQUFDLEFKOE4zcUtqSCxDSTlONHFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKOE43c0tBLENJOU44c0ssQ0FBQyxBSjhOaHNLa0gsQ0k5TmlzSyxDQUFDLENBQUMsQUpvTzF2SyxDSXBPMnZLLEFKZ096dkssQ0loTzB2SyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnT3h2S2hCLENJaE95dkssQ0FBQyxDQUFDLEFKaU9ud0sxRSxDSWpPb3dLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUppT253S0MsQ0lqT293SyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa08vd0t3RixDSWxPZ3hLLENBQUMsQUprTzd3SyxDSWxPOHdLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvT2oxSyxDSXBPazFLLEFKcU9uMUssQ0lyT28xSyxBSnVPcDFLLENJdk9xMUssQ0FBQyxDQUFDLENBQUMsQUp1T3AxS0csQ0l2T3ExSyxDQUFDLEFKdU83MEtuSCxDSXZPODBLLENBQUMsQUp1T3owS29ELENJdk8wMEssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd085MUtwRCxDSXhPKzFLLENBQUMsQUp3TzExS0MsQ0l4TzIxSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd08zMUttSCxDSXhPNDFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlPcDNLRCxDSXpPcTNLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUZPNTJLRSxDRVA2MkssQ0FBQyxBRk96MktqRSxDRVAwMkssQ0FBQyxDQUFDLEFGUXY0SyxDRVJ3NEssQ0FBQyxDQUFDLENBQUMsQUZRdDRLLENFUnU0SyxDQUFDLENBQUMsQ0FBQyxBRlF0NEtrRSxDRVJ1NEssQ0FBQyxDQUFDLENBQUMsQ0FBQyxBRlF0NEtsRSxDRVJ1NEssQ0FBQyxBRlFqNEtpRSxDRVJrNEssQ0FBQyxBRlEvM0tDLENFUmc0SyxDQUFDLENBQUMsQUZRNzNLbEUsQ0VSODNLLENBQUMsQUZRejNLa0UsQ0VSMDNLLENBQUMsQ0FBQyxBRlNoNkssQ0VUaTZLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFGUzE0S0QsQ0VUMjRLLEFGVXo2SyxDRVYwNkssQUp5Tzc1S0UsQ0l6Tzg1SyxBSnlPdjVLLENJek93NUssQUp5T3g1SyxDSXpPeTVLLENBQUMsQUp5T3Q1S0osQ0l6T3U1SyxDQUFDLENBQUMsQ0FBQyxBSjBPaDZLUCxDSTFPaTZLLENBQUMsQ0FBQyxDQUFDLEFOdUIvNkssQ012Qmc3SyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQU53Qjk3S1ksQ014Qis3SyxDQUFDLEFOeUJoOEtMLENNekJpOEssQ0FBQyxBTjBCbDhLTSxDTTFCbThLLENBQUMsQU4yQnA4S2pCLENNM0JxOEssQ0FBQyxBTjRCdDhLa0IsQ001QnU4SyxDQUFDLENBQUMsQU44Qno4S2pFLENNOUIwOEssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQU44Qno4S2tFLENNOUIwOEssQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTjhCejhLSCxDTTlCMDhLLENBQUMsQ0FBQyxBTjhCajhLMUYsQ005Qms4SyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFOOEJqOEssQ005Qms4SyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQU44QjE4SzhGLENNOUIyOEssQ0FBQyxDQUFDLEFOK0IzK0ssQ00vQjQrSyxDQUFDLENBQUMsQ0FBQyxBTitCMytLckQsQ00vQjQrSyxDQUFDLEFOZ0NqL0ssQ01oQ2svSyxDQUFDLENBQUMsQ0FBQyxBTmlDcC9LQSxDTWpDcS9LLENBQUMsQU5pQzkrS2lELENNakMrK0ssQ0FBQyxBTmlDdCtLSSxDTWpDdStLLENBQUMsQ0FBQyxBTmtDMS9LVCxDTWxDMi9LLENBQUMsQU5tQzUvS1MsQ01uQzYvSyxDQUFDLEFOb0M5L0twQixDTXBDKy9LLENBQUMsQUpnUGhnTCxDSWhQaWdMLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFOc0N2Z0wsQ010Q3dnTCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFOQW4vSyxDTUFvL0ssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTjJDN2pMLENNM0M4akwsQU55QzVqTCxDTXpDNmpMLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTnlDM2pMSCxDTXpDNGpMLENBQUMsQ0FBQyxBTjBDdGtMOUIsQ00xQ3VrTCxDQUFDLEFOMENoa0w4QixDTTFDaWtMLEFOMkMxa0wsQ00zQzJrTCxBTjRDdmtMOUIsQ001Q3drTCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFONENqa0xBLENNNUNra0wsQ0FBQyxBTjRDN2pMc0QsQ001QzhqTCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFONEM3akxoSSxDTTVDOGpMLENBQUMsQ0FBQyxDQUFDLENBQUMsQU42Q2ptTEEsQ003Q2ttTCxDQUFDLEFONkNobEwwRSxDTTdDaWxMLENBQUMsQU42QzVrTHNELENNN0M2a0wsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQU42QzNrTCxDTTdDNGtMLENBQUMsQU44Q2puTHRHLENNOUNrbkwsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTjhDam5MZ0QsQ005Q2tuTCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQU4rQ3ZuTEEsQ00vQ3duTCxDQUFDLEFOK0NubkxzRCxDTS9Db25MLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTmdENXBMSCxDTWhENnBMLENBQUMsQ0FBQyxBTmdEdnBMLENNaER3cEwsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBTmdEbnBMQSxDTWhEb3BMLENBQUMsQ0FBQyxDQUFDLENBQUMsQU5nRHZvTCxDTWhEd29MLENBQUMsQ0FBQyxDQUFDLENBQUMsQU5vRG5yTCxDTXBEb3JMLENBQUMsQU5xRHRyTCxDTXJEdXJMLEFKNk9wckxJLENJN09xckwsQUo4T3ByTDlILENJOU9xckwsQ0FBQyxBSjhPaHJMQyxDSTlPaXJMLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4T2hyTDZHLENJOU9pckwsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorT3JzTEssQ0kvT3NzTCxDQUFDLEFKZ1B2c0wsQ0loUHdzTCxDQUFDLEFKaVB6c0xwSCxDSWpQMHNMLENBQUMsQUppUDVyTEMsQ0lqUDZyTCxDQUFDLENBQUMsQUprUDlzTCxDSWxQK3NMLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprUG50TCxDSWxQb3RMLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa1AxdExXLENJbFAydEwsQ0FBQyxBSmtQOXNMWCxDSWxQK3NMLENBQUMsQUprUDFzTCxDSWxQMnNMLENBQUMsQUpvUHh1TCxDSXBQeXVMLEFKc1BydUxvRixDSXRQc3VMLENBQUMsQ0FBQyxBSnNQenRMQSxDSXRQMHRMLENBQUMsQUpzUDdzTHBGLENJdFA4c0wsQ0FBQyxBSnVQanZMLENJdlBrdkwsQ0FBQyxBSnlQbnZMLENJelBvdkwsQ0FBQyxDQUFDLENBQUMsQUowUG52TCtILENJMVBvdkwsQ0FBQyxBSnlQcnZMQyxDSXpQc3ZMLENBQUMsQUp5UHp1TCxDSXpQMHVMLENBQUMsQUoyUDd2TGpFLENJM1A4dkwsQ0FBQyxBSjJQeHZMaUIsQ0kzUHl2TCxDQUFDLENBQUMsQ0FBQyxBSjJQanZMLENJM1BrdkwsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMlAxdkxoRixDSTNQMnZMLENBQUMsQ0FBQyxBSjRQMXdMK0UsQ0k1UDJ3TCxDQUFDLENBQUMsQUo2UGh4TEEsQ0k3UGl4TCxDQUFDLEFKNlB4d0wvRSxDSTdQeXdMLENBQUMsQ0FBQyxBSitQdHhMbUYsQ0kvUHV4TCxDQUFDLENBQUMsQUorUDF3TCxDSS9QMndMLENBQUMsQUppUTN4TCxDSWpRNHhMLENBQUMsQ0FBQyxDQUFDLEFKaVF6eEw4QyxDSWpRMHhMLENBQUMsQUppUTN3TGpJLENJalE0d0wsQ0FBQyxBSmlReHdMK0YsQ0lqUXl3TCxDQUFDLENBQUMsQ0FBQyxBSndRdnlMLENJeFF3eUwsQ0FBQyxDQUFDLEFKa1F0eUxrQyxDSWxRdXlMLENBQUMsQ0FBQyxDQUFDLEFKa1F4eExGLENJbFF5eEwsQ0FBQyxBSm1RL3lMQyxDSW5RZ3pMLENBQUMsQ0FBQyxDQUFDLEFKcVFuekxBLENJclFvekwsQ0FBQyxBSnFRdnlMLENJclF3eUwsQ0FBQyxBSndRcHpMQSxDSXhRcXpMLENBQUMsQ0FBQyxBSndReHlMLENJeFF5eUwsQ0FBQyxDQUFDLEFKeVE3ekwsQ0l6UTh6TCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5UTd6TCxDSXpROHpMLENBQUMsQ0FBQyxDQUFDLEFKeVE3ekw5QixDSXpROHpMLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjBRNTBMLENJMVE2MEwsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjJRNTRMbkcsQ0kzUTY0TCxDQUFDLEFKNFEvOExDLENJNVFnOUwsQ0FBQyxDQUFDLENBQUMsQUppUnY5TCtILENJalJ3OUwsQ0FBQyxBSmlSdDhMRSxDSWpSdThMLEFKa1IzOUwsQ0lsUjQ5TCxDQUFDLEFKb1I3OUxsRSxDSXBSODlMLENBQUMsQUpvUng5THlCLENJcFJ5OUwsQ0FBQyxDQUFDLENBQUMsQUpvUm45TCxDSXBSbzlMLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9SMzlMMEMsQ0lwUjQ5TCxDQUFDLEFKb1J2OUxDLENJcFJ3OUwsQ0FBQyxBSm9SbDlMbEksQ0lwUm05TCxDQUFDLENBQUMsQUpxUmwvTCxDSXJSbS9MLENBQUMsQ0FBQyxDQUFDLEFKcVJqL0xpSSxDSXJSay9MLENBQUMsQ0FBQyxDQUFDLEFKcVI1K0wvQyxDSXJSNitMLENBQUMsQUpzUjMvTCxDSXRSNC9MLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnNSdi9MLENJdFJ3L0wsQ0FBQyxDQUFDLENBQUMsQUpzUjMvTGUsQ0l0UjQvTCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpzUjMvTCxDSXRSNC9MLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeVJ6ak1YLENJelIwak0sQ0FBQyxDQUFDLEFKeVJuak1BLENJelJvak0sQ0FBQyxBSnlSN2lNMkMsQ0l6UjhpTSxDQUFDLEFKeVJ6aU1DLENJelIwaU0sQ0FBQyxBSnlScGlNbEksQ0l6UnFpTSxDQUFDLEFKMFJ6a00sQ0kxUjBrTSxDQUFDLEFKZ1Mza00sQ0loUzRrTSxDQUFDLENBQUMsQ0FBQyxBSmdTemtNdUIsQ0loUzBrTSxDQUFDLEFKZ1Nwa00sQ0loU3FrTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnUzVrTTRHLENJaFM2a00sQ0FBQyxBSmdTcGtNUCxDSWhTcWtNLENBQUMsQ0FBQyxBSmdTMWpNLENJaFMyak0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKZ1Noa00sQ0loU2lrTSxBSmlTcm1NUSxDSWpTc21NLENBQUMsQ0FBQyxDQUFDLEFKaVN0bU1BLENJalN1bU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmtTbm5NLENJbFNvbk0sQ0FBQyxDQUFDLENBQUMsQUprU2puTXhCLENJbFNrbk0sQ0FBQyxBSmtTN21NLENJbFM4bU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa1MzbU11QixDSWxTNG1NLENBQUMsQUprU2xtTVAsQ0lsU21tTSxDQUFDLEFKbVMvbk1oQyxDSW5TZ29NLENBQUMsQ0FBQyxBSm1TbG5NQSxDSW5TbW5NLENBQUMsQUptU3ZtTXlDLENJblN3bU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm1Tdm1NekIsQ0luU3dtTSxDQUFDLENBQUMsQUptU25tTSxDSW5Tb21NLENBQUMsQ0FBQyxDQUFDLEFKb1N0cE1oQixDSXBTdXBNLENBQUMsQUpvUzNvTTlFLENJcFM0b00sQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9TM29NOEYsQ0lwUzRvTSxDQUFDLENBQUMsQUpxU2hxTXRGLENJclNpcU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFTaHFNQyxDSXJTaXFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxU2pxTSxDSXJTa3FNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxU2hxTTRHLENJclNpcU0sQ0FBQyxBSnFTdm9NUCxDSXJTd29NLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcVMxcE1BLENJclMycE0sQ0FBQyxDQUFDLEFKdVN4dE0sQ0l2U3l0TSxDQUFDLEFKd1MxdE1YLENJeFMydE0sQ0FBQyxDQUFDLENBQUMsQUp3UzN0TUEsQ0l4UzR0TSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeVN4dU0sQ0l6U3l1TSxDQUFDLENBQUMsQ0FBQyxBSnlTdHVNTCxDSXpTdXVNLENBQUMsQUp5U2x1TSxDSXpTbXVNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlTaHVNdUIsQ0l6U2l1TSxDQUFDLEFKeVN2dE1QLENJelN3dE0sQ0FBQyxBSjBTcHZNaEMsQ0kxU3F2TSxDQUFDLENBQUMsQUowU3Z1TUEsQ0kxU3d1TSxDQUFDLEFKMFM1dE15QyxDSTFTNnRNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowUzV0TXpCLENJMVM2dE0sQ0FBQyxDQUFDLEFKMFN4dE0sQ0kxU3l0TSxDQUFDLENBQUMsQ0FBQyxBSjJTM3dNaEIsQ0kzUzR3TSxDQUFDLEFKMlNod005RSxDSTNTaXdNLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyU2h3TThGLENJM1Npd00sQ0FBQyxDQUFDLEFKNFNyeE10RixDSTVTc3hNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0U3J4TUMsQ0k1U3N4TSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRTcnhNNEcsQ0k1U3N4TSxDQUFDLEFKNFMvd00sQ0k1U2d4TSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNFMvd01QLENJNVNneE0sQ0FBQyxDQUFDLEFKOFM5ME0sQ0k5UyswTSxDQUFDLEFKK1NoMU0sQ0kvU2kxTSxDQUFDLEFKaVQ3ME1VLENJalQ4ME0sQ0FBQyxBSmlUeHpNLENJalR5ek0sQUprVHIxTUMsQ0lsVHMxTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUprVHAxTWhILENJbFRxMU0sQ0FBQyxBSmtUajFNLENJbFRrMU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmtUaDFNLENJbFRpMU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbVQ3M01pSCxDSW5UODNNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptVDUzTWpILENJblQ2M00sQ0FBQyxBSm1UejNNLENJblQwM00sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptVHgzTSxDSW5UeTNNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb1QxNk1xQyxDSXBUMjZNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9UejZNckMsQ0lwVDA2TSxDQUFDLEFKb1R0Nk0sQ0lwVHU2TSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb1RyNk0sQ0lwVHM2TSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKdVR4OU1rSCxDSXZUeTlNLENBQUMsQUp1VHg4TWpGLENJdlR5OE0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp1VHg4TWtGLENJdlR5OE0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp1VHg4TSxDSXZUeThNLEFKdVR2OE0sQ0l2VHc4TSxDQUFDLEFKdVR2OE1KLENJdlR3OE0sQ0FBQyxDQUFDLEFKeVRwL014RSxDSXpUcS9NLENBQUMsQUp5VDkrTS9ELENJelQrK00sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeVQ1K00sQ0l6VDYrTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5VHIvTUEsQ0l6VHMvTSxDQUFDLENBQUMsQUowVHZnTixDSTFUd2dOLENBQUMsQ0FBQyxDQUFDLEFKMFRyZ05vRCxDSTFUc2dOLENBQUMsQUowVC8vTXBELENJMVRnZ04sQ0FBQyxBSjBUMy9Nb0QsQ0kxVDQvTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyVHJoTixDSTNUc2hOLENBQUMsQ0FBQyxBSjRUeGdOLENJNVR5Z04sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0VDloTnBELENJNVQraE4sQ0FBQyxBSjRUMWhOQyxDSTVUMmhOLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjZUN2hOLENJN1Q4aE4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNlQ1aU5tRCxDSTdUNmlOLENBQUMsQ0FBQyxDQUFDLEFKOFQvaU4sQ0k5VGdqTixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhUOWlOQSxDSTlUK2lOLENBQUMsQ0FBQyxBSjhUeGlOLENJOVR5aU4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhUdmlOQSxDSTlUd2lOLENBQUMsQ0FBQyxBSitUN2tOLENJL1Q4a04sQUpnVS9rTixDSWhVZ2xOLENBQUMsQ0FBQyxDQUFDLEFKZ1U3a053RixDSWhVOGtOLENBQUMsQUpnVW5rTjVJLENJaFVva04sQ0FBQyxBSmdVL2pOb0QsQ0loVWdrTixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnVTdqTixDSWhVOGpOLEFKZ1U5ak4sQ0loVStqTixDQUFDLEFKaVVobU4sQ0lqVWltTixDQUFDLENBQUMsQ0FBQyxBSmlVL2xOLENJalVnbU4sQ0FBQyxDQUFDLENBQUMsQUppVS9sTmtFLENJalVnbU4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmlVL2xObEUsQ0lqVWdtTixDQUFDLEFKaVUxbE4sQ0lqVTJsTixBSmtVL21OLENJbFVnbk4sQ0FBQyxDQUFDLENBQUMsQUprVTdtTnlGLENJbFU4bU4sQ0FBQyxBSmtVM21OekYsQ0lsVTRtTixDQUFDLEFKa1V2bU5rRSxDSWxVd21OLENBQUMsQ0FBQyxBSm1VaG5OLENJblVpbk4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptVW5vTkEsQ0luVW9vTixDQUFDLEFKbVVubk50SCxDSW5Vb25OLENBQUMsQUptVS9tTm9CLENJblVnbk4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbVU3bU55SCxDSW5VOG1OLENBQUMsQUpvVXZvTixDSXBVd29OLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvVXhwTnZCLENJcFV5cE4sQ0FBQyxBSm9VMW9OdEgsQ0lwVTJvTixDQUFDLEFKb1V0b044SSxDSXBVdW9OLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb1Vwb05ELENJcFVxb04sQ0FBQyxBSnFVenFORCxDSXJVMHFOLENBQUMsQUpxVWxxTnRCLENJclVtcU4sQ0FBQyxDQUFDLEFKcVVocU51QixDSXJVaXFOLEFKc1Vyck4sQ0l0VXNyTixBSnVVdnJOLENJdlV3ck4sQUowVXhyTjdJLENJMVV5ck4sQ0FBQyxBSjBVcHJOK0ksQ0kxVXFyTixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjBVbHJOTCxDSTFVbXJOLENBQUMsQUoyVWxzTnJELENJM1Vtc04sQ0FBQyxDQUFDLEFKMlUzck5BLENJM1U0ck4sQ0FBQyxBSjJVcHJOckYsQ0kzVXFyTixDQUFDLEFKNFU5c04sQ0k1VStzTixDQUFDLEFKOFVodE4rRCxDSTlVaXROLENBQUMsQUo4VTFzTmEsQ0k5VTJzTixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhVeHNOLENJOVV5c04sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKOFVqdE41RSxDSTlVa3ROLENBQUMsQ0FBQyxBSitVcHVOLENJL1VxdU4sQ0FBQyxDQUFDLENBQUMsQUZZcHROd0QsQ0VacXROLENBQUMsQUorVWx1TnZELENJL1VtdU4sQ0FBQyxBSitVMXNORCxDSS9VMnNOLENBQUMsQUorVXR1TkMsQ0kvVXV1TixDQUFDLENBQUMsQ0FBQyxDQUFDLEFKK1U1dE5pQyxDSS9VNnROLENBQUMsQUorVW50TmxDLENJL1VvdE4sQ0FBQyxBSitVaHRObUMsQ0kvVWl0TixDQUFDLENBQUMsQUp1VzF2TixDSXZXMnZOLENBQUMsQ0FBQyxBSnVWenZObkMsQ0l2VjB2TixDQUFDLEFKdVZ0dk42QixDSXZWdXZOLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3Vm53TjdCLENJeFZvd04sQ0FBQyxBSndWaHdONkIsQ0l4Vml3TixDQUFDLENBQUMsQ0FBQyxBSndWenZOQyxDSXhWMHZOLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp3Vnp2TixDSXhWMHZOLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndWbHdOQyxDSXhWbXdOLENBQUMsQ0FBQyxBSnlWNXhOLENJelY2eE4sQ0FBQyxDQUFDLEFKeVYxd04sQ0l6VjJ3TixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKeVZyeU5BLENJelZzeU4sQ0FBQyxDQUFDLEFKeVZseE5BLENJelZteE4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlWbHdOMEUsQ0l6Vm13TixDQUFDLENBQUMsQ0FBQyxBSnlWcnhOMUUsQ0l6VnN4TixDQUFDLEFKeVZqeE45QixDSXpWa3hOLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5Vmx3TixDSXpWbXdOLEFKMFZ0ME4sQ0kxVnUwTixDQUFDLENBQUMsQ0FBQyxBSjBWcDBOMEgsQ0kxVnEwTixDQUFDLEFKMFYvek5sRSxDSTFWZzBOLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMFYvek5rRSxDSTFWZzBOLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowVi96TjVGLENJMVZnME4sQ0FBQyxDQUFDLEFKMFYzek55QyxDSTFWNHpOLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowVjN6TixDSTFWNHpOLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyVnIyTixDSTNWczJOLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMlZyMk4wQixDSTNWczJOLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRWcDNOLENJNVZxM04sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRWcDNOeUIsQ0k1VnEzTixDQUFDLEFKNFZoOE4sQ0k1Vmk4TixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2Vmo4TmhILENJN1ZrOE4sQ0FBQyxBSjZWcjdOWCxDSTdWczdOLENBQUMsQ0FBQyxBSitWaDlOLENJL1ZpOU4sQUpnV2w5TixDSWhXbTlOLENBQUMsQ0FBQyxBSm1XbDlOQSxDSW5XbTlOLENBQUMsQUptVy84TitGLENJbldnOU4sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbVdyOE5nQyxDSW5XczhOLENBQUMsQ0FBQyxDQUFDLEFKb1dqK05DLENJcFdrK04sQ0FBQyxBSm9XcjlOLENJcFdzOU4sQ0FBQyxDQUFDLEFKd1d0OU4sQ0l4V3U5TixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd1doL04vSCxDSXhXaS9OLENBQUMsQ0FBQyxDQUFDLEFKeVcxL055QyxDSXpXMi9OLENBQUMsQUp5VzcrTnpDLENJelc4K04sQ0FBQyxDQUFDLENBQUMsQUowV3YvTixDSTFXdy9OLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjBXdGdPQSxDSTFXdWdPLENBQUMsQ0FBQyxBSjJXaGdPLENJM1dpZ08sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMlcvZ09BLENJM1dnaE8sQ0FBQyxDQUFDLEFKNFd6Z08sQ0k1VzBnTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNFc3aE9BLENJNVc4aE8sQ0FBQyxDQUFDLEFKNldoaU8sQ0k3V2lpTyxBSm1YbGlPLENJblhtaU8sQ0FBQyxDQUFDLENBQUMsQUptWGxpTytJLENJblhtaU8sQ0FBQyxBSm1YcGhPL0csQ0luWHFoTyxDQUFDLEFKbVgxL05DLENJblgyL04sQ0FBQyxDQUFDLEFKb1g3aU8sQ0lwWDhpTyxDQUFDLENBQUMsQUpvWDFoTyxDSXBYMmhPLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvWGpqTzhHLENJcFhrak8sQ0FBQyxDQUFDLEFKb1g1aE90RyxDSXBYNmhPLENBQUMsQUpvWC9nT3pDLENJcFhnaE8sQ0FBQyxDQUFDLEFKc1hsak8sQ0l0WG1qTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnNYcmtPQSxDSXRYc2tPLENBQUMsQ0FBQyxBSnlYdGpPLENJelh1ak8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5WC9rTytJLENJelhnbE8sQ0FBQyxDQUFDLEFKMFhsbE90RyxDSTFYbWxPLENBQUMsQUowWHJrT3NHLENJMVhza08sQ0FBQyxDQUFDLENBQUMsQUo0WHhsT3pILENJNVh5bE8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRYeGxPMEgsQ0k1WHlsTyxDQUFDLENBQUMsQ0FBQyxBSjRYeGxPRCxDSTVYeWxPLENBQUMsQUo0WDNrTzlHLENJNVg0a08sQ0FBQyxBSjRYdmtPRSxDSTVYd2tPLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2WDdtT2IsQ0k3WDhtTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNlg3bU9nRCxDSTdYOG1PLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhYMW5PLENJOVgybk8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUorWHhzT3BCLENJL1h5c08sQ0FBQyxBSitYM3JPbkQsQ0kvWDRyTyxDQUFDLENBQUMsQUpnWXRzT1csQ0loWXVzTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmdZN3NPQSxDSWhZOHNPLENBQUMsQUpnWWpzT1gsQ0loWWtzTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbVludE8sQ0luWW90TyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm1ZdHVPQyxDSW5ZdXVPLENBQUMsQ0FBQyxBSm1ZNXNPLENJblk2c08sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptWS90T0EsQ0luWWd1TyxDQUFDLENBQUMsQUptWXJzTyxDSW5Zc3NPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbVl4dE9BLENJbll5dE8sQ0FBQyxDQUFDLEFKb1lsdk8sQ0lwWW12TyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9ZOXdPK0ksQ0lwWSt3TyxDQUFDLEFKNFl2d08sQ0k1WXd3TyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjRZdnhPL0ksQ0k1WXd4TyxDQUFDLENBQUMsQUo2WXh3TyxDSTdZeXdPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNllweU8rSSxDSTdZcXlPLENBQUMsQ0FBQyxBSjhZcnhPLENJOVlzeE8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4WWp6T0EsQ0k5WWt6TyxDQUFDLENBQUMsQUorWWx5TyxDSS9ZbXlPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKK1k5ek9BLENJL1krek8sQ0FBQyxBSmlaaDBPekgsQ0lqWmkwTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKaVpoME9nRCxDSWpaaTBPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmtaNzBPLENJbFo4ME8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbVo3NU9wQixDSW5aODVPLENBQUMsQUptWmg1T25ELENJblppNU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpvWmw2T1csQ0lwWm02TyxDQUFDLEFKb1p0NU9YLENJcFp1NU8sQ0FBQyxDQUFDLENBQUMsQUpzWjk1TyxDSXRaKzVPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKc1o5Nk9DLENJdForNk8sQ0FBQyxDQUFDLEFKc1o5NE8sQ0l0Wis0TyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnNadjZPK0ksQ0l0Wnc2TyxDQUFDLEFKdVpwOE96SCxDSXZacThPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp1WnA4T2dELENJdlpxOE8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd1pqOU8sQ0l4Wms5TyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5WmxoUHBCLENJelptaFAsQ0FBQyxBSnlacmdQbkQsQ0l6WnNnUCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjBadmhQVyxDSTFad2hQLENBQUMsQUowWjNnUFgsQ0kxWjRnUCxDQUFDLENBQUMsQ0FBQyxBSjRabmhQLENJNVpvaFAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo0Wm5pUEMsQ0k1Wm9pUCxDQUFDLENBQUMsQUo0Wm5nUCxDSTVab2dQLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNFo1aFArSSxDSTVaNmhQLENBQUMsQ0FBQyxBSjZaMWpQekgsQ0k3WjJqUCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNloxalBnRCxDSTdaMmpQLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjhadmtQLENJOVp3a1AsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSitaam9QcEIsQ0kvWmtvUCxDQUFDLEFKK1pwblBuRCxDSS9acW5QLENBQUMsQ0FBQyxBSitaam5QLENJL1prblAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnYXRvUFcsQ0loYXVvUCxDQUFDLEFKZ2ExblBYLENJaGEyblAsQ0FBQyxDQUFDLENBQUMsQUpzWXJwUHVCLENJdFlzcFAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnNZcnBQZ0QsQ0l0WXNwUCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp1WWxxUCxDSXZZbXFQLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndZcnZQcEIsQ0l4WXN2UCxDQUFDLEFKd1l4dVBuRCxDSXhZeXVQLENBQUMsQ0FBQyxBSndZcnVQLENJeFlzdVAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5WTF2UFcsQ0l6WTJ2UCxDQUFDLEFKeVk5dVBYLENJelkrdVAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbWEvdlAsQ0luYWd3UCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUptYTl3UEMsQ0luYSt3UCxDQUFDLEFKbWFsd1AsQ0luYW13UCxBSm9hM3hQLENJcGE0eFAsQ0FBQyxDQUFDLENBQUMsQUpvYTN4UGlKLENJcGE0eFAsQ0FBQyxBSm9hbndQdkgsQ0lwYW93UCxDQUFDLEFKb2F0dlAzQixDSXBhdXZQLENBQUMsQ0FBQyxBSm9hbHZQcUUsQ0lwYW12UCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9hbHZQLENJcGFtdlAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2EzdlA4RSxDSXBhNHZQLENBQUMsQ0FBQyxBSm9hcnZQLENJcGFzdlAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxYS96UGxHLENJcmFnMFAsQ0FBQyxBSnFhaHlQbUcsQ0lyYWl5UCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcWFoeVBELENJcmFpeVAsQ0FBQyxBSnFheHhQLENJcmF5eFAsQ0FBQyxDQUFDLEFKdWF4MFBELENJdmF5MFAsQ0FBQyxBSnVhbHpQMUksQ0l2YW16UCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd2FyMVBlLENJeGFzMVAsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndhcjFQZ0QsQ0l4YXMxUCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5YWwyUCxDSXphbTJQLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUowYTU1UDJFLENJMWE2NVAsQ0FBQyxBSjBhdDRQMUUsQ0kxYXU0UCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMGF0NFAsQ0kxYXU0UCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyYXo2UCxDSTNhMDZQLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKNGEvN1ByQixDSTVhZzhQLENBQUMsQUo0YWw3UG5ELENJNWFtN1AsQ0FBQyxDQUFDLEFKNmE3N1BXLENJN2E4N1AsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo2YXA4UEEsQ0k3YXE4UCxDQUFDLEFKNmF4N1BYLENJN2F5N1AsQ0FBQyxDQUFDLEFKZ2JwOVAsQ0loYnE5UCxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKZ2JyOFAsQ0loYnM4UCxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnYnA5UEMsQ0loYnE5UCxDQUFDLENBQUMsQUpnYjk3UCxDSWhiKzdQLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpnYmw5UEEsQ0loYm05UCxDQUFDLENBQUMsQ0FBQyxBSmlibjhQLENJamJvOFAsQ0FBQyxDQUFDLENBQUMsQUppYmgvUDBCLENJamJpL1AsQ0FBQyxBSmlibitQM0IsQ0lqYm8rUCxDQUFDLENBQUMsQUppYi85UHNJLENJamJnK1AsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmliLzlQckksQ0lqYmcrUCxDQUFDLENBQUMsQ0FBQyxBSmticGdRc0IsQ0lsYnFnUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKa2JwZ1FnRCxDSWxicWdRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm1iamhRLENJbmJraFEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm1iamhRdEUsQ0luYmtoUSxDQUFDLEFKbWJya1EsQ0luYnNrUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSm9iN2pRLENJcGI4alEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2I1a1FBLENJcGI2a1EsQ0FBQyxBSm9iL2pRLENJcGJna1EsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKb2I3alEsQ0lwYjhqUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFiM25RLENJcmI0blEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKc2J0cFFrRCxDSXRidXBRLENBQUMsQUpzYnpvUW5ELENJdGIwb1EsQ0FBQyxDQUFDLEFKc2J0b1EsQ0l0YnVvUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnViM3BRVyxDSXZiNHBRLENBQUMsQUp1Yi9vUVgsQ0l2YmdwUSxDQUFDLENBQUMsQUoyYjVxUSxDSTNiNnFRLEFKaWM3cVEsQ0lqYzhxUSxDQUFDLENBQUMsQUo2YmhyUW1GLENJN2JpclEsQ0FBQyxDQUFDLEFKNmJwcVEsQ0k3YnFxUSxDQUFDLEFKK2JqclFSLENJL2JrclEsQ0FBQyxDQUFDLEFKK2J6cVFBLENJL2IwcVEsQ0FBQyxBSitianFRM0UsQ0kvYmtxUSxDQUFDLENBQUMsQUppY3RxUSxDSWpjdXFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmljL3JRQSxDSWpjZ3NRLENBQUMsQUppYzVyUTZCLENJamM2clEsQ0FBQyxDQUFDLENBQUMsQUptY3hzUSxDSW5jeXNRLENBQUMsQ0FBQyxDQUFDLEFKa2M1c1EsQ0lsYzZzUSxDQUFDLENBQUMsQ0FBQyxBSmtjMXNROEYsQ0lsYzJzUSxDQUFDLEFKa2Nyc1EsQ0lsY3NzUSxDQUFDLENBQUMsQUptYzVzUUwsQ0luYzZzUSxDQUFDLEFKbWMxc1EsQ0luYzJzUSxDQUFDLEFKbWN6c1FBLENJbmMwc1EsQ0FBQyxBSm1jdnNRdEgsQ0luY3dzUSxDQUFDLEFKbWNwc1E2QixDSW5jcXNRLENBQUMsQ0FBQyxDQUFDLEFKbWM3clFyQixDSW5jOHJRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbWM1clE4RyxDSW5jNnJRLENBQUMsQ0FBQyxDQUFDLEFKbWMzclEsQ0luYzRyUSxBSm9jNXVRLENJcGM2dVEsQ0FBQyxDQUFDLENBQUMsQUpvYzF1UXZGLENJcGMydVEsQ0FBQyxBSm9jcHVRL0IsQ0lwY3F1USxDQUFDLEFKb2NqdVE2QixDSXBja3VRLENBQUMsQ0FBQyxDQUFDLEFKb2MxdFF5RixDSXBjMnRRLENBQUMsQ0FBQyxBSnFjM3ZRLENJcmM0dlEsQ0FBQyxDQUFDLEFKcWN6dlF2RixDSXJjMHZRLENBQUMsQ0FBQyxBSnFjdHVRLENJcmN1dVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcWN6dlFBLENJcmMwdlEsQ0FBQyxBSnFjcnZROEUsQ0lyY3N2USxDQUFDLENBQUMsQ0FBQyxBSnFjN3dRLENJcmM4d1EsQUp1Yzl3USxDSXZjK3dRLENBQUMsQ0FBQyxDQUFDLEFKdWM1d1FBLENJdmM2d1EsQ0FBQyxBSnVjeHdROUUsQ0l2Y3l3USxDQUFDLEFKdWNwd1E4RSxDSXZjcXdRLENBQUMsQ0FBQyxDQUFDLEFKd2MxeFEsQ0l4YzJ4USxDQUFDLENBQUMsQ0FBQyxBSndjbndRLENJeGNvd1EsQ0FBQyxDQUFDLENBQUMsQUp3Yzl4UWMsQ0l4Yyt4USxDQUFDLEFKd2MzeFFXLENJeGM0eFEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSndjM3hRekIsQ0l4YzR4USxDQUFDLENBQUMsQUp3Y2p4USxDSXhja3hRLEFKeWMveVF0RixDSXpjZ3pRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5Yy95UWdELENJemNnelEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKMGM1elEsQ0kxYzZ6USxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUoyY2ozUXNDLENJM2NrM1EsQ0FBQyxBSjBjNTRRLENJMWM2NFEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSjZjOTlRMUQsQ0k3Yys5USxDQUFDLEFKNmNqOVFuRCxDSTdjazlRLENBQUMsQ0FBQyxBSjhjNTlRVyxDSTljNjlRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKOGNuK1FBLENJOWNvK1EsQ0FBQyxBSjhjdjlRWCxDSTljdzlRLENBQUMsQ0FBQyxDQUFDLEFKa2RsL1EsQ0lsZG0vUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKbWR4L1EsQ0luZHkvUSxBSnFkei9RMkgsQ0lyZDAvUSxDQUFDLEFKcWR0L1E1RyxDSXJkdS9RLENBQUMsQ0FBQyxDQUFDLENBQUMsQUpxZHQvUThGLENJcmR1L1EsQ0FBQyxBSnVjbGdSLENJdmNtZ1IsQUpzZHBnUixDSXRkcWdSLEFKeWR0Z1IsQ0l6ZHVnUixDQUFDLENBQUMsQUp5ZGovUSxDSXpkay9RLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlkM2dSN0csQ0l6ZDRnUixDQUFDLEFKeWR4Z1IrRixDSXpkeWdSLENBQUMsQ0FBQyxDQUFDLENBQUMsQUp5ZDE5USxDSXpkMjlRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnlkNS9RL0YsQ0l6ZDYvUSxDQUFDLEFKeWR6L1ErRixDSXpkMC9RLENBQUMsQ0FBQyxDQUFDLEFKeWQ3L1FzRCxDSXpkOC9RLENBQUMsQ0FBQyxDQUFDLEFKeWRwK1EsQ0l6ZHErUSxBSjRkdGlSLENJNWR1aVIsQ0FBQyxDQUFDLENBQUMsQUo0ZHBpUkMsQ0k1ZHFpUixDQUFDLEFKNGQ5aFJ0SixDSTVkK2hSLENBQUMsQUo0ZDNoUitGLENJNWQ0aFIsQ0FBQyxDQUFDLENBQUMsQUo0ZC9oUnNELENJNWRnaVIsQ0FBQyxDQUFDLENBQUMsQUo0ZG5pUmxILENJNWRvaVIsQ0FBQyxDQUFDLEFKNmR6alIsQ0k3ZDBqUixDQUFDLENBQUMsQUo2ZHhqUm1ILENJN2R5alIsQ0FBQyxBSjhkN2pSLENJOWQ4alIsQ0FBQyxDQUFDLENBQUMsQUo4ZDVqUixDSTlkNmpSLENBQUMsQ0FBQyxDQUFDLEFKOGQ1alJoQyxDSTlkNmpSLENBQUMsQUo4ZDFqUixDSTlkMmpSLENBQUMsQUo4ZHpqUkEsQ0k5ZDBqUixDQUFDLEFKOGR2alJnQyxDSTlkd2pSLENBQUMsQUo4ZG5qUjlJLENJOWRvalIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQUo4ZGxqUjhHLENJOWRtalIsQ0FBQyxDQUFDLEFKOGRoalIsQ0k5ZGlqUixDQUFDLEFKOGQvaVIsQ0k5ZGdqUixBSitkemxSLENJL2QwbFIsQ0FBQyxDQUFDLENBQUMsQUorZHZsUmlDLENJL2R3bFIsQ0FBQyxBSitkbGxSRCxDSS9kbWxSLENBQUMsQUorZDlrUmhDLENJL2Qra1IsQ0FBQyxDQUFDLEFKZ2VwbVIsQ0loZXFtUixDQUFDLENBQUMsQUpnZW5tUmlDLENJaGVvbVIsQ0FBQyxBSmdlam1SRixDSWhla21SLENBQUMsQ0FBQyxDQUFDLEFKaWU1bVIsQ0lqZTZtUixDQUFDLENBQUMsQ0FBQyxBSmllM21SLENJamU0bVIsQ0FBQyxDQUFDLENBQUMsQUppZTNtUkcsQ0lqZTRtUixDQUFDLEFKaWV6bVIsQ0lqZTBtUixDQUFDLEFKaWV4bVJBLENJamV5bVIsQ0FBQyxBSmlldG1SRCxDSWpldW1SLENBQUMsQUppZXBtUkYsQ0lqZXFtUixDQUFDLENBQUMsQ0FBQyxBSmllam1SN0ksQ0lqZWttUixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSmllaG1SZ0osQ0lqZWltUixDQUFDLENBQUMsQ0FBQyxBSm1lMW9SLENJbmUyb1IsQ0FBQyxDQUFDLENBQUMsQUZZL25SaEcsQ0VaZ29SLENBQUMsQUprZXBvUitGLENJbGVxb1IsQ0FBQyxBSmtlbG9SRixDSWxlbW9SLENBQUMsQ0FBQyxDQUFDLEFKa2UvblJHLENJbGVnb1IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBRmFocFJoRyxDRWJpcFIsQ0FBQyxBSm1lN29SLENJbmU4b1IsQUpvZTdwUixDSXBlOHBSLENBQUMsQ0FBQyxDQUFDLEFKb2UzcFJnRCxDSXBlNHBSLENBQUMsQUpvZTdvUnpHLENJcGU4b1IsQ0FBQyxBSm9laG9SQyxDSXBlaW9SLENBQUMsQ0FBQyxBSnFleHFSdUIsQ0lyZXlxUixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKcWV4cVJDLENJcmV5cVIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxBSnFlenFSLENJcmUwcVIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKc2VwclI4RixDSXRlcXJSLENBQUMsQUpzZXBxUmQsQ0l0ZXFxUixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKc2VyclJBLENJdGVzclIsQ0FBQyxBSnVldHpSLENJdmV1elIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEFKd2UvMFIsQ0l4ZWcxUixBSjJlbjFSLENJM2VvMVIsQUo2ZXQxUixDSTdldTFSLEFKOGV4MVIsQ0k5ZXkxUixBSitlMTFSLENJL2UyMVIsQURHMzFSaUQsQ0NINDFSLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM5aFMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBSZWFjdFByb3BUeXBlc1NlY3JldCA9ICdTRUNSRVRfRE9fTk9UX1BBU1NfVEhJU19PUl9ZT1VfV0lMTF9CRV9GSVJFRCc7XG5cbmxldCBsb2dnZWRUeXBlRmFpbHVyZXMgPSB7fTtcblxuLyoqXG4gKiBSZXNldCB0aGUgaGlzdG9yeSBvZiB3aGljaCBwcm9wIHR5cGUgd2FybmluZ3MgaGF2ZSBiZWVuIGxvZ2dlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc2V0UHJvcFdhcm5pbmdzKCkge1xuXHRsb2dnZWRUeXBlRmFpbHVyZXMgPSB7fTtcbn1cblxuLyoqXG4gKiBBc3NlcnQgdGhhdCB0aGUgdmFsdWVzIG1hdGNoIHdpdGggdGhlIHR5cGUgc3BlY3MuXG4gKiBFcnJvciBtZXNzYWdlcyBhcmUgbWVtb3JpemVkIGFuZCB3aWxsIG9ubHkgYmUgc2hvd24gb25jZS5cbiAqXG4gKiBBZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3Byb3AtdHlwZXMvYmxvYi9tYXN0ZXIvY2hlY2tQcm9wVHlwZXMuanNcbiAqXG4gKiBAcGFyYW0ge29iamVjdH0gdHlwZVNwZWNzIE1hcCBvZiBuYW1lIHRvIGEgUmVhY3RQcm9wVHlwZVxuICogQHBhcmFtIHtvYmplY3R9IHZhbHVlcyBSdW50aW1lIHZhbHVlcyB0aGF0IG5lZWQgdG8gYmUgdHlwZS1jaGVja2VkXG4gKiBAcGFyYW0ge3N0cmluZ30gbG9jYXRpb24gZS5nLiBcInByb3BcIiwgXCJjb250ZXh0XCIsIFwiY2hpbGQgY29udGV4dFwiXG4gKiBAcGFyYW0ge3N0cmluZ30gY29tcG9uZW50TmFtZSBOYW1lIG9mIHRoZSBjb21wb25lbnQgZm9yIGVycm9yIG1lc3NhZ2VzLlxuICogQHBhcmFtIHs/RnVuY3Rpb259IGdldFN0YWNrIFJldHVybnMgdGhlIGNvbXBvbmVudCBzdGFjay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrUHJvcFR5cGVzKFxuXHR0eXBlU3BlY3MsXG5cdHZhbHVlcyxcblx0bG9jYXRpb24sXG5cdGNvbXBvbmVudE5hbWUsXG5cdGdldFN0YWNrXG4pIHtcblx0T2JqZWN0LmtleXModHlwZVNwZWNzKS5mb3JFYWNoKHR5cGVTcGVjTmFtZSA9PiB7XG5cdFx0bGV0IGVycm9yO1xuXHRcdHRyeSB7XG5cdFx0XHRlcnJvciA9IHR5cGVTcGVjc1t0eXBlU3BlY05hbWVdKFxuXHRcdFx0XHR2YWx1ZXMsXG5cdFx0XHRcdHR5cGVTcGVjTmFtZSxcblx0XHRcdFx0Y29tcG9uZW50TmFtZSxcblx0XHRcdFx0bG9jYXRpb24sXG5cdFx0XHRcdG51bGwsXG5cdFx0XHRcdFJlYWN0UHJvcFR5cGVzU2VjcmV0XG5cdFx0XHQpO1xuXHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdGVycm9yID0gZTtcblx0XHR9XG5cdFx0aWYgKGVycm9yICYmICEoZXJyb3IubWVzc2FnZSBpbiBsb2dnZWRUeXBlRmFpbHVyZXMpKSB7XG5cdFx0XHRsb2dnZWRUeXBlRmFpbHVyZXNbZXJyb3IubWVzc2FnZV0gPSB0cnVlO1xuXHRcdFx0Y29uc29sZS5lcnJvcihcblx0XHRcdFx0YEZhaWxlZCAke2xvY2F0aW9ufSB0eXBlOiAke2Vycm9yLm1lc3NhZ2V9JHtcblx0XHRcdFx0XHQoZ2V0U3RhY2sgJiYgYFxcbiR7Z2V0U3RhY2soKX1gKSB8fCAnJ1xuXHRcdFx0XHR9YFxuXHRcdFx0KTtcblx0XHR9XG5cdH0pO1xufVxuIiwiaW1wb3J0IHsgb3B0aW9ucywgRnJhZ21lbnQgfSBmcm9tICdwcmVhY3QnO1xuXG4vKipcbiAqIEdldCBodW1hbiByZWFkYWJsZSBuYW1lIG9mIHRoZSBjb21wb25lbnQvZG9tIG5vZGVcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ludGVybmFsJykuVk5vZGV9IHZub2RlXG4gKiBAcGFyYW0ge2ltcG9ydCgnLi9pbnRlcm5hbCcpLlZOb2RlfSB2bm9kZVxuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldERpc3BsYXlOYW1lKHZub2RlKSB7XG5cdGlmICh2bm9kZS50eXBlID09PSBGcmFnbWVudCkge1xuXHRcdHJldHVybiAnRnJhZ21lbnQnO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiB2bm9kZS50eXBlID09ICdmdW5jdGlvbicpIHtcblx0XHRyZXR1cm4gdm5vZGUudHlwZS5kaXNwbGF5TmFtZSB8fCB2bm9kZS50eXBlLm5hbWU7XG5cdH0gZWxzZSBpZiAodHlwZW9mIHZub2RlLnR5cGUgPT0gJ3N0cmluZycpIHtcblx0XHRyZXR1cm4gdm5vZGUudHlwZTtcblx0fVxuXG5cdHJldHVybiAnI3RleHQnO1xufVxuXG4vKipcbiAqIFVzZWQgdG8ga2VlcCB0cmFjayBvZiB0aGUgY3VycmVudGx5IHJlbmRlcmVkIGB2bm9kZWAgYW5kIHByaW50IGl0XG4gKiBpbiBkZWJ1ZyBtZXNzYWdlcy5cbiAqL1xubGV0IHJlbmRlclN0YWNrID0gW107XG5cbi8qKlxuICogS2VlcCB0cmFjayBvZiB0aGUgY3VycmVudCBvd25lcnMuIEFuIG93bmVyIGRlc2NyaWJlcyBhIGNvbXBvbmVudFxuICogd2hpY2ggd2FzIHJlc3BvbnNpYmxlIHRvIHJlbmRlciBhIHNwZWNpZmljIGB2bm9kZWAuIFRoaXMgZXhjbHVkZVxuICogY2hpbGRyZW4gdGhhdCBhcmUgcGFzc2VkIHZpYSBgcHJvcHMuY2hpbGRyZW5gLCBiZWNhdXNlIHRoZXkgYmVsb25nXG4gKiB0byB0aGUgcGFyZW50IG93bmVyLlxuICpcbiAqIGBgYGpzeFxuICogY29uc3QgRm9vID0gcHJvcHMgPT4gPGRpdj57cHJvcHMuY2hpbGRyZW59PC9kaXY+IC8vIGRpdidzIG93bmVyIGlzIEZvb1xuICogY29uc3QgQmFyID0gcHJvcHMgPT4ge1xuICogICByZXR1cm4gKFxuICogICAgIDxGb28+PHNwYW4gLz48L0Zvbz4gLy8gRm9vJ3Mgb3duZXIgaXMgQmFyLCBzcGFuJ3Mgb3duZXIgaXMgQmFyXG4gKiAgIClcbiAqIH1cbiAqIGBgYFxuICpcbiAqIE5vdGU6IEEgYHZub2RlYCBtYXkgYmUgaG9pc3RlZCB0byB0aGUgcm9vdCBzY29wZSBkdWUgdG8gY29tcGlsZXJcbiAqIG9wdGltaXp0aW9ucy4gSW4gdGhlc2UgY2FzZXMgdGhlIGBfb3duZXJgIHdpbGwgYmUgZGlmZmVyZW50LlxuICovXG5sZXQgb3duZXJTdGFjayA9IFtdO1xuXG4vKipcbiAqIEdldCB0aGUgY3VycmVudGx5IHJlbmRlcmVkIGB2bm9kZWBcbiAqIEByZXR1cm5zIHtpbXBvcnQoJy4vaW50ZXJuYWwnKS5WTm9kZSB8IG51bGx9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDdXJyZW50Vk5vZGUoKSB7XG5cdHJldHVybiByZW5kZXJTdGFjay5sZW5ndGggPiAwID8gcmVuZGVyU3RhY2tbcmVuZGVyU3RhY2subGVuZ3RoIC0gMV0gOiBudWxsO1xufVxuXG4vKipcbiAqIElmIHRoZSB1c2VyIGRvZXNuJ3QgaGF2ZSBgQGJhYmVsL3BsdWdpbi10cmFuc2Zvcm0tcmVhY3QtanN4LXNvdXJjZWBcbiAqIHNvbWV3aGVyZSBpbiBoaXMgdG9vbCBjaGFpbiB3ZSBjYW4ndCBwcmludCB0aGUgZmlsZW5hbWUgYW5kIHNvdXJjZVxuICogbG9jYXRpb24gb2YgYSBjb21wb25lbnQuIEluIHRoYXQgY2FzZSB3ZSBqdXN0IG9taXQgdGhhdCwgYnV0IHdlJ2xsXG4gKiBwcmludCBhIGhlbHBmdWwgbWVzc2FnZSB0byB0aGUgY29uc29sZSwgbm90aWZ5aW5nIHRoZSB1c2VyIG9mIGl0LlxuICovXG5sZXQgc2hvd0pzeFNvdXJjZVBsdWdpbldhcm5pbmcgPSB0cnVlO1xuXG4vKipcbiAqIENoZWNrIGlmIGEgYHZub2RlYCBpcyBhIHBvc3NpYmxlIG93bmVyLlxuICogQHBhcmFtIHtpbXBvcnQoJy4vaW50ZXJuYWwnKS5WTm9kZX0gdm5vZGVcbiAqL1xuZnVuY3Rpb24gaXNQb3NzaWJsZU93bmVyKHZub2RlKSB7XG5cdHJldHVybiB0eXBlb2Ygdm5vZGUudHlwZSA9PSAnZnVuY3Rpb24nICYmIHZub2RlLnR5cGUgIT0gRnJhZ21lbnQ7XG59XG5cbi8qKlxuICogUmV0dXJuIHRoZSBjb21wb25lbnQgc3RhY2sgdGhhdCB3YXMgY2FwdHVyZWQgdXAgdG8gdGhpcyBwb2ludC5cbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ludGVybmFsJykuVk5vZGV9IHZub2RlXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3duZXJTdGFjayh2bm9kZSkge1xuXHRjb25zdCBzdGFjayA9IFt2bm9kZV07XG5cdGxldCBuZXh0ID0gdm5vZGU7XG5cdHdoaWxlIChuZXh0Ll9vd25lciAhPSBudWxsKSB7XG5cdFx0c3RhY2sucHVzaChuZXh0Ll9vd25lcik7XG5cdFx0bmV4dCA9IG5leHQuX293bmVyO1xuXHR9XG5cblx0cmV0dXJuIHN0YWNrLnJlZHVjZSgoYWNjLCBvd25lcikgPT4ge1xuXHRcdGFjYyArPSBgICBpbiAke2dldERpc3BsYXlOYW1lKG93bmVyKX1gO1xuXG5cdFx0Y29uc3Qgc291cmNlID0gb3duZXIuX19zb3VyY2U7XG5cdFx0aWYgKHNvdXJjZSkge1xuXHRcdFx0YWNjICs9IGAgKGF0ICR7c291cmNlLmZpbGVOYW1lfToke3NvdXJjZS5saW5lTnVtYmVyfSlgO1xuXHRcdH0gZWxzZSBpZiAoc2hvd0pzeFNvdXJjZVBsdWdpbldhcm5pbmcpIHtcblx0XHRcdGNvbnNvbGUud2Fybihcblx0XHRcdFx0J0FkZCBAYmFiZWwvcGx1Z2luLXRyYW5zZm9ybS1yZWFjdC1qc3gtc291cmNlIHRvIGdldCBhIG1vcmUgZGV0YWlsZWQgY29tcG9uZW50IHN0YWNrLiBOb3RlIHRoYXQgeW91IHNob3VsZCBub3QgYWRkIGl0IHRvIHByb2R1Y3Rpb24gYnVpbGRzIG9mIHlvdXIgQXBwIGZvciBidW5kbGUgc2l6ZSByZWFzb25zLidcblx0XHRcdCk7XG5cdFx0fVxuXHRcdHNob3dKc3hTb3VyY2VQbHVnaW5XYXJuaW5nID0gZmFsc2U7XG5cblx0XHRyZXR1cm4gKGFjYyArPSAnXFxuJyk7XG5cdH0sICcnKTtcbn1cblxuLyoqXG4gKiBTZXR1cCBjb2RlIHRvIGNhcHR1cmUgdGhlIGNvbXBvbmVudCB0cmFjZSB3aGlsZSByZW5kZXJpbmcuIE5vdGUgdGhhdFxuICogd2UgY2Fubm90IHNpbXBseSB0cmF2ZXJzZSBgdm5vZGUuX3BhcmVudGAgdXB3YXJkcywgYmVjYXVzZSB3ZSBoYXZlIHNvbWVcbiAqIGRlYnVnIG1lc3NhZ2VzIGZvciBgdGhpcy5zZXRTdGF0ZWAgd2hlcmUgdGhlIGB2bm9kZWAgaXMgYHVuZGVmaW5lZGAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXR1cENvbXBvbmVudFN0YWNrKCkge1xuXHRsZXQgb2xkRGlmZiA9IG9wdGlvbnMuX2RpZmY7XG5cdGxldCBvbGREaWZmZWQgPSBvcHRpb25zLmRpZmZlZDtcblx0bGV0IG9sZFJvb3QgPSBvcHRpb25zLl9yb290O1xuXHRsZXQgb2xkVk5vZGUgPSBvcHRpb25zLnZub2RlO1xuXHRsZXQgb2xkUmVuZGVyID0gb3B0aW9ucy5fcmVuZGVyO1xuXG5cdG9wdGlvbnMuZGlmZmVkID0gdm5vZGUgPT4ge1xuXHRcdGlmIChpc1Bvc3NpYmxlT3duZXIodm5vZGUpKSB7XG5cdFx0XHRvd25lclN0YWNrLnBvcCgpO1xuXHRcdH1cblx0XHRyZW5kZXJTdGFjay5wb3AoKTtcblx0XHRpZiAob2xkRGlmZmVkKSBvbGREaWZmZWQodm5vZGUpO1xuXHR9O1xuXG5cdG9wdGlvbnMuX2RpZmYgPSB2bm9kZSA9PiB7XG5cdFx0aWYgKGlzUG9zc2libGVPd25lcih2bm9kZSkpIHtcblx0XHRcdHJlbmRlclN0YWNrLnB1c2godm5vZGUpO1xuXHRcdH1cblx0XHRpZiAob2xkRGlmZikgb2xkRGlmZih2bm9kZSk7XG5cdH07XG5cblx0b3B0aW9ucy5fcm9vdCA9ICh2bm9kZSwgcGFyZW50KSA9PiB7XG5cdFx0b3duZXJTdGFjayA9IFtdO1xuXHRcdGlmIChvbGRSb290KSBvbGRSb290KHZub2RlLCBwYXJlbnQpO1xuXHR9O1xuXG5cdG9wdGlvbnMudm5vZGUgPSB2bm9kZSA9PiB7XG5cdFx0dm5vZGUuX293bmVyID1cblx0XHRcdG93bmVyU3RhY2subGVuZ3RoID4gMCA/IG93bmVyU3RhY2tbb3duZXJTdGFjay5sZW5ndGggLSAxXSA6IG51bGw7XG5cdFx0aWYgKG9sZFZOb2RlKSBvbGRWTm9kZSh2bm9kZSk7XG5cdH07XG5cblx0b3B0aW9ucy5fcmVuZGVyID0gdm5vZGUgPT4ge1xuXHRcdGlmIChpc1Bvc3NpYmxlT3duZXIodm5vZGUpKSB7XG5cdFx0XHRvd25lclN0YWNrLnB1c2godm5vZGUpO1xuXHRcdH1cblxuXHRcdGlmIChvbGRSZW5kZXIpIG9sZFJlbmRlcih2bm9kZSk7XG5cdH07XG59XG4iLCJpbXBvcnQgeyBjaGVja1Byb3BUeXBlcyB9IGZyb20gJy4vY2hlY2stcHJvcHMnO1xuaW1wb3J0IHsgb3B0aW9ucywgQ29tcG9uZW50IH0gZnJvbSAncHJlYWN0JztcbmltcG9ydCB7XG5cdEVMRU1FTlRfTk9ERSxcblx0RE9DVU1FTlRfTk9ERSxcblx0RE9DVU1FTlRfRlJBR01FTlRfTk9ERVxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuXHRnZXRPd25lclN0YWNrLFxuXHRzZXR1cENvbXBvbmVudFN0YWNrLFxuXHRnZXRDdXJyZW50Vk5vZGUsXG5cdGdldERpc3BsYXlOYW1lXG59IGZyb20gJy4vY29tcG9uZW50LXN0YWNrJztcbmltcG9ydCB7IGFzc2lnbiwgaXNOYU4gfSBmcm9tICcuL3V0aWwnO1xuXG5jb25zdCBpc1dlYWtNYXBTdXBwb3J0ZWQgPSB0eXBlb2YgV2Vha01hcCA9PSAnZnVuY3Rpb24nO1xuXG4vKipcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ludGVybmFsJykuVk5vZGV9IHZub2RlXG4gKiBAcmV0dXJucyB7QXJyYXk8c3RyaW5nPn1cbiAqL1xuZnVuY3Rpb24gZ2V0RG9tQ2hpbGRyZW4odm5vZGUpIHtcblx0bGV0IGRvbUNoaWxkcmVuID0gW107XG5cblx0aWYgKCF2bm9kZS5fY2hpbGRyZW4pIHJldHVybiBkb21DaGlsZHJlbjtcblxuXHR2bm9kZS5fY2hpbGRyZW4uZm9yRWFjaChjaGlsZCA9PiB7XG5cdFx0aWYgKGNoaWxkICYmIHR5cGVvZiBjaGlsZC50eXBlID09PSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRkb21DaGlsZHJlbi5wdXNoLmFwcGx5KGRvbUNoaWxkcmVuLCBnZXREb21DaGlsZHJlbihjaGlsZCkpO1xuXHRcdH0gZWxzZSBpZiAoY2hpbGQgJiYgdHlwZW9mIGNoaWxkLnR5cGUgPT09ICdzdHJpbmcnKSB7XG5cdFx0XHRkb21DaGlsZHJlbi5wdXNoKGNoaWxkLnR5cGUpO1xuXHRcdH1cblx0fSk7XG5cblx0cmV0dXJuIGRvbUNoaWxkcmVuO1xufVxuXG4vKipcbiAqIEBwYXJhbSB7aW1wb3J0KCcuL2ludGVybmFsJykuVk5vZGV9IHBhcmVudFxuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZnVuY3Rpb24gZ2V0Q2xvc2VzdERvbU5vZGVQYXJlbnROYW1lKHBhcmVudCkge1xuXHRpZiAoIXBhcmVudCkgcmV0dXJuICcnO1xuXHRpZiAodHlwZW9mIHBhcmVudC50eXBlID09ICdmdW5jdGlvbicpIHtcblx0XHRpZiAocGFyZW50Ll9wYXJlbnQgPT0gbnVsbCkge1xuXHRcdFx0aWYgKHBhcmVudC5fZG9tICE9IG51bGwgJiYgcGFyZW50Ll9kb20ucGFyZW50Tm9kZSAhPSBudWxsKSB7XG5cdFx0XHRcdHJldHVybiBwYXJlbnQuX2RvbS5wYXJlbnROb2RlLmxvY2FsTmFtZTtcblx0XHRcdH1cblx0XHRcdHJldHVybiAnJztcblx0XHR9XG5cdFx0cmV0dXJuIGdldENsb3Nlc3REb21Ob2RlUGFyZW50TmFtZShwYXJlbnQuX3BhcmVudCk7XG5cdH1cblx0cmV0dXJuIC8qKiBAdHlwZSB7c3RyaW5nfSAqLyAocGFyZW50LnR5cGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdERlYnVnKCkge1xuXHRzZXR1cENvbXBvbmVudFN0YWNrKCk7XG5cblx0bGV0IGhvb2tzQWxsb3dlZCA9IGZhbHNlO1xuXG5cdC8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cblx0bGV0IG9sZEJlZm9yZURpZmYgPSBvcHRpb25zLl9kaWZmO1xuXHRsZXQgb2xkRGlmZmVkID0gb3B0aW9ucy5kaWZmZWQ7XG5cdGxldCBvbGRWbm9kZSA9IG9wdGlvbnMudm5vZGU7XG5cdGxldCBvbGRSZW5kZXIgPSBvcHRpb25zLl9yZW5kZXI7XG5cdGxldCBvbGRDYXRjaEVycm9yID0gb3B0aW9ucy5fY2F0Y2hFcnJvcjtcblx0bGV0IG9sZFJvb3QgPSBvcHRpb25zLl9yb290O1xuXHRsZXQgb2xkSG9vayA9IG9wdGlvbnMuX2hvb2s7XG5cdGNvbnN0IHdhcm5lZENvbXBvbmVudHMgPSAhaXNXZWFrTWFwU3VwcG9ydGVkXG5cdFx0PyBudWxsXG5cdFx0OiB7XG5cdFx0XHRcdHVzZUVmZmVjdDogbmV3IFdlYWtNYXAoKSxcblx0XHRcdFx0dXNlTGF5b3V0RWZmZWN0OiBuZXcgV2Vha01hcCgpLFxuXHRcdFx0XHRsYXp5UHJvcFR5cGVzOiBuZXcgV2Vha01hcCgpXG5cdFx0XHR9O1xuXHRjb25zdCBkZXByZWNhdGlvbnMgPSBbXTtcblxuXHRvcHRpb25zLl9jYXRjaEVycm9yID0gKGVycm9yLCB2bm9kZSwgb2xkVk5vZGUsIGVycm9ySW5mbykgPT4ge1xuXHRcdGxldCBjb21wb25lbnQgPSB2bm9kZSAmJiB2bm9kZS5fY29tcG9uZW50O1xuXHRcdGlmIChjb21wb25lbnQgJiYgdHlwZW9mIGVycm9yLnRoZW4gPT0gJ2Z1bmN0aW9uJykge1xuXHRcdFx0Y29uc3QgcHJvbWlzZSA9IGVycm9yO1xuXHRcdFx0ZXJyb3IgPSBuZXcgRXJyb3IoXG5cdFx0XHRcdGBNaXNzaW5nIFN1c3BlbnNlLiBUaGUgdGhyb3dpbmcgY29tcG9uZW50IHdhczogJHtnZXREaXNwbGF5TmFtZSh2bm9kZSl9YFxuXHRcdFx0KTtcblxuXHRcdFx0bGV0IHBhcmVudCA9IHZub2RlO1xuXHRcdFx0Zm9yICg7IHBhcmVudDsgcGFyZW50ID0gcGFyZW50Ll9wYXJlbnQpIHtcblx0XHRcdFx0aWYgKHBhcmVudC5fY29tcG9uZW50ICYmIHBhcmVudC5fY29tcG9uZW50Ll9jaGlsZERpZFN1c3BlbmQpIHtcblx0XHRcdFx0XHRlcnJvciA9IHByb21pc2U7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gV2UgaGF2ZW4ndCByZWNvdmVyZWQgYW5kIHdlIGtub3cgYXQgdGhpcyBwb2ludCB0aGF0IHRoZXJlIGlzIG5vXG5cdFx0XHQvLyBTdXNwZW5zZSBjb21wb25lbnQgaGlnaGVyIHVwIGluIHRoZSB0cmVlXG5cdFx0XHRpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuXHRcdFx0XHR0aHJvdyBlcnJvcjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHR0cnkge1xuXHRcdFx0ZXJyb3JJbmZvID0gZXJyb3JJbmZvIHx8IHt9O1xuXHRcdFx0ZXJyb3JJbmZvLmNvbXBvbmVudFN0YWNrID0gZ2V0T3duZXJTdGFjayh2bm9kZSk7XG5cdFx0XHRvbGRDYXRjaEVycm9yKGVycm9yLCB2bm9kZSwgb2xkVk5vZGUsIGVycm9ySW5mbyk7XG5cblx0XHRcdC8vIHdoZW4gYW4gZXJyb3Igd2FzIGhhbmRsZWQgYnkgYW4gRXJyb3JCb3VuZGFyeSB3ZSB3aWxsIG5vbmV0aGVsZXNzIGVtaXQgYW4gZXJyb3Jcblx0XHRcdC8vIGV2ZW50IG9uIHRoZSB3aW5kb3cgb2JqZWN0LiBUaGlzIGlzIHRvIG1ha2UgdXAgZm9yIHJlYWN0IGNvbXBhdGliaWxpdHkgaW4gZGV2IG1vZGVcblx0XHRcdC8vIGFuZCB0aHVzIG1ha2UgdGhlIE5leHQuanMgZGV2IG92ZXJsYXkgd29yay5cblx0XHRcdGlmICh0eXBlb2YgZXJyb3IudGhlbiAhPSAnZnVuY3Rpb24nKSB7XG5cdFx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHRcdHRocm93IGVycm9yO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHR0aHJvdyBlO1xuXHRcdH1cblx0fTtcblxuXHRvcHRpb25zLl9yb290ID0gKHZub2RlLCBwYXJlbnROb2RlKSA9PiB7XG5cdFx0aWYgKCFwYXJlbnROb2RlKSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoXG5cdFx0XHRcdCdVbmRlZmluZWQgcGFyZW50IHBhc3NlZCB0byByZW5kZXIoKSwgdGhpcyBpcyB0aGUgc2Vjb25kIGFyZ3VtZW50LlxcbicgK1xuXHRcdFx0XHRcdCdDaGVjayBpZiB0aGUgZWxlbWVudCBpcyBhdmFpbGFibGUgaW4gdGhlIERPTS9oYXMgdGhlIGNvcnJlY3QgaWQuJ1xuXHRcdFx0KTtcblx0XHR9XG5cblx0XHRsZXQgaXNWYWxpZDtcblx0XHRzd2l0Y2ggKHBhcmVudE5vZGUubm9kZVR5cGUpIHtcblx0XHRcdGNhc2UgRUxFTUVOVF9OT0RFOlxuXHRcdFx0Y2FzZSBET0NVTUVOVF9GUkFHTUVOVF9OT0RFOlxuXHRcdFx0Y2FzZSBET0NVTUVOVF9OT0RFOlxuXHRcdFx0XHRpc1ZhbGlkID0gdHJ1ZTtcblx0XHRcdFx0YnJlYWs7XG5cdFx0XHRkZWZhdWx0OlxuXHRcdFx0XHRpc1ZhbGlkID0gZmFsc2U7XG5cdFx0fVxuXG5cdFx0aWYgKCFpc1ZhbGlkKSB7XG5cdFx0XHRsZXQgY29tcG9uZW50TmFtZSA9IGdldERpc3BsYXlOYW1lKHZub2RlKTtcblx0XHRcdHRocm93IG5ldyBFcnJvcihcblx0XHRcdFx0YEV4cGVjdGVkIGEgdmFsaWQgSFRNTCBub2RlIGFzIGEgc2Vjb25kIGFyZ3VtZW50IHRvIHJlbmRlci5cdFJlY2VpdmVkICR7cGFyZW50Tm9kZX0gaW5zdGVhZDogcmVuZGVyKDwke2NvbXBvbmVudE5hbWV9IC8+LCAke3BhcmVudE5vZGV9KTtgXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdGlmIChvbGRSb290KSBvbGRSb290KHZub2RlLCBwYXJlbnROb2RlKTtcblx0fTtcblxuXHRvcHRpb25zLl9kaWZmID0gdm5vZGUgPT4ge1xuXHRcdGxldCB7IHR5cGUgfSA9IHZub2RlO1xuXG5cdFx0aG9va3NBbGxvd2VkID0gdHJ1ZTtcblxuXHRcdGlmICh0eXBlID09PSB1bmRlZmluZWQpIHtcblx0XHRcdHRocm93IG5ldyBFcnJvcihcblx0XHRcdFx0J1VuZGVmaW5lZCBjb21wb25lbnQgcGFzc2VkIHRvIGNyZWF0ZUVsZW1lbnQoKVxcblxcbicgK1xuXHRcdFx0XHRcdCdZb3UgbGlrZWx5IGZvcmdvdCB0byBleHBvcnQgeW91ciBjb21wb25lbnQgb3IgbWlnaHQgaGF2ZSBtaXhlZCB1cCBkZWZhdWx0IGFuZCBuYW1lZCBpbXBvcnRzJyArXG5cdFx0XHRcdFx0c2VyaWFsaXplVk5vZGUodm5vZGUpICtcblx0XHRcdFx0XHRgXFxuXFxuJHtnZXRPd25lclN0YWNrKHZub2RlKX1gXG5cdFx0XHQpO1xuXHRcdH0gZWxzZSBpZiAodHlwZSAhPSBudWxsICYmIHR5cGVvZiB0eXBlID09ICdvYmplY3QnKSB7XG5cdFx0XHRpZiAodHlwZS5fY2hpbGRyZW4gIT09IHVuZGVmaW5lZCAmJiB0eXBlLl9kb20gIT09IHVuZGVmaW5lZCkge1xuXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoXG5cdFx0XHRcdFx0YEludmFsaWQgdHlwZSBwYXNzZWQgdG8gY3JlYXRlRWxlbWVudCgpOiAke3R5cGV9XFxuXFxuYCArXG5cdFx0XHRcdFx0XHQnRGlkIHlvdSBhY2NpZGVudGFsbHkgcGFzcyBhIEpTWCBsaXRlcmFsIGFzIEpTWCB0d2ljZT9cXG5cXG4nICtcblx0XHRcdFx0XHRcdGAgIGxldCBNeSR7Z2V0RGlzcGxheU5hbWUodm5vZGUpfSA9ICR7c2VyaWFsaXplVk5vZGUodHlwZSl9O1xcbmAgK1xuXHRcdFx0XHRcdFx0YCAgbGV0IHZub2RlID0gPE15JHtnZXREaXNwbGF5TmFtZSh2bm9kZSl9IC8+O1xcblxcbmAgK1xuXHRcdFx0XHRcdFx0J1RoaXMgdXN1YWxseSBoYXBwZW5zIHdoZW4geW91IGV4cG9ydCBhIEpTWCBsaXRlcmFsIGFuZCBub3QgdGhlIGNvbXBvbmVudC4nICtcblx0XHRcdFx0XHRcdGBcXG5cXG4ke2dldE93bmVyU3RhY2sodm5vZGUpfWBcblx0XHRcdFx0KTtcblx0XHRcdH1cblxuXHRcdFx0dGhyb3cgbmV3IEVycm9yKFxuXHRcdFx0XHQnSW52YWxpZCB0eXBlIHBhc3NlZCB0byBjcmVhdGVFbGVtZW50KCk6ICcgK1xuXHRcdFx0XHRcdChBcnJheS5pc0FycmF5KHR5cGUpID8gJ2FycmF5JyA6IHR5cGUpXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdGlmIChcblx0XHRcdHZub2RlLnJlZiAhPT0gdW5kZWZpbmVkICYmXG5cdFx0XHR0eXBlb2Ygdm5vZGUucmVmICE9ICdmdW5jdGlvbicgJiZcblx0XHRcdHR5cGVvZiB2bm9kZS5yZWYgIT0gJ29iamVjdCcgJiZcblx0XHRcdCEoJyQkdHlwZW9mJyBpbiB2bm9kZSkgLy8gYWxsb3cgc3RyaW5nIHJlZnMgd2hlbiBwcmVhY3QtY29tcGF0IGlzIGluc3RhbGxlZFxuXHRcdCkge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKFxuXHRcdFx0XHRgQ29tcG9uZW50J3MgXCJyZWZcIiBwcm9wZXJ0eSBzaG91bGQgYmUgYSBmdW5jdGlvbiwgb3IgYW4gb2JqZWN0IGNyZWF0ZWQgYCArXG5cdFx0XHRcdFx0YGJ5IGNyZWF0ZVJlZigpLCBidXQgZ290IFske3R5cGVvZiB2bm9kZS5yZWZ9XSBpbnN0ZWFkXFxuYCArXG5cdFx0XHRcdFx0c2VyaWFsaXplVk5vZGUodm5vZGUpICtcblx0XHRcdFx0XHRgXFxuXFxuJHtnZXRPd25lclN0YWNrKHZub2RlKX1gXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdGlmICh0eXBlb2Ygdm5vZGUudHlwZSA9PSAnc3RyaW5nJykge1xuXHRcdFx0Zm9yIChjb25zdCBrZXkgaW4gdm5vZGUucHJvcHMpIHtcblx0XHRcdFx0aWYgKFxuXHRcdFx0XHRcdGtleVswXSA9PT0gJ28nICYmXG5cdFx0XHRcdFx0a2V5WzFdID09PSAnbicgJiZcblx0XHRcdFx0XHR0eXBlb2Ygdm5vZGUucHJvcHNba2V5XSAhPSAnZnVuY3Rpb24nICYmXG5cdFx0XHRcdFx0dm5vZGUucHJvcHNba2V5XSAhPSBudWxsXG5cdFx0XHRcdCkge1xuXHRcdFx0XHRcdHRocm93IG5ldyBFcnJvcihcblx0XHRcdFx0XHRcdGBDb21wb25lbnQncyBcIiR7a2V5fVwiIHByb3BlcnR5IHNob3VsZCBiZSBhIGZ1bmN0aW9uLCBgICtcblx0XHRcdFx0XHRcdFx0YGJ1dCBnb3QgWyR7dHlwZW9mIHZub2RlLnByb3BzW2tleV19XSBpbnN0ZWFkXFxuYCArXG5cdFx0XHRcdFx0XHRcdHNlcmlhbGl6ZVZOb2RlKHZub2RlKSArXG5cdFx0XHRcdFx0XHRcdGBcXG5cXG4ke2dldE93bmVyU3RhY2sodm5vZGUpfWBcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gQ2hlY2sgcHJvcC10eXBlcyBpZiBhdmFpbGFibGVcblx0XHRpZiAodHlwZW9mIHZub2RlLnR5cGUgPT0gJ2Z1bmN0aW9uJyAmJiB2bm9kZS50eXBlLnByb3BUeXBlcykge1xuXHRcdFx0aWYgKFxuXHRcdFx0XHR2bm9kZS50eXBlLmRpc3BsYXlOYW1lID09PSAnTGF6eScgJiZcblx0XHRcdFx0d2FybmVkQ29tcG9uZW50cyAmJlxuXHRcdFx0XHQhd2FybmVkQ29tcG9uZW50cy5sYXp5UHJvcFR5cGVzLmhhcyh2bm9kZS50eXBlKVxuXHRcdFx0KSB7XG5cdFx0XHRcdGNvbnN0IG0gPVxuXHRcdFx0XHRcdCdQcm9wVHlwZXMgYXJlIG5vdCBzdXBwb3J0ZWQgb24gbGF6eSgpLiBVc2UgcHJvcFR5cGVzIG9uIHRoZSB3cmFwcGVkIGNvbXBvbmVudCBpdHNlbGYuICc7XG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0Y29uc3QgbGF6eVZOb2RlID0gdm5vZGUudHlwZSgpO1xuXHRcdFx0XHRcdHdhcm5lZENvbXBvbmVudHMubGF6eVByb3BUeXBlcy5zZXQodm5vZGUudHlwZSwgdHJ1ZSk7XG5cdFx0XHRcdFx0Y29uc29sZS53YXJuKFxuXHRcdFx0XHRcdFx0bSArIGBDb21wb25lbnQgd3JhcHBlZCBpbiBsYXp5KCkgaXMgJHtnZXREaXNwbGF5TmFtZShsYXp5Vk5vZGUpfWBcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9IGNhdGNoIChwcm9taXNlKSB7XG5cdFx0XHRcdFx0Y29uc29sZS53YXJuKFxuXHRcdFx0XHRcdFx0bSArIFwiV2Ugd2lsbCBsb2cgdGhlIHdyYXBwZWQgY29tcG9uZW50J3MgbmFtZSBvbmNlIGl0IGlzIGxvYWRlZC5cIlxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0bGV0IHZhbHVlcyA9IHZub2RlLnByb3BzO1xuXHRcdFx0aWYgKHZub2RlLnR5cGUuX2ZvcndhcmRlZCkge1xuXHRcdFx0XHR2YWx1ZXMgPSBhc3NpZ24oe30sIHZhbHVlcyk7XG5cdFx0XHRcdGRlbGV0ZSB2YWx1ZXMucmVmO1xuXHRcdFx0fVxuXG5cdFx0XHRjaGVja1Byb3BUeXBlcyhcblx0XHRcdFx0dm5vZGUudHlwZS5wcm9wVHlwZXMsXG5cdFx0XHRcdHZhbHVlcyxcblx0XHRcdFx0J3Byb3AnLFxuXHRcdFx0XHRnZXREaXNwbGF5TmFtZSh2bm9kZSksXG5cdFx0XHRcdCgpID0+IGdldE93bmVyU3RhY2sodm5vZGUpXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdGlmIChvbGRCZWZvcmVEaWZmKSBvbGRCZWZvcmVEaWZmKHZub2RlKTtcblx0fTtcblxuXHRsZXQgcmVuZGVyQ291bnQgPSAwO1xuXHRsZXQgY3VycmVudENvbXBvbmVudDtcblx0b3B0aW9ucy5fcmVuZGVyID0gdm5vZGUgPT4ge1xuXHRcdGlmIChvbGRSZW5kZXIpIHtcblx0XHRcdG9sZFJlbmRlcih2bm9kZSk7XG5cdFx0fVxuXHRcdGhvb2tzQWxsb3dlZCA9IHRydWU7XG5cblx0XHRjb25zdCBuZXh0Q29tcG9uZW50ID0gdm5vZGUuX2NvbXBvbmVudDtcblx0XHRpZiAobmV4dENvbXBvbmVudCA9PT0gY3VycmVudENvbXBvbmVudCkge1xuXHRcdFx0cmVuZGVyQ291bnQrKztcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmVuZGVyQ291bnQgPSAxO1xuXHRcdH1cblxuXHRcdGlmIChyZW5kZXJDb3VudCA+PSAyNSkge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKFxuXHRcdFx0XHRgVG9vIG1hbnkgcmUtcmVuZGVycy4gVGhpcyBpcyBsaW1pdGVkIHRvIHByZXZlbnQgYW4gaW5maW5pdGUgbG9vcCBgICtcblx0XHRcdFx0XHRgd2hpY2ggbWF5IGxvY2sgdXAgeW91ciBicm93c2VyLiBUaGUgY29tcG9uZW50IGNhdXNpbmcgdGhpcyBpczogJHtnZXREaXNwbGF5TmFtZShcblx0XHRcdFx0XHRcdHZub2RlXG5cdFx0XHRcdFx0KX1gXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdGN1cnJlbnRDb21wb25lbnQgPSBuZXh0Q29tcG9uZW50O1xuXHR9O1xuXG5cdG9wdGlvbnMuX2hvb2sgPSAoY29tcCwgaW5kZXgsIHR5cGUpID0+IHtcblx0XHRpZiAoIWNvbXAgfHwgIWhvb2tzQWxsb3dlZCkge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdIb29rIGNhbiBvbmx5IGJlIGludm9rZWQgZnJvbSByZW5kZXIgbWV0aG9kcy4nKTtcblx0XHR9XG5cblx0XHRpZiAob2xkSG9vaykgb2xkSG9vayhjb21wLCBpbmRleCwgdHlwZSk7XG5cdH07XG5cblx0Ly8gSWRlYWxseSB3ZSdkIHdhbnQgdG8gcHJpbnQgYSB3YXJuaW5nIG9uY2UgcGVyIGNvbXBvbmVudCwgYnV0IHdlXG5cdC8vIGRvbid0IGhhdmUgYWNjZXNzIHRvIHRoZSB2bm9kZSB0aGF0IHRyaWdnZXJlZCBpdCBoZXJlLiBBcyBhXG5cdC8vIGNvbXByb21pc2UgYW5kIHRvIGF2b2lkIGZsb29kaW5nIHRoZSBjb25zb2xlIHdpdGggd2FybmluZ3Mgd2Vcblx0Ly8gcHJpbnQgZWFjaCBkZXByZWNhdGlvbiB3YXJuaW5nIG9ubHkgb25jZS5cblx0Y29uc3Qgd2FybiA9IChwcm9wZXJ0eSwgbWVzc2FnZSkgPT4gKHtcblx0XHRnZXQoKSB7XG5cdFx0XHRjb25zdCBrZXkgPSAnZ2V0JyArIHByb3BlcnR5ICsgbWVzc2FnZTtcblx0XHRcdGlmIChkZXByZWNhdGlvbnMgJiYgZGVwcmVjYXRpb25zLmluZGV4T2Yoa2V5KSA8IDApIHtcblx0XHRcdFx0ZGVwcmVjYXRpb25zLnB1c2goa2V5KTtcblx0XHRcdFx0Y29uc29sZS53YXJuKGBnZXR0aW5nIHZub2RlLiR7cHJvcGVydHl9IGlzIGRlcHJlY2F0ZWQsICR7bWVzc2FnZX1gKTtcblx0XHRcdH1cblx0XHR9LFxuXHRcdHNldCgpIHtcblx0XHRcdGNvbnN0IGtleSA9ICdzZXQnICsgcHJvcGVydHkgKyBtZXNzYWdlO1xuXHRcdFx0aWYgKGRlcHJlY2F0aW9ucyAmJiBkZXByZWNhdGlvbnMuaW5kZXhPZihrZXkpIDwgMCkge1xuXHRcdFx0XHRkZXByZWNhdGlvbnMucHVzaChrZXkpO1xuXHRcdFx0XHRjb25zb2xlLndhcm4oYHNldHRpbmcgdm5vZGUuJHtwcm9wZXJ0eX0gaXMgbm90IGFsbG93ZWQsICR7bWVzc2FnZX1gKTtcblx0XHRcdH1cblx0XHR9XG5cdH0pO1xuXG5cdGNvbnN0IGRlcHJlY2F0ZWRBdHRyaWJ1dGVzID0ge1xuXHRcdG5vZGVOYW1lOiB3YXJuKCdub2RlTmFtZScsICd1c2Ugdm5vZGUudHlwZScpLFxuXHRcdGF0dHJpYnV0ZXM6IHdhcm4oJ2F0dHJpYnV0ZXMnLCAndXNlIHZub2RlLnByb3BzJyksXG5cdFx0Y2hpbGRyZW46IHdhcm4oJ2NoaWxkcmVuJywgJ3VzZSB2bm9kZS5wcm9wcy5jaGlsZHJlbicpXG5cdH07XG5cblx0Y29uc3QgZGVwcmVjYXRlZFByb3RvID0gT2JqZWN0LmNyZWF0ZSh7fSwgZGVwcmVjYXRlZEF0dHJpYnV0ZXMpO1xuXG5cdG9wdGlvbnMudm5vZGUgPSB2bm9kZSA9PiB7XG5cdFx0Y29uc3QgcHJvcHMgPSB2bm9kZS5wcm9wcztcblx0XHRpZiAoXG5cdFx0XHR2bm9kZS50eXBlICE9PSBudWxsICYmXG5cdFx0XHRwcm9wcyAhPSBudWxsICYmXG5cdFx0XHQoJ19fc291cmNlJyBpbiBwcm9wcyB8fCAnX19zZWxmJyBpbiBwcm9wcylcblx0XHQpIHtcblx0XHRcdGNvbnN0IG5ld1Byb3BzID0gKHZub2RlLnByb3BzID0ge30pO1xuXHRcdFx0Zm9yIChsZXQgaSBpbiBwcm9wcykge1xuXHRcdFx0XHRjb25zdCB2ID0gcHJvcHNbaV07XG5cdFx0XHRcdGlmIChpID09PSAnX19zb3VyY2UnKSB2bm9kZS5fX3NvdXJjZSA9IHY7XG5cdFx0XHRcdGVsc2UgaWYgKGkgPT09ICdfX3NlbGYnKSB2bm9kZS5fX3NlbGYgPSB2O1xuXHRcdFx0XHRlbHNlIG5ld1Byb3BzW2ldID0gdjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcblx0XHR2bm9kZS5fX3Byb3RvX18gPSBkZXByZWNhdGVkUHJvdG87XG5cdFx0aWYgKG9sZFZub2RlKSBvbGRWbm9kZSh2bm9kZSk7XG5cdH07XG5cblx0b3B0aW9ucy5kaWZmZWQgPSB2bm9kZSA9PiB7XG5cdFx0Y29uc3QgeyB0eXBlLCBfcGFyZW50OiBwYXJlbnQgfSA9IHZub2RlO1xuXHRcdC8vIENoZWNrIGlmIHRoZSB1c2VyIHBhc3NlZCBwbGFpbiBvYmplY3RzIGFzIGNoaWxkcmVuLiBOb3RlIHRoYXQgd2UgY2Fubm90XG5cdFx0Ly8gbW92ZSB0aGlzIGNoZWNrIGludG8gYG9wdGlvbnMudm5vZGVgIGJlY2F1c2UgY29tcG9uZW50cyBjYW4gcmVjZWl2ZVxuXHRcdC8vIGNoaWxkcmVuIGluIGFueSBzaGFwZSB0aGV5IHdhbnQgKGUuZy5cblx0XHQvLyBgPE15SlNPTkZvcm1hdHRlcj57eyBmb286IDEyMywgYmFyOiBcImFiY1wiIH19PC9NeUpTT05Gb3JtYXR0ZXI+YCkuXG5cdFx0Ly8gUHV0dGluZyB0aGlzIGNoZWNrIGluIGBvcHRpb25zLmRpZmZlZGAgZW5zdXJlcyB0aGF0XG5cdFx0Ly8gYHZub2RlLl9jaGlsZHJlbmAgaXMgc2V0IGFuZCB0aGF0IHdlIG9ubHkgdmFsaWRhdGUgdGhlIGNoaWxkcmVuXG5cdFx0Ly8gdGhhdCB3ZXJlIGFjdHVhbGx5IHJlbmRlcmVkLlxuXHRcdGlmICh2bm9kZS5fY2hpbGRyZW4pIHtcblx0XHRcdHZub2RlLl9jaGlsZHJlbi5mb3JFYWNoKGNoaWxkID0+IHtcblx0XHRcdFx0aWYgKHR5cGVvZiBjaGlsZCA9PT0gJ29iamVjdCcgJiYgY2hpbGQgJiYgY2hpbGQudHlwZSA9PT0gdW5kZWZpbmVkKSB7XG5cdFx0XHRcdFx0Y29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGNoaWxkKS5qb2luKCcsJyk7XG5cdFx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKFxuXHRcdFx0XHRcdFx0YE9iamVjdHMgYXJlIG5vdCB2YWxpZCBhcyBhIGNoaWxkLiBFbmNvdW50ZXJlZCBhbiBvYmplY3Qgd2l0aCB0aGUga2V5cyB7JHtrZXlzfX0uYCArXG5cdFx0XHRcdFx0XHRcdGBcXG5cXG4ke2dldE93bmVyU3RhY2sodm5vZGUpfWBcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRpZiAodm5vZGUuX2NvbXBvbmVudCA9PT0gY3VycmVudENvbXBvbmVudCkge1xuXHRcdFx0cmVuZGVyQ291bnQgPSAwO1xuXHRcdH1cblxuXHRcdGlmIChcblx0XHRcdHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJyAmJlxuXHRcdFx0KGlzVGFibGVFbGVtZW50KHR5cGUpIHx8XG5cdFx0XHRcdHR5cGUgPT09ICdwJyB8fFxuXHRcdFx0XHR0eXBlID09PSAnYScgfHxcblx0XHRcdFx0dHlwZSA9PT0gJ2J1dHRvbicpXG5cdFx0KSB7XG5cdFx0XHQvLyBBdm9pZCBmYWxzZSBwb3NpdGl2ZXMgd2hlbiBQcmVhY3Qgb25seSBwYXJ0aWFsbHkgcmVuZGVyZWQgdGhlXG5cdFx0XHQvLyBIVE1MIHRyZWUuIFdoaWxzdCB3ZSBhdHRlbXB0IHRvIGluY2x1ZGUgdGhlIG91dGVyIERPTSBpbiBvdXJcblx0XHRcdC8vIHZhbGlkYXRpb24sIHRoaXMgd291bGRuJ3Qgd29yayBvbiB0aGUgc2VydmVyIGZvclxuXHRcdFx0Ly8gYHByZWFjdC1yZW5kZXItdG8tc3RyaW5nYC4gVGhlcmUgd2UnZCBvdGhlcndpc2UgZmxvb2QgdGhlIHRlcm1pbmFsXG5cdFx0XHQvLyB3aXRoIGZhbHNlIHBvc2l0aXZlcywgd2hpY2ggd2UnZCBsaWtlIHRvIGF2b2lkLlxuXHRcdFx0bGV0IGRvbVBhcmVudE5hbWUgPSBnZXRDbG9zZXN0RG9tTm9kZVBhcmVudE5hbWUocGFyZW50KTtcblx0XHRcdGlmIChkb21QYXJlbnROYW1lICE9PSAnJyAmJiBpc1RhYmxlRWxlbWVudCh0eXBlKSkge1xuXHRcdFx0XHRpZiAoXG5cdFx0XHRcdFx0dHlwZSA9PT0gJ3RhYmxlJyAmJlxuXHRcdFx0XHRcdC8vIFRhYmxlcyBjYW4gYmUgbmVzdGVkIGluc2lkZSBlYWNoIG90aGVyIGlmIGl0J3MgaW5zaWRlIGEgY2VsbC5cblx0XHRcdFx0XHQvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9MZWFybi9IVE1ML1RhYmxlcy9BZHZhbmNlZCNuZXN0aW5nX3RhYmxlc1xuXHRcdFx0XHRcdGRvbVBhcmVudE5hbWUgIT09ICd0ZCcgJiZcblx0XHRcdFx0XHRpc1RhYmxlRWxlbWVudChkb21QYXJlbnROYW1lKVxuXHRcdFx0XHQpIHtcblx0XHRcdFx0XHRjb25zb2xlLmxvZyhkb21QYXJlbnROYW1lLCBwYXJlbnQuX2RvbSk7XG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcihcblx0XHRcdFx0XHRcdCdJbXByb3BlciBuZXN0aW5nIG9mIHRhYmxlLiBZb3VyIDx0YWJsZT4gc2hvdWxkIG5vdCBoYXZlIGEgdGFibGUtbm9kZSBwYXJlbnQuJyArXG5cdFx0XHRcdFx0XHRcdHNlcmlhbGl6ZVZOb2RlKHZub2RlKSArXG5cdFx0XHRcdFx0XHRcdGBcXG5cXG4ke2dldE93bmVyU3RhY2sodm5vZGUpfWBcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9IGVsc2UgaWYgKFxuXHRcdFx0XHRcdCh0eXBlID09PSAndGhlYWQnIHx8IHR5cGUgPT09ICd0Zm9vdCcgfHwgdHlwZSA9PT0gJ3Rib2R5JykgJiZcblx0XHRcdFx0XHRkb21QYXJlbnROYW1lICE9PSAndGFibGUnXG5cdFx0XHRcdCkge1xuXHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoXG5cdFx0XHRcdFx0XHQnSW1wcm9wZXIgbmVzdGluZyBvZiB0YWJsZS4gWW91ciA8dGhlYWQvdGJvZHkvdGZvb3Q+IHNob3VsZCBoYXZlIGEgPHRhYmxlPiBwYXJlbnQuJyArXG5cdFx0XHRcdFx0XHRcdHNlcmlhbGl6ZVZOb2RlKHZub2RlKSArXG5cdFx0XHRcdFx0XHRcdGBcXG5cXG4ke2dldE93bmVyU3RhY2sodm5vZGUpfWBcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9IGVsc2UgaWYgKFxuXHRcdFx0XHRcdHR5cGUgPT09ICd0cicgJiZcblx0XHRcdFx0XHRkb21QYXJlbnROYW1lICE9PSAndGhlYWQnICYmXG5cdFx0XHRcdFx0ZG9tUGFyZW50TmFtZSAhPT0gJ3Rmb290JyAmJlxuXHRcdFx0XHRcdGRvbVBhcmVudE5hbWUgIT09ICd0Ym9keSdcblx0XHRcdFx0KSB7XG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcihcblx0XHRcdFx0XHRcdCdJbXByb3BlciBuZXN0aW5nIG9mIHRhYmxlLiBZb3VyIDx0cj4gc2hvdWxkIGhhdmUgYSA8dGhlYWQvdGJvZHkvdGZvb3Q+IHBhcmVudC4nICtcblx0XHRcdFx0XHRcdFx0c2VyaWFsaXplVk5vZGUodm5vZGUpICtcblx0XHRcdFx0XHRcdFx0YFxcblxcbiR7Z2V0T3duZXJTdGFjayh2bm9kZSl9YFxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdH0gZWxzZSBpZiAodHlwZSA9PT0gJ3RkJyAmJiBkb21QYXJlbnROYW1lICE9PSAndHInKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcihcblx0XHRcdFx0XHRcdCdJbXByb3BlciBuZXN0aW5nIG9mIHRhYmxlLiBZb3VyIDx0ZD4gc2hvdWxkIGhhdmUgYSA8dHI+IHBhcmVudC4nICtcblx0XHRcdFx0XHRcdFx0c2VyaWFsaXplVk5vZGUodm5vZGUpICtcblx0XHRcdFx0XHRcdFx0YFxcblxcbiR7Z2V0T3duZXJTdGFjayh2bm9kZSl9YFxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdH0gZWxzZSBpZiAodHlwZSA9PT0gJ3RoJyAmJiBkb21QYXJlbnROYW1lICE9PSAndHInKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcihcblx0XHRcdFx0XHRcdCdJbXByb3BlciBuZXN0aW5nIG9mIHRhYmxlLiBZb3VyIDx0aD4gc2hvdWxkIGhhdmUgYSA8dHI+LicgK1xuXHRcdFx0XHRcdFx0XHRzZXJpYWxpemVWTm9kZSh2bm9kZSkgK1xuXHRcdFx0XHRcdFx0XHRgXFxuXFxuJHtnZXRPd25lclN0YWNrKHZub2RlKX1gXG5cdFx0XHRcdFx0KTtcblx0XHRcdFx0fVxuXHRcdFx0fSBlbHNlIGlmICh0eXBlID09PSAncCcpIHtcblx0XHRcdFx0bGV0IGlsbGVnYWxEb21DaGlsZHJlblR5cGVzID0gZ2V0RG9tQ2hpbGRyZW4odm5vZGUpLmZpbHRlcihjaGlsZFR5cGUgPT5cblx0XHRcdFx0XHRJTExFR0FMX1BBUkFHUkFQSF9DSElMRF9FTEVNRU5UUy50ZXN0KGNoaWxkVHlwZSlcblx0XHRcdFx0KTtcblx0XHRcdFx0aWYgKGlsbGVnYWxEb21DaGlsZHJlblR5cGVzLmxlbmd0aCkge1xuXHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoXG5cdFx0XHRcdFx0XHQnSW1wcm9wZXIgbmVzdGluZyBvZiBwYXJhZ3JhcGguIFlvdXIgPHA+IHNob3VsZCBub3QgaGF2ZSAnICtcblx0XHRcdFx0XHRcdFx0aWxsZWdhbERvbUNoaWxkcmVuVHlwZXMuam9pbignLCAnKSArXG5cdFx0XHRcdFx0XHRcdCcgYXMgY2hpbGQtZWxlbWVudHMuJyArXG5cdFx0XHRcdFx0XHRcdHNlcmlhbGl6ZVZOb2RlKHZub2RlKSArXG5cdFx0XHRcdFx0XHRcdGBcXG5cXG4ke2dldE93bmVyU3RhY2sodm5vZGUpfWBcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9IGVsc2UgaWYgKHR5cGUgPT09ICdhJyB8fCB0eXBlID09PSAnYnV0dG9uJykge1xuXHRcdFx0XHRpZiAoZ2V0RG9tQ2hpbGRyZW4odm5vZGUpLmluZGV4T2YodHlwZSkgIT09IC0xKSB7XG5cdFx0XHRcdFx0Y29uc29sZS5lcnJvcihcblx0XHRcdFx0XHRcdGBJbXByb3BlciBuZXN0aW5nIG9mIGludGVyYWN0aXZlIGNvbnRlbnQuIFlvdXIgPCR7dHlwZX0+YCArXG5cdFx0XHRcdFx0XHRcdGAgc2hvdWxkIG5vdCBoYXZlIG90aGVyICR7dHlwZSA9PT0gJ2EnID8gJ2FuY2hvcicgOiAnYnV0dG9uJ31gICtcblx0XHRcdFx0XHRcdFx0JyB0YWdzIGFzIGNoaWxkLWVsZW1lbnRzLicgK1xuXHRcdFx0XHRcdFx0XHRzZXJpYWxpemVWTm9kZSh2bm9kZSkgK1xuXHRcdFx0XHRcdFx0XHRgXFxuXFxuJHtnZXRPd25lclN0YWNrKHZub2RlKX1gXG5cdFx0XHRcdFx0KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGhvb2tzQWxsb3dlZCA9IGZhbHNlO1xuXG5cdFx0aWYgKG9sZERpZmZlZCkgb2xkRGlmZmVkKHZub2RlKTtcblxuXHRcdGlmICh2bm9kZS5fY2hpbGRyZW4gIT0gbnVsbCkge1xuXHRcdFx0Y29uc3Qga2V5cyA9IFtdO1xuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCB2bm9kZS5fY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0Y29uc3QgY2hpbGQgPSB2bm9kZS5fY2hpbGRyZW5baV07XG5cdFx0XHRcdGlmICghY2hpbGQgfHwgY2hpbGQua2V5ID09IG51bGwpIGNvbnRpbnVlO1xuXG5cdFx0XHRcdGNvbnN0IGtleSA9IGNoaWxkLmtleTtcblx0XHRcdFx0aWYgKGtleXMuaW5kZXhPZihrZXkpICE9PSAtMSkge1xuXHRcdFx0XHRcdGNvbnNvbGUuZXJyb3IoXG5cdFx0XHRcdFx0XHQnRm9sbG93aW5nIGNvbXBvbmVudCBoYXMgdHdvIG9yIG1vcmUgY2hpbGRyZW4gd2l0aCB0aGUgJyArXG5cdFx0XHRcdFx0XHRcdGBzYW1lIGtleSBhdHRyaWJ1dGU6IFwiJHtrZXl9XCIuIFRoaXMgbWF5IGNhdXNlIGdsaXRjaGVzIGFuZCBtaXNiZWhhdmlvciBgICtcblx0XHRcdFx0XHRcdFx0J2luIHJlbmRlcmluZyBwcm9jZXNzLiBDb21wb25lbnQ6IFxcblxcbicgK1xuXHRcdFx0XHRcdFx0XHRzZXJpYWxpemVWTm9kZSh2bm9kZSkgK1xuXHRcdFx0XHRcdFx0XHRgXFxuXFxuJHtnZXRPd25lclN0YWNrKHZub2RlKX1gXG5cdFx0XHRcdFx0KTtcblxuXHRcdFx0XHRcdC8vIEJyZWFrIGVhcmx5IHRvIG5vdCBzcGFtIHRoZSBjb25zb2xlXG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRrZXlzLnB1c2goa2V5KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpZiAodm5vZGUuX2NvbXBvbmVudCAhPSBudWxsICYmIHZub2RlLl9jb21wb25lbnQuX19ob29rcyAhPSBudWxsKSB7XG5cdFx0XHQvLyBWYWxpZGF0ZSB0aGF0IG5vbmUgb2YgdGhlIGhvb2tzIGluIHRoaXMgY29tcG9uZW50IGNvbnRhaW4gYXJndW1lbnRzIHRoYXQgYXJlIE5hTi5cblx0XHRcdC8vIFRoaXMgaXMgYSBjb21tb24gbWlzdGFrZSB0aGF0IGNhbiBiZSBoYXJkIHRvIGRlYnVnLCBzbyB3ZSB3YW50IHRvIGNhdGNoIGl0IGVhcmx5LlxuXHRcdFx0Y29uc3QgaG9va3MgPSB2bm9kZS5fY29tcG9uZW50Ll9faG9va3MuX2xpc3Q7XG5cdFx0XHRpZiAoaG9va3MpIHtcblx0XHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBob29rcy5sZW5ndGg7IGkgKz0gMSkge1xuXHRcdFx0XHRcdGNvbnN0IGhvb2sgPSBob29rc1tpXTtcblx0XHRcdFx0XHRpZiAoaG9vay5fYXJncykge1xuXHRcdFx0XHRcdFx0Zm9yIChsZXQgaiA9IDA7IGogPCBob29rLl9hcmdzLmxlbmd0aDsgaisrKSB7XG5cdFx0XHRcdFx0XHRcdGNvbnN0IGFyZyA9IGhvb2suX2FyZ3Nbal07XG5cdFx0XHRcdFx0XHRcdGlmIChpc05hTihhcmcpKSB7XG5cdFx0XHRcdFx0XHRcdFx0Y29uc3QgY29tcG9uZW50TmFtZSA9IGdldERpc3BsYXlOYW1lKHZub2RlKTtcblx0XHRcdFx0XHRcdFx0XHRjb25zb2xlLndhcm4oXG5cdFx0XHRcdFx0XHRcdFx0XHRgSW52YWxpZCBhcmd1bWVudCBwYXNzZWQgdG8gaG9vay4gSG9va3Mgc2hvdWxkIG5vdCBiZSBjYWxsZWQgd2l0aCBOYU4gaW4gdGhlIGRlcGVuZGVuY3kgYXJyYXkuIEhvb2sgaW5kZXggJHtpfSBpbiBjb21wb25lbnQgJHtjb21wb25lbnROYW1lfSB3YXMgY2FsbGVkIHdpdGggTmFOLmBcblx0XHRcdFx0XHRcdFx0XHQpO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9O1xufVxuXG5jb25zdCBzZXRTdGF0ZSA9IENvbXBvbmVudC5wcm90b3R5cGUuc2V0U3RhdGU7XG5Db21wb25lbnQucHJvdG90eXBlLnNldFN0YXRlID0gZnVuY3Rpb24gKHVwZGF0ZSwgY2FsbGJhY2spIHtcblx0aWYgKHRoaXMuX3Zub2RlID09IG51bGwpIHtcblx0XHQvLyBgdGhpcy5fdm5vZGVgIHdpbGwgYmUgYG51bGxgIGR1cmluZyBjb21wb25lbnRXaWxsTW91bnQuIEJ1dCBpdFxuXHRcdC8vIGlzIHBlcmZlY3RseSB2YWxpZCB0byBjYWxsIGBzZXRTdGF0ZWAgZHVyaW5nIGNXTS4gU28gd2Vcblx0XHQvLyBuZWVkIGFuIGFkZGl0aW9uYWwgY2hlY2sgdG8gdmVyaWZ5IHRoYXQgd2UgYXJlIGRlYWxpbmcgd2l0aCBhXG5cdFx0Ly8gY2FsbCBpbnNpZGUgY29uc3RydWN0b3IuXG5cdFx0aWYgKHRoaXMuc3RhdGUgPT0gbnVsbCkge1xuXHRcdFx0Y29uc29sZS53YXJuKFxuXHRcdFx0XHRgQ2FsbGluZyBcInRoaXMuc2V0U3RhdGVcIiBpbnNpZGUgdGhlIGNvbnN0cnVjdG9yIG9mIGEgY29tcG9uZW50IGlzIGEgYCArXG5cdFx0XHRcdFx0YG5vLW9wIGFuZCBtaWdodCBiZSBhIGJ1ZyBpbiB5b3VyIGFwcGxpY2F0aW9uLiBJbnN0ZWFkLCBzZXQgYCArXG5cdFx0XHRcdFx0YFwidGhpcy5zdGF0ZSA9IHt9XCIgZGlyZWN0bHkuXFxuXFxuJHtnZXRPd25lclN0YWNrKGdldEN1cnJlbnRWTm9kZSgpKX1gXG5cdFx0XHQpO1xuXHRcdH1cblx0fVxuXG5cdHJldHVybiBzZXRTdGF0ZS5jYWxsKHRoaXMsIHVwZGF0ZSwgY2FsbGJhY2spO1xufTtcblxuZnVuY3Rpb24gaXNUYWJsZUVsZW1lbnQodHlwZSkge1xuXHRyZXR1cm4gKFxuXHRcdHR5cGUgPT09ICd0YWJsZScgfHxcblx0XHR0eXBlID09PSAndGZvb3QnIHx8XG5cdFx0dHlwZSA9PT0gJ3Rib2R5JyB8fFxuXHRcdHR5cGUgPT09ICd0aGVhZCcgfHxcblx0XHR0eXBlID09PSAndGQnIHx8XG5cdFx0dHlwZSA9PT0gJ3RyJyB8fFxuXHRcdHR5cGUgPT09ICd0aCdcblx0KTtcbn1cblxuY29uc3QgSUxMRUdBTF9QQVJBR1JBUEhfQ0hJTERfRUxFTUVOVFMgPVxuXHQvXihhZGRyZXNzfGFydGljbGV8YXNpZGV8YmxvY2txdW90ZXxkZXRhaWxzfGRpdnxkbHxmaWVsZHNldHxmaWdjYXB0aW9ufGZpZ3VyZXxmb290ZXJ8Zm9ybXxoMXxoMnxoM3xoNHxoNXxoNnxoZWFkZXJ8aGdyb3VwfGhyfG1haW58bWVudXxuYXZ8b2x8cHxwcmV8c2VhcmNofHNlY3Rpb258dGFibGV8dWwpJC87XG5cbmNvbnN0IGZvcmNlVXBkYXRlID0gQ29tcG9uZW50LnByb3RvdHlwZS5mb3JjZVVwZGF0ZTtcbkNvbXBvbmVudC5wcm90b3R5cGUuZm9yY2VVcGRhdGUgPSBmdW5jdGlvbiAoY2FsbGJhY2spIHtcblx0aWYgKHRoaXMuX3Zub2RlID09IG51bGwpIHtcblx0XHRjb25zb2xlLndhcm4oXG5cdFx0XHRgQ2FsbGluZyBcInRoaXMuZm9yY2VVcGRhdGVcIiBpbnNpZGUgdGhlIGNvbnN0cnVjdG9yIG9mIGEgY29tcG9uZW50IGlzIGEgYCArXG5cdFx0XHRcdGBuby1vcCBhbmQgbWlnaHQgYmUgYSBidWcgaW4geW91ciBhcHBsaWNhdGlvbi5cXG5cXG4ke2dldE93bmVyU3RhY2soXG5cdFx0XHRcdFx0Z2V0Q3VycmVudFZOb2RlKClcblx0XHRcdFx0KX1gXG5cdFx0KTtcblx0fSBlbHNlIGlmICh0aGlzLl9wYXJlbnREb20gPT0gbnVsbCkge1xuXHRcdGNvbnNvbGUud2Fybihcblx0XHRcdGBDYW4ndCBjYWxsIFwidGhpcy5mb3JjZVVwZGF0ZVwiIG9uIGFuIHVubW91bnRlZCBjb21wb25lbnQuIFRoaXMgaXMgYSBuby1vcCwgYCArXG5cdFx0XHRcdGBidXQgaXQgaW5kaWNhdGVzIGEgbWVtb3J5IGxlYWsgaW4geW91ciBhcHBsaWNhdGlvbi4gVG8gZml4LCBjYW5jZWwgYWxsIGAgK1xuXHRcdFx0XHRgc3Vic2NyaXB0aW9ucyBhbmQgYXN5bmNocm9ub3VzIHRhc2tzIGluIHRoZSBjb21wb25lbnRXaWxsVW5tb3VudCBtZXRob2QuYCArXG5cdFx0XHRcdGBcXG5cXG4ke2dldE93bmVyU3RhY2sodGhpcy5fdm5vZGUpfWBcblx0XHQpO1xuXHR9XG5cdHJldHVybiBmb3JjZVVwZGF0ZS5jYWxsKHRoaXMsIGNhbGxiYWNrKTtcbn07XG5cbi8qKlxuICogU2VyaWFsaXplIGEgdm5vZGUgdHJlZSB0byBhIHN0cmluZ1xuICogQHBhcmFtIHtpbXBvcnQoJy4vaW50ZXJuYWwnKS5WTm9kZX0gdm5vZGVcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXJpYWxpemVWTm9kZSh2bm9kZSkge1xuXHRsZXQgeyBwcm9wcyB9ID0gdm5vZGU7XG5cdGxldCBuYW1lID0gZ2V0RGlzcGxheU5hbWUodm5vZGUpO1xuXG5cdGxldCBhdHRycyA9ICcnO1xuXHRmb3IgKGxldCBwcm9wIGluIHByb3BzKSB7XG5cdFx0aWYgKHByb3BzLmhhc093blByb3BlcnR5KHByb3ApICYmIHByb3AgIT09ICdjaGlsZHJlbicpIHtcblx0XHRcdGxldCB2YWx1ZSA9IHByb3BzW3Byb3BdO1xuXG5cdFx0XHQvLyBJZiBpdCBpcyBhbiBvYmplY3QgYnV0IGRvZXNuJ3QgaGF2ZSB0b1N0cmluZygpLCB1c2UgT2JqZWN0LnRvU3RyaW5nXG5cdFx0XHRpZiAodHlwZW9mIHZhbHVlID09ICdmdW5jdGlvbicpIHtcblx0XHRcdFx0dmFsdWUgPSBgZnVuY3Rpb24gJHt2YWx1ZS5kaXNwbGF5TmFtZSB8fCB2YWx1ZS5uYW1lfSgpIHt9YDtcblx0XHRcdH1cblxuXHRcdFx0dmFsdWUgPVxuXHRcdFx0XHRPYmplY3QodmFsdWUpID09PSB2YWx1ZSAmJiAhdmFsdWUudG9TdHJpbmdcblx0XHRcdFx0XHQ/IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSlcblx0XHRcdFx0XHQ6IHZhbHVlICsgJyc7XG5cblx0XHRcdGF0dHJzICs9IGAgJHtwcm9wfT0ke0pTT04uc3RyaW5naWZ5KHZhbHVlKX1gO1xuXHRcdH1cblx0fVxuXG5cdGxldCBjaGlsZHJlbiA9IHByb3BzLmNoaWxkcmVuO1xuXHRyZXR1cm4gYDwke25hbWV9JHthdHRyc30ke1xuXHRcdGNoaWxkcmVuICYmIGNoaWxkcmVuLmxlbmd0aCA/ICc+Li48LycgKyBuYW1lICsgJz4nIDogJyAvPidcblx0fWA7XG59XG5cbm9wdGlvbnMuX2h5ZHJhdGlvbk1pc21hdGNoID0gKG5ld1ZOb2RlLCBleGNlc3NEb21DaGlsZHJlbikgPT4ge1xuXHRjb25zdCB7IHR5cGUgfSA9IG5ld1ZOb2RlO1xuXHRjb25zdCBhdmFpbGFibGVUeXBlcyA9IGV4Y2Vzc0RvbUNoaWxkcmVuXG5cdFx0Lm1hcChjaGlsZCA9PiBjaGlsZCAmJiBjaGlsZC5sb2NhbE5hbWUpXG5cdFx0LmZpbHRlcihCb29sZWFuKTtcblx0Y29uc29sZS5lcnJvcihcblx0XHRgRXhwZWN0ZWQgYSBET00gbm9kZSBvZiB0eXBlICR7dHlwZX0gYnV0IGZvdW5kICR7YXZhaWxhYmxlVHlwZXMuam9pbignLCAnKX1hcyBhdmFpbGFibGUgRE9NLW5vZGUocyksIHRoaXMgaXMgY2F1c2VkIGJ5IHRoZSBTU1InZCBIVE1MIGNvbnRhaW5pbmcgZGlmZmVyZW50IERPTS1ub2RlcyBjb21wYXJlZCB0byB0aGUgaHlkcmF0ZWQgb25lLlxcblxcbiR7Z2V0T3duZXJTdGFjayhuZXdWTm9kZSl9YFxuXHQpO1xufTtcbiIsImV4cG9ydCBjb25zdCBFTEVNRU5UX05PREUgPSAxO1xuZXhwb3J0IGNvbnN0IERPQ1VNRU5UX05PREUgPSA5O1xuZXhwb3J0IGNvbnN0IERPQ1VNRU5UX0ZSQUdNRU5UX05PREUgPSAxMTtcbiIsIi8qKlxuICogQXNzaWduIHByb3BlcnRpZXMgZnJvbSBgcHJvcHNgIHRvIGBvYmpgXG4gKiBAdGVtcGxhdGUgTywgUCBUaGUgb2JqIGFuZCBwcm9wcyB0eXBlc1xuICogQHBhcmFtIHtPfSBvYmogVGhlIG9iamVjdCB0byBjb3B5IHByb3BlcnRpZXMgdG9cbiAqIEBwYXJhbSB7UH0gcHJvcHMgVGhlIG9iamVjdCB0byBjb3B5IHByb3BlcnRpZXMgZnJvbVxuICogQHJldHVybnMge08gJiBQfVxuICovXG5leHBvcnQgZnVuY3Rpb24gYXNzaWduKG9iaiwgcHJvcHMpIHtcblx0Zm9yIChsZXQgaSBpbiBwcm9wcykgb2JqW2ldID0gcHJvcHNbaV07XG5cdHJldHVybiAvKiogQHR5cGUge08gJiBQfSAqLyAob2JqKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTmFOKHZhbHVlKSB7XG5cdHJldHVybiB2YWx1ZSAhPT0gdmFsdWU7XG59XG4iLCJpbXBvcnQgeyBpbml0RGVidWcgfSBmcm9tICcuL2RlYnVnJztcbmltcG9ydCAncHJlYWN0L2RldnRvb2xzJztcblxuaW5pdERlYnVnKCk7XG5cbmV4cG9ydCB7IHJlc2V0UHJvcFdhcm5pbmdzIH0gZnJvbSAnLi9jaGVjay1wcm9wcyc7XG4iLCJpbXBvcnR7RnJhZ21lbnQgYXMgbixvcHRpb25zIGFzIGUsQ29tcG9uZW50IGFzIG99ZnJvbVwicHJlYWN0XCI7aW1wb3J0XCJwcmVhY3QvZGV2dG9vbHNcIjt2YXIgdD17fTtmdW5jdGlvbiByKCl7dD17fX1mdW5jdGlvbiBhKGUpe3JldHVybiBlLnR5cGU9PT1uP1wiRnJhZ21lbnRcIjpcImZ1bmN0aW9uXCI9PXR5cGVvZiBlLnR5cGU/ZS50eXBlLmRpc3BsYXlOYW1lfHxlLnR5cGUubmFtZTpcInN0cmluZ1wiPT10eXBlb2YgZS50eXBlP2UudHlwZTpcIiN0ZXh0XCJ9dmFyIGk9W10scz1bXTtmdW5jdGlvbiBjKCl7cmV0dXJuIGkubGVuZ3RoPjA/aVtpLmxlbmd0aC0xXTpudWxsfXZhciBsPSEwO2Z1bmN0aW9uIHUoZSl7cmV0dXJuXCJmdW5jdGlvblwiPT10eXBlb2YgZS50eXBlJiZlLnR5cGUhPW59ZnVuY3Rpb24gZihuKXtmb3IodmFyIGU9W25dLG89bjtudWxsIT1vLl9fbzspZS5wdXNoKG8uX19vKSxvPW8uX19vO3JldHVybiBlLnJlZHVjZShmdW5jdGlvbihuLGUpe24rPVwiICBpbiBcIithKGUpO3ZhciBvPWUuX19zb3VyY2U7cmV0dXJuIG8/bis9XCIgKGF0IFwiK28uZmlsZU5hbWUrXCI6XCIrby5saW5lTnVtYmVyK1wiKVwiOmwmJmNvbnNvbGUud2FybihcIkFkZCBAYmFiZWwvcGx1Z2luLXRyYW5zZm9ybS1yZWFjdC1qc3gtc291cmNlIHRvIGdldCBhIG1vcmUgZGV0YWlsZWQgY29tcG9uZW50IHN0YWNrLiBOb3RlIHRoYXQgeW91IHNob3VsZCBub3QgYWRkIGl0IHRvIHByb2R1Y3Rpb24gYnVpbGRzIG9mIHlvdXIgQXBwIGZvciBidW5kbGUgc2l6ZSByZWFzb25zLlwiKSxsPSExLG4rXCJcXG5cIn0sXCJcIil9dmFyIGQ9XCJmdW5jdGlvblwiPT10eXBlb2YgV2Vha01hcDtmdW5jdGlvbiBwKG4pe3ZhciBlPVtdO3JldHVybiBuLl9faz8obi5fX2suZm9yRWFjaChmdW5jdGlvbihuKXtuJiZcImZ1bmN0aW9uXCI9PXR5cGVvZiBuLnR5cGU/ZS5wdXNoLmFwcGx5KGUscChuKSk6biYmXCJzdHJpbmdcIj09dHlwZW9mIG4udHlwZSYmZS5wdXNoKG4udHlwZSl9KSxlKTplfWZ1bmN0aW9uIGgobil7cmV0dXJuIG4/XCJmdW5jdGlvblwiPT10eXBlb2Ygbi50eXBlP251bGw9PW4uX18/bnVsbCE9bi5fX2UmJm51bGwhPW4uX19lLnBhcmVudE5vZGU/bi5fX2UucGFyZW50Tm9kZS5sb2NhbE5hbWU6XCJcIjpoKG4uX18pOm4udHlwZTpcIlwifXZhciB2PW8ucHJvdG90eXBlLnNldFN0YXRlO2Z1bmN0aW9uIHkobil7cmV0dXJuXCJ0YWJsZVwiPT09bnx8XCJ0Zm9vdFwiPT09bnx8XCJ0Ym9keVwiPT09bnx8XCJ0aGVhZFwiPT09bnx8XCJ0ZFwiPT09bnx8XCJ0clwiPT09bnx8XCJ0aFwiPT09bn1vLnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihuLGUpe3JldHVybiBudWxsPT10aGlzLl9fdiYmbnVsbD09dGhpcy5zdGF0ZSYmY29uc29sZS53YXJuKCdDYWxsaW5nIFwidGhpcy5zZXRTdGF0ZVwiIGluc2lkZSB0aGUgY29uc3RydWN0b3Igb2YgYSBjb21wb25lbnQgaXMgYSBuby1vcCBhbmQgbWlnaHQgYmUgYSBidWcgaW4geW91ciBhcHBsaWNhdGlvbi4gSW5zdGVhZCwgc2V0IFwidGhpcy5zdGF0ZSA9IHt9XCIgZGlyZWN0bHkuXFxuXFxuJytmKGMoKSkpLHYuY2FsbCh0aGlzLG4sZSl9O3ZhciBtPS9eKGFkZHJlc3N8YXJ0aWNsZXxhc2lkZXxibG9ja3F1b3RlfGRldGFpbHN8ZGl2fGRsfGZpZWxkc2V0fGZpZ2NhcHRpb258ZmlndXJlfGZvb3Rlcnxmb3JtfGgxfGgyfGgzfGg0fGg1fGg2fGhlYWRlcnxoZ3JvdXB8aHJ8bWFpbnxtZW51fG5hdnxvbHxwfHByZXxzZWFyY2h8c2VjdGlvbnx0YWJsZXx1bCkkLyxiPW8ucHJvdG90eXBlLmZvcmNlVXBkYXRlO2Z1bmN0aW9uIHcobil7dmFyIGU9bi5wcm9wcyxvPWEobiksdD1cIlwiO2Zvcih2YXIgciBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkocikmJlwiY2hpbGRyZW5cIiE9PXIpe3ZhciBpPWVbcl07XCJmdW5jdGlvblwiPT10eXBlb2YgaSYmKGk9XCJmdW5jdGlvbiBcIisoaS5kaXNwbGF5TmFtZXx8aS5uYW1lKStcIigpIHt9XCIpLGk9T2JqZWN0KGkpIT09aXx8aS50b1N0cmluZz9pK1wiXCI6T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGkpLHQrPVwiIFwiK3IrXCI9XCIrSlNPTi5zdHJpbmdpZnkoaSl9dmFyIHM9ZS5jaGlsZHJlbjtyZXR1cm5cIjxcIitvK3QrKHMmJnMubGVuZ3RoP1wiPi4uPC9cIitvK1wiPlwiOlwiIC8+XCIpfW8ucHJvdG90eXBlLmZvcmNlVXBkYXRlPWZ1bmN0aW9uKG4pe3JldHVybiBudWxsPT10aGlzLl9fdj9jb25zb2xlLndhcm4oJ0NhbGxpbmcgXCJ0aGlzLmZvcmNlVXBkYXRlXCIgaW5zaWRlIHRoZSBjb25zdHJ1Y3RvciBvZiBhIGNvbXBvbmVudCBpcyBhIG5vLW9wIGFuZCBtaWdodCBiZSBhIGJ1ZyBpbiB5b3VyIGFwcGxpY2F0aW9uLlxcblxcbicrZihjKCkpKTpudWxsPT10aGlzLl9fUCYmY29uc29sZS53YXJuKCdDYW5cXCd0IGNhbGwgXCJ0aGlzLmZvcmNlVXBkYXRlXCIgb24gYW4gdW5tb3VudGVkIGNvbXBvbmVudC4gVGhpcyBpcyBhIG5vLW9wLCBidXQgaXQgaW5kaWNhdGVzIGEgbWVtb3J5IGxlYWsgaW4geW91ciBhcHBsaWNhdGlvbi4gVG8gZml4LCBjYW5jZWwgYWxsIHN1YnNjcmlwdGlvbnMgYW5kIGFzeW5jaHJvbm91cyB0YXNrcyBpbiB0aGUgY29tcG9uZW50V2lsbFVubW91bnQgbWV0aG9kLlxcblxcbicrZih0aGlzLl9fdikpLGIuY2FsbCh0aGlzLG4pfSxlLl9fbT1mdW5jdGlvbihuLGUpe3ZhciBvPW4udHlwZSx0PWUubWFwKGZ1bmN0aW9uKG4pe3JldHVybiBuJiZuLmxvY2FsTmFtZX0pLmZpbHRlcihCb29sZWFuKTtjb25zb2xlLmVycm9yKFwiRXhwZWN0ZWQgYSBET00gbm9kZSBvZiB0eXBlIFwiK28rXCIgYnV0IGZvdW5kIFwiK3Quam9pbihcIiwgXCIpK1wiYXMgYXZhaWxhYmxlIERPTS1ub2RlKHMpLCB0aGlzIGlzIGNhdXNlZCBieSB0aGUgU1NSJ2QgSFRNTCBjb250YWluaW5nIGRpZmZlcmVudCBET00tbm9kZXMgY29tcGFyZWQgdG8gdGhlIGh5ZHJhdGVkIG9uZS5cXG5cXG5cIitmKG4pKX0sZnVuY3Rpb24oKXshZnVuY3Rpb24oKXt2YXIgbj1lLl9fYixvPWUuZGlmZmVkLHQ9ZS5fXyxyPWUudm5vZGUsYT1lLl9fcjtlLmRpZmZlZD1mdW5jdGlvbihuKXt1KG4pJiZzLnBvcCgpLGkucG9wKCksbyYmbyhuKX0sZS5fX2I9ZnVuY3Rpb24oZSl7dShlKSYmaS5wdXNoKGUpLG4mJm4oZSl9LGUuX189ZnVuY3Rpb24obixlKXtzPVtdLHQmJnQobixlKX0sZS52bm9kZT1mdW5jdGlvbihuKXtuLl9fbz1zLmxlbmd0aD4wP3Nbcy5sZW5ndGgtMV06bnVsbCxyJiZyKG4pfSxlLl9fcj1mdW5jdGlvbihuKXt1KG4pJiZzLnB1c2gobiksYSYmYShuKX19KCk7dmFyIG49ITEsbz1lLl9fYixyPWUuZGlmZmVkLGM9ZS52bm9kZSxsPWUuX19yLHY9ZS5fX2UsYj1lLl9fLGc9ZS5fX2gsRT1kP3t1c2VFZmZlY3Q6bmV3IFdlYWtNYXAsdXNlTGF5b3V0RWZmZWN0Om5ldyBXZWFrTWFwLGxhenlQcm9wVHlwZXM6bmV3IFdlYWtNYXB9Om51bGwsaz1bXTtlLl9fZT1mdW5jdGlvbihuLGUsbyx0KXtpZihlJiZlLl9fYyYmXCJmdW5jdGlvblwiPT10eXBlb2Ygbi50aGVuKXt2YXIgcj1uO249bmV3IEVycm9yKFwiTWlzc2luZyBTdXNwZW5zZS4gVGhlIHRocm93aW5nIGNvbXBvbmVudCB3YXM6IFwiK2EoZSkpO2Zvcih2YXIgaT1lO2k7aT1pLl9fKWlmKGkuX19jJiZpLl9fYy5fX2Mpe249cjticmVha31pZihuIGluc3RhbmNlb2YgRXJyb3IpdGhyb3cgbn10cnl7KHQ9dHx8e30pLmNvbXBvbmVudFN0YWNrPWYoZSksdihuLGUsbyx0KSxcImZ1bmN0aW9uXCIhPXR5cGVvZiBuLnRoZW4mJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBufSl9Y2F0Y2gobil7dGhyb3cgbn19LGUuX189ZnVuY3Rpb24obixlKXtpZighZSl0aHJvdyBuZXcgRXJyb3IoXCJVbmRlZmluZWQgcGFyZW50IHBhc3NlZCB0byByZW5kZXIoKSwgdGhpcyBpcyB0aGUgc2Vjb25kIGFyZ3VtZW50LlxcbkNoZWNrIGlmIHRoZSBlbGVtZW50IGlzIGF2YWlsYWJsZSBpbiB0aGUgRE9NL2hhcyB0aGUgY29ycmVjdCBpZC5cIik7dmFyIG87c3dpdGNoKGUubm9kZVR5cGUpe2Nhc2UgMTpjYXNlIDExOmNhc2UgOTpvPSEwO2JyZWFrO2RlZmF1bHQ6bz0hMX1pZighbyl7dmFyIHQ9YShuKTt0aHJvdyBuZXcgRXJyb3IoXCJFeHBlY3RlZCBhIHZhbGlkIEhUTUwgbm9kZSBhcyBhIHNlY29uZCBhcmd1bWVudCB0byByZW5kZXIuXFx0UmVjZWl2ZWQgXCIrZStcIiBpbnN0ZWFkOiByZW5kZXIoPFwiK3QrXCIgLz4sIFwiK2UrXCIpO1wiKX1iJiZiKG4sZSl9LGUuX19iPWZ1bmN0aW9uKGUpe3ZhciByPWUudHlwZTtpZihuPSEwLHZvaWQgMD09PXIpdGhyb3cgbmV3IEVycm9yKFwiVW5kZWZpbmVkIGNvbXBvbmVudCBwYXNzZWQgdG8gY3JlYXRlRWxlbWVudCgpXFxuXFxuWW91IGxpa2VseSBmb3Jnb3QgdG8gZXhwb3J0IHlvdXIgY29tcG9uZW50IG9yIG1pZ2h0IGhhdmUgbWl4ZWQgdXAgZGVmYXVsdCBhbmQgbmFtZWQgaW1wb3J0c1wiK3coZSkrXCJcXG5cXG5cIitmKGUpKTtpZihudWxsIT1yJiZcIm9iamVjdFwiPT10eXBlb2Ygcil7aWYodm9pZCAwIT09ci5fX2smJnZvaWQgMCE9PXIuX19lKXRocm93IG5ldyBFcnJvcihcIkludmFsaWQgdHlwZSBwYXNzZWQgdG8gY3JlYXRlRWxlbWVudCgpOiBcIityK1wiXFxuXFxuRGlkIHlvdSBhY2NpZGVudGFsbHkgcGFzcyBhIEpTWCBsaXRlcmFsIGFzIEpTWCB0d2ljZT9cXG5cXG4gIGxldCBNeVwiK2EoZSkrXCIgPSBcIit3KHIpK1wiO1xcbiAgbGV0IHZub2RlID0gPE15XCIrYShlKStcIiAvPjtcXG5cXG5UaGlzIHVzdWFsbHkgaGFwcGVucyB3aGVuIHlvdSBleHBvcnQgYSBKU1ggbGl0ZXJhbCBhbmQgbm90IHRoZSBjb21wb25lbnQuXFxuXFxuXCIrZihlKSk7dGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCB0eXBlIHBhc3NlZCB0byBjcmVhdGVFbGVtZW50KCk6IFwiKyhBcnJheS5pc0FycmF5KHIpP1wiYXJyYXlcIjpyKSl9aWYodm9pZCAwIT09ZS5yZWYmJlwiZnVuY3Rpb25cIiE9dHlwZW9mIGUucmVmJiZcIm9iamVjdFwiIT10eXBlb2YgZS5yZWYmJiEoXCIkJHR5cGVvZlwiaW4gZSkpdGhyb3cgbmV3IEVycm9yKCdDb21wb25lbnRcXCdzIFwicmVmXCIgcHJvcGVydHkgc2hvdWxkIGJlIGEgZnVuY3Rpb24sIG9yIGFuIG9iamVjdCBjcmVhdGVkIGJ5IGNyZWF0ZVJlZigpLCBidXQgZ290IFsnK3R5cGVvZiBlLnJlZitcIl0gaW5zdGVhZFxcblwiK3coZSkrXCJcXG5cXG5cIitmKGUpKTtpZihcInN0cmluZ1wiPT10eXBlb2YgZS50eXBlKWZvcih2YXIgaSBpbiBlLnByb3BzKWlmKFwib1wiPT09aVswXSYmXCJuXCI9PT1pWzFdJiZcImZ1bmN0aW9uXCIhPXR5cGVvZiBlLnByb3BzW2ldJiZudWxsIT1lLnByb3BzW2ldKXRocm93IG5ldyBFcnJvcihcIkNvbXBvbmVudCdzIFxcXCJcIitpKydcIiBwcm9wZXJ0eSBzaG91bGQgYmUgYSBmdW5jdGlvbiwgYnV0IGdvdCBbJyt0eXBlb2YgZS5wcm9wc1tpXStcIl0gaW5zdGVhZFxcblwiK3coZSkrXCJcXG5cXG5cIitmKGUpKTtpZihcImZ1bmN0aW9uXCI9PXR5cGVvZiBlLnR5cGUmJmUudHlwZS5wcm9wVHlwZXMpe2lmKFwiTGF6eVwiPT09ZS50eXBlLmRpc3BsYXlOYW1lJiZFJiYhRS5sYXp5UHJvcFR5cGVzLmhhcyhlLnR5cGUpKXt2YXIgcz1cIlByb3BUeXBlcyBhcmUgbm90IHN1cHBvcnRlZCBvbiBsYXp5KCkuIFVzZSBwcm9wVHlwZXMgb24gdGhlIHdyYXBwZWQgY29tcG9uZW50IGl0c2VsZi4gXCI7dHJ5e3ZhciBjPWUudHlwZSgpO0UubGF6eVByb3BUeXBlcy5zZXQoZS50eXBlLCEwKSxjb25zb2xlLndhcm4ocytcIkNvbXBvbmVudCB3cmFwcGVkIGluIGxhenkoKSBpcyBcIithKGMpKX1jYXRjaChuKXtjb25zb2xlLndhcm4ocytcIldlIHdpbGwgbG9nIHRoZSB3cmFwcGVkIGNvbXBvbmVudCdzIG5hbWUgb25jZSBpdCBpcyBsb2FkZWQuXCIpfX12YXIgbD1lLnByb3BzO2UudHlwZS5fX2YmJmRlbGV0ZShsPWZ1bmN0aW9uKG4sZSl7Zm9yKHZhciBvIGluIGUpbltvXT1lW29dO3JldHVybiBufSh7fSxsKSkucmVmLGZ1bmN0aW9uKG4sZSxvLHIsYSl7T2JqZWN0LmtleXMobikuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgaTt0cnl7aT1uW29dKGUsbyxyLFwicHJvcFwiLG51bGwsXCJTRUNSRVRfRE9fTk9UX1BBU1NfVEhJU19PUl9ZT1VfV0lMTF9CRV9GSVJFRFwiKX1jYXRjaChuKXtpPW59aSYmIShpLm1lc3NhZ2UgaW4gdCkmJih0W2kubWVzc2FnZV09ITAsY29uc29sZS5lcnJvcihcIkZhaWxlZCBwcm9wIHR5cGU6IFwiK2kubWVzc2FnZSsoYSYmXCJcXG5cIithKCl8fFwiXCIpKSl9KX0oZS50eXBlLnByb3BUeXBlcyxsLDAsYShlKSxmdW5jdGlvbigpe3JldHVybiBmKGUpfSl9byYmbyhlKX07dmFyIFQsXz0wO2UuX19yPWZ1bmN0aW9uKGUpe2wmJmwoZSksbj0hMDt2YXIgbz1lLl9fYztpZihvPT09VD9fKys6Xz0xLF8+PTI1KXRocm93IG5ldyBFcnJvcihcIlRvbyBtYW55IHJlLXJlbmRlcnMuIFRoaXMgaXMgbGltaXRlZCB0byBwcmV2ZW50IGFuIGluZmluaXRlIGxvb3Agd2hpY2ggbWF5IGxvY2sgdXAgeW91ciBicm93c2VyLiBUaGUgY29tcG9uZW50IGNhdXNpbmcgdGhpcyBpczogXCIrYShlKSk7VD1vfSxlLl9faD1mdW5jdGlvbihlLG8sdCl7aWYoIWV8fCFuKXRocm93IG5ldyBFcnJvcihcIkhvb2sgY2FuIG9ubHkgYmUgaW52b2tlZCBmcm9tIHJlbmRlciBtZXRob2RzLlwiKTtnJiZnKGUsbyx0KX07dmFyIE89ZnVuY3Rpb24obixlKXtyZXR1cm57Z2V0OmZ1bmN0aW9uKCl7dmFyIG89XCJnZXRcIituK2U7ayYmay5pbmRleE9mKG8pPDAmJihrLnB1c2gobyksY29uc29sZS53YXJuKFwiZ2V0dGluZyB2bm9kZS5cIituK1wiIGlzIGRlcHJlY2F0ZWQsIFwiK2UpKX0sc2V0OmZ1bmN0aW9uKCl7dmFyIG89XCJzZXRcIituK2U7ayYmay5pbmRleE9mKG8pPDAmJihrLnB1c2gobyksY29uc29sZS53YXJuKFwic2V0dGluZyB2bm9kZS5cIituK1wiIGlzIG5vdCBhbGxvd2VkLCBcIitlKSl9fX0sST17bm9kZU5hbWU6TyhcIm5vZGVOYW1lXCIsXCJ1c2Ugdm5vZGUudHlwZVwiKSxhdHRyaWJ1dGVzOk8oXCJhdHRyaWJ1dGVzXCIsXCJ1c2Ugdm5vZGUucHJvcHNcIiksY2hpbGRyZW46TyhcImNoaWxkcmVuXCIsXCJ1c2Ugdm5vZGUucHJvcHMuY2hpbGRyZW5cIil9LE09T2JqZWN0LmNyZWF0ZSh7fSxJKTtlLnZub2RlPWZ1bmN0aW9uKG4pe3ZhciBlPW4ucHJvcHM7aWYobnVsbCE9PW4udHlwZSYmbnVsbCE9ZSYmKFwiX19zb3VyY2VcImluIGV8fFwiX19zZWxmXCJpbiBlKSl7dmFyIG89bi5wcm9wcz17fTtmb3IodmFyIHQgaW4gZSl7dmFyIHI9ZVt0XTtcIl9fc291cmNlXCI9PT10P24uX19zb3VyY2U9cjpcIl9fc2VsZlwiPT09dD9uLl9fc2VsZj1yOm9bdF09cn19bi5fX3Byb3RvX189TSxjJiZjKG4pfSxlLmRpZmZlZD1mdW5jdGlvbihlKXt2YXIgbyx0PWUudHlwZSxpPWUuX187aWYoZS5fX2smJmUuX19rLmZvckVhY2goZnVuY3Rpb24obil7aWYoXCJvYmplY3RcIj09dHlwZW9mIG4mJm4mJnZvaWQgMD09PW4udHlwZSl7dmFyIG89T2JqZWN0LmtleXMobikuam9pbihcIixcIik7dGhyb3cgbmV3IEVycm9yKFwiT2JqZWN0cyBhcmUgbm90IHZhbGlkIGFzIGEgY2hpbGQuIEVuY291bnRlcmVkIGFuIG9iamVjdCB3aXRoIHRoZSBrZXlzIHtcIitvK1wifS5cXG5cXG5cIitmKGUpKX19KSxlLl9fYz09PVQmJihfPTApLFwic3RyaW5nXCI9PXR5cGVvZiB0JiYoeSh0KXx8XCJwXCI9PT10fHxcImFcIj09PXR8fFwiYnV0dG9uXCI9PT10KSl7dmFyIHM9aChpKTtpZihcIlwiIT09cyYmeSh0KSlcInRhYmxlXCI9PT10JiZcInRkXCIhPT1zJiZ5KHMpPyhjb25zb2xlLmxvZyhzLGkuX19lKSxjb25zb2xlLmVycm9yKFwiSW1wcm9wZXIgbmVzdGluZyBvZiB0YWJsZS4gWW91ciA8dGFibGU+IHNob3VsZCBub3QgaGF2ZSBhIHRhYmxlLW5vZGUgcGFyZW50LlwiK3coZSkrXCJcXG5cXG5cIitmKGUpKSk6XCJ0aGVhZFwiIT09dCYmXCJ0Zm9vdFwiIT09dCYmXCJ0Ym9keVwiIT09dHx8XCJ0YWJsZVwiPT09cz9cInRyXCI9PT10JiZcInRoZWFkXCIhPT1zJiZcInRmb290XCIhPT1zJiZcInRib2R5XCIhPT1zP2NvbnNvbGUuZXJyb3IoXCJJbXByb3BlciBuZXN0aW5nIG9mIHRhYmxlLiBZb3VyIDx0cj4gc2hvdWxkIGhhdmUgYSA8dGhlYWQvdGJvZHkvdGZvb3Q+IHBhcmVudC5cIit3KGUpK1wiXFxuXFxuXCIrZihlKSk6XCJ0ZFwiPT09dCYmXCJ0clwiIT09cz9jb25zb2xlLmVycm9yKFwiSW1wcm9wZXIgbmVzdGluZyBvZiB0YWJsZS4gWW91ciA8dGQ+IHNob3VsZCBoYXZlIGEgPHRyPiBwYXJlbnQuXCIrdyhlKStcIlxcblxcblwiK2YoZSkpOlwidGhcIj09PXQmJlwidHJcIiE9PXMmJmNvbnNvbGUuZXJyb3IoXCJJbXByb3BlciBuZXN0aW5nIG9mIHRhYmxlLiBZb3VyIDx0aD4gc2hvdWxkIGhhdmUgYSA8dHI+LlwiK3coZSkrXCJcXG5cXG5cIitmKGUpKTpjb25zb2xlLmVycm9yKFwiSW1wcm9wZXIgbmVzdGluZyBvZiB0YWJsZS4gWW91ciA8dGhlYWQvdGJvZHkvdGZvb3Q+IHNob3VsZCBoYXZlIGEgPHRhYmxlPiBwYXJlbnQuXCIrdyhlKStcIlxcblxcblwiK2YoZSkpO2Vsc2UgaWYoXCJwXCI9PT10KXt2YXIgYz1wKGUpLmZpbHRlcihmdW5jdGlvbihuKXtyZXR1cm4gbS50ZXN0KG4pfSk7Yy5sZW5ndGgmJmNvbnNvbGUuZXJyb3IoXCJJbXByb3BlciBuZXN0aW5nIG9mIHBhcmFncmFwaC4gWW91ciA8cD4gc2hvdWxkIG5vdCBoYXZlIFwiK2Muam9pbihcIiwgXCIpK1wiIGFzIGNoaWxkLWVsZW1lbnRzLlwiK3coZSkrXCJcXG5cXG5cIitmKGUpKX1lbHNlXCJhXCIhPT10JiZcImJ1dHRvblwiIT09dHx8LTEhPT1wKGUpLmluZGV4T2YodCkmJmNvbnNvbGUuZXJyb3IoXCJJbXByb3BlciBuZXN0aW5nIG9mIGludGVyYWN0aXZlIGNvbnRlbnQuIFlvdXIgPFwiK3QrXCI+IHNob3VsZCBub3QgaGF2ZSBvdGhlciBcIisoXCJhXCI9PT10P1wiYW5jaG9yXCI6XCJidXR0b25cIikrXCIgdGFncyBhcyBjaGlsZC1lbGVtZW50cy5cIit3KGUpK1wiXFxuXFxuXCIrZihlKSl9aWYobj0hMSxyJiZyKGUpLG51bGwhPWUuX19rKWZvcih2YXIgbD1bXSx1PTA7dTxlLl9fay5sZW5ndGg7dSsrKXt2YXIgZD1lLl9fa1t1XTtpZihkJiZudWxsIT1kLmtleSl7dmFyIHY9ZC5rZXk7aWYoLTEhPT1sLmluZGV4T2Yodikpe2NvbnNvbGUuZXJyb3IoJ0ZvbGxvd2luZyBjb21wb25lbnQgaGFzIHR3byBvciBtb3JlIGNoaWxkcmVuIHdpdGggdGhlIHNhbWUga2V5IGF0dHJpYnV0ZTogXCInK3YrJ1wiLiBUaGlzIG1heSBjYXVzZSBnbGl0Y2hlcyBhbmQgbWlzYmVoYXZpb3IgaW4gcmVuZGVyaW5nIHByb2Nlc3MuIENvbXBvbmVudDogXFxuXFxuJyt3KGUpK1wiXFxuXFxuXCIrZihlKSk7YnJlYWt9bC5wdXNoKHYpfX1pZihudWxsIT1lLl9fYyYmbnVsbCE9ZS5fX2MuX19IKXt2YXIgYj1lLl9fYy5fX0guX187aWYoYilmb3IodmFyIGc9MDtnPGIubGVuZ3RoO2crPTEpe3ZhciBFPWJbZ107aWYoRS5fX0gpZm9yKHZhciBrPTA7azxFLl9fSC5sZW5ndGg7aysrKWlmKChvPUUuX19IW2tdKSE9byl7dmFyIE89YShlKTtjb25zb2xlLndhcm4oXCJJbnZhbGlkIGFyZ3VtZW50IHBhc3NlZCB0byBob29rLiBIb29rcyBzaG91bGQgbm90IGJlIGNhbGxlZCB3aXRoIE5hTiBpbiB0aGUgZGVwZW5kZW5jeSBhcnJheS4gSG9vayBpbmRleCBcIitnK1wiIGluIGNvbXBvbmVudCBcIitPK1wiIHdhcyBjYWxsZWQgd2l0aCBOYU4uXCIpfX19fX0oKTtleHBvcnR7ciBhcyByZXNldFByb3BXYXJuaW5nc307XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kZWJ1Zy5tb2R1bGUuanMubWFwXG4iXX0=
|