/* You can add global styles to this file, and also import other style files */
/* ! tailwindcss v2.2.15 | MIT License | https://tailwindcss.com */
/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */
/*
Document
========
*/
/**
Use a better box model (opinionated).
*/
*,
::before,
::after {
	box-sizing: border-box;
}
/**
Use a more readable tab size (opinionated).
*/
html {
	-moz-tab-size: 4;
	tab-size: 4;
}
/**
1. Correct the line height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}
/*
Sections
========
*/
/**
Remove the margin in all browsers.
*/
body {
	margin: 0;
}
/**
Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
*/
body {
	font-family:
		system-ui,
		-apple-system, /* Firefox supports this but not yet `system-ui` */
		'Segoe UI',
		Roboto,
		Helvetica,
		Arial,
		sans-serif,
		'Apple Color Emoji',
		'Segoe UI Emoji';
}
/*
Grouping content
================
*/
/**
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)
*/
hr {
	height: 0; /* 1 */
	color: inherit; /* 2 */
}
/*
Text-level semantics
====================
*/
/**
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr[title] {
	-webkit-text-decoration: underline dotted;
	        text-decoration: underline dotted;
}
/**
Add the correct font weight in Edge and Safari.
*/
b,
strong {
	font-weight: bolder;
}
/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
	font-family:
		ui-monospace,
		SFMono-Regular,
		Consolas,
		'Liberation Mono',
		Menlo,
		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;
}
/*
Tabular data
============
*/
/**
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)
*/
table {
	text-indent: 0; /* 1 */
	border-color: inherit; /* 2 */
}
/*
Forms
=====
*/
/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}
/**
Remove the inheritance of text transform in Edge and Firefox.
1. Remove the inheritance of text transform in Firefox.
*/
button,
select { /* 1 */
	text-transform: none;
}
/**
Correct the inability to style clickable types in iOS and Safari.
*/
button,
[type='button'],
[type='reset'],
[type='submit'] {
	-webkit-appearance: button;
}
/**
Remove the inner border and padding in Firefox.
*/
::-moz-focus-inner {
	border-style: none;
	padding: 0;
}
/**
Restore the focus styles unset by the previous rule.
*/
:-moz-focusring {
	outline: 1px dotted ButtonText;
}
/**
Remove the additional ':invalid' styles in Firefox.
See: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737
*/
:-moz-ui-invalid {
	box-shadow: none;
}
/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/
legend {
	padding: 0;
}
/**
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 */
}
/*
Interactive
===========
*/
/*
Add the correct display in Chrome and Safari.
*/
summary {
	display: list-item;
}
/**
 * Manually forked from SUIT CSS Base: https://github.com/suitcss/base
 * A thin layer on top of normalize.css that provides a starting point more
 * suitable for web applications.
 */
/**
 * Removes the default spacing and border for appropriate elements.
 */
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
button {
  background-color: transparent;
  background-image: none;
}
fieldset {
  margin: 0;
  padding: 0;
}
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
/**
 * Tailwind custom reset styles
 */
/**
 * 1. Use the user's configured `sans` font-family (with Tailwind's default
 *    sans-serif font stack as a fallback) as a sane default.
 * 2. Use Tailwind's default "normal" line-height so the user isn't forced
 *    to override it to ensure consistency even when using the default theme.
 */
html {
  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"; /* 1 */
  line-height: 1.5; /* 2 */
}
/**
 * Inherit font-family and line-height from `html` so users can set them as
 * a class directly on the `html` element.
 */
body {
  font-family: inherit;
  line-height: inherit;
}
/**
 * 1. Prevent padding and border from affecting element width.
 *
 *    We used to set this in the html element and inherit from
 *    the parent element for everything else. This caused issues
 *    in shadow-dom-enhanced elements like <details> where the content
 *    is wrapped by a div with box-sizing set to `content-box`.
 *
 *    https://github.com/mozdevs/cssremedy/issues/4
 *
 *
 * 2. Allow adding a border to an element by just adding a border-width.
 *
 *    By default, the way the browser specifies that an element should have no
 *    border is by setting it's border-style to `none` in the user-agent
 *    stylesheet.
 *
 *    In order to easily add borders to elements by just setting the `border-width`
 *    property, we change the default border-style for all elements to `solid`, and
 *    use border-width to hide them instead. This way our `border` utilities only
 *    need to set the `border-width` property instead of the entire `border`
 *    shorthand, making our border utilities much more straightforward to compose.
 *
 *    https://github.com/tailwindcss/tailwindcss/pull/116
 */
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: currentColor; /* 2 */
}
/*
 * Ensure horizontal rules are visible by default
 */
hr {
  border-top-width: 1px;
}
/**
 * Undo the `border-style: none` reset that Normalize applies to images so that
 * our `border-{width}` utilities have the expected effect.
 *
 * The Normalize reset is unnecessary for us since we default the border-width
 * to 0 on all elements.
 *
 * https://github.com/tailwindcss/tailwindcss/issues/362
 */
img {
  border-style: solid;
}
textarea {
  resize: vertical;
}
input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}
button,
[role="button"] {
  cursor: pointer;
}
/**
 * Override legacy focus reset from Normalize with modern Firefox focus styles.
 *
 * This is actually an improvement over the new defaults in Firefox in our testing,
 * as it triggers the better focus styles even for links, which still use a dotted
 * outline in Firefox by default.
 */
:-moz-focusring {
	outline: auto;
}
table {
  border-collapse: collapse;
}
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;
}
/**
 * Reset form element properties that are easy to forget to
 * style explicitly so you don't inadvertently introduce
 * styles that deviate from your design system. These styles
 * supplement a partial reset that is already applied by
 * normalize.css.
 */
button,
input,
optgroup,
select,
textarea {
  padding: 0;
  line-height: inherit;
  color: inherit;
}
/**
 * Use the configured 'mono' font family for elements that
 * are expected to be rendered with a monospace font, falling
 * back to the system monospace stack if there is no configured
 * 'mono' font family.
 */
pre,
code,
kbd,
samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
/**
 * 1. Make replaced elements `display: block` by default as that's
 *    the behavior you want almost all of the time. Inspired by
 *    CSS Remedy, with `svg` added as well.
 *
 *    https://github.com/mozdevs/cssremedy/issues/14
 * 
 * 2. Add `vertical-align: middle` to align replaced elements more
 *    sensibly by default when overriding `display` by adding a
 *    utility like `inline`.
 *
 *    This can trigger a poorly considered linting error in some
 *    tools but is included by design.
 * 
 *    https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210
 */
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;
}
/**
 * Ensure the default browser behavior of the `hidden` attribute.
 */
[hidden] {
  display: none;
}
*, ::before, ::after {
	--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-transform: translateX(var(--tw-translate-x)) translateY(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));
	--tw-border-opacity: 1;
	border-color: rgba(229, 231, 235, var(--tw-border-opacity));
	--tw-ring-offset-shadow: 0 0 #0000;
	--tw-ring-shadow: 0 0 #0000;
	--tw-shadow: 0 0 #0000;
	--tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
	--tw-ring-offset-width: 0px;
	--tw-ring-offset-color: #fff;
	--tw-ring-color: rgba(59, 130, 246, 0.5);
	--tw-ring-offset-shadow: 0 0 #0000;
	--tw-ring-shadow: 0 0 #0000;
	--tw-shadow: 0 0 #0000;
	--tw-blur: var(--tw-empty,/*!*/ /*!*/);
	--tw-brightness: var(--tw-empty,/*!*/ /*!*/);
	--tw-contrast: var(--tw-empty,/*!*/ /*!*/);
	--tw-grayscale: var(--tw-empty,/*!*/ /*!*/);
	--tw-hue-rotate: var(--tw-empty,/*!*/ /*!*/);
	--tw-invert: var(--tw-empty,/*!*/ /*!*/);
	--tw-saturate: var(--tw-empty,/*!*/ /*!*/);
	--tw-sepia: var(--tw-empty,/*!*/ /*!*/);
	--tw-drop-shadow: var(--tw-empty,/*!*/ /*!*/);
	--tw-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);
}
.container {
	width: 100%;
}
@media (min-width: 640px) {
	.container {
		max-width: 640px;
	}
}
@media (min-width: 768px) {
	.container {
		max-width: 768px;
	}
}
@media (min-width: 1024px) {
	.container {
		max-width: 1024px;
	}
}
@media (min-width: 1280px) {
	.container {
		max-width: 1280px;
	}
}
@media (min-width: 1536px) {
	.container {
		max-width: 1536px;
	}
}
.static {
	position: static;
}
.fixed {
	position: fixed;
}
.absolute {
	position: absolute;
}
.relative {
	position: relative;
}
.inset-0 {
	top: 0px;
	right: 0px;
	bottom: 0px;
	left: 0px;
}
.top-0 {
	top: 0px;
}
.right-0 {
	right: 0px;
}
.bottom-0 {
	bottom: 0px;
}
.left-0 {
	left: 0px;
}
.z-10 {
	z-index: 10;
}
.m-auto {
	margin: auto;
}
.mx-1 {
	margin-left: 0.25rem;
	margin-right: 0.25rem;
}
.mx-auto {
	margin-left: auto;
	margin-right: auto;
}
.-mx-2 {
	margin-left: -0.5rem;
	margin-right: -0.5rem;
}
.mx-2 {
	margin-left: 0.5rem;
	margin-right: 0.5rem;
}
.mt-6 {
	margin-top: 1.5rem;
}
.-mb-px {
	margin-bottom: -1px;
}
.mt-2 {
	margin-top: 0.5rem;
}
.mt-4 {
	margin-top: 1rem;
}
.mt-8 {
	margin-top: 2rem;
}
.mb-3 {
	margin-bottom: 0.75rem;
}
.mb-4 {
	margin-bottom: 1rem;
}
.mb-5 {
	margin-bottom: 1.25rem;
}
.ml-3 {
	margin-left: 0.75rem;
}
.mr-5 {
	margin-right: 1.25rem;
}
.mr-10 {
	margin-right: 2.5rem;
}
.mt-3 {
	margin-top: 0.75rem;
}
.block {
	display: block;
}
.inline-block {
	display: inline-block;
}
.flex {
	display: flex;
}
.inline-flex {
	display: inline-flex;
}
.contents {
	display: contents;
}
.hidden {
	display: none;
}
.h-screen {
	height: 100vh;
}
.h-full {
	height: 100%;
}
.h-10 {
	height: 2.5rem;
}
.h-4 {
	height: 1rem;
}
.h-6 {
	height: 1.5rem;
}
.h-12 {
	height: 3rem;
}
.min-h-screen {
	min-height: 100vh;
}
.w-full {
	width: 100%;
}
.w-4 {
	width: 1rem;
}
.w-1\/5 {
	width: 20%;
}
.w-11\/12 {
	width: 91.666667%;
}
.w-6 {
	width: 1.5rem;
}
.w-12 {
	width: 3rem;
}
.max-w-sm {
	max-width: 24rem;
}
.max-w-lg {
	max-width: 32rem;
}
.flex-1 {
	flex: 1 1 0%;
}
.flex-shrink-0 {
	flex-shrink: 0;
}
.translate-y-4 {
	--tw-translate-y: 1rem;
	transform: var(--tw-transform);
}
.translate-y-0 {
	--tw-translate-y: 0px;
	transform: var(--tw-transform);
}
.transform {
	transform: var(--tw-transform);
}
.cursor-pointer {
	cursor: pointer;
}
.flex-col {
	flex-direction: column;
}
.items-start {
	align-items: flex-start;
}
.items-end {
	align-items: flex-end;
}
.items-center {
	align-items: center;
}
.justify-start {
	justify-content: flex-start;
}
.justify-center {
	justify-content: center;
}
.justify-between {
	justify-content: space-between;
}
.space-x-3 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-x-reverse: 0;
	margin-right: calc(0.75rem * var(--tw-space-x-reverse));
	margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-y-3 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
	margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}
.space-x-6 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-x-reverse: 0;
	margin-right: calc(1.5rem * var(--tw-space-x-reverse));
	margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {
	--tw-space-y-reverse: 0;
	margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
	margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
.overflow-hidden {
	overflow: hidden;
}
.overflow-x-auto {
	overflow-x: auto;
}
.overflow-y-auto {
	overflow-y: auto;
}
.overflow-y-hidden {
	overflow-y: hidden;
}
.whitespace-nowrap {
	white-space: nowrap;
}
.rounded {
	border-radius: 0.25rem;
}
.rounded-lg {
	border-radius: 0.5rem;
}
.rounded-md {
	border-radius: 0.375rem;
}
.rounded-full {
	border-radius: 9999px;
}
.rounded-r {
	border-top-right-radius: 0.25rem;
	border-bottom-right-radius: 0.25rem;
}
.border {
	border-width: 1px;
}
.border-b {
	border-bottom-width: 1px;
}
.border-b-2 {
	border-bottom-width: 2px;
}
.border-gray-600 {
	--tw-border-opacity: 1;
	border-color: rgba(75, 85, 99, var(--tw-border-opacity));
}
.border-gray-200 {
	--tw-border-opacity: 1;
	border-color: rgba(229, 231, 235, var(--tw-border-opacity));
}
.border-blue-500 {
	--tw-border-opacity: 1;
	border-color: rgba(59, 130, 246, var(--tw-border-opacity));
}
.border-transparent {
	border-color: transparent;
}
.border-gray-400 {
	--tw-border-opacity: 1;
	border-color: rgba(156, 163, 175, var(--tw-border-opacity));
}
.border-gray-300 {
	--tw-border-opacity: 1;
	border-color: rgba(209, 213, 219, var(--tw-border-opacity));
}
.bg-gray-900 {
	--tw-bg-opacity: 1;
	background-color: rgba(17, 24, 39, var(--tw-bg-opacity));
}
.bg-gray-800 {
	--tw-bg-opacity: 1;
	background-color: rgba(31, 41, 55, var(--tw-bg-opacity));
}
.bg-white {
	--tw-bg-opacity: 1;
	background-color: rgba(255, 255, 255, var(--tw-bg-opacity));
}
.bg-blue-500 {
	--tw-bg-opacity: 1;
	background-color: rgba(59, 130, 246, var(--tw-bg-opacity));
}
.bg-gray-700 {
	--tw-bg-opacity: 1;
	background-color: rgba(55, 65, 81, var(--tw-bg-opacity));
}
.bg-indigo-700 {
	--tw-bg-opacity: 1;
	background-color: rgba(67, 56, 202, var(--tw-bg-opacity));
}
.bg-gray-100 {
	--tw-bg-opacity: 1;
	background-color: rgba(243, 244, 246, var(--tw-bg-opacity));
}
.bg-gray-500 {
	--tw-bg-opacity: 1;
	background-color: rgba(107, 114, 128, var(--tw-bg-opacity));
}
.bg-red-100 {
	--tw-bg-opacity: 1;
	background-color: rgba(254, 226, 226, var(--tw-bg-opacity));
}
.bg-gray-50 {
	--tw-bg-opacity: 1;
	background-color: rgba(249, 250, 251, var(--tw-bg-opacity));
}
.bg-red-600 {
	--tw-bg-opacity: 1;
	background-color: rgba(220, 38, 38, var(--tw-bg-opacity));
}
.bg-opacity-75 {
	--tw-bg-opacity: 0.75;
}
.fill-current {
	fill: currentColor;
}
.p-6 {
	padding: 1.5rem;
}
.p-4 {
	padding: 1rem;
}
.px-2 {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}
.py-2 {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}
.px-4 {
	padding-left: 1rem;
	padding-right: 1rem;
}
.px-6 {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.py-2\.5 {
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
}
.py-12 {
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.py-8 {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.px-5 {
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}
.px-8 {
	padding-left: 2rem;
	padding-right: 2rem;
}
.px-3 {
	padding-left: 0.75rem;
	padding-right: 0.75rem;
}
.py-3 {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
}
.pl-4 {
	padding-left: 1rem;
}
.pb-5 {
	padding-bottom: 1.25rem;
}
.pl-3 {
	padding-left: 0.75rem;
}
.pt-2 {
	padding-top: 0.5rem;
}
.pb-3 {
	padding-bottom: 0.75rem;
}
.pt-4 {
	padding-top: 1rem;
}
.pb-20 {
	padding-bottom: 5rem;
}
.pt-5 {
	padding-top: 1.25rem;
}
.pb-4 {
	padding-bottom: 1rem;
}
.text-left {
	text-align: left;
}
.text-center {
	text-align: center;
}
.align-bottom {
	vertical-align: bottom;
}
.text-2xl {
	font-size: 1.5rem;
	line-height: 2rem;
}
.text-base {
	font-size: 1rem;
	line-height: 1.5rem;
}
.text-sm {
	font-size: 0.875rem;
	line-height: 1.25rem;
}
.text-xs {
	font-size: 0.75rem;
	line-height: 1rem;
}
.text-lg {
	font-size: 1.125rem;
	line-height: 1.75rem;
}
.font-medium {
	font-weight: 500;
}
.font-light {
	font-weight: 300;
}
.font-bold {
	font-weight: 700;
}
.font-normal {
	font-weight: 400;
}
.uppercase {
	text-transform: uppercase;
}
.capitalize {
	text-transform: capitalize;
}
.leading-6 {
	line-height: 1.5rem;
}
.leading-4 {
	line-height: 1rem;
}
.leading-tight {
	line-height: 1.25;
}
.tracking-wide {
	letter-spacing: 0.025em;
}
.tracking-normal {
	letter-spacing: 0em;
}
.text-white {
	--tw-text-opacity: 1;
	color: rgba(255, 255, 255, var(--tw-text-opacity));
}
.text-blue-600 {
	--tw-text-opacity: 1;
	color: rgba(37, 99, 235, var(--tw-text-opacity));
}
.text-gray-700 {
	--tw-text-opacity: 1;
	color: rgba(55, 65, 81, var(--tw-text-opacity));
}
.text-green-400 {
	--tw-text-opacity: 1;
	color: rgba(52, 211, 153, var(--tw-text-opacity));
}
.text-blue-300 {
	--tw-text-opacity: 1;
	color: rgba(147, 197, 253, var(--tw-text-opacity));
}
.text-gray-800 {
	--tw-text-opacity: 1;
	color: rgba(31, 41, 55, var(--tw-text-opacity));
}
.text-gray-600 {
	--tw-text-opacity: 1;
	color: rgba(75, 85, 99, var(--tw-text-opacity));
}
.text-gray-500 {
	--tw-text-opacity: 1;
	color: rgba(107, 114, 128, var(--tw-text-opacity));
}
.text-gray-400 {
	--tw-text-opacity: 1;
	color: rgba(156, 163, 175, var(--tw-text-opacity));
}
.text-indigo-700 {
	--tw-text-opacity: 1;
	color: rgba(67, 56, 202, var(--tw-text-opacity));
}
.text-indigo-600 {
	--tw-text-opacity: 1;
	color: rgba(79, 70, 229, var(--tw-text-opacity));
}
.text-red-600 {
	--tw-text-opacity: 1;
	color: rgba(220, 38, 38, var(--tw-text-opacity));
}
.text-gray-900 {
	--tw-text-opacity: 1;
	color: rgba(17, 24, 39, var(--tw-text-opacity));
}
.no-underline {
	text-decoration: none;
}
.opacity-0 {
	opacity: 0;
}
.opacity-100 {
	opacity: 1;
}
.shadow-md {
	--tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-xl {
	--tw-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
	--tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.filter {
	filter: var(--tw-filter);
}
.transition {
	transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
	transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
	transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.transition-colors {
	transition-property: background-color, border-color, color, fill, stroke;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.transition-opacity {
	transition-property: opacity;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.transition-all {
	transition-property: all;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 150ms;
}
.duration-500 {
	transition-duration: 500ms;
}
.duration-300 {
	transition-duration: 300ms;
}
.duration-150 {
	transition-duration: 150ms;
}
.duration-200 {
	transition-duration: 200ms;
}
.ease-in-out {
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.ease-out {
	transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
.ease-in {
	transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}
/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}
/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}
/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}
/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  /* 2 */
}
/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, 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;
}
/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}
/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}
/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}
/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}
/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-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.
 */
[type=search]::-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 */
}
/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}
/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}
/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}
/**
 * Manually forked from SUIT CSS Base: https://github.com/suitcss/base
 * A thin layer on top of normalize.css that provides a starting point more
 * suitable for web applications.
 */
/**
 * Removes the default spacing and border for appropriate elements.
 */
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
button {
  background-color: transparent;
  background-image: none;
}
/**
 * Work around a Firefox/IE bug where the transparent `button` background
 * results in a loss of the default `button` focus styles.
 */
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}
fieldset {
  margin: 0;
  padding: 0;
}
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
/**
 * Tailwind custom reset styles
 */
/**
 * 1. Use the user's configured `sans` font-family (with Tailwind's default
 *    sans-serif font stack as a fallback) as a sane default.
 * 2. Use Tailwind's default "normal" line-height so the user isn't forced
 *    to override it to ensure consistency even when using the default theme.
 */
html {
  font-family: Nunito, sans-serif;
  /* 1 */
  line-height: 1.5;
  /* 2 */
}
/**
 * 1. Prevent padding and border from affecting element width.
 *
 *    We used to set this in the html element and inherit from
 *    the parent element for everything else. This caused issues
 *    in shadow-dom-enhanced elements like <details> where the content
 *    is wrapped by a div with box-sizing set to `content-box`.
 *
 *    https://github.com/mozdevs/cssremedy/issues/4
 *
 *
 * 2. Allow adding a border to an element by just adding a border-width.
 *
 *    By default, the way the browser specifies that an element should have no
 *    border is by setting it's border-style to `none` in the user-agent
 *    stylesheet.
 *
 *    In order to easily add borders to elements by just setting the `border-width`
 *    property, we change the default border-style for all elements to `solid`, and
 *    use border-width to hide them instead. This way our `border` utilities only
 *    need to set the `border-width` property instead of the entire `border`
 *    shorthand, making our border utilities much more straightforward to compose.
 *
 *    https://github.com/tailwindcss/tailwindcss/pull/116
 */
*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e2e8f0;
  /* 2 */
}
/*
 * Ensure horizontal rules are visible by default
 */
hr {
  border-top-width: 1px;
}
/**
 * Undo the `border-style: none` reset that Normalize applies to images so that
 * our `border-{width}` utilities have the expected effect.
 *
 * The Normalize reset is unnecessary for us since we default the border-width
 * to 0 on all elements.
 *
 * https://github.com/tailwindcss/tailwindcss/issues/362
 */
img {
  border-style: solid;
}
textarea {
  resize: vertical;
}
input::placeholder,
textarea::placeholder {
  color: #a0aec0;
}
button,
[role=button] {
  cursor: pointer;
}
table {
  border-collapse: collapse;
}
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;
}
/**
 * Reset form element properties that are easy to forget to
 * style explicitly so you don't inadvertently introduce
 * styles that deviate from your design system. These styles
 * supplement a partial reset that is already applied by
 * normalize.css.
 */
button,
input,
optgroup,
select,
textarea {
  padding: 0;
  line-height: inherit;
  color: inherit;
}
/**
 * Use the configured 'mono' font family for elements that
 * are expected to be rendered with a monospace font, falling
 * back to the system monospace stack if there is no configured
 * 'mono' font family.
 */
pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
/**
 * Make replaced elements `display: block` by default as that's
 * the behavior you want almost all of the time. Inspired by
 * CSS Remedy, with `svg` added as well.
 *
 * https://github.com/mozdevs/cssremedy/issues/14
 */
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  vertical-align: middle;
}
/**
 * Constrain images and videos to the parent width and preserve
 * their instrinsic aspect ratio.
 *
 * https://github.com/mozdevs/cssremedy/issues/14
 */
img,
video {
  max-width: 100%;
  height: auto;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
  }
}
.bg-white {
  --bg-opacity: 1;
  background-color: #fff;
  background-color: rgba(255, 255, 255, var(--bg-opacity));
}
.bg-gray-100 {
  --bg-opacity: 1;
  background-color: #f7fafc;
  background-color: rgba(247, 250, 252, var(--bg-opacity));
}
.bg-teal-500 {
  --bg-opacity: 1;
  background-color: #38b2ac;
  background-color: rgba(56, 178, 172, var(--bg-opacity));
}
.hover\:bg-teal-600:hover {
  --bg-opacity: 1;
  background-color: #319795;
  background-color: rgba(49, 151, 149, var(--bg-opacity));
}
.border-gray-200 {
  --border-opacity: 1;
  border-color: #edf2f7;
  border-color: rgba(237, 242, 247, var(--border-opacity));
}
.border-teal-500 {
  --border-opacity: 1;
  border-color: #38b2ac;
  border-color: rgba(56, 178, 172, var(--border-opacity));
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-md {
  border-radius: 0.375rem;
}
.border {
  border-width: 1px;
}
.block {
  display: block;
}
.inline {
  display: inline;
}
.flex {
  display: flex;
}
.table {
  display: table;
}
.hidden {
  display: none;
}
.items-center {
  align-items: center;
}
.justify-between {
  justify-content: space-between;
}
.flex-auto {
  flex: 1 1 auto;
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
.font-light {
  font-weight: 300;
}
.font-bold {
  font-weight: 700;
}
.h-3 {
  height: 0.75rem;
}
.h-10 {
  height: 2.5rem;
}
.text-lg {
  font-size: 1.125rem;
}
.text-5xl {
  font-size: 3rem;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mr-5 {
  margin-right: 1.25rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.mr-10 {
  margin-right: 2.5rem;
}
.mt-12 {
  margin-top: 3rem;
}
.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.overflow-auto {
  overflow: auto;
}
.overflow-hidden {
  overflow: hidden;
}
.p-3 {
  padding: 0.75rem;
}
.p-6 {
  padding: 1.5rem;
}
.p-8 {
  padding: 2rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.top-0 {
  top: 0;
}
.right-0 {
  right: 0;
}
.bottom-0 {
  bottom: 0;
}
.left-0 {
  left: 0;
}
.shadow-sm {
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.fill-current {
  fill: currentColor;
}
.text-white {
  --text-opacity: 1;
  color: #fff;
  color: rgba(255, 255, 255, var(--text-opacity));
}
.text-gray-600 {
  --text-opacity: 1;
  color: #718096;
  color: rgba(113, 128, 150, var(--text-opacity));
}
.text-gray-700 {
  --text-opacity: 1;
  color: #4a5568;
  color: rgba(74, 85, 104, var(--text-opacity));
}
.text-gray-800 {
  --text-opacity: 1;
  color: #2d3748;
  color: rgba(45, 55, 72, var(--text-opacity));
}
.text-teal-500 {
  --text-opacity: 1;
  color: #38b2ac;
  color: rgba(56, 178, 172, var(--text-opacity));
}
.text-teal-600 {
  --text-opacity: 1;
  color: #319795;
  color: rgba(49, 151, 149, var(--text-opacity));
}
.hover\:text-gray-700:hover {
  --text-opacity: 1;
  color: #4a5568;
  color: rgba(74, 85, 104, var(--text-opacity));
}
.w-3 {
  width: 0.75rem;
}
.w-10 {
  width: 2.5rem;
}
.w-full {
  width: 100%;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes ping {
  75%, 100% {
    transform: scale(2);
    opacity: 0;
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@keyframes bounce {
  0%, 100% {
    transform: translateY(-25%);
    animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
  }
  50% {
    transform: none;
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  }
}
@media (min-width: 640px) {
  .sm\:container {
    width: 100%;
  }
}
@media (min-width: 640px) and (min-width: 640px) {
  .sm\:container {
    max-width: 640px;
  }
}
@media (min-width: 640px) and (min-width: 768px) {
  .sm\:container {
    max-width: 768px;
  }
}
@media (min-width: 640px) and (min-width: 1024px) {
  .sm\:container {
    max-width: 1024px;
  }
}
@media (min-width: 640px) and (min-width: 1280px) {
  .sm\:container {
    max-width: 1280px;
  }
}
@media (min-width: 768px) {
  .md\:container {
    width: 100%;
  }
}
@media (min-width: 768px) and (min-width: 640px) {
  .md\:container {
    max-width: 640px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .md\:container {
    max-width: 768px;
  }
}
@media (min-width: 768px) and (min-width: 1024px) {
  .md\:container {
    max-width: 1024px;
  }
}
@media (min-width: 768px) and (min-width: 1280px) {
  .md\:container {
    max-width: 1280px;
  }
}
@media (min-width: 1024px) {
  .lg\:container {
    width: 100%;
  }
}
@media (min-width: 1024px) and (min-width: 640px) {
  .lg\:container {
    max-width: 640px;
  }
}
@media (min-width: 1024px) and (min-width: 768px) {
  .lg\:container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) and (min-width: 1024px) {
  .lg\:container {
    max-width: 1024px;
  }
}
@media (min-width: 1024px) and (min-width: 1280px) {
  .lg\:container {
    max-width: 1280px;
  }
}
@media (min-width: 1024px) {
  .lg\:inline-block {
    display: inline-block;
  }
  .lg\:flex {
    display: flex;
  }
  .lg\:hidden {
    display: none;
  }
  .lg\:text-xl {
    font-size: 1.25rem;
  }
  .lg\:text-2xl {
    font-size: 1.5rem;
  }
  .lg\:text-6xl {
    font-size: 4rem;
  }
  .lg\:mt-0 {
    margin-top: 0;
  }
  .lg\:mr-0 {
    margin-right: 0;
  }
  .lg\:mb-6 {
    margin-bottom: 1.5rem;
  }
  .lg\:mt-32 {
    margin-top: 8rem;
  }
  .lg\:pl-24 {
    padding-left: 6rem;
  }
  .lg\:w-1\/2 {
    width: 50%;
  }
}
@media (min-width: 1280px) {
  .xl\:container {
    width: 100%;
  }
}
@media (min-width: 1280px) and (min-width: 640px) {
  .xl\:container {
    max-width: 640px;
  }
}
@media (min-width: 1280px) and (min-width: 768px) {
  .xl\:container {
    max-width: 768px;
  }
}
@media (min-width: 1280px) and (min-width: 1024px) {
  .xl\:container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) and (min-width: 1280px) {
  .xl\:container {
    max-width: 1280px;
  }
}
.hover\:border-gray-400:hover {
	--tw-border-opacity: 1;
	border-color: rgba(156, 163, 175, var(--tw-border-opacity));
}
.hover\:bg-gray-700:hover {
	--tw-bg-opacity: 1;
	background-color: rgba(55, 65, 81, var(--tw-bg-opacity));
}
.hover\:bg-blue-400:hover {
	--tw-bg-opacity: 1;
	background-color: rgba(96, 165, 250, var(--tw-bg-opacity));
}
.hover\:bg-indigo-600:hover {
	--tw-bg-opacity: 1;
	background-color: rgba(79, 70, 229, var(--tw-bg-opacity));
}
.hover\:bg-gray-300:hover {
	--tw-bg-opacity: 1;
	background-color: rgba(209, 213, 219, var(--tw-bg-opacity));
}
.hover\:bg-red-700:hover {
	--tw-bg-opacity: 1;
	background-color: rgba(185, 28, 28, var(--tw-bg-opacity));
}
.hover\:bg-gray-50:hover {
	--tw-bg-opacity: 1;
	background-color: rgba(249, 250, 251, var(--tw-bg-opacity));
}
.hover\:text-gray-600:hover {
	--tw-text-opacity: 1;
	color: rgba(75, 85, 99, var(--tw-text-opacity));
}
.hover\:text-gray-700:hover {
	--tw-text-opacity: 1;
	color: rgba(55, 65, 81, var(--tw-text-opacity));
}
.hover\:underline:hover {
	text-decoration: underline;
}
.hover\:no-underline:hover {
	text-decoration: none;
}
.focus\:border:focus {
	border-width: 1px;
}
.focus\:border-blue-400:focus {
	--tw-border-opacity: 1;
	border-color: rgba(96, 165, 250, var(--tw-border-opacity));
}
.focus\:border-indigo-700:focus {
	--tw-border-opacity: 1;
	border-color: rgba(67, 56, 202, var(--tw-border-opacity));
}
.focus\:bg-blue-400:focus {
	--tw-bg-opacity: 1;
	background-color: rgba(96, 165, 250, var(--tw-bg-opacity));
}
.focus\:text-indigo-400:focus {
	--tw-text-opacity: 1;
	color: rgba(129, 140, 248, var(--tw-text-opacity));
}
.focus\:outline-none:focus {
	outline: 2px solid transparent;
	outline-offset: 2px;
}
.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-blue-300:focus {
	--tw-ring-opacity: 1;
	--tw-ring-color: rgba(147, 197, 253, var(--tw-ring-opacity));
}
.focus\:ring-gray-300:focus {
	--tw-ring-opacity: 1;
	--tw-ring-color: rgba(209, 213, 219, var(--tw-ring-opacity));
}
.focus\:ring-indigo-700:focus {
	--tw-ring-opacity: 1;
	--tw-ring-color: rgba(67, 56, 202, var(--tw-ring-opacity));
}
.focus\:ring-gray-400:focus {
	--tw-ring-opacity: 1;
	--tw-ring-color: rgba(156, 163, 175, var(--tw-ring-opacity));
}
.focus\:ring-gray-600:focus {
	--tw-ring-opacity: 1;
	--tw-ring-color: rgba(75, 85, 99, var(--tw-ring-opacity));
}
.focus\:ring-red-500:focus {
	--tw-ring-opacity: 1;
	--tw-ring-color: rgba(239, 68, 68, var(--tw-ring-opacity));
}
.focus\:ring-indigo-500:focus {
	--tw-ring-opacity: 1;
	--tw-ring-color: rgba(99, 102, 241, var(--tw-ring-opacity));
}
.focus\:ring-opacity-40:focus {
	--tw-ring-opacity: 0.4;
}
.focus\:ring-opacity-50:focus {
	--tw-ring-opacity: 0.5;
}
.focus\:ring-offset-2:focus {
	--tw-ring-offset-width: 2px;
}
@media (min-width: 640px) {
	.sm\:my-8 {
		margin-top: 2rem;
		margin-bottom: 2rem;
	}
	.sm\:mx-0 {
		margin-left: 0px;
		margin-right: 0px;
	}
	.sm\:mt-0 {
		margin-top: 0px;
	}
	.sm\:ml-4 {
		margin-left: 1rem;
	}
	.sm\:ml-3 {
		margin-left: 0.75rem;
	}
	.sm\:block {
		display: block;
	}
	.sm\:inline-block {
		display: inline-block;
	}
	.sm\:inline {
		display: inline;
	}
	.sm\:flex {
		display: flex;
	}
	.sm\:h-6 {
		height: 1.5rem;
	}
	.sm\:h-screen {
		height: 100vh;
	}
	.sm\:h-10 {
		height: 2.5rem;
	}
	.sm\:w-64 {
		width: 16rem;
	}
	.sm\:w-6 {
		width: 1.5rem;
	}
	.sm\:w-full {
		width: 100%;
	}
	.sm\:w-10 {
		width: 2.5rem;
	}
	.sm\:w-auto {
		width: auto;
	}
	.sm\:max-w-lg {
		max-width: 32rem;
	}
	.sm\:translate-y-0 {
		--tw-translate-y: 0px;
		transform: var(--tw-transform);
	}
	.sm\:scale-95 {
		--tw-scale-x: .95;
		--tw-scale-y: .95;
		transform: var(--tw-transform);
	}
	.sm\:scale-100 {
		--tw-scale-x: 1;
		--tw-scale-y: 1;
		transform: var(--tw-transform);
	}
	.sm\:flex-row-reverse {
		flex-direction: row-reverse;
	}
	.sm\:items-start {
		align-items: flex-start;
	}
	.sm\:p-0 {
		padding: 0px;
	}
	.sm\:p-6 {
		padding: 1.5rem;
	}
	.sm\:px-4 {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	.sm\:px-3 {
		padding-left: 0.75rem;
		padding-right: 0.75rem;
	}
	.sm\:px-6 {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
	.sm\:pb-4 {
		padding-bottom: 1rem;
	}
	.sm\:text-left {
		text-align: left;
	}
	.sm\:align-middle {
		vertical-align: middle;
	}
	.sm\:text-base {
		font-size: 1rem;
		line-height: 1.5rem;
	}
	.sm\:text-sm {
		font-size: 0.875rem;
		line-height: 1.25rem;
	}
}
@media (min-width: 768px) {
	.md\:hidden {
		display: none;
	}
	.md\:w-2\/3 {
		width: 66.666667%;
	}
	.md\:px-10 {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}
}
@media (min-width: 1024px) {
	.lg\:mt-0 {
		margin-top: 0px;
	}
	.lg\:inline-block {
		display: inline-block;
	}
	.lg\:flex {
		display: flex;
	}
	.lg\:w-1\/5 {
		width: 20%;
	}
	.lg\:text-4xl {
		font-size: 2.25rem;
		line-height: 2.5rem;
	}
}
@media (min-width: 1280px) {
	.xl\:flex {
		display: flex;
	}
	.xl\:hidden {
		display: none;
	}
	.xl\:translate-x-0 {
		--tw-translate-x: 0px;
		transform: var(--tw-transform);
	}
	.xl\:rounded-r {
		border-top-right-radius: 0.25rem;
		border-bottom-right-radius: 0.25rem;
	}
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFxzdHlsZXMuc2NzcyIsIiUzQ2lucHV0JTIwY3NzJTIwTHZhMXg4JTNFIiwiJTNDaW5wdXQlMjBjc3MlMjBEdTFVOEUlM0UiLCI8bm8gc291cmNlPiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw4RUFBQTtBQUNBLGtFQUFBO0FBQUEsOEZBQUE7QUFBQTs7O0NBQUE7QUFBQTs7Q0FBQTtBQUFBOzs7Q0NhQyxzQkFBc0I7QURidkI7QUFBQTs7Q0FBQTtBQUFBO0NDcUJDLGdCQUFnQjtDQUNoQixXQUFXO0FEdEJaO0FBQUE7OztDQUFBO0FBQUE7Q0MrQkMsaUJBQWlCLEVBQUUsTUFBTTtDQUN6Qiw4QkFBOEIsRUFBRSxNQUFNO0FEaEN2QztBQUFBOzs7Q0FBQTtBQUFBOztDQUFBO0FBQUE7Q0M2Q0MsU0FBUztBRDdDVjtBQUFBOztDQUFBO0FBQUE7Q0NxREM7Ozs7Ozs7OztrQkFTaUI7QUQ5RGxCO0FBQUE7OztDQUFBO0FBQUE7OztDQUFBO0FBQUE7Q0M0RUMsU0FBUyxFQUFFLE1BQU07Q0FDakIsY0FBYyxFQUFFLE1BQU07QUQ3RXZCO0FBQUE7OztDQUFBO0FBQUE7O0NBQUE7QUFBQTtDQzBGQyx5Q0FBaUM7U0FBakMsaUNBQWlDO0FEMUZsQztBQUFBOztDQUFBO0FBQUE7O0NDbUdDLG1CQUFtQjtBRG5HcEI7QUFBQTs7O0NBQUE7QUFBQTs7OztDQytHQzs7Ozs7O1dBTVUsRUFBRSxNQUFNO0NBQ2xCLGNBQWMsRUFBRSxNQUFNO0FEdEh2QjtBQUFBOztDQUFBO0FBQUE7Q0M4SEMsY0FBYztBRDlIZjtBQUFBOztDQUFBO0FBQUE7O0NDdUlDLGNBQWM7Q0FDZCxjQUFjO0NBQ2Qsa0JBQWtCO0NBQ2xCLHdCQUF3QjtBRDFJekI7QUFBQTtDQzhJQyxlQUFlO0FEOUloQjtBQUFBO0NDa0pDLFdBQVc7QURsSlo7QUFBQTs7O0NBQUE7QUFBQTs7O0NBQUE7QUFBQTtDQ2dLQyxjQUFjLEVBQUUsTUFBTTtDQUN0QixxQkFBcUIsRUFBRSxNQUFNO0FEaks5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QUFBO0NBQUEsbUNBQUE7Q0FBQSw0QkFBQTtDQUFBLHVCQUFBO0NBQUEsNkNBQUE7Q0FBQSw0QkFBQTtDQUFBLDZCQUFBO0NBQUEseUNBQUE7Q0FBQSxtQ0FBQTtDQUFBLDRCQUFBO0NBQUEsdUJBQUE7Q0FBQSx1Q0FBQTtDQUFBLDZDQUFBO0NBQUEsMkNBQUE7Q0FBQSw0Q0FBQTtDQUFBLDZDQUFBO0NBQUEseUNBQUE7Q0FBQSwyQ0FBQTtDQUFBLHdDQUFBO0NBQUEsOENBQUE7Q0FBQTtDQUFBO0FIR0E7Q0dIQTtBSEdBO0FBQUE7Q0dIQTtFQUFBO0VBQUE7QUhHQTtBQUFBO0NHSEE7RUFBQTtFQUFBO0FIR0E7QUFBQTtDR0hBO0VBQUE7RUFBQTtBSEdBO0FBQUE7Q0dIQTtFQUFBO0VBQUE7QUhHQTtBQUFBO0NHSEE7RUFBQTtFQUFBO0FIR0E7QUFFQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLFNBQUE7Q0FBQSxXQUFBO0NBQUEsWUFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLHFCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsa0JBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxxQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG9CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEEsdUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxzQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLHdCQUFBO0NBQUEsd0RBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSx3QkFBQTtDQUFBLGdFQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsd0JBQUE7Q0FBQSx1REFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLHdCQUFBO0NBQUEsZ0VBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQSxpQ0FBQTtDQUFBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLHVCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsdUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSx1QkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLHVCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsdUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxtQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG1CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsbUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxtQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG1CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsbUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxtQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG1CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsbUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxtQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG1CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEE7QUhLQTtBQUFBO0NHTEEscUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxvQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG1CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEscUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxzQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLGtCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsa0JBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxzQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG1CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsc0JBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxxQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLGtCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsZ0JBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxvQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLG1CQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsb0JBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQTtBSEtBO0FBQUE7Q0dMQSxxQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLHFCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEscUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxxQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLHFCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEscUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxxQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLHFCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEscUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxxQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLHFCQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEscUJBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSxxQkFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLG1GQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEsdUZBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSw2Q0FBQTtDQUFBO0FIS0E7QUFBQTtDR0xBO0FIS0E7QUFBQTtDR0xBLDBJQUFBO0NBQUEsa0lBQUE7Q0FBQSwySkFBQTtDQUFBLHlEQUFBO0NBQUE7QUhLQTtBQUFBO0NHTEEseUVBQUE7Q0FBQSx5REFBQTtDQUFBO0FIS0E7QUFBQTtDR0xBLDZCQUFBO0NBQUEseURBQUE7Q0FBQTtBSEtBO0FBQUE7Q0dMQSx5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SEFBO0NHQUEsNEdBQUE7Q0FBQSwwR0FBQTtDQUFBO0NBQUE7QUhBQTtDR0FBLDRHQUFBO0NBQUEsMEdBQUE7Q0FBQTtDQUFBO0FIQUE7Q0dBQSxxQkFBQTtDQUFBO0NBQUE7QUhBQTtDR0FBLHFCQUFBO0NBQUE7Q0FBQTtBSEFBO0NHQUEscUJBQUE7Q0FBQTtDQUFBO0FIQUE7Q0dBQSxxQkFBQTtDQUFBO0NBQUE7QUhBQTtDR0FBLHFCQUFBO0NBQUE7Q0FBQTtBSEFBO0NHQUEscUJBQUE7Q0FBQTtDQUFBO0FIQUE7Q0dBQSxxQkFBQTtDQUFBO0NBQUE7QUhBQTtDR0FBO0NBQUE7QUhBQTtDR0FBO0NBQUE7QUhBQTtDR0FBO0NBQUE7QUhBQTtDR0FBO0VBQUEsaUJBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQSxpQkFBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBLHNCQUFBO0VBQUE7RUFBQTtDQUFBO0VBQUEsa0JBQUE7RUFBQSxrQkFBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBLGdCQUFBO0VBQUEsZ0JBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQSxtQkFBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBLHNCQUFBO0VBQUE7RUFBQTtDQUFBO0VBQUEscUJBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQTtFQUFBO0NBQUE7RUFBQSxnQkFBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBLG9CQUFBO0VBQUE7RUFBQTtDQUFBO0FIQUE7Q0dBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBLHFCQUFBO0VBQUE7RUFBQTtDQUFBO0FIQUE7Q0dBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBLG1CQUFBO0VBQUE7RUFBQTtDQUFBO0FIQUE7Q0dBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBO0VBQUE7Q0FBQTtFQUFBLHNCQUFBO0VBQUE7RUFBQTtDQUFBO0VBQUEsaUNBQUE7RUFBQTtFQUFBO0NBQUEiLCJmaWxlIjoic3R5bGVzLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBZb3UgY2FuIGFkZCBnbG9iYWwgc3R5bGVzIHRvIHRoaXMgZmlsZSwgYW5kIGFsc28gaW1wb3J0IG90aGVyIHN0eWxlIGZpbGVzICovXG5AdGFpbHdpbmQgYmFzZTtcblxuQHRhaWx3aW5kIGNvbXBvbmVudHM7XG5cbkB0YWlsd2luZCB1dGlsaXRpZXM7XG5cblxuXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbiBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICB9XG4gIFxuICAvKiBTZWN0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAgICovXG4gIFxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAgICovXG4gIFxuICBtYWluIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBcbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuICBcbiAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgKi9cbiAgXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICB9XG4gIFxuICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG4gIFxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAqL1xuICBcbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgKi9cbiAgXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG4gIFxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICovXG4gIFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICogYWxsIGJyb3dzZXJzLlxuICAgKi9cbiAgXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG4gIFxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuICBcbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuICBcbiAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gICAqL1xuICBcbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cbiAgXG4gIC8qIEZvcm1zXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gIFxuICAvKipcbiAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICB9XG4gIFxuICAvKipcbiAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAqL1xuICBcbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8qIDEgKi9cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAqL1xuICBcbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvKiAxICovXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKi9cbiAgXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAqL1xuICBcbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIFxuICAvKipcbiAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgKi9cbiAgXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAqL1xuICBcbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICovXG4gIFxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMyAqL1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuICBcbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICAgKi9cbiAgXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gICAqL1xuICBcbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICovXG4gIFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICovXG4gIFxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuICB9XG4gIFxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgKi9cbiAgXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAqL1xuICBcbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gIH1cbiAgXG4gIC8qIEludGVyYWN0aXZlXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gIFxuICAvKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICAgKi9cbiAgXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIFxuICAvKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG4gIFxuICAvKiBNaXNjXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gIFxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICAgKi9cbiAgXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gICAqL1xuICBcbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBNYW51YWxseSBmb3JrZWQgZnJvbSBTVUlUIENTUyBCYXNlOiBodHRwczovL2dpdGh1Yi5jb20vc3VpdGNzcy9iYXNlXG4gICAqIEEgdGhpbiBsYXllciBvbiB0b3Agb2Ygbm9ybWFsaXplLmNzcyB0aGF0IHByb3ZpZGVzIGEgc3RhcnRpbmcgcG9pbnQgbW9yZVxuICAgKiBzdWl0YWJsZSBmb3Igd2ViIGFwcGxpY2F0aW9ucy5cbiAgICovXG4gIFxuICAvKipcbiAgICogUmVtb3ZlcyB0aGUgZGVmYXVsdCBzcGFjaW5nIGFuZCBib3JkZXIgZm9yIGFwcHJvcHJpYXRlIGVsZW1lbnRzLlxuICAgKi9cbiAgXG4gIGJsb2NrcXVvdGUsXG4gIGRsLFxuICBkZCxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgaHIsXG4gIGZpZ3VyZSxcbiAgcCxcbiAgcHJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFdvcmsgYXJvdW5kIGEgRmlyZWZveC9JRSBidWcgd2hlcmUgdGhlIHRyYW5zcGFyZW50IGBidXR0b25gIGJhY2tncm91bmRcbiAgICogcmVzdWx0cyBpbiBhIGxvc3Mgb2YgdGhlIGRlZmF1bHQgYGJ1dHRvbmAgZm9jdXMgc3R5bGVzLlxuICAgKi9cbiAgXG4gIGJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZDtcbiAgICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIH1cbiAgXG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBcbiAgb2wsXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIFxuICAvKipcbiAgICogVGFpbHdpbmQgY3VzdG9tIHJlc2V0IHN0eWxlc1xuICAgKi9cbiAgXG4gIC8qKlxuICAgKiAxLiBVc2UgdGhlIHVzZXIncyBjb25maWd1cmVkIGBzYW5zYCBmb250LWZhbWlseSAod2l0aCBUYWlsd2luZCdzIGRlZmF1bHRcbiAgICogICAgc2Fucy1zZXJpZiBmb250IHN0YWNrIGFzIGEgZmFsbGJhY2spIGFzIGEgc2FuZSBkZWZhdWx0LlxuICAgKiAyLiBVc2UgVGFpbHdpbmQncyBkZWZhdWx0IFwibm9ybWFsXCIgbGluZS1oZWlnaHQgc28gdGhlIHVzZXIgaXNuJ3QgZm9yY2VkXG4gICAqICAgIHRvIG92ZXJyaWRlIGl0IHRvIGVuc3VyZSBjb25zaXN0ZW5jeSBldmVuIHdoZW4gdXNpbmcgdGhlIGRlZmF1bHQgdGhlbWUuXG4gICAqL1xuICBcbiAgaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IE51bml0bywgc2Fucy1zZXJpZjsgLyogMSAqL1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IC8qIDIgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIFByZXZlbnQgcGFkZGluZyBhbmQgYm9yZGVyIGZyb20gYWZmZWN0aW5nIGVsZW1lbnQgd2lkdGguXG4gICAqXG4gICAqICAgIFdlIHVzZWQgdG8gc2V0IHRoaXMgaW4gdGhlIGh0bWwgZWxlbWVudCBhbmQgaW5oZXJpdCBmcm9tXG4gICAqICAgIHRoZSBwYXJlbnQgZWxlbWVudCBmb3IgZXZlcnl0aGluZyBlbHNlLiBUaGlzIGNhdXNlZCBpc3N1ZXNcbiAgICogICAgaW4gc2hhZG93LWRvbS1lbmhhbmNlZCBlbGVtZW50cyBsaWtlIDxkZXRhaWxzPiB3aGVyZSB0aGUgY29udGVudFxuICAgKiAgICBpcyB3cmFwcGVkIGJ5IGEgZGl2IHdpdGggYm94LXNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YC5cbiAgICpcbiAgICogICAgaHR0cHM6Ly9naXRodWIuY29tL21vemRldnMvY3NzcmVtZWR5L2lzc3Vlcy80XG4gICAqXG4gICAqXG4gICAqIDIuIEFsbG93IGFkZGluZyBhIGJvcmRlciB0byBhbiBlbGVtZW50IGJ5IGp1c3QgYWRkaW5nIGEgYm9yZGVyLXdpZHRoLlxuICAgKlxuICAgKiAgICBCeSBkZWZhdWx0LCB0aGUgd2F5IHRoZSBicm93c2VyIHNwZWNpZmllcyB0aGF0IGFuIGVsZW1lbnQgc2hvdWxkIGhhdmUgbm9cbiAgICogICAgYm9yZGVyIGlzIGJ5IHNldHRpbmcgaXQncyBib3JkZXItc3R5bGUgdG8gYG5vbmVgIGluIHRoZSB1c2VyLWFnZW50XG4gICAqICAgIHN0eWxlc2hlZXQuXG4gICAqXG4gICAqICAgIEluIG9yZGVyIHRvIGVhc2lseSBhZGQgYm9yZGVycyB0byBlbGVtZW50cyBieSBqdXN0IHNldHRpbmcgdGhlIGBib3JkZXItd2lkdGhgXG4gICAqICAgIHByb3BlcnR5LCB3ZSBjaGFuZ2UgdGhlIGRlZmF1bHQgYm9yZGVyLXN0eWxlIGZvciBhbGwgZWxlbWVudHMgdG8gYHNvbGlkYCwgYW5kXG4gICAqICAgIHVzZSBib3JkZXItd2lkdGggdG8gaGlkZSB0aGVtIGluc3RlYWQuIFRoaXMgd2F5IG91ciBgYm9yZGVyYCB1dGlsaXRpZXMgb25seVxuICAgKiAgICBuZWVkIHRvIHNldCB0aGUgYGJvcmRlci13aWR0aGAgcHJvcGVydHkgaW5zdGVhZCBvZiB0aGUgZW50aXJlIGBib3JkZXJgXG4gICAqICAgIHNob3J0aGFuZCwgbWFraW5nIG91ciBib3JkZXIgdXRpbGl0aWVzIG11Y2ggbW9yZSBzdHJhaWdodGZvcndhcmQgdG8gY29tcG9zZS5cbiAgICpcbiAgICogICAgaHR0cHM6Ly9naXRodWIuY29tL3RhaWx3aW5kY3NzL3RhaWx3aW5kY3NzL3B1bGwvMTE2XG4gICAqL1xuICBcbiAgKixcbiAgOjpiZWZvcmUsXG4gIDo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICBib3JkZXItd2lkdGg6IDA7IC8qIDIgKi9cbiAgICBib3JkZXItc3R5bGU6IHNvbGlkOyAvKiAyICovXG4gICAgYm9yZGVyLWNvbG9yOiAjZTJlOGYwOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qXG4gICAqIEVuc3VyZSBob3Jpem9udGFsIHJ1bGVzIGFyZSB2aXNpYmxlIGJ5IGRlZmF1bHRcbiAgICovXG4gIFxuICBociB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICB9XG4gIFxuICAvKipcbiAgICogVW5kbyB0aGUgYGJvcmRlci1zdHlsZTogbm9uZWAgcmVzZXQgdGhhdCBOb3JtYWxpemUgYXBwbGllcyB0byBpbWFnZXMgc28gdGhhdFxuICAgKiBvdXIgYGJvcmRlci17d2lkdGh9YCB1dGlsaXRpZXMgaGF2ZSB0aGUgZXhwZWN0ZWQgZWZmZWN0LlxuICAgKlxuICAgKiBUaGUgTm9ybWFsaXplIHJlc2V0IGlzIHVubmVjZXNzYXJ5IGZvciB1cyBzaW5jZSB3ZSBkZWZhdWx0IHRoZSBib3JkZXItd2lkdGhcbiAgICogdG8gMCBvbiBhbGwgZWxlbWVudHMuXG4gICAqXG4gICAqIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlsd2luZGNzcy90YWlsd2luZGNzcy9pc3N1ZXMvMzYyXG4gICAqL1xuICBcbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICB9XG4gIFxuICB0ZXh0YXJlYSB7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgfVxuICBcbiAgaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsIHRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2EwYWVjMDtcbiAgfVxuICBcbiAgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjYTBhZWMwO1xuICB9XG4gIFxuICBpbnB1dDo6cGxhY2Vob2xkZXIsXG4gIHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNhMGFlYzA7XG4gIH1cbiAgXG4gIGJ1dHRvbixcbiAgW3JvbGU9XCJidXR0b25cIl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICBcbiAgdGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIH1cbiAgXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlc2V0IGxpbmtzIHRvIG9wdGltaXplIGZvciBvcHQtaW4gc3R5bGluZyBpbnN0ZWFkIG9mXG4gICAqIG9wdC1vdXQuXG4gICAqL1xuICBcbiAgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB9XG4gIFxuICAvKipcbiAgICogUmVzZXQgZm9ybSBlbGVtZW50IHByb3BlcnRpZXMgdGhhdCBhcmUgZWFzeSB0byBmb3JnZXQgdG9cbiAgICogc3R5bGUgZXhwbGljaXRseSBzbyB5b3UgZG9uJ3QgaW5hZHZlcnRlbnRseSBpbnRyb2R1Y2VcbiAgICogc3R5bGVzIHRoYXQgZGV2aWF0ZSBmcm9tIHlvdXIgZGVzaWduIHN5c3RlbS4gVGhlc2Ugc3R5bGVzXG4gICAqIHN1cHBsZW1lbnQgYSBwYXJ0aWFsIHJlc2V0IHRoYXQgaXMgYWxyZWFkeSBhcHBsaWVkIGJ5XG4gICAqIG5vcm1hbGl6ZS5jc3MuXG4gICAqL1xuICBcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBVc2UgdGhlIGNvbmZpZ3VyZWQgJ21vbm8nIGZvbnQgZmFtaWx5IGZvciBlbGVtZW50cyB0aGF0XG4gICAqIGFyZSBleHBlY3RlZCB0byBiZSByZW5kZXJlZCB3aXRoIGEgbW9ub3NwYWNlIGZvbnQsIGZhbGxpbmdcbiAgICogYmFjayB0byB0aGUgc3lzdGVtIG1vbm9zcGFjZSBzdGFjayBpZiB0aGVyZSBpcyBubyBjb25maWd1cmVkXG4gICAqICdtb25vJyBmb250IGZhbWlseS5cbiAgICovXG4gIFxuICBwcmUsXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBNYWtlIHJlcGxhY2VkIGVsZW1lbnRzIGBkaXNwbGF5OiBibG9ja2AgYnkgZGVmYXVsdCBhcyB0aGF0J3NcbiAgICogdGhlIGJlaGF2aW9yIHlvdSB3YW50IGFsbW9zdCBhbGwgb2YgdGhlIHRpbWUuIEluc3BpcmVkIGJ5XG4gICAqIENTUyBSZW1lZHksIHdpdGggYHN2Z2AgYWRkZWQgYXMgd2VsbC5cbiAgICpcbiAgICogaHR0cHM6Ly9naXRodWIuY29tL21vemRldnMvY3NzcmVtZWR5L2lzc3Vlcy8xNFxuICAgKi9cbiAgXG4gIGltZyxcbiAgc3ZnLFxuICB2aWRlbyxcbiAgY2FudmFzLFxuICBhdWRpbyxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIFxuICAvKipcbiAgICogQ29uc3RyYWluIGltYWdlcyBhbmQgdmlkZW9zIHRvIHRoZSBwYXJlbnQgd2lkdGggYW5kIHByZXNlcnZlXG4gICAqIHRoZWlyIGluc3RyaW5zaWMgYXNwZWN0IHJhdGlvLlxuICAgKlxuICAgKiBodHRwczovL2dpdGh1Yi5jb20vbW96ZGV2cy9jc3NyZW1lZHkvaXNzdWVzLzE0XG4gICAqL1xuICBcbiAgaW1nLFxuICB2aWRlbyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBcbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA2NDBweDtcbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA3NjhweDtcbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTAyNHB4O1xuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gICAgfVxuICB9XG4gIFxuICAuYmctd2hpdGUge1xuICAgIC0tYmctb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgdmFyKC0tYmctb3BhY2l0eSkpO1xuICB9XG4gIFxuICAuYmctZ3JheS0xMDAge1xuICAgIC0tYmctb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmYWZjO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAyNTAsIDI1MiwgdmFyKC0tYmctb3BhY2l0eSkpO1xuICB9XG4gIFxuICAuYmctdGVhbC01MDAge1xuICAgIC0tYmctb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzhiMmFjO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTYsIDE3OCwgMTcyLCB2YXIoLS1iZy1vcGFjaXR5KSk7XG4gIH1cbiAgXG4gIC5ob3ZlclxcOmJnLXRlYWwtNjAwOmhvdmVyIHtcbiAgICAtLWJnLW9wYWNpdHk6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxOTc5NTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ5LCAxNTEsIDE0OSwgdmFyKC0tYmctb3BhY2l0eSkpO1xuICB9XG4gIFxuICAuYm9yZGVyLWdyYXktMjAwIHtcbiAgICAtLWJvcmRlci1vcGFjaXR5OiAxO1xuICAgIGJvcmRlci1jb2xvcjogI2VkZjJmNztcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjM3LCAyNDIsIDI0NywgdmFyKC0tYm9yZGVyLW9wYWNpdHkpKTtcbiAgfVxuICBcbiAgLmJvcmRlci10ZWFsLTUwMCB7XG4gICAgLS1ib3JkZXItb3BhY2l0eTogMTtcbiAgICBib3JkZXItY29sb3I6ICMzOGIyYWM7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDU2LCAxNzgsIDE3MiwgdmFyKC0tYm9yZGVyLW9wYWNpdHkpKTtcbiAgfVxuICBcbiAgLnJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIH1cbiAgXG4gIC5yb3VuZGVkLW1kIHtcbiAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgfVxuICBcbiAgLmJvcmRlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIH1cbiAgXG4gIC5ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgXG4gIC5pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuICBcbiAgLmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgXG4gIC50YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgXG4gIC5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC5pdGVtcy1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgXG4gIC5qdXN0aWZ5LWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICBcbiAgLmZsZXgtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cbiAgXG4gIC5jbGVhcmZpeDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICBcbiAgLmZvbnQtbGlnaHQge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbiAgXG4gIC5mb250LWJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgXG4gIC5oLTMge1xuICAgIGhlaWdodDogMC43NXJlbTtcbiAgfVxuICBcbiAgLmgtMTAge1xuICAgIGhlaWdodDogMi41cmVtO1xuICB9XG4gIFxuICAudGV4dC1sZyB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuICBcbiAgLnRleHQtNXhsIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbiAgXG4gIC5teC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgXG4gIC5tYi0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbiAgXG4gIC5tYi0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICB9XG4gIFxuICAubXQtNCB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuICBcbiAgLm1yLTUge1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgfVxuICBcbiAgLm1iLTYge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuICBcbiAgLm1iLTgge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbiAgXG4gIC5tci0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07XG4gIH1cbiAgXG4gIC5tdC0xMiB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxuICBcbiAgLmZvY3VzXFw6b3V0bGluZS1ub25lOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgfVxuICBcbiAgLm92ZXJmbG93LWF1dG8ge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG4gIFxuICAub3ZlcmZsb3ctaGlkZGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIFxuICAucC0zIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICB9XG4gIFxuICAucC02IHtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gIH1cbiAgXG4gIC5wLTgge1xuICAgIHBhZGRpbmc6IDJyZW07XG4gIH1cbiAgXG4gIC5weS0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIH1cbiAgXG4gIC5weS0zIHtcbiAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgfVxuICBcbiAgLnB4LTQge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB9XG4gIFxuICAucHgtNiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIFxuICAucHgtMTIge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICB9XG4gIFxuICAuZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBcbiAgLmFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgXG4gIC5yZWxhdGl2ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIFxuICAudG9wLTAge1xuICAgIHRvcDogMDtcbiAgfVxuICBcbiAgLnJpZ2h0LTAge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIFxuICAuYm90dG9tLTAge1xuICAgIGJvdHRvbTogMDtcbiAgfVxuICBcbiAgLmxlZnQtMCB7XG4gICAgbGVmdDogMDtcbiAgfVxuICBcbiAgLnNoYWRvdy1zbSB7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgfVxuICBcbiAgLmZpbGwtY3VycmVudCB7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICB9XG4gIFxuICAudGV4dC13aGl0ZSB7XG4gICAgLS10ZXh0LW9wYWNpdHk6IDE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgdmFyKC0tdGV4dC1vcGFjaXR5KSk7XG4gIH1cbiAgXG4gIC50ZXh0LWdyYXktNjAwIHtcbiAgICAtLXRleHQtb3BhY2l0eTogMTtcbiAgICBjb2xvcjogIzcxODA5NjtcbiAgICBjb2xvcjogcmdiYSgxMTMsIDEyOCwgMTUwLCB2YXIoLS10ZXh0LW9wYWNpdHkpKTtcbiAgfVxuICBcbiAgLnRleHQtZ3JheS03MDAge1xuICAgIC0tdGV4dC1vcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAjNGE1NTY4O1xuICAgIGNvbG9yOiByZ2JhKDc0LCA4NSwgMTA0LCB2YXIoLS10ZXh0LW9wYWNpdHkpKTtcbiAgfVxuICBcbiAgLnRleHQtZ3JheS04MDAge1xuICAgIC0tdGV4dC1vcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAjMmQzNzQ4O1xuICAgIGNvbG9yOiByZ2JhKDQ1LCA1NSwgNzIsIHZhcigtLXRleHQtb3BhY2l0eSkpO1xuICB9XG4gIFxuICAudGV4dC10ZWFsLTUwMCB7XG4gICAgLS10ZXh0LW9wYWNpdHk6IDE7XG4gICAgY29sb3I6ICMzOGIyYWM7XG4gICAgY29sb3I6IHJnYmEoNTYsIDE3OCwgMTcyLCB2YXIoLS10ZXh0LW9wYWNpdHkpKTtcbiAgfVxuICBcbiAgLnRleHQtdGVhbC02MDAge1xuICAgIC0tdGV4dC1vcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAjMzE5Nzk1O1xuICAgIGNvbG9yOiByZ2JhKDQ5LCAxNTEsIDE0OSwgdmFyKC0tdGV4dC1vcGFjaXR5KSk7XG4gIH1cbiAgXG4gIC5ob3ZlclxcOnRleHQtZ3JheS03MDA6aG92ZXIge1xuICAgIC0tdGV4dC1vcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAjNGE1NTY4O1xuICAgIGNvbG9yOiByZ2JhKDc0LCA4NSwgMTA0LCB2YXIoLS10ZXh0LW9wYWNpdHkpKTtcbiAgfVxuICBcbiAgLnctMyB7XG4gICAgd2lkdGg6IDAuNzVyZW07XG4gIH1cbiAgXG4gIC53LTEwIHtcbiAgICB3aWR0aDogMi41cmVtO1xuICB9XG4gIFxuICAudy1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBcbiAgQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4ge1xuICAgIHRvIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxuICB9XG4gIFxuICBAa2V5ZnJhbWVzIHNwaW4ge1xuICAgIHRvIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxuICB9XG4gIFxuICBALXdlYmtpdC1rZXlmcmFtZXMgcGluZyB7XG4gICAgNzUlLCAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMik7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuICBcbiAgQGtleWZyYW1lcyBwaW5nIHtcbiAgICA3NSUsIDEwMCUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG4gIFxuICBALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAgIDUwJSB7XG4gICAgICBvcGFjaXR5OiAuNTtcbiAgICB9XG4gIH1cbiAgXG4gIEBrZXlmcmFtZXMgcHVsc2Uge1xuICAgIDUwJSB7XG4gICAgICBvcGFjaXR5OiAuNTtcbiAgICB9XG4gIH1cbiAgXG4gIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2Uge1xuICAgIDAlLCAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUlKTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuOCwwLDEsMSk7XG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjgsMCwxLDEpO1xuICAgIH1cbiAgXG4gICAgNTAlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsMCwwLjIsMSk7XG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLDAsMC4yLDEpO1xuICAgIH1cbiAgfVxuICBcbiAgQGtleWZyYW1lcyBib3VuY2Uge1xuICAgIDAlLCAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUlKTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuOCwwLDEsMSk7XG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjgsMCwxLDEpO1xuICAgIH1cbiAgXG4gICAgNTAlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsMCwwLjIsMSk7XG4gICAgICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLDAsMC4yLDEpO1xuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLnNtXFw6Y29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuc21cXDpjb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDY0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuc21cXDpjb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnNtXFw6Y29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDI0cHg7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAuc21cXDpjb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEyODBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5tZFxcOmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLm1kXFw6Y29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2NDBweDtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLm1kXFw6Y29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NjhweDtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5tZFxcOmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTAyNHB4O1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLm1kXFw6Y29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmxnXFw6Y29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAubGdcXDpjb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDY0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAubGdcXDpjb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmxnXFw6Y29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDI0cHg7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAubGdcXDpjb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEyODBweDtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIC5sZ1xcOmlubGluZS1ibG9jayB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICBcbiAgICAubGdcXDpmbGV4IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICBcbiAgICAubGdcXDpoaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIFxuICAgIC5sZ1xcOnRleHQteGwge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIH1cbiAgXG4gICAgLmxnXFw6dGV4dC0yeGwge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuICBcbiAgICAubGdcXDp0ZXh0LTZ4bCB7XG4gICAgICBmb250LXNpemU6IDRyZW07XG4gICAgfVxuICBcbiAgICAubGdcXDptdC0wIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICBcbiAgICAubGdcXDptci0wIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIFxuICAgIC5sZ1xcOm1iLTYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cbiAgXG4gICAgLmxnXFw6bXQtMzIge1xuICAgICAgbWFyZ2luLXRvcDogOHJlbTtcbiAgICB9XG4gIFxuICAgIC5sZ1xcOnBsLTI0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNnJlbTtcbiAgICB9XG4gIFxuICAgIC5sZ1xcOnctMVxcLzIge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAueGxcXDpjb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC54bFxcOmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogNjQwcHg7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC54bFxcOmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogNzY4cHg7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAueGxcXDpjb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMjRweDtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC54bFxcOmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTI4MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcblxuIiwiLyohIG1vZGVybi1ub3JtYWxpemUgdjEuMS4wIHwgTUlUIExpY2Vuc2UgfCBodHRwczovL2dpdGh1Yi5jb20vc2luZHJlc29yaHVzL21vZGVybi1ub3JtYWxpemUgKi9cblxuLypcbkRvY3VtZW50XG49PT09PT09PVxuKi9cblxuLyoqXG5Vc2UgYSBiZXR0ZXIgYm94IG1vZGVsIChvcGluaW9uYXRlZCkuXG4qL1xuXG4qLFxuOjpiZWZvcmUsXG46OmFmdGVyIHtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyoqXG5Vc2UgYSBtb3JlIHJlYWRhYmxlIHRhYiBzaXplIChvcGluaW9uYXRlZCkuXG4qL1xuXG5odG1sIHtcblx0LW1vei10YWItc2l6ZTogNDtcblx0dGFiLXNpemU6IDQ7XG59XG5cbi8qKlxuMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4qL1xuXG5odG1sIHtcblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qXG5TZWN0aW9uc1xuPT09PT09PT1cbiovXG5cbi8qKlxuUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuYm9keSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLyoqXG5JbXByb3ZlIGNvbnNpc3RlbmN5IG9mIGRlZmF1bHQgZm9udHMgaW4gYWxsIGJyb3dzZXJzLiAoaHR0cHM6Ly9naXRodWIuY29tL3NpbmRyZXNvcmh1cy9tb2Rlcm4tbm9ybWFsaXplL2lzc3Vlcy8zKVxuKi9cblxuYm9keSB7XG5cdGZvbnQtZmFtaWx5OlxuXHRcdHN5c3RlbS11aSxcblx0XHQtYXBwbGUtc3lzdGVtLCAvKiBGaXJlZm94IHN1cHBvcnRzIHRoaXMgYnV0IG5vdCB5ZXQgYHN5c3RlbS11aWAgKi9cblx0XHQnU2Vnb2UgVUknLFxuXHRcdFJvYm90byxcblx0XHRIZWx2ZXRpY2EsXG5cdFx0QXJpYWwsXG5cdFx0c2Fucy1zZXJpZixcblx0XHQnQXBwbGUgQ29sb3IgRW1vamknLFxuXHRcdCdTZWdvZSBVSSBFbW9qaSc7XG59XG5cbi8qXG5Hcm91cGluZyBjb250ZW50XG49PT09PT09PT09PT09PT09XG4qL1xuXG4vKipcbjEuIEFkZCB0aGUgY29ycmVjdCBoZWlnaHQgaW4gRmlyZWZveC5cbjIuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIG9mIGJvcmRlciBjb2xvciBpbiBGaXJlZm94LiAoaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwNjU1KVxuKi9cblxuaHIge1xuXHRoZWlnaHQ6IDA7IC8qIDEgKi9cblx0Y29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLypcblRleHQtbGV2ZWwgc2VtYW50aWNzXG49PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLyoqXG5BZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiovXG5cbmFiYnJbdGl0bGVdIHtcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG4vKipcbkFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBFZGdlIGFuZCBTYWZhcmkuXG4qL1xuXG5iLFxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4xLiBJbXByb3ZlIGNvbnNpc3RlbmN5IG9mIGRlZmF1bHQgZm9udHMgaW4gYWxsIGJyb3dzZXJzLiAoaHR0cHM6Ly9naXRodWIuY29tL3NpbmRyZXNvcmh1cy9tb2Rlcm4tbm9ybWFsaXplL2lzc3Vlcy8zKVxuMi4gQ29ycmVjdCB0aGUgb2RkICdlbScgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuY29kZSxcbmtiZCxcbnNhbXAsXG5wcmUge1xuXHRmb250LWZhbWlseTpcblx0XHR1aS1tb25vc3BhY2UsXG5cdFx0U0ZNb25vLVJlZ3VsYXIsXG5cdFx0Q29uc29sYXMsXG5cdFx0J0xpYmVyYXRpb24gTW9ubycsXG5cdFx0TWVubG8sXG5cdFx0bW9ub3NwYWNlOyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4qL1xuXG5zbWFsbCB7XG5cdGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcblByZXZlbnQgJ3N1YicgYW5kICdzdXAnIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4qL1xuXG5zdWIsXG5zdXAge1xuXHRmb250LXNpemU6IDc1JTtcblx0bGluZS1oZWlnaHQ6IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuXHRib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG5cdHRvcDogLTAuNWVtO1xufVxuXG4vKlxuVGFidWxhciBkYXRhXG49PT09PT09PT09PT1cbiovXG5cbi8qKlxuMS4gUmVtb3ZlIHRleHQgaW5kZW50YXRpb24gZnJvbSB0YWJsZSBjb250ZW50cyBpbiBDaHJvbWUgYW5kIFNhZmFyaS4gKGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTk5OTA4OCwgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMTI5NylcbjIuIENvcnJlY3QgdGFibGUgYm9yZGVyIGNvbG9yIGluaGVyaXRhbmNlIGluIGFsbCBDaHJvbWUgYW5kIFNhZmFyaS4gKGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTkzNTcyOSwgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTAxNilcbiovXG5cbnRhYmxlIHtcblx0dGV4dC1pbmRlbnQ6IDA7IC8qIDEgKi9cblx0Ym9yZGVyLWNvbG9yOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qXG5Gb3Jtc1xuPT09PT1cbiovXG5cbi8qKlxuMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4yLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4qL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuXHRmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cblx0bGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cblx0bWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlIGFuZCBGaXJlZm94LlxuMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG5Db3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuKi9cblxuYnV0dG9uLFxuW3R5cGU9J2J1dHRvbiddLFxuW3R5cGU9J3Jlc2V0J10sXG5bdHlwZT0nc3VibWl0J10ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG5SZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuKi9cblxuOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcblJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiovXG5cbjotbW96LWZvY3VzcmluZyB7XG5cdG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG5SZW1vdmUgdGhlIGFkZGl0aW9uYWwgJzppbnZhbGlkJyBzdHlsZXMgaW4gRmlyZWZveC5cblNlZTogaHR0cHM6Ly9naXRodWIuY29tL21vemlsbGEvZ2Vja28tZGV2L2Jsb2IvMmY5ZWFjZDlkM2Q5OTVjOTM3YjQyNTFhNTU1N2Q5NWQ0OTRjOWJlMS9sYXlvdXQvc3R5bGUvcmVzL2Zvcm1zLmNzcyNMNzI4LUw3MzdcbiovXG5cbjotbW96LXVpLWludmFsaWQge1xuXHRib3gtc2hhZG93OiBub25lO1xufVxuXG4vKipcblJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXQgJ2ZpZWxkc2V0JyBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4qL1xuXG5sZWdlbmQge1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcbkFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lIGFuZCBGaXJlZm94LlxuKi9cblxucHJvZ3Jlc3Mge1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gU2FmYXJpLlxuKi9cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbjEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4qL1xuXG5bdHlwZT0nc2VhcmNoJ10ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcblJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiovXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4xLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byAnaW5oZXJpdCcgaW4gU2FmYXJpLlxuKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG5cdGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLypcbkludGVyYWN0aXZlXG49PT09PT09PT09PVxuKi9cblxuLypcbkFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIENocm9tZSBhbmQgU2FmYXJpLlxuKi9cblxuc3VtbWFyeSB7XG5cdGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cbiIsIi8qKlxuICogTWFudWFsbHkgZm9ya2VkIGZyb20gU1VJVCBDU1MgQmFzZTogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZVxuICogQSB0aGluIGxheWVyIG9uIHRvcCBvZiBub3JtYWxpemUuY3NzIHRoYXQgcHJvdmlkZXMgYSBzdGFydGluZyBwb2ludCBtb3JlXG4gKiBzdWl0YWJsZSBmb3Igd2ViIGFwcGxpY2F0aW9ucy5cbiAqL1xuXG4vKipcbiAqIFJlbW92ZXMgdGhlIGRlZmF1bHQgc3BhY2luZyBhbmQgYm9yZGVyIGZvciBhcHByb3ByaWF0ZSBlbGVtZW50cy5cbiAqL1xuXG5ibG9ja3F1b3RlLFxuZGwsXG5kZCxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbmhyLFxuZmlndXJlLFxucCxcbnByZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5vbCxcbnVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFRhaWx3aW5kIGN1c3RvbSByZXNldCBzdHlsZXNcbiAqL1xuXG4vKipcbiAqIDEuIFVzZSB0aGUgdXNlcidzIGNvbmZpZ3VyZWQgYHNhbnNgIGZvbnQtZmFtaWx5ICh3aXRoIFRhaWx3aW5kJ3MgZGVmYXVsdFxuICogICAgc2Fucy1zZXJpZiBmb250IHN0YWNrIGFzIGEgZmFsbGJhY2spIGFzIGEgc2FuZSBkZWZhdWx0LlxuICogMi4gVXNlIFRhaWx3aW5kJ3MgZGVmYXVsdCBcIm5vcm1hbFwiIGxpbmUtaGVpZ2h0IHNvIHRoZSB1c2VyIGlzbid0IGZvcmNlZFxuICogICAgdG8gb3ZlcnJpZGUgaXQgdG8gZW5zdXJlIGNvbnNpc3RlbmN5IGV2ZW4gd2hlbiB1c2luZyB0aGUgZGVmYXVsdCB0aGVtZS5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHRoZW1lKCdmb250RmFtaWx5LnNhbnMnLCB1aS1zYW5zLXNlcmlmLCBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIik7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuNTsgLyogMiAqL1xufVxuXG5cbi8qKlxuICogSW5oZXJpdCBmb250LWZhbWlseSBhbmQgbGluZS1oZWlnaHQgZnJvbSBgaHRtbGAgc28gdXNlcnMgY2FuIHNldCB0aGVtIGFzXG4gKiBhIGNsYXNzIGRpcmVjdGx5IG9uIHRoZSBgaHRtbGAgZWxlbWVudC5cbiAqL1xuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgcGFkZGluZyBhbmQgYm9yZGVyIGZyb20gYWZmZWN0aW5nIGVsZW1lbnQgd2lkdGguXG4gKlxuICogICAgV2UgdXNlZCB0byBzZXQgdGhpcyBpbiB0aGUgaHRtbCBlbGVtZW50IGFuZCBpbmhlcml0IGZyb21cbiAqICAgIHRoZSBwYXJlbnQgZWxlbWVudCBmb3IgZXZlcnl0aGluZyBlbHNlLiBUaGlzIGNhdXNlZCBpc3N1ZXNcbiAqICAgIGluIHNoYWRvdy1kb20tZW5oYW5jZWQgZWxlbWVudHMgbGlrZSA8ZGV0YWlscz4gd2hlcmUgdGhlIGNvbnRlbnRcbiAqICAgIGlzIHdyYXBwZWQgYnkgYSBkaXYgd2l0aCBib3gtc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgLlxuICpcbiAqICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9tb3pkZXZzL2Nzc3JlbWVkeS9pc3N1ZXMvNFxuICpcbiAqXG4gKiAyLiBBbGxvdyBhZGRpbmcgYSBib3JkZXIgdG8gYW4gZWxlbWVudCBieSBqdXN0IGFkZGluZyBhIGJvcmRlci13aWR0aC5cbiAqXG4gKiAgICBCeSBkZWZhdWx0LCB0aGUgd2F5IHRoZSBicm93c2VyIHNwZWNpZmllcyB0aGF0IGFuIGVsZW1lbnQgc2hvdWxkIGhhdmUgbm9cbiAqICAgIGJvcmRlciBpcyBieSBzZXR0aW5nIGl0J3MgYm9yZGVyLXN0eWxlIHRvIGBub25lYCBpbiB0aGUgdXNlci1hZ2VudFxuICogICAgc3R5bGVzaGVldC5cbiAqXG4gKiAgICBJbiBvcmRlciB0byBlYXNpbHkgYWRkIGJvcmRlcnMgdG8gZWxlbWVudHMgYnkganVzdCBzZXR0aW5nIHRoZSBgYm9yZGVyLXdpZHRoYFxuICogICAgcHJvcGVydHksIHdlIGNoYW5nZSB0aGUgZGVmYXVsdCBib3JkZXItc3R5bGUgZm9yIGFsbCBlbGVtZW50cyB0byBgc29saWRgLCBhbmRcbiAqICAgIHVzZSBib3JkZXItd2lkdGggdG8gaGlkZSB0aGVtIGluc3RlYWQuIFRoaXMgd2F5IG91ciBgYm9yZGVyYCB1dGlsaXRpZXMgb25seVxuICogICAgbmVlZCB0byBzZXQgdGhlIGBib3JkZXItd2lkdGhgIHByb3BlcnR5IGluc3RlYWQgb2YgdGhlIGVudGlyZSBgYm9yZGVyYFxuICogICAgc2hvcnRoYW5kLCBtYWtpbmcgb3VyIGJvcmRlciB1dGlsaXRpZXMgbXVjaCBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBjb21wb3NlLlxuICpcbiAqICAgIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlsd2luZGNzcy90YWlsd2luZGNzcy9wdWxsLzExNlxuICovXG5cbiosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGJvcmRlci13aWR0aDogMDsgLyogMiAqL1xuICBib3JkZXItc3R5bGU6IHNvbGlkOyAvKiAyICovXG4gIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yOyAvKiAyICovXG59XG5cbi8qXG4gKiBFbnN1cmUgaG9yaXpvbnRhbCBydWxlcyBhcmUgdmlzaWJsZSBieSBkZWZhdWx0XG4gKi9cblxuaHIge1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG59XG5cbi8qKlxuICogVW5kbyB0aGUgYGJvcmRlci1zdHlsZTogbm9uZWAgcmVzZXQgdGhhdCBOb3JtYWxpemUgYXBwbGllcyB0byBpbWFnZXMgc28gdGhhdFxuICogb3VyIGBib3JkZXIte3dpZHRofWAgdXRpbGl0aWVzIGhhdmUgdGhlIGV4cGVjdGVkIGVmZmVjdC5cbiAqXG4gKiBUaGUgTm9ybWFsaXplIHJlc2V0IGlzIHVubmVjZXNzYXJ5IGZvciB1cyBzaW5jZSB3ZSBkZWZhdWx0IHRoZSBib3JkZXItd2lkdGhcbiAqIHRvIDAgb24gYWxsIGVsZW1lbnRzLlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlsd2luZGNzcy90YWlsd2luZGNzcy9pc3N1ZXMvMzYyXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogdGhlbWUoJ2NvbG9ycy5ncmF5LjQwMCcsICNhMWExYWEpO1xufVxuXG5idXR0b24sXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyoqXG4gKiBPdmVycmlkZSBsZWdhY3kgZm9jdXMgcmVzZXQgZnJvbSBOb3JtYWxpemUgd2l0aCBtb2Rlcm4gRmlyZWZveCBmb2N1cyBzdHlsZXMuXG4gKlxuICogVGhpcyBpcyBhY3R1YWxseSBhbiBpbXByb3ZlbWVudCBvdmVyIHRoZSBuZXcgZGVmYXVsdHMgaW4gRmlyZWZveCBpbiBvdXIgdGVzdGluZyxcbiAqIGFzIGl0IHRyaWdnZXJzIHRoZSBiZXR0ZXIgZm9jdXMgc3R5bGVzIGV2ZW4gZm9yIGxpbmtzLCB3aGljaCBzdGlsbCB1c2UgYSBkb3R0ZWRcbiAqIG91dGxpbmUgaW4gRmlyZWZveCBieSBkZWZhdWx0LlxuICovXG4gXG46LW1vei1mb2N1c3Jpbmcge1xuXHRvdXRsaW5lOiBhdXRvO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogUmVzZXQgbGlua3MgdG8gb3B0aW1pemUgZm9yIG9wdC1pbiBzdHlsaW5nIGluc3RlYWQgb2ZcbiAqIG9wdC1vdXQuXG4gKi9cblxuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG59XG5cbi8qKlxuICogUmVzZXQgZm9ybSBlbGVtZW50IHByb3BlcnRpZXMgdGhhdCBhcmUgZWFzeSB0byBmb3JnZXQgdG9cbiAqIHN0eWxlIGV4cGxpY2l0bHkgc28geW91IGRvbid0IGluYWR2ZXJ0ZW50bHkgaW50cm9kdWNlXG4gKiBzdHlsZXMgdGhhdCBkZXZpYXRlIGZyb20geW91ciBkZXNpZ24gc3lzdGVtLiBUaGVzZSBzdHlsZXNcbiAqIHN1cHBsZW1lbnQgYSBwYXJ0aWFsIHJlc2V0IHRoYXQgaXMgYWxyZWFkeSBhcHBsaWVkIGJ5XG4gKiBub3JtYWxpemUuY3NzLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBVc2UgdGhlIGNvbmZpZ3VyZWQgJ21vbm8nIGZvbnQgZmFtaWx5IGZvciBlbGVtZW50cyB0aGF0XG4gKiBhcmUgZXhwZWN0ZWQgdG8gYmUgcmVuZGVyZWQgd2l0aCBhIG1vbm9zcGFjZSBmb250LCBmYWxsaW5nXG4gKiBiYWNrIHRvIHRoZSBzeXN0ZW0gbW9ub3NwYWNlIHN0YWNrIGlmIHRoZXJlIGlzIG5vIGNvbmZpZ3VyZWRcbiAqICdtb25vJyBmb250IGZhbWlseS5cbiAqL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiB0aGVtZSgnZm9udEZhbWlseS5tb25vJywgdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlKTtcbn1cblxuLyoqXG4gKiAxLiBNYWtlIHJlcGxhY2VkIGVsZW1lbnRzIGBkaXNwbGF5OiBibG9ja2AgYnkgZGVmYXVsdCBhcyB0aGF0J3NcbiAqICAgIHRoZSBiZWhhdmlvciB5b3Ugd2FudCBhbG1vc3QgYWxsIG9mIHRoZSB0aW1lLiBJbnNwaXJlZCBieVxuICogICAgQ1NTIFJlbWVkeSwgd2l0aCBgc3ZnYCBhZGRlZCBhcyB3ZWxsLlxuICpcbiAqICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9tb3pkZXZzL2Nzc3JlbWVkeS9pc3N1ZXMvMTRcbiAqIFxuICogMi4gQWRkIGB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlYCB0byBhbGlnbiByZXBsYWNlZCBlbGVtZW50cyBtb3JlXG4gKiAgICBzZW5zaWJseSBieSBkZWZhdWx0IHdoZW4gb3ZlcnJpZGluZyBgZGlzcGxheWAgYnkgYWRkaW5nIGFcbiAqICAgIHV0aWxpdHkgbGlrZSBgaW5saW5lYC5cbiAqXG4gKiAgICBUaGlzIGNhbiB0cmlnZ2VyIGEgcG9vcmx5IGNvbnNpZGVyZWQgbGludGluZyBlcnJvciBpbiBzb21lXG4gKiAgICB0b29scyBidXQgaXMgaW5jbHVkZWQgYnkgZGVzaWduLlxuICogXG4gKiAgICBodHRwczovL2dpdGh1Yi5jb20vamVuc2ltbW9ucy9jc3NyZW1lZHkvaXNzdWVzLzE0I2lzc3VlY29tbWVudC02MzQ5MzQyMTBcbiAqL1xuXG5pbWcsXG5zdmcsXG52aWRlbyxcbmNhbnZhcyxcbmF1ZGlvLFxuaWZyYW1lLFxuZW1iZWQsXG5vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29uc3RyYWluIGltYWdlcyBhbmQgdmlkZW9zIHRvIHRoZSBwYXJlbnQgd2lkdGggYW5kIHByZXNlcnZlXG4gKiB0aGVpciBpbnRyaW5zaWMgYXNwZWN0IHJhdGlvLlxuICpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9tb3pkZXZzL2Nzc3JlbWVkeS9pc3N1ZXMvMTRcbiAqL1xuXG5pbWcsXG52aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIEVuc3VyZSB0aGUgZGVmYXVsdCBicm93c2VyIGJlaGF2aW9yIG9mIHRoZSBgaGlkZGVuYCBhdHRyaWJ1dGUuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIixudWxsXX0= */

/*# sourceMappingURL=styles.css.map*/