/**
 * @package 	WordPress
 * @subpackage 	Agricole
 * @version 	1.0.2
 * 
 * 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: '';
  min-width: 100px;
  max-width: 100%;
  height: 48px;
  padding: 8px 40px 8px 25px;
  background-position: 100% center;
  background-repeat: no-repeat;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none !important;
  border-width: 1px;
  border-style: solid;
  -webkit-border-radius: 30px;
  border-radius: 30px;
  background-image: url('../../../../img/select.png');
}
/** === 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 16px;
}
div.wp-block .wp-block-gallery .blocks-gallery-item {
  margin: 0 16px 16px 0;
  padding: 0;
}
div.wp-block .wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n),
div.wp-block .wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n) {
  margin-right: 0;
}
div.wp-block .wp-block-gallery.columns-3 .blocks-gallery-image:last-child,
div.wp-block .wp-block-gallery.columns-3 .blocks-gallery-item:last-child {
  margin-right: 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 16px;
}
.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 {
  display: block;
  position: relative;
}
div.wp-block ul > li:before {
  content: '';
  line-height: 1em;
  display: inline-block;
  width: 4px;
  height: 4px;
  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;
  position: relative;
  quotes: none;
  border-width: 0;
  border-style: solid;
  text-align: center;
}
.wp-block-quote:before,
.wp-block-quote.is-large:before,
.wp-block-quote.is-style-large:before,
.wp-block-quote:after,
.wp-block-quote.is-large:after,
.wp-block-quote.is-style-large:after {
  content: none;
}
.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 .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 35px;
  position: relative;
  white-space: nowrap;
  text-align: center;
  border-width: 1px;
  border-style: solid;
  -webkit-border-radius: 30px;
  border-radius: 30px;
  -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,
.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: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-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin-bottom: 20px;
  /* for gutenberg start */
  /* for gutenberg end */
}
.wp-block-table caption {
  text-align: center;
  padding: 20px;
}
.wp-block-table th,
.wp-block-table td {
  border-width: 0;
  border-style: solid;
  /* for gutenberg */
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.wp-block-table.is-style-stripes {
  border-width: 0;
  border-style: solid;
}
.wp-block-table.is-style-stripes tr:nth-child(odd) {
  background-color: transparent !important;
}
.wp-block-table thead tr:first-child th {
  border-top-width: 1px;
  border-top-style: solid;
}
.wp-block-table thead tr th,
.wp-block-table thead tr td {
  padding: 17px 25px;
}
.wp-block-table thead + tbody tr:first-child th,
.wp-block-table thead + tbody tr:first-child td {
  border-top-width: 0;
  border-top-style: solid;
}
.wp-block-table tbody tr:first-child th,
.wp-block-table tbody tr:first-child td {
  border-top-width: 1px;
  border-top-style: solid;
}
.wp-block-table tbody tr th,
.wp-block-table tbody tr td {
  padding: 13px 25px;
}
.wp-block-table tfoot tr th,
.wp-block-table tfoot tr td {
  padding: 16px 25px;
}
.wp-block-table th,
.wp-block-table td {
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.wp-block-table tr th:first-child,
.wp-block-table tr td:first-child {
  border-left-width: 1px;
  border-left-style: solid;
}
.wp-block-table tr th:last-child,
.wp-block-table tr td:last-child {
  border-right-width: 1px;
  border-right-style: solid;
}
.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 35px;
  position: relative;
  white-space: nowrap;
  text-align: center;
  border-width: 1px;
  border-style: solid;
  -webkit-border-radius: 30px;
  border-radius: 30px;
  -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,
.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.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;
}
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 20px 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 20px;
  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: 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 .alignnone {
  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;
  position: relative;
  quotes: none;
  border-width: 0;
  border-style: solid;
  text-align: center;
}
.wp-block-freeform blockquote:before,
.wp-block-freeform blockquote:after {
  content: none;
}
.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 cite {
  display: block;
}
.wp-block-freeform .mce-item-table,
.wp-block-freeform table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin-bottom: 20px;
  /* 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 caption,
.wp-block-freeform table caption {
  text-align: center;
  padding: 20px;
}
.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;
  border-style: solid;
  /* for gutenberg */
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.wp-block-freeform .mce-item-table.is-style-stripes,
.wp-block-freeform table.is-style-stripes {
  border-width: 0;
  border-style: solid;
}
.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 thead tr:first-child th,
.wp-block-freeform table thead tr:first-child th {
  border-top-width: 1px;
  border-top-style: solid;
}
.wp-block-freeform .mce-item-table thead tr th,
.wp-block-freeform table thead tr th,
.wp-block-freeform .mce-item-table thead tr td,
.wp-block-freeform table thead tr td {
  padding: 17px 25px;
}
.wp-block-freeform .mce-item-table thead + tbody tr:first-child th,
.wp-block-freeform table thead + tbody tr:first-child th,
.wp-block-freeform .mce-item-table thead + tbody tr:first-child td,
.wp-block-freeform table thead + tbody tr:first-child td {
  border-top-width: 0;
  border-top-style: solid;
}
.wp-block-freeform .mce-item-table tbody tr:first-child th,
.wp-block-freeform table tbody tr:first-child th,
.wp-block-freeform .mce-item-table tbody tr:first-child td,
.wp-block-freeform table tbody tr:first-child td {
  border-top-width: 1px;
  border-top-style: solid;
}
.wp-block-freeform .mce-item-table tbody tr th,
.wp-block-freeform table tbody tr th,
.wp-block-freeform .mce-item-table tbody tr td,
.wp-block-freeform table tbody tr td {
  padding: 13px 25px;
}
.wp-block-freeform .mce-item-table tfoot tr th,
.wp-block-freeform table tfoot tr th,
.wp-block-freeform .mce-item-table tfoot tr td,
.wp-block-freeform table tfoot tr td {
  padding: 16px 25px;
}
.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-bottom-width: 1px;
  border-bottom-style: solid;
}
.wp-block-freeform .mce-item-table tr th:first-child,
.wp-block-freeform table tr th:first-child,
.wp-block-freeform .mce-item-table tr td:first-child,
.wp-block-freeform table tr td:first-child {
  border-left-width: 1px;
  border-left-style: solid;
}
.wp-block-freeform .mce-item-table tr th:last-child,
.wp-block-freeform table tr th:last-child,
.wp-block-freeform .mce-item-table tr td:last-child,
.wp-block-freeform table tr td:last-child {
  border-right-width: 1px;
  border-right-style: solid;
}
.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.3% 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.3% 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: 97.4%;
  position: relative;
  float: none;
  clear: both;
}
.wp-block-freeform .gallery.gallery-columns-2 .gallery-item {
  width: 47.4%;
}
.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: 30.733%;
}
.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: 22.4%;
}
.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: 17.4%;
}
.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.067%;
}
.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: 11.686%;
}
.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: 9.9%;
}
.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: 8.511%;
}
.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: 66.86%;
  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;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZHVsZS1zdHlsZS5sZXNzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWUtZnJhbWV3b3JrL3RoZW1lLXN0eWxlL2Nzcy9sZXNzL2dlbmVyYWwubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUF3QkMsU0FBQztFQUNBLFdBQUE7OztBQU1GO0VBQ0MsVUFBQTtFQUNBLHFCQUFBO0VBQ0EsbUNBQUE7O0FBSUcsR0FBQztFQUNHLFlBQUE7O0FBR0osR0FBQztFQUNHLFdBQUE7O0FBSVIsR0FBRyxTQUNGLEdBT0M7QUFSRixHQUFHLFNBRUYsR0FNQztBQVJGLEdBQUcsU0FHRixHQUtDO0FBUkYsR0FBRyxTQUlGLEdBSUM7QUFSRixHQUFHLFNBS0YsR0FHQztBQVJGLEdBQUcsU0FNRixHQUVDO0FBUkYsR0FBRyxTQU9GLElBQ0M7RUFDQyxvQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBOztBQWJILEdBQUcsU0FpQkY7QUFqQkQsR0FBRyxTQWtCRjtFQUNDLGlCQUFBOztBQW5CRixHQUFHLFNBc0JGLDJCQUVDO0FBeEJGLEdBQUcsU0F1QkYsa0NBQ0M7RUFDQyw2QkFBQTtFQUNBLGNBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBOztBQUtILEtBQ0M7RUFDQyxjQUFBOztBQUlGO0VDeVdpQixnQkFBQTtFQUdqQixtQkFBQTtFQUdJLGVBRUYsRUFGRTtFQUVHLGdCQUFBO0VBQ1MsZUFBQTtFQUViLFlBQUE7RUFLRiwwQkFBQTtFQU1JLGdDQUFBO0VBR0gsNEJBQUE7RUFFTSx3QkFBQTtFQUtILHFCQUFBO0VBQ1csb0JBQUE7RUFDQSwyQkFBQTtFQXJZYixpQkFBQTtFQUdELG1CQUFBO0VBaUlELDJCQUFBO0VBQ29CLG1CQUFBO0VBdVFaLHNCQUNBLDZCQURBOzs7QUQ1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QixjQUFBOztBQUVBLGtCQXZFRixTQW9FRSxrQkFBbUIsY0FHbEIsVUFBVTtFQzNrQ0wsV0FBQTs7QURnbENQLGtCQTVFRCxTQTRFRSxrQkFBbUI7RUFDbkIsY0FBQTs7QUFFQSxrQkEvRUYsU0E0RUUsa0JBQW1CLGNBR2xCLFVBQVU7RUNubENMLFdBQUE7O0FEd2xDUCxrQkFwRkQsU0FvRkUsa0JBQW1CO0VBQ25CLFdBQUE7O0FBRUEsa0JBdkZGLFNBb0ZFLGtCQUFtQixjQUdsQixVQUFVO0VDM2xDTCxXQUFBOztBRGdtQ1Asa0JBNUZELFNBNEZFLGtCQUFtQjtFQUNuQixhQUFBOztBQUVBLGtCQS9GRixTQTRGRSxrQkFBbUIsY0FHbEIsVUFBVTtFQ25tQ0wsV0FBQTs7O0FENG1DVCxxQkFDQztFQUNDLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLFdBQUE7RUFDQSxTQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtFQy9tQ0YsZ0JBQUE7O0FEd21DQSxxQkFDQyx5QkFTQztFQUNDLFdBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxPQUFBO0VBQ0EsTUFBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHBhY2thZ2UgXHRXb3JkUHJlc3NcbiAqIEBzdWJwYWNrYWdlIFx0QWdyaWNvbGVcbiAqIEB2ZXJzaW9uIFx0MS4wLjJcbiAqIFxuICogR3V0ZW5iZXJnIENTUyBSdWxlc1xuICogQ3JlYXRlZCBieSBDTVNNYXN0ZXJzXG4gKiBcbiAqL1xuXG5cblxuQGltcG9ydCBcIi4uLy4uLy4uLy4uLy4uL3RoZW1lLWZyYW1ld29yay90aGVtZS1zdHlsZS9jc3MvbGVzcy9nZW5lcmFsLmxlc3NcIjtcblxuXG5AZ3V0ZW5iZXJnX2Jsb2NrX3BhZGRpbmdzOjQzcHggKiAyIC0gMjhweCAqIDI7XG5cbi5ndXRlbmJlcmdfc3R5bGVzKCkge1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogR2VuZXJhbCBTdHlsZXNcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi53cC1ibG9jayB7XG5cdCZbZGF0YS1hbGlnbj1cImZ1bGxcIl0ge1xuXHRcdHdpZHRoOjEwMCU7XG5cdH1cbn1cblxuXG4vKiogPT09IEJhc2UgVHlwb2dyYXBoeSA9PT0gKi9cbmEge1xuXHRvdXRsaW5lOjA7XG5cdHRleHQtZGVjb3JhdGlvbjpub25lO1xuXHR0cmFuc2l0aW9uOmNvbG9yIDExMG1zIGVhc2UtaW4tb3V0O1xufVxuXG5pbWcge1xuICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAgIGNsZWFyOnJpZ2h0O1xuICAgIH1cblxuICAgICYuYWxpZ25sZWZ0IHtcbiAgICAgICAgY2xlYXI6bGVmdDtcbiAgICB9XG59XG5cbmRpdi53cC1ibG9jayB7XG5cdGgxLFxuXHRoMixcblx0aDMsXG5cdGg0LFxuXHRoNSxcblx0aDYsXG5cdHByZSB7XG5cdFx0YSB7XG5cdFx0XHRmb250LWZhbWlseTppbmhlcml0O1xuXHRcdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHR9XG5cdH1cblx0XG5cdGIsXG5cdHN0cm9uZyB7XG5cdFx0Zm9udC13ZWlnaHQ6Ym9sZDtcblx0fVxuXG5cdC5lZGl0b3ItcmljaC10ZXh0X190aW55bWNlLFxuXHQuYmxvY2stZWRpdG9yLXJpY2gtdGV4dF9fZWRpdGFibGUge1xuXHRcdGNvZGUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0XHRmb250LWZhbWlseTptb25vc3BhY2U7XG5cdFx0XHRmb250LXNpemU6aW5oZXJpdDtcblx0XHRcdGxpbmUtaGVpZ2h0OmluaGVyaXQ7XG5cdFx0XHRmb250LXdlaWdodDppbmhlcml0O1xuXHRcdFx0Zm9udC1zdHlsZTppbmhlcml0O1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6MXB4O1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRib3JkZXItcmFkaXVzOjA7XG5cdFx0fVxuXHR9XG59XG5cbnNtYWxsIHtcblx0c21hbGwge1xuXHRcdGZvbnQtc2l6ZTo3NSU7XG5cdH1cbn1cblxuc2VsZWN0IHtcblx0LmRlZmF1bHRfc2VsZWN0KDEpO1xufVxuXG5cbi8qKiA9PT0gUG9zdCBUaXRsZSA9PT0gKi9cbi5lZGl0b3ItcG9zdC10aXRsZV9fYmxvY2sge1xuXHQuZWRpdG9yLXBvc3QtdGl0bGVfX2lucHV0IHtcblx0XHRvdXRsaW5lOm5vbmU7XG5cdH1cbn1cblxuXG4vKiogPT09IERlZmF1bHQgQXBwZW5kZXIgPT09ICovXG4uZWRpdG9yLWRlZmF1bHQtYmxvY2stYXBwZW5kZXIgaW5wdXRbdHlwZT1cInRleHRcIl0uZWRpdG9yLWRlZmF1bHQtYmxvY2stYXBwZW5kZXJfX2NvbnRlbnQge1xuXHRvdXRsaW5lOm5vbmU7XG59XG5cblxuLyoqID09PSBIZWFkaW5nID09PSAqL1xuLndwLWJsb2NrLWhlYWRpbmcge1xuXHRvdXRsaW5lOm5vbmU7XG59XG5cbnAud3AtYmxvY2stc3ViaGVhZCB7XG5cdHBhZGRpbmc6MDtcbn1cblxuLyoqID09PSBQYXJhZ3JhcGggPT09ICovXG5wLFxucC5tY2UtY29udGVudC1ib2R5IHtcblx0Ji5oYXMtYmFja2dyb3VuZCB7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzouOTVlbSAxLjNlbTtcblx0fVxuXHRcblx0Ji5oYXMtZHJvcC1jYXA6bm90KDpmb2N1cyk6Zmlyc3QtbGV0dGVyIHtcblx0XHRtYXJnaW46LjMyZW0gLjczZW0gLjFlbSAuNTJlbTtcblx0fVxuXHRcblx0Ji5oYXMtc21hbGwtZm9udC1zaXplLFxuXHQmLmhhcy1tZWRpdW0tZm9udC1zaXplLFxuXHQmLmhhcy1sYXJnZS1mb250LXNpemUsXG5cdCYuaGFzLWh1Z2UtZm9udC1zaXplLFxuXHQmW3N0eWxlXj1cImZvbnQtc2l6ZTpcIl0sXG5cdCZbc3R5bGUqPVwiZm9udC1zaXplOlwiXSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjEuNWVtO1xuICAgIH1cbn1cblxuLyoqID09PSBJbWFnZSA9PT0gKi9cbi53cC1ibG9jay1pbWFnZSB7XG5cdCY6bm90KC5lZGl0b3ItbWVkaWEtcGxhY2Vob2xkZXIpIHtcblx0XHRsaW5lLWhlaWdodDowO1xuXHRcdGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcblx0XHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0LnRhYztcblx0fVxuXHRcblx0ZmlndXJlIHtcblx0XHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cblx0XHQmLmFsaWdubGVmdCB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6MmVtO1xuXHRcdH1cblx0XHRcblx0XHQmLmFsaWducmlnaHQge1xuXHRcdFx0bWFyZ2luLWxlZnQ6MmVtO1xuXHRcdH1cblx0fVxuXHRcblx0ZmlnY2FwdGlvbiB7XG5cdFx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MTVweCAwO1xuXHRcdC50YWMgIWltcG9ydGFudDtcblx0fVxuXHRcblx0ZGl2W3N0eWxlXj1cIndpZHRoOlwiXSxcblx0ZGl2W3N0eWxlKj1cIndpZHRoOlwiXSxcblx0LmNvbXBvbmVudHMtcmVzaXphYmxlLWJveF9fY29udGFpbmVyIHtcblx0XHRtYXgtd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xuXHRcdGhlaWdodDphdXRvICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luOjAgYXV0bztcblx0fVxuXHRcblx0LmVkaXRvci1yaWNoLXRleHQge1xuXHRcdGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcblx0fVxufVxuXG5cbi8qKiA9PT0gR2FsbGVyeSA9PT0gKi9cbmRpdi53cC1ibG9jayB7XG5cdC53cC1ibG9jay1nYWxsZXJ5IHtcblx0XHRtYXJnaW46MCAwIDE2cHg7XG5cdFx0XG5cdFx0LmJsb2Nrcy1nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0bWFyZ2luOjAgMTZweCAxNnB4IDA7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0fVxuXHRcdFxuXHRcdCYuY29sdW1ucy0zIHtcblx0XHRcdC5ibG9ja3MtZ2FsbGVyeS1pbWFnZSxcblx0XHRcdC5ibG9ja3MtZ2FsbGVyeS1pdGVtIHtcblx0XHRcdFx0JjpudGgtb2YtdHlwZSgzbikge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDowO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDowO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYuY29sdW1ucy0yIHtcblx0XHRcdC5ibG9ja3MtZ2FsbGVyeS1pbWFnZSxcblx0XHRcdC5ibG9ja3MtZ2FsbGVyeS1pdGVtIHtcblx0XHRcdFx0JjpudGgtb2YtdHlwZSgybikge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDowO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDowO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi53cC1ibG9jay1nYWxsZXJ5IHtcblx0bWFyZ2luOjAgMCAxNnB4O1xuXHRcblx0Ji5jb2x1bW5zLTMge1xuXHRcdC5ibG9ja3MtZ2FsbGVyeS1pbWFnZTpudGgtb2YtdHlwZSgzbiksXG5cdFx0LmJsb2Nrcy1nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoM24pIHtcblx0XHRcdG1hcmdpbi1yaWdodDowO1xuXHRcdH1cblx0fVxuXHRcblx0Ji5jb2x1bW5zLTIge1xuXHRcdC5ibG9ja3MtZ2FsbGVyeS1pbWFnZTpudGgtb2YtdHlwZSgybiksXG5cdFx0LmJsb2Nrcy1nYWxsZXJ5LWl0ZW06bnRoLW9mLXR5cGUoMm4pIHtcblx0XHRcdG1hcmdpbi1yaWdodDowO1xuXHRcdH1cblx0fVxuXHRcblx0bGkge1xuXHRcdHBhZGRpbmc6MDtcblx0XHRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50Om5vbmU7XG5cdFx0fVxuXHR9XG5cdFxuXHQuYmxvY2tzLWdhbGxlcnktaXRlbSB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDpub25lO1xuXHRcdH1cblx0fVxuXHRcblx0Ji5pcy1jcm9wcGVkIHtcblx0XHQuYmxvY2tzLWdhbGxlcnktaW1hZ2UsXG5cdFx0LmJsb2Nrcy1nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdC5ibG9ja3MtZ2FsbGVyeS1pbWFnZSBmaWdjYXB0aW9uLFxuXHQuYmxvY2tzLWdhbGxlcnktaXRlbSBmaWdjYXB0aW9uIHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjI1cHggNXB4IDEwcHg7XG5cdFx0LnRhYztcblx0XHQub3ZoO1xuXHR9XG5cdFxuXHRAbWVkaWEgQG1vbml0b3JfcGhvbmUge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XG5cdFx0LmJsb2Nrcy1nYWxsZXJ5LWltYWdlLFxuXHRcdC5ibG9ja3MtZ2FsbGVyeS1pdGVtIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gTGlzdHMgPT09ICovXG5kaXYud3AtYmxvY2sge1xuXHR1bCxcblx0b2wge1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTtcblx0XHRcblx0XHRsaSB7XG5cdFx0XHRtYXJnaW46MDtcblx0XHRcdHBhZGRpbmc6QGRlZmF1bHRfbGlzdF90b3BfcGFkIDAgMDtcblx0XHRcdFxuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOjA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxuXHR1bCxcblx0b2wsIFxuXHQuYmxvY2stbGlicmFyeS1saXN0IC5lZGl0b3ItcmljaC10ZXh0X190aW55bWNlIHtcblx0XHRvbCxcblx0XHR1bCB7XG5cdFx0XHRtYXJnaW46MCAwIDAgQGRlZmF1bHRfbGlzdF9sZWZ0X3BhZDtcblx0XHRcdHBhZGRpbmc6QGRlZmF1bHRfbGlzdF90b3BfcGFkIDAgMDtcblx0XHR9XG5cdH1cblx0XG5cdC5ibG9jay1saWJyYXJ5LWxpc3QgLmVkaXRvci1yaWNoLXRleHRfX3RpbnltY2Uge1xuXHRcdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRwYWRkaW5nOjA7XG5cdH1cblx0XG5cdHVsIHtcblx0XHQuZGVmYXVsdF9saXN0KCk7XG5cdH1cblx0XG5cdG9sIHtcblx0XHRsaXN0LXN0eWxlLXR5cGU6ZGVjaW1hbC1sZWFkaW5nLXplcm87XG5cdH1cbn1cblxuXG4vKiogPT09IEJsb2NrcXVvdGUgPT09ICovXG4ud3AtYmxvY2stcXVvdGUge1xuXHQmLFxuXHQmLmlzLWxhcmdlLFxuXHQmLmlzLXN0eWxlLWxhcmdlIHtcblx0XHQuZGVmYXVsdF9ibG9ja3F1b3RlKCk7XG5cdFx0XG5cdFx0LmVkaXRvci1yaWNoLXRleHRfX3RpbnltY2Uge1xuXHRcdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHR9XG5cdFx0XG5cdFx0cCxcblx0XHRjaXRlLFxuXHRcdGZvb3Rlcixcblx0XHQud3AtYmxvY2stcXVvdGVfX2NpdGF0aW9uIHtcblx0XHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0XHRmb250LWZhbWlseTppbmhlcml0O1xuXHRcdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHR9XG5cdFx0XG5cdFx0Y2l0ZSxcblx0XHRmb290ZXIsXG5cdFx0LndwLWJsb2NrLXF1b3RlX19jaXRhdGlvbiB7XG5cdFx0XHRmb250LXN0eWxlOml0YWxpYztcblx0XHRcdG1hcmdpbi10b3A6MTBweDtcblx0XHR9XG5cdH1cblx0XG5cdCYuaXMtbGFyZ2UsXG5cdCYuaXMtc3R5bGUtbGFyZ2Uge1xuXHRcdGNpdGUsXG5cdFx0Zm9vdGVyLFxuXHRcdC53cC1ibG9jay1xdW90ZV9fY2l0YXRpb24ge1xuXHRcdFx0LnRhbDtcblx0XHR9XG5cdH1cbn1cblxuXG4vKiogPT09IEJsb2NrIEF1ZGlvID09PSAqL1xuLndwLWJsb2NrLWF1ZGlvIHtcblx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRcblx0ZmlnY2FwdGlvbiB7XG5cdFx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MTVweCAwO1xuXHRcdC50YWMgIWltcG9ydGFudDtcblx0fVxuXHRcblx0YXVkaW8ge1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0bWluLXdpZHRoOjMwMHB4O1xuXHRcdFxuXHRcdCY6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGxheS1idXR0b24sXG5cdFx0Jjo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbiB7XG5cdFx0XHRvcGFjaXR5OjE7XG5cdFx0XHRjdXJzb3I6cG9pbnRlcjtcblx0XHRcdC50cmFucyh+J29wYWNpdHkgLjNzIGVhc2UtaW4tb3V0Jyk7XG5cdFx0XHRcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OjAuNTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vKiogPT09IENvdmVyID09PSAqL1xuLndwLWJsb2NrLWNvdmVyLFxuLndwLWJsb2NrLWNvdmVyLWltYWdlIHtcblx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkO1xuXHRwYWRkaW5nOjEwcHggMzBweDtcblx0XG5cdCYuYWxpZ25sZWZ0IHtcblx0XHRtYXJnaW4tbGVmdDowO1xuXHRcdG1hcmdpbi1yaWdodDoyZW07XG5cdH1cblx0XG5cdCYuYWxpZ25yaWdodCB7XG5cdFx0bWFyZ2luLWxlZnQ6MmVtO1xuXHRcdG1hcmdpbi1yaWdodDowO1xuXHR9XG5cdFxuXHRoMixcblx0LndwLWJsb2NrLWNvdmVyLXRleHQsXG5cdC53cC1ibG9jay1jb3Zlci1pbWFnZS10ZXh0IHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0XG5cdFx0c3Ryb25nIHtcblx0XHRcdGZvbnQtd2VpZ2h0OmJvbGRlcjtcblx0XHR9XG5cdH1cbn1cblxuLndwLWJsb2NrLWNvdmVyLWltYWdlLmFsaWdubGVmdCwgXG4ud3AtYmxvY2stY292ZXItaW1hZ2UuYWxpZ25yaWdodCwgXG4ud3AtYmxvY2stY292ZXIuYWxpZ25sZWZ0LCBcbi53cC1ibG9jay1jb3Zlci5hbGlnbnJpZ2h0LCBcbltkYXRhLWFsaWduPWxlZnRdIC53cC1ibG9jay1jb3ZlciwgXG5bZGF0YS1hbGlnbj1sZWZ0XSAud3AtYmxvY2stY292ZXItaW1hZ2UsIFxuW2RhdGEtYWxpZ249cmlnaHRdIC53cC1ibG9jay1jb3ZlciwgXG5bZGF0YS1hbGlnbj1yaWdodF0gLndwLWJsb2NrLWNvdmVyLWltYWdlIHtcblx0d2lkdGg6YXV0bztcblx0bWF4LXdpZHRoOjEwMCU7XG59XG5cblxuLyoqID09PSBGaWxlID09PSAqL1xuLndwLWJsb2NrLWZpbGUge1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdFxuXHQ+IGE6bm90KFtjbGFzc10pLFxuXHQud3AtYmxvY2stZmlsZV9fdGV4dGxpbmsge1xuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbjowIDIwcHggMCAwO1xuXHRcdFxuXHRcdFtkaXI9cnRsXSAmIHtcblx0XHRcdG1hcmdpbi1sZWZ0OjIwcHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHR9XG5cdH1cblx0XG5cdC53cC1ibG9jay1maWxlX19idXR0b24tcmljaHRleHQtd3JhcHBlciB7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luOjA7XG5cdH1cblx0XG5cdC53cC1ibG9jay1maWxlX19idXR0b24sXG5cdGEud3AtYmxvY2stZmlsZV9fYnV0dG9uIHtcblx0XHQuZGVmYXVsdF9idXR0b24oKTtcblx0XHQudHJhbnMofidjb2xvciAuM3MgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjNzIGVhc2UtaW4tb3V0Jyk7XG5cdFx0XG5cdFx0Jixcblx0XHQmOmhvdmVyLFxuXHRcdCY6Zm9jdXMsXG5cdFx0JjphY3RpdmUge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHQuYmQoMCk7XG5cdFx0XHQuYnhzaF9ub25lO1xuXHRcdFx0Lm9wKDEpO1xuXHRcdFx0XG5cdFx0XHQmOmJlZm9yZSxcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50Om5vbmUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vKiogPT09IFZpZGVvID09PSAqL1xuLndwLWJsb2NrLXZpZGVvIHtcblx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkO1xuXHQudGFjO1xuXHRcblx0dmlkZW8ge1xuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHR9XG5cdFxuXHRmaWdjYXB0aW9uIHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjZweCAwIDE1cHg7XG5cdFx0LnRhYztcblx0fVxufVxuXG5cbi8qKiA9PT0gQ29kZSA9PT0gKi9cbi53cC1ibG9jay1jb2RlIHtcblx0YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcblx0Y29sb3I6aW5oZXJpdDtcblx0Zm9udC1mYW1pbHk6bW9ub3NwYWNlO1xuXHRmb250LXNpemU6aW5oZXJpdDtcblx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0Zm9udC1zdHlsZTppbmhlcml0O1xuXHRsZXR0ZXItc3BhY2luZzoxcHg7XG5cdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0LmJkKDApO1xuXHQuYmRycygwKTtcblx0LmJ4c2hfbm9uZTtcblx0XG5cdGNvZGUsXG5cdC5lZGl0b3ItcGxhaW4tdGV4dCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjppbmhlcml0O1xuXHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0Zm9udC1mYW1pbHk6aW5oZXJpdDtcblx0XHRmb250LXNpemU6aW5oZXJpdDtcblx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtd2VpZ2h0OmluaGVyaXQ7XG5cdFx0Zm9udC1zdHlsZTppbmhlcml0O1xuXHRcdGxldHRlci1zcGFjaW5nOmluaGVyaXQ7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0fVxufVxuXG5cbi8qKiA9PT0gQ3VzdG9tIEhUTUwgPT09ICovXG4ud3AtYmxvY2staHRtbCB7XG5cdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0XG5cdC5lZGl0b3ItcGxhaW4tdGV4dCB7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRjb2xvcjppbmhlcml0O1xuXHRcdGZvbnQtZmFtaWx5OmluaGVyaXQ7XG5cdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXdlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0fVxuXHRcblx0aWZyYW1lIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHR9XG59XG5cblxuLyoqID09PSBQcmVmb3JtYXR0ZWQgPT09ICovXG4ud3AtYmxvY2stcHJlZm9ybWF0dGVkIHtcblx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkO1xuXHRcblx0cHJlIHtcblx0XHRjb2xvcjppbmhlcml0O1xuXHRcdGZvbnQtZmFtaWx5Om1vbm9zcGFjZTtcblx0XHRmb250LXNpemU6aW5oZXJpdDtcblx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtd2VpZ2h0OmluaGVyaXQ7XG5cdFx0Zm9udC1zdHlsZTppbmhlcml0O1xuXHRcdGxldHRlci1zcGFjaW5nOjFweDtcblx0fVxufVxuXG5cbi8qKiA9PT0gUHVsbHF1b3RlID09PSAqL1xuLndwLWJsb2NrLXB1bGxxdW90ZSB7XG5cdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0cGFkZGluZzo1MHB4IDA7XG5cdFxuXHQmLmFsaWdubGVmdCB7XG5cdFx0bWFyZ2luLXJpZ2h0OjJlbTtcblx0fVxuXHRcblx0Ji5hbGlnbnJpZ2h0IHtcblx0XHRtYXJnaW4tbGVmdDoyZW07XG5cdH1cblxuXHQmOm5vdCguaXMtc3R5bGUtc29saWQtY29sb3IpIHtcblx0XHQuYmR0KDRweCk7XG5cdFx0LmJkYig0cHgpO1xuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLXNvbGlkLWNvbG9yIHtcblx0XHRwYWRkaW5nLWxlZnQ6NTBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OjUwcHg7XG5cdFx0XG5cdFx0YmxvY2txdW90ZSB7XG5cdFx0XHRtYXgtd2lkdGg6MTAwJTtcblx0XHR9XG5cdH1cblx0XG5cdGJsb2NrcXVvdGUsXG5cdCYuYWxpZ25sZWZ0IGJsb2NrcXVvdGUsXG5cdCYuYWxpZ25yaWdodCBibG9ja3F1b3RlLFxuXHQmLmlzLXN0eWxlLXNvbGlkLWNvbG9yIGJsb2NrcXVvdGUge1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRoeXBoZW5zOmF1dG87XG5cdFx0d29yZC1icmVhazpicmVhay13b3JkO1xuXHRcdC5iZCgwKTtcblx0XHQudGFjO1xuXHRcdFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6bm9uZTtcblx0XHR9XG5cdFx0XG5cdFx0Jixcblx0XHRwLFxuXHRcdC5lZGl0b3ItcmljaC10ZXh0IHAsXG5cdFx0LmVkaXRvci1yaWNoLXRleHRfX3RpbnltY2UsXG5cdFx0LmVkaXRvci1yaWNoLXRleHRfX3RpbnltY2UgcCxcblx0XHRjaXRlLFxuXHRcdC53cC1ibG9jay1wdWxscXVvdGVfX2NpdGF0aW9uIHtcblx0XHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0XHRmb250LWZhbWlseTppbmhlcml0O1xuXHRcdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOmluaGVyaXQ7XG5cdFx0fVxuXHRcdFxuXHRcdHA6bGFzdC1vZi10eXBlLFxuXHRcdD4gLmVkaXRvci1yaWNoLXRleHQgcDpsYXN0LW9mLXR5cGUge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0fVxuXHRcdFxuXHRcdGNpdGUsXG5cdFx0LndwLWJsb2NrLXB1bGxxdW90ZV9fY2l0YXRpb24ge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdGZvbnQtc3R5bGU6aXRhbGljO1xuXHRcdFx0bWFyZ2luLXRvcDoxNXB4O1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gVGFibGUgPT09ICovXG4ud3AtYmxvY2stdGFibGUge1xuXHQuZGVmYXVsdF90YWJsZSgpO1xuXHRcblx0LndwLWJsb2NrLXRhYmxlX19jZWxsLWNvbnRlbnQge1xuXHRcdGNvbG9yOmluaGVyaXQ7XG5cdFx0Zm9udC1mYW1pbHk6aW5oZXJpdDtcblx0XHRmb250LXNpemU6aW5oZXJpdDtcblx0XHRsaW5lLWhlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtd2VpZ2h0OmluaGVyaXQ7XG5cdFx0Zm9udC1zdHlsZTppbmhlcml0O1xuXHRcdHBhZGRpbmc6MDtcblx0fVxufVxuXG5cbi8qKiA9PT0gVmVyc2UgPT09ICovXG4ud3AtYmxvY2stdmVyc2Uge1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cdHBhZGRpbmc6MDtcblx0XG5cdHByZSB7XG5cdFx0Y29sb3I6aW5oZXJpdDtcblx0XHRmb250LWZhbWlseTptb25vc3BhY2U7XG5cdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXdlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRsZXR0ZXItc3BhY2luZzoxcHg7XG5cdFx0cGFkZGluZzowO1xuXHR9XG59XG5cblxuLyoqID09PSBTcGFjZXIgPT09ICovXG4ud3AtYmxvY2stc3BhY2VyIHtcblx0Y2xlYXI6Ym90aDtcbn1cblxuXG4vKiogPT09IEJ1dHRvbiA9PT0gKi9cbi53cC1ibG9jay1idXR0b24ge1xuXHRkaXNwbGF5OmJsb2NrO1xuXHRtYXJnaW46MCAwIEBsaW5lX2hlaWdodF9wYWQ7XG5cblx0Ji5hbGlnbmxlZnQge1xuXHRcdG1hcmdpbi1yaWdodDoyZW07XG5cdH1cblx0XG5cdCYuYWxpZ25yaWdodCB7XG5cdFx0bWFyZ2luLWxlZnQ6MmVtO1xuXHR9XG5cdFxuXHQud3AtYmxvY2stYnV0dG9uX19saW5rLFxuXHQmLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG5cdFx0LmRlZmF1bHRfYnV0dG9uKCk7XG5cdFx0LnRyYW5zKH4nY29sb3IgLjNzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4zcyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuM3MgZWFzZS1pbi1vdXQsIGJvcmRlci1yYWRpdXMgLjNzIGVhc2UtaW4tb3V0Jyk7XG5cdFx0XG5cdFx0JiB3aGVuIChAYnV0X2JkcnNfd2lkdGggPSAwKSB7XG5cdFx0XHQuYmRycyg1cHgpO1xuXHRcdH1cblx0XHRcblx0XHQmLFxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyxcblx0XHQmOmFjdGl2ZSB7XG5cdFx0XHQuYnhzaF9ub25lO1xuXHRcdFx0XG5cdFx0XHQmOmJlZm9yZSxcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50Om5vbmUgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdCY6bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHQuYmQoMCk7XG5cdH1cblx0XG5cdCYuaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0XHQmIHdoZW4gKEBidXRfYmRfd2lkdGggPSAwKSB7XG5cdFx0XHQuYmQoMXB4KTtcblx0XHR9XG5cdFx0XG5cdFx0Ji5oYXMtdGV4dC1jb2xvciB7XG5cdFx0XHRib3JkZXItY29sb3I6Y3VycmVudENvbG9yICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLXNxdWFyZWQgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG5cdFx0LmJkcnMoMCk7XG5cdH1cbn1cblxuXG4vKiogPT09IENvbHVtbnMgPT09ICovXG4ud3AtYmxvY2stY29sdW1ucyB7XG5cdC53cC1ibG9jay1jb2x1bW4ge1xuXHRcdG1hcmdpbi1ib3R0b206QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcblx0XHQ+IHAsXG5cdFx0LndwLWJsb2NrLXBhcmFncmFwaCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRcblx0XHRcdCY6bm90KC5oYXMtYmFja2dyb3VuZCkge1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTowO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gTWVkaWEgVGV4dCA9PT0gKi9cbi53cC1ibG9jay1tZWRpYS10ZXh0IHtcblx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkO1xuXHRcblx0QG1lZGlhIEBtb25pdG9yX3RhYmxldF82MDAge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XG5cdFx0LndwLWJsb2NrLW1lZGlhLXRleHRfX21lZGlhIHtcblx0XHRcdG1hcmdpbjowIDAgQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHR9XG5cdFx0XG5cdFx0LndwLWJsb2NrLW1lZGlhLXRleHRfX2NvbnRlbnQge1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdH1cblx0fVxuXHRcblx0LndwLWJsb2NrLW1lZGlhLXRleHRfX2NvbnRlbnQge1xuXHRcdHA6bGFzdC1vZi10eXBlIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowO1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gU2VwYXJhdG9yID09PSAqL1xuLndwLWJsb2NrLXNlcGFyYXRvciB7XG5cdCYsXG5cdCYuaXMtc3R5bGUtd2lkZSxcblx0Ji5pcy1zdHlsZS1kb3RzIHtcblx0XHRtYXgtd2lkdGg6MTAwJTtcblx0XHRtaW4taGVpZ2h0OjFweDtcblx0XHRtYXJnaW46KEBsaW5lX2hlaWdodF9wYWQgKiAyKSBhdXRvO1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdC5iZCgwKTtcblx0fVxuXHRcblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6Jyc7XG5cdFx0LnBvc19hYnMoMzAlLCAxcHgpO1xuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLXdpZGU6YmVmb3JlIHtcblx0XHR3aWR0aDoxMDAlO1xuXHR9XG5cdFxuXHQmLmlzLXN0eWxlLWRvdHMge1xuXHRcdGhlaWdodDoxMHB4O1xuXHRcdGxpbmUtaGVpZ2h0OjEwcHg7XG5cdFx0LnRhYztcblx0XHRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OlwiXFwwMGI3IFxcMDBiNyBcXDAwYjdcIjtcblx0XHRcdGZvbnQtZmFtaWx5OnNlcmlmO1xuXHRcdFx0Zm9udC1zaXplOjQ1cHg7XG5cdFx0XHRsaW5lLWhlaWdodDoxMHB4O1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6MS40ZW07XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0aGVpZ2h0OjEwcHg7XG5cdFx0XHRwYWRkaW5nOjAgMCAwIDEuNGVtO1xuXHRcdH1cblx0fVxuXG5cdCY6bm90KC5pcy1zdHlsZS13aWRlKTpub3QoLmlzLXN0eWxlLWRvdHMpIHtcblx0XHRtYXgtd2lkdGg6MTAwJTtcblx0fVxufVxuXG5cbi8qKiA9PT0gQXJjaGl2ZXMsIENhdGVnb3JpZXMgPT09ICovXG51bC53cC1ibG9jay1hcmNoaXZlcyxcbnVsLndwLWJsb2NrLWNhdGVnb3JpZXMsXG51bC53cC1ibG9jay1jYXRlZ29yaWVzX19saXN0IHtcblx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRwYWRkaW5nOjA7XG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG5kaXYud3AtYmxvY2sge1xuXHR1bC53cC1ibG9jay1hcmNoaXZlcyxcblx0dWwud3AtYmxvY2stY2F0ZWdvcmllcyxcblx0dWwud3AtYmxvY2stY2F0ZWdvcmllc19fbGlzdCB7XG5cdFx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRcdHBhZGRpbmc6MDtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcblx0XHR1bCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0XHRwYWRkaW5nOkBkZWZhdWx0X2xpc3RfdG9wX3BhZCAwIDA7XG5cdFx0fVxuXHR9XG59XG5cbmRpdi53cC1ibG9jay1hcmNoaXZlcy53cC1ibG9jay1hcmNoaXZlcy1kcm9wZG93bixcbmRpdi53cC1ibG9jay1jYXRlZ29yaWVzLndwLWJsb2NrLWNhdGVnb3JpZXMtZHJvcGRvd24ge1xuXHRtYXJnaW4tYm90dG9tOkBsaW5lX2hlaWdodF9wYWQ7XG5cdFxuXHRsYWJlbCB7XG5cdFx0LmRuO1xuXHR9XG59XG5cblxuLyoqID09PSBMYXRlc3QgUG9zdHMgPT09ICovXG4ud3AtYmxvY2stbGF0ZXN0LXBvc3RzIHtcblx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRwYWRkaW5nOjA7XG5cdGxpc3Qtc3R5bGUtdHlwZTpub25lICFpbXBvcnRhbnQ7XG5cdFxuXHR1bCB7XG5cdFx0bGlzdC1zdHlsZS10eXBlOm5vbmUgIWltcG9ydGFudDtcblx0fVxuXHRcblx0bGkge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6bm9uZSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXHRcblx0LndwLWJsb2NrLWxhdGVzdC1wb3N0c19fcG9zdC1kYXRlIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdG1hcmdpbjotM3B4IDAgMDtcblx0fVxuXHRcblx0Ji5pcy1ncmlkIHtcblx0XHRtYXJnaW4tbGVmdDotQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRtYXJnaW4tcmlnaHQ6LUBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0bWFyZ2luLXRvcDotQGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcblx0XHRsaSB7XG5cdFx0XHRtYXJnaW4tdG9wOkBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRcdHBhZGRpbmctdG9wOjA7XG5cdFx0fVxuXHR9XG59XG5cbmRpdi53cC1ibG9jayB7XG5cdC53cC1ibG9jay1sYXRlc3QtcG9zdHMge1xuXHRcdG1hcmdpbi1ib3R0b206QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHRwYWRkaW5nOjA7XG5cdFx0XG5cdFx0dWwge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTowO1xuXHRcdFx0cGFkZGluZzpAZGVmYXVsdF9saXN0X3RvcF9wYWQgMCAwO1xuXHRcdH1cblx0fVxufVxuXG4vKiogPT09IExhdGVzdCBDb21tZW50cyA9PT0gKi9cbi53cC1ibG9jay1sYXRlc3QtY29tbWVudHMge1xuXHRsaXN0LXN0eWxlOm5vbmU7XG5cdG1hcmdpbi1ib3R0b206QGxpbmVfaGVpZ2h0X3BhZDtcblx0XG5cdC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQge1xuXHRcdG1pbi1oZWlnaHQ6YXV0bztcblx0XHRtYXJnaW46MjVweCAwIDA7XG5cdFx0cGFkZGluZzowO1xuXHRcdC5vdmg7XG5cdFx0XG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW46MDtcblx0XHR9XG5cdH1cblx0XG5cdCYuaGFzLWF2YXRhcnMgLndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudCB7XG5cdFx0bWluLWhlaWdodDo0OHB4O1xuXHR9XG5cdFxuXHQud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LWF2YXRhciB7XG5cdFx0d2lkdGg6NDhweDtcblx0XHRoZWlnaHQ6NDhweDtcblx0XHRtYXJnaW46MCAyMHB4IDAgMDtcblx0XHQuZmw7XG5cdFx0LmJkcnMoNTAlKTtcblx0XHRcblx0XHRbZGlyPXJ0bF0gJiB7XG5cdFx0XHRtYXJnaW46MCAwIDAgMjBweDtcblx0XHRcdC5mcjtcblx0XHR9XG5cdH1cblx0XG5cdGFydGljbGUge1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0cGFkZGluZzowIDAgMCAzcHg7XG5cdFx0Lm92aDtcblx0XHRcblx0XHRbZGlyPXJ0bF0gJiB7XG5cdFx0XHRtYXJnaW46MCAzcHggMCAwO1xuXHRcdH1cblx0fVxuXHRcblx0Ji5oYXMtYXZhdGFycyAud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LW1ldGEsXG5cdC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQtbWV0YSB7XG5cdFx0bWFyZ2luOjA7XG5cdH1cblx0XG5cdC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQtZGF0ZSB7XG5cdFx0bWFyZ2luOi0zcHggMCAwO1xuXHR9XG5cdFxuXHQmLmhhcy1hdmF0YXJzIC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQtZXhjZXJwdCxcblx0LndwLWJsb2NrLWxhdGVzdC1jb21tZW50c19fY29tbWVudC1leGNlcnB0IHtcblx0XHRtYXJnaW46NXB4IDAgMDtcblx0XHRcblx0XHRwIHtcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0cGFkZGluZzowIDAgMjBweDtcblx0XHR9XG5cdFx0XG5cdFx0PiAqOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0fVxuXHR9XG5cdFxuXHQmLmFsaWduY2VudGVyIHtcblx0XHQud3AtYmxvY2stbGF0ZXN0LWNvbW1lbnRzX19jb21tZW50LWF2YXRhciB7XG5cdFx0XHRtYXJnaW46MCBhdXRvIDEwcHg7XG5cdFx0XHRmbG9hdDpub25lO1xuXHRcdH1cblx0XHRcblx0XHRhcnRpY2xlIHtcblx0XHRcdHBhZGRpbmc6MCAzcHg7XG5cdFx0fVxuXHRcdFxuXHRcdC53cC1ibG9jay1sYXRlc3QtY29tbWVudHNfX2NvbW1lbnQtZXhjZXJwdCB7XG5cdFx0XHQudGFjO1xuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gQ2xhc3NpYyBFZGl0b3IgPT09ICovXG4ud3AtY2FwdGlvbiB7XG5cdGRkIHtcblx0XHRtYXJnaW46MDtcblx0XHRwYWRkaW5nOjEwcHggNXB4O1xuXHRcdC50YWM7XG5cdH1cbn1cblxuZGl2LndwLWJsb2NrIC53cC1ibG9jay1mcmVlZm9ybS5ibG9jay1saWJyYXJ5LXJpY2gtdGV4dF9fdGlueW1jZSB7XG5cdGgxLFxuXHRoMixcblx0aDMsXG5cdGg0LFxuXHRoNSxcblx0aDYge1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6aW5oZXJpdDtcblx0XHR9XG5cdH1cbn1cblxuLndwLWJsb2NrLWZyZWVmb3JtIHtcblx0Ji5tY2UtY29udGVudC1ib2R5IHtcblx0XHQ+IHAge1xuXHRcdFx0bWFyZ2luLXRvcDowO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xuXHRcdH1cblx0XHRcblx0XHQ+IGgxLFxuXHRcdD4gaDIsXG5cdFx0PiBoMyxcblx0XHQ+IGg0LFxuXHRcdD4gaDUsXG5cdFx0PiBoNixcblx0XHQ+IHRhYmxlLFxuXHRcdD4gYmxvY2txdW90ZSxcblx0XHQ+IHVsLFxuXHRcdD4gb2wsXG5cdFx0PiBwcmUsXG5cdFx0PiBhZGRyZXNzIHtcblx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHRcdG1hcmdpbi1ib3R0b206QGxpbmVfaGVpZ2h0X3BhZDtcblx0XHR9XG5cdFx0XG5cdFx0PiBkbCB7XG5cdFx0XHRtYXJnaW4tdG9wOjA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdFx0fVxuXG5cdFx0LmFsaWdubGVmdCxcblx0XHQuYWxpZ25yaWdodCxcblx0XHQuYWxpZ25jZW50ZXIsXG5cdFx0LmFsaWdubm9uZSB7XG5cdFx0XHRtYXJnaW4tdG9wOjA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjIycHg7XG5cdFx0fVxuXHR9XG5cdFxuXHRhYmJyLFxuXHRhY3JvbnltIHtcblx0XHR0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuXHR9XG5cdFxuXHRwcmUsXG5cdGNvZGUsXG5cdHR0LFxuXHRrYmQsXG5cdHNhbXAge1xuXHRcdGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG5cdFx0Y29sb3I6aW5oZXJpdDtcblx0XHRmb250LWZhbWlseTptb25vc3BhY2U7XG5cdFx0Zm9udC1zaXplOmluaGVyaXQ7XG5cdFx0bGluZS1oZWlnaHQ6aW5oZXJpdDtcblx0XHRmb250LXdlaWdodDppbmhlcml0O1xuXHRcdGZvbnQtc3R5bGU6aW5oZXJpdDtcblx0XHRsZXR0ZXItc3BhY2luZzoxcHg7XG5cdFx0bWFyZ2luOjA7XG5cdFx0cGFkZGluZzowO1xuXHR9XG5cdFxuXHRkbCB7XG5cdFx0bWF4LXdpZHRoOjEwMCU7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdH1cblx0XG5cdGR0IHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XG5cdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXHR9XG5cdFxuXHRkZCB7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cdFx0bWFyZ2luOjAgMCBAbGluZV9oZWlnaHRfcGFkO1xuXHR9XG5cdFxuXHRociB7XG5cdFx0bWFyZ2luOihAbGluZV9oZWlnaHRfcGFkICogMikgMDtcblx0XHQuYmR0KDApO1xuXHRcdC5iZGI7XG5cdH1cblx0XG5cdGJsb2NrcXVvdGUge1xuXHRcdG1hcmdpbjowO1xuXHRcdHBhZGRpbmc6MDtcblx0XHQuYmQoMCk7XG5cdFx0LmJkcnMoMCk7XG5cdFx0LmJ4c2hfbm9uZTtcblx0XHQuZGVmYXVsdF9ibG9ja3F1b3RlKCk7XG5cdFx0XG5cdFx0Y2l0ZSB7XG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdH1cblx0fVxuXHRcblx0Lm1jZS1pdGVtLXRhYmxlLFxuXHR0YWJsZSB7XG5cdFx0dGgge1xuXHRcdFx0Zm9udC13ZWlnaHQ6aW5oZXJpdDtcblx0XHRcdC50YWw7XG5cdFx0XHRcblx0XHRcdFtkaXI9cnRsXSAmIHtcblx0XHRcdFx0LnRhcjtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0LmRlZmF1bHRfdGFibGUoKTtcblx0fVxuXHRcblx0LmdhbGxlcnkge1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdG1hcmdpbjowIC1AY29sX21hciAyMHB4O1xuXHRcdFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0LmNsX2FmdGVyO1xuXHRcdH1cblx0XHRcblx0XHRpbWcge1xuXHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdGJvcmRlcjpub25lO1xuXHRcdH1cblx0XHRcblx0XHQuZ2FsbGVyeS1pdGVtIHtcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdG1hcmdpbjowIEBjb2xfbWFyIDIwcHg7XG5cdFx0XHRcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHQuY2xfYWZ0ZXI7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC53cC1jYXB0aW9uLXRleHQge1xuXHRcdFx0XHRtYXJnaW46MDtcblx0XHRcdFx0cGFkZGluZzoxMHB4IDVweDtcblx0XHRcdFx0LnRhYztcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5nYWxsZXJ5LWNvbHVtbnMtMSAuZ2FsbGVyeS1pdGVtIHtcblx0XHRcdHdpZHRoOnJvdW5kKDEwMCUgLSAoQGNvbF9tYXIgKiAyKSwgMyk7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdGZsb2F0Om5vbmU7XG5cdFx0XHQuY2w7XG5cdFx0fVxuXHRcdFxuXHRcdCYuZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbSB7XG5cdFx0XHR3aWR0aDpyb3VuZCgoMTAwJSAvIDIpIC0gKEBjb2xfbWFyICogMiksIDMpO1xuXHRcdFx0XG5cdFx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHRcdC5jbDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5nYWxsZXJ5LWNvbHVtbnMtMyAuZ2FsbGVyeS1pdGVtIHtcblx0XHRcdHdpZHRoOnJvdW5kKCgxMDAlIC8gMykgLSAoQGNvbF9tYXIgKiAyKSwgMyk7XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKDNuKzEpIHtcblx0XHRcdFx0LmNsO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQmLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0d2lkdGg6cm91bmQoKDEwMCUgLyA0KSAtIChAY29sX21hciAqIDIpLCAzKTtcblx0XHRcdFxuXHRcdFx0JjpudGgtY2hpbGQoNG4rMSkge1xuXHRcdFx0XHQuY2w7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYuZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG5cdFx0XHR3aWR0aDpyb3VuZCgoMTAwJSAvIDUpIC0gKEBjb2xfbWFyICogMiksIDMpO1xuXHRcdFx0XG5cdFx0XHQmOm50aC1jaGlsZCg1bisxKSB7XG5cdFx0XHRcdC5jbDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcblx0XHRcdHdpZHRoOnJvdW5kKCgxMDAlIC8gNikgLSAoQGNvbF9tYXIgKiAyKSwgMyk7XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKDZuKzEpIHtcblx0XHRcdFx0LmNsO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQmLmdhbGxlcnktY29sdW1ucy03IC5nYWxsZXJ5LWl0ZW0ge1xuXHRcdFx0d2lkdGg6cm91bmQoKDEwMCUgLyA3KSAtIChAY29sX21hciAqIDIpLCAzKTtcblx0XHRcdFxuXHRcdFx0JjpudGgtY2hpbGQoN24rMSkge1xuXHRcdFx0XHQuY2w7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCYuZ2FsbGVyeS1jb2x1bW5zLTggLmdhbGxlcnktaXRlbSB7XG5cdFx0XHR3aWR0aDpyb3VuZCgoMTAwJSAvIDgpIC0gKEBjb2xfbWFyICogMiksIDMpO1xuXHRcdFx0XG5cdFx0XHQmOm50aC1jaGlsZCg4bisxKSB7XG5cdFx0XHRcdC5jbDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5nYWxsZXJ5LWNvbHVtbnMtOSAuZ2FsbGVyeS1pdGVtIHtcblx0XHRcdHdpZHRoOnJvdW5kKCgxMDAlIC8gOSkgLSAoQGNvbF9tYXIgKiAyKSwgMyk7XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKDluKzEpIHtcblx0XHRcdFx0LmNsO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi8qKiA9PT0gVmltZW8gQmxvY2sgPT09ICovXG4ud3AtYmxvY2stZW1iZWQtdmltZW8ge1xuXHQud3AtYmxvY2stZW1iZWRfX3dyYXBwZXIge1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdG1heC13aWR0aDoxMDAlO1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0aGVpZ2h0OjA7XG5cdFx0cGFkZGluZy1ib3R0b206QHJlc3BfYmxvY2tzX3BhZDtcblx0XHRtYXJnaW4tYm90dG9tOkBsaW5lX2hlaWdodF9wYWQ7XG5cdFx0Lm92aDtcblx0XG5cdFx0aWZyYW1lIHtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRtYXgtd2lkdGg6YXV0bztcblx0XHRcdGhlaWdodDoxMDAlO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTowO1xuXHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRsZWZ0OjA7XG5cdFx0XHR0b3A6MDtcblx0XHR9XG5cdH1cbn1cblxufVxuIiwiXHJcbkBpbnB1dF9wYWQ6IDhweDtcclxuQGlucHV0X2hlaWdodDogNDhweDtcclxuXHJcbkBsaW5lX2hlaWdodF9wYWQ6IDIwcHg7XHJcbkBkZWZhdWx0X2xpc3RfdG9wX3BhZDogMTBweDtcclxuQGRlZmF1bHRfbGlzdF9sZWZ0X3BhZDogMjBweDtcclxuQGJsb2Nrc19ob3JfcGFkOiAyMHB4O1xyXG5AY29udF9zaWRlYmFyX3BhZDogNjBweDtcclxuQGNvbnRfdmVydF9wYWQ6IDgwcHg7XHJcblxyXG5AYmRyc193aWR0aDogMzBweDtcclxuQGJ1dF9iZHJzX3dpZHRoOiBAYmRyc193aWR0aDtcclxuQGJ1dF9iZF93aWR0aDogMXB4O1xyXG5cclxuQGNvbF9tYXI6IDEuMyU7XHJcblxyXG5AcmVzcF9ibG9ja3NfcGFkOiA2Ni44NiU7XHJcblxyXG5AcHJlbG9hZGVyX2Jsb2dfZGVmYXVsdF9wYWQ6IDU1LjglO1xyXG5AcHJlbG9hZGVyX2Jsb2dfbWFzb25yeV9wYWQ6IDYzLjElO1xyXG5AcHJlbG9hZGVyX2Jsb2dfdGltZWxpbmVfcGFkOiA2My4xJTtcclxuQHByZWxvYWRlcl9vcGVuX3Bvc3RfcGFkOiA2Ni44NiU7XHJcbkBwcmVsb2FkZXJfcG9ydGZvbGlvX2dyaWRfcGFkOiA3MC42OSU7XHJcbkBwcmVsb2FkZXJfb3Blbl9wcm9qZWN0X3BhZDogNTUuOCU7XHJcbkBwcmVsb2FkZXJfcG9zdHNfc2xpZGVyX3BhZDogNjMuMSU7XHJcbkBwcmVsb2FkZXJfcG9zdHNfc2xpZGVyX3Byb2plY3RfcGFkOiA3MC42OSU7XHJcbkBwcmVsb2FkZXJfYXJjaGl2ZXNfcGFkOiAxMDAlO1xyXG5cclxuQHNpZGViYXJfd2lkdGg6IDI4JTtcclxuQGNvbnRlbnRfd2lkdGg6IDEwMCUgLSBAc2lkZWJhcl93aWR0aDtcclxuXHJcbkBtaWRfbmF2X2Ryb3Bkb3duX3dpZHRoOiAyMDZweDtcclxuQG1pZF9uYXZfZHJvcGRvd25fcGFkX3RvcDogMTVweDtcclxuQG1pZF9uYXZfZHJvcGRvd25fcGFkX2JvdDogMTVweDtcclxuQG1pZF9uYXZfZHJvcGRvd25fdmVydF9tYXJfc3RhcnQ6IDI1cHg7XHJcbkBtaWRfbmF2X2Ryb3Bkb3duX3ZlcnRfbWFyX2VuZDogMTVweDtcclxuQG1pZF9uYXZfZHJvcGRvd25faG9yX21hcl9zdGFydDogMTBweDtcclxuQG1pZF9uYXZfZHJvcGRvd25faG9yX21hcl9lbmQ6IDJweDtcclxuXHJcbkBib3RfbmF2X2Ryb3Bkb3duX3dpZHRoOiAyMDZweDtcclxuQGJvdF9uYXZfZHJvcGRvd25fcGFkX3RvcDogMTVweDtcclxuQGJvdF9uYXZfZHJvcGRvd25fcGFkX2JvdDogMTVweDtcclxuQGJvdF9uYXZfZHJvcGRvd25fdmVydF9tYXJfc3RhcnQ6IDIwcHg7XHJcbkBib3RfbmF2X2Ryb3Bkb3duX3ZlcnRfbWFyX2VuZDogMHB4O1xyXG5AYm90X25hdl9kcm9wZG93bl9ob3JfbWFyX3N0YXJ0OiAxMHB4O1xyXG5AYm90X25hdl9kcm9wZG93bl9ob3JfbWFyX2VuZDogMnB4O1xyXG5cclxuQHRvcF9uYXZfZHJvcGRvd25fd2lkdGg6IDE3NXB4O1xyXG5AdG9wX25hdl9kcm9wZG93bl9wYWRfdG9wOiAxM3B4O1xyXG5AdG9wX25hdl9kcm9wZG93bl9wYWRfYm90OiAxM3B4O1xyXG5AdG9wX25hdl9kcm9wZG93bl92ZXJ0X21hcl9zdGFydDogMjBweDtcclxuQHRvcF9uYXZfZHJvcGRvd25fdmVydF9tYXJfZW5kOiAwcHg7XHJcbkB0b3BfbmF2X2Ryb3Bkb3duX2hvcl9tYXJfc3RhcnQ6IDIwcHg7XHJcbkB0b3BfbmF2X2Ryb3Bkb3duX2hvcl9tYXJfZW5kOiAycHg7XHJcblxyXG5AY29udF93aWR0aF9kZWY6IDk4MHB4O1xyXG5AY29udF93aWR0aF9sYXJnZTogMTIwMHB4O1xyXG5AY29udF93aWR0aF9mdWxsOiAxMDAlO1xyXG5AY29udF93aWR0aF9taW46IDMyMHB4O1xyXG5cclxuQGlucHV0X3RleHQ6IGUoJ2lucHV0Om5vdChbdHlwZT1idXR0b25dKTpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9ZmlsZV0pOm5vdChbdHlwZT1oaWRkZW5dKTpub3QoW3R5cGU9aW1hZ2VdKTpub3QoW3R5cGU9cmFkaW9dKTpub3QoW3R5cGU9cmVzZXRdKTpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWNvbG9yXSk6bm90KFt0eXBlPXJhbmdlXSknKTtcclxuXHJcbkBtb25pdG9yX2xhcmdlOiB+JyhtaW4td2lkdGg6IDE0NDBweCknO1xyXG5AbW9uaXRvcl9tZWRpdW06IH4nKG1pbi13aWR0aDogMTAyNXB4KSc7XHJcbkBtb25pdG9yX3RhYmxldDogficobWF4LXdpZHRoOiAxMDI0cHgpJztcclxuQG1vbml0b3JfdGFibGV0Xzk1MDogficobWF4LXdpZHRoOiA5NTBweCknO1xyXG5AbW9uaXRvcl90YWJsZXRfc21hbGw6IH4nKG1heC13aWR0aDogNzY4cHgpJztcclxuQG1vbml0b3JfdGFibGV0XzYwMDogficobWF4LXdpZHRoOiA2MDBweCknO1xyXG5AbW9uaXRvcl9waG9uZTogficobWF4LXdpZHRoOiA1NDBweCknO1xyXG5AbW9uaXRvcl9waG9uZV9zbWFsbDogficobWF4LXdpZHRoOiAzMjBweCknO1xyXG5cclxuXHJcblxyXG4uZmwgKCkge1xyXG5cdGZsb2F0OmxlZnQ7XHJcbn1cclxuXHJcbi5mciAoKSB7XHJcblx0ZmxvYXQ6cmlnaHQ7XHJcbn1cclxuXHJcbi5kbiAoKSB7XHJcblx0ZGlzcGxheTpub25lO1xyXG59XHJcblxyXG4udGFsICgpIHtcclxuXHR0ZXh0LWFsaWduOmxlZnQ7XHJcbn1cclxuXHJcbi50YWMgKCkge1xyXG5cdHRleHQtYWxpZ246Y2VudGVyO1xyXG59XHJcblxyXG4udGFyICgpIHtcclxuXHR0ZXh0LWFsaWduOnJpZ2h0O1xyXG59XHJcblxyXG4uY2wgKCkge1xyXG5cdGNsZWFyOmJvdGg7XHJcbn1cclxuXHJcbi5vdmggKCkge1xyXG5cdG92ZXJmbG93OmhpZGRlbjtcclxufVxyXG5cclxuLm0wYSAoKSB7XHJcblx0bWFyZ2luOjAgYXV0bztcclxufVxyXG5cclxuLmJkIChAdzoxcHg7IEB0OnNvbGlkKSB7XHJcblx0Ym9yZGVyLXdpZHRoOkB3O1xyXG5cdGJvcmRlci1zdHlsZTpAdDtcclxufVxyXG5cclxuLmJkdCAoQHc6MXB4OyBAdDpzb2xpZCkge1xyXG5cdGJvcmRlci10b3Atd2lkdGg6QHc7XHJcblx0Ym9yZGVyLXRvcC1zdHlsZTpAdDtcclxufVxyXG5cclxuLmJkYiAoQHc6MXB4OyBAdDpzb2xpZCkge1xyXG5cdGJvcmRlci1ib3R0b20td2lkdGg6QHc7XHJcblx0Ym9yZGVyLWJvdHRvbS1zdHlsZTpAdDtcclxufVxyXG5cclxuLmJkciAoQHc6MXB4OyBAdDpzb2xpZCkge1xyXG5cdGJvcmRlci1yaWdodC13aWR0aDpAdztcclxuXHRib3JkZXItcmlnaHQtc3R5bGU6QHQ7XHJcbn1cclxuXHJcbi5iZGwgKEB3OjFweDsgQHQ6c29saWQpIHtcclxuXHRib3JkZXItbGVmdC13aWR0aDpAdztcclxuXHRib3JkZXItbGVmdC1zdHlsZTpAdDtcclxufVxyXG5cclxuLmNvbG9yX3doaXRlX29wYWNpdHkgKEBvcDouNSkge1xyXG5cdGNvbG9yOnJnYmEoMjU1LCAyNTUsIDI1NSwgQG9wKTtcclxufVxyXG5cclxuLmJnX3doaXRlX29wYWNpdHkgKEBvcDouNSkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsIDI1NSwgMjU1LCBAb3ApO1xyXG59XHJcblxyXG4uZnVsbHdpZHRoX2luX2Jsb2NrICgpIHtcclxuXHR3aWR0aDoxMDAlO1xyXG5cdGhlaWdodDoxMDAlO1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdHRvcDowO1xyXG5cdGxlZnQ6MDtcclxufVxyXG5cclxuLm9wIChAb3A6LjUpIHtcclxuXHRvcGFjaXR5OkBvcDtcclxufVxyXG5cclxuLmRpc3BsYXlfZmxleCAoKSB7XHJcblx0ZGlzcGxheTotd2Via2l0LWZsZXg7XHJcblx0ZGlzcGxheTotbW96LWZsZXg7XHJcblx0ZGlzcGxheTotbXMtZmxleDtcclxuXHRkaXNwbGF5OmZsZXg7XHJcbn1cclxuXHJcbi5kaXNwbGF5X2lubGluZV9mbGV4ICgpIHtcclxuXHRkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWZsZXg7XHJcblx0ZGlzcGxheTotbW96LWlubGluZS1mbGV4O1xyXG5cdGRpc3BsYXk6LW1zLWlubGluZS1mbGV4O1xyXG5cdGRpc3BsYXk6aW5saW5lLWZsZXg7XHJcbn1cclxuXHJcbi5mbGV4X2RpcmVjdGlvbiAoQGQ6cm93KSB7XHJcblx0LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpAZDtcclxuXHQtbW96LWZsZXgtZGlyZWN0aW9uOkBkO1xyXG5cdC1tcy1mbGV4LWRpcmVjdGlvbjpAZDtcclxuXHRmbGV4LWRpcmVjdGlvbjpAZDtcclxufVxyXG5cclxuLmZsZXhfd3JhcCAoQGQ6bm93cmFwKSB7XHJcblx0LXdlYmtpdC1mbGV4LXdyYXA6QGQ7XHJcblx0LW1vei1mbGV4LXdyYXA6QGQ7XHJcblx0LW1zLWZsZXgtd3JhcDpAZDtcclxuXHRmbGV4LXdyYXA6QGQ7XHJcbn1cclxuXHJcbi5qdXN0aWZ5X2NvbnRlbnQgKEBkOmZsZXgtc3RhcnQpIHtcclxuXHQtd2Via2l0LWp1c3RpZnktY29udGVudDpAZDtcclxuXHQtbW96LWp1c3RpZnktY29udGVudDpAZDtcclxuXHQtbXMtanVzdGlmeS1jb250ZW50OkBkO1xyXG5cdGp1c3RpZnktY29udGVudDpAZDtcclxufVxyXG5cclxuLmFsaWduX2l0ZW1zIChAZDpzdHJldGNoKSB7XHJcblx0LXdlYmtpdC1hbGlnbi1pdGVtczpAZDtcclxuXHQtbW96LWFsaWduLWl0ZW1zOkBkO1xyXG5cdC1tcy1hbGlnbi1pdGVtczpAZDtcclxuXHRhbGlnbi1pdGVtczpAZDtcclxufVxyXG5cclxuLmFsaWduX2NvbnRlbnQgKEBkOnN0cmV0Y2gpIHtcclxuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQ6QGQ7XHJcblx0LW1vei1hbGlnbi1jb250ZW50OkBkO1xyXG5cdC1tcy1hbGlnbi1jb250ZW50OkBkO1xyXG5cdGFsaWduLWNvbnRlbnQ6QGQ7XHJcbn1cclxuXHJcbi5jbF9hZnRlciAoKSB7XHJcblx0Y29udGVudDonLic7XHJcblx0ZGlzcGxheTpibG9jaztcclxuXHRjbGVhcjpib3RoO1xyXG5cdGhlaWdodDowO1xyXG5cdHZpc2liaWxpdHk6aGlkZGVuO1xyXG5cdG92ZXJmbG93OmhpZGRlbjtcclxufVxyXG5cclxuLnZhbGlnbl9hZnRlciAoKSB7XHJcblx0Y29udGVudDonJztcclxuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHR2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcblx0aGVpZ2h0OjEwMCU7XHJcbn1cclxuXHJcbi5wb3NfYWJzIChAdzoxZW07IEBoOjFlbTsgQGw6MDsgQHI6MDsgQHQ6MDsgQGI6MCkge1xyXG5cdHdpZHRoOkB3O1xyXG5cdGhlaWdodDpAaDtcclxuXHRtYXJnaW46YXV0byAhaW1wb3J0YW50O1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdGxlZnQ6QGw7XHJcblx0cmlnaHQ6QHI7XHJcblx0dG9wOkB0O1xyXG5cdGJvdHRvbTpAYjtcclxufVxyXG5cclxuLmJkYnggKCkge1xyXG5cdC13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94O1xyXG5cdC1tb3otYm94LXNpemluZzpib3JkZXItYm94O1xyXG5cdGJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxufVxyXG5cclxuLmN0YnggKCkge1xyXG5cdC13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDtcclxuXHQtbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7XHJcblx0Ym94LXNpemluZzpjb250ZW50LWJveDtcclxufVxyXG5cclxuLmJkcnMgKEByYWRpdXM6QGJkcnNfd2lkdGgpIHtcclxuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6QHJhZGl1cztcclxuXHRib3JkZXItcmFkaXVzOkByYWRpdXM7XHJcbn1cclxuXHJcbi5ieHNoIChAeDowOyBAeTowOyBAYmx1cjo1cHg7IEBzcHJlZDowOyBAYWxwaGE6LjA1KSB7XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93OkB4IEB5IEBibHVyIEBzcHJlZCByZ2JhKDAsIDAsIDAsIEBhbHBoYSk7XHJcblx0Ym94LXNoYWRvdzpAeCBAeSBAYmx1ciBAc3ByZWQgcmdiYSgwLCAwLCAwLCBAYWxwaGEpO1xyXG59XHJcblxyXG4uYnhzaF93aGl0ZSAoQHg6MDsgQHk6MDsgQGJsdXI6NXB4OyBAc3ByZWQ6MDsgQGFscGhhOi4wNSkge1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzpAeCBAeSBAYmx1ciBAc3ByZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCBAYWxwaGEpO1xyXG5cdGJveC1zaGFkb3c6QHggQHkgQGJsdXIgQHNwcmVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgQGFscGhhKTtcclxufVxyXG5cclxuLmJ4c2hpIChAeDowOyBAeTowOyBAYmx1cjo1cHg7IEBzcHJlZDowOyBAYWxwaGE6LjA1KSB7XHJcblx0LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IEB4IEB5IEBibHVyIEBzcHJlZCByZ2JhKDAsIDAsIDAsIEBhbHBoYSk7XHJcblx0Ym94LXNoYWRvdzppbnNldCBAeCBAeSBAYmx1ciBAc3ByZWQgcmdiYSgwLCAwLCAwLCBAYWxwaGEpO1xyXG59XHJcblxyXG4uYnhzaGlfd2hpdGUgKEB4OjA7IEB5OjA7IEBibHVyOjVweDsgQHNwcmVkOjA7IEBhbHBoYTouMDUpIHtcclxuXHQtd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgQHggQHkgQGJsdXIgQHNwcmVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgQGFscGhhKTtcclxuXHRib3gtc2hhZG93Omluc2V0IEB4IEB5IEBibHVyIEBzcHJlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIEBhbHBoYSk7XHJcbn1cclxuXHJcbi5ieHNoX25vbmUgKCkge1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzpub25lO1xyXG5cdGJveC1zaGFkb3c6bm9uZTtcclxufVxyXG5cclxuLnRyYW5zKEB0cmFuczowKSB3aGVuIG5vdCAoQHRyYW5zID0gMCkge1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOkB0cmFucztcclxuICAgIC1tb3otdHJhbnNpdGlvbjpAdHJhbnM7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjpAdHJhbnM7XHJcbiAgICAtby10cmFuc2l0aW9uOkB0cmFucztcclxuICAgIHRyYW5zaXRpb246QHRyYW5zO1xyXG59XHJcblxyXG4uYXJyb3dfdG9wIChAaDo1cHg7IEB3OjVweCkge1xyXG5cdGJvcmRlci10b3A6MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1sZWZ0OkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJpZ2h0OkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDpAaDtcclxuXHRib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkO1xyXG59XHJcblxyXG4uYXJyb3dfYm90dG9tIChAaDo1cHg7IEB3OjVweCkge1xyXG5cdGJvcmRlci1ib3R0b206MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1sZWZ0OkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJpZ2h0OkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXRvcC13aWR0aDpAaDtcclxuXHRib3JkZXItdG9wLXN0eWxlOnNvbGlkO1xyXG59XHJcblxyXG4uYXJyb3dfbGVmdCAoQGg6NXB4OyBAdzo1cHgpIHtcclxuXHRib3JkZXItbGVmdDowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXRvcDpAdyBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b206QHcgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItcmlnaHQtd2lkdGg6QGg7XHJcblx0Ym9yZGVyLXJpZ2h0LXN0eWxlOnNvbGlkO1xyXG59XHJcblxyXG4uYXJyb3dfcmlnaHQgKEBoOjVweDsgQHc6NXB4KSB7XHJcblx0Ym9yZGVyLXJpZ2h0OjAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItdG9wOkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWJvdHRvbTpAdyBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1sZWZ0LXdpZHRoOkBoO1xyXG5cdGJvcmRlci1sZWZ0LXN0eWxlOnNvbGlkO1xyXG59XHJcblxyXG4uYXJyb3dfdG9wX2xlZnQgKEBoOjVweDsgQHc6NXB4KSB7XHJcblx0Ym9yZGVyLXJpZ2h0OkB3IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWxlZnQ6MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b206MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci10b3Atd2lkdGg6QGg7XHJcblx0Ym9yZGVyLXRvcC1zdHlsZTpzb2xpZDtcclxufVxyXG5cclxuLmFycm93X3RvcF9yaWdodCAoQGg6NXB4OyBAdzo1cHgpIHtcclxuXHRib3JkZXItYm90dG9tOkBoIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXRvcDowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWxlZnQ6MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yaWdodC13aWR0aDpAdztcclxuXHRib3JkZXItcmlnaHQtc3R5bGU6c29saWQ7XHJcbn1cclxuXHJcbi5hcnJvd19ib3R0b21fbGVmdCAoQGg6NXB4OyBAdzo1cHgpIHtcclxuXHRib3JkZXItdG9wOkBoIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJpZ2h0OjAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItYm90dG9tOjAgc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRib3JkZXItbGVmdC13aWR0aDpAdztcclxuXHRib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtcclxufVxyXG5cclxuLmFycm93X2JvdHRvbV9yaWdodCAoQGg6NXB4OyBAdzo1cHgpIHtcclxuXHRib3JkZXItbGVmdDpAdyBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci10b3A6MCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yaWdodDowIHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDpAaDtcclxuXHRib3JkZXItYm90dG9tLXN0eWxlOnNvbGlkO1xyXG59XHJcblxyXG4uZGVmYXVsdF9saXN0IChAdzo0cHg7IEBoOjRweDsgQG06MCAxMHB4IDAgMDsgQGJkcnM6NTAlKSB7XHJcblx0bGlzdC1zdHlsZS10eXBlOm5vbmU7XHJcblx0XHJcblx0PiBsaSB7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0XHRcclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0Y29udGVudDonJztcclxuXHRcdFx0bGluZS1oZWlnaHQ6MWVtO1xyXG5cdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcclxuXHRcdFx0d2lkdGg6QHc7XHJcblx0XHRcdGhlaWdodDpAaDtcclxuXHRcdFx0bWFyZ2luOkBtO1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0XHQuYmRycyhAYmRycyk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZGVmYXVsdF9ibG9ja3F1b3RlICgpIHtcclxuXHRwYWRkaW5nOjA7XHJcblx0bWFyZ2luOjAgMCAyMHB4O1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdHF1b3Rlczpub25lO1xyXG5cdC5iZCgwKTtcclxuXHQudGFjO1xyXG5cdFxyXG5cdCY6YmVmb3JlLFxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDpub25lO1xyXG5cdH1cclxuXHRcclxuXHRwOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRtYXJnaW46MDtcclxuXHRcdHBhZGRpbmc6MDtcclxuXHR9XHJcblx0XHJcblx0Y2l0ZSB7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0bWFyZ2luLXRvcDoxMHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmRlZmF1bHRfdGFibGUgKCkge1xyXG5cdGJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtcclxuXHRib3JkZXItc3BhY2luZzowO1xyXG5cdHdpZHRoOjEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTpAbGluZV9oZWlnaHRfcGFkO1xyXG5cdFxyXG5cdGNhcHRpb24ge1xyXG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0XHRwYWRkaW5nOjIwcHg7XHJcblx0fVxyXG5cdFxyXG5cdHRoLFxyXG5cdHRkIHtcclxuXHRcdC5iZCgwKTsgLyogZm9yIGd1dGVuYmVyZyAqL1xyXG5cdFx0LmJkYjtcclxuXHR9XHJcblx0XHJcblx0LyogZm9yIGd1dGVuYmVyZyBzdGFydCAqL1xyXG5cdCYuaXMtc3R5bGUtc3RyaXBlcyB7XHJcblx0XHQuYmQoMCk7XHJcblx0XHRcclxuXHRcdHRyOm50aC1jaGlsZChvZGQpIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQvKiBmb3IgZ3V0ZW5iZXJnIGVuZCAqL1xyXG5cdFxyXG5cdHRoZWFkIHtcclxuXHRcdHRyIHtcclxuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XHJcblx0XHRcdFx0dGgge1xyXG5cdFx0XHRcdFx0LmJkdDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdHRoLFxyXG5cdFx0XHR0ZCB7XHJcblx0XHRcdFx0cGFkZGluZzoxN3B4IDI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0KyB0Ym9keSB7XHJcblx0XHRcdHRyIHtcclxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0XHRcdHRoLFxyXG5cdFx0XHRcdFx0dGQge1xyXG5cdFx0XHRcdFx0XHQuYmR0KDApO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHR0Ym9keSB7XHJcblx0XHR0ciB7XHJcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRcdHRoLFxyXG5cdFx0XHRcdHRkIHtcclxuXHRcdFx0XHRcdC5iZHQ7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHR0aCxcclxuXHRcdFx0dGQge1xyXG5cdFx0XHRcdHBhZGRpbmc6MTNweCAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdHRmb290IHtcclxuXHRcdHRyIHtcclxuXHRcdFx0dGgsXHJcblx0XHRcdHRkIHtcclxuXHRcdFx0XHRwYWRkaW5nOjE2cHggMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHR0aCxcclxuXHR0ZCB7XHJcblx0XHQuYmRiO1xyXG5cdH1cclxuXHRcclxuXHR0ciB7XHJcblx0XHR0aCxcclxuXHRcdHRkIHtcclxuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XHJcblx0XHRcdFx0LmJkbDtcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0XHQuYmRyO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdGNhcHRpb24ge1xyXG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0XHRwYWRkaW5nOjIwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uZGVmYXVsdF9idXR0b24gKCkge1xyXG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdHBhZGRpbmc6MCAzNXB4O1xyXG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdHdoaXRlLXNwYWNlOm5vd3JhcDtcclxuXHQudGFjO1xyXG5cdC5iZChAYnV0X2JkX3dpZHRoKTtcclxuXHQuYmRycyhAYnV0X2JkcnNfd2lkdGgpO1xyXG59XHJcblxyXG4uZGVmYXVsdF9zZWxlY3QgKEBwbHVnaW46MCkge1xyXG5cdGxpbmUtaGVpZ2h0OjFlbTtcclxuXHR0ZXh0LWluZGVudDowLjAxcHg7XHJcblx0dGV4dC1vdmVyZmxvdzonJztcclxuXHRtaW4td2lkdGg6MTAwcHg7XHJcblx0bWF4LXdpZHRoOjEwMCU7XHJcblx0aGVpZ2h0OkBpbnB1dF9oZWlnaHQ7XHJcblx0cGFkZGluZzpAaW5wdXRfcGFkIDQwcHggQGlucHV0X3BhZCAyNXB4O1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246MTAwJSBjZW50ZXI7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xyXG5cdC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xyXG5cdC1tb3otYXBwZWFyYW5jZTpub25lO1xyXG5cdC1tcy1hcHBlYXJhbmNlOm5vbmU7XHJcblx0YXBwZWFyYW5jZTpub25lICFpbXBvcnRhbnQ7XHJcblx0LmJkO1xyXG5cdC5iZHJzKEBiZHJzX3dpZHRoKTtcclxuXHRcclxuXHQmIHdoZW4gKEBwbHVnaW4gPiAwKSB7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vLi4vLi4vLi4vaW1nL3NlbGVjdC5wbmcnKTtcclxuXHR9XHJcblx0XHJcblx0JiB3aGVuIChAcGx1Z2luID0gMCkge1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uLy4uLy4uL2ltZy9zZWxlY3QucG5nJyk7XHJcblx0fVxyXG59Il0sImZpbGUiOiJmcm9udGVuZC1zdHlsZS5jc3MifQ== */
