.header_element_split {
  margin-left: 30px;
}
.header_element_split::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -11px;
  width: 1px;
  height: 19px;
  opacity: 0.5;
  margin: auto;
  display: block;
  border-right-width: 1px;
  border-right-style: solid;
}
/**
 * @package 	WordPress
 * @subpackage 	Bambini
 * @version 	1.0.4
 * 
 * Gutenberg CSS Rules
 * Created by CMSMasters
 * 
 */
/*-------------------------------------------------------------------------*/
/* General Styles
/*-------------------------------------------------------------------------*/
.wp-block[data-align="full"] {
  width: 100%;
}
/** === Base Typography === */
a {
  outline: 0;
  text-decoration: none;
  transition: color 110ms ease-in-out;
}
img.alignright {
  clear: right;
}
img.alignleft {
  clear: left;
}
div.wp-block h1 a,
div.wp-block h2 a,
div.wp-block h3 a,
div.wp-block h4 a,
div.wp-block h5 a,
div.wp-block h6 a,
div.wp-block pre a {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
}
div.wp-block b,
div.wp-block strong {
  font-weight: bold;
}
div.wp-block .editor-rich-text__tinymce code,
div.wp-block .block-editor-rich-text__editable code {
  background-color: transparent;
  color: inherit;
  font-family: monospace;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: 1px;
  margin: 0;
  padding: 0;
  border-radius: 0;
}
small small {
  font-size: 75%;
}
select {
  line-height: 1em;
  text-indent: 0.01px;
  text-overflow: '';
  padding: 3px 60px 0 18px;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none !important;
  background-position: 100% center;
  background-repeat: no-repeat;
  cursor: pointer;
  -webkit-border-radius: 0;
  border-radius: 0;
  height: 46px;
  background-image: url('../../../../img/select.png');
}
select option {
  cursor: pointer;
}
/** === Post Title === */
.editor-post-title__block .editor-post-title__input {
  outline: none;
}
/** === Default Appender === */
.editor-default-block-appender input[type="text"].editor-default-block-appender__content {
  outline: none;
}
/** === Heading === */
.wp-block-heading {
  outline: none;
}
p.wp-block-subhead {
  padding: 0;
}
/** === Paragraph === */
p.has-background,
p.mce-content-body.has-background {
  margin: 0;
  padding: 0.95em 1.3em;
}
p.has-drop-cap:not(:focus):first-letter,
p.mce-content-body.has-drop-cap:not(:focus):first-letter {
  margin: 0.32em 0.73em 0.1em 0.52em;
}
p.has-small-font-size,
p.mce-content-body.has-small-font-size,
p.has-medium-font-size,
p.mce-content-body.has-medium-font-size,
p.has-large-font-size,
p.mce-content-body.has-large-font-size,
p.has-huge-font-size,
p.mce-content-body.has-huge-font-size,
p[style^="font-size:"],
p.mce-content-body[style^="font-size:"],
p[style*="font-size:"],
p.mce-content-body[style*="font-size:"] {
  line-height: 1.5em;
}
/** === Image === */
.wp-block-image:not(.editor-media-placeholder) {
  line-height: 0;
  display: block !important;
  margin: 0 0 20px;
  text-align: center;
}
.wp-block-image figure {
  margin: 0 0 20px;
}
.wp-block-image figure.alignleft {
  margin-right: 2em;
}
.wp-block-image figure.alignright {
  margin-left: 2em;
}
.wp-block-image figcaption {
  display: block !important;
  margin: 0;
  padding: 15px 0;
  text-align: center !important;
}
.wp-block-image div[style^="width:"],
.wp-block-image div[style*="width:"],
.wp-block-image .components-resizable-box__container {
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto;
}
.wp-block-image .editor-rich-text {
  display: block !important;
}
/** === Gallery === */
div.wp-block .wp-block-gallery {
  margin: 0 0 4px;
}
div.wp-block .wp-block-gallery li {
  padding: 0;
  margin-bottom: 16px;
}
div.wp-block .wp-block-gallery li:before {
  content: none;
}
div.wp-block .wp-block-gallery .blocks-gallery-item:before {
  content: none;
}
div.wp-block .wp-block-gallery.columns-2 .blocks-gallery-image,
div.wp-block .wp-block-gallery.columns-2 .blocks-gallery-item {
  margin: 0 16px 16px 0;
}
div.wp-block .wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n),
div.wp-block .wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n) {
  margin-right: 0;
}
div.wp-block .wp-block-gallery.columns-2 .blocks-gallery-image:last-child,
div.wp-block .wp-block-gallery.columns-2 .blocks-gallery-item:last-child {
  margin-right: 0;
}
.wp-block-gallery {
  margin: 0 0 4px;
}
.wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n),
.wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n) {
  margin-right: 0;
}
.wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n),
.wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n) {
  margin-right: 0;
}
.wp-block-gallery li {
  padding: 0;
}
.wp-block-gallery li:before {
  content: none;
}
.wp-block-gallery .blocks-gallery-item:before {
  content: none;
}
.wp-block-gallery.is-cropped .blocks-gallery-image img,
.wp-block-gallery.is-cropped .blocks-gallery-item img {
  width: 100%;
}
.wp-block-gallery .blocks-gallery-image figcaption,
.wp-block-gallery .blocks-gallery-item figcaption {
  margin: 0;
  padding: 25px 5px 10px;
  text-align: center;
  overflow: hidden;
}
@media (max-width: 540px) {
  .wp-block-gallery {
    display: block;
  }
  .wp-block-gallery .blocks-gallery-image,
  .wp-block-gallery .blocks-gallery-item {
    display: block;
    width: 100%;
  }
}
/** === Lists === */
div.wp-block ul,
div.wp-block ol {
  margin: 0;
  padding: 0;
  list-style-position: inside;
}
div.wp-block ul li,
div.wp-block ol li {
  margin: 0;
  padding: 10px 0 0;
}
div.wp-block ul li:first-child,
div.wp-block ol li:first-child {
  padding-top: 0;
}
div.wp-block ul ol,
div.wp-block ol ol,
div.wp-block .block-library-list .editor-rich-text__tinymce ol,
div.wp-block ul ul,
div.wp-block ol ul,
div.wp-block .block-library-list .editor-rich-text__tinymce ul {
  margin: 0 0 0 20px;
  padding: 10px 0 0;
}
div.wp-block .block-library-list .editor-rich-text__tinymce {
  margin: 0 0 20px;
  padding: 0;
}
div.wp-block ul {
  list-style-type: none;
}
div.wp-block ul > li {
  position: relative;
  display: block;
}
div.wp-block ul > li::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 10px 0 0;
  vertical-align: middle;
  position: relative;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
div.wp-block ol {
  list-style-type: decimal-leading-zero;
}
/** === Blockquote === */
.wp-block-quote,
.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
  padding: 0;
  margin: 0 0 20px;
  /* don't touch */
  position: relative;
  quotes: none;
  border-width: 0;
  border-style: solid;
}
.wp-block-quote p:last-of-type,
.wp-block-quote.is-large p:last-of-type,
.wp-block-quote.is-style-large p:last-of-type {
  margin: 0;
  padding: 0;
}
.wp-block-quote cite,
.wp-block-quote.is-large cite,
.wp-block-quote.is-style-large cite {
  display: block;
  margin-top: 10px;
}
.wp-block-quote::before,
.wp-block-quote.is-large::before,
.wp-block-quote.is-style-large::before {
  content: "“";
  padding-right: 10px;
  font-family: "Quicksand", Arial, Helvetica, "Nimbus Sans L", sans-serif;
  font-weight: bold;
  font-size: 83px;
  height: 22px;
  line-height: 53px;
  float: left;
  display: inline-block;
}
.wp-block-quote .editor-rich-text__tinymce,
.wp-block-quote.is-large .editor-rich-text__tinymce,
.wp-block-quote.is-style-large .editor-rich-text__tinymce {
  line-height: inherit;
}
.wp-block-quote p,
.wp-block-quote.is-large p,
.wp-block-quote.is-style-large p,
.wp-block-quote cite,
.wp-block-quote.is-large cite,
.wp-block-quote.is-style-large cite,
.wp-block-quote footer,
.wp-block-quote.is-large footer,
.wp-block-quote.is-style-large footer,
.wp-block-quote .wp-block-quote__citation,
.wp-block-quote.is-large .wp-block-quote__citation,
.wp-block-quote.is-style-large .wp-block-quote__citation {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
}
.wp-block-quote cite,
.wp-block-quote.is-large cite,
.wp-block-quote.is-style-large cite,
.wp-block-quote footer,
.wp-block-quote.is-large footer,
.wp-block-quote.is-style-large footer,
.wp-block-quote .wp-block-quote__citation,
.wp-block-quote.is-large .wp-block-quote__citation,
.wp-block-quote.is-style-large .wp-block-quote__citation {
  font-style: italic;
  margin-top: 10px;
}
.wp-block-quote.is-large cite,
.wp-block-quote.is-style-large cite,
.wp-block-quote.is-large footer,
.wp-block-quote.is-style-large footer,
.wp-block-quote.is-large .wp-block-quote__citation,
.wp-block-quote.is-style-large .wp-block-quote__citation {
  text-align: left;
}
/** === Block Audio === */
.wp-block-audio {
  margin-bottom: 20px;
}
.wp-block-audio figcaption {
  display: block !important;
  margin: 0;
  padding: 15px 0;
  text-align: center !important;
}
.wp-block-audio audio {
  width: 100%;
  min-width: 300px;
}
.wp-block-audio audio::-webkit-media-controls-play-button,
.wp-block-audio audio::-webkit-media-controls-mute-button {
  opacity: 1;
  cursor: pointer;
  -webkit-transition: opacity .3s ease-in-out;
  -moz-transition: opacity .3s ease-in-out;
  -ms-transition: opacity .3s ease-in-out;
  -o-transition: opacity .3s ease-in-out;
  transition: opacity .3s ease-in-out;
}
.wp-block-audio audio::-webkit-media-controls-play-button:hover,
.wp-block-audio audio::-webkit-media-controls-mute-button:hover {
  opacity: 0.5;
}
/** === Cover === */
.wp-block-cover,
.wp-block-cover-image {
  margin: 0 0 20px;
  padding: 10px 30px;
}
.wp-block-cover.alignleft,
.wp-block-cover-image.alignleft {
  margin-left: 0;
  margin-right: 2em;
}
.wp-block-cover.alignright,
.wp-block-cover-image.alignright {
  margin-left: 2em;
  margin-right: 0;
}
.wp-block-cover h2,
.wp-block-cover-image h2,
.wp-block-cover .wp-block-cover-text,
.wp-block-cover-image .wp-block-cover-text,
.wp-block-cover .wp-block-cover-image-text,
.wp-block-cover-image .wp-block-cover-image-text {
  margin: 0;
  padding: 0;
}
.wp-block-cover h2 strong,
.wp-block-cover-image h2 strong,
.wp-block-cover .wp-block-cover-text strong,
.wp-block-cover-image .wp-block-cover-text strong,
.wp-block-cover .wp-block-cover-image-text strong,
.wp-block-cover-image .wp-block-cover-image-text strong {
  font-weight: bolder;
}
.wp-block-cover-image.alignleft,
.wp-block-cover-image.alignright,
.wp-block-cover.alignleft,
.wp-block-cover.alignright,
[data-align=left] .wp-block-cover,
[data-align=left] .wp-block-cover-image,
[data-align=right] .wp-block-cover,
[data-align=right] .wp-block-cover-image {
  width: auto;
  max-width: 100%;
}
/** === File === */
.wp-block-file {
  margin: 0 0 20px;
}
.wp-block-file > a:not([class]),
.wp-block-file .wp-block-file__textlink {
  display: inline-block;
  margin: 0 20px 0 0;
}
[dir=rtl] .wp-block-file > a:not([class]),
[dir=rtl] .wp-block-file .wp-block-file__textlink {
  margin-left: 20px;
  margin-right: 0;
}
.wp-block-file .wp-block-file__button-richtext-wrapper {
  display: inline-block;
  margin: 0;
}
.wp-block-file .wp-block-file__button,
.wp-block-file a.wp-block-file__button {
  display: inline-block;
  padding: 0 27px;
  letter-spacing: -0.15px;
  position: relative;
  white-space: nowrap;
  -webkit-border-radius: 25px;
  border-radius: 25px;
  text-align: center;
  border-width: 0;
  border-style: solid;
  -webkit-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -moz-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -ms-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -o-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -webkit-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out;
  -moz-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out;
  -ms-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out;
  -o-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out;
  transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out;
}
.wp-block-file .wp-block-file__button[disabled],
.wp-block-file a.wp-block-file__button[disabled] {
  pointer-events: none;
  opacity: 0.3;
}
.wp-block-file .wp-block-file__button,
.wp-block-file a.wp-block-file__button,
.wp-block-file .wp-block-file__button:hover,
.wp-block-file a.wp-block-file__button:hover,
.wp-block-file .wp-block-file__button:focus,
.wp-block-file a.wp-block-file__button:focus,
.wp-block-file .wp-block-file__button:active,
.wp-block-file a.wp-block-file__button:active {
  margin: 0;
  border-width: 0;
  border-style: solid;
  -webkit-box-shadow: none;
  box-shadow: none;
  opacity: 1;
}
.wp-block-file .wp-block-file__button:before,
.wp-block-file a.wp-block-file__button:before,
.wp-block-file .wp-block-file__button:hover:before,
.wp-block-file a.wp-block-file__button:hover:before,
.wp-block-file .wp-block-file__button:focus:before,
.wp-block-file a.wp-block-file__button:focus:before,
.wp-block-file .wp-block-file__button:active:before,
.wp-block-file a.wp-block-file__button:active:before,
.wp-block-file .wp-block-file__button:after,
.wp-block-file a.wp-block-file__button:after,
.wp-block-file .wp-block-file__button:hover:after,
.wp-block-file a.wp-block-file__button:hover:after,
.wp-block-file .wp-block-file__button:focus:after,
.wp-block-file a.wp-block-file__button:focus:after,
.wp-block-file .wp-block-file__button:active:after,
.wp-block-file a.wp-block-file__button:active:after {
  content: none !important;
}
/** === Video === */
.wp-block-video {
  margin: 0 0 20px;
  text-align: center;
}
.wp-block-video video {
  display: inline-block;
}
.wp-block-video figcaption {
  margin: 0;
  padding: 6px 0 15px;
  text-align: center;
}
/** === Code === */
.wp-block-code {
  background-color: transparent;
  color: inherit;
  font-family: monospace;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: 1px;
  margin: 0 0 20px;
  border-width: 0;
  border-style: solid;
  -webkit-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.wp-block-code code,
.wp-block-code .editor-plain-text {
  background-color: inherit;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: inherit;
  display: block;
}
/** === Custom HTML === */
.wp-block-html {
  margin: 0 0 20px;
}
.wp-block-html .editor-plain-text {
  display: block;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
}
.wp-block-html iframe {
  display: block;
}
/** === Preformatted === */
.wp-block-preformatted {
  margin: 0 0 20px;
}
.wp-block-preformatted pre {
  color: inherit;
  font-family: monospace;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: 1px;
}
/** === Pullquote === */
.wp-block-pullquote {
  margin: 0 0 20px;
  padding: 50px 0;
}
.wp-block-pullquote.alignleft {
  margin-right: 2em;
}
.wp-block-pullquote.alignright {
  margin-left: 2em;
}
.wp-block-pullquote.alignleft {
  margin-right: 2em;
}
.wp-block-pullquote.alignright {
  margin-left: 2em;
}
.wp-block-pullquote:not(.is-style-solid-color) {
  border-top-width: 4px;
  border-top-style: solid;
  border-bottom-width: 4px;
  border-bottom-style: solid;
}
.wp-block-pullquote.is-style-solid-color {
  padding-left: 50px;
  padding-right: 50px;
}
.wp-block-pullquote.is-style-solid-color blockquote {
  max-width: 100%;
}
.wp-block-pullquote blockquote,
.wp-block-pullquote.alignleft blockquote,
.wp-block-pullquote.alignright blockquote,
.wp-block-pullquote.is-style-solid-color blockquote {
  margin: 0;
  padding: 0;
  hyphens: auto;
  word-break: break-word;
  border-width: 0;
  border-style: solid;
  text-align: center;
}
.wp-block-pullquote blockquote:before,
.wp-block-pullquote.alignleft blockquote:before,
.wp-block-pullquote.alignright blockquote:before,
.wp-block-pullquote.is-style-solid-color blockquote:before {
  content: none;
}
.wp-block-pullquote blockquote,
.wp-block-pullquote.alignleft blockquote,
.wp-block-pullquote.alignright blockquote,
.wp-block-pullquote.is-style-solid-color blockquote,
.wp-block-pullquote blockquote p,
.wp-block-pullquote.alignleft blockquote p,
.wp-block-pullquote.alignright blockquote p,
.wp-block-pullquote.is-style-solid-color blockquote p,
.wp-block-pullquote blockquote .editor-rich-text p,
.wp-block-pullquote.alignleft blockquote .editor-rich-text p,
.wp-block-pullquote.alignright blockquote .editor-rich-text p,
.wp-block-pullquote.is-style-solid-color blockquote .editor-rich-text p,
.wp-block-pullquote blockquote .editor-rich-text__tinymce,
.wp-block-pullquote.alignleft blockquote .editor-rich-text__tinymce,
.wp-block-pullquote.alignright blockquote .editor-rich-text__tinymce,
.wp-block-pullquote.is-style-solid-color blockquote .editor-rich-text__tinymce,
.wp-block-pullquote blockquote .editor-rich-text__tinymce p,
.wp-block-pullquote.alignleft blockquote .editor-rich-text__tinymce p,
.wp-block-pullquote.alignright blockquote .editor-rich-text__tinymce p,
.wp-block-pullquote.is-style-solid-color blockquote .editor-rich-text__tinymce p,
.wp-block-pullquote blockquote cite,
.wp-block-pullquote.alignleft blockquote cite,
.wp-block-pullquote.alignright blockquote cite,
.wp-block-pullquote.is-style-solid-color blockquote cite,
.wp-block-pullquote blockquote .wp-block-pullquote__citation,
.wp-block-pullquote.alignleft blockquote .wp-block-pullquote__citation,
.wp-block-pullquote.alignright blockquote .wp-block-pullquote__citation,
.wp-block-pullquote.is-style-solid-color blockquote .wp-block-pullquote__citation {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  text-transform: inherit;
}
.wp-block-pullquote blockquote p:last-of-type,
.wp-block-pullquote.alignleft blockquote p:last-of-type,
.wp-block-pullquote.alignright blockquote p:last-of-type,
.wp-block-pullquote.is-style-solid-color blockquote p:last-of-type,
.wp-block-pullquote blockquote > .editor-rich-text p:last-of-type,
.wp-block-pullquote.alignleft blockquote > .editor-rich-text p:last-of-type,
.wp-block-pullquote.alignright blockquote > .editor-rich-text p:last-of-type,
.wp-block-pullquote.is-style-solid-color blockquote > .editor-rich-text p:last-of-type {
  margin: 0;
}
.wp-block-pullquote blockquote cite,
.wp-block-pullquote.alignleft blockquote cite,
.wp-block-pullquote.alignright blockquote cite,
.wp-block-pullquote.is-style-solid-color blockquote cite,
.wp-block-pullquote blockquote .wp-block-pullquote__citation,
.wp-block-pullquote.alignleft blockquote .wp-block-pullquote__citation,
.wp-block-pullquote.alignright blockquote .wp-block-pullquote__citation,
.wp-block-pullquote.is-style-solid-color blockquote .wp-block-pullquote__citation {
  display: block;
  font-style: italic;
  margin-top: 15px;
}
/** === Table === */
.wp-block-table {
  border-spacing: 0;
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 20px;
  /* don't touch */
  /* for gutenberg start */
  /* for gutenberg end */
}
.wp-block-table th,
.wp-block-table td {
  border-width: 0;
  /* for gutenberg */
  padding: 10px;
  border-width: 1px;
  border-style: solid;
}
.wp-block-table.is-style-stripes {
  border-width: 0;
  border-style: solid;
  border-collapse: collapse;
}
.wp-block-table.is-style-stripes tr:nth-child(odd) {
  background-color: transparent !important;
}
.wp-block-table caption {
  text-align: center;
  padding: 20px;
}
.wp-block-table .wp-block-table__cell-content {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  padding: 0;
}
/** === Verse === */
.wp-block-verse {
  margin: 0 0 20px;
  padding: 0;
}
.wp-block-verse pre {
  color: inherit;
  font-family: monospace;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: 1px;
  padding: 0;
}
/** === Spacer === */
.wp-block-spacer {
  clear: both;
}
/** === Button === */
.wp-block-button {
  display: block;
  margin: 0 0 20px;
}
.wp-block-button.alignleft {
  margin-right: 2em;
}
.wp-block-button.alignright {
  margin-left: 2em;
}
.wp-block-button .wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link {
  display: inline-block;
  padding: 0 27px;
  letter-spacing: -0.15px;
  position: relative;
  white-space: nowrap;
  -webkit-border-radius: 25px;
  border-radius: 25px;
  text-align: center;
  border-width: 0;
  border-style: solid;
  -webkit-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -moz-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -ms-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -o-transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  transition: color .4s ease, background-color .4s ease, opacity .4s ease;
  -webkit-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out, box-shadow .3s ease-in-out, border-radius .3s ease-in-out;
  -moz-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out, box-shadow .3s ease-in-out, border-radius .3s ease-in-out;
  -ms-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out, box-shadow .3s ease-in-out, border-radius .3s ease-in-out;
  -o-transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out, box-shadow .3s ease-in-out, border-radius .3s ease-in-out;
  transition: color .3s ease-in-out, background-color .3s ease-in-out, border-color .3s ease-in-out, box-shadow .3s ease-in-out, border-radius .3s ease-in-out;
}
.wp-block-button .wp-block-button__link[disabled],
.wp-block-button.is-style-outline .wp-block-button__link[disabled] {
  pointer-events: none;
  opacity: 0.3;
}
.wp-block-button .wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link,
.wp-block-button .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus,
.wp-block-button.is-style-outline .wp-block-button__link:focus,
.wp-block-button .wp-block-button__link:active,
.wp-block-button.is-style-outline .wp-block-button__link:active {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.wp-block-button .wp-block-button__link:before,
.wp-block-button.is-style-outline .wp-block-button__link:before,
.wp-block-button .wp-block-button__link:hover:before,
.wp-block-button.is-style-outline .wp-block-button__link:hover:before,
.wp-block-button .wp-block-button__link:focus:before,
.wp-block-button.is-style-outline .wp-block-button__link:focus:before,
.wp-block-button .wp-block-button__link:active:before,
.wp-block-button.is-style-outline .wp-block-button__link:active:before,
.wp-block-button .wp-block-button__link:after,
.wp-block-button.is-style-outline .wp-block-button__link:after,
.wp-block-button .wp-block-button__link:hover:after,
.wp-block-button.is-style-outline .wp-block-button__link:hover:after,
.wp-block-button .wp-block-button__link:focus:after,
.wp-block-button.is-style-outline .wp-block-button__link:focus:after,
.wp-block-button .wp-block-button__link:active:after,
.wp-block-button.is-style-outline .wp-block-button__link:active:after {
  content: none !important;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link {
  border-width: 0;
  border-style: solid;
}
.wp-block-button.is-style-outline .wp-block-button__link {
  border-width: 1px;
  border-style: solid;
}
.wp-block-button.is-style-outline .wp-block-button__link.has-text-color {
  border-color: currentColor !important;
}
.wp-block-button.is-style-squared .wp-block-button__link {
  -webkit-border-radius: 0;
  border-radius: 0;
}
/** === Columns === */
.wp-block-columns .wp-block-column {
  margin-bottom: 20px;
}
.wp-block-columns .wp-block-column > p,
.wp-block-columns .wp-block-column .wp-block-paragraph {
  margin-bottom: 0;
}
.wp-block-columns .wp-block-column > p:not(.has-background),
.wp-block-columns .wp-block-column .wp-block-paragraph:not(.has-background) {
  padding-bottom: 0;
}
/** === Media Text === */
.wp-block-media-text {
  margin: 0 0 20px;
}
@media (max-width: 600px) {
  .wp-block-media-text {
    display: block;
  }
  .wp-block-media-text .wp-block-media-text__media {
    margin: 0 0 20px;
  }
  .wp-block-media-text .wp-block-media-text__content {
    padding: 0;
  }
}
.wp-block-media-text .wp-block-media-text__content p:last-of-type {
  margin: 0;
  padding: 0;
}
/** === Separator === */
.wp-block-separator,
.wp-block-separator.is-style-wide,
.wp-block-separator.is-style-dots {
  max-width: 100%;
  min-height: 1px;
  margin: 40px auto;
  position: relative;
  border-width: 0;
  border-style: solid;
}
.wp-block-separator:before {
  content: '';
  width: 30%;
  height: 1px;
  margin: auto !important;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.wp-block-separator.is-style-wide:before {
  width: 100%;
}
.wp-block-separator.is-style-dots {
  height: 10px;
  line-height: 10px;
  text-align: center;
}
.wp-block-separator.is-style-dots:before {
  content: "\00b7 \00b7 \00b7";
  font-family: serif;
  font-size: 45px;
  line-height: 10px;
  letter-spacing: 1.4em;
  width: 100%;
  height: 10px;
  padding: 0 0 0 1.4em;
}
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: 100%;
}
/** === Archives, Categories === */
ul.wp-block-archives,
ul.wp-block-categories,
ul.wp-block-categories__list {
  margin-bottom: 20px;
  padding: 0;
  position: relative;
}
div.wp-block ul.wp-block-archives,
div.wp-block ul.wp-block-categories,
div.wp-block ul.wp-block-categories__list {
  margin-bottom: 20px;
  padding: 0;
  position: relative;
}
div.wp-block ul.wp-block-archives ul,
div.wp-block ul.wp-block-categories ul,
div.wp-block ul.wp-block-categories__list ul {
  margin-bottom: 0;
  padding: 10px 0 0;
}
div.wp-block-archives.wp-block-archives-dropdown,
div.wp-block-categories.wp-block-categories-dropdown {
  margin-bottom: 20px;
}
div.wp-block-archives.wp-block-archives-dropdown label,
div.wp-block-categories.wp-block-categories-dropdown label {
  display: none;
}
/** === Latest Posts === */
.wp-block-latest-posts {
  margin-bottom: 20px;
  padding: 0;
  list-style-type: none !important;
}
.wp-block-latest-posts ul {
  list-style-type: none !important;
}
.wp-block-latest-posts li:before {
  content: none !important;
}
.wp-block-latest-posts .wp-block-latest-posts__post-date {
  display: block;
  margin: -3px 0 0;
}
.wp-block-latest-posts.is-grid {
  margin-left: -20px;
  margin-right: -20px;
  margin-top: -20px;
}
.wp-block-latest-posts.is-grid li {
  margin-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
}
div.wp-block .wp-block-latest-posts {
  margin-bottom: 20px;
  padding: 0;
}
div.wp-block .wp-block-latest-posts ul {
  margin-bottom: 0;
  padding: 10px 0 0;
}
/** === Latest Comments === */
.wp-block-latest-comments {
  list-style: none;
  margin-bottom: 20px;
}
.wp-block-latest-comments .wp-block-latest-comments__comment {
  min-height: auto;
  margin: 25px 0 0;
  padding: 0;
  overflow: hidden;
}
.wp-block-latest-comments .wp-block-latest-comments__comment:first-child {
  margin: 0;
}
.wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment {
  min-height: 48px;
}
.wp-block-latest-comments .wp-block-latest-comments__comment-avatar {
  width: 48px;
  height: 48px;
  margin: 0 17px 0 0;
  float: left;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
[dir=rtl] .wp-block-latest-comments .wp-block-latest-comments__comment-avatar {
  margin: 0 0 0 17px;
  float: right;
}
.wp-block-latest-comments article {
  display: block;
  padding: 0 0 0 3px;
  overflow: hidden;
}
[dir=rtl] .wp-block-latest-comments article {
  margin: 0 3px 0 0;
}
.wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment-meta,
.wp-block-latest-comments .wp-block-latest-comments__comment-meta {
  margin: 0;
}
.wp-block-latest-comments .wp-block-latest-comments__comment-date {
  margin: -3px 0 0;
}
.wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment-excerpt,
.wp-block-latest-comments .wp-block-latest-comments__comment-excerpt {
  margin: 5px 0 0;
}
.wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment-excerpt p,
.wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p {
  margin: 0;
  padding: 0 0 20px;
}
.wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment-excerpt > *:last-child,
.wp-block-latest-comments .wp-block-latest-comments__comment-excerpt > *:last-child {
  margin: 0;
  padding: 0;
}
.wp-block-latest-comments.aligncenter .wp-block-latest-comments__comment-avatar {
  margin: 0 auto 10px;
  float: none;
}
.wp-block-latest-comments.aligncenter article {
  padding: 0 3px;
}
.wp-block-latest-comments.aligncenter .wp-block-latest-comments__comment-excerpt {
  text-align: center;
}
/** === Classic Editor === */
.wp-caption dd {
  margin: 0;
  padding: 10px 5px;
  text-align: center;
}
div.wp-block .wp-block-freeform.block-library-rich-text__tinymce h1 a,
div.wp-block .wp-block-freeform.block-library-rich-text__tinymce h2 a,
div.wp-block .wp-block-freeform.block-library-rich-text__tinymce h3 a,
div.wp-block .wp-block-freeform.block-library-rich-text__tinymce h4 a,
div.wp-block .wp-block-freeform.block-library-rich-text__tinymce h5 a,
div.wp-block .wp-block-freeform.block-library-rich-text__tinymce h6 a {
  color: inherit;
}
.wp-block-freeform.mce-content-body > p {
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: 20px;
}
.wp-block-freeform.mce-content-body > h1,
.wp-block-freeform.mce-content-body > h2,
.wp-block-freeform.mce-content-body > h3,
.wp-block-freeform.mce-content-body > h4,
.wp-block-freeform.mce-content-body > h5,
.wp-block-freeform.mce-content-body > h6,
.wp-block-freeform.mce-content-body > table,
.wp-block-freeform.mce-content-body > blockquote,
.wp-block-freeform.mce-content-body > ul,
.wp-block-freeform.mce-content-body > ol,
.wp-block-freeform.mce-content-body > pre,
.wp-block-freeform.mce-content-body > address {
  margin-top: 0;
  margin-bottom: 20px;
}
.wp-block-freeform.mce-content-body > dl {
  margin-top: 0;
  margin-bottom: 0;
}
.wp-block-freeform.mce-content-body .alignleft,
.wp-block-freeform.mce-content-body .alignright,
.wp-block-freeform.mce-content-body .aligncenter,
.wp-block-freeform.mce-content-body .alignnon {
  margin-top: 0;
  margin-bottom: 22px;
}
.wp-block-freeform abbr,
.wp-block-freeform acronym {
  text-decoration: underline;
}
.wp-block-freeform pre,
.wp-block-freeform code,
.wp-block-freeform tt,
.wp-block-freeform kbd,
.wp-block-freeform samp {
  background-color: transparent;
  color: inherit;
  font-family: monospace;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
  letter-spacing: 1px;
  margin: 0;
  padding: 0;
}
.wp-block-freeform dl {
  max-width: 100%;
  display: block;
  overflow: hidden;
}
.wp-block-freeform dt {
  display: block;
  font-weight: bold;
  overflow: hidden;
}
.wp-block-freeform dd {
  display: block;
  overflow: hidden;
  margin: 0 0 20px;
}
.wp-block-freeform hr {
  margin: 40px 0;
  border-top-width: 0;
  border-top-style: solid;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.wp-block-freeform blockquote {
  margin: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 0;
  margin: 0 0 20px;
  /* don't touch */
  position: relative;
  quotes: none;
  border-width: 0;
  border-style: solid;
}
.wp-block-freeform blockquote p:last-of-type {
  margin: 0;
  padding: 0;
}
.wp-block-freeform blockquote cite {
  display: block;
  margin-top: 10px;
}
.wp-block-freeform blockquote::before {
  content: "“";
  padding-right: 10px;
  font-family: "Quicksand", Arial, Helvetica, "Nimbus Sans L", sans-serif;
  font-weight: bold;
  font-size: 83px;
  height: 22px;
  line-height: 53px;
  float: left;
  display: inline-block;
}
.wp-block-freeform blockquote cite {
  display: block;
}
.wp-block-freeform .mce-item-table,
.wp-block-freeform table {
  border-spacing: 0;
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 20px;
  /* don't touch */
  /* for gutenberg start */
  /* for gutenberg end */
}
.wp-block-freeform .mce-item-table th,
.wp-block-freeform table th {
  font-weight: inherit;
  text-align: left;
}
[dir=rtl] .wp-block-freeform .mce-item-table th,
[dir=rtl] .wp-block-freeform table th {
  text-align: right;
}
.wp-block-freeform .mce-item-table th,
.wp-block-freeform table th,
.wp-block-freeform .mce-item-table td,
.wp-block-freeform table td {
  border-width: 0;
  /* for gutenberg */
  padding: 10px;
  border-width: 1px;
  border-style: solid;
}
.wp-block-freeform .mce-item-table.is-style-stripes,
.wp-block-freeform table.is-style-stripes {
  border-width: 0;
  border-style: solid;
  border-collapse: collapse;
}
.wp-block-freeform .mce-item-table.is-style-stripes tr:nth-child(odd),
.wp-block-freeform table.is-style-stripes tr:nth-child(odd) {
  background-color: transparent !important;
}
.wp-block-freeform .mce-item-table caption,
.wp-block-freeform table caption {
  text-align: center;
  padding: 20px;
}
.wp-block-freeform .gallery {
  position: relative;
  margin: 0 -1% 20px;
}
.wp-block-freeform .gallery:after {
  content: '.';
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
  overflow: hidden;
}
.wp-block-freeform .gallery img {
  width: 100%;
  border: none;
}
.wp-block-freeform .gallery .gallery-item {
  position: relative;
  float: left;
  margin: 0 1% 20px;
}
.wp-block-freeform .gallery .gallery-item:after {
  content: '.';
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
  overflow: hidden;
}
.wp-block-freeform .gallery .gallery-item .wp-caption-text {
  margin: 0;
  padding: 10px 5px;
  text-align: center;
}
.wp-block-freeform .gallery.gallery-columns-1 .gallery-item {
  width: 98%;
  position: relative;
  float: none;
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-2 .gallery-item {
  width: 48%;
}
.wp-block-freeform .gallery.gallery-columns-2 .gallery-item:nth-child(2n+1) {
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-3 .gallery-item {
  width: 31.333%;
}
.wp-block-freeform .gallery.gallery-columns-3 .gallery-item:nth-child(3n+1) {
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-4 .gallery-item {
  width: 23%;
}
.wp-block-freeform .gallery.gallery-columns-4 .gallery-item:nth-child(4n+1) {
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-5 .gallery-item {
  width: 18%;
}
.wp-block-freeform .gallery.gallery-columns-5 .gallery-item:nth-child(5n+1) {
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-6 .gallery-item {
  width: 14.667%;
}
.wp-block-freeform .gallery.gallery-columns-6 .gallery-item:nth-child(6n+1) {
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-7 .gallery-item {
  width: 12.286%;
}
.wp-block-freeform .gallery.gallery-columns-7 .gallery-item:nth-child(7n+1) {
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-8 .gallery-item {
  width: 10.5%;
}
.wp-block-freeform .gallery.gallery-columns-8 .gallery-item:nth-child(8n+1) {
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-9 .gallery-item {
  width: 9.111%;
}
.wp-block-freeform .gallery.gallery-columns-9 .gallery-item:nth-child(9n+1) {
  clear: both;
}
/** === Vimeo Block === */
.wp-block-embed-vimeo .wp-block-embed__wrapper {
  position: relative;
  max-width: 100%;
  width: 100%;
  height: 0;
  padding-bottom: 55.8%;
  margin-bottom: 20px;
  overflow: hidden;
}
.wp-block-embed-vimeo .wp-block-embed__wrapper iframe {
  width: 100%;
  max-width: auto;
  height: 100%;
  margin-bottom: 0;
  position: absolute;
  left: 0;
  top: 0;
}
[class*=wp-block-].alignleft,
.wp-block-image .alignleft {
  margin-right: 2em;
}
[class*=wp-block-].alignright,
.wp-block-image .alignright {
  margin-left: 2em;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RoZW1lLWZyYW1ld29yay90aGVtZS1zdHlsZS9jc3MvbGVzcy9nZW5lcmFsLmxlc3MiLCJtb2R1bGUtc3R5bGUubGVzcyIsImZyb250ZW5kLXN0eWxlLmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa1ZHO0VBQXdCLGlCQUFBOztBQUNuQixxQkFBQztFQUFZLFNBQVMsRUFBVDtFQUFlLGtCQUFBO0VBQ3pCLE1BQUE7RUFBVSxTQUFBO0VBQWEsWUFBQTtFQUM3QixVQUFBO0VBQWMsWUFBQTtFQUFnQixZQUFBO0VBQy9CLFlBQUE7RUFBZ0IsY0FBQTtFQWhPUCx1QkFBQTtFQUdKLHlCQUFBOzs7Ozs7Ozs7Ozs7OztBQ2pHUixTQUFDO0VBQ0EsV0FBQTs7O0FBTUY7RUFDQyxVQUFBO0VBQ0EscUJBQUE7RUFDQSxtQ0FBQTs7QUFJRyxHQUFDO0VBQ0csWUFBQTs7QUFHSixHQUFDO0VBQ0csV0FBQTs7QUFJUixHQUFHLFNBQ0YsR0FPQztBQVJGLEdBQUcsU0FFRixHQU1DO0FBUkYsR0FBRyxTQUdGLEdBS0M7QUFSRixHQUFHLFNBSUYsR0FJQztBQVJGLEdBQUcsU0FLRixHQUdDO0FBUkYsR0FBRyxTQU1GLEdBRUM7QUFSRixHQUFHLFNBT0YsSUFDQztFQUNDLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7O0FBYkgsR0FBRyxTQWlCRjtBQWpCRCxHQUFHLFNBa0JGO0VBQ0MsaUJBQUE7O0FBbkJGLEdBQUcsU0FzQkYsMkJBRUM7QUF4QkYsR0FBRyxTQXVCRixrQ0FDQztFQUNDLDZCQUFBO0VBQ0EsY0FBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7O0FBS0gsS0FDQztFQUNDLGNBQUE7O0FBSUY7RUQ0VmMsZ0JBQUE7RUFBa0IsbUJBQUE7RUFFN0Is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RUFDQSxXQUFBO0VBQ0EsU0FBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUQzbkNRLGdCQUFBOztBQ29uQ1YscUJBQ0MseUJBU0M7RUFDQyxXQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7O0FDeHRDSCxrQkFBa0I7QUFDbEIsZUFBZ0I7RUFDZixpQkFBQTs7QUFHRCxrQkFBa0I7QUFDbEIsZUFBZ0I7RUFDZixnQkFBQSIsInNvdXJjZXNDb250ZW50IjpbIkBpbnB1dF9wYWQ6IDIycHg7XHJcbkBpbnB1dF9oZWlnaHQ6IDQ2cHg7XHJcblxyXG5AbGluZV9oZWlnaHRfcGFkOiAyMHB4O1xyXG5AZGVmYXVsdF9saXN0X3RvcF9wYWQ6IDEwcHg7XHJcbkBkZWZhdWx0X2xpc3RfbGVmdF9wYWQ6IDIwcHg7XHJcbkBibG9ja3NfaG9yX3BhZDogMTVweDtcclxuQGNvbnRfc2lkZWJhcl9wYWQ6IDQwcHg7XHJcbkBjb250X3ZlcnRfcGFkOiA1JTtcclxuXHJcbkBiZHJzX3dpZHRoOiA0cHg7XHJcblxyXG5AYnV0X2JkcnNfd2lkdGg6IDI1cHg7XHJcbkBidXRfYmRfd2lkdGg6IDA7XHJcblxyXG5AY29sX21hcjogMSU7XHJcbkByZXNwX2Jsb2Nrc19wYWQ6IDU1LjglO1xyXG5cclxuQHByZWxvYWRlcl9ibG9nX2RlZmF1bHRfcGFkOiA1NS44JTtcclxuQHByZWxvYWRlcl9ibG9nX21hc29ucnlfcGFkOiA2NC42JTtcclxuQHByZWxvYWRlcl9ibG9nX3RpbWVsaW5lX3BhZDogNTUuOCU7XHJcbkBwcmVsb2FkZXJfb3Blbl9wb3N0X3BhZDogNTUuOCU7XHJcbkBwcmVsb2FkZXJfcG9ydGZvbGlvX2dyaWRfcGFkOiA2Ny4yJTtcclxuQHByZWxvYWRlcl9vcGVuX3Byb2plY3RfcGFkOiA1NS44JTtcclxuQHByZWxvYWRlcl9wb3N0c19zbGlkZXJfcGFkOiA2Ny4yJTtcclxuQHByZWxvYWRlcl9hcmNoaXZlc19wYWQ6IDEwMCU7XHJcblxyXG5Ac2lkZWJhcl93aWR0aDogMjYlO1xyXG5AY29udGVudF93aWR0aDogMTAwJSAtIEBzaWRlYmFyX3dpZHRoO1xyXG5cclxuXHJcbkBtaWRfbmF2X2Ryb3Bkb3duX3dpZHRoOiAyMDdweDtcclxuQG1pZF9uYXZfZHJvcGRvd25fcGFkX3RvcDogMTBweDtcclxuQG1pZF9uYXZfZHJvcGRvd25fcGFkX2JvdDogMTVweDtcclxuQG1pZF9uYXZfZHJvcGRvd25fdmVydF9tYXJfc3RhcnQ6IDIwcHg7XHJcbkBtaWRfbmF2X2Ryb3Bkb3duX3ZlcnRfbWFyX2VuZDogMTBweDtcclxuQG1pZF9uYXZfZHJvcGRvd25faG9yX21hcl9zdGFydDogMjBweDtcclxuQG1pZF9uYXZfZHJvcGRvd25faG9yX21hcl9lbmQ6IDJweDtcclxuXHJcbkBib3RfbmF2X2Ryb3Bkb3duX3dpZHRoOiAxODRweDtcclxuQGJvdF9uYXZfZHJvcGRvd25fcGFkX3RvcDogMTBweDtcclxuQGJvdF9uYXZfZHJvcGRvd25fcGFkX2JvdDogMjBweDtcclxuQGJvdF9uYXZfZHJvcGRvd25fdmVydF9tYXJfc3RhcnQ6IDIwcHg7XHJcbkBib3RfbmF2X2Ryb3Bkb3duX3ZlcnRfbWFyX2VuZDogMHB4O1xyXG5AYm90X25hdl9kcm9wZG93bl9ob3JfbWFyX3N0YXJ0OiAyMHB4O1xyXG5AYm90X25hdl9kcm9wZG93bl9ob3JfbWFyX2VuZDogMnB4O1xyXG5cclxuQHRvcF9uYXZfZHJvcGRvd25fd2lkdGg6IDIwMHB4O1xyXG5AdG9wX25hdl9kcm9wZG93bl9wYWRfdG9wOiAxMHB4O1xyXG5AdG9wX25hdl9kcm9wZG93bl9wYWRfYm90OiAxMHB4O1xyXG5AdG9wX25hdl9kcm9wZG93bl92ZXJ0X21hcl9zdGFydDogMjBweDtcclxuQHRvcF9uYXZfZHJvcGRvd25fdmVydF9tYXJfZW5kOiAwcHg7XHJcbkB0b3BfbmF2X2Ryb3Bkb3duX2hvcl9tYXJfc3RhcnQ6IDIwcHg7XHJcbkB0b3BfbmF2X2Ryb3Bkb3duX2hvcl9tYXJfZW5kOiAycHg7XHJcblxyXG5AY29udF93aWR0aF9kZWY6IDk4MHB4O1xyXG5AY29udF93aWR0aF9sYXJnZTogMTIwMHB4O1xyXG5AY29udF93aWR0aF9mdWxsOiAxMDAlO1xyXG5AY29udF93aWR0aF9taW46IDMyMHB4O1xyXG5cclxuQGlucHV0X3RleHQ6IGUoJ2lucHV0Om5vdChbdHlwZT1idXR0b25dKTpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9ZmlsZV0pOm5vdChbdHlwZT1oaWRkZW5dKTpub3QoW3R5cGU9aW1hZ2VdKTpub3QoW3R5cGU9cmFkaW9dKTpub3QoW3R5cGU9cmVzZXRdKTpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWNvbG9yXSk6bm90KFt0eXBlPXJhbmdlXSknKTtcclxuXHJcbkBtb25pdG9yX2xhcmdlOiB+JyhtaW4td2lkdGg6IDE0NDBweCknO1xyXG5AbW9uaXRvcl9tZWRpdW06IH4nKG1pbi13aWR0aDogMTAyNXB4KSc7XHJcbkBtb25pdG9yX3RhYmxldF85NTBfbWluOiB+JyhtaW4td2lkdGg6IDk1MHB4KSc7XHJcbkBtb25pdG9yX2xhcmdlX21heDogficobWF4LXdpZHRoOiAxNDQwcHgpJztcclxuQG1vbml0b3JfdGFibGV0OiB+JyhtYXgtd2lkdGg6IDEwMjRweCknO1xyXG5AbW9uaXRvcl90YWJsZXRfOTUwOiB+JyhtYXgtd2lkdGg6IDk1MHB4KSc7XHJcbkBtb25pdG9yX3RhYmxldF9zbWFsbDogficobWF4LXdpZHRoOiA3NjhweCknO1xyXG5AbW9uaXRvcl90YWJsZXRfNjAwOiB+JyhtYXgtd2lkdGg6IDYwMHB4KSc7XHJcbkBtb25pdG9yX3Bob25lOiB+JyhtYXgtd2lkdGg6IDU0MHB4KSc7XHJcbkBtb25pdG9yX3Bob25lX3NtYWxsOiB+JyhtYXgtd2lkdGg6IDMyMHB4KSc7XHJcblxyXG5cclxuXHJcbi5mbCAoKSB7XHJcblx0ZmxvYXQ6bGVmdDtcclxufVxyXG5cclxuLmZyICgpIHtcclxuXHRmbG9hdDpyaWdodDtcclxufVxyXG5cclxuLmRuICgpIHtcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcbi50YWwgKCkge1xyXG5cdHRleHQtYWxpZ246bGVmdDtcclxufVxyXG5cclxuLnRhYyAoKSB7XHJcblx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcbn1cclxuXHJcbi50YXIgKCkge1xyXG5cdHRleHQtYWxpZ246cmlnaHQ7XHJcbn1cclxuXHJcbi5jbCAoKSB7XHJcblx0Y2xlYXI6Ym90aDtcclxufVxyXG5cclxuLm92aCAoKSB7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG59XHJcblxyXG4ubTBhICgpIHtcclxuXHRtYXJnaW46MCBhdXRvO1xyXG59XHJcblxyXG4uYmQgKEB3OjFweDsgQHQ6c29saWQpIHtcclxuXHRib3JkZXItd2lkdGg6QHc7XHJcblx0Ym9yZGVyLXN0eWxlOkB0O1xyXG59XHJcblxyXG4uYmR0IChAdzoxcHg7IEB0OnNvbGlkKSB7XHJcblx0Ym9yZGVyLXRvcC13aWR0aDpAdztcclxuXHRib3JkZXItdG9wLXN0eWxlOkB0O1xyXG59XHJcblxyXG4uYmRiIChAdzoxcHg7IEB0OnNvbGlkKSB7XHJcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDpAdztcclxuXHRib3JkZXItYm90dG9tLXN0eWxlOkB0O1xyXG59XHJcblxyXG4uYmRyIChAdzoxcHg7IEB0OnNvbGlkKSB7XHJcblx0Ym9yZGVyLXJpZ2h0LXdpZHRoOkB3O1xyXG5cdGJvcmRlci1yaWdodC1zdHlsZTpAdDtcclxufVxyXG5cclxuLmJkbCAoQHc6MXB4OyBAdDpzb2xpZCkge1xyXG5cdGJvcmRlci1sZWZ0LXdpZHRoOkB3O1xyXG5cdGJvcmRlci1sZWZ0LXN0eWxlOkB0O1xyXG59XHJcblxyXG4uY29sb3Jfd2hpdGVfb3BhY2l0eSAoQG9wOi41KSB7XHJcblx0Y29sb3I6cmdiYSgyNTUsIDI1NSwgMjU1LCBAb3ApO1xyXG59XHJcblxyXG4uYmdfd2hpdGVfb3BhY2l0eSAoQG9wOi41KSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwgMjU1LCAyNTUsIEBvcCk7XHJcbn1cclxuXHJcbi5mdWxsd2lkdGhfaW5fYmxvY2sgKCkge1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0aGVpZ2h0OjEwMCU7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0dG9wOjA7XHJcblx0bGVmdDowO1xyXG59XHJcblxyXG4ub3AgKEBvcDouNSkge1xyXG5cdG9wYWNpdHk6QG9wO1xyXG59XHJcblxyXG4uZGlzcGxheV9mbGV4ICgpIHtcclxuXHRkaXNwbGF5Oi13ZWJraXQtZmxleDtcclxuXHRkaXNwbGF5Oi1tb3otZmxleDtcclxuXHRkaXNwbGF5Oi1tcy1mbGV4O1xyXG5cdGRpc3BsYXk6ZmxleDtcclxufVxyXG5cclxuLmRpc3BsYXlfaW5saW5lX2ZsZXggKCkge1xyXG5cdGRpc3BsYXk6LXdlYmtpdC1pbmxpbmUtZmxleDtcclxuXHRkaXNwbGF5Oi1tb3otaW5saW5lLWZsZXg7XHJcblx0ZGlzcGxheTotbXMtaW5saW5lLWZsZXg7XHJcblx0ZGlzcGxheTppbmxpbmUtZmxleDtcclxufVxyXG5cclxuLmZsZXhfZGlyZWN0aW9uIChAZDpyb3cpIHtcclxuXHQtd2Via2l0LWZsZXgtZGlyZWN0aW9uOkBkO1xyXG5cdC1tb3otZmxleC1kaXJlY3Rpb246QGQ7XHJcblx0LW1zLWZsZXgtZGlyZWN0aW9uOkBkO1xyXG5cdGZsZXgtZGlyZWN0aW9uOkBkO1xyXG59XHJcblxyXG4uZmxleF93cmFwIChAZDpub3dyYXApIHtcclxuXHQtd2Via2l0LWZsZXgtd3JhcDpAZDtcclxuXHQtbW96LWZsZXgtd3JhcDpAZDtcclxuXHQtbXMtZmxleC13cmFwOkBkO1xyXG5cdGZsZXgtd3JhcDpAZDtcclxufVxyXG5cclxuLmp1c3RpZnlfY29udGVudCAoQGQ6ZmxleC1zdGFydCkge1xyXG5cdC13ZWJraXQtanVzdGlmeS1jb250ZW50OkBkO1xyXG5cdC1tb3otanVzdGlmeS1jb250ZW50OkBkO1xyXG5cdC1tcy1qdXN0aWZ5LWNvbnRlbnQ6QGQ7XHJcblx0anVzdGlmeS1jb250ZW50OkBkO1xyXG59XHJcblxyXG4uYWxpZ25faXRlbXMgKEBkOnN0cmV0Y2gpIHtcclxuXHQtd2Via2l0LWFsaWduLWl0ZW1zOkBkO1xyXG5cdC1tb3otYWxpZ24taXRlbXM6QGQ7XHJcblx0LW1zLWFsaWduLWl0ZW1zOkBkO1xyXG5cdGFsaWduLWl0ZW1zOkBkO1xyXG59XHJcblxyXG4uYWxpZ25fY29udGVudCAoQGQ6c3RyZXRjaCkge1xyXG5cdC13ZWJraXQtYWxpZ24tY29udGVudDpAZDtcclxuXHQtbW96LWFsaWduLWNvbnRlbnQ6QGQ7XHJcblx0LW1zLWFsaWduLWNvbnRlbnQ6QGQ7XHJcblx0YWxpZ24tY29udGVudDpAZDtcclxufVxyXG5cclxuLmNsX2FmdGVyICgpIHtcclxuXHRjb250ZW50OicuJztcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG5cdGNsZWFyOmJvdGg7XHJcblx0aGVpZ2h0OjA7XHJcblx0dmlzaWJpbGl0eTpoaWRkZW47XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG59XHJcblxyXG4udmFsaWduX2FmdGVyICgpIHtcclxuXHRjb250ZW50OicnO1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcclxuXHRoZWlnaHQ6MTAwJTtcclxufVxyXG5cclxuLnBvc19hYnMgKEB3OjFlbTsgQGg6MWVtOyBAbDowOyBAcjowOyBAdDowOyBAYjowKSB7XHJcblx0d2lkdGg6QHc7XHJcblx0aGVpZ2h0OkBoO1xyXG5cdG1hcmdpbjphdXRvICFpbXBvcnRhbnQ7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0bGVmdDpAbDtcclxuXHRyaWdodDpAcjtcclxuXHR0b3A6QHQ7XHJcblx0Ym90dG9tOkBiO1xyXG59XHJcblxyXG4uYmRieCAoKSB7XHJcblx0LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcblx0LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcblx0Ym94LXNpemluZzpib3JkZXItYm94O1xyXG59XHJcblxyXG4uY3RieCAoKSB7XHJcblx0LXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O1xyXG5cdC1tb3otYm94LXNpemluZzpjb250ZW50LWJveDtcclxuXHRib3gtc2l6aW5nOmNvbnRlbnQtYm94O1xyXG59XHJcblxyXG4uYmRycyAoQHJhZGl1czpAYmRyc193aWR0aCkge1xyXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czpAcmFkaXVzO1xyXG5cdGJvcmRlci1yYWRpdXM6QHJhZGl1cztcclxufVxyXG5cclxuLmJ4c2ggKEB4OjA7IEB5OjA7IEBibHVyOjVweDsgQHNwcmVkOjA7IEBhbHBoYTouMDUpIHtcclxuXHQtd2Via2l0LWJveC1zaGFkb3c6QHggQHkgQGJsdXIgQHNwcmVkIHJnYmEoMCwgMCwgMCwgQGFscGhhKTtcclxuXHRib3gtc2hhZG93OkB4IEB5IEBibHVyIEBzcHJlZCByZ2JhKDAsIDAsIDAsIEBhbHBoYSk7XHJcbn1cclxuXHJcbi5ieHNoX3doaXRlIChAeDowOyBAeTowOyBAYmx1cjo1cHg7IEBzcHJlZDowOyBAYWxwaGE6LjA1KSB7XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93OkB4IEB5IEBibHVyIEBzcHJlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIEBhbHBoYSk7XHJcblx0Ym94LXNoYWRvdzpAeCBAeSBAYmx1ciBAc3ByZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCBAYWxwaGEpO1xyXG59XHJcblxyXG4uYnhzaGkgKEB4OjA7IEB5OjA7IEBibHVyOjVweDsgQHNwcmVkOjA7IEBhbHBoYTouMDUpIHtcclxuXHQtd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgQHggQHkgQGJsdXIgQHNwcmVkIHJnYmEoMCwgMCwgMCwgQGFscGhhKTtcclxuXHRib3gtc2hhZG93Omluc2V0IEB4IEB5IEBibHVyIEBzcHJlZCByZ2JhKDAsIDAsIDAsIEBhbHBoYSk7XHJcbn1cclxuXHJcbi5ieHNoaV93aGl0ZSAoQHg6MDsgQHk6MDsgQGJsdXI6NXB4OyBAc3ByZWQ6MDsgQGFscGhhOi4wNSkge1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzppbnNldCBAeCBAeSBAYmx1ciBAc3ByZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCBAYWxwaGEpO1xyXG5cdGJveC1zaGFkb3c6aW5zZXQgQHggQHkgQGJsdXIgQHNwcmVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgQGFscGhhKTtcclxufVxyXG5cclxuLmJ4c2hfbm9uZSAoKSB7XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7XHJcblx0Ym94LXNoYWRvdzpub25lO1xyXG59XHJcblxyXG4udHJhbnMoQHRyYW5zOjApIHdoZW4gbm90IChAdHJhbnMgPSAwKSB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246QHRyYW5zO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOkB0cmFucztcclxuICAgIC1tcy10cmFuc2l0aW9uOkB0cmFucztcclxuICAgIC1vLXRyYW5zaXRpb246QHRyYW5zO1xyXG4gICAgdHJhbnNpdGlvbjpAdHJhbnM7XHJcbn1cclxuXHJcbi5hcnJvd190b3AgKEBoOjVweDsgQHc6NXB4KSB7XHJcblx0Ym9yZGVyLXRvcDowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWxlZnQ6QHcgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItcmlnaHQ6QHcgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItYm90dG9tLXdpZHRoOkBoO1xyXG5cdGJvcmRlci1ib3R0b20tc3R5bGU6c29saWQ7XHJcbn1cclxuXHJcbi5hcnJvd19ib3R0b20gKEBoOjVweDsgQHc6NXB4KSB7XHJcblx0Ym9yZGVyLWJvdHRvbTowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWxlZnQ6QHcgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItcmlnaHQ6QHcgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItdG9wLXdpZHRoOkBoO1xyXG5cdGJvcmRlci10b3Atc3R5bGU6c29saWQ7XHJcbn1cclxuXHJcbi5hcnJvd19sZWZ0IChAaDo1cHg7IEB3OjVweCkge1xyXG5cdGJvcmRlci1sZWZ0OjAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItdG9wOkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWJvdHRvbTpAdyBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yaWdodC13aWR0aDpAaDtcclxuXHRib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7XHJcbn1cclxuXHJcbi5hcnJvd19yaWdodCAoQGg6NXB4OyBAdzo1cHgpIHtcclxuXHRib3JkZXItcmlnaHQ6MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci10b3A6QHcgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItYm90dG9tOkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWxlZnQtd2lkdGg6QGg7XHJcblx0Ym9yZGVyLWxlZnQtc3R5bGU6c29saWQ7XHJcbn1cclxuXHJcbi5hcnJvd190b3BfbGVmdCAoQGg6NXB4OyBAdzo1cHgpIHtcclxuXHRib3JkZXItcmlnaHQ6QHcgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItbGVmdDowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWJvdHRvbTowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXRvcC13aWR0aDpAaDtcclxuXHRib3JkZXItdG9wLXN0eWxlOnNvbGlkO1xyXG59XHJcblxyXG4uYXJyb3dfdG9wX3JpZ2h0IChAaDo1cHg7IEB3OjVweCkge1xyXG5cdGJvcmRlci1ib3R0b206QGggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItdG9wOjAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItbGVmdDowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJpZ2h0LXdpZHRoOkB3O1xyXG5cdGJvcmRlci1yaWdodC1zdHlsZTpzb2xpZDtcclxufVxyXG5cclxuLmFycm93X2JvdHRvbV9sZWZ0IChAaDo1cHg7IEB3OjVweCkge1xyXG5cdGJvcmRlci10b3A6QGggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItcmlnaHQ6MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b206MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1sZWZ0LXdpZHRoOkB3O1xyXG5cdGJvcmRlci1sZWZ0LXN0eWxlOnNvbGlkO1xyXG59XHJcblxyXG4uYXJyb3dfYm90dG9tX3JpZ2h0IChAaDo1cHg7IEB3OjVweCkge1xyXG5cdGJvcmRlci1sZWZ0OkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXRvcDowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJpZ2h0OjAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItYm90dG9tLXdpZHRoOkBoO1xyXG5cdGJvcmRlci1ib3R0b20tc3R5bGU6c29saWQ7XHJcbn1cclxuXHJcbi5yZWFkbW9yZSgpe1xyXG5cdG91dGxpbmU6bm9uZTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjE1cHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0LmJkYigxcHgpO1xyXG59XHJcblxyXG4uaGVhZGVyX2VsZW1lbnRfc3BsaXR7XHJcblx0bWFyZ2luLWxlZnQ6IDMwcHg7XHJcblxyXG5cdCY6OmJlZm9yZXtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRyaWdodDogLTExcHg7XHJcblx0XHR3aWR0aDogMXB4O1xyXG5cdFx0aGVpZ2h0OiAxOXB4O1xyXG5cdFx0b3BhY2l0eTogMC41O1xyXG5cdFx0bWFyZ2luOiBhdXRvO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHQuYmRyO1xyXG5cdH1cclxufVxyXG5cclxuLmRlZmF1bHRfbGlzdCAoQHc6NnB4OyBAaDo2cHg7IEBtOjAgMTBweCAwIDA7IEBiZHJzOjUwJSkge1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTpub25lO1xyXG5cdFxyXG5cdD4gbGkge1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHJcblx0XHQmOjpiZWZvcmUge1xyXG5cdFx0XHRjb250ZW50OicnO1xyXG5cdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRcdFx0d2lkdGg6QHc7XHJcblx0XHRcdGhlaWdodDpAaDtcclxuXHRcdFx0bWFyZ2luOkBtO1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHQuYmRycyhAYmRycyk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZGVmYXVsdF9ibG9ja3F1b3RlICgpIHtcclxuXHRwYWRkaW5nOjA7XHJcblx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkOyAvKiBkb24ndCB0b3VjaCAqL1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdHF1b3Rlczpub25lO1xyXG5cdC5iZCgwKTtcclxuXHRcclxuXHRwOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRtYXJnaW46MDtcclxuXHRcdHBhZGRpbmc6MDtcclxuXHR9XHJcblx0XHJcblx0Y2l0ZSB7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0bWFyZ2luLXRvcDoxMHB4O1xyXG5cdH1cclxuXHJcblx0Jjo6YmVmb3Jle1xyXG5cdFx0Y29udGVudDogXCLigJxcIjtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcblx0XHRmb250LWZhbWlseTogXCJRdWlja3NhbmRcIiwgQXJpYWwsIEhlbHZldGljYSwgXCJOaW1idXMgU2FucyBMXCIsIHNhbnMtc2VyaWY7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdGZvbnQtc2l6ZTogODNweDtcclxuXHRcdGhlaWdodDogMjJweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiA1M3B4O1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0fVxyXG59XHJcblxyXG4uZGVmYXVsdF90YWJsZSAoKSB7XHJcblx0Ym9yZGVyLXNwYWNpbmc6MDtcclxuXHRib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7XHJcblx0d2lkdGg6MTAwJTtcclxuXHRtYXJnaW4tYm90dG9tOkBsaW5lX2hlaWdodF9wYWQ7IC8qIGRvbid0IHRvdWNoICovXHJcblx0XHJcblx0dGgsXHJcblx0dGQge1xyXG5cdFx0LmJkKDApOyAvKiBmb3IgZ3V0ZW5iZXJnICovXHJcblx0XHRwYWRkaW5nOjEwcHg7XHJcblx0XHQuYmQ7XHJcblx0fVxyXG5cdFxyXG5cdC8qIGZvciBndXRlbmJlcmcgc3RhcnQgKi9cclxuXHQmLmlzLXN0eWxlLXN0cmlwZXMge1xyXG5cdFx0LmJkKDApO1xyXG5cdFx0Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO1xyXG5cdFx0XHJcblx0XHR0cjpudGgtY2hpbGQob2RkKSB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHR9XHJcblx0LyogZm9yIGd1dGVuYmVyZyBlbmQgKi9cclxuXHRcclxuXHRjYXB0aW9uIHtcclxuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xyXG5cdFx0cGFkZGluZzoyMHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmRlZmF1bHRfYnV0dG9uICgpIHtcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOjAgMjdweDtcclxuXHRsZXR0ZXItc3BhY2luZzogLTAuMTVweDtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHR3aGl0ZS1zcGFjZTpub3dyYXA7XHJcblx0LmJkcnMoMjVweCk7XHJcblx0LnRhYztcclxuXHQuYmQoMCk7XHJcblx0LnRyYW5zKH4nY29sb3IgLjRzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgLjRzIGVhc2UsIG9wYWNpdHkgLjRzIGVhc2UnKTtcclxuXHJcblx0JltkaXNhYmxlZF17XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdG9wYWNpdHk6IDAuMztcclxuXHR9XHJcbn1cclxuXHJcbi5kZWZhdWx0X3NlbGVjdCAoQHBsdWdpbjowKSB7XHJcblx0bGluZS1oZWlnaHQ6MWVtO1xyXG5cdHRleHQtaW5kZW50OjAuMDFweDtcclxuXHR0ZXh0LW92ZXJmbG93OicnO1xyXG5cdHBhZGRpbmc6IDNweCA2MHB4IDAgMThweDtcclxuXHQtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtcclxuXHQtbW96LWFwcGVhcmFuY2U6bm9uZTtcclxuXHQtbXMtYXBwZWFyYW5jZTpub25lO1xyXG5cdGFwcGVhcmFuY2U6bm9uZSAhaW1wb3J0YW50O1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246MTAwJSBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHQuYmRycygwKTtcclxuXHRoZWlnaHQ6QGlucHV0X2hlaWdodDtcclxuXHJcblx0b3B0aW9ue1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdH1cclxuXHRcclxuXHQmIHdoZW4gKEBwbHVnaW4gPiAwKSB7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vLi4vLi4vLi4vaW1nL3NlbGVjdC5wbmcnKTtcclxuXHR9XHJcblx0XHJcblx0JiB3aGVuIChAcGx1Z2luID0gMCkge1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uLy4uLy4uL2ltZy9zZWxlY3QucG5nJyk7XHJcblx0fVxyXG5cclxuXHJcbn1cclxuXHJcblxyXG4iLCIvKipcbiAqIEBwYWNrYWdlIFx0V29yZFByZXNzXG4gKiBAc3VicGFja2FnZSBcdEJhbWJpbmlcbiAqIEB2ZXJzaW9uIFx0MS4wLjRcbiAqIFxuICogR3V0ZW5iZXJnIENTUyBSdWxlc1xuICogQ3JlYXRlZCBieSBDTVNNYXN0ZXJzXG4gKiBcbiAqL1xuXG5cblxuQGltcG9ydCBcIi4uLy4uLy4uLy4uLy4uL3RoZW1lLWZyYW1ld29yay90aGVtZS1zdHlsZS9jc3MvbGVzcy9nZW5lcmFsLmxlc3NcIjtcblxuXG5AZ3V0ZW5iZXJnX2Jsb2NrX3BhZGRpbmdzOjQzcHggKiAyIC0gMjhweCAqIDI7XG5cbi5ndXRlbmJlcmdfc3R5bGVzKCkge1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogR2VuZXJhbCBTdHlsZXNcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi53cC1ibG9jayB7XG5cdCZbZGF0YS1hbGlnbj1cImZ1bGxcIl0ge1xuXHRcdHdpZHRoOjEwMCU7XG5cdH1cbn1cblxuXG4vKiogPT09IEJhc2UgVHlwb2dyYXBoeSA9PT0gKi9cbmEge1xuXHRvdXRsaW5lOjA7XG5cdHRleHQtZGVjb3JhdGlvbjpub25lO1xuXHR0cmFuc2l0aW9uOmNvbG9yIDExMG1zIGVhc2UtaW4tb3V0O1xufVxuXG5pbWcge1xuICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAgIGNsZWFyOnJpZ2h0O1xuICAgIH1cblxuICAgICYuYWxpZ25sZWZ0IHtcbiAgICAgICAgY2xlYXI6bGVmdDtcbiAgICB9XG59XG5cbmRpdi53cC1ibG9jayB7XG5cdGgxLFxuXHRoMixcblx0aDMsXG5cdGg0LFxuXHRoNSxcblx0aDYsXG5cdHByZSB7XG5cdFx0YSB7XG5cdFx0XHRmb250LWZhbWlseTppbmhlcml0O1xuXHRcdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHR9XG5cdH1cblx0XG5cdGIsXG5cdHN0cm9uZyB7XG5cdFx0Zm9udC13ZWlnaHQ6Ym9sZDtcblx0fVxuXG5cdC5lZGl0b3ItcmljaC10ZXh0X190aW55bWNlLFxuXHQuYmxvY2stZWRpdG9yLXJpY2gtdGV4dF9fZWRpdGFibGUgIHtcblx0XHRjb2RlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjppbmhlcml0O1xuXHRcdFx0Zm9udC1mYW1pbHk6bW9ub3NwYWNlO1xuXHRcdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRcdGxldHRlci1zcGFjaW5nOjFweDtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czowO1xuXHRcdH1cblx0fVxufVxuXG5zbWFsbCB7XG5cdHNtYWxsIHtcblx0XHRmb250LXNpemU6NzUlO1xuXHR9XG59XG5cbnNlbGVjdCB7XG5cdC5kZWZhdWx0X3NlbGVjdCgxKTtcbn1cblxuXG4vKiogPT09IFBvc3QgVGl0bGUgPT09ICovXG4uZWRpdG9yLXBvc3QtdGl0bGVfX2Jsb2NrIHtcblx0LmVkaXRvci1wb3N0LXRpdGxlX19pbnB1dCB7XG5cdFx0b3V0bGluZTpub25lO1xuXHR9XG59XG5cblxuLyoqID09PSBEZWZhdWx0IEFwcGVuZGVyID09PSAqL1xuLmVkaXRvci1kZWZhdWx0LWJsb2NrLWFwcGVuZGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLmVkaXRvci1kZWZhdWx0LWJsb2NrLWFwcGVuZGVyX19jb250ZW50IHtcblx0b3V0bGluZTpub25lO1xufVxuXG5cbi8qKiA9PT0gSGVhZGluZyA9PT0gKi9cbi53cC1ibG9jay1oZWFkaW5nIHtcblx0b3V0bGluZTpub25lO1xufVxuXG5wLndwLWJsb2NrLXN1YmhlYWQge1xuXHRwYWRkaW5nOjA7XG59XG5cbi8qKiA9PT0gUGFyYWdyYXBoID09PSAqL1xucCwgXG5wLm1jZS1jb250ZW50LWJvZHkge1xuXHQmLmhhcy1iYWNrZ3JvdW5kIHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOi45NWVtIDEuM2VtO1xuXHR9XG5cdFxuXHQmLmhhcy1kcm9wLWNhcDpub3QoOmZvY3VzKTpmaXJzdC1sZXR0ZXIge1xuXHRcdG1hcmdpbjouMzJlbSAuNzNlbSAuMWVtIC41MmVtO1xuXHR9XG5cdFxuXHQmLmhhcy1zbWFsbC1mb250LXNpemUsXG5cdCYuaGFzLW1lZGl1bS1mb250LXNpemUsXG5cdCYuaGFzLWxhcmdlLWZvbnQtc2l6ZSxcblx0Ji5oYXMtaHVnZS1mb250LXNpemUsXG5cdCZbc3R5bGVePVwiZm9udC1zaXplOlwiXSxcblx0JltzdHlsZSo9XCJmb250LXNpemU6XCJdIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6MS41ZW07XG4gICAgfVxufVxuXG4vKiogPT09IEltYWdlID09PSAqL1xuLndwLWJsb2NrLWltYWdlIHtcblx0Jjpub3QoLmVkaXRvci1tZWRpYS1wbGFjZWhvbGRlcikge1xuXHRcdGxpbmUtaGVpZ2h0OjA7XG5cdFx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xuXHRcdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHQudGFjO1xuXHR9XG5cdFxuXHRmaWd1cmUge1xuXHRcdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblxuXHRcdCYuYWxpZ25sZWZ0IHtcblx0XHRcdG1hcmdpbi1yaWdodDoyZW07XG5cdFx0fVxuXHRcdFxuXHRcdCYuYWxpZ25yaWdodCB7XG5cdFx0XHRtYXJnaW4tbGVmdDoyZW07XG5cdFx0fVxuXHR9XG5cdFxuXHRmaWdjYXB0aW9uIHtcblx0XHRkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzoxNXB4IDA7XG5cdFx0LnRhYyAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHRkaXZbc3R5bGVePVwid2lkdGg6XCJdLFxuXHRkaXZbc3R5bGUqPVwid2lkdGg6XCJdLFxuXHQuY29tcG9uZW50cy1yZXNpemFibGUtYm94X19jb250YWluZXIge1xuXHRcdG1heC13aWR0aDoxMDAlICFpbXBvcnRhbnQ7XG5cdFx0aGVpZ2h0OmF1dG8gIWltcG9ydGFudDtcblx0XHRtYXJnaW46MCBhdXRvO1xuXHR9XG5cdFxuXHQuZWRpdG9yLXJpY2gtdGV4dCB7XG5cdFx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xuXHR9XG59XG5cblxuLyoqID09PSBHYWxsZXJ5ID09PSAqL1xuZGl2LndwLWJsb2NrIHtcblx0LndwLWJsb2NrLWdhbGxlcnkge1xuXHRcdG1hcmdpbjowIDAgKEBsaW5lX2hlaWdodF9wYWQgLSAxNnB4KTtcblx0XHRcblx0XHRsaSB7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjE2cHg7XG5cdFx0XHRcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDpub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQuYmxvY2tzLWdhbGxlcnktaXRlbSB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6bm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5jb2x1bW5zLTIge1xuXHRcdFx0LmJsb2Nrcy1nYWxsZXJ5LWltYWdlLFxuXHRcdFx0LmJsb2Nrcy1nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0XHRtYXJnaW46MCAxNnB4IDE2cHggMDtcblx0XHRcdFx0XG5cdFx0XHRcdCY6bnRoLW9mLXR5cGUoMm4pIHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ud3AtYmxvY2stZ2FsbGVyeSB7XG5cdG1hcmdpbjowIDAgKEBsaW5lX2hlaWdodF9wYWQgLSAxNnB4KTtcblx0XG5cdCYuY29sdW1ucy0zIHtcblx0XHQuYmxvY2tzLWdhbGxlcnktaW1hZ2U6bnRoLW9mLXR5cGUoM24pLFxuXHRcdC5ibG9ja3MtZ2FsbGVyeS1pdGVtOm50aC1vZi10eXBlKDNuKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHR9XG5cdH1cblx0XG5cdCYuY29sdW1ucy0yIHtcblx0XHQuYmxvY2tzLWdhbGxlcnktaW1hZ2U6bnRoLW9mLXR5cGUoMm4pLFxuXHRcdC5ibG9ja3MtZ2FsbGVyeS1pdGVtOm50aC1vZi10eXBlKDJuKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHR9XG5cdH1cblx0XG5cdGxpIHtcblx0XHRwYWRkaW5nOjA7XG5cdFx0XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDpub25lO1xuXHRcdH1cblx0fVxuXHRcblx0LmJsb2Nrcy1nYWxsZXJ5LWl0ZW0ge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6bm9uZTtcblx0XHR9XG5cdH1cblx0XG5cdCYuaXMtY3JvcHBlZCB7XG5cdFx0LmJsb2Nrcy1nYWxsZXJ5LWltYWdlLFxuXHRcdC5ibG9ja3MtZ2FsbGVyeS1pdGVtIHtcblx0XHRcdGltZyB7XG5cdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxuXHQuYmxvY2tzLWdhbGxlcnktaW1hZ2UgZmlnY2FwdGlvbixcblx0LmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gZmlnY2FwdGlvbiB7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzoyNXB4IDVweCAxMHB4O1xuXHRcdC50YWM7XG5cdFx0Lm92aDtcblx0fVxuXHRcblx0QG1lZGlhIEBtb25pdG9yX3Bob25lIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFxuXHRcdC5ibG9ja3MtZ2FsbGVyeS1pbWFnZSxcblx0XHQuYmxvY2tzLWdhbGxlcnktaXRlbSB7XG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0d2lkdGg6MTAwJTtcblx0XHR9XG5cdH1cbn1cblxuXG4vKiogPT09IExpc3RzID09PSAqL1xuZGl2LndwLWJsb2NrIHtcblx0dWwsXG5cdG9sIHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0bGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7XG5cdFx0XG5cdFx0bGkge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRwYWRkaW5nOkBkZWZhdWx0X2xpc3RfdG9wX3BhZCAwIDA7XG5cdFx0XHRcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDowO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRcblx0dWwsXG5cdG9sLCBcblx0LmJsb2NrLWxpYnJhcnktbGlzdCAuZWRpdG9yLXJpY2gtdGV4dF9fdGlueW1jZSB7XG5cdFx0b2wsXG5cdFx0dWwge1xuXHRcdFx0bWFyZ2luOjAgMCAwIEBkZWZhdWx0X2xpc3RfbGVmdF9wYWQ7XG5cdFx0XHRwYWRkaW5nOkBkZWZhdWx0X2xpc3RfdG9wX3BhZCAwIDA7XG5cdFx0fVxuXHR9XG5cdFxuXHQuYmxvY2stbGlicmFyeS1saXN0IC5lZGl0b3ItcmljaC10ZXh0X190aW55bWNlIHtcblx0XHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0cGFkZGluZzowO1xuXHR9XG5cdFxuXHR1bCB7XG5cdFx0LmRlZmF1bHRfbGlzdCgpO1xuXHR9XG5cdFxuXHRvbCB7XG5cdFx0bGlzdC1zdHlsZS10eXBlOmRlY2ltYWwtbGVhZGluZy16ZXJvO1xuXHR9XG59XG5cblxuLyoqID09PSBCbG9ja3F1b3RlID09PSAqL1xuLndwLWJsb2NrLXF1b3RlIHtcblx0Jixcblx0Ji5pcy1sYXJnZSxcblx0Ji5pcy1zdHlsZS1sYXJnZSB7XG5cdFx0LmRlZmF1bHRfYmxvY2txdW90ZSgpO1xuXHRcdFxuXHRcdC5lZGl0b3ItcmljaC10ZXh0X190aW55bWNlIHtcblx0XHRcdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XG5cdFx0fVxuXHRcdFxuXHRcdHAsXG5cdFx0Y2l0ZSxcblx0XHRmb290ZXIsXG5cdFx0LndwLWJsb2NrLXF1b3RlX19jaXRhdGlvbiB7XG5cdFx0XHRjb2xvcjppbmhlcml0O1xuXHRcdFx0Zm9udC1mYW1pbHk6aW5oZXJpdDtcblx0XHRcdGZvbnQtc2l6ZTppbmhlcml0O1xuXHRcdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHRcdGZvbnQtd2VpZ2h0OmluaGVyaXQ7XG5cdFx0XHRmb250LXN0eWxlOmluaGVyaXQ7XG5cdFx0fVxuXHRcdFxuXHRcdGNpdGUsXG5cdFx0Zm9vdGVyLFxuXHRcdC53cC1ibG9jay1xdW90ZV9fY2l0YXRpb24ge1xuXHRcdFx0Zm9udC1zdHlsZTppdGFsaWM7XG5cdFx0XHRtYXJnaW4tdG9wOjEwcHg7XG5cdFx0fVxuXHR9XG5cdFxuXHQmLmlzLWxhcmdlLFxuXHQmLmlzLXN0eWxlLWxhcmdlIHtcblx0XHRjaXRlLFxuXHRcdGZvb3Rlcixcblx0XHQud3AtYmxvY2stcXVvdGVfX2NpdGF0aW9uIHtcblx0XHRcdC50YWw7XG5cdFx0fVxuXHR9XG59XG5cblxuLyoqID09PSBCbG9jayBBdWRpbyA9PT0gKi9cbi53cC1ibG9jay1hdWRpbyB7XG5cdG1hcmdpbi1ib3R0b206QGxpbmVfaGVpZ2h0X3BhZDtcblx0XG5cdGZpZ2NhcHRpb24ge1xuXHRcdGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjE1cHggMDtcblx0XHQudGFjICFpbXBvcnRhbnQ7XG5cdH1cblx0XG5cdGF1ZGlvIHtcblx0XHR3aWR0aDoxMDAlO1xuXHRcdG1pbi13aWR0aDozMDBweDtcblx0XHRcblx0XHQmOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uLFxuXHRcdCY6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24ge1xuXHRcdFx0b3BhY2l0eToxO1xuXHRcdFx0Y3Vyc29yOnBvaW50ZXI7XG5cdFx0XHQudHJhbnMofidvcGFjaXR5IC4zcyBlYXNlLWluLW91dCcpO1xuXHRcdFx0XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0b3BhY2l0eTowLjU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLyoqID09PSBDb3ZlciA9PT0gKi9cbi53cC1ibG9jay1jb3Zlcixcbi53cC1ibG9jay1jb3Zlci1pbWFnZSB7XG5cdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0cGFkZGluZzoxMHB4IDMwcHg7XG5cdFxuXHQmLmFsaWdubGVmdCB7XG5cdFx0bWFyZ2luLWxlZnQ6MDtcblx0XHRtYXJnaW4tcmlnaHQ6MmVtO1xuXHR9XG5cdFxuXHQmLmFsaWducmlnaHQge1xuXHRcdG1hcmdpbi1sZWZ0OjJlbTtcblx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0fVxuXHRcblx0aDIsXG5cdC53cC1ibG9jay1jb3Zlci10ZXh0LFxuXHQud3AtYmxvY2stY292ZXItaW1hZ2UtdGV4dCB7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzowO1xuXHRcdFxuXHRcdHN0cm9uZyB7XG5cdFx0XHRmb250LXdlaWdodDpib2xkZXI7XG5cdFx0fVxuXHR9XG59XG5cbi53cC1ibG9jay1jb3Zlci1pbWFnZS5hbGlnbmxlZnQsIFxuLndwLWJsb2NrLWNvdmVyLWltYWdlLmFsaWducmlnaHQsIFxuLndwLWJsb2NrLWNvdmVyLmFsaWdubGVmdCwgXG4ud3AtYmxvY2stY292ZXIuYWxpZ25yaWdodCwgXG5bZGF0YS1hbGlnbj1sZWZ0XSAud3AtYmxvY2stY292ZXIsIFxuW2RhdGEtYWxpZ249bGVmdF0gLndwLWJsb2NrLWNvdmVyLWltYWdlLCBcbltkYXRhLWFsaWduPXJpZ2h0XSAud3AtYmxvY2stY292ZXIsIFxuW2RhdGEtYWxpZ249cmlnaHRdIC53cC1ibG9jay1jb3Zlci1pbWFnZSB7XG5cdHdpZHRoOmF1dG87XG5cdG1heC13aWR0aDoxMDAlO1xufVxuXG5cbi8qKiA9PT0gRmlsZSA9PT0gKi9cbi53cC1ibG9jay1maWxlIHtcblx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkO1xuXHRcblx0PiBhOm5vdChbY2xhc3NdKSxcblx0LndwLWJsb2NrLWZpbGVfX3RleHRsaW5rIHtcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRtYXJnaW46MCAyMHB4IDAgMDtcblx0XHRcblx0XHRbZGlyPXJ0bF0gJiB7XG5cdFx0XHRtYXJnaW4tbGVmdDoyMHB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjA7XG5cdFx0fVxuXHR9XG5cdFxuXHQud3AtYmxvY2stZmlsZV9fYnV0dG9uLXJpY2h0ZXh0LXdyYXBwZXIge1xuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbjowO1xuXHR9XG5cdFxuXHQud3AtYmxvY2stZmlsZV9fYnV0dG9uLFxuXHRhLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG5cdFx0LmRlZmF1bHRfYnV0dG9uKCk7XG5cdFx0LnRyYW5zKH4nY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4zcyBlYXNlLWluLW91dCcpO1xuXHRcdFxuXHRcdCYsXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzLFxuXHRcdCY6YWN0aXZlIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0LmJkKDApO1xuXHRcdFx0LmJ4c2hfbm9uZTtcblx0XHRcdC5vcCgxKTtcblx0XHRcdFxuXHRcdFx0JjpiZWZvcmUsXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDpub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLyoqID09PSBWaWRlbyA9PT0gKi9cbi53cC1ibG9jay12aWRlbyB7XG5cdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0LnRhYztcblx0XG5cdHZpZGVvIHtcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0fVxuXHRcblx0ZmlnY2FwdGlvbiB7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzo2cHggMCAxNXB4O1xuXHRcdC50YWM7XG5cdH1cbn1cblxuXG4vKiogPT09IENvZGUgPT09ICovXG4ud3AtYmxvY2stY29kZSB7XG5cdGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG5cdGNvbG9yOmluaGVyaXQ7XG5cdGZvbnQtZmFtaWx5Om1vbm9zcGFjZTtcblx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XG5cdGZvbnQtd2VpZ2h0OmluaGVyaXQ7XG5cdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0bGV0dGVyLXNwYWNpbmc6MXB4O1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdC5iZCgwKTtcblx0LmJkcnMoMCk7XG5cdC5ieHNoX25vbmU7XG5cdFxuXHRjb2RlLFxuXHQuZWRpdG9yLXBsYWluLXRleHQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6aW5oZXJpdDtcblx0XHRjb2xvcjppbmhlcml0O1xuXHRcdGZvbnQtZmFtaWx5OmluaGVyaXQ7XG5cdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXdlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRsZXR0ZXItc3BhY2luZzppbmhlcml0O1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdH1cbn1cblxuXG4vKiogPT09IEN1c3RvbSBIVE1MID09PSAqL1xuLndwLWJsb2NrLWh0bWwge1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdFxuXHQuZWRpdG9yLXBsYWluLXRleHQge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0Y29sb3I6aW5oZXJpdDtcblx0XHRmb250LWZhbWlseTppbmhlcml0O1xuXHRcdGZvbnQtc2l6ZTppbmhlcml0O1xuXHRcdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XG5cdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXN0eWxlOmluaGVyaXQ7XG5cdH1cblx0XG5cdGlmcmFtZSB7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0fVxufVxuXG5cbi8qKiA9PT0gUHJlZm9ybWF0dGVkID09PSAqL1xuLndwLWJsb2NrLXByZWZvcm1hdHRlZCB7XG5cdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0XG5cdHByZSB7XG5cdFx0Y29sb3I6aW5oZXJpdDtcblx0XHRmb250LWZhbWlseTptb25vc3BhY2U7XG5cdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXdlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRsZXR0ZXItc3BhY2luZzoxcHg7XG5cdH1cbn1cblxuXG4vKiogPT09IFB1bGxxdW90ZSA9PT0gKi9cbi53cC1ibG9jay1wdWxscXVvdGUge1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdHBhZGRpbmc6NTBweCAwO1xuXG5cdCYuYWxpZ25sZWZ0IHtcblx0XHRtYXJnaW4tcmlnaHQ6MmVtO1xuXHR9XG5cdFxuXHQmLmFsaWducmlnaHQge1xuXHRcdG1hcmdpbi1sZWZ0OjJlbTtcblx0fVxuXHRcblx0Ji5hbGlnbmxlZnQge1xuXHRcdG1hcmdpbi1yaWdodDoyZW07XG5cdH1cblx0XG5cdCYuYWxpZ25yaWdodCB7XG5cdFx0bWFyZ2luLWxlZnQ6MmVtO1xuXHR9XG5cdFxuXHQmOm5vdCguaXMtc3R5bGUtc29saWQtY29sb3IpIHtcblx0XHQuYmR0KDRweCk7XG5cdFx0LmJkYig0cHgpO1xuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLXNvbGlkLWNvbG9yIHtcblx0XHRwYWRkaW5nLWxlZnQ6NTBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OjUwcHg7XG5cdFx0XG5cdFx0YmxvY2txdW90ZSB7XG5cdFx0XHRtYXgtd2lkdGg6MTAwJTtcblx0XHR9XG5cdH1cblx0XG5cdGJsb2NrcXVvdGUsXG5cdCYuYWxpZ25sZWZ0IGJsb2NrcXVvdGUsXG5cdCYuYWxpZ25yaWdodCBibG9ja3F1b3RlLFxuXHQmLmlzLXN0eWxlLXNvbGlkLWNvbG9yIGJsb2NrcXVvdGUge1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRoeXBoZW5zOmF1dG87XG5cdFx0d29yZC1icmVhazpicmVhay13b3JkO1xuXHRcdC5iZCgwKTtcblx0XHQudGFjO1xuXHRcdFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6bm9uZTtcblx0XHR9XG5cdFx0XG5cdFx0Jixcblx0XHRwLFxuXHRcdC5lZGl0b3ItcmljaC10ZXh0IHAsXG5cdFx0LmVkaXRvci1yaWNoLXRleHRfX3RpbnltY2UsXG5cdFx0LmVkaXRvci1yaWNoLXRleHRfX3RpbnltY2UgcCxcblx0XHRjaXRlLFxuXHRcdC53cC1ibG9jay1wdWxscXVvdGVfX2NpdGF0aW9uIHtcblx0XHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0XHRmb250LWZhbWlseTppbmhlcml0O1xuXHRcdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOmluaGVyaXQ7XG5cdFx0fVxuXHRcdFxuXHRcdHA6bGFzdC1vZi10eXBlLFxuXHRcdD4gLmVkaXRvci1yaWNoLXRleHQgcDpsYXN0LW9mLXR5cGUge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0fVxuXHRcdFxuXHRcdGNpdGUsXG5cdFx0LndwLWJsb2NrLXB1bGxxdW90ZV9fY2l0YXRpb24ge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdGZvbnQtc3R5bGU6aXRhbGljO1xuXHRcdFx0bWFyZ2luLXRvcDoxNXB4O1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gVGFibGUgPT09ICovXG4ud3AtYmxvY2stdGFibGUge1xuXHQuZGVmYXVsdF90YWJsZSgpO1xuXHRcblx0LndwLWJsb2NrLXRhYmxlX19jZWxsLWNvbnRlbnQge1xuXHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0Zm9udC1mYW1pbHk6aW5oZXJpdDtcblx0XHRmb250LXNpemU6aW5oZXJpdDtcblx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtd2VpZ2h0OmluaGVyaXQ7XG5cdFx0Zm9udC1zdHlsZTppbmhlcml0O1xuXHRcdHBhZGRpbmc6MDtcblx0fVxufVxuXG5cbi8qKiA9PT0gVmVyc2UgPT09ICovXG4ud3AtYmxvY2stdmVyc2Uge1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdHBhZGRpbmc6MDtcblx0XG5cdHByZSB7XG5cdFx0Y29sb3I6aW5oZXJpdDtcblx0XHRmb250LWZhbWlseTptb25vc3BhY2U7XG5cdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXdlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRsZXR0ZXItc3BhY2luZzoxcHg7XG5cdFx0cGFkZGluZzowO1xuXHR9XG59XG5cblxuLyoqID09PSBTcGFjZXIgPT09ICovXG4ud3AtYmxvY2stc3BhY2VyIHtcblx0Y2xlYXI6Ym90aDtcbn1cblxuXG4vKiogPT09IEJ1dHRvbiA9PT0gKi9cbi53cC1ibG9jay1idXR0b24ge1xuXHRkaXNwbGF5OmJsb2NrO1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cblx0Ji5hbGlnbmxlZnQge1xuXHRcdG1hcmdpbi1yaWdodDoyZW07XG5cdH1cblx0XG5cdCYuYWxpZ25yaWdodCB7XG5cdFx0bWFyZ2luLWxlZnQ6MmVtO1xuXHR9XG5cdFxuXHQud3AtYmxvY2stYnV0dG9uX19saW5rLFxuXHQmLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG5cdFx0LmRlZmF1bHRfYnV0dG9uKCk7XG5cdFx0LnRyYW5zKH4nY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4zcyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuM3MgZWFzZS1pbi1vdXQsIGJvcmRlci1yYWRpdXMgLjNzIGVhc2UtaW4tb3V0Jyk7XG5cdFx0XG5cdFx0JiB3aGVuIChAYnV0X2JkcnNfd2lkdGggPSAwKSB7XG5cdFx0XHQuYmRycyg1cHgpO1xuXHRcdH1cblx0XHRcblx0XHQmLFxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyxcblx0XHQmOmFjdGl2ZSB7XG5cdFx0XHQuYnhzaF9ub25lO1xuXHRcdFx0XG5cdFx0XHQmOmJlZm9yZSxcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50Om5vbmUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdCY6bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHQuYmQoMCk7XG5cdH1cblx0XG5cdCYuaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHQmIHdoZW4gKEBidXRfYmRfd2lkdGggPSAwKSB7XG5cdFx0XHQuYmQoMXB4KTtcblx0XHR9XG5cdFx0XG5cdFx0Ji5oYXMtdGV4dC1jb2xvciB7XG5cdFx0XHRib3JkZXItY29sb3I6Y3VycmVudENvbG9yICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLXNxdWFyZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG5cdFx0LmJkcnMoMCk7XG5cdH1cbn1cblxuXG4vKiogPT09IENvbHVtbnMgPT09ICovXG4ud3AtYmxvY2stY29sdW1ucyB7XG5cdC53cC1ibG9jay1jb2x1bW4ge1xuXHRcdG1hcmdpbi1ib3R0b206QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcblx0XHQ+IHAsXG5cdFx0LndwLWJsb2NrLXBhcmFncmFwaCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cblx0XHRcdCY6bm90KC5oYXMtYmFja2dyb3VuZCkge1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTowO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gTWVkaWEgVGV4dCA9PT0gKi9cbi53cC1ibG9jay1tZWRpYS10ZXh0IHtcblx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkO1xuXHRcblx0QG1lZGlhIEBtb25pdG9yX3RhYmxldF82MDAge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XG5cdFx0LndwLWJsb2NrLW1lZGlhLXRleHRfX21lZGlhIHtcblx0XHRcdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHR9XG5cdFx0XG5cdFx0LndwLWJsb2NrLW1lZGlhLXRleHRfX2NvbnRlbnQge1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdH1cblx0fVxuXHRcblx0LndwLWJsb2NrLW1lZGlhLXRleHRfX2NvbnRlbnQge1xuXHRcdHA6bGFzdC1vZi10eXBlIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gU2VwYXJhdG9yID09PSAqL1xuLndwLWJsb2NrLXNlcGFyYXRvciB7XG5cdCYsXG5cdCYuaXMtc3R5bGUtd2lkZSxcblx0Ji5pcy1zdHlsZS1kb3RzIHtcblx0XHRtYXgtd2lkdGg6MTAwJTtcblx0XHRtaW4taGVpZ2h0OjFweDtcblx0XHRtYXJnaW46KEBsaW5lX2hlaWdodF9wYWQgKiAyKSBhdXRvO1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdC5iZCgwKTtcblx0fVxuXHRcblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6Jyc7XG5cdFx0LnBvc19hYnMoMzAlLCAxcHgpO1xuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLXdpZGU6YmVmb3JlIHtcblx0XHR3aWR0aDoxMDAlO1xuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLWRvdHMge1xuXHRcdGhlaWdodDoxMHB4O1xuXHRcdGxpbmUtaGVpZ2h0OjEwcHg7XG5cdFx0LnRhYztcblx0XHRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OlwiXFwwMGI3IFxcMDBiNyBcXDAwYjdcIjtcblx0XHRcdGZvbnQtZmFtaWx5OnNlcmlmO1xuXHRcdFx0Zm9udC1zaXplOjQ1cHg7XG5cdFx0XHRsaW5lLWhlaWdodDoxMHB4O1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6MS40ZW07XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0aGVpZ2h0OjEwcHg7XG5cdFx0XHRwYWRkaW5nOjAgMCAwIDEuNGVtO1xuXHRcdH1cblx0fVxuXG5cdCY6bm90KC5pcy1zdHlsZS13aWRlKTpub3QoLmlzLXN0eWxlLWRvdHMpIHtcblx0XHRtYXgtd2lkdGg6MTAwJTtcblx0fVxufVxuXG5cbi8qKiA9PT0gQXJjaGl2ZXMsIENhdGVnb3JpZXMgPT09ICovXG51bC53cC1ibG9jay1hcmNoaXZlcyxcbnVsLndwLWJsb2NrLWNhdGVnb3JpZXMsXG51bC53cC1ibG9jay1jYXRlZ29yaWVzX19saXN0IHtcblx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRwYWRkaW5nOjA7XG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG5kaXYud3AtYmxvY2sge1xuXHR1bC53cC1ibG9jay1hcmNoaXZlcyxcblx0dWwud3AtYmxvY2stY2F0ZWdvcmllcyxcblx0dWwud3AtYmxvY2stY2F0ZWdvcmllc19fbGlzdCB7XG5cdFx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcblx0XHR1bCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRwYWRkaW5nOkBkZWZhdWx0X2xpc3RfdG9wX3BhZCAwIDA7XG5cdFx0fVxuXHR9XG59XG5cbmRpdi53cC1ibG9jay1hcmNoaXZlcy53cC1ibG9jay1hcmNoaXZlcy1kcm9wZG93bixcbmRpdi53cC1ibG9jay1jYXRlZ29yaWVzLndwLWJsb2NrLWNhdGVnb3JpZXMtZHJvcGRvd24ge1xuXHRtYXJnaW4tYm90dG9tOkBsaW5lX2hlaWdodF9wYWQ7XG5cdFxuXHRsYWJlbCB7XG5cdFx0LmRuO1xuXHR9XG59XG5cblxuLyoqID09PSBMYXRlc3QgUG9zdHMgPT09ICovXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzIHtcblx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRwYWRkaW5nOjA7XG5cdGxpc3Qtc3R5bGUtdHlwZTpub25lICFpbXBvcnRhbnQ7XG5cdFxuXHR1bCB7XG5cdFx0bGlzdC1zdHlsZS10eXBlOm5vbmUgIWltcG9ydGFudDtcblx0fVxuXHRcblx0bGkge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6bm9uZSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXHRcblx0LndwLWJsb2NrLWxhdGVzdC1wb3N0c19fcG9zdC1kYXRlIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdG1hcmdpbjotM3B4IDAgMDtcblx0fVxuXHRcblx0Ji5pcy1ncmlkIHtcblx0XHRtYXJnaW4tbGVmdDotQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRtYXJnaW4tcmlnaHQ6LUBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0bWFyZ2luLXRvcDotQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcblx0XHRsaSB7XG5cdFx0XHRtYXJnaW4tdG9wOkBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcdHBhZGRpbmctdG9wOjA7XG5cblx0XHRcdG1hcmdpbi1sZWZ0OjA7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHRcdG1hcmdpbi1ib3R0b206MDtcblx0XHR9XG5cdH1cbn1cblxuZGl2LndwLWJsb2NrIHtcblx0LndwLWJsb2NrLWxhdGVzdC1wb3N0cyB7XG5cdFx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRcblx0XHR1bCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRwYWRkaW5nOkBkZWZhdWx0X2xpc3RfdG9wX3BhZCAwIDA7XG5cdFx0fVxuXHR9XG59XG5cblxuLyoqID09PSBMYXRlc3QgQ29tbWVudHMgPT09ICovXG4ud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzIHtcblx0bGlzdC1zdHlsZTpub25lO1xuXHRtYXJnaW4tYm90dG9tOkBsaW5lX2hlaWdodF9wYWQ7XG5cdFxuXHQud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50IHtcblx0XHRtaW4taGVpZ2h0OmF1dG87XG5cdFx0bWFyZ2luOjI1cHggMCAwO1xuXHRcdHBhZGRpbmc6MDtcblx0XHQub3ZoO1xuXHRcdFxuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0fVxuXHR9XG5cdFxuXHQmLmhhcy1hdmF0YXJzIC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQge1xuXHRcdG1pbi1oZWlnaHQ6NDhweDtcblx0fVxuXHRcblx0LndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudC1hdmF0YXIge1xuXHRcdHdpZHRoOjQ4cHg7XG5cdFx0aGVpZ2h0OjQ4cHg7XG5cdFx0bWFyZ2luOjAgMTdweCAwIDA7XG5cdFx0LmZsO1xuXHRcdC5iZHJzKDUwJSk7XG5cdFx0XG5cdFx0W2Rpcj1ydGxdICYge1xuXHRcdFx0bWFyZ2luOjAgMCAwIDE3cHg7XG5cdFx0XHQuZnI7XG5cdFx0fVxuXHR9XG5cdFxuXHRhcnRpY2xlIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdHBhZGRpbmc6MCAwIDAgM3B4O1xuXHRcdC5vdmg7XG5cdFx0XG5cdFx0W2Rpcj1ydGxdICYge1xuXHRcdFx0bWFyZ2luOjAgM3B4IDAgMDtcblx0XHR9XG5cdH1cblx0XG5cdCYuaGFzLWF2YXRhcnMgLndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudC1tZXRhLFxuXHQud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LW1ldGEge1xuXHRcdG1hcmdpbjowO1xuXHR9XG5cdFxuXHQud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LWRhdGUge1xuXHRcdG1hcmdpbjotM3B4IDAgMDtcblx0fVxuXHRcblx0Ji5oYXMtYXZhdGFycyAud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LWV4Y2VycHQsXG5cdC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQtZXhjZXJwdCB7XG5cdFx0bWFyZ2luOjVweCAwIDA7XG5cdFx0XG5cdFx0cCB7XG5cdFx0XHRtYXJnaW46MDtcblx0XHRcdHBhZGRpbmc6MCAwIDIwcHg7XG5cdFx0fVxuXHRcdFxuXHRcdD4gKjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdH1cblx0fVxuXHRcblx0Ji5hbGlnbmNlbnRlciB7XG5cdFx0LndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudC1hdmF0YXIge1xuXHRcdFx0bWFyZ2luOjAgYXV0byAxMHB4O1xuXHRcdFx0ZmxvYXQ6bm9uZTtcblx0XHR9XG5cdFx0XG5cdFx0YXJ0aWNsZSB7XG5cdFx0XHRwYWRkaW5nOjAgM3B4O1xuXHRcdH1cblx0XHRcblx0XHQud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LWV4Y2VycHQge1xuXHRcdFx0LnRhYztcblx0XHR9XG5cdH1cbn1cblxuXG4vKiogPT09IENsYXNzaWMgRWRpdG9yID09PSAqL1xuLndwLWNhcHRpb24ge1xuXHRkZCB7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzoxMHB4IDVweDtcblx0XHQudGFjO1xuXHR9XG59XG5cbmRpdi53cC1ibG9jayAud3AtYmxvY2stZnJlZWZvcm0uYmxvY2stbGlicmFyeS1yaWNoLXRleHRfX3RpbnltY2Uge1xuXHRoMSxcblx0aDIsXG5cdGgzLFxuXHRoNCxcblx0aDUsXG5cdGg2IHtcblx0XHRhIHtcblx0XHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0fVxuXHR9XG59XG5cbi53cC1ibG9jay1mcmVlZm9ybSB7XG5cdCYubWNlLWNvbnRlbnQtYm9keSB7XG5cdFx0PiBwIHtcblx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHRcdG1hcmdpbi1ib3R0b206MDtcblx0XHRcdHBhZGRpbmctYm90dG9tOkBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0fVxuXHRcdD4gaDEsXG5cdFx0PiBoMixcblx0XHQ+IGgzLFxuXHRcdD4gaDQsXG5cdFx0PiBoNSxcblx0XHQ+IGg2LFxuXHRcdD4gdGFibGUsXG5cdFx0PiBibG9ja3F1b3RlLFxuXHRcdD4gdWwsXG5cdFx0PiBvbCxcblx0XHQ+IHByZSxcblx0XHQ+IGFkZHJlc3Mge1xuXHRcdFx0bWFyZ2luLXRvcDowO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRcdH1cblx0XHRcblx0XHQ+IGRsIHtcblx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHRcdG1hcmdpbi1ib3R0b206MDtcblx0XHR9XG5cblx0XHQuYWxpZ25sZWZ0LFxuXHRcdC5hbGlnbnJpZ2h0LFxuXHRcdC5hbGlnbmNlbnRlcixcblx0XHQuYWxpZ25ub24ge1xuXHRcdFx0bWFyZ2luLXRvcDowO1xuXHRcdFx0bWFyZ2luLWJvdHRvbToyMnB4O1xuXHRcdH1cblx0fVxuXHRcblx0YWJicixcblx0YWNyb255bSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcblx0fVxuXHRcblx0cHJlLFxuXHRjb2RlLFxuXHR0dCxcblx0a2JkLFxuXHRzYW1wIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuXHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0Zm9udC1mYW1pbHk6bW9ub3NwYWNlO1xuXHRcdGZvbnQtc2l6ZTppbmhlcml0O1xuXHRcdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XG5cdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXN0eWxlOmluaGVyaXQ7XG5cdFx0bGV0dGVyLXNwYWNpbmc6MXB4O1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0fVxuXHRcblx0ZGwge1xuXHRcdG1heC13aWR0aDoxMDAlO1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXHR9XG5cdFxuXHRkdCB7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRmb250LXdlaWdodDpib2xkO1xuXHRcdG92ZXJmbG93OmhpZGRlbjtcblx0fVxuXHRcblx0ZGQge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXHRcdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0fVxuXHRcblx0aHIge1xuXHRcdG1hcmdpbjooQGxpbmVfaGVpZ2h0X3BhZCAqIDIpIDA7XG5cdFx0LmJkdCgwKTtcblx0XHQuYmRiO1xuXHR9XG5cdFxuXHRibG9ja3F1b3RlIHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0LmJkKDApO1xuXHRcdC5iZHJzKDApO1xuXHRcdC5ieHNoX25vbmU7XG5cdFx0LmRlZmF1bHRfYmxvY2txdW90ZSgpO1xuXHRcdFxuXHRcdGNpdGUge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHR9XG5cdH1cblx0XG5cdC5tY2UtaXRlbS10YWJsZSxcblx0dGFibGUge1xuXHRcdHRoIHtcblx0XHRcdGZvbnQtd2VpZ2h0OmluaGVyaXQ7XG5cdFx0XHQudGFsO1xuXHRcdFx0XG5cdFx0XHRbZGlyPXJ0bF0gJiB7XG5cdFx0XHRcdC50YXI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdC5kZWZhdWx0X3RhYmxlKCk7XG5cdH1cblx0XG5cdC5nYWxsZXJ5IHtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRtYXJnaW46MCAtQGNvbF9tYXIgMjBweDtcblx0XHRcblx0XHQmOmFmdGVyIHtcblx0XHRcdC5jbF9hZnRlcjtcblx0XHR9XG5cdFx0XG5cdFx0aW1nIHtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRib3JkZXI6bm9uZTtcblx0XHR9XG5cdFx0XG5cdFx0LmdhbGxlcnktaXRlbSB7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdGZsb2F0OmxlZnQ7XG5cdFx0XHRtYXJnaW46MCBAY29sX21hciAyMHB4O1xuXHRcdFx0XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0LmNsX2FmdGVyO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQud3AtY2FwdGlvbi10ZXh0IHtcblx0XHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRcdHBhZGRpbmc6MTBweCA1cHg7XG5cdFx0XHRcdC50YWM7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYuZ2FsbGVyeS1jb2x1bW5zLTEgLmdhbGxlcnktaXRlbSB7XG5cdFx0XHR3aWR0aDpyb3VuZCgxMDAlIC0gKEBjb2xfbWFyICogMiksIDMpO1xuXHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRmbG9hdDpub25lO1xuXHRcdFx0LmNsO1xuXHRcdH1cblx0XHRcblx0XHQmLmdhbGxlcnktY29sdW1ucy0yIC5nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0d2lkdGg6cm91bmQoKDEwMCUgLyAyKSAtIChAY29sX21hciAqIDIpLCAzKTtcblx0XHRcdFxuXHRcdFx0JjpudGgtY2hpbGQoMm4rMSkge1xuXHRcdFx0XHQuY2w7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYuZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbSB7XG5cdFx0XHR3aWR0aDpyb3VuZCgoMTAwJSAvIDMpIC0gKEBjb2xfbWFyICogMiksIDMpO1xuXHRcdFx0XG5cdFx0XHQmOm50aC1jaGlsZCgzbisxKSB7XG5cdFx0XHRcdC5jbDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5nYWxsZXJ5LWNvbHVtbnMtNCAuZ2FsbGVyeS1pdGVtIHtcblx0XHRcdHdpZHRoOnJvdW5kKCgxMDAlIC8gNCkgLSAoQGNvbF9tYXIgKiAyKSwgMyk7XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKDRuKzEpIHtcblx0XHRcdFx0LmNsO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQmLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0d2lkdGg6cm91bmQoKDEwMCUgLyA1KSAtIChAY29sX21hciAqIDIpLCAzKTtcblx0XHRcdFxuXHRcdFx0JjpudGgtY2hpbGQoNW4rMSkge1xuXHRcdFx0XHQuY2w7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYuZ2FsbGVyeS1jb2x1bW5zLTYgLmdhbGxlcnktaXRlbSB7XG5cdFx0XHR3aWR0aDpyb3VuZCgoMTAwJSAvIDYpIC0gKEBjb2xfbWFyICogMiksIDMpO1xuXHRcdFx0XG5cdFx0XHQmOm50aC1jaGlsZCg2bisxKSB7XG5cdFx0XHRcdC5jbDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5nYWxsZXJ5LWNvbHVtbnMtNyAuZ2FsbGVyeS1pdGVtIHtcblx0XHRcdHdpZHRoOnJvdW5kKCgxMDAlIC8gNykgLSAoQGNvbF9tYXIgKiAyKSwgMyk7XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKDduKzEpIHtcblx0XHRcdFx0LmNsO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQmLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0d2lkdGg6cm91bmQoKDEwMCUgLyA4KSAtIChAY29sX21hciAqIDIpLCAzKTtcblx0XHRcdFxuXHRcdFx0JjpudGgtY2hpbGQoOG4rMSkge1xuXHRcdFx0XHQuY2w7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYuZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbSB7XG5cdFx0XHR3aWR0aDpyb3VuZCgoMTAwJSAvIDkpIC0gKEBjb2xfbWFyICogMiksIDMpO1xuXHRcdFx0XG5cdFx0XHQmOm50aC1jaGlsZCg5bisxKSB7XG5cdFx0XHRcdC5jbDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vKiogPT09IFZpbWVvIEJsb2NrID09PSAqL1xuLndwLWJsb2NrLWVtYmVkLXZpbWVvIHtcblx0LndwLWJsb2NrLWVtYmVkX193cmFwcGVyIHtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRtYXgtd2lkdGg6MTAwJTtcblx0XHR3aWR0aDoxMDAlO1xuXHRcdGhlaWdodDowO1xuXHRcdHBhZGRpbmctYm90dG9tOkByZXNwX2Jsb2Nrc19wYWQ7XG5cdFx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRcdC5vdmg7XG5cdFxuXHRcdGlmcmFtZSB7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0bWF4LXdpZHRoOmF1dG87XG5cdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdG1hcmdpbi1ib3R0b206MDtcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0bGVmdDowO1xuXHRcdFx0dG9wOjA7XG5cdFx0fVxuXHR9XG59XG5cbn1cbiIsIkBpbXBvcnQgXCIuLi8uLi8uLi8uLi8uLi90aGVtZS1mcmFtZXdvcmsvdGhlbWUtc3R5bGUvY3NzL2xlc3MvZ2VuZXJhbC5sZXNzXCI7XG5cbkBpbXBvcnQgXCJtb2R1bGUtc3R5bGUubGVzc1wiO1xuXG5cbi5ndXRlbmJlcmdfc3R5bGVzKCk7XG5cblxuW2NsYXNzKj13cC1ibG9jay1dLmFsaWdubGVmdCxcbi53cC1ibG9jay1pbWFnZSAuYWxpZ25sZWZ0IHtcblx0bWFyZ2luLXJpZ2h0OjJlbTtcbn1cblxuW2NsYXNzKj13cC1ibG9jay1dLmFsaWducmlnaHQsXG4ud3AtYmxvY2staW1hZ2UgLmFsaWducmlnaHQge1xuXHRtYXJnaW4tbGVmdDoyZW07XG59Il0sImZpbGUiOiJmcm9udGVuZC1zdHlsZS5jc3MifQ== */
