og-image/app.16774911.css
2024-04-18 18:31:47 +00:00

1064 lines
63 KiB
CSS

/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/page/OgImageGeneratorPage.vue?vue&type=style&index=0&id=5a646e14&lang=css ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.tool {
max-height: calc(100vh - 200px);
overflow: auto;
}
.tools {
height: calc(100vh - 200px);
width: 443px;
}
.og {
margin: auto;
}
.og-wrapper {
width: calc(100vw - 540px);
}
.og-svg {
overflow: hidden;
box-sizing: border-box;
}
.og-svg > foreignObject {
overflow: hidden;
}
.og-wrapper-content {
background-color: #c1c1c1;
background-image: linear-gradient(45deg, #646464 25%, transparent 25%, transparent 75%, #646464 75%), linear-gradient(45deg, #646464 25%, transparent 25%, transparent 75%, #646464 75%);
background-size: 20px 20px;
background-position: 0 0, 10px 10px;
text-align: center;
}
.og-heading {
font-size: 5em;
}
.og-subheading {
font-size: 3em;
}
.og-image--footer img {
background-size: cover;
background-position: center center;
}
.og-image-hover {
overflow: hidden;
}
/*!**************************************************************************************************************************************************************!*\
!*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./src/scss/app.css ***!
\**************************************************************************************************************************************************************/
/*
! tailwindcss v3.2.4 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
box-sizing: border-box; /* 1 */
border-width: 0; /* 2 */
border-style: solid; /* 2 */
border-color: #e5e7eb; /* 2 */
}
::before,
::after {
--tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
*/
html {
line-height: 1.5; /* 1 */
-webkit-text-size-adjust: 100%; /* 2 */
-moz-tab-size: 4; /* 3 */
-o-tab-size: 4;
tab-size: 4; /* 3 */
font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
font-feature-settings: normal; /* 5 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
margin: 0; /* 1 */
line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
height: 0; /* 1 */
color: inherit; /* 2 */
border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
font-size: inherit;
font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
color: inherit;
text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
font-weight: bolder;
}
/*
1. Use the user's configured `mono` font family by default.
2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
font-size: 1em; /* 2 */
}
/*
Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
text-indent: 0; /* 1 */
border-color: inherit; /* 2 */
border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
font-family: inherit; /* 1 */
font-size: 100%; /* 1 */
font-weight: inherit; /* 1 */
line-height: inherit; /* 1 */
color: inherit; /* 1 */
margin: 0; /* 2 */
padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
[type='button'],
[type='reset'],
[type='submit'] {
-webkit-appearance: button; /* 1 */
background-color: transparent; /* 2 */
background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
height: auto;
}
/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type='search'] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
-webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
margin: 0;
}
fieldset {
margin: 0;
padding: 0;
}
legend {
padding: 0;
}
ol,
ul,
menu {
list-style: none;
margin: 0;
padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
opacity: 1; /* 1 */
color: #9ca3af; /* 2 */
}
input::placeholder,
textarea::placeholder {
opacity: 1; /* 1 */
color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
display: block; /* 1 */
vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
max-width: 100%;
height: auto;
}
/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
display: none;
}
[type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background-color: #fff;
border-color: #6b7280;
border-width: 1px;
border-radius: 0px;
padding-top: 0.5rem;
padding-right: 0.75rem;
padding-bottom: 0.5rem;
padding-left: 0.75rem;
font-size: 1rem;
line-height: 1.5rem;
--tw-shadow: 0 0 #0000;
}
[type='text']:focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus {
outline: 2px solid transparent;
outline-offset: 2px;
--tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-color: #2563eb;
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
border-color: #2563eb;
}
input::-moz-placeholder, textarea::-moz-placeholder {
color: #6b7280;
opacity: 1;
}
input::placeholder,textarea::placeholder {
color: #6b7280;
opacity: 1;
}
::-webkit-datetime-edit-fields-wrapper {
padding: 0;
}
::-webkit-date-and-time-value {
min-height: 1.5em;
}
::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field {
padding-top: 0;
padding-bottom: 0;
}
select {
background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 fill=%27none%27 viewBox=%270 0 20 20%27%3e%3cpath stroke=%27%236b7280%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%271.5%27 d=%27M6 8l4 4 4-4%27/%3e%3c/svg%3e");
background-position: right 0.5rem center;
background-repeat: no-repeat;
background-size: 1.5em 1.5em;
padding-right: 2.5rem;
-webkit-print-color-adjust: exact;
print-color-adjust: exact;
}
[multiple] {
background-image: initial;
background-position: initial;
background-repeat: unset;
background-size: initial;
padding-right: 0.75rem;
-webkit-print-color-adjust: unset;
print-color-adjust: unset;
}
[type='checkbox'],[type='radio'] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 0;
-webkit-print-color-adjust: exact;
print-color-adjust: exact;
display: inline-block;
vertical-align: middle;
background-origin: border-box;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
flex-shrink: 0;
height: 1rem;
width: 1rem;
color: #2563eb;
background-color: #fff;
border-color: #6b7280;
border-width: 1px;
--tw-shadow: 0 0 #0000;
}
[type='checkbox'] {
border-radius: 0px;
}
[type='radio'] {
border-radius: 100%;
}
[type='checkbox']:focus,[type='radio']:focus {
outline: 2px solid transparent;
outline-offset: 2px;
--tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
--tw-ring-offset-width: 2px;
--tw-ring-offset-color: #fff;
--tw-ring-color: #2563eb;
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
[type='checkbox']:checked,[type='radio']:checked {
border-color: transparent;
background-color: currentColor;
background-size: 100% 100%;
background-position: center;
background-repeat: no-repeat;
}
[type='checkbox']:checked {
background-image: url("data:image/svg+xml,%3csvg viewBox=%270 0 16 16%27 fill=%27white%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cpath d=%27M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z%27/%3e%3c/svg%3e");
}
[type='radio']:checked {
background-image: url("data:image/svg+xml,%3csvg viewBox=%270 0 16 16%27 fill=%27white%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3ccircle cx=%278%27 cy=%278%27 r=%273%27/%3e%3c/svg%3e");
}
[type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus {
border-color: transparent;
background-color: currentColor;
}
[type='checkbox']:indeterminate {
background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 fill=%27none%27 viewBox=%270 0 16 16%27%3e%3cpath stroke=%27white%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M4 8h8%27/%3e%3c/svg%3e");
border-color: transparent;
background-color: currentColor;
background-size: 100% 100%;
background-position: center;
background-repeat: no-repeat;
}
[type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus {
border-color: transparent;
background-color: currentColor;
}
[type='file'] {
background: unset;
border-color: inherit;
border-width: 0;
border-radius: 0;
padding: 0;
font-size: unset;
line-height: inherit;
}
[type='file']:focus {
outline: 1px solid ButtonText;
outline: 1px auto -webkit-focus-ring-color;
}
*, ::before, ::after {
--tw-border-spacing-x: 0;
--tw-border-spacing-y: 0;
--tw-translate-x: 0;
--tw-translate-y: 0;
--tw-rotate: 0;
--tw-skew-x: 0;
--tw-skew-y: 0;
--tw-scale-x: 1;
--tw-scale-y: 1;
--tw-pan-x: ;
--tw-pan-y: ;
--tw-pinch-zoom: ;
--tw-scroll-snap-strictness: proximity;
--tw-ordinal: ;
--tw-slashed-zero: ;
--tw-numeric-figure: ;
--tw-numeric-spacing: ;
--tw-numeric-fraction: ;
--tw-ring-inset: ;
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-color: rgb(59 130 246 / 0.5);
--tw-ring-offset-shadow: 0 0 #0000;
--tw-ring-shadow: 0 0 #0000;
--tw-shadow: 0 0 #0000;
--tw-shadow-colored: 0 0 #0000;
--tw-blur: ;
--tw-brightness: ;
--tw-contrast: ;
--tw-grayscale: ;
--tw-hue-rotate: ;
--tw-invert: ;
--tw-saturate: ;
--tw-sepia: ;
--tw-drop-shadow: ;
--tw-backdrop-blur: ;
--tw-backdrop-brightness: ;
--tw-backdrop-contrast: ;
--tw-backdrop-grayscale: ;
--tw-backdrop-hue-rotate: ;
--tw-backdrop-invert: ;
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
}
::backdrop {
--tw-border-spacing-x: 0;
--tw-border-spacing-y: 0;
--tw-translate-x: 0;
--tw-translate-y: 0;
--tw-rotate: 0;
--tw-skew-x: 0;
--tw-skew-y: 0;
--tw-scale-x: 1;
--tw-scale-y: 1;
--tw-pan-x: ;
--tw-pan-y: ;
--tw-pinch-zoom: ;
--tw-scroll-snap-strictness: proximity;
--tw-ordinal: ;
--tw-slashed-zero: ;
--tw-numeric-figure: ;
--tw-numeric-spacing: ;
--tw-numeric-fraction: ;
--tw-ring-inset: ;
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-color: rgb(59 130 246 / 0.5);
--tw-ring-offset-shadow: 0 0 #0000;
--tw-ring-shadow: 0 0 #0000;
--tw-shadow: 0 0 #0000;
--tw-shadow-colored: 0 0 #0000;
--tw-blur: ;
--tw-brightness: ;
--tw-contrast: ;
--tw-grayscale: ;
--tw-hue-rotate: ;
--tw-invert: ;
--tw-saturate: ;
--tw-sepia: ;
--tw-drop-shadow: ;
--tw-backdrop-blur: ;
--tw-backdrop-brightness: ;
--tw-backdrop-contrast: ;
--tw-backdrop-grayscale: ;
--tw-backdrop-hue-rotate: ;
--tw-backdrop-invert: ;
--tw-backdrop-opacity: ;
--tw-backdrop-saturate: ;
--tw-backdrop-sepia: ;
}
.col-span-12 {
grid-column: span 12 / span 12;
}
.m-auto {
margin: auto;
}
.mx-auto {
margin-left: auto;
margin-right: auto;
}
.mx-4 {
margin-left: 1rem;
margin-right: 1rem;
}
.ml-auto {
margin-left: auto;
}
.ml-2 {
margin-left: 0.5rem;
}
.mb-5 {
margin-bottom: 1.25rem;
}
.mb-2 {
margin-bottom: 0.5rem;
}
.mr-2 {
margin-right: 0.5rem;
}
.mt-4 {
margin-top: 1rem;
}
.mt-1 {
margin-top: 0.25rem;
}
.mr-1 {
margin-right: 0.25rem;
}
.mt-3 {
margin-top: 0.75rem;
}
.mt-2 {
margin-top: 0.5rem;
}
.block {
display: block;
}
.inline {
display: inline;
}
.flex {
display: flex;
}
.grid {
display: grid;
}
.hidden {
display: none;
}
.h-full {
height: 100%;
}
.w-full {
width: 100%;
}
.transform {
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.resize {
resize: both;
}
.grid-cols-1 {
grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2 {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.flex-row {
flex-direction: row;
}
.flex-col {
flex-direction: column;
}
.items-center {
align-items: center;
}
.justify-between {
justify-content: space-between;
}
.gap-2 {
gap: 0.5rem;
}
.gap-x-4 {
-moz-column-gap: 1rem;
column-gap: 1rem;
}
.rounded {
border-radius: 0.25rem;
}
.rounded-md {
border-radius: 0.375rem;
}
.rounded-full {
border-radius: 9999px;
}
.rounded-l-md {
border-top-left-radius: 0.375rem;
border-bottom-left-radius: 0.375rem;
}
.rounded-r-md {
border-top-right-radius: 0.375rem;
border-bottom-right-radius: 0.375rem;
}
.border {
border-width: 1px;
}
.border-b-2 {
border-bottom-width: 2px;
}
.border-zinc-300 {
--tw-border-opacity: 1;
border-color: rgb(212 212 216 / var(--tw-border-opacity));
}
.border-gray-400 {
--tw-border-opacity: 1;
border-color: rgb(156 163 175 / var(--tw-border-opacity));
}
.border-gray-300 {
--tw-border-opacity: 1;
border-color: rgb(209 213 219 / var(--tw-border-opacity));
}
.border-gray-200 {
--tw-border-opacity: 1;
border-color: rgb(229 231 235 / var(--tw-border-opacity));
}
.bg-fuchsia-300 {
--tw-bg-opacity: 1;
background-color: rgb(240 171 252 / var(--tw-bg-opacity));
}
.bg-slate-300 {
--tw-bg-opacity: 1;
background-color: rgb(203 213 225 / var(--tw-bg-opacity));
}
.bg-lime-300 {
--tw-bg-opacity: 1;
background-color: rgb(190 242 100 / var(--tw-bg-opacity));
}
.bg-white {
--tw-bg-opacity: 1;
background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.stroke-purple-900 {
stroke: #581c87;
}
.stroke-gray-400 {
stroke: #9ca3af;
}
.p-4 {
padding: 1rem;
}
.p-3 {
padding: 0.75rem;
}
.p-5 {
padding: 1.25rem;
}
.px-3 {
padding-left: 0.75rem;
padding-right: 0.75rem;
}
.py-2 {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
}
.py-6 {
padding-top: 1.5rem;
padding-bottom: 1.5rem;
}
.px-4 {
padding-left: 1rem;
padding-right: 1rem;
}
.py-1 {
padding-top: 0.25rem;
padding-bottom: 0.25rem;
}
.pt-5 {
padding-top: 1.25rem;
}
.pb-4 {
padding-bottom: 1rem;
}
.pb-6 {
padding-bottom: 1.5rem;
}
.pb-3 {
padding-bottom: 0.75rem;
}
.pt-0 {
padding-top: 0px;
}
.pl-10 {
padding-left: 2.5rem;
}
.text-center {
text-align: center;
}
.font-mono {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.text-2xl {
font-size: 1.5rem;
line-height: 2rem;
}
.text-sm {
font-size: 0.875rem;
line-height: 1.25rem;
}
.font-bold {
font-weight: 700;
}
.font-medium {
font-weight: 500;
}
.leading-none {
line-height: 1;
}
.leading-tight {
line-height: 1.25;
}
.text-gray-900 {
--tw-text-opacity: 1;
color: rgb(17 24 39 / var(--tw-text-opacity));
}
.text-cyan-600 {
--tw-text-opacity: 1;
color: rgb(8 145 178 / var(--tw-text-opacity));
}
.text-gray-700 {
--tw-text-opacity: 1;
color: rgb(55 65 81 / var(--tw-text-opacity));
}
.shadow-sm {
--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.drop-shadow-md {
--tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.hover\:bg-gray-100:hover {
--tw-bg-opacity: 1;
background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
.hover\:text-blue-700:hover {
--tw-text-opacity: 1;
color: rgb(29 78 216 / var(--tw-text-opacity));
}
.focus\:z-10:focus {
z-index: 10;
}
.focus\:border-indigo-300:focus {
--tw-border-opacity: 1;
border-color: rgb(165 180 252 / var(--tw-border-opacity));
}
.focus\:text-blue-700:focus {
--tw-text-opacity: 1;
color: rgb(29 78 216 / var(--tw-text-opacity));
}
.focus\:ring:focus {
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-2:focus {
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-indigo-200:focus {
--tw-ring-opacity: 1;
--tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity));
}
.focus\:ring-blue-700:focus {
--tw-ring-opacity: 1;
--tw-ring-color: rgb(29 78 216 / var(--tw-ring-opacity));
}
.focus\:ring-opacity-50:focus {
--tw-ring-opacity: 0.5;
}
@media (prefers-color-scheme: dark) {
.dark\:border-gray-600 {
--tw-border-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-border-opacity));
}
.dark\:bg-gray-700 {
--tw-bg-opacity: 1;
background-color: rgb(55 65 81 / var(--tw-bg-opacity));
}
.dark\:text-white {
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity));
}
.dark\:hover\:bg-gray-600:hover {
--tw-bg-opacity: 1;
background-color: rgb(75 85 99 / var(--tw-bg-opacity));
}
.dark\:hover\:text-white:hover {
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity));
}
.dark\:focus\:text-white:focus {
--tw-text-opacity: 1;
color: rgb(255 255 255 / var(--tw-text-opacity));
}
.dark\:focus\:ring-blue-500:focus {
--tw-ring-opacity: 1;
--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
}
}
@media (min-width: 640px) {
.sm\:gap-4 {
gap: 1rem;
}
}
@media (min-width: 768px) {
.md\:visible {
visibility: visible;
}
.md\:block {
display: block;
}
.md\:w-1\/2 {
width: 50%;
}
.md\:border {
border-width: 1px;
}
.md\:p-10 {
padding: 2.5rem;
}
}
@media (min-width: 1024px) {
.lg\:mr-4 {
margin-right: 1rem;
}
.lg\:grid-cols-\[1fr_2fr\] {
grid-template-columns: 1fr 2fr;
}
.lg\:gap-x-20 {
-moz-column-gap: 5rem;
column-gap: 5rem;
}
.lg\:text-4xl {
font-size: 2.25rem;
line-height: 2.5rem;
}
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLjE2Nzc0OTExLmNzcyIsIm1hcHBpbmdzIjoiOzs7O0FBNnJCQTtFQUNFLCtCQUErQjtFQUMvQixjQUFjO0FBQ2hCO0FBRUE7RUFDRSwyQkFBMkI7RUFDM0IsWUFBWTtBQUNkO0FBRUE7RUFDRSxZQUFZO0FBQ2Q7QUFFQTtFQUNFLDBCQUEwQjtBQUM1QjtBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtBQUN4QjtBQUVBO0VBQ0UsZ0JBQWdCO0FBQ2xCO0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsd0xBQXdMO0VBQ3hMLDBCQUEwQjtFQUMxQixtQ0FBbUM7RUFDbkMsa0JBQWtCO0FBQ3BCO0FBRUE7RUFDRSxjQUFjO0FBQ2hCO0FBRUE7RUFDRSxjQUFjO0FBQ2hCO0FBRUE7RUFDRSxzQkFBc0I7RUFDdEIsa0NBQWtDO0FBQ3BDO0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7Ozs7O0FDL3VCQTs7Q0FBYyxDQUFkOzs7Q0FBYzs7QUFBZDs7O0VBQUEsc0JBQWMsRUFBZCxNQUFjO0VBQWQsZUFBYyxFQUFkLE1BQWM7RUFBZCxtQkFBYyxFQUFkLE1BQWM7RUFBZCxxQkFBYyxFQUFkLE1BQWM7QUFBQTs7QUFBZDs7RUFBQSxnQkFBYztBQUFBOztBQUFkOzs7Ozs7Q0FBYzs7QUFBZDtFQUFBLGdCQUFjLEVBQWQsTUFBYztFQUFkLDhCQUFjLEVBQWQsTUFBYztFQUFkLGdCQUFjLEVBQWQsTUFBYztFQUFkLGNBQWM7S0FBZCxXQUFjLEVBQWQsTUFBYztFQUFkLDROQUFjLEVBQWQsTUFBYztFQUFkLDZCQUFjLEVBQWQsTUFBYztBQUFBOztBQUFkOzs7Q0FBYzs7QUFBZDtFQUFBLFNBQWMsRUFBZCxNQUFjO0VBQWQsb0JBQWMsRUFBZCxNQUFjO0FBQUE7O0FBQWQ7Ozs7Q0FBYzs7QUFBZDtFQUFBLFNBQWMsRUFBZCxNQUFjO0VBQWQsY0FBYyxFQUFkLE1BQWM7RUFBZCxxQkFBYyxFQUFkLE1BQWM7QUFBQTs7QUFBZDs7Q0FBYzs7QUFBZDtFQUFBLHlDQUFjO1VBQWQsaUNBQWM7QUFBQTs7QUFBZDs7Q0FBYzs7QUFBZDs7Ozs7O0VBQUEsa0JBQWM7RUFBZCxvQkFBYztBQUFBOztBQUFkOztDQUFjOztBQUFkO0VBQUEsY0FBYztFQUFkLHdCQUFjO0FBQUE7O0FBQWQ7O0NBQWM7O0FBQWQ7O0VBQUEsbUJBQWM7QUFBQTs7QUFBZDs7O0NBQWM7O0FBQWQ7Ozs7RUFBQSwrR0FBYyxFQUFkLE1BQWM7RUFBZCxjQUFjLEVBQWQsTUFBYztBQUFBOztBQUFkOztDQUFjOztBQUFkO0VBQUEsY0FBYztBQUFBOztBQUFkOztDQUFjOztBQUFkOztFQUFBLGNBQWM7RUFBZCxjQUFjO0VBQWQsa0JBQWM7RUFBZCx3QkFBYztBQUFBOztBQUFkO0VBQUEsZUFBYztBQUFBOztBQUFkO0VBQUEsV0FBYztBQUFBOztBQUFkOzs7O0NBQWM7O0FBQWQ7RUFBQSxjQUFjLEVBQWQsTUFBYztFQUFkLHFCQUFjLEVBQWQsTUFBYztFQUFkLHlCQUFjLEVBQWQsTUFBYztBQUFBOztBQUFkOzs7O0NBQWM7O0FBQWQ7Ozs7O0VBQUEsb0JBQWMsRUFBZCxNQUFjO0VBQWQsZUFBYyxFQUFkLE1BQWM7RUFBZCxvQkFBYyxFQUFkLE1BQWM7RUFBZCxvQkFBYyxFQUFkLE1BQWM7RUFBZCxjQUFjLEVBQWQsTUFBYztFQUFkLFNBQWMsRUFBZCxNQUFjO0VBQWQsVUFBYyxFQUFkLE1BQWM7QUFBQTs7QUFBZDs7Q0FBYzs7QUFBZDs7RUFBQSxvQkFBYztBQUFBOztBQUFkOzs7Q0FBYzs7QUFBZDs7OztFQUFBLDBCQUFjLEVBQWQsTUFBYztFQUFkLDZCQUFjLEVBQWQsTUFBYztFQUFkLHNCQUFjLEVBQWQsTUFBYztBQUFBOztBQUFkOztDQUFjOztBQUFkO0VBQUEsYUFBYztBQUFBOztBQUFkOztDQUFjOztBQUFkO0VBQUEsZ0JBQWM7QUFBQTs7QUFBZDs7Q0FBYzs7QUFBZDtFQUFBLHdCQUFjO0FBQUE7O0FBQWQ7O0NBQWM7O0FBQWQ7O0VBQUEsWUFBYztBQUFBOztBQUFkOzs7Q0FBYzs7QUFBZDtFQUFBLDZCQUFjLEVBQWQs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QUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxxQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxtQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxtQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxvQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsaUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsbUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxvQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxvQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxvQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSwwQ0FBbUI7RUFBbkIsdURBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsbUdBQW1CO0VBQW5CO0FBQW1CO0FBRm5CO0VBQUEsbUJDQUE7RURBQTtDQ0FBO0FEQUE7RUFBQSxxQkNBQTtFREFBO0NDQUE7QURBQTtFQUFBO0NDQUE7QURBQTtFQUFBLHVCQ0FBO0VEQUE7Q0NBQTtBREFBO0VBQUEscUJDQUE7RURBQTtDQ0FBO0FEQUE7RUFBQSw0R0NBQTtFREFBLDBHQ0FBO0VEQUE7Q0NBQTtBREFBO0VBQUEsNEdDQUE7RURBQSwwR0NBQTtFREFBO0NDQUE7QURBQTtFQUFBLHFCQ0FBO0VEQUE7Q0NBQTtBREFBO0VBQUEscUJDQUE7RURBQTtDQ0FBO0FEQUE7RUFBQTtDQ0FBO0FEQUE7O0VBQUE7SUFBQSx1QkNBQTtJREFBO0dDQUE7O0VEQUE7SUFBQSxtQkNBQTtJREFBO0dDQUE7O0VEQUE7SUFBQSxxQkNBQTtJREFBO0dDQUE7O0VEQUE7SUFBQSxtQkNBQTtJREFBO0dDQUE7O0VEQUE7SUFBQSxxQkNBQTtJREFBO0dDQUE7O0VEQUE7SUFBQSxxQkNBQTtJREFBO0dDQUE7O0VEQUE7SUFBQSxxQkNBQTtJREFBO0dDQUE7Q0FBQTtBREFBOztFQUFBO0lBQUE7R0NBQTtDQUFBO0FEQUE7O0VBQUE7SUFBQTtHQ0FBOztFREFBO0lBQUE7R0NBQTs7RURBQTtJQUFBO0dDQUE7O0VEQUE7SUFBQTtHQ0FBOztFREFBO0lBQUE7R0NBQTtDQUFBO0FEQUE7O0VBQUE7SUFBQTtHQ0FBOztFREFBO0lBQUE7R0NBQTs7RURBQTtJQUFBLHNCQ0FBO1NEQUE7R0NBQTs7RURBQTtJQUFBLG1CQ0FBO0lEQUE7R0NBQTtDQUFBIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vc3JjL3BhZ2UvT2dJbWFnZUdlbmVyYXRvclBhZ2UudnVlIiwid2VicGFjazovLy8uL3NyYy9zY3NzL2FwcC5jc3MiLCJ3ZWJwYWNrOi8vLzxubyBzb3VyY2U+Il0sInNvdXJjZXNDb250ZW50IjpbIjx0ZW1wbGF0ZT5cbiAgPGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImxnOm1yLTQgdG9vbHNcIlxuICAgICAgcmVmPVwidG9vbHNcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYi0yIGZsZXggZmxleC1yb3dcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHYtZm9yPVwiKG5hbWUsIHZhbHVlKSBpbiB0b29sc1wiXG4gICAgICAgICAgY2xhc3M9XCJwLTMgbXItMiByb3VuZGVkXCJcbiAgICAgICAgICA6Y2xhc3M9XCJ7J2JnLXNsYXRlLTMwMCc6IHRoaXMudG9vbCA9PSB2YWx1ZX1cIlxuICAgICAgICAgIEBjbGljaz1cInRoaXMudG9vbCA9IHZhbHVlXCJcbiAgICAgICAgICB2LXRleHQ9XCJuYW1lXCJcbiAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgOmNsYXNzPVwie2hpZGRlbjogdGhpcy50b29sICE9PSAnaGVhZGluZyd9XCJcbiAgICAgICAgY2xhc3M9XCJkcm9wLXNoYWRvdy1tZCByb3VuZGVkLW1kIG1kOmJvcmRlciBib3JkZXItemluYy0zMDAgdG9vbFwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTVcIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPFRleHRhcmVhRm9ybVxuICAgICAgICAgICAgICBpZD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICB2LW1vZGVsPVwiaGVhZGluZ1wiXG4gICAgICAgICAgICAgIGxhYmVsPVwiSGVhZGluZ1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFJhbmdlRm9ybVxuICAgICAgICAgICAgICBpZD1cImhlYWRpbmctc2l6ZVwiXG4gICAgICAgICAgICAgIHYtbW9kZWw9XCJoZWFkaW5nU2l6ZVwiXG4gICAgICAgICAgICAgIG1pbj1cIjFcIlxuICAgICAgICAgICAgICBtYXg9XCIyMFwiXG4gICAgICAgICAgICAgIHN0ZXA9XCIwLjFcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS02XCI+XG4gICAgICAgICAgICA8VGV4dGFyZWFGb3JtXG4gICAgICAgICAgICAgIGlkPVwic3ViaGVhZGluZ1wiXG4gICAgICAgICAgICAgIHYtbW9kZWw9XCJzdWJoZWFkaW5nXCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJTdWJoZWFkaW5nXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8UmFuZ2VGb3JtXG4gICAgICAgICAgICAgIGlkPVwic3ViaGVhZGluZy1zaXplXCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cInN1YmhlYWRpbmdTaXplXCJcbiAgICAgICAgICAgICAgbWluPVwiMVwiXG4gICAgICAgICAgICAgIG1heD1cIjIwXCJcbiAgICAgICAgICAgICAgc3RlcD1cIjAuMVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBiLTZcIj5cbiAgICAgICAgICAgIDxDaGVja2JveEZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJhbGxvdy1odG1sXCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cImFsbG93SHRtbFwiXG4gICAgICAgICAgICAgIGxhYmVsPVwiQWxsb3cgSFRNTFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBiLTZcIj5cbiAgICAgICAgICAgIDxSYW5nZUZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJoZWFkaW5nLXNwYWNpbmdcIlxuICAgICAgICAgICAgICB2LW1vZGVsPVwiaGVhZGluZ1NwYWNpbmdcIlxuICAgICAgICAgICAgICBtaW49XCIwXCJcbiAgICAgICAgICAgICAgbWF4PVwiMzAwXCJcbiAgICAgICAgICAgICAgc3RlcD1cIjAuMDVcIlxuICAgICAgICAgICAgICBsYWJlbD1cIlNwYWNpbmdcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYi02XCI+XG4gICAgICAgICAgICA8UmFuZ2VGb3JtXG4gICAgICAgICAgICAgIGlkPVwiY29udGVudC1wYWRkaW5nXCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cImNvbnRlbnRQYWRkaW5nXCJcbiAgICAgICAgICAgICAgbWluPVwiMFwiXG4gICAgICAgICAgICAgIG1heD1cIjMwMFwiXG4gICAgICAgICAgICAgIHN0ZXA9XCIwLjA1XCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJQYWRkaW5nXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicGItM1wiPlxuICAgICAgICAgICAgPElucHV0Rm9ybVxuICAgICAgICAgICAgICBpZD1cInRleHQtY29sb3JcIlxuICAgICAgICAgICAgICB2LW1vZGVsPVwidGV4dENvbG9yXCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJUZXh0IGNvbG9yXCJcbiAgICAgICAgICAgICAgdHlwZT1cImNvbG9yXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIHN0cm9rZS1ncmF5LTQwMFwiPlxuICAgICAgICAgICAgICA8QWxpZ25Gb3JtIHYtbW9kZWw9XCJoZWFkaW5nQWxpZ25cIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgOmNsYXNzPVwie2hpZGRlbjogdGhpcy50b29sICE9PSAnYXV0aG9yJ31cIlxuICAgICAgICBjbGFzcz1cImRyb3Atc2hhZG93LW1kIHJvdW5kZWQtbWQgbWQ6Ym9yZGVyIGJvcmRlci16aW5jLTMwMCB0b29sXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cInAtNVwiPlxuICAgICAgICAgIDxDaGVja2JveEZvcm1cbiAgICAgICAgICAgIGlkPVwiYXV0aG9yLXNob3dcIlxuICAgICAgICAgICAgdi1tb2RlbD1cImF1dGhvclNob3dcIlxuICAgICAgICAgICAgbGFiZWw9XCJTaG93IHRoZSBibG9ja1wiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInAtNSBwdC0wXCI+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxJbnB1dEZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJhdXRob3JcIlxuICAgICAgICAgICAgICB2LW1vZGVsPVwiYXV0aG9yXCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJBdXRob3JcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxSYW5nZUZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJhdXRob3Itc2l6ZVwiXG4gICAgICAgICAgICAgIHYtbW9kZWw9XCJhdXRob3JTaXplXCJcbiAgICAgICAgICAgICAgbWluPVwiMVwiXG4gICAgICAgICAgICAgIG1heD1cIjIwXCJcbiAgICAgICAgICAgICAgc3RlcD1cIjAuMVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS02XCI+XG4gICAgICAgICAgICA8RmlsZUZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJhdmF0YXJcIlxuICAgICAgICAgICAgICB2LW1vZGVsPVwiYXZhdGFyXCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJBdmF0YXJcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8RmlsZUZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJsb2dvXCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cImxvZ29cIlxuICAgICAgICAgICAgICBsYWJlbD1cIkxvZ29cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UtZ3JheS00MDAgcHktNlwiPlxuICAgICAgICAgICAgPFJhbmdlRm9ybVxuICAgICAgICAgICAgICBpZD1cImF1dGhvci1tYXJnaW4tYm90dG9tXCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cImF1dGhvck1hcmdpbkJvdHRvbVwiXG4gICAgICAgICAgICAgIG1pbj1cIjBcIlxuICAgICAgICAgICAgICBtYXg9XCI1MDBcIlxuICAgICAgICAgICAgICBzdGVwPVwiMC4xXCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJQb3NpdGlvblwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFJhbmdlRm9ybVxuICAgICAgICAgICAgICBpZD1cImF1dGhvci1wYWRkaW5nXCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cImF1dGhvclBhZGRpbmdcIlxuICAgICAgICAgICAgICBtaW49XCIwXCJcbiAgICAgICAgICAgICAgbWF4PVwiNTBcIlxuICAgICAgICAgICAgICBzdGVwPVwiMC4wNVwiXG4gICAgICAgICAgICAgIGxhYmVsPVwiUGFkZGluZ1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBiLTNcIj5cbiAgICAgICAgICAgIDxJbnB1dEZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJhdXRob3ItdGV4dC1jb2xvclwiXG4gICAgICAgICAgICAgIHYtbW9kZWw9XCJhdXRob3JUZXh0Q29sb3JcIlxuICAgICAgICAgICAgICBsYWJlbD1cIlRleHQgY29sb3JcIlxuICAgICAgICAgICAgICB0eXBlPVwiY29sb3JcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8SW5wdXRGb3JtXG4gICAgICAgICAgICAgIGlkPVwiYmFja2dyb3VuZC1jb2xvclwiXG4gICAgICAgICAgICAgIHYtbW9kZWw9XCJhdXRob3JCYWNrZ3JvdW5kQ29sb3JcIlxuICAgICAgICAgICAgICBsYWJlbD1cIkJhY2tncm91bmQgY29sb3JcIlxuICAgICAgICAgICAgICB0eXBlPVwiY29sb3JcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxSYW5nZUZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJhdXRob3ItYmFja2dyb3VuZC1vcGFjaXR5XCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cImF1dGhvckJhY2tncm91bmRPcGFjaXR5XCJcbiAgICAgICAgICAgICAgbWluPVwiMFwiXG4gICAgICAgICAgICAgIG1heD1cIjFcIlxuICAgICAgICAgICAgICBzdGVwPVwiMC4wNVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlciBzdHJva2UtZ3JheS00MDAgcHQtNVwiPlxuICAgICAgICAgICAgICA8QWxpZ25Gb3JtIHYtbW9kZWw9XCJhdXRob3JBbGlnblwiIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdlxuICAgICAgICA6Y2xhc3M9XCJ7aGlkZGVuOiB0aGlzLnRvb2wgIT09ICdmb250J31cIlxuICAgICAgICBjbGFzcz1cImRyb3Atc2hhZG93LW1kIHJvdW5kZWQtbWQgbWQ6Ym9yZGVyIGJvcmRlci16aW5jLTMwMCB0b29sXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cInAtNVwiPlxuICAgICAgICAgIDxTZWxlY3RGb3JtXG4gICAgICAgICAgICBpZD1cImZvbnRcIlxuICAgICAgICAgICAgdi1tb2RlbD1cImZvbnRcIlxuICAgICAgICAgICAgOml0ZW1zPVwiZm9udHNcIlxuICAgICAgICAgICAgbGFiZWw9XCJGb250XCJcbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgIDpjbGFzcz1cIntoaWRkZW46IHRoaXMudG9vbCAhPT0gJ2JhY2tncm91bmQnfVwiXG4gICAgICAgIGNsYXNzPVwiZHJvcC1zaGFkb3ctbWQgcm91bmRlZC1tZCBtZDpib3JkZXIgYm9yZGVyLXppbmMtMzAwIHRvb2xcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicC01XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInBiLTZcIj5cbiAgICAgICAgICAgIDxGaWxlRm9ybVxuICAgICAgICAgICAgICBpZD1cImJhY2tncm91bmRcIlxuICAgICAgICAgICAgICB2LW1vZGVsPVwiYmFja2dyb3VuZFwiXG4gICAgICAgICAgICAgIGxhYmVsPVwiQmFja2dyb3VuZFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxJbnB1dEZvcm1cbiAgICAgICAgICAgICAgaWQ9XCJiYWNrZ3JvdW5kLWhvdmVyXCJcbiAgICAgICAgICAgICAgdi1tb2RlbD1cImJhY2tncm91bmRIb3ZlclwiXG4gICAgICAgICAgICAgIGxhYmVsPVwiQmFja2dyb3VuZCBob3ZlclwiXG4gICAgICAgICAgICAgIHR5cGU9XCJjb2xvclwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFJhbmdlRm9ybVxuICAgICAgICAgICAgICBpZD1cImJhY2tncm91bmQtaG92ZXItb3BhY2l0eVwiXG4gICAgICAgICAgICAgIHYtbW9kZWw9XCJiYWNrZ3JvdW5kSG92ZXJPcGFjaXR5XCJcbiAgICAgICAgICAgICAgbWluPVwiMFwiXG4gICAgICAgICAgICAgIG1heD1cIjFcIlxuICAgICAgICAgICAgICBzdGVwPVwiMC4wNVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICA6Y2xhc3M9XCJ7aGlkZGVuOiB0aGlzLnRvb2wgIT09ICdzaXplcyd9XCJcbiAgICAgICAgY2xhc3M9XCJkcm9wLXNoYWRvdy1tZCByb3VuZGVkLW1kIG1kOmJvcmRlciBib3JkZXItemluYy0zMDAgdG9vbFwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTVcIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgIGNsYXNzPVwiYmxvY2sgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LWdyYXktNzAwXCJcbiAgICAgICAgICAgICAgZm9yPVwid2lkdGhcIlxuICAgICAgICAgICAgPlNpemVzPC9sYWJlbD5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTIgZ2FwLXgtNFwiPlxuICAgICAgICAgICAgICA8SW5wdXRGb3JtXG4gICAgICAgICAgICAgICAgaWQ9XCJ3aWR0aFwiXG4gICAgICAgICAgICAgICAgdi1tb2RlbD1cIndpZHRoXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPElucHV0Rm9ybVxuICAgICAgICAgICAgICAgIGlkPVwiaGVpZ2h0XCJcbiAgICAgICAgICAgICAgICB2LW1vZGVsPVwiaGVpZ2h0XCJcbiAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJtdC00IGJsb2NrIHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTcwMFwiPlJlY29tbWVuZGF0aW9uczwvaDM+XG5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgdi1mb3I9XCIoc2l6ZXMsIG5hbWUpIGluIHNpemVzUmVjb21tZW5kYXRpb25zXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJiZy1saW1lLTMwMCByb3VuZGVkIHB4LTMgcHktMiBtdC0xIG1yLTFcIlxuICAgICAgICAgICAgICBAY2xpY2s9XCJ0aGlzLnNldFNpemVzKHNpemVzWzBdLCBzaXplc1sxXSlcIlxuICAgICAgICAgICAgICB2LXRleHQ9XCJuYW1lXCJcbiAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICByZWY9XCJvZ3dyYXBwZXJcIlxuICAgICAgY2xhc3M9XCJvZy13cmFwcGVyIHBsLTEwXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwib2ctd3JhcHBlci1jb250ZW50XCI+XG4gICAgICAgIDxzdmdcbiAgICAgICAgICA6dmlld0JveD1cIlswLCAwLCB3aWR0aCwgaGVpZ2h0XS5qb2luKCcgJylcIlxuICAgICAgICAgIDpzdHlsZT1cIm9nU3ZnU3R5bGUoKVwiXG4gICAgICAgICAgOndpZHRoPVwib2dNYXhXaWR0aFwiXG4gICAgICAgICAgOmhlaWdodD1cIm9nTWF4SGVpZ2h0XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxmb3JlaWduT2JqZWN0XG4gICAgICAgICAgICA6c3R5bGU9XCJvZ1N2Z0ZvU3R5bGUoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICByZWY9XCJvZ1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwib2dcIlxuICAgICAgICAgICAgICA6c3R5bGU9XCJvZ1N0eWxlKClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgcmVmPVwicmVuZGVyXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm9nLWltYWdlXCJcbiAgICAgICAgICAgICAgICA6c3R5bGU9XCJvZ0ltYWdlU3R5bGUoKVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm9nLWltYWdlLWhvdmVyXCJcbiAgICAgICAgICAgICAgICAgIDpzdHlsZT1cIm9nSW1hZ2VIb3ZlclN0eWxlKClcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJoLWZ1bGwgZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW5cIlxuICAgICAgICAgICAgICAgICAgICA6c3R5bGU9XCJvZ0NvbnRlbnRTdHlsZSgpXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiB2LWlmPVwiYWxsb3dIdG1sXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGgxXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxlYWRpbmctbm9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA6c3R5bGU9XCJvZ0hlYWRpbmdTdHlsZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtaHRtbD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPHBcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVhZGluZy10aWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA6c3R5bGU9XCJvZ1N1YmhlYWRpbmdTdHlsZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtaHRtbD1cInN1YmhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHYtZWxzZT5cbiAgICAgICAgICAgICAgICAgICAgICA8aDFcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGVhZGluZy1ub25lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIDpzdHlsZT1cIm9nSGVhZGluZ1N0eWxlKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdi10ZXh0PVwiaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8cFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsZWFkaW5nLXRpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIDpzdHlsZT1cIm9nU3ViaGVhZGluZ1N0eWxlKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdi10ZXh0PVwic3ViaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG5cblxuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ3LWZ1bGwgZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgb2ctaW1hZ2UtLWZvb3RlclwiXG4gICAgICAgICAgICAgICAgICAgICAgOnN0eWxlPVwib2dBdXRob3JTdHlsZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgICAgIHYtaWY9XCJhdmF0YXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyb3VuZGVkLWZ1bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgOnN0eWxlPVwib2dBdXRob3JJbWFnZVN0eWxlKCdhdmF0YXInKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFFQUFBQUJDQVFBQUFDMUhBd0NBQUFBQzBsRVFWUjQybU5rWUFBQUFBWUFBakNCMEM4QUFBQUFTVVZPUks1Q1lJST1cIlxuICAgICAgICAgICAgICAgICAgICAgID5cblxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm14LTRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgOnN0eWxlPVwib2dBdXRob3JUZXh0U3R5bGUoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB2LXRleHQ9XCJhdXRob3JcIlxuICAgICAgICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICB2LWlmPVwibG9nb1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtZnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA6c3R5bGU9XCJvZ0F1dGhvckltYWdlU3R5bGUoJ2xvZ28nKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFFQUFBQUJDQVFBQUFDMUhBd0NBQUFBQzBsRVFWUjQybU5rWUFBQUFBWUFBakNCMEM4QUFBQUFTVVZPUks1Q1lJST1cIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2ZvcmVpZ25PYmplY3Q+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgbXQtM1wiPlxuICAgICAgICA8RG93bmxvYWRCdXR0b25cbiAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtbC1tZFwiXG4gICAgICAgICAgbGFiZWw9XCJQTkdcIlxuICAgICAgICAgIEBjbGljaz1cImRvd25sb2FkQXNQbmdcIlxuICAgICAgICAvPlxuICAgICAgICA8RG93bmxvYWRCdXR0b25cbiAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtci1tZFwiXG4gICAgICAgICAgbGFiZWw9XCJKUEVHXCJcbiAgICAgICAgICBAY2xpY2s9XCJkb3dubG9hZEFzSnBlZ1wiXG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuaW1wb3J0IHsgaGV4VG9SZ2IgfSBmcm9tICcuLi91dGlsL2NvbG9yJ1xuaW1wb3J0IHsgdG9QbmcsIHRvSnBlZyB9IGZyb20gJ2h0bWwtdG8taW1hZ2UnXG5pbXBvcnQgSW5wdXRGb3JtIGZyb20gJy4uL3VpL0lucHV0Rm9ybSdcbmltcG9ydCBSYW5nZUZvcm0gZnJvbSAnLi4vdWkvUmFuZ2VGb3JtJ1xuaW1wb3J0IFRleHRhcmVhRm9ybSBmcm9tICcuLi91aS9UZXh0YXJlYUZvcm0nXG5pbXBvcnQgRmlsZUZvcm0gZnJvbSAnLi4vdWkvRmlsZUZvcm0nXG5pbXBvcnQgU2VsZWN0Rm9ybSBmcm9tICcuLi91aS9TZWxlY3RGb3JtJ1xuaW1wb3J0IENoZWNrYm94Rm9ybSBmcm9tICcuLi91aS9DaGVja2JveEZvcm0nXG5pbXBvcnQgQWxpZ25Gb3JtIGZyb20gJy4uL3VpL0FsaWduRm9ybSdcbmltcG9ydCBEb3dubG9hZEJ1dHRvbiBmcm9tICcuLi91aS9Eb3dubG9hZEJ1dHRvbidcblxuZXhwb3J0IGRlZmF1bHQge1xuICBjb21wb25lbnRzOiB7XG4gICAgSW5wdXRGb3JtLFxuICAgIFJhbmdlRm9ybSxcbiAgICBUZXh0YXJlYUZvcm0sXG4gICAgRmlsZUZvcm0sXG4gICAgU2VsZWN0Rm9ybSxcbiAgICBDaGVja2JveEZvcm0sXG4gICAgQWxpZ25Gb3JtLFxuICAgIERvd25sb2FkQnV0dG9uLFxuICB9LFxuICBkYXRhKCkge1xuICAgIHJldHVybiB7XG4gICAgICB0b29sOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndG9vbCcpID8/ICdoZWFkaW5nJyxcbiAgICAgIGF1dGhvcjogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2F1dGhvcicpID8/ICdBdXRob3IgbmFtZScsXG4gICAgICBhdXRob3JTaXplOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYXV0aG9yU2l6ZScpID8/IDEuNSxcbiAgICAgIGF1dGhvclNob3c6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdhdXRob3JTaG93JykgPz8gdHJ1ZSxcbiAgICAgIGF1dGhvclBhZGRpbmc6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdhdXRob3JQYWRkaW5nJykgPz8gMTAsXG4gICAgICBhdXRob3JBbGlnbjogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2F1dGhvckFsaWduJykgPz8gJ2xlZnQnLFxuICAgICAgYXV0aG9yVGV4dENvbG9yOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYXV0aG9yVGV4dENvbG9yJykgPz8gJyNmZmY5ZTYnLFxuICAgICAgYXV0aG9yTWFyZ2luQm90dG9tOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYXV0aG9yTWFyZ2luQm90dG9tJykgPz8gMjAwLFxuICAgICAgYXV0aG9yQmFja2dyb3VuZENvbG9yOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYXV0aG9yQmFja2dyb3VuZENvbG9yJykgPz8gJyNmYzU3MDUnLFxuICAgICAgYXV0aG9yQmFja2dyb3VuZE9wYWNpdHk6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdhdXRob3JCYWNrZ3JvdW5kT3BhY2l0eScpID8/IDEsXG4gICAgICBoZWFkaW5nOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnaGVhZGluZycpID8/ICdIZWFkaW5nJyxcbiAgICAgIHN1YmhlYWRpbmc6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdzdWJoZWFkaW5nJykgPz8gJ1N1YmhlYWRpbmcnLFxuICAgICAgaGVhZGluZ1NwYWNpbmc6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdoZWFkaW5nU3BhY2luZycpID8/IDEwLFxuICAgICAgaGVhZGluZ0FsaWduOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnaGVhZGluZ0FsaWduJykgPz8gJ2xlZnQnLFxuICAgICAgZm9udDogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2ZvbnQnKSA/PyAnVHJlYnVjaGV0IE1TJyxcbiAgICAgIGF2YXRhcjogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2F2YXRhcicpLFxuICAgICAgbG9nbzogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xvZ28nKSxcbiAgICAgIHRleHRDb2xvcjogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3RleHRDb2xvcicpID8/ICcjZmM1NzA1JyxcbiAgICAgIGJhY2tncm91bmQ6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdiYWNrZ3JvdW5kJyksXG4gICAgICBiYWNrZ3JvdW5kSG92ZXI6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdiYWNrZ3JvdW5kSG92ZXInKSA/PyAnI2ZmZjllNicsXG4gICAgICBiYWNrZ3JvdW5kSG92ZXJPcGFjaXR5OiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnYmFja2dyb3VuZEhvdmVyT3BhY2l0eScpID8/IDEsXG4gICAgICBoZWFkaW5nU2l6ZTogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2hlYWRpbmdTaXplJykgPz8gNCxcbiAgICAgIHN1YmhlYWRpbmdTaXplOiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnc3ViaGVhZGluZ1NpemUnKSA/PyAyLFxuICAgICAgd2lkdGg6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3aWR0aCcpID8/IDEyMDAsXG4gICAgICBoZWlnaHQ6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdoZWlnaHQnKSA/PyA2MDAsXG4gICAgICBjb250ZW50UGFkZGluZzogbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2NvbnRlbnRQYWRkaW5nJykgPz8gMjAsXG4gICAgICBhbGxvd0h0bWw6IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdhbGxvd0h0bWwnKSA/PyBmYWxzZSxcbiAgICAgIG9nTWF4V2lkdGg6IDEwMCxcbiAgICAgIHRvb2xzOiB7XG4gICAgICAgIGhlYWRpbmc6ICdIZWFkaW5nJyxcbiAgICAgICAgYXV0aG9yOiAnQXV0aG9yJyxcbiAgICAgICAgZm9udDogJ0ZvbnQnLFxuICAgICAgICBiYWNrZ3JvdW5kOiAnQmFja2dyb3VuZCcsXG4gICAgICAgIHNpemVzOiAnU2l6ZXMnLFxuICAgICAgfSxcbiAgICAgIHNpemVzUmVjb21tZW5kYXRpb25zOiB7XG4gICAgICAgIE1hc3RvZG9uOiBbMTIwMCwgNjAwXSxcbiAgICAgICAgTGlua2VkSW46IFsxMjAwLCA2MjddLFxuICAgICAgICBJbnN0YWdyYW06IFsxMjAwLCA2MzBdLFxuICAgICAgICBYOiBbMTIwMCwgNjc1XSxcbiAgICAgIH0sXG4gICAgICBmb250czogW1xuICAgICAgICB7bGFiZWw6ICdBcmlhbCAoc2Fucy1zZXJpZiknLCB2YWx1ZSA6ICdBcmlhbCd9LFxuICAgICAgICB7bGFiZWw6ICdCcnVzaCBTY3JpcHQgTVQgKGN1cnNpdmUpJywgdmFsdWUgOiAnQnJ1c2ggU2NyaXB0IE1UJ30sXG4gICAgICAgIHtsYWJlbDogJ0NhbGlicmkgKHNhbnMtc2VyaWYpJywgdmFsdWUgOiAnQ2FsaWJyaSd9LFxuICAgICAgICB7bGFiZWw6ICdDb3VyaWVyIE5ldyAobW9ub3NwYWNlKScsIHZhbHVlIDogJ0NvdXJpZXIgTmV3J30sXG4gICAgICAgIHtsYWJlbDogJ0dhcmFtb25kIChzZXJpZiknLCB2YWx1ZSA6ICdHYXJhbW9uZCd9LFxuICAgICAgICB7bGFiZWw6ICdHZW9yZ2lhIChzZXJpZiknLCB2YWx1ZSA6ICdHZW9yZ2lhJ30sXG4gICAgICAgIHtsYWJlbDogJ1RhaG9tYSAoc2Fucy1zZXJpZiknLCB2YWx1ZSA6ICdUYWhvbWEnfSxcbiAgICAgICAge2xhYmVsOiAnVGltZXMgTmV3IFJvbWFuIChzZXJpZiknLCB2YWx1ZSA6ICdUaW1lcyBOZXcgUm9tYW4nfSxcbiAgICAgICAge2xhYmVsOiAnVHJlYnVjaGV0IE1TIChzYW5zLXNlcmlmKScsIHZhbHVlIDogJ1RyZWJ1Y2hldCBNUyd9LFxuICAgICAgICB7bGFiZWw6ICdWZXJkYW5hIChzYW5zLXNlcmlmKScsIHZhbHVlIDogJ1ZlcmRhbmEnfSxcbiAgICAgIF0sXG4gICAgfVxuICB9LFxuICB3YXRjaDoge1xuICAgIHRvb2wodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCd0b29sJywgdmFsdWUpXG4gICAgfSxcbiAgICBhdXRob3IodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRob3InLCB2YWx1ZSlcbiAgICB9LFxuICAgIGF1dGhvclNob3codmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRob3JTaG93JywgdmFsdWUpXG4gICAgfSxcbiAgICBhdXRob3JTaXplKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYXV0aG9yU2l6ZScsIHZhbHVlKVxuICAgIH0sXG4gICAgYXV0aG9yQWxpZ24odmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRob3JBbGlnbicsIHZhbHVlKVxuICAgIH0sXG4gICAgYXV0aG9yUGFkZGluZyh2YWx1ZSkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2F1dGhvclBhZGRpbmcnLCB2YWx1ZSlcbiAgICB9LFxuICAgIGF1dGhvckJhY2tncm91bmRDb2xvcih2YWx1ZSkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2F1dGhvckJhY2tncm91bmRDb2xvcicsIHZhbHVlKVxuICAgIH0sXG4gICAgYXV0aG9yQmFja2dyb3VuZE9wYWNpdHkodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRob3JCYWNrZ3JvdW5kT3BhY2l0eScsIHZhbHVlKVxuICAgIH0sXG4gICAgYXV0aG9yVGV4dENvbG9yKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYXV0aG9yVGV4dENvbG9yJywgdmFsdWUpXG4gICAgfSxcbiAgICBhdXRob3JNYXJnaW5Cb3R0b20odmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRob3JNYXJnaW5Cb3R0b20nLCB2YWx1ZSlcbiAgICB9LFxuICAgIGhlYWRpbmcodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdoZWFkaW5nJywgdmFsdWUpXG4gICAgfSxcbiAgICBzdWJoZWFkaW5nKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc3ViaGVhZGluZycsIHZhbHVlKVxuICAgIH0sXG4gICAgaGVhZGluZ1NwYWNpbmcodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdoZWFkaW5nU3BhY2luZycsIHZhbHVlKVxuICAgIH0sXG4gICAgYXZhdGFyKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYXZhdGFyJywgdmFsdWUpXG4gICAgfSxcbiAgICBsb2dvKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnbG9nbycsIHZhbHVlKVxuICAgIH0sXG4gICAgdGV4dENvbG9yKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgndGV4dENvbG9yJywgdmFsdWUpXG4gICAgfSxcbiAgICBiYWNrZ3JvdW5kKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYmFja2dyb3VuZCcsIHZhbHVlKVxuICAgIH0sXG4gICAgYmFja2dyb3VuZEhvdmVyKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYmFja2dyb3VuZEhvdmVyJywgdmFsdWUpXG4gICAgfSxcbiAgICBiYWNrZ3JvdW5kSG92ZXJPcGFjaXR5KHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYmFja2dyb3VuZEhvdmVyT3BhY2l0eScsIHZhbHVlKVxuICAgIH0sXG4gICAgaGVhZGluZ1NpemUodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdoZWFkaW5nU2l6ZScsIHZhbHVlKVxuICAgIH0sXG4gICAgc3ViaGVhZGluZ1NpemUodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdzdWJoZWFkaW5nU2l6ZScsIHZhbHVlKVxuICAgIH0sXG4gICAgaGVhZGluZ0FsaWduKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnaGVhZGluZ0FsaWduJywgdmFsdWUpXG4gICAgfSxcbiAgICB3aWR0aCh2YWx1ZSkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3dpZHRoJywgdmFsdWUpXG4gICAgfSxcbiAgICBoZWlnaHQodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdoZWlnaHQnLCB2YWx1ZSlcbiAgICB9LFxuICAgIGNvbnRlbnRQYWRkaW5nKHZhbHVlKSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnY29udGVudFBhZGRpbmcnLCB2YWx1ZSlcbiAgICB9LFxuICAgIGZvbnQodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdmb250JywgdmFsdWUpXG4gICAgfSxcbiAgICBhbGxvd0h0bWwodmFsdWUpIHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhbGxvd0h0bWwnLCB2YWx1ZSlcbiAgICB9LFxuICB9LFxuICBtb3VudGVkKCkge1xuICAgIHRoaXMudXBkYXRlT2dNYXhXaWR0aCgpXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMudXBkYXRlT2dNYXhXaWR0aCwgZmFsc2UpXG4gIH0sXG4gIG1ldGhvZHM6IHtcbiAgICBvZ1N2Z1N0eWxlKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXNwZWN0UmF0aW86IGAke3RoaXMud2lkdGh9LyR7dGhpcy5oZWlnaHR9YCxcbiAgICAgICAgbWF4SGVpZ2h0OiBgJHt0aGlzLm9nTWF4SGVpZ2h0fXB4ICFpbXBvcnRhbnRgLFxuICAgICAgICBtYXhXaWR0aDogJzEwMCUnLFxuICAgICAgfVxuICAgIH0sXG4gICAgb2dTdmdGb1N0eWxlKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYXNwZWN0UmF0aW86IGAke3RoaXMud2lkdGh9LyR7dGhpcy5oZWlnaHR9YCxcbiAgICAgICAgbWF4SGVpZ2h0OiBgJHt0aGlzLm9nTWF4SGVpZ2h0fXB4ICFpbXBvcnRhbnRgLFxuICAgICAgICB3aWR0aDogYCR7dGhpcy53aWR0aH1weGAsXG4gICAgICAgIGhlaWdodDogYCR7dGhpcy5oZWlnaHR9cHhgLFxuICAgICAgfVxuICAgIH0sXG4gICAgb2dTdHlsZSgpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGNvbG9yOiB0aGlzLnRleHRDb2xvcixcbiAgICAgICAgYXNwZWN0UmF0aW86IGAke3RoaXMud2lkdGh9LyR7dGhpcy5oZWlnaHR9YCxcbiAgICAgICAgbWF4SGVpZ2h0OiBgJHt0aGlzLm9nTWF4SGVpZ2h0fXB4ICFpbXBvcnRhbnRgLFxuICAgICAgICB3aWR0aDogYCR7dGhpcy53aWR0aH1weGAsXG4gICAgICAgIGhlaWdodDogYCR7dGhpcy5oZWlnaHR9cHhgLFxuICAgICAgfVxuICAgIH0sXG4gICAgb2dJbWFnZVN0eWxlKCkge1xuICAgICAgbGV0IHZhbHVlID0ge1xuICAgICAgICBhc3BlY3RSYXRpbzogYCR7dGhpcy53aWR0aH0vJHt0aGlzLmhlaWdodH1gXG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmJhY2tncm91bmQpIHtcbiAgICAgICAgdmFsdWUuYmFja2dyb3VuZCA9IGB1cmwoJHt0aGlzLmJhY2tncm91bmR9KSBjZW50ZXJgXG4gICAgICAgIHZhbHVlLmJhY2tncm91bmRTaXplID0gJ2NvdmVyJ1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdmFsdWVcbiAgICB9LFxuICAgIG9nSGVhZGluZ1N0eWxlKCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZm9udFNpemU6IGAke3RoaXMuaGVhZGluZ1NpemV9ZW1gLFxuICAgICAgICB0ZXh0QWxpZ246IHRoaXMuaGVhZGluZ0FsaWduLFxuICAgICAgfVxuICAgIH0sXG4gICAgb2dTdWJoZWFkaW5nU3R5bGUoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBmb250U2l6ZTogYCR7dGhpcy5zdWJoZWFkaW5nU2l6ZX1lbWAsXG4gICAgICAgIHRleHRBbGlnbjogdGhpcy5oZWFkaW5nQWxpZ24sXG4gICAgICAgIG1hcmdpblRvcDogYCR7dGhpcy5oZWFkaW5nU3BhY2luZ31weGAsXG4gICAgICB9XG4gICAgfSxcbiAgICBvZ0F1dGhvclN0eWxlKCkge1xuICAgICAgbGV0IHZhbHVlID0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAnbm9uZScsXG4gICAgICAgIHRleHRBbGlnbjogdGhpcy5hdXRob3JBbGlnbixcbiAgICAgICAgY29sb3I6IHRoaXMuYXV0aG9yVGV4dENvbG9yLFxuICAgICAgICBtYXJnaW5Cb3R0b206IGAke3RoaXMuYXV0aG9yTWFyZ2luQm90dG9tfXB4YCxcbiAgICAgICAgcGFkZGluZzogYCR7dGhpcy5hdXRob3JQYWRkaW5nfXB4YCxcbiAgICAgICAgbWFyZ2luTGVmdDogYC0ke3RoaXMuY29udGVudFBhZGRpbmd9cHhgLFxuICAgICAgICBmb250U2l6ZTogYCR7dGhpcy5hdXRob3JTaXplfWVtYCxcbiAgICAgICAgd2lkdGg6IGBjYWxjKCR7dGhpcy5jb250ZW50UGFkZGluZyAqIDJ9cHggKyAxMDAlKWAsXG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmJhY2tncm91bmRIb3Zlcikge1xuICAgICAgICBjb25zdCBjb2xvcnMgPSBoZXhUb1JnYih0aGlzLmF1dGhvckJhY2tncm91bmRDb2xvcilcbiAgICAgICAgdmFsdWUuYmFja2dyb3VuZCA9IGByZ2JhKCR7Y29sb3JzLnJlZH0sICR7Y29sb3JzLmdyZWVufSwgJHtjb2xvcnMuYmx1ZX0sICR7dGhpcy5hdXRob3JCYWNrZ3JvdW5kT3BhY2l0eX0pYFxuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMuYXV0aG9yU2hvdykge1xuICAgICAgICB2YWx1ZS5kaXNwbGF5ID0gJ25vbmUnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZVxuICAgIH0sXG4gICAgb2dBdXRob3JJbWFnZVN0eWxlKHRhcmdldCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgd2lkdGg6IGAke3RoaXMuYXV0aG9yU2l6ZX1lbWAsXG4gICAgICAgIGhlaWdodDogYCR7dGhpcy5hdXRob3JTaXplfWVtYCxcbiAgICAgICAgYmFja2dyb3VuZEltYWdlOiBgdXJsKCR7dGFyZ2V0ID09PSAnbG9nbycgPyB0aGlzLmxvZ28gOiB0aGlzLmF2YXRhcn0pYCxcbiAgICAgIH1cbiAgICB9LFxuICAgIG9nQXV0aG9yVGV4dFN0eWxlKCkge1xuICAgICAgbGV0IHZhbHVlID0ge31cblxuICAgICAgaWYgKHRoaXMuYXV0aG9yQWxpZ24gPT09ICdsZWZ0Jykge1xuICAgICAgICB2YWx1ZS5tYXJnaW5SaWdodCA9ICdhdXRvICFpbXBvcnRhbnQnXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuYXV0aG9yQWxpZ24gPT09ICdjZW50ZXInKSB7XG4gICAgICAgIHZhbHVlLm1hcmdpbkxlZnQgPSAnYXV0byAhaW1wb3J0YW50J1xuICAgICAgICB2YWx1ZS5tYXJnaW5SaWdodCA9ICdhdXRvICFpbXBvcnRhbnQnXG4gICAgICB9IGVsc2UgaWYgKHRoaXMuYXV0aG9yQWxpZ24gPT09ICdyaWdodCcpIHtcbiAgICAgICAgdmFsdWUubWFyZ2luTGVmdCA9ICdhdXRvICFpbXBvcnRhbnQnXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZVxuICAgIH0sXG4gICAgb2dJbWFnZUhvdmVyU3R5bGUoKSB7XG4gICAgICBsZXQgYmFja2dyb3VuZCA9ICdub25lJ1xuXG4gICAgICBpZiAodGhpcy5iYWNrZ3JvdW5kSG92ZXIpIHtcbiAgICAgICAgY29uc3QgY29sb3JzID0gaGV4VG9SZ2IodGhpcy5iYWNrZ3JvdW5kSG92ZXIpXG4gICAgICAgIGJhY2tncm91bmQgPSBgcmdiYSgke2NvbG9ycy5yZWR9LCAke2NvbG9ycy5ncmVlbn0sICR7Y29sb3JzLmJsdWV9LCAke3RoaXMuYmFja2dyb3VuZEhvdmVyT3BhY2l0eX0pYFxuICAgICAgfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBiYWNrZ3JvdW5kLFxuICAgICAgICBhc3BlY3RSYXRpbzogYCR7dGhpcy53aWR0aH0vJHt0aGlzLmhlaWdodH1gXG4gICAgICB9XG4gICAgfSxcbiAgICBvZ0NvbnRlbnRTdHlsZSgpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZGRpbmdUb3A6IGAke3RoaXMuY29udGVudFBhZGRpbmd9cHhgLFxuICAgICAgICBwYWRkaW5nUmlnaHQ6IGAke3RoaXMuY29udGVudFBhZGRpbmd9cHhgLFxuICAgICAgICBwYWRkaW5nTGVmdDogYCR7dGhpcy5jb250ZW50UGFkZGluZ31weGAsXG4gICAgICB9XG4gICAgfSxcbiAgICBzZXRTaXplcyh3aWR0aCwgaGVpZ2h0KSB7XG4gICAgICB0aGlzLndpZHRoID0gd2lkdGhcbiAgICAgIHRoaXMuaGVpZ2h0ID0gaGVpZ2h0XG4gICAgfSxcbiAgICBkb3dubG9hZEFzUG5nKCkge1xuICAgICAgcmV0dXJuIHRoaXMuZG93bmxvYWQodG9QbmcsICdpbWFnZS5wbmcnKVxuICAgIH0sXG4gICAgZG93bmxvYWRBc0pwZWcoKSB7XG4gICAgICByZXR1cm4gdGhpcy5kb3dubG9hZCh0b0pwZWcsICdpbWFnZS5qcGcnKVxuICAgIH0sXG4gICAgZG93bmxvYWQoY2FsbGJhY2ssIGZpbGVuYW1lKSB7XG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy4kcmVmcy5yZW5kZXJcblxuICAgICAgY2FsbGJhY2soZWxlbWVudCwge1xuICAgICAgICBjYW52YXNXaWR0aDogdGhpcy53aWR0aCxcbiAgICAgICAgY2FudmFzSGVpZ2h0OiB0aGlzLmhlaWdodCxcbiAgICAgICAgcXVhbGl0eTogMSxcbiAgICAgIH0pXG4gICAgICAgIC50aGVuKChkYXRhVXJsKSA9PiB7XG4gICAgICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxuXG4gICAgICAgICAgbGluay5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCBkYXRhVXJsKVxuICAgICAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGZpbGVuYW1lKVxuICAgICAgICAgIGxpbmsuY2xpY2soKVxuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgZWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKCdvZy0tc2NhbGUnLCBmYWxzZSlcblxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ29vcHMsIHNvbWV0aGluZyB3ZW50IHdyb25nIScsIGVycm9yKTtcbiAgICAgICAgfSlcbiAgICB9LFxuICAgIHVwZGF0ZU9nTWF4V2lkdGgoKSB7XG4gICAgICB0aGlzLiRyZWZzLm9nLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSdcbiAgICAgIHRoaXMub2dNYXhXaWR0aCA9IHRoaXMuJHJlZnMub2d3cmFwcGVyLm9mZnNldFdpZHRoIC0gMzBcbiAgICAgIHRoaXMub2dNYXhIZWlnaHQgPSB0aGlzLiRyZWZzLnRvb2xzLm9mZnNldEhlaWdodFxuICAgICAgdGhpcy4kcmVmcy5vZy5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJ1xuICAgIH0sXG4gIH1cbn1cbjwvc2NyaXB0PlxuXG48c3R5bGU+XG4udG9vbCB7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDBweCk7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4udG9vbHMge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDBweCk7XG4gIHdpZHRoOiA0NDNweDtcbn1cblxuLm9nIHtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4ub2ctd3JhcHBlciB7XG4gIHdpZHRoOiBjYWxjKDEwMHZ3IC0gNTQwcHgpO1xufVxuXG4ub2ctc3ZnIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm9nLXN2ZyA+IGZvcmVpZ25PYmplY3Qge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub2ctd3JhcHBlci1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MxYzFjMTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNjQ2NDY0IDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsICM2NDY0NjQgNzUlKSwgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjNjQ2NDY0IDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsICM2NDY0NjQgNzUlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMTBweCAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vZy1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiA1ZW07XG59XG5cbi5vZy1zdWJoZWFkaW5nIHtcbiAgZm9udC1zaXplOiAzZW07XG59XG5cbi5vZy1pbWFnZS0tZm9vdGVyIGltZyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbi5vZy1pbWFnZS1ob3ZlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG48L3N0eWxlPlxuIiwiQHRhaWx3aW5kIGJhc2U7XG5AdGFpbHdpbmQgY29tcG9uZW50cztcbkB0YWlsd2luZCB1dGlsaXRpZXM7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/