@wordpress/boot 0.1.1-next.2f1c7c01b.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/LICENSE.md +788 -0
  2. package/build-module/components/app/index.js +32 -0
  3. package/build-module/components/app/index.js.map +7 -0
  4. package/build-module/components/app/router.js +119 -0
  5. package/build-module/components/app/router.js.map +7 -0
  6. package/build-module/components/navigation/drilldown-item/index.js +49 -0
  7. package/build-module/components/navigation/drilldown-item/index.js.map +7 -0
  8. package/build-module/components/navigation/dropdown-item/index.js +162 -0
  9. package/build-module/components/navigation/dropdown-item/index.js.map +7 -0
  10. package/build-module/components/navigation/index.js +101 -0
  11. package/build-module/components/navigation/index.js.map +7 -0
  12. package/build-module/components/navigation/items.js +60 -0
  13. package/build-module/components/navigation/items.js.map +7 -0
  14. package/build-module/components/navigation/navigation-item/index.js +180 -0
  15. package/build-module/components/navigation/navigation-item/index.js.map +7 -0
  16. package/build-module/components/navigation/navigation-screen/index.js +196 -0
  17. package/build-module/components/navigation/navigation-screen/index.js.map +7 -0
  18. package/build-module/components/navigation/path-matching.js +78 -0
  19. package/build-module/components/navigation/path-matching.js.map +7 -0
  20. package/build-module/components/navigation/router-link-item.js +14 -0
  21. package/build-module/components/navigation/router-link-item.js.map +7 -0
  22. package/build-module/components/navigation/use-sidebar-parent.js +52 -0
  23. package/build-module/components/navigation/use-sidebar-parent.js.map +7 -0
  24. package/build-module/components/root/index.js +115 -0
  25. package/build-module/components/root/index.js.map +7 -0
  26. package/build-module/components/sidebar/index.js +78 -0
  27. package/build-module/components/sidebar/index.js.map +7 -0
  28. package/build-module/components/site-hub/index.js +153 -0
  29. package/build-module/components/site-hub/index.js.map +7 -0
  30. package/build-module/components/site-icon/index.js +115 -0
  31. package/build-module/components/site-icon/index.js.map +7 -0
  32. package/build-module/components/site-icon-link/index.js +101 -0
  33. package/build-module/components/site-icon-link/index.js.map +7 -0
  34. package/build-module/index.js +622 -0
  35. package/build-module/index.js.map +7 -0
  36. package/build-module/lock-unlock.js +11 -0
  37. package/build-module/lock-unlock.js.map +7 -0
  38. package/build-module/store/actions.js +19 -0
  39. package/build-module/store/actions.js.map +7 -0
  40. package/build-module/store/index.js +17 -0
  41. package/build-module/store/index.js.map +7 -0
  42. package/build-module/store/reducer.js +27 -0
  43. package/build-module/store/reducer.js.map +7 -0
  44. package/build-module/store/selectors.js +12 -0
  45. package/build-module/store/selectors.js.map +7 -0
  46. package/build-module/store/types.js +1 -0
  47. package/build-module/store/types.js.map +7 -0
  48. package/build-style/style-rtl.css +612 -0
  49. package/build-style/style.css +612 -0
  50. package/build-types/components/app/index.d.ts +6 -0
  51. package/build-types/components/app/index.d.ts.map +1 -0
  52. package/build-types/components/app/router.d.ts +7 -0
  53. package/build-types/components/app/router.d.ts.map +1 -0
  54. package/build-types/components/navigation/drilldown-item/index.d.ts +34 -0
  55. package/build-types/components/navigation/drilldown-item/index.d.ts.map +1 -0
  56. package/build-types/components/navigation/dropdown-item/index.d.ts +36 -0
  57. package/build-types/components/navigation/dropdown-item/index.d.ts.map +1 -0
  58. package/build-types/components/navigation/index.d.ts +3 -0
  59. package/build-types/components/navigation/index.d.ts.map +1 -0
  60. package/build-types/components/navigation/items.d.ts +16 -0
  61. package/build-types/components/navigation/items.d.ts.map +1 -0
  62. package/build-types/components/navigation/navigation-item/index.d.ts +28 -0
  63. package/build-types/components/navigation/navigation-item/index.d.ts.map +1 -0
  64. package/build-types/components/navigation/navigation-screen/index.d.ts +24 -0
  65. package/build-types/components/navigation/navigation-screen/index.d.ts.map +1 -0
  66. package/build-types/components/navigation/path-matching.d.ts +30 -0
  67. package/build-types/components/navigation/path-matching.d.ts.map +1 -0
  68. package/build-types/components/navigation/router-link-item.d.ts +5 -0
  69. package/build-types/components/navigation/router-link-item.d.ts.map +1 -0
  70. package/build-types/components/navigation/use-sidebar-parent.d.ts +12 -0
  71. package/build-types/components/navigation/use-sidebar-parent.d.ts.map +1 -0
  72. package/build-types/components/root/index.d.ts +3 -0
  73. package/build-types/components/root/index.d.ts.map +1 -0
  74. package/build-types/components/sidebar/index.d.ts +3 -0
  75. package/build-types/components/sidebar/index.d.ts.map +1 -0
  76. package/build-types/components/site-hub/index.d.ts +4 -0
  77. package/build-types/components/site-hub/index.d.ts.map +1 -0
  78. package/build-types/components/site-icon/index.d.ts +9 -0
  79. package/build-types/components/site-icon/index.d.ts.map +1 -0
  80. package/build-types/components/site-icon-link/index.d.ts +8 -0
  81. package/build-types/components/site-icon-link/index.d.ts.map +1 -0
  82. package/build-types/index.d.ts +6 -0
  83. package/build-types/index.d.ts.map +1 -0
  84. package/build-types/lock-unlock.d.ts +2 -0
  85. package/build-types/lock-unlock.d.ts.map +1 -0
  86. package/build-types/store/actions.d.ts +15 -0
  87. package/build-types/store/actions.d.ts.map +1 -0
  88. package/build-types/store/index.d.ts +6 -0
  89. package/build-types/store/index.d.ts.map +1 -0
  90. package/build-types/store/reducer.d.ts +7 -0
  91. package/build-types/store/reducer.d.ts.map +1 -0
  92. package/build-types/store/selectors.d.ts +7 -0
  93. package/build-types/store/selectors.d.ts.map +1 -0
  94. package/build-types/store/types.d.ts +63 -0
  95. package/build-types/store/types.d.ts.map +1 -0
  96. package/package.json +64 -0
  97. package/src/components/app/index.tsx +45 -0
  98. package/src/components/app/router.tsx +198 -0
  99. package/src/components/navigation/drilldown-item/index.tsx +88 -0
  100. package/src/components/navigation/dropdown-item/index.tsx +134 -0
  101. package/src/components/navigation/dropdown-item/style.scss +23 -0
  102. package/src/components/navigation/index.tsx +126 -0
  103. package/src/components/navigation/items.tsx +93 -0
  104. package/src/components/navigation/navigation-item/index.tsx +88 -0
  105. package/src/components/navigation/navigation-item/style.scss +52 -0
  106. package/src/components/navigation/navigation-screen/index.tsx +147 -0
  107. package/src/components/navigation/navigation-screen/style.scss +34 -0
  108. package/src/components/navigation/path-matching.ts +149 -0
  109. package/src/components/navigation/router-link-item.tsx +22 -0
  110. package/src/components/navigation/use-sidebar-parent.ts +77 -0
  111. package/src/components/root/index.tsx +42 -0
  112. package/src/components/root/style.scss +41 -0
  113. package/src/components/sidebar/index.tsx +17 -0
  114. package/src/components/sidebar/style.scss +15 -0
  115. package/src/components/site-hub/index.tsx +67 -0
  116. package/src/components/site-hub/style.scss +54 -0
  117. package/src/components/site-icon/index.tsx +60 -0
  118. package/src/components/site-icon/style.scss +19 -0
  119. package/src/components/site-icon-link/index.tsx +43 -0
  120. package/src/components/site-icon-link/style.scss +24 -0
  121. package/src/index.tsx +5 -0
  122. package/src/lock-unlock.ts +9 -0
  123. package/src/store/actions.ts +23 -0
  124. package/src/store/index.ts +23 -0
  125. package/src/store/reducer.ts +31 -0
  126. package/src/store/selectors.ts +12 -0
  127. package/src/store/types.ts +70 -0
  128. package/src/style.scss +2 -0
  129. package/tsconfig.json +23 -0
  130. package/tsconfig.tsbuildinfo +1 -0
@@ -0,0 +1,60 @@
1
+ // packages/boot/src/components/navigation/items.tsx
2
+ import { isValidElement } from "@wordpress/element";
3
+ import { Dashicon, Icon } from "@wordpress/components";
4
+ import { SVG } from "@wordpress/primitives";
5
+ import { jsx } from "react/jsx-runtime";
6
+ function isSvg(element) {
7
+ return isValidElement(element) && (element.type === SVG || element.type === "svg");
8
+ }
9
+ function wrapIcon(icon, shouldShowPlaceholder = true) {
10
+ if (isSvg(icon)) {
11
+ return /* @__PURE__ */ jsx(Icon, { icon });
12
+ }
13
+ if (typeof icon === "string" && icon.startsWith("dashicons-")) {
14
+ const iconKey = icon.replace(
15
+ /^dashicons-/,
16
+ ""
17
+ );
18
+ return /* @__PURE__ */ jsx(
19
+ Dashicon,
20
+ {
21
+ style: { padding: "2px" },
22
+ icon: iconKey,
23
+ "aria-hidden": "true"
24
+ }
25
+ );
26
+ }
27
+ if (typeof icon === "string" && icon.startsWith("data:")) {
28
+ return /* @__PURE__ */ jsx(
29
+ "img",
30
+ {
31
+ src: icon,
32
+ alt: "",
33
+ "aria-hidden": "true",
34
+ style: {
35
+ width: "20px",
36
+ height: "20px",
37
+ display: "block",
38
+ padding: "2px"
39
+ }
40
+ }
41
+ );
42
+ }
43
+ if (icon) {
44
+ return icon;
45
+ }
46
+ if (shouldShowPlaceholder) {
47
+ return /* @__PURE__ */ jsx(
48
+ "div",
49
+ {
50
+ style: { width: "24px", height: "24px" },
51
+ "aria-hidden": "true"
52
+ }
53
+ );
54
+ }
55
+ return null;
56
+ }
57
+ export {
58
+ wrapIcon
59
+ };
60
+ //# sourceMappingURL=items.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/navigation/items.tsx"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { isValidElement } from '@wordpress/element';\nimport { Dashicon, Icon } from '@wordpress/components';\nimport { SVG } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport type { IconType } from '../../store/types';\n\n/**\n * Type guard for verifying whether a given element\n * is a valid SVG element for the Icon component.\n *\n * @param element - The element to check\n */\nfunction isSvg( element: unknown ): element is JSX.Element {\n\treturn (\n\t\tisValidElement( element ) &&\n\t\t( element.type === SVG || element.type === 'svg' )\n\t);\n}\n\n/**\n * Converts the given IconType into a renderable component:\n * - Dashicon string into a Dashicon component\n * - JSX SVG element into an Icon component\n * - Data URL into an img element\n *\n * @param icon - The icon to convert\n * @param shouldShowPlaceholder - Whether to show placeholder when no icon is provided\n * @return The converted icon as a JSX element\n */\nexport function wrapIcon(\n\ticon?: IconType,\n\tshouldShowPlaceholder: boolean = true\n) {\n\tif ( isSvg( icon ) ) {\n\t\treturn <Icon icon={ icon } />;\n\t}\n\n\tif ( typeof icon === 'string' && icon.startsWith( 'dashicons-' ) ) {\n\t\tconst iconKey = icon.replace(\n\t\t\t/^dashicons-/,\n\t\t\t''\n\t\t) as React.ComponentProps< typeof Dashicon >[ 'icon' ];\n\n\t\treturn (\n\t\t\t<Dashicon\n\t\t\t\tstyle={ { padding: '2px' } }\n\t\t\t\ticon={ iconKey }\n\t\t\t\taria-hidden=\"true\"\n\t\t\t/>\n\t\t);\n\t}\n\n\t// Handle data URLs (SVG images)\n\tif ( typeof icon === 'string' && icon.startsWith( 'data:' ) ) {\n\t\treturn (\n\t\t\t<img\n\t\t\t\tsrc={ icon }\n\t\t\t\talt=\"\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth: '20px',\n\t\t\t\t\theight: '20px',\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\tpadding: '2px',\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// If icon is provided and valid, return it as-is\n\tif ( icon ) {\n\t\treturn icon;\n\t}\n\n\t// Return empty 24px placeholder for alignment when no icon is provided\n\t// Only if shouldShowPlaceholder is true\n\tif ( shouldShowPlaceholder ) {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={ { width: '24px', height: '24px' } }\n\t\t\t\taria-hidden=\"true\"\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn null;\n}\n"],
5
+ "mappings": ";AAGA,SAAS,sBAAsB;AAC/B,SAAS,UAAU,YAAY;AAC/B,SAAS,WAAW;AAmCX;AAtBT,SAAS,MAAO,SAA2C;AAC1D,SACC,eAAgB,OAAQ,MACtB,QAAQ,SAAS,OAAO,QAAQ,SAAS;AAE7C;AAYO,SAAS,SACf,MACA,wBAAiC,MAChC;AACD,MAAK,MAAO,IAAK,GAAI;AACpB,WAAO,oBAAC,QAAK,MAAc;AAAA,EAC5B;AAEA,MAAK,OAAO,SAAS,YAAY,KAAK,WAAY,YAAa,GAAI;AAClE,UAAM,UAAU,KAAK;AAAA,MACpB;AAAA,MACA;AAAA,IACD;AAEA,WACC;AAAA,MAAC;AAAA;AAAA,QACA,OAAQ,EAAE,SAAS,MAAM;AAAA,QACzB,MAAO;AAAA,QACP,eAAY;AAAA;AAAA,IACb;AAAA,EAEF;AAGA,MAAK,OAAO,SAAS,YAAY,KAAK,WAAY,OAAQ,GAAI;AAC7D,WACC;AAAA,MAAC;AAAA;AAAA,QACA,KAAM;AAAA,QACN,KAAI;AAAA,QACJ,eAAY;AAAA,QACZ,OAAQ;AAAA,UACP,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,SAAS;AAAA,UACT,SAAS;AAAA,QACV;AAAA;AAAA,IACD;AAAA,EAEF;AAGA,MAAK,MAAO;AACX,WAAO;AAAA,EACR;AAIA,MAAK,uBAAwB;AAC5B,WACC;AAAA,MAAC;AAAA;AAAA,QACA,OAAQ,EAAE,OAAO,QAAQ,QAAQ,OAAO;AAAA,QACxC,eAAY;AAAA;AAAA,IACb;AAAA,EAEF;AAEA,SAAO;AACR;",
6
+ "names": []
7
+ }
@@ -0,0 +1,180 @@
1
+ // packages/boot/src/components/navigation/navigation-item/index.tsx
2
+ import clsx from "clsx";
3
+ import {
4
+ FlexBlock,
5
+ __experimentalItem as Item,
6
+ __experimentalHStack as HStack
7
+ } from "@wordpress/components";
8
+ import RouterLinkItem from "../router-link-item";
9
+ import { wrapIcon } from "../items";
10
+
11
+ // packages/boot/src/components/navigation/navigation-item/style.scss
12
+ var css = `/**
13
+ * SCSS Variables.
14
+ *
15
+ * Please use variables from this sheet to ensure consistency across the UI.
16
+ * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
17
+ * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
18
+ */
19
+ /**
20
+ * Colors
21
+ */
22
+ /**
23
+ * Fonts & basic variables.
24
+ */
25
+ /**
26
+ * Typography
27
+ */
28
+ /**
29
+ * Grid System.
30
+ * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
31
+ */
32
+ /**
33
+ * Radius scale.
34
+ */
35
+ /**
36
+ * Elevation scale.
37
+ */
38
+ /**
39
+ * Dimensions.
40
+ */
41
+ /**
42
+ * Mobile specific styles
43
+ */
44
+ /**
45
+ * Editor styles.
46
+ */
47
+ /**
48
+ * Block & Editor UI.
49
+ */
50
+ /**
51
+ * Block paddings.
52
+ */
53
+ /**
54
+ * React Native specific.
55
+ * These variables do not appear to be used anywhere else.
56
+ */
57
+ /**
58
+ * Typography
59
+ */
60
+ /**
61
+ * Breakpoints & Media Queries
62
+ */
63
+ /**
64
+ * Converts a hex value into the rgb equivalent.
65
+ *
66
+ * @param {string} hex - the hexadecimal value to convert
67
+ * @return {string} comma separated rgb values
68
+ */
69
+ /**
70
+ * Long content fade mixin
71
+ *
72
+ * Creates a fading overlay to signify that the content is longer
73
+ * than the space allows.
74
+ */
75
+ /**
76
+ * Breakpoint mixins
77
+ */
78
+ /**
79
+ * Focus styles.
80
+ */
81
+ /**
82
+ * Applies editor left position to the selector passed as argument
83
+ */
84
+ /**
85
+ * Styles that are reused verbatim in a few places
86
+ */
87
+ /**
88
+ * Allows users to opt-out of animations via OS-level preferences.
89
+ */
90
+ /**
91
+ * Reset default styles for JavaScript UI based pages.
92
+ * This is a WP-admin agnostic reset
93
+ */
94
+ /**
95
+ * Reset the WP Admin page styles for Gutenberg-like pages.
96
+ */
97
+ .boot-navigation-item.components-item {
98
+ color: var(--wpds-color-fg-interactive-neutral, #1e1e1e);
99
+ padding-inline: 4px;
100
+ padding-block: 0;
101
+ margin-inline: 12px;
102
+ margin-block-end: 4px;
103
+ width: calc(100% - 24px);
104
+ border: none;
105
+ min-height: 32px;
106
+ display: flex;
107
+ align-items: center;
108
+ font-family: -apple-system, "system-ui", "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
109
+ font-weight: 400;
110
+ font-size: 13px;
111
+ line-height: 20px;
112
+ }
113
+ .boot-dropdown-item__children .boot-navigation-item.components-item {
114
+ min-height: 24px;
115
+ }
116
+ .boot-navigation-item.components-item {
117
+ border-radius: var(--wpds-border-radius-small, 2px);
118
+ }
119
+ .boot-navigation-item.components-item.active, .boot-navigation-item.components-item:hover, .boot-navigation-item.components-item:focus, .boot-navigation-item.components-item[aria-current=true] {
120
+ color: var(--wpds-color-fg-interactive-brand-active, #0073aa);
121
+ }
122
+ .boot-navigation-item.components-item.active {
123
+ font-weight: 499;
124
+ }
125
+ .boot-navigation-item.components-item svg:last-child {
126
+ padding: 4px;
127
+ }
128
+ .boot-navigation-item.components-item[aria-current=true] {
129
+ color: var(--wpds-color-fg-interactive-brand-active, #0073aa);
130
+ font-weight: 499;
131
+ }
132
+ .boot-navigation-item.components-item:focus-visible {
133
+ transform: translateZ(0);
134
+ }
135
+ .boot-navigation-item.components-item.with-suffix {
136
+ padding-right: 16px;
137
+ }
138
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvZ3V0ZW5iZXJnL2d1dGVuYmVyZy9wdWJsaXNoL3BhY2thZ2VzL2Jvb3Qvc3JjL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLWl0ZW0iLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL19jb2xvcnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL19taXhpbnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL19icmVha3BvaW50cy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0B3b3JkcHJlc3MvYmFzZS1zdHlsZXMvX2Z1bmN0aW9ucy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0B3b3JkcHJlc3MvYmFzZS1zdHlsZXMvX2xvbmctY29udGVudC1mYWRlLnNjc3MiLCJzdHlsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDQUE7QUFBQTtBQUFBO0FEVUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBNkJBO0FBQUE7QUFBQTtBQUFBO0FBaUJBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQUFBO0FFbEtBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBSDRFQTtBQUFBO0FBQUE7QUEwREE7QUFBQTtBQUFBO0FBZ0RBO0FBQUE7QUFBQTtBQXFDQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBO0FBd0xBO0FBQUE7QUFBQTtBQUFBO0FBZ0RBO0FBQUE7QUFBQTtBSXBkQTtFQUNDO0VBQ0EsZ0JOK0NjO0VNOUNkO0VBQ0EsZU4rQ2M7RU05Q2Qsa0JONENjO0VNM0NkO0VBQ0E7RUFDQSxZTjhDYztFTTdDZDtFQUNBO0VKS0EsYUZ5QmtCO0VFeEJsQixhRm1CcUI7RUVzQnJCLFdGcENrQjtFRXFDbEIsYUY5QndCOztBTWZ4QjtFQUNDLFlOdUNhOztBTXJEZjtFQWtCQzs7QUFFQTtFQUlDOztBQUdEO0VBQ0MsYU5RbUI7O0FNTHBCO0VBQ0MsU05pQmE7O0FNZGQ7RUFDQztFQUNBLGFORG1COztBTUtwQjtFQUNDOztBQUdEO0VBQ0MsZU5NYSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU0NTUyBWYXJpYWJsZXMuXG4gKlxuICogUGxlYXNlIHVzZSB2YXJpYWJsZXMgZnJvbSB0aGlzIHNoZWV0IHRvIGVuc3VyZSBjb25zaXN0ZW5jeSBhY3Jvc3MgdGhlIFVJLlxuICogRG9uJ3QgYWRkIHRvIHRoaXMgc2hlZXQgdW5sZXNzIHlvdSdyZSBwcmV0dHkgc3VyZSB0aGUgdmFsdWUgd2lsbCBiZSByZXVzZWQgaW4gbWFueSBwbGFjZXMuXG4gKiBGb3IgZXhhbXBsZSwgZG9uJ3QgYWRkIHJ1bGVzIHRvIHRoaXMgc2hlZXQgdGhhdCBhZmZlY3QgYmxvY2sgdmlzdWFscy4gSXQncyBwdXJlbHkgZm9yIFVJLlxuICovXG5cbkB1c2UgXCIuL2NvbG9yc1wiO1xuXG4vKipcbiAqIEZvbnRzICYgYmFzaWMgdmFyaWFibGVzLlxuICovXG5cbiRkZWZhdWx0LWZvbnQ6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCxcIlNlZ29lIFVJXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjsgLy8gVG9kbzogZGVwcmVjYXRlIGluIGZhdm9yIG9mICRmYW1pbHkgdmFyaWFibGVzXG4kZGVmYXVsdC1saW5lLWhlaWdodDogMS40OyAvLyBUb2RvOiBkZXByZWNhdGUgaW4gZmF2b3Igb2YgJGxpbmUtaGVpZ2h0IHRva2Vuc1xuXG4vKipcbiAqIFR5cG9ncmFwaHlcbiAqL1xuXG4vLyBTaXplc1xuJGZvbnQtc2l6ZS14LXNtYWxsOiAxMXB4O1xuJGZvbnQtc2l6ZS1zbWFsbDogMTJweDtcbiRmb250LXNpemUtbWVkaXVtOiAxM3B4O1xuJGZvbnQtc2l6ZS1sYXJnZTogMTVweDtcbiRmb250LXNpemUteC1sYXJnZTogMjBweDtcbiRmb250LXNpemUtMngtbGFyZ2U6IDMycHg7XG5cbi8vIExpbmUgaGVpZ2h0c1xuJGZvbnQtbGluZS1oZWlnaHQteC1zbWFsbDogMTZweDtcbiRmb250LWxpbmUtaGVpZ2h0LXNtYWxsOiAyMHB4O1xuJGZvbnQtbGluZS1oZWlnaHQtbWVkaXVtOiAyNHB4O1xuJGZvbnQtbGluZS1oZWlnaHQtbGFyZ2U6IDI4cHg7XG4kZm9udC1saW5lLWhlaWdodC14LWxhcmdlOiAzMnB4O1xuJGZvbnQtbGluZS1oZWlnaHQtMngtbGFyZ2U6IDQwcHg7XG5cbi8vIFdlaWdodHNcbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA0OTk7IC8vIGVuc3VyZXMgZmFsbGJhY2sgdG8gNDAwIChpbnN0ZWFkIG9mIDYwMClcblxuLy8gRmFtaWxpZXNcbiRmb250LWZhbWlseS1oZWFkaW5nczogLWFwcGxlLXN5c3RlbSwgXCJzeXN0ZW0tdWlcIiwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWJvZHk6IC1hcHBsZS1zeXN0ZW0sIFwic3lzdGVtLXVpXCIsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBNZW5sbywgQ29uc29sYXMsIG1vbmFjbywgbW9ub3NwYWNlO1xuXG4vKipcbiAqIEdyaWQgU3lzdGVtLlxuICogaHR0cHM6Ly9tYWtlLndvcmRwcmVzcy5vcmcvZGVzaWduLzIwMTkvMTAvMzEvcHJvcG9zYWwtYS1jb25zaXN0ZW50LXNwYWNpbmctc3lzdGVtLWZvci13b3JkcHJlc3MvXG4gKi9cblxuJGdyaWQtdW5pdDogOHB4O1xuJGdyaWQtdW5pdC0wNTogMC41ICogJGdyaWQtdW5pdDtcdC8vIDRweFxuJGdyaWQtdW5pdC0xMDogMSAqICRncmlkLXVuaXQ7XHRcdC8vIDhweFxuJGdyaWQtdW5pdC0xNTogMS41ICogJGdyaWQtdW5pdDtcdC8vIDEycHhcbiRncmlkLXVuaXQtMjA6IDIgKiAkZ3JpZC11bml0O1x0XHQvLyAxNnB4XG4kZ3JpZC11bml0LTMwOiAzICogJGdyaWQtdW5pdDtcdFx0Ly8gMjRweFxuJGdyaWQtdW5pdC00MDogNCAqICRncmlkLXVuaXQ7XHRcdC8vIDMycHhcbiRncmlkLXVuaXQtNTA6IDUgKiAkZ3JpZC11bml0O1x0XHQvLyA0MHB4XG4kZ3JpZC11bml0LTYwOiA2ICogJGdyaWQtdW5pdDtcdFx0Ly8gNDhweFxuJGdyaWQtdW5pdC03MDogNyAqICRncmlkLXVuaXQ7XHRcdC8vIDU2cHhcbiRncmlkLXVuaXQtODA6IDggKiAkZ3JpZC11bml0O1x0XHQvLyA2NHB4XG5cbi8qKlxuICogUmFkaXVzIHNjYWxlLlxuICovXG5cbiRyYWRpdXMteC1zbWFsbDogMXB4OyAgIC8vIEFwcGxpZWQgdG8gZWxlbWVudHMgbGlrZSBidXR0b25zIG5lc3RlZCB3aXRoaW4gcHJpbWl0aXZlcyBsaWtlIGlucHV0cy5cbiRyYWRpdXMtc21hbGw6IDJweDsgICAgIC8vIEFwcGxpZWQgdG8gbW9zdCBwcmltaXRpdmVzLlxuJHJhZGl1cy1tZWRpdW06IDRweDsgICAgLy8gQXBwbGllZCB0byBjb250YWluZXJzIHdpdGggc21hbGxlciBwYWRkaW5nLlxuJHJhZGl1cy1sYXJnZTogOHB4OyAgICAgLy8gQXBwbGllZCB0byBjb250YWluZXJzIHdpdGggbGFyZ2VyIHBhZGRpbmcuXG4kcmFkaXVzLWZ1bGw6IDk5OTlweDsgICAvLyBGb3IgcGlsbHMuXG4kcmFkaXVzLXJvdW5kOiA1MCU7ICAgICAvLyBGb3IgY2lyY2xlcyBhbmQgb3ZhbHMuXG5cbi8qKlxuICogRWxldmF0aW9uIHNjYWxlLlxuICovXG5cbi8vIEZvciBzZWN0aW9ucyBhbmQgY29udGFpbmVycyB0aGF0IGdyb3VwIHJlbGF0ZWQgY29udGVudCBhbmQgY29udHJvbHMsIHdoaWNoIG1heSBvdmVybGFwIG90aGVyIGNvbnRlbnQuIEV4YW1wbGU6IFByZXZpZXcgRnJhbWUuXG4kZWxldmF0aW9uLXgtc21hbGw6IDAgMXB4IDFweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDMpLCAwIDFweCAycHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAyKSwgMCAzcHggM3B4IHJnYmEoY29sb3JzLiRibGFjaywgMC4wMiksIDAgNHB4IDRweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDEpO1xuXG4vLyBGb3IgY29tcG9uZW50cyB0aGF0IHByb3ZpZGUgY29udGV4dHVhbCBmZWVkYmFjayB3aXRob3V0IGJlaW5nIGludHJ1c2l2ZS4gR2VuZXJhbGx5IG5vbi1pbnRlcnJ1cHRpdmUuIEV4YW1wbGU6IFRvb2x0aXBzLCBTbmFja2Jhci5cbiRlbGV2YXRpb24tc21hbGw6IDAgMXB4IDJweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDUpLCAwIDJweCAzcHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA0KSwgMCA2cHggNnB4IHJnYmEoY29sb3JzLiRibGFjaywgMC4wMyksIDAgOHB4IDhweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDIpO1xuXG4vLyBGb3IgY29tcG9uZW50cyB0aGF0IG9mZmVyIGFkZGl0aW9uYWwgYWN0aW9ucy4gRXhhbXBsZTogTWVudXMsIENvbW1hbmQgUGFsZXR0ZVxuJGVsZXZhdGlvbi1tZWRpdW06IDAgMnB4IDNweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDUpLCAwIDRweCA1cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA0KSwgMCAxMnB4IDEycHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAzKSwgMCAxNnB4IDE2cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAyKTtcblxuLy8gRm9yIGNvbXBvbmVudHMgdGhhdCBjb25maXJtIGRlY2lzaW9ucyBvciBoYW5kbGUgbmVjZXNzYXJ5IGludGVycnVwdGlvbnMuIEV4YW1wbGU6IE1vZGFscy5cbiRlbGV2YXRpb24tbGFyZ2U6IDAgNXB4IDE1cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA4KSwgMCAxNXB4IDI3cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA3KSwgMCAzMHB4IDM2cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA0KSwgMCA1MHB4IDQzcHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAyKTtcblxuLyoqXG4gKiBEaW1lbnNpb25zLlxuICovXG5cbiRpY29uLXNpemU6IDI0cHg7XG4kYnV0dG9uLXNpemU6IDM2cHg7XG4kYnV0dG9uLXNpemUtbmV4dC1kZWZhdWx0LTQwcHg6IDQwcHg7IC8vIHRyYW5zaXRpb25hcnkgdmFyaWFibGUgZm9yIG5leHQgZGVmYXVsdCBidXR0b24gc2l6ZVxuJGJ1dHRvbi1zaXplLXNtYWxsOiAyNHB4O1xuJGJ1dHRvbi1zaXplLWNvbXBhY3Q6IDMycHg7XG4kaGVhZGVyLWhlaWdodDogNjRweDtcbiRwYW5lbC1oZWFkZXItaGVpZ2h0OiAkZ3JpZC11bml0LTYwO1xuJG5hdi1zaWRlYmFyLXdpZHRoOiAzMDBweDtcbiRhZG1pbi1iYXItaGVpZ2h0OiAzMnB4O1xuJGFkbWluLWJhci1oZWlnaHQtYmlnOiA0NnB4O1xuJGFkbWluLXNpZGViYXItd2lkdGg6IDE2MHB4O1xuJGFkbWluLXNpZGViYXItd2lkdGgtYmlnOiAxOTBweDtcbiRhZG1pbi1zaWRlYmFyLXdpZHRoLWNvbGxhcHNlZDogMzZweDtcbiRtb2RhbC1taW4td2lkdGg6IDM1MHB4O1xuJG1vZGFsLXdpZHRoLXNtYWxsOiAzODRweDtcbiRtb2RhbC13aWR0aC1tZWRpdW06IDUxMnB4O1xuJG1vZGFsLXdpZHRoLWxhcmdlOiA4NDBweDtcbiRzcGlubmVyLXNpemU6IDE2cHg7XG4kY2FudmFzLXBhZGRpbmc6ICRncmlkLXVuaXQtMjA7XG5cbi8qKlxuICogTW9iaWxlIHNwZWNpZmljIHN0eWxlc1xuICovXG4kbW9iaWxlLXRleHQtbWluLWZvbnQtc2l6ZTogMTZweDsgLy8gQW55IGZvbnQgc2l6ZSBiZWxvdyAxNnB4IHdpbGwgY2F1c2UgTW9iaWxlIFNhZmFyaSB0byBcInpvb20gaW5cIi5cblxuLyoqXG4gKiBFZGl0b3Igc3R5bGVzLlxuICovXG5cbiRzaWRlYmFyLXdpZHRoOiAyODBweDtcbiRjb250ZW50LXdpZHRoOiA4NDBweDtcbiR3aWRlLWNvbnRlbnQtd2lkdGg6IDExMDBweDtcbiR3aWRnZXQtYXJlYS13aWR0aDogNzAwcHg7XG4kc2Vjb25kYXJ5LXNpZGViYXItd2lkdGg6IDM1MHB4O1xuJGVkaXRvci1mb250LXNpemU6IDE2cHg7XG4kZGVmYXVsdC1ibG9jay1tYXJnaW46IDI4cHg7IC8vIFRoaXMgdmFsdWUgcHJvdmlkZXMgYSBjb25zaXN0ZW50LCBjb250aWd1b3VzIHNwYWNpbmcgYmV0d2VlbiBibG9ja3MuXG4kdGV4dC1lZGl0b3ItZm9udC1zaXplOiAxNXB4O1xuJGVkaXRvci1saW5lLWhlaWdodDogMS44O1xuJGVkaXRvci1odG1sLWZvbnQ6ICRmb250LWZhbWlseS1tb25vO1xuXG4vKipcbiAqIEJsb2NrICYgRWRpdG9yIFVJLlxuICovXG5cbiRibG9jay10b29sYmFyLWhlaWdodDogJGdyaWQtdW5pdC02MDtcbiRib3JkZXItd2lkdGg6IDFweDtcbiRib3JkZXItd2lkdGgtZm9jdXMtZmFsbGJhY2s6IDJweDsgLy8gVGhpcyBleGlzdHMgYXMgYSBmYWxsYmFjaywgYW5kIGlzIGlkZWFsbHkgb3ZlcnJpZGRlbiBieSB2YXIoLS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXMpIHVubGVzcyBpbiBzb21lIFNBU1MgbWF0aCBjYXNlcy5cbiRib3JkZXItd2lkdGgtdGFiOiAxLjVweDtcbiRoZWxwdGV4dC1mb250LXNpemU6IDEycHg7XG4kcmFkaW8taW5wdXQtc2l6ZTogMTZweDtcbiRyYWRpby1pbnB1dC1zaXplLXNtOiAyNHB4OyAvLyBXaWR0aCAmIGhlaWdodCBmb3Igc21hbGwgdmlld3BvcnRzLlxuXG4vLyBEZXByZWNhdGVkLCBwbGVhc2UgYXZvaWQgdXNpbmcgdGhlc2UuXG4kYmxvY2stcGFkZGluZzogMTRweDsgLy8gVXNlZCB0byBkZWZpbmUgc3BhY2UgYmV0d2VlbiBibG9jayBmb290cHJpbnQgYW5kIHN1cnJvdW5kaW5nIGJvcmRlcnMuXG4kcmFkaXVzLWJsb2NrLXVpOiAkcmFkaXVzLXNtYWxsO1xuJHNoYWRvdy1wb3BvdmVyOiAkZWxldmF0aW9uLXgtc21hbGw7XG4kc2hhZG93LW1vZGFsOiAkZWxldmF0aW9uLWxhcmdlO1xuJGRlZmF1bHQtZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcblxuLyoqXG4gKiBCbG9jayBwYWRkaW5ncy5cbiAqL1xuXG4vLyBQYWRkaW5nIGZvciBibG9ja3Mgd2l0aCBhIGJhY2tncm91bmQgY29sb3IgKGUuZy4gcGFyYWdyYXBoIG9yIGdyb3VwKS5cbiRibG9jay1iZy1wYWRkaW5nLS12OiAxLjI1ZW07XG4kYmxvY2stYmctcGFkZGluZy0taDogMi4zNzVlbTtcblxuXG4vKipcbiAqIFJlYWN0IE5hdGl2ZSBzcGVjaWZpYy5cbiAqIFRoZXNlIHZhcmlhYmxlcyBkbyBub3QgYXBwZWFyIHRvIGJlIHVzZWQgYW55d2hlcmUgZWxzZS5cbiAqL1xuXG4vLyBEaW1lbnNpb25zLlxuJG1vYmlsZS1oZWFkZXItdG9vbGJhci1oZWlnaHQ6IDQ0cHg7XG4kbW9iaWxlLWhlYWRlci10b29sYmFyLWV4cGFuZGVkLWhlaWdodDogNTJweDtcbiRtb2JpbGUtZmxvYXRpbmctdG9vbGJhci1oZWlnaHQ6IDQ0cHg7XG4kbW9iaWxlLWZsb2F0aW5nLXRvb2xiYXItbWFyZ2luOiA4cHg7XG4kbW9iaWxlLWNvbG9yLXN3YXRjaDogNDhweDtcblxuLy8gQmxvY2sgVUkuXG4kbW9iaWxlLWJsb2NrLXRvb2xiYXItaGVpZ2h0OiA0NHB4O1xuJGRpbW1lZC1vcGFjaXR5OiAxO1xuJGJsb2NrLWVkZ2UtdG8tY29udGVudDogMTZweDtcbiRzb2xpZC1ib3JkZXItc3BhY2U6IDEycHg7XG4kZGFzaGVkLWJvcmRlci1zcGFjZTogNnB4O1xuJGJsb2NrLXNlbGVjdGVkLW1hcmdpbjogM3B4O1xuJGJsb2NrLXNlbGVjdGVkLWJvcmRlci13aWR0aDogMXB4O1xuJGJsb2NrLXNlbGVjdGVkLXBhZGRpbmc6IDA7XG4kYmxvY2stc2VsZWN0ZWQtY2hpbGQtbWFyZ2luOiA1cHg7XG4kYmxvY2stc2VsZWN0ZWQtdG8tY29udGVudDogJGJsb2NrLWVkZ2UtdG8tY29udGVudCAtICRibG9jay1zZWxlY3RlZC1tYXJnaW4gLSAkYmxvY2stc2VsZWN0ZWQtYm9yZGVyLXdpZHRoO1xuIiwiLyoqXG4gKiBDb2xvcnNcbiAqL1xuXG4vLyBXb3JkUHJlc3MgZ3JheXMuXG4kYmxhY2s6ICMwMDA7XHRcdFx0Ly8gVXNlIG9ubHkgd2hlbiB5b3UgdHJ1bHkgbmVlZCBwdXJlIGJsYWNrLiBGb3IgVUksIHVzZSAkZ3JheS05MDAuXG4kZ3JheS05MDA6ICMxZTFlMWU7XG4kZ3JheS04MDA6ICMyZjJmMmY7XG4kZ3JheS03MDA6ICM3NTc1NzU7XHRcdC8vIE1lZXRzIDQuNjoxICg0LjU6MSBpcyBtaW5pbXVtKSB0ZXh0IGNvbnRyYXN0IGFnYWluc3Qgd2hpdGUuXG4kZ3JheS02MDA6ICM5NDk0OTQ7XHRcdC8vIE1lZXRzIDM6MSBVSSBvciBsYXJnZSB0ZXh0IGNvbnRyYXN0IGFnYWluc3Qgd2hpdGUuXG4kZ3JheS00MDA6ICNjY2M7XG4kZ3JheS0zMDA6ICNkZGQ7XHRcdC8vIFVzZWQgZm9yIG1vc3QgYm9yZGVycy5cbiRncmF5LTIwMDogI2UwZTBlMDtcdFx0Ly8gVXNlZCBzcGFyaW5nbHkgZm9yIGxpZ2h0IGJvcmRlcnMuXG4kZ3JheS0xMDA6ICNmMGYwZjA7XHRcdC8vIFVzZWQgZm9yIGxpZ2h0IGdyYXkgYmFja2dyb3VuZHMuXG4kd2hpdGU6ICNmZmY7XG5cbi8vIE9wYWNpdGllcyAmIGFkZGl0aW9uYWwgY29sb3JzLlxuJGRhcmstZ3JheS1wbGFjZWhvbGRlcjogcmdiYSgkZ3JheS05MDAsIDAuNjIpO1xuJG1lZGl1bS1ncmF5LXBsYWNlaG9sZGVyOiByZ2JhKCRncmF5LTkwMCwgMC41NSk7XG4kbGlnaHQtZ3JheS1wbGFjZWhvbGRlcjogcmdiYSgkd2hpdGUsIDAuNjUpO1xuXG4vLyBBbGVydCBjb2xvcnMuXG4kYWxlcnQteWVsbG93OiAjZjBiODQ5O1xuJGFsZXJ0LXJlZDogI2NjMTgxODtcbiRhbGVydC1ncmVlbjogIzRhYjg2NjtcblxuLy8gRGVwcmVjYXRlZCwgcGxlYXNlIGF2b2lkIHVzaW5nIHRoZXNlLlxuJGRhcmstdGhlbWUtZm9jdXM6ICR3aGl0ZTtcdC8vIEZvY3VzIGNvbG9yIHdoZW4gdGhlIHRoZW1lIGlzIGRhcmsuXG4iLCIvKipcbiAqIFR5cG9ncmFwaHlcbiAqL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcIi4vdmFyaWFibGVzXCI7XG5AdXNlIFwiLi9jb2xvcnNcIjtcbkB1c2UgXCIuL2JyZWFrcG9pbnRzXCI7XG5AdXNlIFwiLi9mdW5jdGlvbnNcIjtcbkB1c2UgXCIuL2xvbmctY29udGVudC1mYWRlXCI7XG5cbkBtaXhpbiBfdGV4dC1oZWFkaW5nKCkge1xuXHRmb250LWZhbWlseTogdmFyaWFibGVzLiRmb250LWZhbWlseS1oZWFkaW5ncztcblx0Zm9udC13ZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC13ZWlnaHQtbWVkaXVtO1xufVxuXG5AbWl4aW4gX3RleHQtYm9keSgpIHtcblx0Zm9udC1mYW1pbHk6IHZhcmlhYmxlcy4kZm9udC1mYW1pbHktYm9keTtcblx0Zm9udC13ZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC13ZWlnaHQtcmVndWxhcjtcbn1cblxuQG1peGluIGhlYWRpbmctc21hbGwoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWhlYWRpbmcoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS14LXNtYWxsO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LXgtc21hbGw7XG59XG5cbkBtaXhpbiBoZWFkaW5nLW1lZGl1bSgpIHtcblx0QGluY2x1ZGUgX3RleHQtaGVhZGluZygpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLW1lZGl1bTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1zbWFsbDtcbn1cblxuQG1peGluIGhlYWRpbmctbGFyZ2UoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWhlYWRpbmcoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS1sYXJnZTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1zbWFsbDtcbn1cblxuQG1peGluIGhlYWRpbmcteC1sYXJnZSgpIHtcblx0QGluY2x1ZGUgX3RleHQtaGVhZGluZygpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLXgtbGFyZ2U7XG5cdGxpbmUtaGVpZ2h0OiB2YXJpYWJsZXMuJGZvbnQtbGluZS1oZWlnaHQtbWVkaXVtO1xufVxuXG5AbWl4aW4gaGVhZGluZy0yeC1sYXJnZSgpIHtcblx0QGluY2x1ZGUgX3RleHQtaGVhZGluZygpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLTJ4LWxhcmdlO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LTJ4LWxhcmdlO1xufVxuXG5AbWl4aW4gYm9keS1zbWFsbCgpIHtcblx0QGluY2x1ZGUgX3RleHQtYm9keSgpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLXNtYWxsO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LXgtc21hbGw7XG59XG5cbkBtaXhpbiBib2R5LW1lZGl1bSgpIHtcblx0QGluY2x1ZGUgX3RleHQtYm9keSgpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLW1lZGl1bTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1zbWFsbDtcbn1cblxuQG1peGluIGJvZHktbGFyZ2UoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWJvZHkoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS1sYXJnZTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1tZWRpdW07XG59XG5cbkBtaXhpbiBib2R5LXgtbGFyZ2UoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWJvZHkoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS14LWxhcmdlO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LXgtbGFyZ2U7XG59XG5cbi8qKlxuICogQnJlYWtwb2ludCBtaXhpbnNcbiAqL1xuXG5AbWl4aW4gYnJlYWsteGh1Z2UoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLXhodWdlKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGJyZWFrLWh1Z2UoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLWh1Z2UpIH0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gYnJlYWstd2lkZSgpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstd2lkZSkgfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBicmVhay14bGFyZ2UoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLXhsYXJnZSkgfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBicmVhay1sYXJnZSgpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbGFyZ2UpIH0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gYnJlYWstbWVkaXVtKCkge1xuXHRAbWVkaWEgKG1pbi13aWR0aDogI3sgKGJyZWFrcG9pbnRzLiRicmVhay1tZWRpdW0pIH0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gYnJlYWstc21hbGwoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLXNtYWxsKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGJyZWFrLW1vYmlsZSgpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbW9iaWxlKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGJyZWFrLXpvb21lZC1pbigpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstem9vbWVkLWluKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLyoqXG4gKiBGb2N1cyBzdHlsZXMuXG4gKi9cblxuQG1peGluIGJsb2NrLXRvb2xiYXItYnV0dG9uLXN0eWxlX19mb2N1cygpIHtcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgdmFyaWFibGVzLiRib3JkZXItd2lkdGggY29sb3JzLiR3aGl0ZSwgMCAwIDAgdmFyKC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzKSB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7XG5cblx0Ly8gV2luZG93cyBIaWdoIENvbnRyYXN0IG1vZGUgd2lsbCBzaG93IHRoaXMgb3V0bGluZSwgYnV0IG5vdCB0aGUgYm94LXNoYWRvdy5cblx0b3V0bGluZTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLyBUYWJzLCBJbnB1dHMsIFNxdWFyZSBidXR0b25zLlxuQG1peGluIGlucHV0LXN0eWxlX19uZXV0cmFsKCkge1xuXHRib3gtc2hhZG93OiAwIDAgMCB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXJhZGl1czogdmFyaWFibGVzLiRyYWRpdXMtc21hbGw7XG5cdGJvcmRlcjogdmFyaWFibGVzLiRib3JkZXItd2lkdGggc29saWQgY29sb3JzLiRncmF5LTYwMDtcblxuXHRAbWVkaWEgbm90IChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7XG5cdFx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGxpbmVhcjtcblx0fVxufVxuXG5cbkBtaXhpbiBpbnB1dC1zdHlsZV9fZm9jdXMoJGFjY2VudC1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpKSB7XG5cdGJvcmRlci1jb2xvcjogJGFjY2VudC1jb2xvcjtcblx0Ly8gRXhwYW5kIHRoZSBkZWZhdWx0IGJvcmRlciBmb2N1cyBzdHlsZSBieSAuNXB4IHRvIGJlIGEgdG90YWwgb2YgMS41cHguXG5cdGJveC1zaGFkb3c6IDAgMCAwIDAuNXB4ICRhY2NlbnQtY29sb3I7XG5cdC8vIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlIHdpbGwgc2hvdyB0aGlzIG91dGxpbmUsIGJ1dCBub3QgdGhlIGJveC1zaGFkb3cuXG5cdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGJ1dHRvbi1zdHlsZV9fZm9jdXMoKSB7XG5cdGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLXdwLWFkbWluLWJvcmRlci13aWR0aC1mb2N1cykgdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXG5cdC8vIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlIHdpbGwgc2hvdyB0aGlzIG91dGxpbmUsIGJ1dCBub3QgdGhlIGJveC1zaGFkb3cuXG5cdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuXG5AbWl4aW4gYnV0dG9uLXN0eWxlLW91dHNldF9fZm9jdXMoJGZvY3VzLWNvbG9yKSB7XG5cdGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLXdwLWFkbWluLWJvcmRlci13aWR0aC1mb2N1cykgY29sb3JzLiR3aGl0ZSwgMCAwIDAgY2FsYygyICogdmFyKC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzKSkgJGZvY3VzLWNvbG9yO1xuXG5cdC8vIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlIHdpbGwgc2hvdyB0aGlzIG91dGxpbmUsIGJ1dCBub3QgdGhlIGJveC1zaGFkb3cuXG5cdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuXG4vKipcbiAqIEFwcGxpZXMgZWRpdG9yIGxlZnQgcG9zaXRpb24gdG8gdGhlIHNlbGVjdG9yIHBhc3NlZCBhcyBhcmd1bWVudFxuICovXG5cbkBtaXhpbiBlZGl0b3ItbGVmdCgkc2VsZWN0b3IpIHtcblx0I3skc2VsZWN0b3J9IHsgLyogU2V0IGxlZnQgcG9zaXRpb24gd2hlbiBhdXRvLWZvbGQgaXMgbm90IG9uIHRoZSBib2R5IGVsZW1lbnQuICovXG5cdFx0bGVmdDogMDtcblxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLW1lZGl1bSArIDEpIH0pIHtcblx0XHRcdGxlZnQ6IHZhcmlhYmxlcy4kYWRtaW4tc2lkZWJhci13aWR0aDtcblx0XHR9XG5cdH1cblxuXHQuYXV0by1mb2xkICN7JHNlbGVjdG9yfSB7IC8qIEF1dG8gZm9sZCBpcyB3aGVuIG9uIHNtYWxsZXIgYnJlYWtwb2ludHMsIG5hdiBtZW51IGF1dG8gY29sbGFwc2VzLiAqL1xuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLW1lZGl1bSArIDEpIH0pIHtcblx0XHRcdGxlZnQ6IHZhcmlhYmxlcy4kYWRtaW4tc2lkZWJhci13aWR0aC1jb2xsYXBzZWQ7XG5cdFx0fVxuXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbGFyZ2UgKyAxKSB9KSB7XG5cdFx0XHRsZWZ0OiB2YXJpYWJsZXMuJGFkbWluLXNpZGViYXItd2lkdGg7XG5cdFx0fVxuXHR9XG5cblx0LyogU2lkZWJhciBtYW51YWxseSBjb2xsYXBzZWQuICovXG5cdC5mb2xkZWQgI3skc2VsZWN0b3J9IHtcblx0XHRsZWZ0OiAwO1xuXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbWVkaXVtICsgMSkgfSkge1xuXHRcdFx0bGVmdDogdmFyaWFibGVzLiRhZG1pbi1zaWRlYmFyLXdpZHRoLWNvbGxhcHNlZDtcblx0XHR9XG5cdH1cblxuXHRib2R5LmlzLWZ1bGxzY3JlZW4tbW9kZSAjeyRzZWxlY3Rvcn0ge1xuXHRcdGxlZnQ6IDAgIWltcG9ydGFudDtcblx0fVxufVxuXG4vKipcbiAqIFN0eWxlcyB0aGF0IGFyZSByZXVzZWQgdmVyYmF0aW0gaW4gYSBmZXcgcGxhY2VzXG4gKi9cblxuLy8gVGhlc2UgYXJlIGFkZGl0aW9uYWwgc3R5bGVzIGZvciBhbGwgY2FwdGlvbnMsIHdoZW4gdGhlIHRoZW1lIG9wdHMgaW4gdG8gYmxvY2sgc3R5bGVzLlxuQG1peGluIGNhcHRpb24tc3R5bGUoKSB7XG5cdG1hcmdpbi10b3A6IDAuNWVtO1xuXHRtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbkBtaXhpbiBjYXB0aW9uLXN0eWxlLXRoZW1lKCkge1xuXHRjb2xvcjogIzU1NTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGRlZmF1bHQtZm9udC1zaXplO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0LmlzLWRhcmstdGhlbWUgJiB7XG5cdFx0Y29sb3I6IGNvbG9ycy4kbGlnaHQtZ3JheS1wbGFjZWhvbGRlcjtcblx0fVxufVxuXG4vKipcbiAqIEFsbG93cyB1c2VycyB0byBvcHQtb3V0IG9mIGFuaW1hdGlvbnMgdmlhIE9TLWxldmVsIHByZWZlcmVuY2VzLlxuICovXG5cbkBtaXhpbiByZWR1Y2UtbW90aW9uKCRwcm9wZXJ0eTogXCJcIikge1xuXG5cdEBpZiAkcHJvcGVydHkgPT0gXCJ0cmFuc2l0aW9uXCIge1xuXHRcdEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG5cdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0fSBAZWxzZSBpZiAkcHJvcGVydHkgPT0gXCJhbmltYXRpb25cIiB7XG5cdFx0QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMW1zO1xuXHRcdFx0YW5pbWF0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG5cdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdFx0YW5pbWF0aW9uLWR1cmF0aW9uOiAxbXM7XG5cdFx0XHRhbmltYXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gaW5wdXQtY29udHJvbCgkYWNjZW50LWNvbG9yOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcikpIHtcblx0Zm9udC1mYW1pbHk6IHZhcmlhYmxlcy4kZGVmYXVsdC1mb250O1xuXHRwYWRkaW5nOiA2cHggOHB4O1xuXHQvKiBGb250cyBzbWFsbGVyIHRoYW4gMTZweCBjYXVzZXMgbW9iaWxlIHNhZmFyaSB0byB6b29tLiAqL1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kbW9iaWxlLXRleHQtbWluLWZvbnQtc2l6ZTtcblx0LyogT3ZlcnJpZGUgY29yZSBsaW5lLWhlaWdodC4gVG8gYmUgcmV2aWV3ZWQuICovXG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdEBpbmNsdWRlIGlucHV0LXN0eWxlX19uZXV0cmFsKCk7XG5cblx0QGluY2x1ZGUgYnJlYWstc21hbGwge1xuXHRcdGZvbnQtc2l6ZTogdmFyaWFibGVzLiRkZWZhdWx0LWZvbnQtc2l6ZTtcblx0XHQvKiBPdmVycmlkZSBjb3JlIGxpbmUtaGVpZ2h0LiBUbyBiZSByZXZpZXdlZC4gKi9cblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0QGluY2x1ZGUgaW5wdXQtc3R5bGVfX2ZvY3VzKCRhY2NlbnQtY29sb3IpO1xuXHR9XG5cblx0Ly8gVXNlIG9wYWNpdHkgdG8gd29yayBpbiB2YXJpb3VzIGVkaXRvciBzdHlsZXMuXG5cdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiBjb2xvcnMuJGRhcmstZ3JheS1wbGFjZWhvbGRlcjtcblx0fVxuXG5cdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiBjb2xvcnMuJGRhcmstZ3JheS1wbGFjZWhvbGRlcjtcblx0fVxuXG5cdCY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogY29sb3JzLiRkYXJrLWdyYXktcGxhY2Vob2xkZXI7XG5cdH1cbn1cblxuQG1peGluIGNoZWNrYm94LWNvbnRyb2wge1xuXHRib3JkZXI6IHZhcmlhYmxlcy4kYm9yZGVyLXdpZHRoIHNvbGlkIGNvbG9ycy4kZ3JheS05MDA7XG5cdG1hcmdpbi1yaWdodDogdmFyaWFibGVzLiRncmlkLXVuaXQtMTU7XG5cdHRyYW5zaXRpb246IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IHZhcmlhYmxlcy4kcmFkaXVzLXNtYWxsO1xuXHRAaW5jbHVkZSBpbnB1dC1jb250cm9sO1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDAgMCAwICh2YXJpYWJsZXMuJGJvcmRlci13aWR0aCAqIDIpIGNvbG9ycy4kd2hpdGUsIDAgMCAwICh2YXJpYWJsZXMuJGJvcmRlci13aWR0aCAqIDIgKyB2YXJpYWJsZXMuJGJvcmRlci13aWR0aC1mb2N1cy1mYWxsYmFjaykgdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXG5cdFx0Ly8gT25seSB2aXNpYmxlIGluIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlLlxuXHRcdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0fVxuXG5cdCY6Y2hlY2tlZCB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXG5cdFx0Ly8gSGlkZSBkZWZhdWx0IGNoZWNrYm94IHN0eWxlcyBpbiBJRS5cblx0XHQmOjotbXMtY2hlY2sge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHR9XG5cdH1cblxuXHQmOmNoZWNrZWQ6OmJlZm9yZSxcblx0JlthcmlhLWNoZWNrZWQ9XCJtaXhlZFwiXTo6YmVmb3JlIHtcblx0XHRtYXJnaW46IC0zcHggLTVweDtcblx0XHRjb2xvcjogY29sb3JzLiR3aGl0ZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrLW1lZGl1bSgpIHtcblx0XHRcdG1hcmdpbjogLTRweCAwIDAgLTVweDtcblx0XHR9XG5cdH1cblxuXHQmW2FyaWEtY2hlY2tlZD1cIm1peGVkXCJdIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Ly8gSW5oZXJpdGVkIGZyb20gYGZvcm1zLmNzc2AuXG5cdFx0XHQvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9Xb3JkUHJlc3Mvd29yZHByZXNzLWRldmVsb3AvdHJlZS81LjEuMS9zcmMvd3AtYWRtaW4vY3NzL2Zvcm1zLmNzcyNMMTIyLUwxMzJcblx0XHRcdGNvbnRlbnQ6IFwiXFxmNDYwXCI7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHR3aWR0aDogMTZweDtcblx0XHRcdC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmQgLS0gZGFzaGljb25zIGRvbid0IG5lZWQgYSBnZW5lcmljIGZhbWlseSBrZXl3b3JkLiAqL1xuXHRcdFx0Zm9udDogbm9ybWFsIDMwcHgvMSBkYXNoaWNvbnM7XG5cdFx0XHRzcGVhazogbm9uZTtcblx0XHRcdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWstbWVkaXVtKCkge1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0Zm9udC1zaXplOiAyMXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0sXG5cdCY6ZGlzYWJsZWQge1xuXHRcdGJhY2tncm91bmQ6IGNvbG9ycy4kZ3JheS0xMDA7XG5cdFx0Ym9yZGVyLWNvbG9yOiBjb2xvcnMuJGdyYXktMzAwO1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblxuXHRcdC8vIE92ZXJyaWRlIHN0eWxlIGluaGVyaXRlZCBmcm9tIHdwLWFkbWluLiBSZXF1aXJlZCB0byBhdm9pZCBkZWdyYWRlZCBhcHBlYXJhbmNlIG9uIGRpZmZlcmVudCBiYWNrZ3JvdW5kcy5cblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbkBtaXhpbiByYWRpby1jb250cm9sIHtcblx0Ym9yZGVyOiB2YXJpYWJsZXMuJGJvcmRlci13aWR0aCBzb2xpZCBjb2xvcnMuJGdyYXktOTAwO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTE1O1xuXHR0cmFuc2l0aW9uOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiB2YXJpYWJsZXMuJHJhZGl1cy1yb3VuZDtcblx0d2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZS1zbTtcblx0aGVpZ2h0OiB2YXJpYWJsZXMuJHJhZGlvLWlucHV0LXNpemUtc207XG5cdG1pbi13aWR0aDogdmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLXNtO1xuXHRtYXgtd2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZS1zbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBtZWRpYSBub3QgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcblx0XHR0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMXMgbGluZWFyO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWstc21hbGwoKSB7XG5cdFx0aGVpZ2h0OiB2YXJpYWJsZXMuJHJhZGlvLWlucHV0LXNpemU7XG5cdFx0d2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZTtcblx0XHRtaW4td2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZTtcblx0XHRtYXgtd2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZTtcblx0fVxuXG5cdCY6Y2hlY2tlZDo6YmVmb3JlIHtcblx0XHRib3gtc2l6aW5nOiBpbmhlcml0O1xuXHRcdHdpZHRoOiBtYXRoLmRpdih2YXJpYWJsZXMuJHJhZGlvLWlucHV0LXNpemUtc20sIDIpO1xuXHRcdGhlaWdodDogbWF0aC5kaXYodmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLXNtLCAyKTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdG1hcmdpbjogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJHdoaXRlO1xuXG5cdFx0Ly8gVGhpcyBib3JkZXIgc2VydmVzIGFzIGEgYmFja2dyb3VuZCBjb2xvciBpbiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgbW9kZS5cblx0XHRib3JkZXI6IDRweCBzb2xpZCBjb2xvcnMuJHdoaXRlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWstc21hbGwoKSB7XG5cdFx0XHR3aWR0aDogbWF0aC5kaXYodmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLCAyKTtcblx0XHRcdGhlaWdodDogbWF0aC5kaXYodmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLCAyKTtcblx0XHR9XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRib3gtc2hhZG93OiAwIDAgMCAodmFyaWFibGVzLiRib3JkZXItd2lkdGggKiAyKSBjb2xvcnMuJHdoaXRlLCAwIDAgMCAodmFyaWFibGVzLiRib3JkZXItd2lkdGggKiAyICsgdmFyaWFibGVzLiRib3JkZXItd2lkdGgtZm9jdXMtZmFsbGJhY2spIHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKTtcblxuXHRcdC8vIE9ubHkgdmlzaWJsZSBpbiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgbW9kZS5cblx0XHRvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQmOmNoZWNrZWQge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdH1cbn1cblxuLyoqXG4gKiBSZXNldCBkZWZhdWx0IHN0eWxlcyBmb3IgSmF2YVNjcmlwdCBVSSBiYXNlZCBwYWdlcy5cbiAqIFRoaXMgaXMgYSBXUC1hZG1pbiBhZ25vc3RpYyByZXNldFxuICovXG5cbkBtaXhpbiByZXNldCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cblx0Kixcblx0Kjo6YmVmb3JlLFxuXHQqOjphZnRlciB7XG5cdFx0Ym94LXNpemluZzogaW5oZXJpdDtcblx0fVxufVxuXG5AbWl4aW4gbGluay1yZXNldCB7XG5cdCY6Zm9jdXMge1xuXHRcdGNvbG9yOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvci0tcmdiKTtcblx0XHRib3gtc2hhZG93OiAwIDAgMCB2YXIoLS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXMpIHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yLCAjMDA3Y2JhKTtcblx0XHRib3JkZXItcmFkaXVzOiB2YXJpYWJsZXMuJHJhZGl1cy1zbWFsbDtcblx0fVxufVxuXG4vLyBUaGUgZWRpdG9yIGlucHV0IHJlc2V0IHdpdGggaW5jcmVhc2VkIHNwZWNpZmljaXR5IHRvIGF2b2lkIHRoZW1lIHN0eWxlcyBibGVlZGluZyBpbi5cbkBtaXhpbiBlZGl0b3ItaW5wdXQtcmVzZXQoKSB7XG5cdGZvbnQtZmFtaWx5OiB2YXJpYWJsZXMuJGVkaXRvci1odG1sLWZvbnQgIWltcG9ydGFudDtcblx0Y29sb3I6IGNvbG9ycy4kZ3JheS05MDAgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZDogY29sb3JzLiR3aGl0ZSAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiB2YXJpYWJsZXMuJGdyaWQtdW5pdC0xNSAhaW1wb3J0YW50O1xuXHRib3JkZXI6IHZhcmlhYmxlcy4kYm9yZGVyLXdpZHRoIHNvbGlkIGNvbG9ycy4kZ3JheS05MDAgIWltcG9ydGFudDtcblx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRib3JkZXItcmFkaXVzOiB2YXJpYWJsZXMuJHJhZGl1cy1zbWFsbCAhaW1wb3J0YW50O1xuXG5cdC8vIEZvbnRzIHNtYWxsZXIgdGhhbiAxNnB4IGNhdXNlcyBtb2JpbGUgc2FmYXJpIHRvIHpvb20uXG5cdGZvbnQtc2l6ZTogdmFyaWFibGVzLiRtb2JpbGUtdGV4dC1taW4tZm9udC1zaXplICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIGJyZWFrLXNtYWxsIHtcblx0XHRmb250LXNpemU6IHZhcmlhYmxlcy4kZGVmYXVsdC1mb250LXNpemUgIWltcG9ydGFudDtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgKHZhcmlhYmxlcy4kYm9yZGVyLXdpZHRoLWZvY3VzLWZhbGxiYWNrIC0gdmFyaWFibGVzLiRib3JkZXItd2lkdGgpIHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuXG5cdFx0Ly8gV2luZG93cyBIaWdoIENvbnRyYXN0IG1vZGUgd2lsbCBzaG93IHRoaXMgb3V0bGluZSwgYnV0IG5vdCB0aGUgYm94LXNoYWRvdy5cblx0XHRvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0fVxufVxuXG4vKipcbiAqIFJlc2V0IHRoZSBXUCBBZG1pbiBwYWdlIHN0eWxlcyBmb3IgR3V0ZW5iZXJnLWxpa2UgcGFnZXMuXG4gKi9cblxuQG1peGluIHdwLWFkbWluLXJlc2V0KCAkY29udGVudC1jb250YWluZXIgKSB7XG5cdGJhY2tncm91bmQ6IGNvbG9ycy4kd2hpdGU7XG5cblx0I3dwY29udGVudCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHR9XG5cblx0I3dwYm9keS1jb250ZW50IHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0fVxuXG5cdC8qIFdlIGhpZGUgbGVnYWN5IG5vdGljZXMgaW4gR3V0ZW5iZXJnIEJhc2VkIFBhZ2VzLCBiZWNhdXNlIHRoZXkgd2VyZSBub3QgZGVzaWduZWQgaW4gYSB3YXkgdGhhdCBzY2FsZWQgd2VsbC5cblx0ICAgUGx1Z2lucyBjYW4gdXNlIEd1dGVuYmVyZyBub3RpY2VzIGlmIHRoZXkgbmVlZCB0byBwYXNzIG9uIGluZm9ybWF0aW9uIHRvIHRoZSB1c2VyIHdoZW4gdGhleSBhcmUgZWRpdGluZy4gKi9cblx0I3dwYm9keS1jb250ZW50ID4gZGl2Om5vdCgjeyAkY29udGVudC1jb250YWluZXIgfSk6bm90KCNzY3JlZW4tbWV0YSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQjd3Bmb290ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQuYTExeS1zcGVhay1yZWdpb24ge1xuXHRcdGxlZnQ6IC0xcHg7XG5cdFx0dG9wOiAtMXB4O1xuXHR9XG5cblx0dWwjYWRtaW5tZW51IGEud3AtaGFzLWN1cnJlbnQtc3VibWVudTo6YWZ0ZXIsXG5cdHVsI2FkbWlubWVudSA+IGxpLmN1cnJlbnQgPiBhLmN1cnJlbnQ6OmFmdGVyIHtcblx0XHRib3JkZXItcmlnaHQtY29sb3I6IGNvbG9ycy4kd2hpdGU7XG5cdH1cblxuXHQubWVkaWEtZnJhbWUgc2VsZWN0LmF0dGFjaG1lbnQtZmlsdGVyczpsYXN0LW9mLXR5cGUge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxufVxuXG5AbWl4aW4gYWRtaW4tc2NoZW1lKCRjb2xvci1wcmltYXJ5KSB7XG5cdC8vIERlZmluZSBSR0IgZXF1aXZhbGVudHMgZm9yIHVzZSBpbiByZ2JhIGZ1bmN0aW9uLlxuXHQvLyBIZXhhZGVjaW1hbCBjc3MgdmFycyBkbyBub3Qgd29yayBpbiB0aGUgcmdiYSBmdW5jdGlvbi5cblx0LS13cC1hZG1pbi10aGVtZS1jb2xvcjogI3skY29sb3ItcHJpbWFyeX07XG5cdC0td3AtYWRtaW4tdGhlbWUtY29sb3ItLXJnYjogI3tmdW5jdGlvbnMuaGV4LXRvLXJnYigkY29sb3ItcHJpbWFyeSl9O1xuXHQvLyBEYXJrZXIgc2hhZGVzLlxuXHQtLXdwLWFkbWluLXRoZW1lLWNvbG9yLWRhcmtlci0xMDogI3tjb2xvci5hZGp1c3QoJGNvbG9yLXByaW1hcnksICRsaWdodG5lc3M6IC01JSl9O1xuXHQtLXdwLWFkbWluLXRoZW1lLWNvbG9yLWRhcmtlci0xMC0tcmdiOiAje2Z1bmN0aW9ucy5oZXgtdG8tcmdiKGNvbG9yLmFkanVzdCgkY29sb3ItcHJpbWFyeSwgJGxpZ2h0bmVzczogLTUlKSl9O1xuXHQtLXdwLWFkbWluLXRoZW1lLWNvbG9yLWRhcmtlci0yMDogI3tjb2xvci5hZGp1c3QoJGNvbG9yLXByaW1hcnksICRsaWdodG5lc3M6IC0xMCUpfTtcblx0LS13cC1hZG1pbi10aGVtZS1jb2xvci1kYXJrZXItMjAtLXJnYjogI3tmdW5jdGlvbnMuaGV4LXRvLXJnYihjb2xvci5hZGp1c3QoJGNvbG9yLXByaW1hcnksICRsaWdodG5lc3M6IC0xMCUpKX07XG5cblx0Ly8gRm9jdXMgc3R5bGUgd2lkdGguXG5cdC8vIEF2b2lkIHJvdW5kaW5nIGlzc3VlcyBieSBzaG93aW5nIGEgd2hvbGUgMnB4IGZvciAxeCBzY3JlZW5zLCBhbmQgMS41cHggb24gaGlnaCByZXNvbHV0aW9uIHNjcmVlbnMuXG5cdC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzOiAycHg7XG5cdEBtZWRpYSAoIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSB7XG5cdFx0LS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXM6IDEuNXB4O1xuXHR9XG59XG5cbkBtaXhpbiB3b3JkcHJlc3MtYWRtaW4tc2NoZW1lcygpIHtcblx0Ym9keS5hZG1pbi1jb2xvci1saWdodCB7XG5cdFx0QGluY2x1ZGUgYWRtaW4tc2NoZW1lKCMwMDg1YmEpO1xuXHR9XG5cblx0Ym9keS5hZG1pbi1jb2xvci1tb2Rlcm4ge1xuXHRcdEBpbmNsdWRlIGFkbWluLXNjaGVtZSgjMzg1OGU5KTtcblx0fVxuXG5cdGJvZHkuYWRtaW4tY29sb3ItYmx1ZSB7XG5cdFx0QGluY2x1ZGUgYWRtaW4tc2NoZW1lKCMwOTY0ODQpO1xuXHR9XG5cblx0Ym9keS5hZG1pbi1jb2xvci1jb2ZmZWUge1xuXHRcdEBpbmNsdWRlIGFkbWluLXNjaGVtZSgjNDY0MDNjKTtcblx0fVxuXG5cdGJvZHkuYWRtaW4tY29sb3ItZWN0b3BsYXNtIHtcblx0XHRAaW5jbHVkZSBhZG1pbi1zY2hlbWUoIzUyM2Y2ZCk7XG5cdH1cblxuXHRib2R5LmFkbWluLWNvbG9yLW1pZG5pZ2h0IHtcblx0XHRAaW5jbHVkZSBhZG1pbi1zY2hlbWUoI2UxNGQ0Myk7XG5cdH1cblxuXHRib2R5LmFkbWluLWNvbG9yLW9jZWFuIHtcblx0XHRAaW5jbHVkZSBhZG1pbi1zY2hlbWUoIzYyN2M4Myk7XG5cdH1cblxuXHRib2R5LmFkbWluLWNvbG9yLXN1bnJpc2Uge1xuXHRcdEBpbmNsdWRlIGFkbWluLXNjaGVtZSgjZGQ4MjNiKTtcblx0fVxufVxuXG4vLyBEZXByZWNhdGVkIGZyb20gVUksIGtlcHQgZm9yIGJhY2stY29tcGF0LlxuQG1peGluIGJhY2tncm91bmQtY29sb3JzLWRlcHJlY2F0ZWQoKSB7XG5cdC5oYXMtdmVyeS1saWdodC1ncmF5LWJhY2tncm91bmQtY29sb3Ige1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG5cdH1cblxuXHQuaGFzLXZlcnktZGFyay1ncmF5LWJhY2tncm91bmQtY29sb3Ige1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG5cdH1cbn1cblxuLy8gRGVwcmVjYXRlZCBmcm9tIFVJLCBrZXB0IGZvciBiYWNrLWNvbXBhdC5cbkBtaXhpbiBmb3JlZ3JvdW5kLWNvbG9ycy1kZXByZWNhdGVkKCkge1xuXHQuaGFzLXZlcnktbGlnaHQtZ3JheS1jb2xvciB7XG5cdFx0Y29sb3I6ICNlZWU7XG5cdH1cblxuXHQuaGFzLXZlcnktZGFyay1ncmF5LWNvbG9yIHtcblx0XHRjb2xvcjogIzMxMzEzMTtcblx0fVxufVxuXG4vLyBEZXByZWNhdGVkIGZyb20gVUksIGtlcHQgZm9yIGJhY2stY29tcGF0LlxuQG1peGluIGdyYWRpZW50LWNvbG9ycy1kZXByZWNhdGVkKCkge1xuXHQvLyBPdXIgY2xhc3NlcyB1c2VzIHRoZSBzYW1lIHZhbHVlcyB3ZSBzZXQgZm9yIGdyYWRpZW50IHZhbHVlIGF0dHJpYnV0ZXMuXG5cblx0Lyogc3R5bGVsaW50LWRpc2FibGUgQHN0eWxpc3RpYy9mdW5jdGlvbi1jb21tYS1zcGFjZS1hZnRlciAtLSBXZSBjYW4gbm90IHVzZSBzcGFjaW5nIGJlY2F1c2Ugb2YgV1AgbXVsdGkgc2l0ZSBrc2VzIHJ1bGUuICovXG5cdC5oYXMtdml2aWQtZ3JlZW4tY3lhbi10by12aXZpZC1jeWFuLWJsdWUtZ3JhZGllbnQtYmFja2dyb3VuZCB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2JhKDAsMjA4LDEzMiwxKSAwJSxyZ2JhKDYsMTQ3LDIyNywxKSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtcHVycGxlLWNydXNoLWdyYWRpZW50LWJhY2tncm91bmQge1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDUyLDIyNiwyMjgpIDAlLHJnYig3MSwzMywyNTEpIDUwJSxyZ2IoMTcxLDI5LDI1NCkgMTAwJSk7XG5cdH1cblxuXHQuaGFzLWhhenktZGF3bi1ncmFkaWVudC1iYWNrZ3JvdW5kIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTAsMTcyLDE2OCkgMCUscmdiKDIxOCwyMDgsMjM2KSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtc3ViZHVlZC1vbGl2ZS1ncmFkaWVudC1iYWNrZ3JvdW5kIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTAsMjUwLDIyNSkgMCUscmdiKDEwMywxNjYsMTEzKSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtYXRvbWljLWNyZWFtLWdyYWRpZW50LWJhY2tncm91bmQge1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1MywyMTUsMTU0KSAwJSxyZ2IoMCw3NCw4OSkgMTAwJSk7XG5cdH1cblxuXHQuaGFzLW5pZ2h0c2hhZGUtZ3JhZGllbnQtYmFja2dyb3VuZCB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoNTEsOSwxMDQpIDAlLHJnYig0OSwyMDUsMjA3KSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtbWlkbmlnaHQtZ3JhZGllbnQtYmFja2dyb3VuZCB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMiwzLDEyOSkgMCUscmdiKDQwLDExNiwyNTIpIDEwMCUpO1xuXHR9XG5cdC8qIHN0eWxlbGludC1lbmFibGUgQHN0eWxpc3RpYy9mdW5jdGlvbi1jb21tYS1zcGFjZS1hZnRlciAqL1xufVxuXG5AbWl4aW4gY3VzdG9tLXNjcm9sbGJhcnMtb24taG92ZXIoJGhhbmRsZS1jb2xvciwgJGhhbmRsZS1jb2xvci1ob3Zlcikge1xuXG5cdC8vIFdlYktpdFxuXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XG5cdFx0d2lkdGg6IDEycHg7XG5cdFx0aGVpZ2h0OiAxMnB4O1xuXHR9XG5cdCY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0fVxuXHQmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGhhbmRsZS1jb2xvcjtcblx0XHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdFx0Ym9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblx0fVxuXHQmOmhvdmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiwgLy8gVGhpcyBuZWVkcyBzcGVjaWZpY2l0eS5cblx0Jjpmb2N1czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsXG5cdCY6Zm9jdXMtd2l0aGluOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGhhbmRsZS1jb2xvci1ob3Zlcjtcblx0fVxuXG5cdC8vIEZpcmVmb3ggMTA5KyBhbmQgQ2hyb21lIDExMStcblx0c2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuXHRzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGUgYm90aC1lZGdlcztcblx0c2Nyb2xsYmFyLWNvbG9yOiAkaGFuZGxlLWNvbG9yIHRyYW5zcGFyZW50OyAvLyBTeW50YXgsIFwiZGFya1wiLCBcImxpZ2h0XCIsIG9yIFwiI2hhbmRsZS1jb2xvciAjdHJhY2stY29sb3JcIlxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6Zm9jdXMtd2l0aGluIHtcblx0XHRzY3JvbGxiYXItY29sb3I6ICRoYW5kbGUtY29sb3ItaG92ZXIgdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQvLyBOZWVkZWQgdG8gZml4IGEgU2FmYXJpIHJlbmRlcmluZyBpc3N1ZS5cblx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblxuXHQvLyBBbHdheXMgc2hvdyBzY3JvbGxiYXIgb24gTW9iaWxlIGRldmljZXMuXG5cdEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcblx0XHQmIHtcblx0XHRcdHNjcm9sbGJhci1jb2xvcjogJGhhbmRsZS1jb2xvci1ob3ZlciB0cmFuc3BhcmVudDtcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIHNlbGVjdGVkLWJsb2NrLW91dGxpbmUoJHdpZHRoUmF0aW86IDEpIHtcblx0b3V0bGluZS1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0b3V0bGluZS13aWR0aDogY2FsYygjeyR3aWR0aFJhdGlvfSAqICh2YXIoLS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXMpIC8gdmFyKC0td3AtYmxvY2stZWRpdG9yLWlmcmFtZS16b29tLW91dC1zY2FsZSwgMSkpKTtcblx0b3V0bGluZS1vZmZzZXQ6IGNhbGMoI3skd2lkdGhSYXRpb30gKiAoKC0xICogdmFyKC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzKSApIC8gdmFyKC0td3AtYmxvY2stZWRpdG9yLWlmcmFtZS16b29tLW91dC1zY2FsZSwgMSkpKTtcbn1cblxuQG1peGluIHNlbGVjdGVkLWJsb2NrLWZvY3VzKCR3aWR0aFJhdGlvOiAxKSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcblx0QGluY2x1ZGUgc2VsZWN0ZWQtYmxvY2stb3V0bGluZSgkd2lkdGhSYXRpbyk7XG59XG4iLCIvKipcbiAqIEJyZWFrcG9pbnRzICYgTWVkaWEgUXVlcmllc1xuICovXG5cbi8vIE1vc3QgdXNlZCBicmVha3BvaW50c1xuJGJyZWFrLXhodWdlOiAxOTIwcHg7XG4kYnJlYWstaHVnZTogMTQ0MHB4O1xuJGJyZWFrLXdpZGU6IDEyODBweDtcbiRicmVhay14bGFyZ2U6IDEwODBweDtcbiRicmVhay1sYXJnZTogOTYwcHg7XHQvLyBhZG1pbiBzaWRlYmFyIGF1dG8gZm9sZHNcbiRicmVhay1tZWRpdW06IDc4MnB4O1x0Ly8gYWRtaW5iYXIgZ29lcyBiaWdcbiRicmVhay1zbWFsbDogNjAwcHg7XG4kYnJlYWstbW9iaWxlOiA0ODBweDtcbiRicmVhay16b29tZWQtaW46IDI4MHB4O1xuXG4vLyBBbGwgbWVkaWEgcXVlcmllcyBjdXJyZW50bHkgaW4gV29yZFByZXNzOlxuLy9cbi8vIG1pbi13aWR0aDogMjAwMHB4XG4vLyBtaW4td2lkdGg6IDE2ODBweFxuLy8gbWluLXdpZHRoOiAxMjUwcHhcbi8vIG1heC13aWR0aDogMTEyMHB4ICpcbi8vIG1heC13aWR0aDogMTAwMHB4XG4vLyBtaW4td2lkdGg6IDc2OXB4IGFuZCBtYXgtd2lkdGg6IDEwMDBweFxuLy8gbWF4LXdpZHRoOiA5NjBweCAqXG4vLyBtYXgtd2lkdGg6IDkwMHB4XG4vLyBtYXgtd2lkdGg6IDg1MHB4XG4vLyBtaW4td2lkdGg6IDgwMHB4IGFuZCBtYXgtd2lkdGg6IDE0OTlweFxuLy8gbWF4LXdpZHRoOiA4MDBweFxuLy8gbWF4LXdpZHRoOiA3OTlweFxuLy8gbWF4LXdpZHRoOiA3ODJweCAqXG4vLyBtYXgtd2lkdGg6IDc2OHB4XG4vLyBtYXgtd2lkdGg6IDY0MHB4ICpcbi8vIG1heC13aWR0aDogNjAwcHggKlxuLy8gbWF4LXdpZHRoOiA1MjBweFxuLy8gbWF4LXdpZHRoOiA1MDBweFxuLy8gbWF4LXdpZHRoOiA0ODBweCAqXG4vLyBtYXgtd2lkdGg6IDQwMHB4ICpcbi8vIG1heC13aWR0aDogMzgwcHhcbi8vIG1heC13aWR0aDogMzIwcHggKlxuLy9cbi8vIFRob3NlIG1hcmtlZCAqIHNlZW0gdG8gYmUgbW9yZSBjb21tb25seSB1c2VkIHRoYW4gdGhlIG90aGVycy5cbi8vIExldCdzIHRyeSBhbmQgdXNlIGFzIGZldyBvZiB0aGVzZSBhcyBwb3NzaWJsZSwgYW5kIGJlIG1pbmRmdWwgYWJvdXQgYWRkaW5nIG5ldyBvbmVzLCBzbyB3ZSBkb24ndCBtYWtlIHRoZSBzaXR1YXRpb24gd29yc2VcbiIsIi8qKlxuKiAgQ29udmVydHMgYSBoZXggdmFsdWUgaW50byB0aGUgcmdiIGVxdWl2YWxlbnQuXG4qXG4qIEBwYXJhbSB7c3RyaW5nfSBoZXggLSB0aGUgaGV4YWRlY2ltYWwgdmFsdWUgdG8gY29udmVydFxuKiBAcmV0dXJuIHtzdHJpbmd9IGNvbW1hIHNlcGFyYXRlZCByZ2IgdmFsdWVzXG4qL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuQHVzZSBcInNhc3M6bWV0YVwiO1xuXG5AZnVuY3Rpb24gaGV4LXRvLXJnYigkaGV4KSB7XG5cdC8qXG5cdCAqIFRPRE86IGBjb2xvci57cmVkfGdyZWVufGJsdWV9YCB3aWxsIHRyaWdnZXIgYSBkZXByZWNhdGlvbiB3YXJuaW5nIGluIERhcnQgU2Fzcyxcblx0ICogYnV0IHRoZSBTYXNzIHVzZWQgYnkgdGhlIEd1dGVuYmVyZyBwcm9qZWN0IGRvZXNuJ3Qgc3VwcG9ydCBgY29sb3IuY2hhbm5lbCgpYCB5ZXQsXG5cdCAqIHNvIHdlIGNhbid0IG1pZ3JhdGUgdG8gaXQgYXQgdGhpcyB0aW1lLlxuXHQgKiBJbiB0aGUgZnV0dXJlLCBhZnRlciB0aGUgR3V0ZW5iZXJnIHByb2plY3QgaGFzIGJlZW4gZnVsbHkgbWlncmF0ZWQgdG8gRGFydCBTYXNzLFxuXHQgKiBSZW1vdmUgdGhpcyBjb25kaXRpb25hbCBzdGF0ZW1lbnQgYW5kIHVzZSBvbmx5IGBjb2xvci5jaGFubmVsKClgLlxuXHQgKi9cblx0QGlmIG1ldGEuZnVuY3Rpb24tZXhpc3RzKFwiY2hhbm5lbFwiLCBcImNvbG9yXCIpIHtcblx0XHRAcmV0dXJuIGNvbG9yLmNoYW5uZWwoJGhleCwgXCJyZWRcIiksIGNvbG9yLmNoYW5uZWwoJGhleCwgXCJncmVlblwiKSwgY29sb3IuY2hhbm5lbCgkaGV4LCBcImJsdWVcIik7XG5cdH0gQGVsc2Uge1xuXHRcdEByZXR1cm4gY29sb3IucmVkKCRoZXgpLCBjb2xvci5ncmVlbigkaGV4KSwgY29sb3IuYmx1ZSgkaGV4KTtcblx0fVxufVxuIiwiLyoqXG4gKiBMb25nIGNvbnRlbnQgZmFkZSBtaXhpblxuICpcbiAqIENyZWF0ZXMgYSBmYWRpbmcgb3ZlcmxheSB0byBzaWduaWZ5IHRoYXQgdGhlIGNvbnRlbnQgaXMgbG9uZ2VyXG4gKiB0aGFuIHRoZSBzcGFjZSBhbGxvd3MuXG4gKi9cblxuQG1peGluIGxvbmctY29udGVudC1mYWRlKCRkaXJlY3Rpb246IHJpZ2h0LCAkc2l6ZTogMjAlLCAkY29sb3I6ICNmZmYsICRlZGdlOiAwLCAkei1pbmRleDogZmFsc2UpIHtcblx0Y29udGVudDogXCJcIjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdEBpZiAkei1pbmRleCB7XG5cdFx0ei1pbmRleDogJHotaW5kZXg7XG5cdH1cblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBcImJvdHRvbVwiIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB0cmFuc3BhcmVudCwgJGNvbG9yIDkwJSk7XG5cdFx0bGVmdDogJGVkZ2U7XG5cdFx0cmlnaHQ6ICRlZGdlO1xuXHRcdHRvcDogJGVkZ2U7XG5cdFx0Ym90dG9tOiBjYWxjKDEwMCUgLSAkc2l6ZSk7XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBcInRvcFwiIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCwgJGNvbG9yIDkwJSk7XG5cdFx0dG9wOiBjYWxjKDEwMCUgLSAkc2l6ZSk7XG5cdFx0bGVmdDogJGVkZ2U7XG5cdFx0cmlnaHQ6ICRlZGdlO1xuXHRcdGJvdHRvbTogJGVkZ2U7XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBcImxlZnRcIiB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHRyYW5zcGFyZW50LCAkY29sb3IgOTAlKTtcblx0XHR0b3A6ICRlZGdlO1xuXHRcdGxlZnQ6ICRlZGdlO1xuXHRcdGJvdHRvbTogJGVkZ2U7XG5cdFx0cmlnaHQ6IGF1dG87XG5cdFx0d2lkdGg6ICRzaXplO1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXG5cdEBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIiB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCwgJGNvbG9yIDkwJSk7XG5cdFx0dG9wOiAkZWRnZTtcblx0XHRib3R0b206ICRlZGdlO1xuXHRcdHJpZ2h0OiAkZWRnZTtcblx0XHRsZWZ0OiBhdXRvO1xuXHRcdHdpZHRoOiAkc2l6ZTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cbn1cbiIsIkB1c2UgXCJAd29yZHByZXNzL2Jhc2Utc3R5bGVzL3ZhcmlhYmxlc1wiO1xuQHVzZSBcIkB3b3JkcHJlc3MvYmFzZS1zdHlsZXMvbWl4aW5zXCI7XG5cbi5ib290LW5hdmlnYXRpb24taXRlbS5jb21wb25lbnRzLWl0ZW0ge1xuXHRjb2xvcjogdmFyKC0td3Bkcy1jb2xvci1mZy1pbnRlcmFjdGl2ZS1uZXV0cmFsLCAjMWUxZTFlKTtcblx0cGFkZGluZy1pbmxpbmU6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTA1O1xuXHRwYWRkaW5nLWJsb2NrOiAwO1xuXHRtYXJnaW4taW5saW5lOiB2YXJpYWJsZXMuJGdyaWQtdW5pdC0xNTtcblx0bWFyZ2luLWJsb2NrLWVuZDogdmFyaWFibGVzLiRncmlkLXVuaXQtMDU7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSB2YXJpYWJsZXMuJGdyaWQtdW5pdC0xNSAqIDIpO1xuXHRib3JkZXI6IG5vbmU7XG5cdG1pbi1oZWlnaHQ6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTQwO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRAaW5jbHVkZSBtaXhpbnMuYm9keS1tZWRpdW0oKTtcblxuXHQuYm9vdC1kcm9wZG93bi1pdGVtX19jaGlsZHJlbiAmIHtcblx0XHRtaW4taGVpZ2h0OiB2YXJpYWJsZXMuJGdyaWQtdW5pdC0zMDtcblx0fVxuXG5cdC8vIFJvdW5kZWQgZm9jdXMgcmluZ1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS13cGRzLWJvcmRlci1yYWRpdXMtc21hbGwsIDJweCk7XG5cblx0Ji5hY3RpdmUsXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCZbYXJpYS1jdXJyZW50PVwidHJ1ZVwiXSB7XG5cdFx0Y29sb3I6IHZhcigtLXdwZHMtY29sb3ItZmctaW50ZXJhY3RpdmUtYnJhbmQtYWN0aXZlLCAjMDA3M2FhKTtcblx0fVxuXG5cdCYuYWN0aXZlIHtcblx0XHRmb250LXdlaWdodDogdmFyaWFibGVzLiRmb250LXdlaWdodC1tZWRpdW07XG5cdH1cblxuXHRzdmc6bGFzdC1jaGlsZCB7XG5cdFx0cGFkZGluZzogdmFyaWFibGVzLiRncmlkLXVuaXQtMDU7XG5cdH1cblxuXHQmW2FyaWEtY3VycmVudD1cInRydWVcIl0ge1xuXHRcdGNvbG9yOiB2YXIoLS13cGRzLWNvbG9yLWZnLWludGVyYWN0aXZlLWJyYW5kLWFjdGl2ZSwgIzAwNzNhYSk7XG5cdFx0Zm9udC13ZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC13ZWlnaHQtbWVkaXVtO1xuXHR9XG5cblx0Ly8gTWFrZSBzdXJlIHRoZSBmb2N1cyBzdHlsZSBpcyBkcmF3biBvbiB0b3Agb2YgdGhlIGN1cnJlbnQgaXRlbSBiYWNrZ3JvdW5kLlxuXHQmOmZvY3VzLXZpc2libGUge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblx0fVxuXG5cdCYud2l0aC1zdWZmaXgge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTIwO1xuXHR9XG59XG4iXX0= */`;
139
+ document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css));
140
+
141
+ // packages/boot/src/components/navigation/navigation-item/index.tsx
142
+ import { jsx, jsxs } from "react/jsx-runtime";
143
+ function NavigationItem({
144
+ className,
145
+ icon,
146
+ shouldShowPlaceholder = true,
147
+ children,
148
+ to
149
+ }) {
150
+ const isExternal = !String(
151
+ new URL(to, window.location.origin)
152
+ ).startsWith(window.location.origin);
153
+ const content = /* @__PURE__ */ jsxs(HStack, { justify: "flex-start", spacing: 2, style: { flexGrow: "1" }, children: [
154
+ wrapIcon(icon, shouldShowPlaceholder),
155
+ /* @__PURE__ */ jsx(FlexBlock, { children })
156
+ ] });
157
+ if (isExternal) {
158
+ return /* @__PURE__ */ jsx(
159
+ Item,
160
+ {
161
+ as: "a",
162
+ href: to,
163
+ className: clsx("boot-navigation-item", className),
164
+ children: content
165
+ }
166
+ );
167
+ }
168
+ return /* @__PURE__ */ jsx(
169
+ RouterLinkItem,
170
+ {
171
+ to,
172
+ className: clsx("boot-navigation-item", className),
173
+ children: content
174
+ }
175
+ );
176
+ }
177
+ export {
178
+ NavigationItem as default
179
+ };
180
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/navigation/navigation-item/index.tsx", "../../../../src/components/navigation/navigation-item/style.scss"],
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport type { ReactNode } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tFlexBlock,\n\t__experimentalItem as Item,\n\t// @ts-ignore\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport RouterLinkItem from '../router-link-item';\nimport { wrapIcon } from '../items';\nimport type { IconType } from '../../../store/types';\nimport './style.scss';\n\ninterface NavigationItemProps {\n\t/**\n\t * Optional CSS class name.\n\t */\n\tclassName?: string;\n\t/**\n\t * Icon to display with the navigation item.\n\t */\n\ticon?: IconType;\n\t/**\n\t * Whether to show placeholder icons for alignment.\n\t */\n\tshouldShowPlaceholder?: boolean;\n\t/**\n\t * Content to display inside the navigation item.\n\t */\n\tchildren: ReactNode;\n\t/**\n\t * The path to navigate to.\n\t */\n\tto: string;\n}\n\nexport default function NavigationItem( {\n\tclassName,\n\ticon,\n\tshouldShowPlaceholder = true,\n\tchildren,\n\tto,\n}: NavigationItemProps ) {\n\t// Check if the 'to' prop is an external URL\n\tconst isExternal = ! String(\n\t\tnew URL( to, window.location.origin )\n\t).startsWith( window.location.origin );\n\n\tconst content = (\n\t\t<HStack justify=\"flex-start\" spacing={ 2 } style={ { flexGrow: '1' } }>\n\t\t\t{ wrapIcon( icon, shouldShowPlaceholder ) }\n\t\t\t<FlexBlock>{ children }</FlexBlock>\n\t\t</HStack>\n\t);\n\n\tif ( isExternal ) {\n\t\t// Render as a regular anchor tag for external URLs\n\t\treturn (\n\t\t\t<Item\n\t\t\t\tas=\"a\"\n\t\t\t\thref={ to }\n\t\t\t\tclassName={ clsx( 'boot-navigation-item', className ) }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Item>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RouterLinkItem\n\t\t\tto={ to }\n\t\t\tclassName={ clsx( 'boot-navigation-item', className ) }\n\t\t>\n\t\t\t{ content }\n\t\t</RouterLinkItem>\n\t);\n}\n", "const css = `/**\n * SCSS Variables.\n *\n * Please use variables from this sheet to ensure consistency across the UI.\n * Don't add to this sheet unless you're pretty sure the value will be reused in many places.\n * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.\n */\n/**\n * Colors\n */\n/**\n * Fonts & basic variables.\n */\n/**\n * Typography\n */\n/**\n * Grid System.\n * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/\n */\n/**\n * Radius scale.\n */\n/**\n * Elevation scale.\n */\n/**\n * Dimensions.\n */\n/**\n * Mobile specific styles\n */\n/**\n * Editor styles.\n */\n/**\n * Block & Editor UI.\n */\n/**\n * Block paddings.\n */\n/**\n * React Native specific.\n * These variables do not appear to be used anywhere else.\n */\n/**\n * Typography\n */\n/**\n * Breakpoints & Media Queries\n */\n/**\n* Converts a hex value into the rgb equivalent.\n*\n* @param {string} hex - the hexadecimal value to convert\n* @return {string} comma separated rgb values\n*/\n/**\n * Long content fade mixin\n *\n * Creates a fading overlay to signify that the content is longer\n * than the space allows.\n */\n/**\n * Breakpoint mixins\n */\n/**\n * Focus styles.\n */\n/**\n * Applies editor left position to the selector passed as argument\n */\n/**\n * Styles that are reused verbatim in a few places\n */\n/**\n * Allows users to opt-out of animations via OS-level preferences.\n */\n/**\n * Reset default styles for JavaScript UI based pages.\n * This is a WP-admin agnostic reset\n */\n/**\n * Reset the WP Admin page styles for Gutenberg-like pages.\n */\n.boot-navigation-item.components-item {\n color: var(--wpds-color-fg-interactive-neutral, #1e1e1e);\n padding-inline: 4px;\n padding-block: 0;\n margin-inline: 12px;\n margin-block-end: 4px;\n width: calc(100% - 24px);\n border: none;\n min-height: 32px;\n display: flex;\n align-items: center;\n font-family: -apple-system, \"system-ui\", \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;\n font-weight: 400;\n font-size: 13px;\n line-height: 20px;\n}\n.boot-dropdown-item__children .boot-navigation-item.components-item {\n min-height: 24px;\n}\n.boot-navigation-item.components-item {\n border-radius: var(--wpds-border-radius-small, 2px);\n}\n.boot-navigation-item.components-item.active, .boot-navigation-item.components-item:hover, .boot-navigation-item.components-item:focus, .boot-navigation-item.components-item[aria-current=true] {\n color: var(--wpds-color-fg-interactive-brand-active, #0073aa);\n}\n.boot-navigation-item.components-item.active {\n font-weight: 499;\n}\n.boot-navigation-item.components-item svg:last-child {\n padding: 4px;\n}\n.boot-navigation-item.components-item[aria-current=true] {\n color: var(--wpds-color-fg-interactive-brand-active, #0073aa);\n font-weight: 499;\n}\n.boot-navigation-item.components-item:focus-visible {\n transform: translateZ(0);\n}\n.boot-navigation-item.components-item.with-suffix {\n padding-right: 16px;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvZ3V0ZW5iZXJnL2d1dGVuYmVyZy9wdWJsaXNoL3BhY2thZ2VzL2Jvb3Qvc3JjL2NvbXBvbmVudHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLWl0ZW0iLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL19jb2xvcnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL19taXhpbnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9Ad29yZHByZXNzL2Jhc2Utc3R5bGVzL19icmVha3BvaW50cy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0B3b3JkcHJlc3MvYmFzZS1zdHlsZXMvX2Z1bmN0aW9ucy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0B3b3JkcHJlc3MvYmFzZS1zdHlsZXMvX2xvbmctY29udGVudC1mYWRlLnNjc3MiLCJzdHlsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FDQUE7QUFBQTtBQUFBO0FEVUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBNkJBO0FBQUE7QUFBQTtBQUFBO0FBaUJBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWdCQTtBQUFBO0FBQUE7QUF3QkE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBZUE7QUFBQTtBQUFBO0FBbUJBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQUFBO0FFbEtBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBSDRFQTtBQUFBO0FBQUE7QUEwREE7QUFBQTtBQUFBO0FBZ0RBO0FBQUE7QUFBQTtBQXFDQTtBQUFBO0FBQUE7QUFvQkE7QUFBQTtBQUFBO0FBd0xBO0FBQUE7QUFBQTtBQUFBO0FBZ0RBO0FBQUE7QUFBQTtBSXBkQTtFQUNDO0VBQ0EsZ0JOK0NjO0VNOUNkO0VBQ0EsZU4rQ2M7RU05Q2Qsa0JONENjO0VNM0NkO0VBQ0E7RUFDQSxZTjhDYztFTTdDZDtFQUNBO0VKS0EsYUZ5QmtCO0VFeEJsQixhRm1CcUI7RUVzQnJCLFdGcENrQjtFRXFDbEIsYUY5QndCOztBTWZ4QjtFQUNDLFlOdUNhOztBTXJEZjtFQWtCQzs7QUFFQTtFQUlDOztBQUdEO0VBQ0MsYU5RbUI7O0FNTHBCO0VBQ0MsU05pQmE7O0FNZGQ7RUFDQztFQUNBLGFORG1COztBTUtwQjtFQUNDOztBQUdEO0VBQ0MsZU5NYSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU0NTUyBWYXJpYWJsZXMuXG4gKlxuICogUGxlYXNlIHVzZSB2YXJpYWJsZXMgZnJvbSB0aGlzIHNoZWV0IHRvIGVuc3VyZSBjb25zaXN0ZW5jeSBhY3Jvc3MgdGhlIFVJLlxuICogRG9uJ3QgYWRkIHRvIHRoaXMgc2hlZXQgdW5sZXNzIHlvdSdyZSBwcmV0dHkgc3VyZSB0aGUgdmFsdWUgd2lsbCBiZSByZXVzZWQgaW4gbWFueSBwbGFjZXMuXG4gKiBGb3IgZXhhbXBsZSwgZG9uJ3QgYWRkIHJ1bGVzIHRvIHRoaXMgc2hlZXQgdGhhdCBhZmZlY3QgYmxvY2sgdmlzdWFscy4gSXQncyBwdXJlbHkgZm9yIFVJLlxuICovXG5cbkB1c2UgXCIuL2NvbG9yc1wiO1xuXG4vKipcbiAqIEZvbnRzICYgYmFzaWMgdmFyaWFibGVzLlxuICovXG5cbiRkZWZhdWx0LWZvbnQ6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCxcIlNlZ29lIFVJXCIsIFJvYm90bywgT3h5Z2VuLVNhbnMsIFVidW50dSwgQ2FudGFyZWxsLFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjsgLy8gVG9kbzogZGVwcmVjYXRlIGluIGZhdm9yIG9mICRmYW1pbHkgdmFyaWFibGVzXG4kZGVmYXVsdC1saW5lLWhlaWdodDogMS40OyAvLyBUb2RvOiBkZXByZWNhdGUgaW4gZmF2b3Igb2YgJGxpbmUtaGVpZ2h0IHRva2Vuc1xuXG4vKipcbiAqIFR5cG9ncmFwaHlcbiAqL1xuXG4vLyBTaXplc1xuJGZvbnQtc2l6ZS14LXNtYWxsOiAxMXB4O1xuJGZvbnQtc2l6ZS1zbWFsbDogMTJweDtcbiRmb250LXNpemUtbWVkaXVtOiAxM3B4O1xuJGZvbnQtc2l6ZS1sYXJnZTogMTVweDtcbiRmb250LXNpemUteC1sYXJnZTogMjBweDtcbiRmb250LXNpemUtMngtbGFyZ2U6IDMycHg7XG5cbi8vIExpbmUgaGVpZ2h0c1xuJGZvbnQtbGluZS1oZWlnaHQteC1zbWFsbDogMTZweDtcbiRmb250LWxpbmUtaGVpZ2h0LXNtYWxsOiAyMHB4O1xuJGZvbnQtbGluZS1oZWlnaHQtbWVkaXVtOiAyNHB4O1xuJGZvbnQtbGluZS1oZWlnaHQtbGFyZ2U6IDI4cHg7XG4kZm9udC1saW5lLWhlaWdodC14LWxhcmdlOiAzMnB4O1xuJGZvbnQtbGluZS1oZWlnaHQtMngtbGFyZ2U6IDQwcHg7XG5cbi8vIFdlaWdodHNcbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA0OTk7IC8vIGVuc3VyZXMgZmFsbGJhY2sgdG8gNDAwIChpbnN0ZWFkIG9mIDYwMClcblxuLy8gRmFtaWxpZXNcbiRmb250LWZhbWlseS1oZWFkaW5nczogLWFwcGxlLXN5c3RlbSwgXCJzeXN0ZW0tdWlcIiwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWJvZHk6IC1hcHBsZS1zeXN0ZW0sIFwic3lzdGVtLXVpXCIsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBNZW5sbywgQ29uc29sYXMsIG1vbmFjbywgbW9ub3NwYWNlO1xuXG4vKipcbiAqIEdyaWQgU3lzdGVtLlxuICogaHR0cHM6Ly9tYWtlLndvcmRwcmVzcy5vcmcvZGVzaWduLzIwMTkvMTAvMzEvcHJvcG9zYWwtYS1jb25zaXN0ZW50LXNwYWNpbmctc3lzdGVtLWZvci13b3JkcHJlc3MvXG4gKi9cblxuJGdyaWQtdW5pdDogOHB4O1xuJGdyaWQtdW5pdC0wNTogMC41ICogJGdyaWQtdW5pdDtcdC8vIDRweFxuJGdyaWQtdW5pdC0xMDogMSAqICRncmlkLXVuaXQ7XHRcdC8vIDhweFxuJGdyaWQtdW5pdC0xNTogMS41ICogJGdyaWQtdW5pdDtcdC8vIDEycHhcbiRncmlkLXVuaXQtMjA6IDIgKiAkZ3JpZC11bml0O1x0XHQvLyAxNnB4XG4kZ3JpZC11bml0LTMwOiAzICogJGdyaWQtdW5pdDtcdFx0Ly8gMjRweFxuJGdyaWQtdW5pdC00MDogNCAqICRncmlkLXVuaXQ7XHRcdC8vIDMycHhcbiRncmlkLXVuaXQtNTA6IDUgKiAkZ3JpZC11bml0O1x0XHQvLyA0MHB4XG4kZ3JpZC11bml0LTYwOiA2ICogJGdyaWQtdW5pdDtcdFx0Ly8gNDhweFxuJGdyaWQtdW5pdC03MDogNyAqICRncmlkLXVuaXQ7XHRcdC8vIDU2cHhcbiRncmlkLXVuaXQtODA6IDggKiAkZ3JpZC11bml0O1x0XHQvLyA2NHB4XG5cbi8qKlxuICogUmFkaXVzIHNjYWxlLlxuICovXG5cbiRyYWRpdXMteC1zbWFsbDogMXB4OyAgIC8vIEFwcGxpZWQgdG8gZWxlbWVudHMgbGlrZSBidXR0b25zIG5lc3RlZCB3aXRoaW4gcHJpbWl0aXZlcyBsaWtlIGlucHV0cy5cbiRyYWRpdXMtc21hbGw6IDJweDsgICAgIC8vIEFwcGxpZWQgdG8gbW9zdCBwcmltaXRpdmVzLlxuJHJhZGl1cy1tZWRpdW06IDRweDsgICAgLy8gQXBwbGllZCB0byBjb250YWluZXJzIHdpdGggc21hbGxlciBwYWRkaW5nLlxuJHJhZGl1cy1sYXJnZTogOHB4OyAgICAgLy8gQXBwbGllZCB0byBjb250YWluZXJzIHdpdGggbGFyZ2VyIHBhZGRpbmcuXG4kcmFkaXVzLWZ1bGw6IDk5OTlweDsgICAvLyBGb3IgcGlsbHMuXG4kcmFkaXVzLXJvdW5kOiA1MCU7ICAgICAvLyBGb3IgY2lyY2xlcyBhbmQgb3ZhbHMuXG5cbi8qKlxuICogRWxldmF0aW9uIHNjYWxlLlxuICovXG5cbi8vIEZvciBzZWN0aW9ucyBhbmQgY29udGFpbmVycyB0aGF0IGdyb3VwIHJlbGF0ZWQgY29udGVudCBhbmQgY29udHJvbHMsIHdoaWNoIG1heSBvdmVybGFwIG90aGVyIGNvbnRlbnQuIEV4YW1wbGU6IFByZXZpZXcgRnJhbWUuXG4kZWxldmF0aW9uLXgtc21hbGw6IDAgMXB4IDFweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDMpLCAwIDFweCAycHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAyKSwgMCAzcHggM3B4IHJnYmEoY29sb3JzLiRibGFjaywgMC4wMiksIDAgNHB4IDRweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDEpO1xuXG4vLyBGb3IgY29tcG9uZW50cyB0aGF0IHByb3ZpZGUgY29udGV4dHVhbCBmZWVkYmFjayB3aXRob3V0IGJlaW5nIGludHJ1c2l2ZS4gR2VuZXJhbGx5IG5vbi1pbnRlcnJ1cHRpdmUuIEV4YW1wbGU6IFRvb2x0aXBzLCBTbmFja2Jhci5cbiRlbGV2YXRpb24tc21hbGw6IDAgMXB4IDJweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDUpLCAwIDJweCAzcHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA0KSwgMCA2cHggNnB4IHJnYmEoY29sb3JzLiRibGFjaywgMC4wMyksIDAgOHB4IDhweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDIpO1xuXG4vLyBGb3IgY29tcG9uZW50cyB0aGF0IG9mZmVyIGFkZGl0aW9uYWwgYWN0aW9ucy4gRXhhbXBsZTogTWVudXMsIENvbW1hbmQgUGFsZXR0ZVxuJGVsZXZhdGlvbi1tZWRpdW06IDAgMnB4IDNweCByZ2JhKGNvbG9ycy4kYmxhY2ssIDAuMDUpLCAwIDRweCA1cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA0KSwgMCAxMnB4IDEycHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAzKSwgMCAxNnB4IDE2cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAyKTtcblxuLy8gRm9yIGNvbXBvbmVudHMgdGhhdCBjb25maXJtIGRlY2lzaW9ucyBvciBoYW5kbGUgbmVjZXNzYXJ5IGludGVycnVwdGlvbnMuIEV4YW1wbGU6IE1vZGFscy5cbiRlbGV2YXRpb24tbGFyZ2U6IDAgNXB4IDE1cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA4KSwgMCAxNXB4IDI3cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA3KSwgMCAzMHB4IDM2cHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjA0KSwgMCA1MHB4IDQzcHggcmdiYShjb2xvcnMuJGJsYWNrLCAwLjAyKTtcblxuLyoqXG4gKiBEaW1lbnNpb25zLlxuICovXG5cbiRpY29uLXNpemU6IDI0cHg7XG4kYnV0dG9uLXNpemU6IDM2cHg7XG4kYnV0dG9uLXNpemUtbmV4dC1kZWZhdWx0LTQwcHg6IDQwcHg7IC8vIHRyYW5zaXRpb25hcnkgdmFyaWFibGUgZm9yIG5leHQgZGVmYXVsdCBidXR0b24gc2l6ZVxuJGJ1dHRvbi1zaXplLXNtYWxsOiAyNHB4O1xuJGJ1dHRvbi1zaXplLWNvbXBhY3Q6IDMycHg7XG4kaGVhZGVyLWhlaWdodDogNjRweDtcbiRwYW5lbC1oZWFkZXItaGVpZ2h0OiAkZ3JpZC11bml0LTYwO1xuJG5hdi1zaWRlYmFyLXdpZHRoOiAzMDBweDtcbiRhZG1pbi1iYXItaGVpZ2h0OiAzMnB4O1xuJGFkbWluLWJhci1oZWlnaHQtYmlnOiA0NnB4O1xuJGFkbWluLXNpZGViYXItd2lkdGg6IDE2MHB4O1xuJGFkbWluLXNpZGViYXItd2lkdGgtYmlnOiAxOTBweDtcbiRhZG1pbi1zaWRlYmFyLXdpZHRoLWNvbGxhcHNlZDogMzZweDtcbiRtb2RhbC1taW4td2lkdGg6IDM1MHB4O1xuJG1vZGFsLXdpZHRoLXNtYWxsOiAzODRweDtcbiRtb2RhbC13aWR0aC1tZWRpdW06IDUxMnB4O1xuJG1vZGFsLXdpZHRoLWxhcmdlOiA4NDBweDtcbiRzcGlubmVyLXNpemU6IDE2cHg7XG4kY2FudmFzLXBhZGRpbmc6ICRncmlkLXVuaXQtMjA7XG5cbi8qKlxuICogTW9iaWxlIHNwZWNpZmljIHN0eWxlc1xuICovXG4kbW9iaWxlLXRleHQtbWluLWZvbnQtc2l6ZTogMTZweDsgLy8gQW55IGZvbnQgc2l6ZSBiZWxvdyAxNnB4IHdpbGwgY2F1c2UgTW9iaWxlIFNhZmFyaSB0byBcInpvb20gaW5cIi5cblxuLyoqXG4gKiBFZGl0b3Igc3R5bGVzLlxuICovXG5cbiRzaWRlYmFyLXdpZHRoOiAyODBweDtcbiRjb250ZW50LXdpZHRoOiA4NDBweDtcbiR3aWRlLWNvbnRlbnQtd2lkdGg6IDExMDBweDtcbiR3aWRnZXQtYXJlYS13aWR0aDogNzAwcHg7XG4kc2Vjb25kYXJ5LXNpZGViYXItd2lkdGg6IDM1MHB4O1xuJGVkaXRvci1mb250LXNpemU6IDE2cHg7XG4kZGVmYXVsdC1ibG9jay1tYXJnaW46IDI4cHg7IC8vIFRoaXMgdmFsdWUgcHJvdmlkZXMgYSBjb25zaXN0ZW50LCBjb250aWd1b3VzIHNwYWNpbmcgYmV0d2VlbiBibG9ja3MuXG4kdGV4dC1lZGl0b3ItZm9udC1zaXplOiAxNXB4O1xuJGVkaXRvci1saW5lLWhlaWdodDogMS44O1xuJGVkaXRvci1odG1sLWZvbnQ6ICRmb250LWZhbWlseS1tb25vO1xuXG4vKipcbiAqIEJsb2NrICYgRWRpdG9yIFVJLlxuICovXG5cbiRibG9jay10b29sYmFyLWhlaWdodDogJGdyaWQtdW5pdC02MDtcbiRib3JkZXItd2lkdGg6IDFweDtcbiRib3JkZXItd2lkdGgtZm9jdXMtZmFsbGJhY2s6IDJweDsgLy8gVGhpcyBleGlzdHMgYXMgYSBmYWxsYmFjaywgYW5kIGlzIGlkZWFsbHkgb3ZlcnJpZGRlbiBieSB2YXIoLS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXMpIHVubGVzcyBpbiBzb21lIFNBU1MgbWF0aCBjYXNlcy5cbiRib3JkZXItd2lkdGgtdGFiOiAxLjVweDtcbiRoZWxwdGV4dC1mb250LXNpemU6IDEycHg7XG4kcmFkaW8taW5wdXQtc2l6ZTogMTZweDtcbiRyYWRpby1pbnB1dC1zaXplLXNtOiAyNHB4OyAvLyBXaWR0aCAmIGhlaWdodCBmb3Igc21hbGwgdmlld3BvcnRzLlxuXG4vLyBEZXByZWNhdGVkLCBwbGVhc2UgYXZvaWQgdXNpbmcgdGhlc2UuXG4kYmxvY2stcGFkZGluZzogMTRweDsgLy8gVXNlZCB0byBkZWZpbmUgc3BhY2UgYmV0d2VlbiBibG9jayBmb290cHJpbnQgYW5kIHN1cnJvdW5kaW5nIGJvcmRlcnMuXG4kcmFkaXVzLWJsb2NrLXVpOiAkcmFkaXVzLXNtYWxsO1xuJHNoYWRvdy1wb3BvdmVyOiAkZWxldmF0aW9uLXgtc21hbGw7XG4kc2hhZG93LW1vZGFsOiAkZWxldmF0aW9uLWxhcmdlO1xuJGRlZmF1bHQtZm9udC1zaXplOiAkZm9udC1zaXplLW1lZGl1bTtcblxuLyoqXG4gKiBCbG9jayBwYWRkaW5ncy5cbiAqL1xuXG4vLyBQYWRkaW5nIGZvciBibG9ja3Mgd2l0aCBhIGJhY2tncm91bmQgY29sb3IgKGUuZy4gcGFyYWdyYXBoIG9yIGdyb3VwKS5cbiRibG9jay1iZy1wYWRkaW5nLS12OiAxLjI1ZW07XG4kYmxvY2stYmctcGFkZGluZy0taDogMi4zNzVlbTtcblxuXG4vKipcbiAqIFJlYWN0IE5hdGl2ZSBzcGVjaWZpYy5cbiAqIFRoZXNlIHZhcmlhYmxlcyBkbyBub3QgYXBwZWFyIHRvIGJlIHVzZWQgYW55d2hlcmUgZWxzZS5cbiAqL1xuXG4vLyBEaW1lbnNpb25zLlxuJG1vYmlsZS1oZWFkZXItdG9vbGJhci1oZWlnaHQ6IDQ0cHg7XG4kbW9iaWxlLWhlYWRlci10b29sYmFyLWV4cGFuZGVkLWhlaWdodDogNTJweDtcbiRtb2JpbGUtZmxvYXRpbmctdG9vbGJhci1oZWlnaHQ6IDQ0cHg7XG4kbW9iaWxlLWZsb2F0aW5nLXRvb2xiYXItbWFyZ2luOiA4cHg7XG4kbW9iaWxlLWNvbG9yLXN3YXRjaDogNDhweDtcblxuLy8gQmxvY2sgVUkuXG4kbW9iaWxlLWJsb2NrLXRvb2xiYXItaGVpZ2h0OiA0NHB4O1xuJGRpbW1lZC1vcGFjaXR5OiAxO1xuJGJsb2NrLWVkZ2UtdG8tY29udGVudDogMTZweDtcbiRzb2xpZC1ib3JkZXItc3BhY2U6IDEycHg7XG4kZGFzaGVkLWJvcmRlci1zcGFjZTogNnB4O1xuJGJsb2NrLXNlbGVjdGVkLW1hcmdpbjogM3B4O1xuJGJsb2NrLXNlbGVjdGVkLWJvcmRlci13aWR0aDogMXB4O1xuJGJsb2NrLXNlbGVjdGVkLXBhZGRpbmc6IDA7XG4kYmxvY2stc2VsZWN0ZWQtY2hpbGQtbWFyZ2luOiA1cHg7XG4kYmxvY2stc2VsZWN0ZWQtdG8tY29udGVudDogJGJsb2NrLWVkZ2UtdG8tY29udGVudCAtICRibG9jay1zZWxlY3RlZC1tYXJnaW4gLSAkYmxvY2stc2VsZWN0ZWQtYm9yZGVyLXdpZHRoO1xuIiwiLyoqXG4gKiBDb2xvcnNcbiAqL1xuXG4vLyBXb3JkUHJlc3MgZ3JheXMuXG4kYmxhY2s6ICMwMDA7XHRcdFx0Ly8gVXNlIG9ubHkgd2hlbiB5b3UgdHJ1bHkgbmVlZCBwdXJlIGJsYWNrLiBGb3IgVUksIHVzZSAkZ3JheS05MDAuXG4kZ3JheS05MDA6ICMxZTFlMWU7XG4kZ3JheS04MDA6ICMyZjJmMmY7XG4kZ3JheS03MDA6ICM3NTc1NzU7XHRcdC8vIE1lZXRzIDQuNjoxICg0LjU6MSBpcyBtaW5pbXVtKSB0ZXh0IGNvbnRyYXN0IGFnYWluc3Qgd2hpdGUuXG4kZ3JheS02MDA6ICM5NDk0OTQ7XHRcdC8vIE1lZXRzIDM6MSBVSSBvciBsYXJnZSB0ZXh0IGNvbnRyYXN0IGFnYWluc3Qgd2hpdGUuXG4kZ3JheS00MDA6ICNjY2M7XG4kZ3JheS0zMDA6ICNkZGQ7XHRcdC8vIFVzZWQgZm9yIG1vc3QgYm9yZGVycy5cbiRncmF5LTIwMDogI2UwZTBlMDtcdFx0Ly8gVXNlZCBzcGFyaW5nbHkgZm9yIGxpZ2h0IGJvcmRlcnMuXG4kZ3JheS0xMDA6ICNmMGYwZjA7XHRcdC8vIFVzZWQgZm9yIGxpZ2h0IGdyYXkgYmFja2dyb3VuZHMuXG4kd2hpdGU6ICNmZmY7XG5cbi8vIE9wYWNpdGllcyAmIGFkZGl0aW9uYWwgY29sb3JzLlxuJGRhcmstZ3JheS1wbGFjZWhvbGRlcjogcmdiYSgkZ3JheS05MDAsIDAuNjIpO1xuJG1lZGl1bS1ncmF5LXBsYWNlaG9sZGVyOiByZ2JhKCRncmF5LTkwMCwgMC41NSk7XG4kbGlnaHQtZ3JheS1wbGFjZWhvbGRlcjogcmdiYSgkd2hpdGUsIDAuNjUpO1xuXG4vLyBBbGVydCBjb2xvcnMuXG4kYWxlcnQteWVsbG93OiAjZjBiODQ5O1xuJGFsZXJ0LXJlZDogI2NjMTgxODtcbiRhbGVydC1ncmVlbjogIzRhYjg2NjtcblxuLy8gRGVwcmVjYXRlZCwgcGxlYXNlIGF2b2lkIHVzaW5nIHRoZXNlLlxuJGRhcmstdGhlbWUtZm9jdXM6ICR3aGl0ZTtcdC8vIEZvY3VzIGNvbG9yIHdoZW4gdGhlIHRoZW1lIGlzIGRhcmsuXG4iLCIvKipcbiAqIFR5cG9ncmFwaHlcbiAqL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcIi4vdmFyaWFibGVzXCI7XG5AdXNlIFwiLi9jb2xvcnNcIjtcbkB1c2UgXCIuL2JyZWFrcG9pbnRzXCI7XG5AdXNlIFwiLi9mdW5jdGlvbnNcIjtcbkB1c2UgXCIuL2xvbmctY29udGVudC1mYWRlXCI7XG5cbkBtaXhpbiBfdGV4dC1oZWFkaW5nKCkge1xuXHRmb250LWZhbWlseTogdmFyaWFibGVzLiRmb250LWZhbWlseS1oZWFkaW5ncztcblx0Zm9udC13ZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC13ZWlnaHQtbWVkaXVtO1xufVxuXG5AbWl4aW4gX3RleHQtYm9keSgpIHtcblx0Zm9udC1mYW1pbHk6IHZhcmlhYmxlcy4kZm9udC1mYW1pbHktYm9keTtcblx0Zm9udC13ZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC13ZWlnaHQtcmVndWxhcjtcbn1cblxuQG1peGluIGhlYWRpbmctc21hbGwoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWhlYWRpbmcoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS14LXNtYWxsO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LXgtc21hbGw7XG59XG5cbkBtaXhpbiBoZWFkaW5nLW1lZGl1bSgpIHtcblx0QGluY2x1ZGUgX3RleHQtaGVhZGluZygpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLW1lZGl1bTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1zbWFsbDtcbn1cblxuQG1peGluIGhlYWRpbmctbGFyZ2UoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWhlYWRpbmcoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS1sYXJnZTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1zbWFsbDtcbn1cblxuQG1peGluIGhlYWRpbmcteC1sYXJnZSgpIHtcblx0QGluY2x1ZGUgX3RleHQtaGVhZGluZygpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLXgtbGFyZ2U7XG5cdGxpbmUtaGVpZ2h0OiB2YXJpYWJsZXMuJGZvbnQtbGluZS1oZWlnaHQtbWVkaXVtO1xufVxuXG5AbWl4aW4gaGVhZGluZy0yeC1sYXJnZSgpIHtcblx0QGluY2x1ZGUgX3RleHQtaGVhZGluZygpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLTJ4LWxhcmdlO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LTJ4LWxhcmdlO1xufVxuXG5AbWl4aW4gYm9keS1zbWFsbCgpIHtcblx0QGluY2x1ZGUgX3RleHQtYm9keSgpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLXNtYWxsO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LXgtc21hbGw7XG59XG5cbkBtaXhpbiBib2R5LW1lZGl1bSgpIHtcblx0QGluY2x1ZGUgX3RleHQtYm9keSgpO1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kZm9udC1zaXplLW1lZGl1bTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1zbWFsbDtcbn1cblxuQG1peGluIGJvZHktbGFyZ2UoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWJvZHkoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS1sYXJnZTtcblx0bGluZS1oZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC1saW5lLWhlaWdodC1tZWRpdW07XG59XG5cbkBtaXhpbiBib2R5LXgtbGFyZ2UoKSB7XG5cdEBpbmNsdWRlIF90ZXh0LWJvZHkoKTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGZvbnQtc2l6ZS14LWxhcmdlO1xuXHRsaW5lLWhlaWdodDogdmFyaWFibGVzLiRmb250LWxpbmUtaGVpZ2h0LXgtbGFyZ2U7XG59XG5cbi8qKlxuICogQnJlYWtwb2ludCBtaXhpbnNcbiAqL1xuXG5AbWl4aW4gYnJlYWsteGh1Z2UoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLXhodWdlKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGJyZWFrLWh1Z2UoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLWh1Z2UpIH0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gYnJlYWstd2lkZSgpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstd2lkZSkgfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBicmVhay14bGFyZ2UoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLXhsYXJnZSkgfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBicmVhay1sYXJnZSgpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbGFyZ2UpIH0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gYnJlYWstbWVkaXVtKCkge1xuXHRAbWVkaWEgKG1pbi13aWR0aDogI3sgKGJyZWFrcG9pbnRzLiRicmVhay1tZWRpdW0pIH0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gYnJlYWstc21hbGwoKSB7XG5cdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLXNtYWxsKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGJyZWFrLW1vYmlsZSgpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbW9iaWxlKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGJyZWFrLXpvb21lZC1pbigpIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstem9vbWVkLWluKSB9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLyoqXG4gKiBGb2N1cyBzdHlsZXMuXG4gKi9cblxuQG1peGluIGJsb2NrLXRvb2xiYXItYnV0dG9uLXN0eWxlX19mb2N1cygpIHtcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgdmFyaWFibGVzLiRib3JkZXItd2lkdGggY29sb3JzLiR3aGl0ZSwgMCAwIDAgdmFyKC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzKSB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7XG5cblx0Ly8gV2luZG93cyBIaWdoIENvbnRyYXN0IG1vZGUgd2lsbCBzaG93IHRoaXMgb3V0bGluZSwgYnV0IG5vdCB0aGUgYm94LXNoYWRvdy5cblx0b3V0bGluZTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLyBUYWJzLCBJbnB1dHMsIFNxdWFyZSBidXR0b25zLlxuQG1peGluIGlucHV0LXN0eWxlX19uZXV0cmFsKCkge1xuXHRib3gtc2hhZG93OiAwIDAgMCB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXJhZGl1czogdmFyaWFibGVzLiRyYWRpdXMtc21hbGw7XG5cdGJvcmRlcjogdmFyaWFibGVzLiRib3JkZXItd2lkdGggc29saWQgY29sb3JzLiRncmF5LTYwMDtcblxuXHRAbWVkaWEgbm90IChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7XG5cdFx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjFzIGxpbmVhcjtcblx0fVxufVxuXG5cbkBtaXhpbiBpbnB1dC1zdHlsZV9fZm9jdXMoJGFjY2VudC1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpKSB7XG5cdGJvcmRlci1jb2xvcjogJGFjY2VudC1jb2xvcjtcblx0Ly8gRXhwYW5kIHRoZSBkZWZhdWx0IGJvcmRlciBmb2N1cyBzdHlsZSBieSAuNXB4IHRvIGJlIGEgdG90YWwgb2YgMS41cHguXG5cdGJveC1zaGFkb3c6IDAgMCAwIDAuNXB4ICRhY2NlbnQtY29sb3I7XG5cdC8vIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlIHdpbGwgc2hvdyB0aGlzIG91dGxpbmUsIGJ1dCBub3QgdGhlIGJveC1zaGFkb3cuXG5cdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGJ1dHRvbi1zdHlsZV9fZm9jdXMoKSB7XG5cdGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLXdwLWFkbWluLWJvcmRlci13aWR0aC1mb2N1cykgdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXG5cdC8vIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlIHdpbGwgc2hvdyB0aGlzIG91dGxpbmUsIGJ1dCBub3QgdGhlIGJveC1zaGFkb3cuXG5cdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuXG5AbWl4aW4gYnV0dG9uLXN0eWxlLW91dHNldF9fZm9jdXMoJGZvY3VzLWNvbG9yKSB7XG5cdGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLXdwLWFkbWluLWJvcmRlci13aWR0aC1mb2N1cykgY29sb3JzLiR3aGl0ZSwgMCAwIDAgY2FsYygyICogdmFyKC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzKSkgJGZvY3VzLWNvbG9yO1xuXG5cdC8vIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlIHdpbGwgc2hvdyB0aGlzIG91dGxpbmUsIGJ1dCBub3QgdGhlIGJveC1zaGFkb3cuXG5cdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuXG4vKipcbiAqIEFwcGxpZXMgZWRpdG9yIGxlZnQgcG9zaXRpb24gdG8gdGhlIHNlbGVjdG9yIHBhc3NlZCBhcyBhcmd1bWVudFxuICovXG5cbkBtaXhpbiBlZGl0b3ItbGVmdCgkc2VsZWN0b3IpIHtcblx0I3skc2VsZWN0b3J9IHsgLyogU2V0IGxlZnQgcG9zaXRpb24gd2hlbiBhdXRvLWZvbGQgaXMgbm90IG9uIHRoZSBib2R5IGVsZW1lbnQuICovXG5cdFx0bGVmdDogMDtcblxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLW1lZGl1bSArIDEpIH0pIHtcblx0XHRcdGxlZnQ6IHZhcmlhYmxlcy4kYWRtaW4tc2lkZWJhci13aWR0aDtcblx0XHR9XG5cdH1cblxuXHQuYXV0by1mb2xkICN7JHNlbGVjdG9yfSB7IC8qIEF1dG8gZm9sZCBpcyB3aGVuIG9uIHNtYWxsZXIgYnJlYWtwb2ludHMsIG5hdiBtZW51IGF1dG8gY29sbGFwc2VzLiAqL1xuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAjeyAoYnJlYWtwb2ludHMuJGJyZWFrLW1lZGl1bSArIDEpIH0pIHtcblx0XHRcdGxlZnQ6IHZhcmlhYmxlcy4kYWRtaW4tc2lkZWJhci13aWR0aC1jb2xsYXBzZWQ7XG5cdFx0fVxuXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbGFyZ2UgKyAxKSB9KSB7XG5cdFx0XHRsZWZ0OiB2YXJpYWJsZXMuJGFkbWluLXNpZGViYXItd2lkdGg7XG5cdFx0fVxuXHR9XG5cblx0LyogU2lkZWJhciBtYW51YWxseSBjb2xsYXBzZWQuICovXG5cdC5mb2xkZWQgI3skc2VsZWN0b3J9IHtcblx0XHRsZWZ0OiAwO1xuXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICN7IChicmVha3BvaW50cy4kYnJlYWstbWVkaXVtICsgMSkgfSkge1xuXHRcdFx0bGVmdDogdmFyaWFibGVzLiRhZG1pbi1zaWRlYmFyLXdpZHRoLWNvbGxhcHNlZDtcblx0XHR9XG5cdH1cblxuXHRib2R5LmlzLWZ1bGxzY3JlZW4tbW9kZSAjeyRzZWxlY3Rvcn0ge1xuXHRcdGxlZnQ6IDAgIWltcG9ydGFudDtcblx0fVxufVxuXG4vKipcbiAqIFN0eWxlcyB0aGF0IGFyZSByZXVzZWQgdmVyYmF0aW0gaW4gYSBmZXcgcGxhY2VzXG4gKi9cblxuLy8gVGhlc2UgYXJlIGFkZGl0aW9uYWwgc3R5bGVzIGZvciBhbGwgY2FwdGlvbnMsIHdoZW4gdGhlIHRoZW1lIG9wdHMgaW4gdG8gYmxvY2sgc3R5bGVzLlxuQG1peGluIGNhcHRpb24tc3R5bGUoKSB7XG5cdG1hcmdpbi10b3A6IDAuNWVtO1xuXHRtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbkBtaXhpbiBjYXB0aW9uLXN0eWxlLXRoZW1lKCkge1xuXHRjb2xvcjogIzU1NTtcblx0Zm9udC1zaXplOiB2YXJpYWJsZXMuJGRlZmF1bHQtZm9udC1zaXplO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0LmlzLWRhcmstdGhlbWUgJiB7XG5cdFx0Y29sb3I6IGNvbG9ycy4kbGlnaHQtZ3JheS1wbGFjZWhvbGRlcjtcblx0fVxufVxuXG4vKipcbiAqIEFsbG93cyB1c2VycyB0byBvcHQtb3V0IG9mIGFuaW1hdGlvbnMgdmlhIE9TLWxldmVsIHByZWZlcmVuY2VzLlxuICovXG5cbkBtaXhpbiByZWR1Y2UtbW90aW9uKCRwcm9wZXJ0eTogXCJcIikge1xuXG5cdEBpZiAkcHJvcGVydHkgPT0gXCJ0cmFuc2l0aW9uXCIge1xuXHRcdEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG5cdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0fSBAZWxzZSBpZiAkcHJvcGVydHkgPT0gXCJhbmltYXRpb25cIiB7XG5cdFx0QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMW1zO1xuXHRcdFx0YW5pbWF0aW9uLWRlbGF5OiAwcztcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG5cdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcblx0XHRcdHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXHRcdFx0YW5pbWF0aW9uLWR1cmF0aW9uOiAxbXM7XG5cdFx0XHRhbmltYXRpb24tZGVsYXk6IDBzO1xuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gaW5wdXQtY29udHJvbCgkYWNjZW50LWNvbG9yOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcikpIHtcblx0Zm9udC1mYW1pbHk6IHZhcmlhYmxlcy4kZGVmYXVsdC1mb250O1xuXHRwYWRkaW5nOiA2cHggOHB4O1xuXHQvKiBGb250cyBzbWFsbGVyIHRoYW4gMTZweCBjYXVzZXMgbW9iaWxlIHNhZmFyaSB0byB6b29tLiAqL1xuXHRmb250LXNpemU6IHZhcmlhYmxlcy4kbW9iaWxlLXRleHQtbWluLWZvbnQtc2l6ZTtcblx0LyogT3ZlcnJpZGUgY29yZSBsaW5lLWhlaWdodC4gVG8gYmUgcmV2aWV3ZWQuICovXG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdEBpbmNsdWRlIGlucHV0LXN0eWxlX19uZXV0cmFsKCk7XG5cblx0QGluY2x1ZGUgYnJlYWstc21hbGwge1xuXHRcdGZvbnQtc2l6ZTogdmFyaWFibGVzLiRkZWZhdWx0LWZvbnQtc2l6ZTtcblx0XHQvKiBPdmVycmlkZSBjb3JlIGxpbmUtaGVpZ2h0LiBUbyBiZSByZXZpZXdlZC4gKi9cblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0QGluY2x1ZGUgaW5wdXQtc3R5bGVfX2ZvY3VzKCRhY2NlbnQtY29sb3IpO1xuXHR9XG5cblx0Ly8gVXNlIG9wYWNpdHkgdG8gd29yayBpbiB2YXJpb3VzIGVkaXRvciBzdHlsZXMuXG5cdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiBjb2xvcnMuJGRhcmstZ3JheS1wbGFjZWhvbGRlcjtcblx0fVxuXG5cdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiBjb2xvcnMuJGRhcmstZ3JheS1wbGFjZWhvbGRlcjtcblx0fVxuXG5cdCY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogY29sb3JzLiRkYXJrLWdyYXktcGxhY2Vob2xkZXI7XG5cdH1cbn1cblxuQG1peGluIGNoZWNrYm94LWNvbnRyb2wge1xuXHRib3JkZXI6IHZhcmlhYmxlcy4kYm9yZGVyLXdpZHRoIHNvbGlkIGNvbG9ycy4kZ3JheS05MDA7XG5cdG1hcmdpbi1yaWdodDogdmFyaWFibGVzLiRncmlkLXVuaXQtMTU7XG5cdHRyYW5zaXRpb246IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IHZhcmlhYmxlcy4kcmFkaXVzLXNtYWxsO1xuXHRAaW5jbHVkZSBpbnB1dC1jb250cm9sO1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDAgMCAwICh2YXJpYWJsZXMuJGJvcmRlci13aWR0aCAqIDIpIGNvbG9ycy4kd2hpdGUsIDAgMCAwICh2YXJpYWJsZXMuJGJvcmRlci13aWR0aCAqIDIgKyB2YXJpYWJsZXMuJGJvcmRlci13aWR0aC1mb2N1cy1mYWxsYmFjaykgdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXG5cdFx0Ly8gT25seSB2aXNpYmxlIGluIFdpbmRvd3MgSGlnaCBDb250cmFzdCBtb2RlLlxuXHRcdG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0fVxuXG5cdCY6Y2hlY2tlZCB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXG5cdFx0Ly8gSGlkZSBkZWZhdWx0IGNoZWNrYm94IHN0eWxlcyBpbiBJRS5cblx0XHQmOjotbXMtY2hlY2sge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHR9XG5cdH1cblxuXHQmOmNoZWNrZWQ6OmJlZm9yZSxcblx0JlthcmlhLWNoZWNrZWQ9XCJtaXhlZFwiXTo6YmVmb3JlIHtcblx0XHRtYXJnaW46IC0zcHggLTVweDtcblx0XHRjb2xvcjogY29sb3JzLiR3aGl0ZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrLW1lZGl1bSgpIHtcblx0XHRcdG1hcmdpbjogLTRweCAwIDAgLTVweDtcblx0XHR9XG5cdH1cblxuXHQmW2FyaWEtY2hlY2tlZD1cIm1peGVkXCJdIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvcik7XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Ly8gSW5oZXJpdGVkIGZyb20gYGZvcm1zLmNzc2AuXG5cdFx0XHQvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9Xb3JkUHJlc3Mvd29yZHByZXNzLWRldmVsb3AvdHJlZS81LjEuMS9zcmMvd3AtYWRtaW4vY3NzL2Zvcm1zLmNzcyNMMTIyLUwxMzJcblx0XHRcdGNvbnRlbnQ6IFwiXFxmNDYwXCI7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHR3aWR0aDogMTZweDtcblx0XHRcdC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmQgLS0gZGFzaGljb25zIGRvbid0IG5lZWQgYSBnZW5lcmljIGZhbWlseSBrZXl3b3JkLiAqL1xuXHRcdFx0Zm9udDogbm9ybWFsIDMwcHgvMSBkYXNoaWNvbnM7XG5cdFx0XHRzcGVhazogbm9uZTtcblx0XHRcdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWstbWVkaXVtKCkge1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0Zm9udC1zaXplOiAyMXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0sXG5cdCY6ZGlzYWJsZWQge1xuXHRcdGJhY2tncm91bmQ6IGNvbG9ycy4kZ3JheS0xMDA7XG5cdFx0Ym9yZGVyLWNvbG9yOiBjb2xvcnMuJGdyYXktMzAwO1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblxuXHRcdC8vIE92ZXJyaWRlIHN0eWxlIGluaGVyaXRlZCBmcm9tIHdwLWFkbWluLiBSZXF1aXJlZCB0byBhdm9pZCBkZWdyYWRlZCBhcHBlYXJhbmNlIG9uIGRpZmZlcmVudCBiYWNrZ3JvdW5kcy5cblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbkBtaXhpbiByYWRpby1jb250cm9sIHtcblx0Ym9yZGVyOiB2YXJpYWJsZXMuJGJvcmRlci13aWR0aCBzb2xpZCBjb2xvcnMuJGdyYXktOTAwO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTE1O1xuXHR0cmFuc2l0aW9uOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiB2YXJpYWJsZXMuJHJhZGl1cy1yb3VuZDtcblx0d2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZS1zbTtcblx0aGVpZ2h0OiB2YXJpYWJsZXMuJHJhZGlvLWlucHV0LXNpemUtc207XG5cdG1pbi13aWR0aDogdmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLXNtO1xuXHRtYXgtd2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZS1zbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBtZWRpYSBub3QgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcblx0XHR0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMXMgbGluZWFyO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWstc21hbGwoKSB7XG5cdFx0aGVpZ2h0OiB2YXJpYWJsZXMuJHJhZGlvLWlucHV0LXNpemU7XG5cdFx0d2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZTtcblx0XHRtaW4td2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZTtcblx0XHRtYXgtd2lkdGg6IHZhcmlhYmxlcy4kcmFkaW8taW5wdXQtc2l6ZTtcblx0fVxuXG5cdCY6Y2hlY2tlZDo6YmVmb3JlIHtcblx0XHRib3gtc2l6aW5nOiBpbmhlcml0O1xuXHRcdHdpZHRoOiBtYXRoLmRpdih2YXJpYWJsZXMuJHJhZGlvLWlucHV0LXNpemUtc20sIDIpO1xuXHRcdGhlaWdodDogbWF0aC5kaXYodmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLXNtLCAyKTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdG1hcmdpbjogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcnMuJHdoaXRlO1xuXG5cdFx0Ly8gVGhpcyBib3JkZXIgc2VydmVzIGFzIGEgYmFja2dyb3VuZCBjb2xvciBpbiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgbW9kZS5cblx0XHRib3JkZXI6IDRweCBzb2xpZCBjb2xvcnMuJHdoaXRlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWstc21hbGwoKSB7XG5cdFx0XHR3aWR0aDogbWF0aC5kaXYodmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLCAyKTtcblx0XHRcdGhlaWdodDogbWF0aC5kaXYodmFyaWFibGVzLiRyYWRpby1pbnB1dC1zaXplLCAyKTtcblx0XHR9XG5cdH1cblxuXHQmOmZvY3VzIHtcblx0XHRib3gtc2hhZG93OiAwIDAgMCAodmFyaWFibGVzLiRib3JkZXItd2lkdGggKiAyKSBjb2xvcnMuJHdoaXRlLCAwIDAgMCAodmFyaWFibGVzLiRib3JkZXItd2lkdGggKiAyICsgdmFyaWFibGVzLiRib3JkZXItd2lkdGgtZm9jdXMtZmFsbGJhY2spIHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKTtcblxuXHRcdC8vIE9ubHkgdmlzaWJsZSBpbiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgbW9kZS5cblx0XHRvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQmOmNoZWNrZWQge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdH1cbn1cblxuLyoqXG4gKiBSZXNldCBkZWZhdWx0IHN0eWxlcyBmb3IgSmF2YVNjcmlwdCBVSSBiYXNlZCBwYWdlcy5cbiAqIFRoaXMgaXMgYSBXUC1hZG1pbiBhZ25vc3RpYyByZXNldFxuICovXG5cbkBtaXhpbiByZXNldCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cblx0Kixcblx0Kjo6YmVmb3JlLFxuXHQqOjphZnRlciB7XG5cdFx0Ym94LXNpemluZzogaW5oZXJpdDtcblx0fVxufVxuXG5AbWl4aW4gbGluay1yZXNldCB7XG5cdCY6Zm9jdXMge1xuXHRcdGNvbG9yOiB2YXIoLS13cC1hZG1pbi10aGVtZS1jb2xvci0tcmdiKTtcblx0XHRib3gtc2hhZG93OiAwIDAgMCB2YXIoLS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXMpIHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yLCAjMDA3Y2JhKTtcblx0XHRib3JkZXItcmFkaXVzOiB2YXJpYWJsZXMuJHJhZGl1cy1zbWFsbDtcblx0fVxufVxuXG4vLyBUaGUgZWRpdG9yIGlucHV0IHJlc2V0IHdpdGggaW5jcmVhc2VkIHNwZWNpZmljaXR5IHRvIGF2b2lkIHRoZW1lIHN0eWxlcyBibGVlZGluZyBpbi5cbkBtaXhpbiBlZGl0b3ItaW5wdXQtcmVzZXQoKSB7XG5cdGZvbnQtZmFtaWx5OiB2YXJpYWJsZXMuJGVkaXRvci1odG1sLWZvbnQgIWltcG9ydGFudDtcblx0Y29sb3I6IGNvbG9ycy4kZ3JheS05MDAgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZDogY29sb3JzLiR3aGl0ZSAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiB2YXJpYWJsZXMuJGdyaWQtdW5pdC0xNSAhaW1wb3J0YW50O1xuXHRib3JkZXI6IHZhcmlhYmxlcy4kYm9yZGVyLXdpZHRoIHNvbGlkIGNvbG9ycy4kZ3JheS05MDAgIWltcG9ydGFudDtcblx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuXHRib3JkZXItcmFkaXVzOiB2YXJpYWJsZXMuJHJhZGl1cy1zbWFsbCAhaW1wb3J0YW50O1xuXG5cdC8vIEZvbnRzIHNtYWxsZXIgdGhhbiAxNnB4IGNhdXNlcyBtb2JpbGUgc2FmYXJpIHRvIHpvb20uXG5cdGZvbnQtc2l6ZTogdmFyaWFibGVzLiRtb2JpbGUtdGV4dC1taW4tZm9udC1zaXplICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIGJyZWFrLXNtYWxsIHtcblx0XHRmb250LXNpemU6IHZhcmlhYmxlcy4kZGVmYXVsdC1mb250LXNpemUgIWltcG9ydGFudDtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpICFpbXBvcnRhbnQ7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgKHZhcmlhYmxlcy4kYm9yZGVyLXdpZHRoLWZvY3VzLWZhbGxiYWNrIC0gdmFyaWFibGVzLiRib3JkZXItd2lkdGgpIHZhcigtLXdwLWFkbWluLXRoZW1lLWNvbG9yKSAhaW1wb3J0YW50O1xuXG5cdFx0Ly8gV2luZG93cyBIaWdoIENvbnRyYXN0IG1vZGUgd2lsbCBzaG93IHRoaXMgb3V0bGluZSwgYnV0IG5vdCB0aGUgYm94LXNoYWRvdy5cblx0XHRvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0fVxufVxuXG4vKipcbiAqIFJlc2V0IHRoZSBXUCBBZG1pbiBwYWdlIHN0eWxlcyBmb3IgR3V0ZW5iZXJnLWxpa2UgcGFnZXMuXG4gKi9cblxuQG1peGluIHdwLWFkbWluLXJlc2V0KCAkY29udGVudC1jb250YWluZXIgKSB7XG5cdGJhY2tncm91bmQ6IGNvbG9ycy4kd2hpdGU7XG5cblx0I3dwY29udGVudCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHR9XG5cblx0I3dwYm9keS1jb250ZW50IHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0fVxuXG5cdC8qIFdlIGhpZGUgbGVnYWN5IG5vdGljZXMgaW4gR3V0ZW5iZXJnIEJhc2VkIFBhZ2VzLCBiZWNhdXNlIHRoZXkgd2VyZSBub3QgZGVzaWduZWQgaW4gYSB3YXkgdGhhdCBzY2FsZWQgd2VsbC5cblx0ICAgUGx1Z2lucyBjYW4gdXNlIEd1dGVuYmVyZyBub3RpY2VzIGlmIHRoZXkgbmVlZCB0byBwYXNzIG9uIGluZm9ybWF0aW9uIHRvIHRoZSB1c2VyIHdoZW4gdGhleSBhcmUgZWRpdGluZy4gKi9cblx0I3dwYm9keS1jb250ZW50ID4gZGl2Om5vdCgjeyAkY29udGVudC1jb250YWluZXIgfSk6bm90KCNzY3JlZW4tbWV0YSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQjd3Bmb290ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQuYTExeS1zcGVhay1yZWdpb24ge1xuXHRcdGxlZnQ6IC0xcHg7XG5cdFx0dG9wOiAtMXB4O1xuXHR9XG5cblx0dWwjYWRtaW5tZW51IGEud3AtaGFzLWN1cnJlbnQtc3VibWVudTo6YWZ0ZXIsXG5cdHVsI2FkbWlubWVudSA+IGxpLmN1cnJlbnQgPiBhLmN1cnJlbnQ6OmFmdGVyIHtcblx0XHRib3JkZXItcmlnaHQtY29sb3I6IGNvbG9ycy4kd2hpdGU7XG5cdH1cblxuXHQubWVkaWEtZnJhbWUgc2VsZWN0LmF0dGFjaG1lbnQtZmlsdGVyczpsYXN0LW9mLXR5cGUge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxufVxuXG5AbWl4aW4gYWRtaW4tc2NoZW1lKCRjb2xvci1wcmltYXJ5KSB7XG5cdC8vIERlZmluZSBSR0IgZXF1aXZhbGVudHMgZm9yIHVzZSBpbiByZ2JhIGZ1bmN0aW9uLlxuXHQvLyBIZXhhZGVjaW1hbCBjc3MgdmFycyBkbyBub3Qgd29yayBpbiB0aGUgcmdiYSBmdW5jdGlvbi5cblx0LS13cC1hZG1pbi10aGVtZS1jb2xvcjogI3skY29sb3ItcHJpbWFyeX07XG5cdC0td3AtYWRtaW4tdGhlbWUtY29sb3ItLXJnYjogI3tmdW5jdGlvbnMuaGV4LXRvLXJnYigkY29sb3ItcHJpbWFyeSl9O1xuXHQvLyBEYXJrZXIgc2hhZGVzLlxuXHQtLXdwLWFkbWluLXRoZW1lLWNvbG9yLWRhcmtlci0xMDogI3tjb2xvci5hZGp1c3QoJGNvbG9yLXByaW1hcnksICRsaWdodG5lc3M6IC01JSl9O1xuXHQtLXdwLWFkbWluLXRoZW1lLWNvbG9yLWRhcmtlci0xMC0tcmdiOiAje2Z1bmN0aW9ucy5oZXgtdG8tcmdiKGNvbG9yLmFkanVzdCgkY29sb3ItcHJpbWFyeSwgJGxpZ2h0bmVzczogLTUlKSl9O1xuXHQtLXdwLWFkbWluLXRoZW1lLWNvbG9yLWRhcmtlci0yMDogI3tjb2xvci5hZGp1c3QoJGNvbG9yLXByaW1hcnksICRsaWdodG5lc3M6IC0xMCUpfTtcblx0LS13cC1hZG1pbi10aGVtZS1jb2xvci1kYXJrZXItMjAtLXJnYjogI3tmdW5jdGlvbnMuaGV4LXRvLXJnYihjb2xvci5hZGp1c3QoJGNvbG9yLXByaW1hcnksICRsaWdodG5lc3M6IC0xMCUpKX07XG5cblx0Ly8gRm9jdXMgc3R5bGUgd2lkdGguXG5cdC8vIEF2b2lkIHJvdW5kaW5nIGlzc3VlcyBieSBzaG93aW5nIGEgd2hvbGUgMnB4IGZvciAxeCBzY3JlZW5zLCBhbmQgMS41cHggb24gaGlnaCByZXNvbHV0aW9uIHNjcmVlbnMuXG5cdC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzOiAycHg7XG5cdEBtZWRpYSAoIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSB7XG5cdFx0LS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXM6IDEuNXB4O1xuXHR9XG59XG5cbkBtaXhpbiB3b3JkcHJlc3MtYWRtaW4tc2NoZW1lcygpIHtcblx0Ym9keS5hZG1pbi1jb2xvci1saWdodCB7XG5cdFx0QGluY2x1ZGUgYWRtaW4tc2NoZW1lKCMwMDg1YmEpO1xuXHR9XG5cblx0Ym9keS5hZG1pbi1jb2xvci1tb2Rlcm4ge1xuXHRcdEBpbmNsdWRlIGFkbWluLXNjaGVtZSgjMzg1OGU5KTtcblx0fVxuXG5cdGJvZHkuYWRtaW4tY29sb3ItYmx1ZSB7XG5cdFx0QGluY2x1ZGUgYWRtaW4tc2NoZW1lKCMwOTY0ODQpO1xuXHR9XG5cblx0Ym9keS5hZG1pbi1jb2xvci1jb2ZmZWUge1xuXHRcdEBpbmNsdWRlIGFkbWluLXNjaGVtZSgjNDY0MDNjKTtcblx0fVxuXG5cdGJvZHkuYWRtaW4tY29sb3ItZWN0b3BsYXNtIHtcblx0XHRAaW5jbHVkZSBhZG1pbi1zY2hlbWUoIzUyM2Y2ZCk7XG5cdH1cblxuXHRib2R5LmFkbWluLWNvbG9yLW1pZG5pZ2h0IHtcblx0XHRAaW5jbHVkZSBhZG1pbi1zY2hlbWUoI2UxNGQ0Myk7XG5cdH1cblxuXHRib2R5LmFkbWluLWNvbG9yLW9jZWFuIHtcblx0XHRAaW5jbHVkZSBhZG1pbi1zY2hlbWUoIzYyN2M4Myk7XG5cdH1cblxuXHRib2R5LmFkbWluLWNvbG9yLXN1bnJpc2Uge1xuXHRcdEBpbmNsdWRlIGFkbWluLXNjaGVtZSgjZGQ4MjNiKTtcblx0fVxufVxuXG4vLyBEZXByZWNhdGVkIGZyb20gVUksIGtlcHQgZm9yIGJhY2stY29tcGF0LlxuQG1peGluIGJhY2tncm91bmQtY29sb3JzLWRlcHJlY2F0ZWQoKSB7XG5cdC5oYXMtdmVyeS1saWdodC1ncmF5LWJhY2tncm91bmQtY29sb3Ige1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG5cdH1cblxuXHQuaGFzLXZlcnktZGFyay1ncmF5LWJhY2tncm91bmQtY29sb3Ige1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG5cdH1cbn1cblxuLy8gRGVwcmVjYXRlZCBmcm9tIFVJLCBrZXB0IGZvciBiYWNrLWNvbXBhdC5cbkBtaXhpbiBmb3JlZ3JvdW5kLWNvbG9ycy1kZXByZWNhdGVkKCkge1xuXHQuaGFzLXZlcnktbGlnaHQtZ3JheS1jb2xvciB7XG5cdFx0Y29sb3I6ICNlZWU7XG5cdH1cblxuXHQuaGFzLXZlcnktZGFyay1ncmF5LWNvbG9yIHtcblx0XHRjb2xvcjogIzMxMzEzMTtcblx0fVxufVxuXG4vLyBEZXByZWNhdGVkIGZyb20gVUksIGtlcHQgZm9yIGJhY2stY29tcGF0LlxuQG1peGluIGdyYWRpZW50LWNvbG9ycy1kZXByZWNhdGVkKCkge1xuXHQvLyBPdXIgY2xhc3NlcyB1c2VzIHRoZSBzYW1lIHZhbHVlcyB3ZSBzZXQgZm9yIGdyYWRpZW50IHZhbHVlIGF0dHJpYnV0ZXMuXG5cblx0Lyogc3R5bGVsaW50LWRpc2FibGUgQHN0eWxpc3RpYy9mdW5jdGlvbi1jb21tYS1zcGFjZS1hZnRlciAtLSBXZSBjYW4gbm90IHVzZSBzcGFjaW5nIGJlY2F1c2Ugb2YgV1AgbXVsdGkgc2l0ZSBrc2VzIHJ1bGUuICovXG5cdC5oYXMtdml2aWQtZ3JlZW4tY3lhbi10by12aXZpZC1jeWFuLWJsdWUtZ3JhZGllbnQtYmFja2dyb3VuZCB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2JhKDAsMjA4LDEzMiwxKSAwJSxyZ2JhKDYsMTQ3LDIyNywxKSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtcHVycGxlLWNydXNoLWdyYWRpZW50LWJhY2tncm91bmQge1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDUyLDIyNiwyMjgpIDAlLHJnYig3MSwzMywyNTEpIDUwJSxyZ2IoMTcxLDI5LDI1NCkgMTAwJSk7XG5cdH1cblxuXHQuaGFzLWhhenktZGF3bi1ncmFkaWVudC1iYWNrZ3JvdW5kIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTAsMTcyLDE2OCkgMCUscmdiKDIxOCwyMDgsMjM2KSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtc3ViZHVlZC1vbGl2ZS1ncmFkaWVudC1iYWNrZ3JvdW5kIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHJnYigyNTAsMjUwLDIyNSkgMCUscmdiKDEwMywxNjYsMTEzKSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtYXRvbWljLWNyZWFtLWdyYWRpZW50LWJhY2tncm91bmQge1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiKDI1MywyMTUsMTU0KSAwJSxyZ2IoMCw3NCw4OSkgMTAwJSk7XG5cdH1cblxuXHQuaGFzLW5pZ2h0c2hhZGUtZ3JhZGllbnQtYmFja2dyb3VuZCB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoNTEsOSwxMDQpIDAlLHJnYig0OSwyMDUsMjA3KSAxMDAlKTtcblx0fVxuXG5cdC5oYXMtbWlkbmlnaHQtZ3JhZGllbnQtYmFja2dyb3VuZCB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZyxyZ2IoMiwzLDEyOSkgMCUscmdiKDQwLDExNiwyNTIpIDEwMCUpO1xuXHR9XG5cdC8qIHN0eWxlbGludC1lbmFibGUgQHN0eWxpc3RpYy9mdW5jdGlvbi1jb21tYS1zcGFjZS1hZnRlciAqL1xufVxuXG5AbWl4aW4gY3VzdG9tLXNjcm9sbGJhcnMtb24taG92ZXIoJGhhbmRsZS1jb2xvciwgJGhhbmRsZS1jb2xvci1ob3Zlcikge1xuXG5cdC8vIFdlYktpdFxuXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XG5cdFx0d2lkdGg6IDEycHg7XG5cdFx0aGVpZ2h0OiAxMnB4O1xuXHR9XG5cdCY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0fVxuXHQmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGhhbmRsZS1jb2xvcjtcblx0XHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdFx0Ym9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblx0fVxuXHQmOmhvdmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiwgLy8gVGhpcyBuZWVkcyBzcGVjaWZpY2l0eS5cblx0Jjpmb2N1czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsXG5cdCY6Zm9jdXMtd2l0aGluOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGhhbmRsZS1jb2xvci1ob3Zlcjtcblx0fVxuXG5cdC8vIEZpcmVmb3ggMTA5KyBhbmQgQ2hyb21lIDExMStcblx0c2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuXHRzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGUgYm90aC1lZGdlcztcblx0c2Nyb2xsYmFyLWNvbG9yOiAkaGFuZGxlLWNvbG9yIHRyYW5zcGFyZW50OyAvLyBTeW50YXgsIFwiZGFya1wiLCBcImxpZ2h0XCIsIG9yIFwiI2hhbmRsZS1jb2xvciAjdHJhY2stY29sb3JcIlxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6Zm9jdXMtd2l0aGluIHtcblx0XHRzY3JvbGxiYXItY29sb3I6ICRoYW5kbGUtY29sb3ItaG92ZXIgdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQvLyBOZWVkZWQgdG8gZml4IGEgU2FmYXJpIHJlbmRlcmluZyBpc3N1ZS5cblx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblxuXHQvLyBBbHdheXMgc2hvdyBzY3JvbGxiYXIgb24gTW9iaWxlIGRldmljZXMuXG5cdEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcblx0XHQmIHtcblx0XHRcdHNjcm9sbGJhci1jb2xvcjogJGhhbmRsZS1jb2xvci1ob3ZlciB0cmFuc3BhcmVudDtcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIHNlbGVjdGVkLWJsb2NrLW91dGxpbmUoJHdpZHRoUmF0aW86IDEpIHtcblx0b3V0bGluZS1jb2xvcjogdmFyKC0td3AtYWRtaW4tdGhlbWUtY29sb3IpO1xuXHRvdXRsaW5lLXN0eWxlOiBzb2xpZDtcblx0b3V0bGluZS13aWR0aDogY2FsYygjeyR3aWR0aFJhdGlvfSAqICh2YXIoLS13cC1hZG1pbi1ib3JkZXItd2lkdGgtZm9jdXMpIC8gdmFyKC0td3AtYmxvY2stZWRpdG9yLWlmcmFtZS16b29tLW91dC1zY2FsZSwgMSkpKTtcblx0b3V0bGluZS1vZmZzZXQ6IGNhbGMoI3skd2lkdGhSYXRpb30gKiAoKC0xICogdmFyKC0td3AtYWRtaW4tYm9yZGVyLXdpZHRoLWZvY3VzKSApIC8gdmFyKC0td3AtYmxvY2stZWRpdG9yLWlmcmFtZS16b29tLW91dC1zY2FsZSwgMSkpKTtcbn1cblxuQG1peGluIHNlbGVjdGVkLWJsb2NrLWZvY3VzKCR3aWR0aFJhdGlvOiAxKSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcblx0QGluY2x1ZGUgc2VsZWN0ZWQtYmxvY2stb3V0bGluZSgkd2lkdGhSYXRpbyk7XG59XG4iLCIvKipcbiAqIEJyZWFrcG9pbnRzICYgTWVkaWEgUXVlcmllc1xuICovXG5cbi8vIE1vc3QgdXNlZCBicmVha3BvaW50c1xuJGJyZWFrLXhodWdlOiAxOTIwcHg7XG4kYnJlYWstaHVnZTogMTQ0MHB4O1xuJGJyZWFrLXdpZGU6IDEyODBweDtcbiRicmVhay14bGFyZ2U6IDEwODBweDtcbiRicmVhay1sYXJnZTogOTYwcHg7XHQvLyBhZG1pbiBzaWRlYmFyIGF1dG8gZm9sZHNcbiRicmVhay1tZWRpdW06IDc4MnB4O1x0Ly8gYWRtaW5iYXIgZ29lcyBiaWdcbiRicmVhay1zbWFsbDogNjAwcHg7XG4kYnJlYWstbW9iaWxlOiA0ODBweDtcbiRicmVhay16b29tZWQtaW46IDI4MHB4O1xuXG4vLyBBbGwgbWVkaWEgcXVlcmllcyBjdXJyZW50bHkgaW4gV29yZFByZXNzOlxuLy9cbi8vIG1pbi13aWR0aDogMjAwMHB4XG4vLyBtaW4td2lkdGg6IDE2ODBweFxuLy8gbWluLXdpZHRoOiAxMjUwcHhcbi8vIG1heC13aWR0aDogMTEyMHB4ICpcbi8vIG1heC13aWR0aDogMTAwMHB4XG4vLyBtaW4td2lkdGg6IDc2OXB4IGFuZCBtYXgtd2lkdGg6IDEwMDBweFxuLy8gbWF4LXdpZHRoOiA5NjBweCAqXG4vLyBtYXgtd2lkdGg6IDkwMHB4XG4vLyBtYXgtd2lkdGg6IDg1MHB4XG4vLyBtaW4td2lkdGg6IDgwMHB4IGFuZCBtYXgtd2lkdGg6IDE0OTlweFxuLy8gbWF4LXdpZHRoOiA4MDBweFxuLy8gbWF4LXdpZHRoOiA3OTlweFxuLy8gbWF4LXdpZHRoOiA3ODJweCAqXG4vLyBtYXgtd2lkdGg6IDc2OHB4XG4vLyBtYXgtd2lkdGg6IDY0MHB4ICpcbi8vIG1heC13aWR0aDogNjAwcHggKlxuLy8gbWF4LXdpZHRoOiA1MjBweFxuLy8gbWF4LXdpZHRoOiA1MDBweFxuLy8gbWF4LXdpZHRoOiA0ODBweCAqXG4vLyBtYXgtd2lkdGg6IDQwMHB4ICpcbi8vIG1heC13aWR0aDogMzgwcHhcbi8vIG1heC13aWR0aDogMzIwcHggKlxuLy9cbi8vIFRob3NlIG1hcmtlZCAqIHNlZW0gdG8gYmUgbW9yZSBjb21tb25seSB1c2VkIHRoYW4gdGhlIG90aGVycy5cbi8vIExldCdzIHRyeSBhbmQgdXNlIGFzIGZldyBvZiB0aGVzZSBhcyBwb3NzaWJsZSwgYW5kIGJlIG1pbmRmdWwgYWJvdXQgYWRkaW5nIG5ldyBvbmVzLCBzbyB3ZSBkb24ndCBtYWtlIHRoZSBzaXR1YXRpb24gd29yc2VcbiIsIi8qKlxuKiAgQ29udmVydHMgYSBoZXggdmFsdWUgaW50byB0aGUgcmdiIGVxdWl2YWxlbnQuXG4qXG4qIEBwYXJhbSB7c3RyaW5nfSBoZXggLSB0aGUgaGV4YWRlY2ltYWwgdmFsdWUgdG8gY29udmVydFxuKiBAcmV0dXJuIHtzdHJpbmd9IGNvbW1hIHNlcGFyYXRlZCByZ2IgdmFsdWVzXG4qL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuQHVzZSBcInNhc3M6bWV0YVwiO1xuXG5AZnVuY3Rpb24gaGV4LXRvLXJnYigkaGV4KSB7XG5cdC8qXG5cdCAqIFRPRE86IGBjb2xvci57cmVkfGdyZWVufGJsdWV9YCB3aWxsIHRyaWdnZXIgYSBkZXByZWNhdGlvbiB3YXJuaW5nIGluIERhcnQgU2Fzcyxcblx0ICogYnV0IHRoZSBTYXNzIHVzZWQgYnkgdGhlIEd1dGVuYmVyZyBwcm9qZWN0IGRvZXNuJ3Qgc3VwcG9ydCBgY29sb3IuY2hhbm5lbCgpYCB5ZXQsXG5cdCAqIHNvIHdlIGNhbid0IG1pZ3JhdGUgdG8gaXQgYXQgdGhpcyB0aW1lLlxuXHQgKiBJbiB0aGUgZnV0dXJlLCBhZnRlciB0aGUgR3V0ZW5iZXJnIHByb2plY3QgaGFzIGJlZW4gZnVsbHkgbWlncmF0ZWQgdG8gRGFydCBTYXNzLFxuXHQgKiBSZW1vdmUgdGhpcyBjb25kaXRpb25hbCBzdGF0ZW1lbnQgYW5kIHVzZSBvbmx5IGBjb2xvci5jaGFubmVsKClgLlxuXHQgKi9cblx0QGlmIG1ldGEuZnVuY3Rpb24tZXhpc3RzKFwiY2hhbm5lbFwiLCBcImNvbG9yXCIpIHtcblx0XHRAcmV0dXJuIGNvbG9yLmNoYW5uZWwoJGhleCwgXCJyZWRcIiksIGNvbG9yLmNoYW5uZWwoJGhleCwgXCJncmVlblwiKSwgY29sb3IuY2hhbm5lbCgkaGV4LCBcImJsdWVcIik7XG5cdH0gQGVsc2Uge1xuXHRcdEByZXR1cm4gY29sb3IucmVkKCRoZXgpLCBjb2xvci5ncmVlbigkaGV4KSwgY29sb3IuYmx1ZSgkaGV4KTtcblx0fVxufVxuIiwiLyoqXG4gKiBMb25nIGNvbnRlbnQgZmFkZSBtaXhpblxuICpcbiAqIENyZWF0ZXMgYSBmYWRpbmcgb3ZlcmxheSB0byBzaWduaWZ5IHRoYXQgdGhlIGNvbnRlbnQgaXMgbG9uZ2VyXG4gKiB0aGFuIHRoZSBzcGFjZSBhbGxvd3MuXG4gKi9cblxuQG1peGluIGxvbmctY29udGVudC1mYWRlKCRkaXJlY3Rpb246IHJpZ2h0LCAkc2l6ZTogMjAlLCAkY29sb3I6ICNmZmYsICRlZGdlOiAwLCAkei1pbmRleDogZmFsc2UpIHtcblx0Y29udGVudDogXCJcIjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdEBpZiAkei1pbmRleCB7XG5cdFx0ei1pbmRleDogJHotaW5kZXg7XG5cdH1cblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBcImJvdHRvbVwiIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB0cmFuc3BhcmVudCwgJGNvbG9yIDkwJSk7XG5cdFx0bGVmdDogJGVkZ2U7XG5cdFx0cmlnaHQ6ICRlZGdlO1xuXHRcdHRvcDogJGVkZ2U7XG5cdFx0Ym90dG9tOiBjYWxjKDEwMCUgLSAkc2l6ZSk7XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBcInRvcFwiIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCwgJGNvbG9yIDkwJSk7XG5cdFx0dG9wOiBjYWxjKDEwMCUgLSAkc2l6ZSk7XG5cdFx0bGVmdDogJGVkZ2U7XG5cdFx0cmlnaHQ6ICRlZGdlO1xuXHRcdGJvdHRvbTogJGVkZ2U7XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cblxuXHRAaWYgJGRpcmVjdGlvbiA9PSBcImxlZnRcIiB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHRyYW5zcGFyZW50LCAkY29sb3IgOTAlKTtcblx0XHR0b3A6ICRlZGdlO1xuXHRcdGxlZnQ6ICRlZGdlO1xuXHRcdGJvdHRvbTogJGVkZ2U7XG5cdFx0cmlnaHQ6IGF1dG87XG5cdFx0d2lkdGg6ICRzaXplO1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXG5cdEBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIiB7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCwgJGNvbG9yIDkwJSk7XG5cdFx0dG9wOiAkZWRnZTtcblx0XHRib3R0b206ICRlZGdlO1xuXHRcdHJpZ2h0OiAkZWRnZTtcblx0XHRsZWZ0OiBhdXRvO1xuXHRcdHdpZHRoOiAkc2l6ZTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cbn1cbiIsIkB1c2UgXCJAd29yZHByZXNzL2Jhc2Utc3R5bGVzL3ZhcmlhYmxlc1wiO1xuQHVzZSBcIkB3b3JkcHJlc3MvYmFzZS1zdHlsZXMvbWl4aW5zXCI7XG5cbi5ib290LW5hdmlnYXRpb24taXRlbS5jb21wb25lbnRzLWl0ZW0ge1xuXHRjb2xvcjogdmFyKC0td3Bkcy1jb2xvci1mZy1pbnRlcmFjdGl2ZS1uZXV0cmFsLCAjMWUxZTFlKTtcblx0cGFkZGluZy1pbmxpbmU6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTA1O1xuXHRwYWRkaW5nLWJsb2NrOiAwO1xuXHRtYXJnaW4taW5saW5lOiB2YXJpYWJsZXMuJGdyaWQtdW5pdC0xNTtcblx0bWFyZ2luLWJsb2NrLWVuZDogdmFyaWFibGVzLiRncmlkLXVuaXQtMDU7XG5cdHdpZHRoOiBjYWxjKDEwMCUgLSB2YXJpYWJsZXMuJGdyaWQtdW5pdC0xNSAqIDIpO1xuXHRib3JkZXI6IG5vbmU7XG5cdG1pbi1oZWlnaHQ6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTQwO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRAaW5jbHVkZSBtaXhpbnMuYm9keS1tZWRpdW0oKTtcblxuXHQuYm9vdC1kcm9wZG93bi1pdGVtX19jaGlsZHJlbiAmIHtcblx0XHRtaW4taGVpZ2h0OiB2YXJpYWJsZXMuJGdyaWQtdW5pdC0zMDtcblx0fVxuXG5cdC8vIFJvdW5kZWQgZm9jdXMgcmluZ1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS13cGRzLWJvcmRlci1yYWRpdXMtc21hbGwsIDJweCk7XG5cblx0Ji5hY3RpdmUsXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCZbYXJpYS1jdXJyZW50PVwidHJ1ZVwiXSB7XG5cdFx0Y29sb3I6IHZhcigtLXdwZHMtY29sb3ItZmctaW50ZXJhY3RpdmUtYnJhbmQtYWN0aXZlLCAjMDA3M2FhKTtcblx0fVxuXG5cdCYuYWN0aXZlIHtcblx0XHRmb250LXdlaWdodDogdmFyaWFibGVzLiRmb250LXdlaWdodC1tZWRpdW07XG5cdH1cblxuXHRzdmc6bGFzdC1jaGlsZCB7XG5cdFx0cGFkZGluZzogdmFyaWFibGVzLiRncmlkLXVuaXQtMDU7XG5cdH1cblxuXHQmW2FyaWEtY3VycmVudD1cInRydWVcIl0ge1xuXHRcdGNvbG9yOiB2YXIoLS13cGRzLWNvbG9yLWZnLWludGVyYWN0aXZlLWJyYW5kLWFjdGl2ZSwgIzAwNzNhYSk7XG5cdFx0Zm9udC13ZWlnaHQ6IHZhcmlhYmxlcy4kZm9udC13ZWlnaHQtbWVkaXVtO1xuXHR9XG5cblx0Ly8gTWFrZSBzdXJlIHRoZSBmb2N1cyBzdHlsZSBpcyBkcmF3biBvbiB0b3Agb2YgdGhlIGN1cnJlbnQgaXRlbSBiYWNrZ3JvdW5kLlxuXHQmOmZvY3VzLXZpc2libGUge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblx0fVxuXG5cdCYud2l0aC1zdWZmaXgge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHZhcmlhYmxlcy4kZ3JpZC11bml0LTIwO1xuXHR9XG59XG4iXX0= */`;\ndocument.head\n .appendChild(document.createElement(\"style\"))\n .appendChild(document.createTextNode(css));\nexport {css};\n"],
5
+ "mappings": ";AAGA,OAAO,UAAU;AAMjB;AAAA,EACC;AAAA,EACA,sBAAsB;AAAA,EAEtB,wBAAwB;AAAA,OAClB;AAKP,OAAO,oBAAoB;AAC3B,SAAS,gBAAgB;;;ACpBzB,IAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA+HZ,SAAS,KACJ,YAAY,SAAS,cAAc,OAAO,CAAC,EAC3C,YAAY,SAAS,eAAe,GAAG,CAAC;;;ADrE3C,SAEC,KAFD;AAba,SAAR,eAAiC;AAAA,EACvC;AAAA,EACA;AAAA,EACA,wBAAwB;AAAA,EACxB;AAAA,EACA;AACD,GAAyB;AAExB,QAAM,aAAa,CAAE;AAAA,IACpB,IAAI,IAAK,IAAI,OAAO,SAAS,MAAO;AAAA,EACrC,EAAE,WAAY,OAAO,SAAS,MAAO;AAErC,QAAM,UACL,qBAAC,UAAO,SAAQ,cAAa,SAAU,GAAI,OAAQ,EAAE,UAAU,IAAI,GAChE;AAAA,aAAU,MAAM,qBAAsB;AAAA,IACxC,oBAAC,aAAY,UAAU;AAAA,KACxB;AAGD,MAAK,YAAa;AAEjB,WACC;AAAA,MAAC;AAAA;AAAA,QACA,IAAG;AAAA,QACH,MAAO;AAAA,QACP,WAAY,KAAM,wBAAwB,SAAU;AAAA,QAElD;AAAA;AAAA,IACH;AAAA,EAEF;AAEA,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,WAAY,KAAM,wBAAwB,SAAU;AAAA,MAElD;AAAA;AAAA,EACH;AAEF;",
6
+ "names": []
7
+ }