/*-----------------------------------------------------------------------------
WallBee Override
----------------------------------*/
/*color Scheme*/
/*(@line-height-computed + (@padding-base-vertical * 2) + 2);*/
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
/*
 * jQuery UI Bootstrap v1.0 Alpha (Mixins)
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT.
 */
.ui-btn-lg {
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  border-radius: 0px;
}
.ui-btn-xs {
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
.ui-btn-sm {
  padding: 1px 5px;
}
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
  display: none;
}
.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}
.ui-helper-clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.ui-helper-clearfix {
  /*display: inline-block; */
  display: block;
  min-height: 0;
  /* support: IE7 */
}
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix {
  height: 1%;
}
/* end clearfix */
.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: alpha(opacity=0);
}
.ui-front {
  z-index: 100;
}
/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
}
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI CSS Framework 1.10.3
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
/* Component containers
----------------------------------*/
.ui-widget {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px;
}
.ui-widget .ui-widget {
  font-size: 13px;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: inherit;
}
.ui-widget-content {
  border: 1px solid #dddddd;
  background: #f4f4f4 url("../jq_img/ui-bg_glass_75_ffffff_1x400.png") 50% 50% repeat-x;
  color: #333333;
}
.ui-widget-header {
  font-weight: bold;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.ui-widget-header a {
  color: #222222;
}
/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  color: #333333;
  background-color: #fff;
  font-weight: normal;
  border: 1px solid #cccccc;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
  color: #555555;
  text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
  color: #333333;
  background-color: #ebebeb;
  border-color: #adadad;
  text-decoration: none;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited {
  color: #333333;
  text-decoration: none;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
  border: 1px solid #adadad;
  font-weight: normal;
  color: #333333;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #333333;
  text-decoration: none;
}
/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-state-error,
.ui-state-default {
  border-width: 1px;
  border-style: solid;
}
.ui-state-highlight p,
.ui-state-error p,
.ui-state-default p {
  font-size: 13px;
  font-weight: normal;
  line-height: 18px;
  margin: 7px 15px;
}
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  color: #3a87ad;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #2d6987;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  color: #b94a48;
  background-color: #f2dede;
  border-color: #eed3d7;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: #953b39;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: #953b39;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: 0.7;
  filter: alpha(opacity=70);
  font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: 0.35;
  filter: alpha(opacity=35);
  background-image: none;
}
.ui-state-disabled .ui-icon {
  opacity: 0.35;
  filter: alpha(opacity=35);
  /* For IE8 - See #6059 */
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  width: 16px;
  height: 16px;
  background-image: url("../jq_img/ui-icons_222222_256x240.png");
}
.ui-widget-content .ui-icon {
  background-image: url("../jq_img/ui-icons_222222_256x240.png");
}
.ui-widget-header .ui-icon {
  background-image: url("../jq_img/ui-icons_222222_256x240.png");
}
.ui-state-default .ui-icon {
  background-image: url("../jq_img/ui-icons_999999_256x240.png");
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
  background-image: url("../jq_img/ui-icons_555555_256x240.png");
}
.ui-state-active .ui-icon {
  background-image: url("../jq_img/ui-icons_555555_256x240.png");
}
.ui-state-highlight .ui-icon {
  background-image: url("../jq_img/ui-icons_428bca_256x240.png");
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url("../jq_img/ui-icons_f0ad4e_256x240.png");
}
/* positioning */
.ui-icon-carat-1-n {
  background-position: 0 0;
}
.ui-icon-carat-1-ne {
  background-position: -16px 0;
}
.ui-icon-carat-1-e {
  background-position: -32px 0;
}
.ui-icon-carat-1-se {
  background-position: -48px 0;
}
.ui-icon-carat-1-s {
  background-position: -64px 0;
}
.ui-icon-carat-1-sw {
  background-position: -80px 0;
}
.ui-icon-carat-1-w {
  background-position: -96px 0;
}
.ui-icon-carat-1-nw {
  background-position: -112px 0;
}
.ui-icon-carat-2-n-s {
  background-position: -128px 0;
}
.ui-icon-carat-2-e-w {
  background-position: -144px 0;
}
.ui-icon-triangle-1-n {
  background-position: 0 -16px;
}
.ui-icon-triangle-1-ne {
  background-position: -16px -16px;
}
.ui-icon-triangle-1-e {
  background-position: -32px -16px;
}
.ui-icon-triangle-1-se {
  background-position: -48px -16px;
}
.ui-icon-triangle-1-s {
  background-position: -64px -16px;
}
.ui-icon-triangle-1-sw {
  background-position: -80px -16px;
}
.ui-icon-triangle-1-w {
  background-position: -96px -16px;
}
.ui-icon-triangle-1-nw {
  background-position: -112px -16px;
}
.ui-icon-triangle-2-n-s {
  background-position: -128px -16px;
}
.ui-icon-triangle-2-e-w {
  background-position: -144px -16px;
}
.ui-icon-arrow-1-n {
  background-position: 0 -32px;
}
.ui-icon-arrow-1-ne {
  background-position: -16px -32px;
}
.ui-icon-arrow-1-e {
  background-position: -32px -32px;
}
.ui-icon-arrow-1-se {
  background-position: -48px -32px;
}
.ui-icon-arrow-1-s {
  background-position: -64px -32px;
}
.ui-icon-arrow-1-sw {
  background-position: -80px -32px;
}
.ui-icon-arrow-1-w {
  background-position: -96px -32px;
}
.ui-icon-arrow-1-nw {
  background-position: -112px -32px;
}
.ui-icon-arrow-2-n-s {
  background-position: -128px -32px;
}
.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px;
}
.ui-icon-arrow-2-e-w {
  background-position: -160px -32px;
}
.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px;
}
.ui-icon-arrowstop-1-n {
  background-position: -192px -32px;
}
.ui-icon-arrowstop-1-e {
  background-position: -208px -32px;
}
.ui-icon-arrowstop-1-s {
  background-position: -224px -32px;
}
.ui-icon-arrowstop-1-w {
  background-position: -240px -32px;
}
.ui-icon-arrowthick-1-n {
  background-position: 0 -48px;
}
.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px;
}
.ui-icon-arrowthick-1-e {
  background-position: -32px -48px;
}
.ui-icon-arrowthick-1-se {
  background-position: -48px -48px;
}
.ui-icon-arrowthick-1-s {
  background-position: -64px -48px;
}
.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px;
}
.ui-icon-arrowthick-1-w {
  background-position: -96px -48px;
}
.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px;
}
.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px;
}
.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px;
}
.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px;
}
.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px;
}
.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px;
}
.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px;
}
.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px;
}
.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px;
}
.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px;
}
.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px;
}
.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px;
}
.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px;
}
.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px;
}
.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px;
}
.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px;
}
.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px;
}
.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px;
}
.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px;
}
.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px;
}
.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px;
}
.ui-icon-arrow-4 {
  background-position: 0 -80px;
}
.ui-icon-arrow-4-diag {
  background-position: -16px -80px;
}
.ui-icon-extlink {
  background-position: -32px -80px;
}
.ui-icon-newwin {
  background-position: -48px -80px;
}
.ui-icon-refresh {
  background-position: -64px -80px;
}
.ui-icon-shuffle {
  background-position: -80px -80px;
}
.ui-icon-transfer-e-w {
  background-position: -96px -80px;
}
.ui-icon-transferthick-e-w {
  background-position: -112px -80px;
}
.ui-icon-folder-collapsed {
  background-position: 0 -96px;
}
.ui-icon-folder-open {
  background-position: -16px -96px;
}
.ui-icon-document {
  background-position: -32px -96px;
}
.ui-icon-document-b {
  background-position: -48px -96px;
}
.ui-icon-note {
  background-position: -64px -96px;
}
.ui-icon-mail-closed {
  background-position: -80px -96px;
}
.ui-icon-mail-open {
  background-position: -96px -96px;
}
.ui-icon-suitcase {
  background-position: -112px -96px;
}
.ui-icon-comment {
  background-position: -128px -96px;
}
.ui-icon-person {
  background-position: -144px -96px;
}
.ui-icon-print {
  background-position: -160px -96px;
}
.ui-icon-trash {
  background-position: -176px -96px;
}
.ui-icon-locked {
  background-position: -192px -96px;
}
.ui-icon-unlocked {
  background-position: -208px -96px;
}
.ui-icon-bookmark {
  background-position: -224px -96px;
}
.ui-icon-tag {
  background-position: -240px -96px;
}
.ui-icon-home {
  background-position: 0 -112px;
}
.ui-icon-flag {
  background-position: -16px -112px;
}
.ui-icon-calendar {
  background-position: -32px -112px;
}
.ui-icon-cart {
  background-position: -48px -112px;
}
.ui-icon-pencil {
  background-position: -64px -112px;
}
.ui-icon-clock {
  background-position: -80px -112px;
}
.ui-icon-disk {
  background-position: -96px -112px;
}
.ui-icon-calculator {
  background-position: -112px -112px;
}
.ui-icon-zoomin {
  background-position: -128px -112px;
}
.ui-icon-zoomout {
  background-position: -144px -112px;
}
.ui-icon-search {
  background-position: -160px -112px;
}
.ui-icon-wrench {
  background-position: -176px -112px;
}
.ui-icon-gear {
  background-position: -192px -112px;
}
.ui-icon-heart {
  background-position: -208px -112px;
}
.ui-icon-star {
  background-position: -224px -112px;
}
.ui-icon-link {
  background-position: -240px -112px;
}
.ui-icon-cancel {
  background-position: 0 -128px;
}
.ui-icon-plus {
  background-position: -16px -128px;
}
.ui-icon-plusthick {
  background-position: -32px -128px;
}
.ui-icon-minus {
  background-position: -48px -128px;
}
.ui-icon-minusthick {
  background-position: -64px -128px;
}
.ui-icon-close {
  background-position: -80px -128px;
}
.ui-icon-closethick {
  background-position: -96px -128px;
}
.ui-icon-key {
  background-position: -112px -128px;
}
.ui-icon-lightbulb {
  background-position: -128px -128px;
}
.ui-icon-scissors {
  background-position: -144px -128px;
}
.ui-icon-clipboard {
  background-position: -160px -128px;
}
.ui-icon-copy {
  background-position: -176px -128px;
}
.ui-icon-contact {
  background-position: -192px -128px;
}
.ui-icon-image {
  background-position: -208px -128px;
}
.ui-icon-video {
  background-position: -224px -128px;
}
.ui-icon-script {
  background-position: -240px -128px;
}
.ui-icon-alert {
  background-position: 0 -144px;
}
.ui-icon-info {
  background-position: -16px -144px;
}
.ui-icon-notice {
  background-position: -32px -144px;
}
.ui-icon-help {
  background-position: -48px -144px;
}
.ui-icon-check {
  background-position: -64px -144px;
}
.ui-icon-bullet {
  background-position: -80px -144px;
}
.ui-icon-radio-on {
  background-position: -96px -144px;
}
.ui-icon-radio-off {
  background-position: -112px -144px;
}
.ui-icon-pin-w {
  background-position: -128px -144px;
}
.ui-icon-pin-s {
  background-position: -144px -144px;
}
.ui-icon-play {
  background-position: 0 -160px;
}
.ui-icon-pause {
  background-position: -16px -160px;
}
.ui-icon-seek-next {
  background-position: -32px -160px;
}
.ui-icon-seek-prev {
  background-position: -48px -160px;
}
.ui-icon-seek-end {
  background-position: -64px -160px;
}
.ui-icon-seek-first {
  background-position: -80px -160px;
}
.ui-icon-seek-start {
  background-position: -80px -160px;
}
.ui-icon-stop {
  background-position: -96px -160px;
}
.ui-icon-eject {
  background-position: -112px -160px;
}
.ui-icon-volume-off {
  background-position: -128px -160px;
}
.ui-icon-volume-on {
  background-position: -144px -160px;
}
.ui-icon-power {
  background-position: 0 -176px;
}
.ui-icon-signal-diag {
  background-position: -16px -176px;
}
.ui-icon-signal {
  background-position: -32px -176px;
}
.ui-icon-battery-0 {
  background-position: -48px -176px;
}
.ui-icon-battery-1 {
  background-position: -64px -176px;
}
.ui-icon-battery-2 {
  background-position: -80px -176px;
}
.ui-icon-battery-3 {
  background-position: -96px -176px;
}
.ui-icon-circle-plus {
  background-position: 0 -192px;
}
.ui-icon-circle-minus {
  background-position: -16px -192px;
}
.ui-icon-circle-close {
  background-position: -32px -192px;
}
.ui-icon-circle-triangle-e {
  background-position: -48px -192px;
}
.ui-icon-circle-triangle-s {
  background-position: -64px -192px;
}
.ui-icon-circle-triangle-w {
  background-position: -80px -192px;
}
.ui-icon-circle-triangle-n {
  background-position: -96px -192px;
}
.ui-icon-circle-arrow-e {
  background-position: -112px -192px;
}
.ui-icon-circle-arrow-s {
  background-position: -128px -192px;
}
.ui-icon-circle-arrow-w {
  background-position: -144px -192px;
}
.ui-icon-circle-arrow-n {
  background-position: -160px -192px;
}
.ui-icon-circle-zoomin {
  background-position: -176px -192px;
}
.ui-icon-circle-zoomout {
  background-position: -192px -192px;
}
.ui-icon-circle-check {
  background-position: -208px -192px;
}
.ui-icon-circlesmall-plus {
  background-position: 0 -208px;
}
.ui-icon-circlesmall-minus {
  background-position: -16px -208px;
}
.ui-icon-circlesmall-close {
  background-position: -32px -208px;
}
.ui-icon-squaresmall-plus {
  background-position: -48px -208px;
}
.ui-icon-squaresmall-minus {
  background-position: -64px -208px;
}
.ui-icon-squaresmall-close {
  background-position: -80px -208px;
}
.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px;
}
.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px;
}
.ui-icon-grip-solid-vertical {
  background-position: -32px -224px;
}
.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px;
}
.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px;
}
.ui-icon-grip-diagonal-se {
  background-position: -80px -224px;
}
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all {
  border-radius: 0px;
}
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
  border-top-left-radius: 0px;
}
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
  border-top-right-radius: 0px;
}
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
  border-bottom-left-radius: 0px;
}
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-bottom-right-radius: 0px;
}
/* Overlays */
.ui-widget-overlay {
  background: #dddddd url("../jq_img/ui-bg_flat_0_999999_40x100.png") 50% 50% repeat-x;
  opacity: 0.3;
  filter: alpha(opacity=30);
}
.ui-widget-shadow {
  margin: -8px 0 0 -8px;
  padding: 8px;
  background: #dddddd url("../jq_img/ui-bg_flat_0_999999_40x100.png") 50% 50% repeat-x;
  opacity: 0.3;
  filter: alpha(opacity=30);
  border-radius: 8px ;
}
/*** Input field styling from Bootstrap **/
/*
input, textarea {
	.ui-transition(~"border linear 0.2s, box-shadow linear 0.2s");
}

textarea {
  overflow: auto;
  vertical-align: top;
}

input:focus, textarea:focus {
	outline: 0;
	border-color: rgba(82, 168, 236, 0.8);
	.ui-box-shadow(~"inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6)");
}
input[type=file]:focus, input[type=checkbox]:focus, select:focus {
	.ui-box-shadow (none);
	outline: 1px dotted #666;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="url"],
input[type="password"],
.ui-autocomplete-input,
textarea,
.uneditable-input {
	display: inline-block;
	padding: 4px;
	font-size: 13px;
	line-height: 18px;
	color: #555555;
	border: 1px solid #ccc;
	border-radius: 3px;
}

input[type="search"] {
  -webkit-appearance: textfield;
  .ui-box-sizing( content-box);
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
*/
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Resizable 1.10.3
 * http://api.jqueryui.com/resizable/
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-resizable {
  position: relative;
}
.ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  z-index: 99999;
  display: block;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
  display: none;
}
.ui-resizable-n {
  cursor: n-resize;
  height: 7px;
  width: 100%;
  top: -5px;
  left: 0;
}
.ui-resizable-s {
  cursor: s-resize;
  height: 7px;
  width: 100%;
  bottom: -5px;
  left: 0;
}
.ui-resizable-e {
  cursor: e-resize;
  width: 7px;
  right: -5px;
  top: 0;
  height: 100%;
}
.ui-resizable-w {
  cursor: w-resize;
  width: 7px;
  left: -5px;
  top: 0;
  height: 100%;
}
.ui-resizable-se {
  cursor: se-resize;
  width: 12px;
  height: 12px;
  right: 1px;
  bottom: 1px;
}
.ui-resizable-sw {
  cursor: sw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  bottom: -5px;
}
.ui-resizable-nw {
  cursor: nw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  top: -5px;
}
.ui-resizable-ne {
  cursor: ne-resize;
  width: 9px;
  height: 9px;
  right: -5px;
  top: -5px;
}
/*
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Selectable 1.10.3
 * http://jqueryui.com/selectable/
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-selectable-helper {
  position: absolute;
  z-index: 100;
  border: 1px dotted #000;
}
/*
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Accordion 1.10.3
 * http://jqueryui.com/accordion/
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
/* IE/Win - Fix animation bug - #4615 */
.ui-accordion {
  width: 100%;
}
.ui-accordion .ui-accordion-li-fix {
  display: inline;
}
.ui-accordion .ui-accordion-header-active {
  border-bottom: 0 !important;
}
.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin-top: 2px;
  padding: 0.5em 0.5em 0.5em 0.7em;
  min-height: 0;
  /* support: IE7 */
}
.ui-accordion .ui-accordion-icons {
  padding-left: 2.2em;
}
.ui-accordion .ui-accordion-noicons {
  padding-left: 0.7em;
}
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
  padding-left: 2.2em;
}
.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
  position: absolute;
  left: 0.5em;
  top: 50%;
  margin-top: -8px;
}
.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  margin-top: -2px;
  position: relative;
  top: 1px;
  margin-bottom: 2px;
  overflow: auto;
  display: none;
}
.ui-accordion .ui-accordion-content-active {
  display: block;
}
/*
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Autocomplete 1.10.3
 * http://docs.jquery.com/UI/Autocomplete#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
}
/*
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Button 1.10.3
 * http://docs.jquery.com/UI/Button#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-button {
  display: inline-block;
  padding: 6px 12px;
  margin-bottom: 0;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.42857143;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  border: 1px solid #ccc;
  background-color: #fff;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.ui-button:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.ui-button:focus,
.ui-button:hover {
  color: #333333;
  background-color: #ebebeb;
  border-color: #adadad;
  text-decoration: none;
}
ui-button.disabled,
ui-button[disabled],
fieldset[disabled] ui-button,
ui-button.disabled:hover,
ui-button[disabled]:hover,
fieldset[disabled] ui-button:hover,
ui-button.disabled:focus,
ui-button[disabled]:focus,
fieldset[disabled] ui-button:focus,
ui-button.disabled:active,
ui-button[disabled]:active,
fieldset[disabled] ui-button:active,
ui-button.disabled.active,
ui-button[disabled].active,
fieldset[disabled] ui-button.ui-state-active {
  background-color: #fff;
  border-color: #cccccc;
}
.ui-btn-large {
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  border-radius: 0px;
}
.ui-btn-small {
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
.ui-btn-mini {
  padding: 1px 5px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
.ui-btn-block {
  display: block;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.ui-btn-block + .ui-btn-block {
  margin-top: 5px;
}
input[type="submit"].ui-btn-block,
input[type="reset"].ui-btn-block,
input[type="button"].ui-btn-block {
  width: 100%;
}
.ui-button-text-icon-primary .ui-button-icon-primary {
  float: left;
}
.ui-button-text-icon-primary {
  padding: 2px 7px 3px;
}
.ui-button {
  color: #fff;
  background-color: #fff;
  border-color: #ccc;
}
.ui-button:hover,
.ui-button:focus,
.ui-button:active,
.ui-button.active,
.open .dropdown-toggle.ui-button {
  color: #fff;
  background-color: #ebebeb;
  border-color: #adadad;
}
.ui-button:active,
.ui-button.active,
.open .dropdown-toggle.ui-button {
  background-image: none;
}
.ui-button.disabled,
.ui-button[disabled],
fieldset[disabled] .ui-button,
.ui-button.disabled:hover,
.ui-button[disabled]:hover,
fieldset[disabled] .ui-button:hover,
.ui-button.disabled:focus,
.ui-button[disabled]:focus,
fieldset[disabled] .ui-button:focus,
.ui-button.disabled:active,
.ui-button[disabled]:active,
fieldset[disabled] .ui-button:active,
.ui-button.disabled.active,
.ui-button[disabled].active,
fieldset[disabled] .ui-button.active {
  background-color: #fff;
  border-color: #ccc;
}
.ui-button .badge {
  color: #fff;
  background-color: #fff;
}
.ui-button-primary {
  color: #fff;
  background-color: #ff6600;
  border-color: #e65c00;
}
.ui-button-primary:hover,
.ui-button-primary:focus,
.ui-button-primary:active,
.ui-button-primary.active,
.open .dropdown-toggle.ui-button-primary {
  color: #fff;
  background-color: #d65600;
  border-color: #a84300;
}
.ui-button-primary:active,
.ui-button-primary.active,
.open .dropdown-toggle.ui-button-primary {
  background-image: none;
}
.ui-button-primary.disabled,
.ui-button-primary[disabled],
fieldset[disabled] .ui-button-primary,
.ui-button-primary.disabled:hover,
.ui-button-primary[disabled]:hover,
fieldset[disabled] .ui-button-primary:hover,
.ui-button-primary.disabled:focus,
.ui-button-primary[disabled]:focus,
fieldset[disabled] .ui-button-primary:focus,
.ui-button-primary.disabled:active,
.ui-button-primary[disabled]:active,
fieldset[disabled] .ui-button-primary:active,
.ui-button-primary.disabled.active,
.ui-button-primary[disabled].active,
fieldset[disabled] .ui-button-primary.active {
  background-color: #ff6600;
  border-color: #e65c00;
}
.ui-button-primary .badge {
  color: #ff6600;
  background-color: #fff;
}
.ui-button-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.ui-button-warning:hover,
.ui-button-warning:focus,
.ui-button-warning:active,
.ui-button-warning.active,
.open .dropdown-toggle.ui-button-warning {
  color: #fff;
  background-color: #ed9c28;
  border-color: #d58512;
}
.ui-button-warning:active,
.ui-button-warning.active,
.open .dropdown-toggle.ui-button-warning {
  background-image: none;
}
.ui-button-warning.disabled,
.ui-button-warning[disabled],
fieldset[disabled] .ui-button-warning,
.ui-button-warning.disabled:hover,
.ui-button-warning[disabled]:hover,
fieldset[disabled] .ui-button-warning:hover,
.ui-button-warning.disabled:focus,
.ui-button-warning[disabled]:focus,
fieldset[disabled] .ui-button-warning:focus,
.ui-button-warning.disabled:active,
.ui-button-warning[disabled]:active,
fieldset[disabled] .ui-button-warning:active,
.ui-button-warning.disabled.active,
.ui-button-warning[disabled].active,
fieldset[disabled] .ui-button-warning.active {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.ui-button-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.ui-button-info {
  color: #fff;
  background-color: #1fb3e6;
  border-color: #18a4d4;
}
.ui-button-info:hover,
.ui-button-info:focus,
.ui-button-info:active,
.ui-button-info.active,
.open .dropdown-toggle.ui-button-info {
  color: #fff;
  background-color: #1699c6;
  border-color: #12799d;
}
.ui-button-info:active,
.ui-button-info.active,
.open .dropdown-toggle.ui-button-info {
  background-image: none;
}
.ui-button-info.disabled,
.ui-button-info[disabled],
fieldset[disabled] .ui-button-info,
.ui-button-info.disabled:hover,
.ui-button-info[disabled]:hover,
fieldset[disabled] .ui-button-info:hover,
.ui-button-info.disabled:focus,
.ui-button-info[disabled]:focus,
fieldset[disabled] .ui-button-info:focus,
.ui-button-info.disabled:active,
.ui-button-info[disabled]:active,
fieldset[disabled] .ui-button-info:active,
.ui-button-info.disabled.active,
.ui-button-info[disabled].active,
fieldset[disabled] .ui-button-info.active {
  background-color: #1fb3e6;
  border-color: #18a4d4;
}
.ui-button-info .badge {
  color: #1fb3e6;
  background-color: #fff;
}
.ui-button-danger {
  color: #fff;
  background-color: #c71f16;
  border-color: #b01b13;
}
.ui-button-danger:hover,
.ui-button-danger:focus,
.ui-button-danger:active,
.ui-button-danger.active,
.open .dropdown-toggle.ui-button-danger {
  color: #fff;
  background-color: #a21912;
  border-color: #79130d;
}
.ui-button-danger:active,
.ui-button-danger.active,
.open .dropdown-toggle.ui-button-danger {
  background-image: none;
}
.ui-button-danger.disabled,
.ui-button-danger[disabled],
fieldset[disabled] .ui-button-danger,
.ui-button-danger.disabled:hover,
.ui-button-danger[disabled]:hover,
fieldset[disabled] .ui-button-danger:hover,
.ui-button-danger.disabled:focus,
.ui-button-danger[disabled]:focus,
fieldset[disabled] .ui-button-danger:focus,
.ui-button-danger.disabled:active,
.ui-button-danger[disabled]:active,
fieldset[disabled] .ui-button-danger:active,
.ui-button-danger.disabled.active,
.ui-button-danger[disabled].active,
fieldset[disabled] .ui-button-danger.active {
  background-color: #c71f16;
  border-color: #b01b13;
}
.ui-button-danger .badge {
  color: #c71f16;
  background-color: #fff;
}
.ui-button-inverse {
  color: #fff;
  background-color: #222222;
  border-color: #222222;
}
.ui-button-inverse:hover,
.ui-button-inverse:focus,
.ui-button-inverse:active,
.ui-button-inverse.active,
.open .dropdown-toggle.ui-button-inverse {
  color: #fff;
  background-color: #0e0e0e;
  border-color: #040404;
}
.ui-button-inverse:active,
.ui-button-inverse.active,
.open .dropdown-toggle.ui-button-inverse {
  background-image: none;
}
.ui-button-inverse.disabled,
.ui-button-inverse[disabled],
fieldset[disabled] .ui-button-inverse,
.ui-button-inverse.disabled:hover,
.ui-button-inverse[disabled]:hover,
fieldset[disabled] .ui-button-inverse:hover,
.ui-button-inverse.disabled:focus,
.ui-button-inverse[disabled]:focus,
fieldset[disabled] .ui-button-inverse:focus,
.ui-button-inverse.disabled:active,
.ui-button-inverse[disabled]:active,
fieldset[disabled] .ui-button-inverse:active,
.ui-button-inverse.disabled.active,
.ui-button-inverse[disabled].active,
fieldset[disabled] .ui-button-inverse.active {
  background-color: #222222;
  border-color: #222222;
}
.ui-button-inverse .badge {
  color: #222222;
  background-color: #fff;
}
.ui-button-success {
  color: #fff;
  background-color: #5EB75B;
  border-color: #4fad4c;
}
.ui-button-success:hover,
.ui-button-success:focus,
.ui-button-success:active,
.ui-button-success.active,
.open .dropdown-toggle.ui-button-success {
  color: #fff;
  background-color: #4aa247;
  border-color: #3c8239;
}
.ui-button-success:active,
.ui-button-success.active,
.open .dropdown-toggle.ui-button-success {
  background-image: none;
}
.ui-button-success.disabled,
.ui-button-success[disabled],
fieldset[disabled] .ui-button-success,
.ui-button-success.disabled:hover,
.ui-button-success[disabled]:hover,
fieldset[disabled] .ui-button-success:hover,
.ui-button-success.disabled:focus,
.ui-button-success[disabled]:focus,
fieldset[disabled] .ui-button-success:focus,
.ui-button-success.disabled:active,
.ui-button-success[disabled]:active,
fieldset[disabled] .ui-button-success:active,
.ui-button-success.disabled.active,
.ui-button-success[disabled].active,
fieldset[disabled] .ui-button-success.active {
  background-color: #5EB75B;
  border-color: #4fad4c;
}
.ui-button-success .badge {
  color: #5EB75B;
  background-color: #fff;
}
.ui-button-error {
  color: #fff;
  background-color: #c71f16;
  border-color: #b01b13;
}
.ui-button-error:hover,
.ui-button-error:focus,
.ui-button-error:active,
.ui-button-error.active,
.open .dropdown-toggle.ui-button-error {
  color: #fff;
  background-color: #a21912;
  border-color: #79130d;
}
.ui-button-error:active,
.ui-button-error.active,
.open .dropdown-toggle.ui-button-error {
  background-image: none;
}
.ui-button-error.disabled,
.ui-button-error[disabled],
fieldset[disabled] .ui-button-error,
.ui-button-error.disabled:hover,
.ui-button-error[disabled]:hover,
fieldset[disabled] .ui-button-error:hover,
.ui-button-error.disabled:focus,
.ui-button-error[disabled]:focus,
fieldset[disabled] .ui-button-error:focus,
.ui-button-error.disabled:active,
.ui-button-error[disabled]:active,
fieldset[disabled] .ui-button-error:active,
.ui-button-error.disabled.active,
.ui-button-error[disabled].active,
fieldset[disabled] .ui-button-error.active {
  background-color: #c71f16;
  border-color: #b01b13;
}
.ui-button-error .badge {
  color: #c71f16;
  background-color: #fff;
}
/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
  width: 2.2em;
}
/* button elements seem to need a little more width */
.ui-button-icons-only {
  width: 3.4em;
}
button.ui-button-icons-only {
  width: 3.7em;
}
.ui-button-text-icon-primary .ui-button-icon-primary.ui-icon {
  margin-top: 5px;
}
/*button text element */
.ui-button .ui-button-text {
  display: block;
  line-height: 1.42857143;
}
.ui-button-icon-only .ui-button-text,
.ui-button-icons-only .ui-button-text {
  padding: 0.4em;
  text-indent: -9999px;
  display: none;
  /*tempfix*/
}
.ui-button-text-icon-primary .ui-button-text,
.ui-button-text-icons .ui-button-text {
  padding: 0.4em 1em 0.4em 2.1em;
}
.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
  padding: 0.4em 2.1em 0.4em 1em;
}
.ui-button-text-icons .ui-button-text {
  padding-left: 2.1em;
  padding-right: 2.1em;
}
/* no icon support for input elements, provide padding by default */
input.ui-button {
  padding: 0.4em 1em;
}
/*button icon element(s) */
.ui-button-icon-only .ui-icon,
.ui-button-text-icon-primary .ui-icon,
.ui-button-text-icon-secondary .ui-icon,
.ui-button-text-icons .ui-icon,
.ui-button-icons-only .ui-icon {
  margin-bottom: 0;
  margin-top: 0;
  top: 50%;
}
.ui-button-icon-only .ui-icon {
  left: 50%;
  /* chrome margin*/
  margin-left: -8px;
  /* firefox margin*/
  margin-right: -6px;
}
.ui-button-text-icon-primary .ui-button-icon-primary,
.ui-button-text-icons .ui-button-icon-primary,
.ui-button-icons-only .ui-button-icon-primary {
  left: 0.5em;
}
.ui-button-text-icon-secondary .ui-button-icon-secondary,
.ui-button-text-icons .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary {
  right: 0.5em;
}
.ui-button-text-icons .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary {
  right: 0.5em;
}
/*button sets*/
.ui-buttonset {
  margin-right: 7px;
}
.ui-buttonset .ui-state-active {
  color: #fff;
  background-color: #428bca;
  border-color: #357ebd;
}
.ui-buttonset .ui-state-active.ui-state-hover {
  color: #fff;
  background-color: #3276b1;
  border-color: #285e8e;
}
.ui-buttonset .ui-button {
  margin-left: 0;
  margin-right: -0.4em;
}
/* reset extra padding in Firefox */
button.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Menu 1.10.3
 * http://docs.jquery.com/UI/Menu#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-menu {
  list-style: none;
  padding: 2px;
  margin: 0;
  display: block;
  outline: none;
}
.ui-menu .ui-menu {
  margin-top: -3px;
  position: absolute;
  list-style: none;
}
/*
* Bug inline with IE sub menu
*/
/* IE9, IE10 */
@media screen and (min-width: 0\0) {
  .ui-menu li {
    list-style-type: none;
    display: inline;
    line-height: 0;
  }
  li.ui-menu-item {
    /* This fixes the IE10 issue (jQuery UI Issue #8844)*/
    list-style-type: none;
    display: block;
  }
}
.ui-menu .ui-menu-item {
  margin: 0;
  padding: 0;
  width: 100%;
  list-style: none;
  /* support: IE10, see #8844 */
  list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
}
.ui-menu .ui-menu-divider {
  margin: 5px -2px 5px -2px;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0 0;
}
.ui-menu .ui-menu-item a {
  text-decoration: none;
  display: block;
  padding: 2px 0.4em;
  line-height: 1.5;
  min-height: 0;
  /* support: IE7 */
  font-weight: normal;
  background-color: #fff;
  border-color: #fff;
  color: #333333;
  /* Fix problem with border in ui-state-active */
}
.ui-menu .ui-menu-item a.ui-corner-all {
  border-radius: 0px;
}
.ui-menu .ui-menu-item a.ui-state-focus,
.ui-menu .ui-menu-item a.ui-state-active,
.ui-menu .ui-menu-item a.ui-widget-content {
  font-weight: bold;
  margin: 0;
  display: block;
  white-space: nowrap;
}
.ui-menu .ui-menu-item a.ui-state-active,
.ui-menu .ui-menu-item a.ui-widget-content {
  background-color: #ff6600;
  border-color: #ff6600;
  color: #fff;
}
.ui-menu .ui-menu-item a.ui-state-focus {
  background-color: #f5f5f5;
  border-color: #f5f5f5;
  color: #262626;
}
.ui-menu .ui-menu-item a .ui-state-active {
  padding: 1px 0.4em;
}
.ui-menu .ui-state-disabled {
  font-weight: normal;
  margin: 0.4em 0 0.2em;
  line-height: 1.5;
}
.ui-menu .ui-state-disabled a {
  cursor: default;
}
/* icon support */
.ui-menu-icons {
  position: relative;
}
.ui-menu-icons .ui-menu-item a {
  position: relative;
  padding-left: 2em;
}
.ui-menu {
  width: 200px;
  margin-bottom: 2em;
  /* left-aligned */
  /* right-aligned */
}
.ui-menu .ui-icon {
  position: absolute;
  top: 0.2em;
  left: 0.2em;
}
.ui-menu .ui-menu-icon {
  position: static;
  float: right;
}
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI spinner 1.10.3
 * http://docs.jquery.com/UI/Menu#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-spinner {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  vertical-align: middle;
}
.ui-spinner-input {
  border: none;
  background: none;
  padding: 0;
  margin: 0.2em 22px 0.2em 0.4em;
  vertical-align: middle;
}
.ui-spinner-button {
  width: 16px;
  height: 50%;
  font-size: 0.5em;
  padding: 0;
  margin: 0;
  text-align: center;
  position: absolute;
  cursor: default;
  display: block;
  overflow: hidden;
  right: 0;
}
/* more specificity required here to overide default borders */
.ui-spinner {
  /* vertical centre icon */
  /* need to fix icons sprite */
}
.ui-spinner a.ui-spinner-button {
  border-top: none;
  border-bottom: none;
  border-right: none;
}
.ui-spinner .ui-icon {
  position: absolute;
  margin-top: -8px;
  top: 50%;
  left: 0;
}
.ui-spinner .ui-icon-triangle-1-s {
  background-position: -65px -16px;
}
.ui-spinner-up {
  top: 0;
}
.ui-spinner-down {
  bottom: 0;
}
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Dialog 1.10.3
 * http://docs.jquery.com/UI/Dialog#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-dialog {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.2em;
  width: 300px;
  overflow: hidden;
  outline: 0;
  background-clip: padding-box;
  background-color: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.3);
  border-radius: 0px;
  -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
  outline: medium none;
  z-index: 1050;
}
.ui-dialog .ui-dialog-titlebar {
  /*padding: .4em 1em;*/
  position: relative;
  border: 0px 0px 0px 1px solid;
  border-color: #fff;
  padding: 5px 15px;
  font-size: 18px;
  text-decoration: none;
  -moz-border-radius-bottomright: 0px;
  -webkit-border-bottom-right-radius: 0px;
  -khtml-border-bottom-right-radius: 0px;
  border-bottom-right-radius: 0px;
  -moz-border-radius-bottomleft: 0px;
  -webkit-border-bottom-left-radius: 0px;
  -khtml-border-bottom-left-radius: 0px;
  border-bottom-left-radius: 0px;
  border-bottom: 1px solid #cbcbcb;
}
.ui-dialog .ui-dialog-title {
  float: left;
  color: #333333;
  font-weight: bold;
  margin-top: 5px;
  margin-bottom: 5px;
  padding: 5px 0;
  text-overflow: ellipsis;
  overflow: hidden;
}
.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  right: 0.3em;
  top: 50%;
  width: 19px;
  margin: -20px 0 0 0;
  padding: 1px;
  height: 18px;
  font-size: 20px;
  font-weight: bold;
  line-height: 13.5px;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.25;
  filter: alpha(opacity=25);
  background: none;
  border-width: 0;
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.ui-dialog .ui-dialog-titlebar-close span {
  display: block;
  margin: 1px;
  text-indent: 9999px;
}
.ui-dialog .ui-dialog-titlebar-close:hover,
.ui-dialog .ui-dialog-titlebar-close:focus {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  padding: 15px;
  background: none;
  overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
  text-align: left;
  border-width: 1px 0 0 0;
  background-image: none;
  margin: 0.5em 0 0 0;
  background-color: #fff;
  padding: 5px 15px 5px;
  border-top: 1px solid #d5d5d5;
  -webkit-border-radius: 0 0 6px 6px;
  -moz-border-radius: 0 0 6px 6px;
  border-radius: 0 0 6px 6px;
  -webkit-box-shadow: inset 0 1px 0 #fff;
  box-shadow: inset 0 1px 0 #fff;
  margin-bottom: 0;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
  margin: 0.5em 0.4em 0.5em 0;
  cursor: pointer;
}
.ui-dialog .ui-resizable-se {
  width: 14px;
  height: 14px;
  right: 3px;
  bottom: 3px;
}
.ui-draggable .ui-dialog-titlebar {
  cursor: move;
}
.ui-dialog-buttonpane .ui-dialog-buttonset .ui-button {
  color: #ffffff;
  background-color: #428bca;
  border-color: #357ebd;
}
.ui-dialog-buttonpane .ui-dialog-buttonset .ui-button.ui-state-hover {
  color: #ffffff;
  background-color: #3276b1;
  border-color: #285e8e;
}
/***Dialog fixes**/
.ui-dialog-buttonset .ui-button:not(:first-child) {
  cursor: pointer;
  display: inline-block;
  color: #333333;
  background-color: #ffffff;
  border: 1px solid #cccccc;
  -webkit-transition: 0.1s linear all;
  transition: 0.1s linear all;
  overflow: visible;
}
.ui-dialog-buttonset .ui-button:not(:first-child).ui-state-hover {
  color: #333333;
  background-color: #ebebeb;
  border-color: #adadad;
  text-decoration: none;
}
.ui-dialog-buttonset .ui-button {
  /* ui-dialog-buttonset UI info */
  /* ui-dialog-buttonset UI success */
  /* ui-dialog-buttonset UI warning */
  /* ui-dialog-buttonset UI Danger */
  /* ui-dialog-buttonset UI Inverse */
}
.ui-dialog-buttonset .ui-button.ui-button-info {
  color: #ffffff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.ui-dialog-buttonset .ui-button.ui-button-info.ui-state-hover {
  color: #ffffff;
  background-color: #39b3d7;
  border-color: #269abc;
}
.ui-dialog-buttonset .ui-button.ui-button-success {
  color: #ffffff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.ui-dialog-buttonset .ui-button.ui-button-success.ui-state-hover {
  color: #ffffff;
  background-color: #47a447;
  border-color: #398439;
}
.ui-dialog-buttonset .ui-button.ui-button-warning {
  color: #ffffff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.ui-dialog-buttonset .ui-button.ui-button-warning.ui-state-hover {
  color: #ffffff;
  background-color: #ed9c28;
  border-color: #d58512;
}
.ui-dialog-buttonset .ui-button.ui-button-danger {
  color: #ffffff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.ui-dialog-buttonset .ui-button.ui-button-danger.ui-state-hover {
  color: #ffffff;
  background-color: #d2322d;
  border-color: #ac2925;
}
.ui-dialog-buttonset .ui-button.ui-button-inverse {
  color: #ffffff;
  background-color: #222222;
  border-color: #080808;
}
.ui-dialog-buttonset .ui-button.ui-button-inverse.ui-state-hover {
  color: #ffffff;
  background-color: #363636;
  border-color: #000000;
}
/*
 * jQuery UI Slider 1.10.3
 * http://docs.jquery.com/UI/Slider#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-slider {
  position: relative;
  text-align: left;
  /* For IE8 - See #6727 */
}
.ui-slider .ui-state-disabled .ui-slider-handle,
.ui-slider .ui-state-disabled .ui-slider-range {
  filter: inherit;
}
.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1.2em;
  height: 1.2em;
  cursor: default;
}
.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  font-size: 0.7em;
  display: block;
  border: 0;
  background-position: 0 0;
  color: #fff;
  background-image: -webkit-linear-gradient(top, #ff6600 0%, #b34700 100%);
  background-image: linear-gradient(to bottom, #ff6600 0%, #b34700 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff6600', endColorstr='#ffb34700', GradientType=0);
  -webkit-box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: width 0.6s ease;
  transition: width 0.6s ease;
  /*border-color: @ui-blue-dark @ui-blue-dark @ui-blue;
		border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); */
}
.ui-slider-horizontal {
  height: 0.8em;
}
.ui-slider-horizontal .ui-slider-handle {
  top: -0.3em;
  margin-left: -0.6em;
}
.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
  left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
  right: 0;
}
.ui-slider-vertical {
  width: 0.8em;
  height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
  left: -0.3em;
  margin-left: 0;
  margin-bottom: -0.6em;
}
.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
  bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
  top: 0;
}
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Tabs 1.10.3
 * http://docs.jquery.com/UI/Tabs#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-tabs {
  position: relative;
  /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
  border: 0;
  -moz-border-radius-topleft: 0;
  -webkit-border-top-left-radius: 0;
  -khtml-border-top-left-radius: 0;
  border-top-left-radius: 0;
  -moz-border-radius-topright: 0;
  -webkit-border-top-right-radius: 0;
  -khtml-border-top-right-radius: 0;
  border-top-right-radius: 0;
  -moz-border-radius-bottomleft: 0;
  -webkit-border-bottom-left-radius: 0;
  -khtml-border-bottom-left-radius: 0;
  border-bottom-left-radius: 0;
  -moz-border-radius-bottomright: 0;
  -webkit-border-bottom-right-radius: 0;
  -khtml-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
}
.ui-tabs .ui-tabs-nav {
  margin-bottom: 5px;
  border: solid #ddd;
  border-width: 0 0 1px 0;
  -moz-border-radius-topleft: 0;
  -webkit-border-top-left-radius: 0;
  -khtml-border-top-left-radius: 0;
  border-top-left-radius: 0;
  -moz-border-radius-topright: 0;
  -webkit-border-top-right-radius: 0;
  -khtml-border-top-right-radius: 0;
  border-top-right-radius: 0;
  -moz-border-radius-bottomleft: 0;
  -webkit-border-bottom-left-radius: 0;
  -khtml-border-bottom-left-radius: 0;
  border-bottom-left-radius: 0;
  -moz-border-radius-bottomright: 0;
  -webkit-border-bottom-right-radius: 0;
  -khtml-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
  background: none;
}
.ui-tabs .ui-tabs-nav li {
  position: relative;
  top: 0;
  float: left;
  margin-right: 2px;
  margin-bottom: -1px;
  border: 0;
  list-style: none;
  white-space: nowrap;
  background: none;
}
.ui-tabs-nav .ui-state-default {
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.ui-tabs {
  /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
}
.ui-tabs .ui-tabs-nav li a {
  float: left;
  border: 1px solid #fff;
  border-bottom: 1px solid #ddd;
  -webkit-border-radius: 4px 4px 0 0;
  -moz-border-radius: 4px 4px 0 0;
  border-radius: 4px 4px 0 0;
  padding: 8px 12px;
  font-weight: normal;
  text-decoration: none;
  outline: none;
  color: #0069D6;
  background: none;
}
.ui-tabs .ui-tabs-nav li a:hover {
  border: 1px solid whiteSmoke;
  border-bottom: 1px solid #ddd;
  background-color: whiteSmoke;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active a {
  border: 1px solid #ddd;
  border-bottom: 1px solid #fff;
  background-color: #fff;
  color: #555;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active:hover {
  background: #fff;
  cursor: text;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.ui-tabs .ui-tabs-nav li.ui-state-disabled a,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading a {
  cursor: text;
}
.ui-tabs .ui-tabs-panel {
  display: block;
  margin: 1em 0;
  border: 0;
  -moz-border-radius-topleft: 0;
  -webkit-border-top-left-radius: 0;
  -khtml-border-top-left-radius: 0;
  border-top-left-radius: 0;
  -moz-border-radius-topright: 0;
  -webkit-border-top-right-radius: 0;
  -khtml-border-top-right-radius: 0;
  border-top-right-radius: 0;
  -moz-border-radius-bottomleft: 0;
  -webkit-border-bottom-left-radius: 0;
  -khtml-border-bottom-left-radius: 0;
  border-bottom-left-radius: 0;
  -moz-border-radius-bottomright: 0;
  -webkit-border-bottom-right-radius: 0;
  -khtml-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
  padding: 1px 0;
  background: none;
}
.ui-tabs .ui-tabs-hide {
  display: none !important;
}
.ui-tabs .ui-tabs-nav li {
  filter: none;
}
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Tooltip 1.10.3
 * http://jqueryui.com/tooltip/
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-tooltip {
  display: block;
  font-size: 11px;
  opacity: 0.8;
  filter: alpha(opacity=80);
  position: absolute;
  visibility: visible;
  z-index: 1070;
  max-width: 200px;
  background: #000;
  border: 1px solid #000;
  color: #fff;
  padding: 3px 8px;
  text-align: center;
  text-decoration: none;
  -webkit-box-shadow: inset 0 1px 0 #000;
  box-shadow: inset 0 1px 0 #000;
  -moz-border-radius-topleft: 4px;
  -webkit-border-top-left-radius: 4px;
  -khtml-border-top-left-radius: 4px;
  border-top-left-radius: 4px;
  -moz-border-radius-topright: 4px;
  -webkit-border-top-right-radius: 4px;
  -khtml-border-top-right-radius: 4px;
  border-top-right-radius: 4px;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  -khtml-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  -khtml-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
  border-width: 1px;
}
.ui-tooltip .arrow {
  overflow: hidden;
  position: absolute;
  margin-left: 0;
  height: 20px;
  width: 20px;
}
.ui-tooltip .arrow.bottom {
  top: 100%;
  left: 38%;
}
.ui-tooltip .arrow.bottom:after {
  border-top: 8px solid #000;
  border-right: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid transparent;
}
.ui-tooltip .arrow.top {
  top: -50%;
  bottom: 22px;
  left: 42%;
}
.ui-tooltip .arrow.top:after {
  border-top: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #000;
  border-left: 6px solid transparent;
}
.ui-tooltip .arrow.left {
  top: 25%;
  left: -15%;
  right: 0;
  bottom: -16px;
}
.ui-tooltip .arrow.left:after {
  width: 0;
  border-top: 6px solid transparent;
  border-right: 6px solid #000;
  border-bottom: 6px solid transparent;
  border-left: 6px solid transparent;
}
.ui-tooltip .arrow.right {
  top: 26%;
  left: 100%;
  right: 0;
  bottom: -16px;
  margin-left: 1px;
}
.ui-tooltip .arrow.right:after {
  width: 0;
  border-top: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 6px solid #000;
}
.ui-tooltip .arrow:after {
  content: " ";
  position: absolute ;
  height: 0 ;
  left: 0;
  top: 0;
  width: 0;
  margin-left: 0 ;
  bottom: 12px ;
  box-shadow: 6px 5px 9px -9px #000;
}
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Progressbar 1.10.3
 * http://jqueryui.com/tooltip/
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-progressbar {
  height: 2em;
  margin-bottom: 20px;
  border: 0px;
  overflow: hidden;
  background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #f9f9f9 100%);
  background-image: linear-gradient(to bottom, #f5f5f5 0%, #f9f9f9 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);
  -moz-border-radius-topleft: 4px;
  -webkit-border-top-left-radius: 4px;
  -khtml-border-top-left-radius: 4px;
  border-top-left-radius: 4px;
  -moz-border-radius-topright: 4px;
  -webkit-border-top-right-radius: 4px;
  -khtml-border-top-right-radius: 4px;
  border-top-right-radius: 4px;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  -khtml-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  -khtml-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  text-align: left;
}
.ui-progressbar .ui-progressbar-value {
  margin: 0px;
  height: 100%;
  color: #fff;
  /*this can be removed if ui-widget-header is blue*/
  background-color: #428BCA;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: width 0.6s ease;
  transition: width 0.6s ease;
}
.ui-progressbar .ui-progressbar-overlay {
  background-image: -webkit-linear-gradient(top, #ff6600 0%, #b34700 100%);
  background-image: linear-gradient(to bottom, #ff6600 0%, #b34700 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff6600', endColorstr='#ffb34700', GradientType=0);
  background-size: 40px 40px;
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -moz-animation: progress-bar-stripes 2s linear infinite;
  -ms-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
  background-image: none;
}
/**Toolbar**/
.ui-toolbar {
  padding: 7px 14px;
  margin: 0 0 18px;
  background-image: -webkit-linear-gradient(top, #fff 0%, #fff 100%);
  background-image: linear-gradient(to bottom, #fff 0%, #fff 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffffffff', GradientType=0);
  border: 1px solid #ffffff;
  -moz-border-radius-topleft: 3px;
  -webkit-border-top-left-radius: 3px;
  -khtml-border-top-left-radius: 3px;
  border-top-left-radius: 3px;
  -moz-border-radius-topright: 3px;
  -webkit-border-top-right-radius: 3px;
  -khtml-border-top-right-radius: 3px;
  border-top-right-radius: 3px;
  -moz-border-radius-bottomleft: 3px;
  -webkit-border-bottom-left-radius: 3px;
  -khtml-border-bottom-left-radius: 3px;
  border-bottom-left-radius: 3px;
  -moz-border-radius-bottomright: 3px;
  -webkit-border-bottom-right-radius: 3px;
  -khtml-border-bottom-right-radius: 3px;
  border-bottom-right-radius: 3px;
  -webkit-box-shadow: inset 0 1px 0 #fff;
  box-shadow: inset 0 1px 0 #fff;
}
/*!
 * jQuery UI Bootstrap v1.0 Alpha
 *
 * jQuery UI Datepicker 1.10.3
 * http://docs.jquery.com/UI/Datepicker#theming
 *
 * Portions copyright Addy Osmani, jQuery UI & Twitter, Inc.
 * Created the LESS version by @dharapvj
 * Released under MIT
 */
.ui-datepicker {
  width: 17em;
  padding: 0.2em 0.2em 0;
  display: none;
}
.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: 0.2em 0;
  border: 0;
  font-weight: bold;
  width: 100%;
  padding: 4px 0;
  background-color: #f5f5f5;
  color: #555555;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  /*top: 1px;*/
}
.ui-datepicker .ui-datepicker-prev {
  left: 2px;
}
.ui-datepicker .ui-datepicker-next {
  right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
  /*left:1px;*/
}
.ui-datepicker .ui-datepicker-next-hover {
  /*right:1px;*/
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month-year {
  width: 100%;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 49%;
}
.ui-datepicker table {
  width: 100%;
  font-size: 1em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
}
.ui-datepicker th {
  padding: 0.7em 0.3em;
  text-align: center;
  font-weight: bold;
  border: 0;
}
.ui-datepicker td {
  border: 0;
  padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: 0.2em;
  text-align: right;
  text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button .ui-datepicker-current {
  float: left;
}
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header {
  border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}
.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0em;
}
/* RTL support */
.ui-datepicker-rtl {
  direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button .ui-datepicker-current {
  float: right;
}
.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
.ui-datepicker-cover {
  display: none;
  /*sorry for IE5*/
  position: absolute;
  /*must have*/
  z-index: -1;
  /*must have*/
  filter: mask();
  /*must have*/
  top: -4px;
  /*must have*/
  left: -4px;
  /*must have*/
  width: 200px;
  /*must have*/
  height: 200px;
  /*must have*/
}
.ui-datepicker th {
  font-weight: bold;
  color: #555555;
}
.ui-datepicker-today a {
  background-color: #ff6600;
  cursor: pointer;
  padding: 0 4px;
  margin-bottom: 0px;
}
.ui-datepicker-today a:hover {
  background-color: #555555;
  color: #fff;
}
.ui-datepicker td a {
  margin-bottom: 0px;
  border: 0px;
}
.ui-datepicker td:hover {
  color: #fff;
}
.ui-datepicker td .ui-state-default {
  border: 0;
  background: none;
  margin-bottom: 0;
  padding: 5px;
  color: #555555;
  text-align: center;
  filter: none;
}
.ui-datepicker td .ui-state-highlight {
  color: #fff;
  background: rgba(255, 102, 0, 0.8);
  border-color: #46b8da;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  -moz-border-radius-topleft: 0px;
  -webkit-border-top-left-radius: 0px;
  -khtml-border-top-left-radius: 0px;
  border-top-left-radius: 0px;
  -moz-border-radius-topright: 0px;
  -webkit-border-top-right-radius: 0px;
  -khtml-border-top-right-radius: 0px;
  border-top-right-radius: 0px;
  -moz-border-radius-bottomleft: 0px;
  -webkit-border-bottom-left-radius: 0px;
  -khtml-border-bottom-left-radius: 0px;
  border-bottom-left-radius: 0px;
  -moz-border-radius-bottomright: 0px;
  -webkit-border-bottom-right-radius: 0px;
  -khtml-border-bottom-right-radius: 0px;
  border-bottom-right-radius: 0px;
}
.ui-datepicker td .ui-state-active {
  color: #333333;
  background: #eeeeee;
  border-color: #adadad;
  margin-bottom: 0px;
  font-size: normal;
  text-shadow: 0px;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  -moz-border-radius-topleft: 0px;
  -webkit-border-top-left-radius: 0px;
  -khtml-border-top-left-radius: 0px;
  border-top-left-radius: 0px;
  -moz-border-radius-topright: 0px;
  -webkit-border-top-right-radius: 0px;
  -khtml-border-top-right-radius: 0px;
  border-top-right-radius: 0px;
  -moz-border-radius-bottomleft: 0px;
  -webkit-border-bottom-left-radius: 0px;
  -khtml-border-bottom-left-radius: 0px;
  border-bottom-left-radius: 0px;
  -moz-border-radius-bottomright: 0px;
  -webkit-border-bottom-right-radius: 0px;
  -khtml-border-bottom-right-radius: 0px;
  border-bottom-right-radius: 0px;
}
.ui-datepicker td .ui-state-hover {
  color: #fff;
  background: #ff6600;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  border-color: #357ebd;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  -moz-border-radius-topleft: 0px;
  -webkit-border-top-left-radius: 0px;
  -khtml-border-top-left-radius: 0px;
  border-top-left-radius: 0px;
  -moz-border-radius-topright: 0px;
  -webkit-border-top-right-radius: 0px;
  -khtml-border-top-right-radius: 0px;
  border-top-right-radius: 0px;
  -moz-border-radius-bottomleft: 0px;
  -webkit-border-bottom-left-radius: 0px;
  -khtml-border-bottom-left-radius: 0px;
  border-bottom-left-radius: 0px;
  -moz-border-radius-bottomright: 0px;
  -webkit-border-bottom-right-radius: 0px;
  -khtml-border-bottom-right-radius: 0px;
  border-bottom-right-radius: 0px;
}
.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 12px;
  line-height: 1.42857143;
  border-radius: 0px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
.btn:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.open .dropdown-toggle.btn-default {
  color: #333;
  background-color: #ebebeb;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  color: #fff;
  background-color: #ff6600;
  border-color: #e65c00;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #d65600;
  border-color: #a84300;
}
.btn-primary:active,
.btn-primary.active,
.open .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
  background-color: #ff6600;
  border-color: #e65c00;
}
.btn-primary .badge {
  color: #ff6600;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #5EB75B;
  border-color: #4fad4c;
}
.btn-success:hover,
.btn-success:focus,
.btn-success:active,
.btn-success.active,
.open .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #4aa247;
  border-color: #3c8239;
}
.btn-success:active,
.btn-success.active,
.open .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled,
.btn-success[disabled],
fieldset[disabled] .btn-success,
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled:active,
.btn-success[disabled]:active,
fieldset[disabled] .btn-success:active,
.btn-success.disabled.active,
.btn-success[disabled].active,
fieldset[disabled] .btn-success.active {
  background-color: #5EB75B;
  border-color: #4fad4c;
}
.btn-success .badge {
  color: #5EB75B;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #1fb3e6;
  border-color: #18a4d4;
}
.btn-info:hover,
.btn-info:focus,
.btn-info:active,
.btn-info.active,
.open .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #1699c6;
  border-color: #12799d;
}
.btn-info:active,
.btn-info.active,
.open .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled,
.btn-info[disabled],
fieldset[disabled] .btn-info,
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled:active,
.btn-info[disabled]:active,
fieldset[disabled] .btn-info:active,
.btn-info.disabled.active,
.btn-info[disabled].active,
fieldset[disabled] .btn-info.active {
  background-color: #1fb3e6;
  border-color: #18a4d4;
}
.btn-info .badge {
  color: #1fb3e6;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active,
.btn-warning.active,
.open .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #ed9c28;
  border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled,
.btn-warning[disabled],
fieldset[disabled] .btn-warning,
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled:active,
.btn-warning[disabled]:active,
fieldset[disabled] .btn-warning:active,
.btn-warning.disabled.active,
.btn-warning[disabled].active,
fieldset[disabled] .btn-warning.active {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #c71f16;
  border-color: #b01b13;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active,
.btn-danger.active,
.open .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #a21912;
  border-color: #79130d;
}
.btn-danger:active,
.btn-danger.active,
.open .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled,
.btn-danger[disabled],
fieldset[disabled] .btn-danger,
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled:active,
.btn-danger[disabled]:active,
fieldset[disabled] .btn-danger:active,
.btn-danger.disabled.active,
.btn-danger[disabled].active,
fieldset[disabled] .btn-danger.active {
  background-color: #c71f16;
  border-color: #b01b13;
}
.btn-danger .badge {
  color: #c71f16;
  background-color: #fff;
}
.btn-link {
  color: #ff6600;
  font-weight: normal;
  cursor: pointer;
  border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
  color: #b34700;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #dddddd;
  text-decoration: none;
}
.btn-lg {
  padding: 10px 16px;
  font-size: 15px;
  line-height: 1.3333333;
  border-radius: 0px;
}
.btn-sm {
  padding: 5px 10px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
.btn-xs {
  padding: 1px 5px;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0px;
}
.btn-block {
  display: block;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.btn-block + .btn-block {
  margin-top: 5px;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}
/***Wijmo Theming**/
div.wijmo-wijmenu {
  padding: 0 20px;
  background-image: -webkit-linear-gradient(top, #333333 0%, #222222 100%);
  background-image: linear-gradient(to bottom, #333333 0%, #222222 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff333333', endColorstr='#ff222222', GradientType=0);
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
}
.wijmo-wijmenu .ui-state-default {
  box-shadow: none;
  color: #dddddd;
}
.wijmo-wijmenu .ui-state-default .wijmo-wijmenu-text {
  color: #dddddd;
}
.wijmo-wijmenu .ui-state-hover {
  background: #444;
  background: rgba(255, 255, 255, 0.05);
}
.wijmo-wijmenu .ui-state-hover .wijmo-wijmenu-text {
  color: #fff;
}
div.wijmo-wijmenu .ui-widget-header h3 {
  position: relative;
  margin-top: 1px;
  padding: 0;
}
.wijmo-wijmenu h3 a {
  color: #fff;
  display: block;
  float: left;
  font-size: 20px;
  font-weight: 200;
  line-height: 1;
  margin-left: -20px;
  margin-top: 1px;
  padding: 8px 20px 12px;
}
.wijmo-wijmenu h3 a:hover {
  background-color: rgba(255, 255, 255, 0.05);
  color: #fff;
  text-decoration: none;
}
.wijmo-wijmenu .ui-widget-header {
  border: 0px;
}
.wijmo-wijmenu .wijmo-wijmenu-parent .wijmo-wijmenu-child {
  padding: 0.3em 0;
}
div.wijmo-wijmenu .wijmo-wijmenu-item {
  margin: 0;
  border: 0;
}
div.wijmo-wijmenu .wijmo-wijmenu-item .wijmo-wijmenu-child {
  background: #333;
  border: 0;
  margin: 0;
  padding: 6px 0;
  width: 160px;
  -webkit-border-radius: 0 0 6px 6px;
  -moz-border-radius: 0 0 6px 6px;
  border-radius: 0 0 6px 6px;
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.wijmo-wijmenu a.wijmo-wijmenu-link {
  margin: 0;
  line-height: 19px;
  padding: 10px 10px 11px;
  border: 0;
  -moz-border-radius-topleft: 0;
  -webkit-border-top-left-radius: 0;
  -khtml-border-top-left-radius: 0;
  border-top-left-radius: 0;
  -moz-border-radius-topright: 0;
  -webkit-border-top-right-radius: 0;
  -khtml-border-top-right-radius: 0;
  border-top-right-radius: 0;
  -moz-border-radius-bottomleft: 0;
  -webkit-border-bottom-left-radius: 0;
  -khtml-border-bottom-left-radius: 0;
  border-bottom-left-radius: 0;
  -moz-border-radius-bottomright: 0;
  -webkit-border-bottom-right-radius: 0;
  -khtml-border-bottom-right-radius: 0;
  border-bottom-right-radius: 0;
}
div.wijmo-wijmenu .wijmo-wijmenu-child .wijmo-wijmenu-link {
  display: block;
  float: none;
  padding: 4px 15px;
  width: auto;
}
div.wijmo-wijmenu .wijmo-wijmenu-child .wijmo-wijmenu-child .wijmo-wijmenu-text {
  float: none;
}
.wijmo-wijmenu .wijmo-wijmenu-item .wijmo-wijmenu-child .ui-state-hover {
  background: #191919;
}
.wijmo-wijmenu .wijmo-wijmenu-item .wijmo-wijmenu-separator {
  padding: 5px 0;
  background-image: none;
  background-color: #222;
  border-top: 1px solid #444;
  border-bottom: 0;
  border-left: 0;
  border-right: 0;
}
.wijmo-wijmenu .wijmo-wijmenu-item input {
  -webkit-transition: none 0s ease 0s;
  transition: none 0s ease 0s;
  background-color: rgba(255, 255, 255, 0.3);
  border: 1px solid #111111;
  -moz-border-radius-topleft: 4px;
  -webkit-border-top-left-radius: 4px;
  -khtml-border-top-left-radius: 4px;
  border-top-left-radius: 4px;
  -moz-border-radius-topright: 4px;
  -webkit-border-top-right-radius: 4px;
  -khtml-border-top-right-radius: 4px;
  border-top-right-radius: 4px;
  -moz-border-radius-bottomleft: 4px;
  -webkit-border-bottom-left-radius: 4px;
  -khtml-border-bottom-left-radius: 4px;
  border-bottom-left-radius: 4px;
  -moz-border-radius-bottomright: 4px;
  -webkit-border-bottom-right-radius: 4px;
  -khtml-border-bottom-right-radius: 4px;
  border-bottom-right-radius: 4px;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset, 0 1px 0 rgba(255, 255, 255, 0.25);
  -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset, 0 1px 0 rgba(255, 255, 255, 0.25);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset, 0 1px 0 rgba(255, 255, 255, 0.25);
  color: rgba(255, 255, 255, 0.75);
  font-family: sansFontFamily;
  line-height: 1;
  margin: 5px 10px 0 10px;
  padding: 4px 9px;
  width: 100px;
}
.wijmo-wijmenu .wijmo-wijmenu-item input:hover {
  background-color: rgba(255, 255, 255, 0.5);
  color: #fff;
}
.wijmo-wijmenu .wijmo-wijmenu-item input:focus {
  background-color: #fff;
  border: 0 none;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
  color: #333333;
  outline: 0 none;
  padding: 5px 10px;
  text-shadow: 0 1px 0 #fff;
}
.wijmo-wijmenu .ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  text-shadow: none;
}
.wijmo-wijmenu .ui-state-default {
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #dddddd;
  filter: none;
}
/*styles for jquery ui daterangepicker plugin */
.ui-daterangepickercontain {
  position: absolute;
  z-index: 999;
}
.ui-daterangepickercontain .ui-daterangepicker {
  float: left;
  padding: 5px !important;
  width: auto;
  display: inline;
  background-image: none !important;
  clear: left;
}
.ui-daterangepicker ul,
.ui-daterangepicker .ranges,
.ui-daterangepicker .range-start,
.ui-daterangepicker .range-end {
  float: left;
  padding: 0;
  margin: 0;
}
.ui-daterangepicker .ranges {
  width: auto;
  position: relative;
  padding: 5px 5px 40px 0;
  margin-left: 10px;
}
.ui-daterangepicker .range-start,
.ui-daterangepicker .range-end {
  margin-left: 5px;
}
.ui-daterangepicker button.btnDone {
  clear: both;
  position: absolute;
  bottom: 0;
  right: 0;
  cursor: pointer;
  display: inline-block;
  background-image: -webkit-linear-gradient(#fff, #fff 25%, #eeeeee);
  background-image: linear-gradient(#fff, #fff 25%, #eeeeee);
  background-repeat: no-repeat;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffeeeeee', GradientType=0);
  padding: 5px 14px 6px;
  margin: 5px;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  color: #333;
  font-size: 13px;
  line-height: normal;
  border: 1px solid #ccc;
  border-bottom-color: #bbb;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  -webkit-transition: 0.1s linear background-image;
  transition: 0.1s linear background-image;
  overflow: visible;
}
.ui-daterangepicker ul {
  width: 17.6em;
  background: none;
  border: 0;
}
.ui-daterangepicker li {
  list-style: none;
  padding: 1px;
  cursor: pointer;
  margin: 1px 0;
}
.ui-daterangepicker .ui-widget-header {
  border: 1px solid #ccc;
}
.ui-daterangepicker .ui-state-hover {
  background: #003f81;
  color: #fff;
}
.ui-daterangepicker .ui-state-hover a {
  color: #fff;
}
.ui-daterangepicker .ui-widget {
  padding-right: 4px;
}
.ui-daterangepicker li.preset_0 {
  margin-top: 1.5em !important;
}
.ui-daterangepicker .ui-widget-content a {
  text-decoration: none !important;
  font-weight: normal;
}
.ui-daterangepicker li a {
  font-weight: normal;
  margin: 0.3em 0.5em;
  display: block;
}
.ui-daterangepicker li span {
  float: right;
  margin: 0.3em 0.2em;
}
.ui-daterangepicker .title-start,
.ui-daterangepicker .title-end {
  display: block;
  margin: 0 0 0.2em;
  font-size: 1em;
  padding: 0 4px 2px;
}
.ui-daterangepicker .ui-datepicker-inline {
  font-size: 1em;
}
.ui-daterangepicker-arrows {
  padding: 2px;
  width: 204px;
  position: relative;
}
.ui-daterangepicker-arrows input.ui-rangepicker-input {
  width: 158px;
  margin: 0 2px 0 20px;
  padding: 2px;
  height: 1.1em;
}
.ui-daterangepicker-arrows .ui-daterangepicker-prev,
.ui-daterangepicker-arrows .ui-daterangepicker-next {
  position: absolute;
  top: 2px;
  padding: 1px;
}
.ui-daterangepicker-arrows .ui-daterangepicker-prev {
  left: 2px;
}
.ui-daterangepicker-arrows .ui-daterangepicker-next {
  right: 2px;
}
.ui-daterangepicker-arrows .ui-daterangepicker-prev:hover,
.ui-daterangepicker-arrows .ui-daterangepicker-next:hover,
.ui-daterangepicker-arrows .ui-daterangepicker-prev:focus,
.ui-daterangepicker-arrows .ui-daterangepicker-next:focus {
  padding: 0;
}
/*custom upload elements*/
.customfile-input {
  position: absolute;
  left: -999em;
  background: transparent;
  border: 0;
  opacity: 0;
  filter: alpha(opacity=0);
}
.customfile {
  cursor: pointer;
  width: auto;
  display: inline-block;
  position: relative;
}
.customfile.input-append .customfile-feedback {
  border-radius: 3px 0 0 3px;
  padding-left: 25px;
}
.customfile.input-prepend .customfile-feedback {
  border-radius: 0 3px 3px 0;
}
.customfile.input-prepend .add-on,
.customfile.input-append .add-on {
  color: #333;
  cursor: pointer;
  display: inline-block;
  background-image: -webkit-linear-gradient(#fff, #fff 25%, #eeeeee);
  background-image: linear-gradient(#fff, #fff 25%, #eeeeee);
  background-repeat: no-repeat;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffeeeeee', GradientType=0);
}
.customfile-disabled {
  opacity: 0.5;
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
  cursor: default;
}
.customfile-feedback {
  border: 1px solid #CCCCCC;
  color: #555555;
  display: inline-block;
  font-size: 13px;
  line-height: 18px;
  padding: 4px;
  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
  -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
  -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
  -o-transition: border linear 0.2s, box-shadow linear 0.2s;
  transition: border linear 0.2s, box-shadow linear 0.2s;
  -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
}
/* IE7 hack */
* + html .customfile-feedback {
  margin-top: 1px;
}
/* EO Hack */
.customfile-feedback-populated {
  padding-left: 25px;
  background: url(../images/icon-generic.gif) 5px center no-repeat;
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden;
}
.customfile-button {
  /* IE7 and bellow hack*/
  *margin-top: -1px;
  /* EO Hack */
}
.customfile:hover .customfile-button,
.customfile-focus .customfile-button {
  background-position: 0 -15px;
  color: #333;
  text-decoration: none;
}
/*file type icons*/
.customfile-ext-jpg,
.customfile-ext-gif,
.customfile-ext-png,
.customfile-ext-jpeg,
.customfile-ext-bmp {
  background-image: url(../images/icon-image.gif);
}
.customfile-ext-mp3,
.customfile-ext-mp4,
.customfile-ext-mov,
.customfile-ext-swf,
.customfile-ext-wav,
.customfile-ext-m4v {
  background-image: url(../images/icon-media.gif);
}
.customfile-ext-zip,
.customfile-ext-tar,
.customfile-ext-sit {
  background-image: url(../images/icon-zip.gif);
}
/**
* fix bug position button customfile. Moved from docs.css
*/
.input-append.customfile,
.input-prepend {
  font-size: 0;
  margin-bottom: 5px;
  white-space: normal;
}
.input-append.customfile .add-on {
  height: 20px;
  font-size: 14px;
  line-height: 18px;
  min-width: 70px;
}
/**
* Less'd version of Font Awesome in jQuery UI
* @author Gerits Aurelien, Vijay Dharap
*
**/
.ui-button-icon-primary.ui-icon[class^="icon-"]:before,
.ui-button-icon-primary.ui-icon[class*=" icon-"]:before,
.ui-button-icon-secondary.ui-icon[class^="icon-"]:before,
.ui-button-icon-secondary.ui-icon[class*=" icon-"]:before {
  font-size: inherit;
  margin-left: 7px!important;
  margin-left: 5px;
  display: inline;
  text-decoration: inherit;
  color: inherit;
}
/* **
* If you use "Font awesome" is disable UI icons in element
** */
.ui-state-default .ui-icon[class*=" icon-"] {
  /* Reset background with font Awesome */
  background: none;
  margin-left: -12px;
  /*fix for margin issue with font awesome buttons*/
}
/* If you do not use ui-icon uncomment the lines */
/*
.ui-button .ui-button-text{
    display: inline-block;
    padding:5px;
}

.ui-button-text-icon-primary .ui-button-icon-primary{
    float:none;
}*/

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvanEtdWktYm9vdHN0cmFwLW1peGluLWFkYXB0ZXIubGVzcyIsIi4uL2pxdWVyeS11aS9ib290c3RyYXAvbWl4aW5zLmxlc3MiLCIuLi9qcXVlcnktdWkvanEtdWktYm9vdHN0cmFwL2Jhc2UubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvY29yZS5sZXNzIiwidmFyaWFibGUvX3ZhcmlhYmxlc19ib290c3RyYXAubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvaWNvbnMubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvbWlzYy5sZXNzIiwiLi4vanF1ZXJ5LXVpL2pxLXVpLWJvb3RzdHJhcC9yZXNpemFibGUubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvc2VsZWN0YWJsZS5sZXNzIiwiLi4vanF1ZXJ5LXVpL2pxLXVpLWJvb3RzdHJhcC9hY2NvcmRpb24ubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvYXV0b2NvbXBsZXRlLmxlc3MiLCIuLi9qcXVlcnktdWkvanEtdWktYm9vdHN0cmFwL2J1dHRvbi5sZXNzIiwiLi4vanF1ZXJ5LXVpL2Jvb3RzdHJhcC9idXR0b25zLmxlc3MiLCIuLi9qcXVlcnktdWkvanEtdWktYm9vdHN0cmFwL21lbnUubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvc3Bpbm5lci5sZXNzIiwiLi4vanF1ZXJ5LXVpL2pxLXVpLWJvb3RzdHJhcC9kaWFsb2cubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvc2xpZGVyLmxlc3MiLCIuLi9qcXVlcnktdWkvanEtdWktYm9vdHN0cmFwL3RhYnMubGVzcyIsIi4uL2pxdWVyeS11aS9qcS11aS1ib290c3RyYXAvdG9vbHRpcC5sZXNzIiwiLi4vanF1ZXJ5LXVpL2pxLXVpLWJvb3RzdHJhcC9wcm9ncmVzc2Jhci5sZXNzIiwiLi4vanF1ZXJ5LXVpL2pxLXVpLWJvb3RzdHJhcC90b29sYmFyLmxlc3MiLCIuLi9qcXVlcnktdWkvanEtdWktYm9vdHN0cmFwL2RhdGVwaWNrZXIubGVzcyIsIi4uL2pxdWVyeS11aS90aGlyZFBhcnR5L3dpam1vLXRoZW1pbmcubGVzcyIsIi4uL2pxdWVyeS11aS90aGlyZFBhcnR5L3VpLmRhdGVyYW5nZXBpY2tlci5sZXNzIiwiLi4vanF1ZXJ5LXVpL3RoaXJkUGFydHkvZW5oYW5jZWQubGVzcyIsIi4uL2pxdWVyeS11aS90aGlyZFBhcnR5L2ZvbnQtYXdlc29tZS5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMkZBO0VDa2NFLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7O0FEbGNGO0VDK2JFLGlCQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7O0FEL2JGO0VBQ0ksZ0JBQUE7Ozs7QUUvRko7RUFDQyxhQUFBOztBQUdEO0VBQ0MsU0FBQTtFQUNBLE1BQU0sYUFBTjtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBOztBQUdEO0VBQ0MsU0FBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7O0FBR0QsbUJBQW1CO0FBQ25CLG1CQUFtQjtFQUNsQixTQUFTLEVBQVQ7RUFDQSxjQUFBO0VBQ0EseUJBQUE7O0FBR0QsbUJBQW1CO0VBQ2xCLFNBQVMsR0FBVDtFQUNBLGNBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBOztBQUdEOztFQUVDLGNBQUE7RUFDQSxhQUFBOzs7O0FBSUQsQ0FBRSxLQUFLO0VBQ04sVUFBQTs7O0FBSUQ7RUFDQyxXQUFBO0VBQ0EsWUFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0Esa0JBQUE7RURrT0MsVUFBQTtFQUdBLHdCQUFB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O0VBQ0EsUUFBTyxrREFBUDtFQUVBLGVBQUE7O0FBR0Q7RUFDQyx5QkFBQTtFQUNBLGNBQUE7RUFDQSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLFlBQUE7RXhCdUJBLDhEQUFBO0VBQ0EsMkRBQUE7RUFDQSwwREFBQTtFQUNBLHlEQUFBO0VBQ0Esc0RBQUE7RUNxREMsc0RBQUE7RUFDUSw4Q0FBQTs7O0F1QjVFVixDQUFDLE9BQU07RUFDTixlQUFBOzs7QUFHRDtFQUNDLGtCQUFBO0VBQ0EsZ0VBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsMEJBQUE7RUFDQSxnQkFBQTs7QUFHRDs7RUFFQyxpQkFBQTs7O0FBR0QsV0FBVyxNQUFPO0FBQW9CLGlCQUFrQjtFQUN2RCw0QkFBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTs7O0FBTUQ7QUFBcUI7QUFBcUI7QUFBcUI7QUFBc0I7RUFDcEYsK0NBQUE7O0FBRUQ7QUFBcUI7QUFBcUI7QUFBcUI7QUFBcUI7QUFBcUI7RUFDeEcsK0NBQUE7O0FBRUQ7QUFBcUI7QUFBcUI7RUFDekMsNkNBQUE7Ozs7O0FBTUQsYUFBYTtBQUFhO0VBQ3RCLFlBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBOztBQUVKLGFBQWEsV0FBWTtFQUNyQixZQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsZUFBQTs7Ozs7OztBQzFGSix1QkFBdUIsUUFBUSxnQkFBZ0I7QUFDL0MsdUJBQXVCLFFBQVEsaUJBQWlCO0FBQ2hELHlCQUF5QixRQUFRLGdCQUFnQjtBQUNqRCx5QkFBeUIsUUFBUSxpQkFBaUI7RUFDOUMsa0JBQUE7RUFDQSwwQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLHdCQUFBO0VBQ0EsY0FBQTs7Ozs7QUFNSixpQkFBa0IsU0FBUTs7RUFFdEIsZ0JBQUE7RUFDQSxrQkFBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYSAoTWl4aW5zKVxyXG4gKiBQb3J0aW9ucyBjb3B5cmlnaHQgQWRkeSBPc21hbmksIGpRdWVyeSBVSSAmIFR3aXR0ZXIsIEluYy5cclxuICogQ3JlYXRlZCB0aGUgTEVTUyB2ZXJzaW9uIGJ5IEBkaGFyYXB2alxyXG4gKiBSZWxlYXNlZCB1bmRlciBNSVQuXHJcbiAqL1xyXG5cclxuLy8gQm9yZGVyIFJhZGl1c1xyXG4jdWktYm9yZGVyLXJhZGl1cyB7XHJcblx0LnRvcExlZnQgKCBAcmFkaXVzOiA0cHggKSB7XHJcblx0XHQtbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDogQHJhZGl1cztcclxuXHRcdC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogQHJhZGl1cztcclxuXHRcdC1raHRtbC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAcmFkaXVzO1xyXG5cdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogQHJhZGl1cztcclxuXHR9XHJcblx0LnRvcFJpZ2h0ICggQHJhZGl1czogNHB4ICkge1xyXG5cdFx0LW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OiBAcmFkaXVzO1xyXG5cdFx0LXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcclxuXHRcdC1raHRtbC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcclxuXHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBAcmFkaXVzO1xyXG5cdH1cclxuXHQuYm90dG9tTGVmdCAoIEByYWRpdXM6IDRweCApIHtcclxuXHRcdC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OiBAcmFkaXVzO1xyXG5cdFx0LXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAcmFkaXVzO1xyXG5cdFx0LWtodG1sLWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEByYWRpdXM7XHJcblx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAcmFkaXVzO1xyXG5cdH1cclxuXHQuYm90dG9tUmlnaHQgKCBAcmFkaXVzOiA0cHggKSB7XHJcblx0XHQtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IEByYWRpdXM7XHJcblx0XHQtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAcmFkaXVzO1xyXG5cdFx0LWtodG1sLWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAcmFkaXVzO1xyXG5cdFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IEByYWRpdXM7XHJcblx0fVxyXG5cdFxyXG5cdC5ib3JkZXIoIEB0b3BMZWZ0OjZweCwgIEB0b3BSaWdodDo2cHgsIEBib3R0b21SaWdodDo2cHgsIEBib3R0b21MZWZ0OjZweCApIHtcclxuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogQHRvcExlZnQgQHRvcFJpZ2h0IEBib3R0b21SaWdodCBAYm90dG9tTGVmdDtcclxuXHRcdC1tb3otYm9yZGVyLXJhZGl1czogQHRvcExlZnQgQHRvcFJpZ2h0IEBib3R0b21SaWdodCBAYm90dG9tTGVmdDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IEB0b3BMZWZ0IEB0b3BSaWdodCBAYm90dG9tUmlnaHQgQGJvdHRvbUxlZnQ7XHJcblx0fVxyXG5cdFxyXG59XHJcblxyXG4udWktYm9yZGVyLXJhZGl1cyggQHJhZGl1cyApe1xyXG5cdCN1aS1ib3JkZXItcmFkaXVzICA+IC50b3BMZWZ0ICggQHJhZGl1cyApO1xyXG5cdCN1aS1ib3JkZXItcmFkaXVzICA+IC50b3BSaWdodCAoIEByYWRpdXMgKTtcclxuXHQjdWktYm9yZGVyLXJhZGl1cyAgPiAuYm90dG9tTGVmdCAoIEByYWRpdXMgKTtcclxuXHQjdWktYm9yZGVyLXJhZGl1cyAgPiAuYm90dG9tUmlnaHQgKCBAcmFkaXVzICk7XHJcbn1cclxuXHJcbiN1aS1ncmFkaWVudCB7XHJcblx0LnZlcnRpY2FsKEBzdGFydENvbG9yLCBAZW5kQ29sb3Ipe1xyXG5cdFx0I2dyYWRpZW50ID4gLnZlcnRpY2FsKEBzdGFydENvbG9yLCBAZW5kQ29sb3IpO1xyXG5cdH1cclxuXHJcblx0LnZlcnRpY2FsLXRocmVlLWNvbG9ycyhAc3RhcnRDb2xvciwgQG1pZENvbG9yLCBAY29sb3JTdG9wLCBAZW5kQ29sb3IpIHtcclxuXHRcdCNncmFkaWVudCA+IC52ZXJ0aWNhbC10aHJlZS1jb2xvcnMoQHN0YXJ0Q29sb3IsIEBtaWRDb2xvciwgQGNvbG9yU3RvcCwgQGVuZENvbG9yKTtcclxuXHR9XHJcbn1cclxuXHJcbi8vIFRyYW5zaXRpb25zXHJcbi51aS10cmFuc2l0aW9uKCBAdHJhbnNpdGlvbiApe1xyXG5cdC50cmFuc2l0aW9uKCBAdHJhbnNpdGlvbiApO1xyXG59XHJcblxyXG4udWktdHJhbnNpdGlvbiggQGFyZzEsIEBhcmcyICkge1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogQGFyZzEsIEBhcmcyO1xyXG5cdC1tb3otdHJhbnNpdGlvbjogQGFyZzEsIEBhcmcyO1xyXG5cdC1tcy10cmFuc2l0aW9uOiBAYXJnMSwgQGFyZzI7XHJcblx0LW8tdHJhbnNpdGlvbjogQGFyZzEsIEBhcmcyO1xyXG5cdHRyYW5zaXRpb246IEBhcmcxLCBAYXJnMjtcclxufVxyXG5cclxuLy8gRHJvcCBzaGFkb3dzXHJcbi51aS1ib3gtc2hhZG93KCBAc2hhZG93ICl7XHJcblx0LmJveC1zaGFkb3coIEBzaGFkb3cgKTtcclxufVxyXG5cclxuLnVpLWJveC1zaGFkb3coIEBhcmcxLCBAYXJnMiApe1xyXG5cdC13ZWJraXQtYm94LXNoYWRvdzogQGFyZzEsIEBhcmcyO1xyXG5cdC1tb3otYm94LXNoYWRvdzogQGFyZzEsIEBhcmcyO1xyXG5cdGJveC1zaGFkb3c6IEBhcmcxLCBAYXJnMjtcclxufVxyXG5cclxuLnVpLWJ1dHRvbi12YXJpYW50KEBjb2xvcjsgQGJhY2tncm91bmQ7IEBib3JkZXIpIHtcclxuXHQuYnV0dG9uLXZhcmlhbnQoQGNvbG9yOyBAYmFja2dyb3VuZDsgQGJvcmRlcik7XHJcbn1cclxuXHJcbi51aS1idXR0b24tc2l6ZSAoQHBhZGRpbmctbGFyZ2UtdmVydGljYWw7IEBwYWRkaW5nLWxhcmdlLWhvcml6b250YWw7IEBmb250LXNpemUtbGFyZ2U7IEBsaW5lLWhlaWdodC1sYXJnZTsgQGJvcmRlci1yYWRpdXMtbGFyZ2Upe1xyXG5cdC5idXR0b24tc2l6ZShAcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDsgQHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1sYXJnZTsgQGxpbmUtaGVpZ2h0LWxhcmdlOyBAYm9yZGVyLXJhZGl1cy1sYXJnZSk7XHJcbn1cclxuXHJcbi51aS1idG4tbGd7XHJcblx0LnVpLWJ1dHRvbi1zaXplKEBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOyBAcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOyBAZm9udC1zaXplLWxhcmdlOyBAbGluZS1oZWlnaHQtbGFyZ2U7IEBib3JkZXItcmFkaXVzLWxhcmdlKTtcclxufVxyXG4udWktYnRuLXhze1xyXG5cdC51aS1idXR0b24tc2l6ZShAcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDsgQHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1zbWFsbDsgQGxpbmUtaGVpZ2h0LXNtYWxsOyBAYm9yZGVyLXJhZGl1cy1zbWFsbCk7XHJcbn1cclxuLnVpLWJ0bi1zbXtcclxuICAgIHBhZGRpbmc6IDFweCA1cHg7XHJcbn1cclxuXHJcbi51aS1vcGFjaXR5KEBvcGFjaXR5KSB7XHJcblx0Lm9wYWNpdHkoQG9wYWNpdHkpOyAvLyByZW1vdmVkIFwiLzEwMFwiIHNvIHRoYXQgc2FtZSB2YWx1ZXMgY2FuIGJlIHVzZWQgdmlhIC5vcGFjaXR5IGFuZCAudWktb3BhY2l0eSBtaXhpbnMuXHJcbn1cclxuXHJcbi51aS1yZXNldC1maWx0ZXIoKXtcclxuXHQucmVzZXQtZmlsdGVyKCk7XHJcbn1cclxuXHJcbi51aS1ib3gtc2l6aW5nKEBib3htb2RlbCkge1xyXG5cdC5ib3gtc2l6aW5nKEBib3htb2RlbCk7XHJcbn1cclxuXHJcbi51aS11c2VyLXNlbGVjdChAc2VsZWN0KSB7XHJcblx0LnVzZXItc2VsZWN0KEBzZWxlY3QpO1xyXG59XHJcblxyXG4udWktdGFiLWZvY3VzKCkge1xyXG5cdC50YWItZm9jdXMoKTtcclxufVxyXG5cclxuLnVpLWFuaW1hdGlvbihAYW5pbSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBAYW5pbTtcclxuICAgICAtbW96LWFuaW1hdGlvbjogQGFuaW07XHJcbiAgICAgIC1tcy1hbmltYXRpb246IEBhbmltO1xyXG4gICAgICAgLW8tYW5pbWF0aW9uOiBAYW5pbTtcclxuICAgICAgICAgIGFuaW1hdGlvbjogQGFuaW07XHJcbn0iLCIvL1xyXG4vLyBNaXhpbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblxyXG4vLyBVdGlsaXRpZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gQ2xlYXJmaXhcclxuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cclxuLy9cclxuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xyXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxyXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxyXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcclxuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cclxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcclxuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxyXG4uY2xlYXJmaXgoKSB7XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFdlYktpdC1zdHlsZSBmb2N1c1xyXG4udGFiLWZvY3VzKCkge1xyXG4gIC8vIERlZmF1bHRcclxuICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcclxuICAvLyBXZWJLaXRcclxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XHJcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XHJcbn1cclxuXHJcbi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcclxuLmNlbnRlci1ibG9jaygpIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vIFNpemluZyBzaG9ydGN1dHNcclxuLnNpemUoQHdpZHRoOyBAaGVpZ2h0KSB7XHJcbiAgd2lkdGg6IEB3aWR0aDtcclxuICBoZWlnaHQ6IEBoZWlnaHQ7XHJcbn1cclxuLnNxdWFyZShAc2l6ZSkge1xyXG4gIC5zaXplKEBzaXplOyBAc2l6ZSk7XHJcbn1cclxuXHJcbi8vIFBsYWNlaG9sZGVyIHRleHRcclxuLnBsYWNlaG9sZGVyKEBjb2xvcjogQGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XHJcbiAgJjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgICAgeyBjb2xvcjogQGNvbG9yOyB9IC8vIEZpcmVmb3ggNC0xOFxyXG4gICY6Oi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHsgY29sb3I6IEBjb2xvcjsgICAvLyBGaXJlZm94IDE5K1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTsgfSAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcclxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciAgICAgICB7IGNvbG9yOiBAY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXHJcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogQGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXHJcbn1cclxuXHJcbi8vIFRleHQgb3ZlcmZsb3dcclxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xyXG4udGV4dC1vdmVyZmxvdygpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxyXG4vL1xyXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCB3aXRoIG9ubHkgYC5oaWRlLXRleHQoKWAsIGJ1dCBwZXIgb3VyIHBhdHRlcm4gZm9yXHJcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xyXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC4gTm90ZVxyXG4vLyB0aGF0IHdlIGNhbm5vdCBjaGFpbiB0aGUgbWl4aW5zIHRvZ2V0aGVyIGluIExlc3MsIHNvIHRoZXkgYXJlIHJlcGVhdGVkLlxyXG4vL1xyXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcclxuXHJcbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xICh3aWxsIGJlIHJlbW92ZWQgaW4gdjQpXHJcbi5oaWRlLXRleHQoKSB7XHJcbiAgZm9udDogflwiMC8wXCIgYTtcclxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXHJcbi50ZXh0LWhpZGUoKSB7XHJcbiAgLmhpZGUtdGV4dCgpO1xyXG59XHJcblxyXG5cclxuXHJcbi8vIENTUzMgUFJPUEVSVElFU1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xyXG4uYm9yZGVyLXRvcC1yYWRpdXMoQHJhZGl1cykge1xyXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBAcmFkaXVzO1xyXG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAcmFkaXVzO1xyXG59XHJcbi5ib3JkZXItcmlnaHQtcmFkaXVzKEByYWRpdXMpIHtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcclxuICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQHJhZGl1cztcclxufVxyXG4uYm9yZGVyLWJvdHRvbS1yYWRpdXMoQHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAcmFkaXVzO1xyXG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAcmFkaXVzO1xyXG59XHJcbi5ib3JkZXItbGVmdC1yYWRpdXMoQHJhZGl1cykge1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEByYWRpdXM7XHJcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogQHJhZGl1cztcclxufVxyXG5cclxuLy8gRHJvcCBzaGFkb3dzXHJcbi8vXHJcbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3NcclxuLy8gICBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IHRoZVxyXG4vLyAgIHN0YW5kYXJkIGBib3gtc2hhZG93YCBwcm9wZXJ0eS5cclxuLmJveC1zaGFkb3coQHNoYWRvdykge1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogQHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcclxuICAgICAgICAgIGJveC1zaGFkb3c6IEBzaGFkb3c7XHJcbn1cclxuXHJcbi8vIFRyYW5zaXRpb25zXHJcbi50cmFuc2l0aW9uKEB0cmFuc2l0aW9uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBAdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xyXG59XHJcbi50cmFuc2l0aW9uLXByb3BlcnR5KEB0cmFuc2l0aW9uLXByb3BlcnR5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBAdHJhbnNpdGlvbi1wcm9wZXJ0eTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IEB0cmFuc2l0aW9uLXByb3BlcnR5O1xyXG59XHJcbi50cmFuc2l0aW9uLWRlbGF5KEB0cmFuc2l0aW9uLWRlbGF5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiBAdHJhbnNpdGlvbi1kZWxheTtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IEB0cmFuc2l0aW9uLWRlbGF5O1xyXG59XHJcbi50cmFuc2l0aW9uLWR1cmF0aW9uKEB0cmFuc2l0aW9uLWR1cmF0aW9uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiBAdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IEB0cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG59XHJcbi50cmFuc2l0aW9uLXRyYW5zZm9ybShAdHJhbnNpdGlvbikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gQHRyYW5zaXRpb247XHJcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcclxuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcclxuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcclxufVxyXG5cclxuLy8gVHJhbnNmb3JtYXRpb25zXHJcbi5yb3RhdGUoQGRlZ3JlZXMpIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTsgLy8gSUU5IG9ubHlcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKEBkZWdyZWVzKTtcclxufVxyXG4uc2NhbGUoQHJhdGlvOyBAcmF0aW8teS4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZShAcmF0aW8sIEByYXRpby15KTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoQHJhdGlvLCBAcmF0aW8teSk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKEByYXRpbywgQHJhdGlvLXkpO1xyXG59XHJcbi50cmFuc2xhdGUoQHg7IEB5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZShAeCwgQHkpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoQHgsIEB5KTsgLy8gSUU5IG9ubHlcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKEB4LCBAeSk7XHJcbn1cclxuLnNrZXcoQHg7IEB5KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoQHgsIEB5KTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goQHgpIHNrZXdZKEB5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3KEB4LCBAeSk7XHJcbn1cclxuLnRyYW5zbGF0ZTNkKEB4OyBAeTsgQHopIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoQHgsIEB5LCBAeik7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopO1xyXG59XHJcblxyXG4ucm90YXRlWChAZGVncmVlcykge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKEBkZWdyZWVzKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWChAZGVncmVlcyk7IC8vIElFOSBvbmx5XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoQGRlZ3JlZXMpO1xyXG59XHJcbi5yb3RhdGVZKEBkZWdyZWVzKSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoQGRlZ3JlZXMpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKEBkZWdyZWVzKTsgLy8gSUU5IG9ubHlcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWShAZGVncmVlcyk7XHJcbn1cclxuLnBlcnNwZWN0aXZlKEBwZXJzcGVjdGl2ZSkge1xyXG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IEBwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlOiBAcGVyc3BlY3RpdmU7XHJcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogQHBlcnNwZWN0aXZlO1xyXG59XHJcbi5wZXJzcGVjdGl2ZS1vcmlnaW4oQHBlcnNwZWN0aXZlKSB7XHJcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46IEBwZXJzcGVjdGl2ZTtcclxuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogQHBlcnNwZWN0aXZlO1xyXG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiBAcGVyc3BlY3RpdmU7XHJcbn1cclxuLnRyYW5zZm9ybS1vcmlnaW4oQG9yaWdpbikge1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogQG9yaWdpbjtcclxuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IEBvcmlnaW47XHJcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBAb3JpZ2luOyAvLyBJRTkgb25seVxyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogQG9yaWdpbjtcclxufVxyXG5cclxuLy8gQW5pbWF0aW9uc1xyXG4uYW5pbWF0aW9uKEBhbmltYXRpb24pIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogQGFuaW1hdGlvbjtcclxuICAgICAgICAgIGFuaW1hdGlvbjogQGFuaW1hdGlvbjtcclxufVxyXG4uYW5pbWF0aW9uLW5hbWUoQG5hbWUpIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBAbmFtZTtcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBAbmFtZTtcclxufVxyXG4uYW5pbWF0aW9uLWR1cmF0aW9uKEBkdXJhdGlvbikge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBAZHVyYXRpb247XHJcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IEBkdXJhdGlvbjtcclxufVxyXG4uYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbihAdGltaW5nLWZ1bmN0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBAdGltaW5nLWZ1bmN0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcclxufVxyXG4uYW5pbWF0aW9uLWRlbGF5KEBkZWxheSkge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XHJcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IEBkZWxheTtcclxufVxyXG4uYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudChAaXRlcmF0aW9uLWNvdW50KSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBAaXRlcmF0aW9uLWNvdW50O1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogQGl0ZXJhdGlvbi1jb3VudDtcclxufVxyXG4uYW5pbWF0aW9uLWRpcmVjdGlvbihAZGlyZWN0aW9uKSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBAZGlyZWN0aW9uO1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogQGRpcmVjdGlvbjtcclxufVxyXG5cclxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxyXG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxyXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXHJcbi5iYWNrZmFjZS12aXNpYmlsaXR5KEB2aXNpYmlsaXR5KXtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IEB2aXNpYmlsaXR5O1xyXG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogQHZpc2liaWxpdHk7XHJcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcclxufVxyXG5cclxuLy8gQm94IHNpemluZ1xyXG4uYm94LXNpemluZyhAYm94bW9kZWwpIHtcclxuICAtd2Via2l0LWJveC1zaXppbmc6IEBib3htb2RlbDtcclxuICAgICAtbW96LWJveC1zaXppbmc6IEBib3htb2RlbDtcclxuICAgICAgICAgIGJveC1zaXppbmc6IEBib3htb2RlbDtcclxufVxyXG5cclxuLy8gVXNlciBzZWxlY3RcclxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXHJcbi51c2VyLXNlbGVjdChAc2VsZWN0KSB7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogQHNlbGVjdDtcclxuICAgICAtbW96LXVzZXItc2VsZWN0OiBAc2VsZWN0O1xyXG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IEBzZWxlY3Q7IC8vIElFMTArXHJcbiAgICAgICAtby11c2VyLXNlbGVjdDogQHNlbGVjdDtcclxuICAgICAgICAgIHVzZXItc2VsZWN0OiBAc2VsZWN0O1xyXG59XHJcblxyXG4vLyBSZXNpemUgYW55dGhpbmdcclxuLnJlc2l6YWJsZShAZGlyZWN0aW9uKSB7XHJcbiAgcmVzaXplOiBAZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyBTYWZhcmkgZml4XHJcbn1cclxuXHJcbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXHJcbi5jb250ZW50LWNvbHVtbnMoQGNvbHVtbi1jb3VudDsgQGNvbHVtbi1nYXA6IEBncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xyXG4gICAgIC1tb3otY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xyXG4gICAgICAgICAgY29sdW1uLWNvdW50OiBAY29sdW1uLWNvdW50O1xyXG4gIC13ZWJraXQtY29sdW1uLWdhcDogQGNvbHVtbi1nYXA7XHJcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiBAY29sdW1uLWdhcDtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IEBjb2x1bW4tZ2FwO1xyXG59XHJcblxyXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxyXG4uaHlwaGVucyhAbW9kZTogYXV0bykge1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAtd2Via2l0LWh5cGhlbnM6IEBtb2RlO1xyXG4gICAgIC1tb3otaHlwaGVuczogQG1vZGU7XHJcbiAgICAgIC1tcy1oeXBoZW5zOiBAbW9kZTsgLy8gSUUxMCtcclxuICAgICAgIC1vLWh5cGhlbnM6IEBtb2RlO1xyXG4gICAgICAgICAgaHlwaGVuczogQG1vZGU7XHJcbn1cclxuXHJcbi8vIE9wYWNpdHlcclxuLm9wYWNpdHkoQG9wYWNpdHkpIHtcclxuICBvcGFjaXR5OiBAb3BhY2l0eTtcclxuICAvLyBJRTggZmlsdGVyXHJcbiAgQG9wYWNpdHktaWU6IChAb3BhY2l0eSAqIDEwMCk7XHJcbiAgZmlsdGVyOiB+XCJhbHBoYShvcGFjaXR5PUB7b3BhY2l0eS1pZX0pXCI7XHJcbn1cclxuXHJcblxyXG5cclxuLy8gR1JBRElFTlRTXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4jZ3JhZGllbnQge1xyXG5cclxuICAvLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcclxuICAvL1xyXG4gIC8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXHJcbiAgLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cclxuICAuaG9yaXpvbnRhbChAc3RhcnQtY29sb3I6ICM1NTU7IEBlbmQtY29sb3I6ICMzMzM7IEBzdGFydC1wZXJjZW50OiAwJTsgQGVuZC1wZXJjZW50OiAxMDAlKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCBjb2xvci1zdG9wKEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCksIGNvbG9yLXN0b3AoQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBAc3RhcnQtY29sb3IgQHN0YXJ0LXBlcmNlbnQsIEBlbmQtY29sb3IgQGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MSlcIixhcmdiKEBzdGFydC1jb2xvciksYXJnYihAZW5kLWNvbG9yKSkpOyAvLyBJRTkgYW5kIGRvd25cclxuICB9XHJcblxyXG4gIC8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cclxuICAvL1xyXG4gIC8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXHJcbiAgLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cclxuICAudmVydGljYWwoQHN0YXJ0LWNvbG9yOiAjNTU1OyBAZW5kLWNvbG9yOiAjMzMzOyBAc3RhcnQtcGVyY2VudDogMCU7IEBlbmQtcGVyY2VudDogMTAwJSkge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnQtY29sb3IgQHN0YXJ0LXBlcmNlbnQsIEBlbmQtY29sb3IgQGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTApXCIsYXJnYihAc3RhcnQtY29sb3IpLGFyZ2IoQGVuZC1jb2xvcikpKTsgLy8gSUU5IGFuZCBkb3duXHJcbiAgfVxyXG5cclxuICAuZGlyZWN0aW9uYWwoQHN0YXJ0LWNvbG9yOiAjNTU1OyBAZW5kLWNvbG9yOiAjMzMzOyBAZGVnOiA0NWRlZykge1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0LWNvbG9yLCBAZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQGRlZywgQHN0YXJ0LWNvbG9yLCBAZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xyXG4gIH1cclxuICAuaG9yaXpvbnRhbC10aHJlZS1jb2xvcnMoQHN0YXJ0LWNvbG9yOiAjMDBiM2VlOyBAbWlkLWNvbG9yOiAjN2E0M2I2OyBAY29sb3Itc3RvcDogNTAlOyBAZW5kLWNvbG9yOiAjYzMzMjVmKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnQtY29sb3IsIEBtaWQtY29sb3IgQGNvbG9yLXN0b3AsIEBlbmQtY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBAc3RhcnQtY29sb3IsIEBtaWQtY29sb3IgQGNvbG9yLXN0b3AsIEBlbmQtY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTEpXCIsYXJnYihAc3RhcnQtY29sb3IpLGFyZ2IoQGVuZC1jb2xvcikpKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcclxuICB9XHJcbiAgLnZlcnRpY2FsLXRocmVlLWNvbG9ycyhAc3RhcnQtY29sb3I6ICMwMGIzZWU7IEBtaWQtY29sb3I6ICM3YTQzYjY7IEBjb2xvci1zdG9wOiA1MCU7IEBlbmQtY29sb3I6ICNjMzMyNWYpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBzdGFydC1jb2xvciwgQG1pZC1jb2xvciBAY29sb3Itc3RvcCwgQGVuZC1jb2xvcik7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoQHN0YXJ0LWNvbG9yLCBAbWlkLWNvbG9yIEBjb2xvci1zdG9wLCBAZW5kLWNvbG9yKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBmaWx0ZXI6IGUoJShcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSclZCcsIGVuZENvbG9yc3RyPSclZCcsIEdyYWRpZW50VHlwZT0wKVwiLGFyZ2IoQHN0YXJ0LWNvbG9yKSxhcmdiKEBlbmQtY29sb3IpKSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXHJcbiAgfVxyXG4gIC5yYWRpYWwoQGlubmVyLWNvbG9yOiAjNTU1OyBAb3V0ZXItY29sb3I6ICMzMzMpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyLWNvbG9yLCBAb3V0ZXItY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgQGlubmVyLWNvbG9yLCBAb3V0ZXItY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICB9XHJcbiAgLnN0cmlwZWQoQGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7IEBhbmdsZTogNDVkZWcpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgQGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIEBjb2xvciA1MCUsIEBjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KEBhbmdsZSwgQGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIEBjb2xvciA1MCUsIEBjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcclxuLy9cclxuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XHJcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXHJcbi5yZXNldC1maWx0ZXIoKSB7XHJcbiAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKVwiKSk7XHJcbn1cclxuXHJcblxyXG5cclxuLy8gUmV0aW5hIGltYWdlc1xyXG4vL1xyXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemVcclxuXHJcbi5pbWctcmV0aW5hKEBmaWxlLTF4OyBAZmlsZS0yeDsgQHdpZHRoLTF4OyBAaGVpZ2h0LTF4KSB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiQHtmaWxlLTF4fVwiKTtcclxuXHJcbiAgQG1lZGlhXHJcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMi8xKSxcclxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXHJcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDJkcHB4KSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJAe2ZpbGUtMnh9XCIpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBAd2lkdGgtMXggQGhlaWdodC0xeDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBSZXNwb25zaXZlIGltYWdlXHJcbi8vXHJcbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXHJcblxyXG4uaW1nLXJlc3BvbnNpdmUoQGRpc3BsYXk6IGJsb2NrKSB7XHJcbiAgZGlzcGxheTogQGRpc3BsYXk7XHJcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxyXG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcclxufVxyXG5cclxuXHJcbi8vIENPTVBPTkVOVCBNSVhJTlNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIEhvcml6b250YWwgZGl2aWRlcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcclxuLm5hdi1kaXZpZGVyKEBjb2xvcjogI2U1ZTVlNSkge1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogKChAbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XHJcbn1cclxuXHJcbi8vIFBhbmVsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5wYW5lbC12YXJpYW50KEBib3JkZXI7IEBoZWFkaW5nLXRleHQtY29sb3I7IEBoZWFkaW5nLWJnLWNvbG9yOyBAaGVhZGluZy1ib3JkZXIpIHtcclxuICBib3JkZXItY29sb3I6IEBib3JkZXI7XHJcblxyXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XHJcbiAgICBjb2xvcjogQGhlYWRpbmctdGV4dC1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEBoZWFkaW5nLWJnLWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAaGVhZGluZy1ib3JkZXI7XHJcblxyXG4gICAgKyAucGFuZWwtY29sbGFwc2UgLnBhbmVsLWJvZHkge1xyXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBAYm9yZGVyO1xyXG4gICAgfVxyXG4gIH1cclxuICAmID4gLnBhbmVsLWZvb3RlciB7XHJcbiAgICArIC5wYW5lbC1jb2xsYXBzZSAucGFuZWwtYm9keSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IEBib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBbGVydHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uYWxlcnQtdmFyaWFudChAYmFja2dyb3VuZDsgQGJvcmRlcjsgQHRleHQtY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6IEBib3JkZXI7XHJcbiAgY29sb3I6IEB0ZXh0LWNvbG9yO1xyXG5cclxuICBociB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oQGJvcmRlciwgNSUpO1xyXG4gIH1cclxuICAuYWxlcnQtbGluayB7XHJcbiAgICBjb2xvcjogZGFya2VuKEB0ZXh0LWNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gVGFibGVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnRhYmxlLXJvdy12YXJpYW50KEBzdGF0ZTsgQGJhY2tncm91bmQpIHtcclxuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxyXG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXHJcbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcclxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxyXG4gIC50YWJsZSA+IHRmb290ID4gdHIge1xyXG4gICAgPiB0ZC5Ae3N0YXRlfSxcclxuICAgID4gdGguQHtzdGF0ZX0sXHJcbiAgICAmLkB7c3RhdGV9ID4gdGQsXHJcbiAgICAmLkB7c3RhdGV9ID4gdGgge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcclxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cclxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcclxuICAgID4gdGQuQHtzdGF0ZX06aG92ZXIsXHJcbiAgICA+IHRoLkB7c3RhdGV9OmhvdmVyLFxyXG4gICAgJi5Ae3N0YXRlfTpob3ZlciA+IHRkLFxyXG4gICAgJi5Ae3N0YXRlfTpob3ZlciA+IHRoIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBiYWNrZ3JvdW5kLCA1JSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBMaXN0IEdyb3Vwc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5saXN0LWdyb3VwLWl0ZW0tdmFyaWFudChAc3RhdGU7IEBiYWNrZ3JvdW5kOyBAY29sb3IpIHtcclxuICAubGlzdC1ncm91cC1pdGVtLUB7c3RhdGV9IHtcclxuICAgIGNvbG9yOiBAY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuXHJcbiAgICBhJiB7XHJcbiAgICAgIGNvbG9yOiBAY29sb3I7XHJcblxyXG4gICAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcgeyBjb2xvcjogaW5oZXJpdDsgfVxyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6IEBjb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oQGJhY2tncm91bmQsIDUlKTtcclxuICAgICAgfVxyXG4gICAgICAmLmFjdGl2ZSxcclxuICAgICAgJi5hY3RpdmU6aG92ZXIsXHJcbiAgICAgICYuYWN0aXZlOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBAY29sb3I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEJ1dHRvbiB2YXJpYW50c1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcclxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXHJcbi5idXR0b24tdmFyaWFudChAY29sb3I7IEBiYWNrZ3JvdW5kOyBAYm9yZGVyKSB7XHJcbiAgY29sb3I6IEBjb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAYmFja2dyb3VuZDtcclxuICBib3JkZXItY29sb3I6IEBib3JkZXI7XHJcblxyXG4gICY6aG92ZXIsXHJcbiAgJjpmb2N1cyxcclxuICAmOmFjdGl2ZSxcclxuICAmLmFjdGl2ZSxcclxuICAub3BlbiAuZHJvcGRvd24tdG9nZ2xlJiB7XHJcbiAgICBjb2xvcjogQGNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKEBiYWNrZ3JvdW5kLCA4JSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oQGJvcmRlciwgMTIlKTtcclxuICB9XHJcbiAgJjphY3RpdmUsXHJcbiAgJi5hY3RpdmUsXHJcbiAgLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSYge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICB9XHJcbiAgJi5kaXNhYmxlZCxcclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICAmLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQ7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IEBib3JkZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmFkZ2Uge1xyXG4gICAgY29sb3I6IEBiYWNrZ3JvdW5kO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQnV0dG9uIHNpemVzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmJ1dHRvbi1zaXplKEBwYWRkaW5nLXZlcnRpY2FsOyBAcGFkZGluZy1ob3Jpem9udGFsOyBAZm9udC1zaXplOyBAbGluZS1oZWlnaHQ7IEBib3JkZXItcmFkaXVzKSB7XHJcbiAgcGFkZGluZzogQHBhZGRpbmctdmVydGljYWwgQHBhZGRpbmctaG9yaXpvbnRhbDtcclxuICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6IEBsaW5lLWhlaWdodDtcclxuICBib3JkZXItcmFkaXVzOiBAYm9yZGVyLXJhZGl1cztcclxufVxyXG5cclxuLy8gUGFnaW5hdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5wYWdpbmF0aW9uLXNpemUoQHBhZGRpbmctdmVydGljYWw7IEBwYWRkaW5nLWhvcml6b250YWw7IEBmb250LXNpemU7IEBib3JkZXItcmFkaXVzKSB7XHJcbiAgPiBsaSB7XHJcbiAgICA+IGEsXHJcbiAgICA+IHNwYW4ge1xyXG4gICAgICBwYWRkaW5nOiBAcGFkZGluZy12ZXJ0aWNhbCBAcGFkZGluZy1ob3Jpem9udGFsO1xyXG4gICAgICBmb250LXNpemU6IEBmb250LXNpemU7XHJcbiAgICB9XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgPiBhLFxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIC5ib3JkZXItbGVmdC1yYWRpdXMoQGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICA+IGEsXHJcbiAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgLmJvcmRlci1yaWdodC1yYWRpdXMoQGJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBMYWJlbHNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ubGFiZWwtdmFyaWFudChAY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XHJcbiAgJltocmVmXSB7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAY29sb3IsIDEwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmJnLXZhcmlhbnQoQGNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yO1xyXG4gIGEmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihAY29sb3IsIDEwJSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBUeXBvZ3JhcGh5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnRleHQtZW1waGFzaXMtdmFyaWFudChAY29sb3IpIHtcclxuICBjb2xvcjogQGNvbG9yO1xyXG4gIGEmOmhvdmVyIHtcclxuICAgIGNvbG9yOiBkYXJrZW4oQGNvbG9yLCAxMCUpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cclxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxyXG4ubmF2YmFyLXZlcnRpY2FsLWFsaWduKEBlbGVtZW50LWhlaWdodCkge1xyXG4gIG1hcmdpbi10b3A6ICgoQG5hdmJhci1oZWlnaHQgLSBAZWxlbWVudC1oZWlnaHQpIC8gMik7XHJcbiAgbWFyZ2luLWJvdHRvbTogKChAbmF2YmFyLWhlaWdodCAtIEBlbGVtZW50LWhlaWdodCkgLyAyKTtcclxufVxyXG5cclxuLy8gUHJvZ3Jlc3MgYmFyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5wcm9ncmVzcy1iYXItdmFyaWFudChAY29sb3IpIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3I7XHJcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XHJcbiAgICAjZ3JhZGllbnQgPiAuc3RyaXBlZCgpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gUmVzcG9uc2l2ZSB1dGlsaXRpZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxyXG4ucmVzcG9uc2l2ZS12aXNpYmlsaXR5KCkge1xyXG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgdGFibGUmICB7IGRpc3BsYXk6IHRhYmxlOyB9XHJcbiAgdHImICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgdGgmLFxyXG4gIHRkJiAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cclxufVxyXG5cclxuLnJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCkge1xyXG4gICAgJixcclxuICB0ciYsXHJcbiAgdGgmLFxyXG4gIHRkJiB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxyXG59XHJcblxyXG5cclxuLy8gR3JpZCBTeXN0ZW1cclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbi8vIENlbnRlcmVkIGNvbnRhaW5lciBlbGVtZW50XHJcbi5jb250YWluZXItZml4ZWQoKSB7XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIHBhZGRpbmctbGVmdDogIChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoQGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XHJcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XHJcbn1cclxuXHJcbi8vIENyZWF0ZXMgYSB3cmFwcGVyIGZvciBhIHNlcmllcyBvZiBjb2x1bW5zXHJcbi5tYWtlLXJvdyhAZ3V0dGVyOiBAZ3JpZC1ndXR0ZXItd2lkdGgpIHtcclxuICBtYXJnaW4tbGVmdDogIChAZ3V0dGVyIC8gLTIpO1xyXG4gIG1hcmdpbi1yaWdodDogKEBndXR0ZXIgLyAtMik7XHJcbiAgJjpleHRlbmQoLmNsZWFyZml4IGFsbCk7XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXHJcbi5tYWtlLXhzLWNvbHVtbihAY29sdW1uczsgQGd1dHRlcjogQGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHdpZHRoOiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKEBndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoQGd1dHRlciAvIDIpO1xyXG59XHJcbi5tYWtlLXhzLWNvbHVtbi1vZmZzZXQoQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi14cy1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLm1ha2UteHMtY29sdW1uLXB1c2goQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi14cy1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4ubWFrZS14cy1jb2x1bW4tcHVsbChAY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXhzLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXHJcbi5tYWtlLXNtLWNvbHVtbihAY29sdW1uczsgQGd1dHRlcjogQGdyaWQtZ3V0dGVyLXdpZHRoKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nLWxlZnQ6ICAoQGd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6IChAZ3V0dGVyIC8gMik7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5tYWtlLXNtLWNvbHVtbi1vZmZzZXQoQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLm1ha2Utc20tY29sdW1uLXB1c2goQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1zbS1taW4pIHtcclxuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4ubWFrZS1zbS1jb2x1bW4tcHVsbChAY29sdW1ucykge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiBAc2NyZWVuLXNtLW1pbikge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xyXG4ubWFrZS1tZC1jb2x1bW4oQGNvbHVtbnM7IEBndXR0ZXI6IEBncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKEBndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoQGd1dHRlciAvIDIpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4ubWFrZS1tZC1jb2x1bW4tb2Zmc2V0KEBjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbWQtbWluKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5tYWtlLW1kLWNvbHVtbi1wdXNoKEBjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbWQtbWluKSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLm1ha2UtbWQtY29sdW1uLXB1bGwoQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1tZC1taW4pIHtcclxuICAgIHJpZ2h0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xyXG4ubWFrZS1sZy1jb2x1bW4oQGNvbHVtbnM7IEBndXR0ZXI6IEBncmlkLWd1dHRlci13aWR0aCkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAgKEBndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoQGd1dHRlciAvIDIpO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKEBjb2x1bW5zIC8gQGdyaWQtY29sdW1ucykpO1xyXG4gIH1cclxufVxyXG4ubWFrZS1sZy1jb2x1bW4tb2Zmc2V0KEBjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoQGNvbHVtbnMgLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5tYWtlLWxnLWNvbHVtbi1wdXNoKEBjb2x1bW5zKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IEBzY3JlZW4tbGctbWluKSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLm1ha2UtbGctY29sdW1uLXB1bGwoQGNvbHVtbnMpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogQHNjcmVlbi1sZy1taW4pIHtcclxuICAgIHJpZ2h0OiBwZXJjZW50YWdlKChAY29sdW1ucyAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXHJcbi8vXHJcbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxyXG4vLyBhbnkgdmFsdWUgb2YgYEBncmlkLWNvbHVtbnNgLlxyXG5cclxuLm1ha2UtZ3JpZC1jb2x1bW5zKCkge1xyXG4gIC8vIENvbW1vbiBzdHlsZXMgZm9yIGFsbCBzaXplcyBvZiBncmlkIGNvbHVtbnMsIHdpZHRocyAxLTEyXHJcbiAgLmNvbChAaW5kZXgpIHdoZW4gKEBpbmRleCA9IDEpIHsgLy8gaW5pdGlhbFxyXG4gICAgQGl0ZW06IH5cIi5jb2wteHMtQHtpbmRleH0sIC5jb2wtc20tQHtpbmRleH0sIC5jb2wtbWQtQHtpbmRleH0sIC5jb2wtbGctQHtpbmRleH1cIjtcclxuICAgIC5jb2woKEBpbmRleCArIDEpLCBAaXRlbSk7XHJcbiAgfVxyXG4gIC5jb2woQGluZGV4LCBAbGlzdCkgd2hlbiAoQGluZGV4ID08IEBncmlkLWNvbHVtbnMpIHsgLy8gZ2VuZXJhbDsgXCI9PFwiIGlzbid0IGEgdHlwb1xyXG4gICAgQGl0ZW06IH5cIi5jb2wteHMtQHtpbmRleH0sIC5jb2wtc20tQHtpbmRleH0sIC5jb2wtbWQtQHtpbmRleH0sIC5jb2wtbGctQHtpbmRleH1cIjtcclxuICAgIC5jb2woKEBpbmRleCArIDEpLCB+XCJAe2xpc3R9LCBAe2l0ZW19XCIpO1xyXG4gIH1cclxuICAuY29sKEBpbmRleCwgQGxpc3QpIHdoZW4gKEBpbmRleCA+IEBncmlkLWNvbHVtbnMpIHsgLy8gdGVybWluYWxcclxuICAgIEB7bGlzdH0ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGNvbGxhcHNpbmcgd2hlbiBlbXB0eVxyXG4gICAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICAoQGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcclxuICAgIH1cclxuICB9XHJcbiAgLmNvbCgxKTsgLy8ga2lja3N0YXJ0IGl0XHJcbn1cclxuXHJcbi5tYWtlLWdyaWQtY29sdW1ucy1mbG9hdChAY2xhc3MpIHtcclxuICAuY29sKEBpbmRleCkgd2hlbiAoQGluZGV4ID0gMSkgeyAvLyBpbml0aWFsXHJcbiAgICBAaXRlbTogflwiLmNvbC1Ae2NsYXNzfS1Ae2luZGV4fVwiO1xyXG4gICAgLmNvbCgoQGluZGV4ICsgMSksIEBpdGVtKTtcclxuICB9XHJcbiAgLmNvbChAaW5kZXgsIEBsaXN0KSB3aGVuIChAaW5kZXggPTwgQGdyaWQtY29sdW1ucykgeyAvLyBnZW5lcmFsXHJcbiAgICBAaXRlbTogflwiLmNvbC1Ae2NsYXNzfS1Ae2luZGV4fVwiO1xyXG4gICAgLmNvbCgoQGluZGV4ICsgMSksIH5cIkB7bGlzdH0sIEB7aXRlbX1cIik7XHJcbiAgfVxyXG4gIC5jb2woQGluZGV4LCBAbGlzdCkgd2hlbiAoQGluZGV4ID4gQGdyaWQtY29sdW1ucykgeyAvLyB0ZXJtaW5hbFxyXG4gICAgQHtsaXN0fSB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29sKDEpOyAvLyBraWNrc3RhcnQgaXRcclxufVxyXG5cclxuLmNhbGMtZ3JpZChAaW5kZXgsIEBjbGFzcywgQHR5cGUpIHdoZW4gKEB0eXBlID0gd2lkdGgpIGFuZCAoQGluZGV4ID4gMCkge1xyXG4gIC5jb2wtQHtjbGFzc30tQHtpbmRleH0ge1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKEBpbmRleCAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLmNhbGMtZ3JpZChAaW5kZXgsIEBjbGFzcywgQHR5cGUpIHdoZW4gKEB0eXBlID0gcHVzaCkge1xyXG4gIC5jb2wtQHtjbGFzc30tcHVzaC1Ae2luZGV4fSB7XHJcbiAgICBsZWZ0OiBwZXJjZW50YWdlKChAaW5kZXggLyBAZ3JpZC1jb2x1bW5zKSk7XHJcbiAgfVxyXG59XHJcbi5jYWxjLWdyaWQoQGluZGV4LCBAY2xhc3MsIEB0eXBlKSB3aGVuIChAdHlwZSA9IHB1bGwpIHtcclxuICAuY29sLUB7Y2xhc3N9LXB1bGwtQHtpbmRleH0ge1xyXG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKEBpbmRleCAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuLmNhbGMtZ3JpZChAaW5kZXgsIEBjbGFzcywgQHR5cGUpIHdoZW4gKEB0eXBlID0gb2Zmc2V0KSB7XHJcbiAgLmNvbC1Ae2NsYXNzfS1vZmZzZXQtQHtpbmRleH0ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKEBpbmRleCAvIEBncmlkLWNvbHVtbnMpKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEJhc2ljIGxvb3BpbmcgaW4gTEVTU1xyXG4ubWFrZS1ncmlkKEBpbmRleCwgQGNsYXNzLCBAdHlwZSkgd2hlbiAoQGluZGV4ID49IDApIHtcclxuICAuY2FsYy1ncmlkKEBpbmRleCwgQGNsYXNzLCBAdHlwZSk7XHJcbiAgLy8gbmV4dCBpdGVyYXRpb25cclxuICAubWFrZS1ncmlkKChAaW5kZXggLSAxKSwgQGNsYXNzLCBAdHlwZSk7XHJcbn1cclxuXHJcblxyXG4vLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXHJcbi8vXHJcbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcclxuLy8gYW5kIHN1Y2Nlc3Nlcy5cclxuXHJcbi5mb3JtLWNvbnRyb2wtdmFsaWRhdGlvbihAdGV4dC1jb2xvcjogIzU1NTsgQGJvcmRlci1jb2xvcjogI2NjYzsgQGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcclxuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxyXG4gIC5oZWxwLWJsb2NrLFxyXG4gIC5jb250cm9sLWxhYmVsLFxyXG4gIC5yYWRpbyxcclxuICAuY2hlY2tib3gsXHJcbiAgLnJhZGlvLWlubGluZSxcclxuICAuY2hlY2tib3gtaW5saW5lICB7XHJcbiAgICBjb2xvcjogQHRleHQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxyXG4gIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyLWNvbG9yO1xyXG4gICAgLmJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKEBib3JkZXItY29sb3IsIDEwJSk7XHJcbiAgICAgIEBzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oQGJvcmRlci1jb2xvciwgMjAlKTtcclxuICAgICAgLmJveC1zaGFkb3coQHNoYWRvdyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcclxuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xyXG4gICAgY29sb3I6IEB0ZXh0LWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAYm9yZGVyLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGJhY2tncm91bmQtY29sb3I7XHJcbiAgfVxyXG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cclxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcclxuICAgIGNvbG9yOiBAdGV4dC1jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxyXG4vL1xyXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxyXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYEBpbnB1dC1mb2N1cy1ib3JkZXJgIHZhcmlhYmxlLlxyXG4vL1xyXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2VcclxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cclxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xyXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXHJcbi8vXHJcbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxyXG5cclxuLmZvcm0tY29udHJvbC1mb2N1cyhAY29sb3I6IEBpbnB1dC1ib3JkZXItZm9jdXMpIHtcclxuICBAY29sb3ItcmdiYTogcmdiYShyZWQoQGNvbG9yKSwgZ3JlZW4oQGNvbG9yKSwgYmx1ZShAY29sb3IpLCAuNik7XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBib3JkZXItY29sb3I6IEBjb2xvcjtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICAuYm94LXNoYWRvdyh+XCJpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCBAe2NvbG9yLXJnYmF9XCIpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xyXG4vL1xyXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXHJcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxyXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcclxuXHJcbi5pbnB1dC1zaXplKEBpbnB1dC1oZWlnaHQ7IEBwYWRkaW5nLXZlcnRpY2FsOyBAcGFkZGluZy1ob3Jpem9udGFsOyBAZm9udC1zaXplOyBAbGluZS1oZWlnaHQ7IEBib3JkZXItcmFkaXVzKSB7XHJcbiAgaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0O1xyXG4gIHBhZGRpbmc6IEBwYWRkaW5nLXZlcnRpY2FsIEBwYWRkaW5nLWhvcml6b250YWw7XHJcbiAgZm9udC1zaXplOiBAZm9udC1zaXplO1xyXG4gIGxpbmUtaGVpZ2h0OiBAbGluZS1oZWlnaHQ7XHJcbiAgYm9yZGVyLXJhZGl1czogQGJvcmRlci1yYWRpdXM7XHJcblxyXG4gIHNlbGVjdCYge1xyXG4gICAgaGVpZ2h0OiBAaW5wdXQtaGVpZ2h0O1xyXG4gICAgbGluZS1oZWlnaHQ6IEBpbnB1dC1oZWlnaHQ7XHJcbiAgfVxyXG5cclxuICB0ZXh0YXJlYSYsXHJcbiAgc2VsZWN0W211bHRpcGxlXSYge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCJcclxuLyogTGF5b3V0IGhlbHBlcnNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi51aS1oZWxwZXItaGlkZGVuIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4udWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIHtcclxuXHRib3JkZXI6IDA7XHJcblx0Y2xpcDogcmVjdCgwIDAgMCAwKTtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRtYXJnaW46IC0xcHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR3aWR0aDogMXB4O1xyXG59XHJcblxyXG4udWktaGVscGVyLXJlc2V0IHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRib3JkZXI6IDA7XHJcblx0b3V0bGluZTogMDtcclxuXHRsaW5lLWhlaWdodDogMS4zO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRmb250LXNpemU6IDEwMCU7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLnVpLWhlbHBlci1jbGVhcmZpeDpiZWZvcmUsXHJcbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0ZGlzcGxheTogdGFibGU7XHJcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxufVxyXG5cclxuLnVpLWhlbHBlci1jbGVhcmZpeDphZnRlciB7XHJcblx0Y29udGVudDogXCIuXCI7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdGNsZWFyOiBib3RoO1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuLnVpLWhlbHBlci1jbGVhcmZpeCB7XHJcblx0LypkaXNwbGF5OiBpbmxpbmUtYmxvY2s7ICovXHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWluLWhlaWdodDogMDsgLyogc3VwcG9ydDogSUU3ICovXHJcbn1cclxuXHJcbi8qIHJlcXVpcmVkIGNvbW1lbnQgZm9yIGNsZWFyZml4IHRvIHdvcmsgaW4gT3BlcmEgXFwqL1xyXG4qIGh0bWwgLnVpLWhlbHBlci1jbGVhcmZpeCB7XHJcblx0aGVpZ2h0OjElO1xyXG59XHJcblxyXG4vKiBlbmQgY2xlYXJmaXggKi9cclxuLnVpLWhlbHBlci16Zml4IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdC51aS1vcGFjaXR5KDApO1xyXG59XHJcbi51aS1mcm9udCB7XHJcblx0ei1pbmRleDogMTAwO1xyXG59XHJcblxyXG5cclxuLyogSW50ZXJhY3Rpb24gQ3Vlc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLnVpLXN0YXRlLWRpc2FibGVkIHtcclxuXHRjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8qIEljb25zXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLyogc3RhdGVzIGFuZCBpbWFnZXMgKi9cclxuLnVpLWljb24ge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtaW5kZW50OiAtOTk5OTlweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuXHJcblxyXG4vKiBNaXNjIHZpc3VhbHNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4vKiBPdmVybGF5cyAqL1xyXG5cclxuLnVpLXdpZGdldC1vdmVybGF5IHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcbiIsIi8qXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYVxyXG4gKlxyXG4gKiBqUXVlcnkgVUkgQ1NTIEZyYW1ld29yayAxLjEwLjNcclxuICpcclxuICogUG9ydGlvbnMgY29weXJpZ2h0IEFkZHkgT3NtYW5pLCBqUXVlcnkgVUkgJiBUd2l0dGVyLCBJbmMuXHJcbiAqIENyZWF0ZWQgdGhlIExFU1MgdmVyc2lvbiBieSBAZGhhcmFwdmpcclxuICogUmVsZWFzZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG5cclxuLyogQ29tcG9uZW50IGNvbnRhaW5lcnNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4udWktd2lkZ2V0IHtcclxuXHRmb250LWZhbWlseTogQGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7IFxyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHQudWktd2lkZ2V0IHtcclxuXHRcdGZvbnQtc2l6ZTogMTNweDtcclxuXHR9XHJcblx0aW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEsIGJ1dHRvbiB7IFxyXG5cdFx0Zm9udC1mYW1pbHk6IEBmb250LWZhbWlseS1zYW5zLXNlcmlmOyBcclxuXHRcdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHR9XHJcbn1cclxuXHJcbi51aS13aWRnZXQtY29udGVudCB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgQGdyYXktbGlnaHQ7XHJcblx0YmFja2dyb3VuZDogQGJvZHktYmcgdXJsKFwiQHt1aS1pbWFnZS1kaXJ9L3VpLWJnX2dsYXNzXzc1X0B7dWktYm9keS1iZy1udW19XzF4NDAwLnBuZ1wiKSA1MCUgNTAlIHJlcGVhdC14O1xyXG5cdGNvbG9yOiBAZ3JheS1kYXJrO1xyXG59XHJcblxyXG4udWktd2lkZ2V0LWhlYWRlciB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnO1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAcGFuZWwtZGVmYXVsdC1ib3JkZXI7XHJcblx0YSB7XHJcblx0XHRjb2xvcjogQGdyYXktZGFya2VyO1xyXG5cdH1cclxufVxyXG5cclxuLyogSW50ZXJhY3Rpb24gc3RhdGVzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLnVpLXN0YXRlLWRlZmF1bHQsXHJcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZGVmYXVsdCxcclxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWRlZmF1bHQge1xyXG4gICBjb2xvcjogIzMzMzMzMztcclxuICAgYmFja2dyb3VuZC1jb2xvcjogQHVpLXdoaXRlO1xyXG4gICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xyXG59XHJcblxyXG4udWktc3RhdGUtZGVmYXVsdCB7XHJcblx0YSwgYTpsaW5rLCBhOnZpc2l0ZWQge1xyXG5cdFx0Y29sb3I6ICM1NTU1NTU7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4udWktc3RhdGUtaG92ZXIsXHJcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtaG92ZXIsXHJcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1ob3ZlcixcclxuLnVpLXN0YXRlLWZvY3VzLFxyXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWZvY3VzLFxyXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZm9jdXMge1xyXG5cdGNvbG9yOiAjMzMzMzMzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcclxuICAgIGJvcmRlci1jb2xvcjogI2FkYWRhZDtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi51aS1zdGF0ZS1ob3ZlciB7XHJcblx0YSwgYTpob3ZlciwgYTpsaW5rLCBhOnZpc2l0ZWQge1xyXG5cdFx0Y29sb3I6ICMzMzMzMzM7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4udWktc3RhdGUtYWN0aXZlLFxyXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWFjdGl2ZSxcclxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWFjdGl2ZSB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI2FkYWRhZDtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdGNvbG9yOiAjMzMzMzMzO1xyXG59XHJcblxyXG4udWktc3RhdGUtYWN0aXZlIHtcclxuXHRhLCBhOmxpbmssIGE6dmlzaXRlZCB7XHJcblx0XHRjb2xvcjogIzMzMzMzMztcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEludGVyYWN0aW9uIEN1ZXNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4udWktc3RhdGUtaGlnaGxpZ2h0LFxyXG4udWktc3RhdGUtZXJyb3IsXHJcbi51aS1zdGF0ZS1kZWZhdWx0IHtcclxuXHRib3JkZXItd2lkdGg6IDFweDtcclxuXHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG59XHJcblxyXG4udWktc3RhdGUtaGlnaGxpZ2h0IHAsXHJcbi51aS1zdGF0ZS1lcnJvciBwLFxyXG4udWktc3RhdGUtZGVmYXVsdCBwIHtcclxuXHRmb250LXNpemU6IDEzcHg7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRsaW5lLWhlaWdodDogMThweDtcclxuXHRtYXJnaW46N3B4IDE1cHg7XHJcbn1cclxuXHJcbi51aS1zdGF0ZS1oaWdobGlnaHQsXHJcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtaGlnaGxpZ2h0LFxyXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtaGlnaGxpZ2h0IHtcclxuXHRjb2xvcjogIzNhODdhZDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZjc7XHJcbiAgICBib3JkZXItY29sb3I6ICNiY2U4ZjE7XHJcbn1cclxuXHJcbi51aS1zdGF0ZS1oaWdobGlnaHQgYSxcclxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1oaWdobGlnaHQgYSxcclxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhpZ2hsaWdodCBhIHtcclxuXHRjb2xvcjogIzJkNjk4NztcclxufVxyXG5cclxuLnVpLXN0YXRlLWVycm9yLFxyXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWVycm9yLFxyXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZXJyb3Ige1xyXG5cdGNvbG9yOiAjYjk0YTQ4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZGVkZTtcclxuICAgIGJvcmRlci1jb2xvcjogI2VlZDNkNztcclxufVxyXG5cclxuLnVpLXN0YXRlLWVycm9yIGEsXHJcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZXJyb3IgYSxcclxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yIGEge1xyXG5cdGNvbG9yOiAjOTUzYjM5O1xyXG59XHJcblxyXG4udWktc3RhdGUtZXJyb3ItdGV4dCxcclxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1lcnJvci10ZXh0LFxyXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZXJyb3ItdGV4dCB7XHJcblx0Y29sb3I6ICM5NTNiMzk7XHJcbn1cclxuXHJcbi51aS1wcmlvcml0eS1wcmltYXJ5LFxyXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXByaW9yaXR5LXByaW1hcnksXHJcbi51aS13aWRnZXQtaGVhZGVyIC51aS1wcmlvcml0eS1wcmltYXJ5IHtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLnVpLXByaW9yaXR5LXNlY29uZGFyeSxcclxuLnVpLXdpZGdldC1jb250ZW50IC51aS1wcmlvcml0eS1zZWNvbmRhcnksXHJcbi51aS13aWRnZXQtaGVhZGVyIC51aS1wcmlvcml0eS1zZWNvbmRhcnkge1xyXG5cdC51aS1vcGFjaXR5KC43KTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4udWktc3RhdGUtZGlzYWJsZWQsXHJcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZGlzYWJsZWQsXHJcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kaXNhYmxlZCB7XHJcblx0LnVpLW9wYWNpdHkoLjM1KTtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG59XHJcblxyXG4udWktc3RhdGUtZGlzYWJsZWQgLnVpLWljb24ge1xyXG5cdC51aS1vcGFjaXR5KC4zNSk7IC8qIEZvciBJRTggLSBTZWUgIzYwNTkgKi9cclxufVxyXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbldhbGxCZWUgT3ZlcnJpZGVcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5AaW1wb3J0IFwiX2NvbG9yLmxlc3NcIjtcclxuXHJcbi8vIFZhcmlhYmxlc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy89PSBDb2xvcnNcclxuLy9cclxuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxyXG5cclxuQGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDA7XHJcbkBncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKEBncmF5LWJhc2UsIDEzLjUlKTsgLy8gIzIyMlxyXG5AZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbihAZ3JheS1iYXNlLCAyMCUpOyAgIC8vICMzMzNcclxuQGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oQGdyYXktYmFzZSwgMzMuNSUpOyAvLyAjNTU1XHJcbkBncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKEBncmF5LWJhc2UsIDg2LjclKTsgLy8gIzc3N1xyXG5AZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbihAZ3JheS1iYXNlLCA5My41JSk7IC8vICNlZWVcclxuXHJcbkBicmFuZC1wcmltYXJ5OiAgICAgICAgICNmZjY2MDA7XHJcbkBicmFuZC1zdWNjZXNzOiAgICAgICAgICM1RUI3NUI7XHJcbkBicmFuZC1pbmZvOiAgICAgICAgICAgICMxZmIzZTY7XHJcbkBicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGU7XHJcbkBicmFuZC1kYW5nZXI6ICAgICAgICAgICNjNzFmMTY7XHJcblxyXG4vLz09IFNjYWZmb2xkaW5nXHJcbi8vXHJcbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXHJcbkBib2R5LWJnOiAgICAgICAgICAgICAgIEBib2R5LWJnLXdiO1xyXG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxyXG5AdGV4dC1jb2xvcjogICAgICAgICAgICBAZ3JheS1kYXJrO1xyXG5cclxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxyXG5AbGluay1jb2xvcjogICAgICAgICAgICBAYnJhbmQtcHJpbWFyeTtcclxuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cclxuQGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKEBsaW5rLWNvbG9yLCAxNSUpO1xyXG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cclxuQGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cclxuXHJcbi8vPT0gVHlwb2dyYXBoeVxyXG4vL1xyXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxyXG5cclxuQGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbkBmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xyXG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXHJcbkBmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xyXG5AZm9udC1mYW1pbHktYmFzZTogICAgICAgIEBmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG5cclxuQGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxMnB4O1xyXG5AZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuMjUpKTsgLy8gfjE4cHhcclxuQGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKChAZm9udC1zaXplLWJhc2UgKiAwLjg1KSk7IC8vIH4xMnB4XHJcblxyXG5AZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKChAZm9udC1zaXplLWJhc2UgKiAyLjYpKTsgLy8gfjM2cHhcclxuQGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoQGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpOyAvLyB+MzBweFxyXG5AZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuNykpOyAvLyB+MjRweFxyXG5AZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuMjUpKTsgLy8gfjE4cHhcclxuQGZvbnQtc2l6ZS1oNTogICAgICAgICAgICBAZm9udC1zaXplLWJhc2U7XHJcbkBmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoQGZvbnQtc2l6ZS1iYXNlICogMC44NSkpOyAvLyB+MTJweFxyXG5cclxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxyXG5AbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5OyAvLyAyMC8xNFxyXG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxyXG5AbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKChAZm9udC1zaXplLWJhc2UgKiBAbGluZS1oZWlnaHQtYmFzZSkpOyAvLyB+MjBweFxyXG5cclxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxyXG5AaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQ7XHJcbkBoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwO1xyXG5AaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMTtcclxuQGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0O1xyXG5cclxuXHJcbi8vPT0gSWNvbm9ncmFwaHlcclxuLy9cclxuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxyXG5cclxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXHJcbkBpY29uLWZvbnQtcGF0aDogICAgICAgICAgXCIuLi8uLi9mb250L2Jvb3RzdHJhcC9mb250cy9cIjtcclxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxyXG5AaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiO1xyXG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXHJcbkBpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIjtcclxuXHJcblxyXG4vLz09IENvbXBvbmVudHNcclxuLy9cclxuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXHJcblxyXG5AcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4O1xyXG5AcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweDtcclxuXHJcbkBwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4O1xyXG5AcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweDtcclxuXHJcbkBwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHg7XHJcbkBwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4O1xyXG5cclxuQHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweDtcclxuQHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweDtcclxuXHJcbkBsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzM7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxyXG5AbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41O1xyXG5cclxuQGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDBweDsgLy9zYW5qZWV2IDRweDtcclxuQGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDBweDsgLy9zYW5qZWV2IDZweDtcclxuQGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDBweDsgLy9zYW5qZWV2IDNweDtcclxuXHJcbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cclxuQGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmY7XHJcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxyXG5AY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgQGJyYW5kLXByaW1hcnk7XHJcblxyXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0b3IgZHJvcGRvd25zLlxyXG5AY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4O1xyXG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cclxuQGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweDtcclxuXHJcblxyXG4vLz09IFRhYmxlc1xyXG4vL1xyXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cclxuXHJcbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cclxuQHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICA4cHg7XHJcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxyXG5AdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweDtcclxuXHJcbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXHJcbkB0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxyXG5AdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5Zjk7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cclxuQHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICAjZjVmNWY1O1xyXG5AdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgIEB0YWJsZS1iZy1ob3ZlcjtcclxuXHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0YWJsZSBhbmQgY2VsbCBib3JkZXJzLlxyXG5AdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQ7XHJcblxyXG5cclxuLy89PSBCdXR0b25zXHJcbi8vXHJcbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cclxuXHJcbkBidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbDtcclxuXHJcbkBidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzM7XHJcbkBidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmY7XHJcbkBidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2M7XHJcblxyXG5AYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmO1xyXG5AYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICBAYnJhbmQtcHJpbWFyeTtcclxuQGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKEBidG4tcHJpbWFyeS1iZywgNSUpO1xyXG5cclxuQGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcclxuQGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgQGJyYW5kLXN1Y2Nlc3M7XHJcbkBidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbihAYnRuLXN1Y2Nlc3MtYmcsIDUlKTtcclxuXHJcbkBidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmY7XHJcbkBidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgIEBicmFuZC1pbmZvO1xyXG5AYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oQGJ0bi1pbmZvLWJnLCA1JSk7XHJcblxyXG5AYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmO1xyXG5AYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICBAYnJhbmQtd2FybmluZztcclxuQGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKEBidG4td2FybmluZy1iZywgNSUpO1xyXG5cclxuQGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZjtcclxuQGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgQGJyYW5kLWRhbmdlcjtcclxuQGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKEBidG4tZGFuZ2VyLWJnLCA1JSk7XHJcblxyXG5AYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICBAZ3JheS1saWdodDtcclxuXHJcblxyXG4vLz09IEZvcm1zXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcclxuQGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxyXG5AaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICBAZ3JheS1saWdodGVyO1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXHJcbkBpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgIEBncmF5O1xyXG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcclxuQGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2RkZDtcclxuXHJcbi8vIFRPRE86IFJlbmFtZSBgQGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGBAaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxyXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXHJcbkBpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuQGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgQGJvcmRlci1yYWRpdXMtbGFyZ2U7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcclxuQGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgQGJvcmRlci1yYWRpdXMtc21hbGw7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXHJcbkBpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgIEBpbnB1dC1ib3JkZXI7IC8vQGJyYW5kLXByaW1hcnk7XHJcblxyXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcclxuQGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OTtcclxuXHJcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XHJcbkBpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgMjZweDsgLyooQGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKEBwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpOyovXHJcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG5AaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbChAZm9udC1zaXplLWxhcmdlICogQGxpbmUtaGVpZ2h0LWxhcmdlKSArIChAcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMik7XHJcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxyXG5AaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoQGZvbnQtc2l6ZS1zbWFsbCAqIEBsaW5lLWhlaWdodC1zbWFsbCkgKyAoQHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpO1xyXG5cclxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxyXG5AZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAxNXB4O1xyXG5cclxuQGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgQGdyYXktZGFyaztcclxuQGxlZ2VuZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2U1ZTVlNTtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcclxuQGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgQGdyYXktbGlnaHRlcjtcclxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXHJcbkBpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6IEBpbnB1dC1ib3JkZXI7XHJcblxyXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cclxuQGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQ7XHJcblxyXG5cclxuLy89PSBEcm9wZG93bnNcclxuLy9cclxuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXHJcblxyXG4vLyoqIEJhY2tncm91bmQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxyXG5AZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXHJcbkBkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KTtcclxuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxyXG5AZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjO1xyXG4vLyoqIERpdmlkZXIgY29sb3IgZm9yIGJldHdlZW4gZHJvcGRvd24gaXRlbXMuXHJcbkBkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTU7XHJcblxyXG4vLyoqIERyb3Bkb3duIGxpbmsgdGV4dCBjb2xvci5cclxuQGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgQGdyYXktZGFyaztcclxuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXHJcbkBkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbihAZ3JheS1kYXJrLCA1JSk7XHJcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXHJcbkBkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjU7XHJcblxyXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cclxuQGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgQGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XHJcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxyXG5AZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICBAY29tcG9uZW50LWFjdGl2ZS1iZztcclxuXHJcbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXHJcbkBkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgIEBncmF5LWxpZ2h0O1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cclxuQGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgQGdyYXktbGlnaHQ7XHJcblxyXG4vLyoqIERlcHJlY2F0ZWQgYEBkcm9wZG93bi1jYXJldC1jb2xvcmAgYXMgb2YgdjMuMS4wXHJcbkBkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDA7XHJcblxyXG5cclxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XHJcbi8vXHJcbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xyXG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXHJcbi8vXHJcbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxyXG5cclxuQHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMDtcclxuQHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMDtcclxuQHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MDtcclxuQHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MDtcclxuQHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMDtcclxuQHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MDtcclxuQHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MDtcclxuXHJcblxyXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcclxuLy9cclxuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxyXG5cclxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweDtcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXHJcbkBzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgQHNjcmVlbi14cztcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICBAc2NyZWVuLXhzLW1pbjtcclxuXHJcbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxyXG4vLyoqIERlcHJlY2F0ZWQgYEBzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxyXG5Ac2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4O1xyXG5Ac2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgIEBzY3JlZW4tc207XHJcbi8vKiogRGVwcmVjYXRlZCBgQHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxyXG5Ac2NyZWVuLXRhYmxldDogICAgICAgICAgICAgIEBzY3JlZW4tc20tbWluO1xyXG5cclxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweDtcclxuQHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICBAc2NyZWVuLW1kO1xyXG4vLyoqIERlcHJlY2F0ZWQgYEBzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXHJcbkBzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgQHNjcmVlbi1tZC1taW47XHJcblxyXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcclxuQHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHg7XHJcbkBzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgQHNjcmVlbi1sZztcclxuLy8qKiBEZXByZWNhdGVkIGBAc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxyXG5Ac2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgIEBzY3JlZW4tbGctbWluO1xyXG5cclxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXHJcbkBzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKEBzY3JlZW4tc20tbWluIC0gMSk7XHJcbkBzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKEBzY3JlZW4tbWQtbWluIC0gMSk7XHJcbkBzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKEBzY3JlZW4tbGctbWluIC0gMSk7XHJcblxyXG5cclxuLy89PSBHcmlkIHN5c3RlbVxyXG4vL1xyXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXHJcblxyXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxyXG5AZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTI7XHJcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXHJcbkBncmlkLWd1dHRlci13aWR0aDogICAgICAgICAyMHB4O1xyXG4vLyBOYXZiYXIgY29sbGFwc2VcclxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXHJcbkBncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICBAc2NyZWVuLXNtLW1pbjtcclxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxyXG5AZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKEBncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKTtcclxuXHJcblxyXG4vLz09IENvbnRhaW5lciBzaXplc1xyXG4vL1xyXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXHJcblxyXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcclxuQGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArIEBncmlkLWd1dHRlci13aWR0aCk7XHJcbi8vKiogRm9yIGBAc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxyXG5AY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgQGNvbnRhaW5lci10YWJsZXQ7XHJcblxyXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxyXG5AY29udGFpbmVyLWRlc2t0b3A6ICAgICAgICAgICAgKDk0MHB4ICsgQGdyaWQtZ3V0dGVyLXdpZHRoKTtcclxuLy8qKiBGb3IgYEBzY3JlZW4tbWQtbWluYCBhbmQgdXAuXHJcbkBjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICBAY29udGFpbmVyLWRlc2t0b3A7XHJcblxyXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcclxuQGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyBAZ3JpZC1ndXR0ZXItd2lkdGgpO1xyXG4vLyoqIEZvciBgQHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cclxuQGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgIEBjb250YWluZXItbGFyZ2UtZGVza3RvcDtcclxuXHJcblxyXG4vLz09IE5hdmJhclxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcclxuQG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MHB4O1xyXG5AbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgIEBsaW5lLWhlaWdodC1jb21wdXRlZDtcclxuQG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5AbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKChAZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XHJcbkBuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKChAbmF2YmFyLWhlaWdodCAtIEBsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKTtcclxuQG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweDtcclxuXHJcbkBuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NztcclxuQG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4O1xyXG5AbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihAbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpO1xyXG5cclxuLy8gTmF2YmFyIGxpbmtzXHJcbkBuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3O1xyXG5AbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMztcclxuQG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5AbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NTtcclxuQG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbihAbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpO1xyXG5AbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYztcclxuQG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5cclxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXHJcbkBuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICBAbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjtcclxuQG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbihAbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSk7XHJcbkBuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuXHJcbi8vIE5hdmJhciB0b2dnbGVcclxuQG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQ7XHJcbkBuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4O1xyXG5AbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZDtcclxuXHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXJcclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xyXG5AbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oQGdyYXktbGlnaHQsIDE1JSk7XHJcbkBuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMjtcclxuQG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oQG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpO1xyXG5cclxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXHJcbkBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbihAZ3JheS1saWdodCwgMTUlKTtcclxuQG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmO1xyXG5AbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xyXG5AbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIEBuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xyXG5AbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbihAbmF2YmFyLWludmVyc2UtYmcsIDEwJSk7XHJcbkBuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NDtcclxuQG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuXHJcbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxyXG5AbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgIEBuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xyXG5AbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmY7XHJcbkBuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XHJcblxyXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXHJcbkBuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMztcclxuQG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmO1xyXG5AbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzM7XHJcblxyXG5cclxuLy89PSBOYXZzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXHJcbkBuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4O1xyXG5AbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0ZXI7XHJcblxyXG5AbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0O1xyXG5AbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgIEBncmF5LWxpZ2h0O1xyXG5cclxuLy89PSBUYWJzXHJcbkBuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZDtcclxuXHJcbkBuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgQGdyYXktbGlnaHRlcjtcclxuXHJcbkBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgQGJvZHktYmc7XHJcbkBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgQGdyYXk7XHJcbkBuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZDtcclxuXHJcbkBuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZDtcclxuQG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICBAYm9keS1iZztcclxuXHJcbi8vPT0gUGlsbHNcclxuQG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5AbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIEBjb21wb25lbnQtYWN0aXZlLWJnO1xyXG5AbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIEBjb21wb25lbnQtYWN0aXZlLWNvbG9yO1xyXG5cclxuXHJcbi8vPT0gUGFnaW5hdGlvblxyXG4vL1xyXG4vLyMjXHJcblxyXG5AcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICBAbGluay1jb2xvcjtcclxuQHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuQHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZDtcclxuXHJcbkBwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgIEBsaW5rLWhvdmVyLWNvbG9yO1xyXG5AcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICBAZ3JheS1saWdodGVyO1xyXG5AcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkO1xyXG5cclxuQHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcclxuQHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgQGJyYW5kLXByaW1hcnk7XHJcbkBwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgIEBicmFuZC1wcmltYXJ5O1xyXG5cclxuQHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgQGdyYXktbGlnaHQ7XHJcbkBwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmY7XHJcbkBwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQ7XHJcblxyXG5cclxuLy89PSBQYWdlclxyXG4vL1xyXG4vLyMjXHJcblxyXG5AcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAcGFnaW5hdGlvbi1iZztcclxuQHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgQHBhZ2luYXRpb24tYm9yZGVyO1xyXG5AcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4O1xyXG5cclxuQHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgQHBhZ2luYXRpb24taG92ZXItYmc7XHJcblxyXG5AcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICBAcGFnaW5hdGlvbi1hY3RpdmUtYmc7XHJcbkBwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgIEBwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcclxuXHJcbkBwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgIEBwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xyXG5cclxuXHJcbi8vPT0gSnVtYm90cm9uXHJcbi8vXHJcbi8vIyNcclxuXHJcbkBqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHg7XHJcbkBqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQ7XHJcbkBqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0ZXI7XHJcbkBqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQ7XHJcbkBqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKEBmb250LXNpemUtYmFzZSAqIDEuNSkpO1xyXG5cclxuXHJcbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xyXG4vL1xyXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxyXG5cclxuQHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZDtcclxuQHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkODtcclxuQHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKHNwaW4oQHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKTtcclxuXHJcbkBzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGY7XHJcbkBzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjc7XHJcbkBzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihzcGluKEBzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSk7XHJcblxyXG5Ac3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiO1xyXG5Ac3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzO1xyXG5Ac3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oc3BpbihAc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpO1xyXG5cclxuQHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MjtcclxuQHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZTtcclxuQHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKHNwaW4oQHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpO1xyXG5cclxuXHJcbi8vPT0gVG9vbHRpcHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxyXG5AdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweDtcclxuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcclxuQHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcclxuQHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMDtcclxuQHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjk7XHJcblxyXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcclxuQHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4O1xyXG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcclxuQHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgQHRvb2x0aXAtYmc7XHJcblxyXG5cclxuLy89PSBQb3BvdmVyc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcclxuQHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweDtcclxuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxyXG5AcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpO1xyXG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXHJcbkBwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYztcclxuXHJcbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKEBwb3BvdmVyLWJnLCAzJSk7XHJcblxyXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcclxuQHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4O1xyXG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcclxuQHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICBAcG9wb3Zlci1iZztcclxuXHJcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxyXG5AcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgIChAcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpO1xyXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcclxuQHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlaW4oQHBvcG92ZXItYm9yZGVyLWNvbG9yLCA1JSk7XHJcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxyXG5AcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbihAcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSk7XHJcblxyXG5cclxuLy89PSBMYWJlbHNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuQGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgIEBicmFuZC1wcmltYXJ5O1xyXG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxyXG5AbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICBAYnJhbmQtc3VjY2VzcztcclxuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcclxuQGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgQGJyYW5kLWluZm87XHJcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgIEBicmFuZC13YXJuaW5nO1xyXG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgIEBicmFuZC1kYW5nZXI7XHJcblxyXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxyXG5AbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxyXG5AbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmO1xyXG5cclxuXHJcbi8vPT0gTW9kYWxzXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XHJcbkBtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHg7XHJcblxyXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcclxuQG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweDtcclxuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxyXG5AbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICBAbGluZS1oZWlnaHQtYmFzZTtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcclxuQG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXHJcbkBtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMik7XHJcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcclxuQG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5O1xyXG5cclxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDA7XHJcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxyXG5AbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNTtcclxuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXHJcbkBtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTU7XHJcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxyXG5AbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICBAbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcclxuXHJcbkBtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4O1xyXG5AbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweDtcclxuQG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHg7XHJcblxyXG5cclxuLy89PSBBbGVydHNcclxuLy9cclxuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cclxuXHJcbkBhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHg7XHJcbkBhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgIEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbkBhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQ7XHJcblxyXG5AYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICBAc3RhdGUtc3VjY2Vzcy1iZztcclxuQGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgQHN0YXRlLXN1Y2Nlc3MtdGV4dDtcclxuQGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgQHN0YXRlLXN1Y2Nlc3MtYm9yZGVyO1xyXG5cclxuQGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgQHN0YXRlLWluZm8tYmc7XHJcbkBhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgIEBzdGF0ZS1pbmZvLXRleHQ7XHJcbkBhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgIEBzdGF0ZS1pbmZvLWJvcmRlcjtcclxuXHJcbkBhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgIEBzdGF0ZS13YXJuaW5nLWJnO1xyXG5AYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICBAc3RhdGUtd2FybmluZy10ZXh0O1xyXG5AYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICBAc3RhdGUtd2FybmluZy1ib3JkZXI7XHJcblxyXG5AYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICBAc3RhdGUtZGFuZ2VyLWJnO1xyXG5AYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICBAc3RhdGUtZGFuZ2VyLXRleHQ7XHJcbkBhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgIEBzdGF0ZS1kYW5nZXItYm9yZGVyO1xyXG5cclxuXHJcbi8vPT0gUHJvZ3Jlc3MgYmFyc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxyXG5AcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1O1xyXG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXHJcbkBwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmY7XHJcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cclxuQHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgQGJvcmRlci1yYWRpdXMtYmFzZTtcclxuXHJcbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcclxuQHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgQGJyYW5kLXByaW1hcnk7XHJcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcclxuQHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgQGJyYW5kLXN1Y2Nlc3M7XHJcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcclxuQHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgQGJyYW5kLXdhcm5pbmc7XHJcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxyXG5AcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICBAYnJhbmQtZGFuZ2VyO1xyXG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbkBwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgIEBicmFuZC1pbmZvO1xyXG5cclxuXHJcbi8vPT0gTGlzdCBncm91cFxyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXHJcbkBsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZjtcclxuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXHJcbkBsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2RkZDtcclxuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcclxuQGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXHJcbkBsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNTtcclxuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXHJcbkBsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgQGNvbXBvbmVudC1hY3RpdmUtY29sb3I7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xyXG5AbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgIEBjb21wb25lbnQtYWN0aXZlLWJnO1xyXG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xyXG5AbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgIEBsaXN0LWdyb3VwLWFjdGl2ZS1iZztcclxuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xyXG5AbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oQGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpO1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcclxuQGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXHJcbkBsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgIEBncmF5LWxpZ2h0ZXI7XHJcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xyXG5AbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiBAbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcclxuXHJcbkBsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NTtcclxuQGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICBAbGlzdC1ncm91cC1saW5rLWNvbG9yO1xyXG5AbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzM7XHJcblxyXG5cclxuLy89PSBQYW5lbHNcclxuLy9cclxuLy8jI1xyXG5cclxuQHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZjtcclxuQHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweDtcclxuQHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4O1xyXG5AcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICBAcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xyXG5AcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcclxuQHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZDtcclxuQHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNTtcclxuXHJcbkBwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgIEBncmF5LWRhcms7XHJcbkBwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQ7XHJcbkBwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjU7XHJcblxyXG5AcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmO1xyXG5AcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICBAYnJhbmQtcHJpbWFyeTtcclxuQHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgQGJyYW5kLXByaW1hcnk7XHJcblxyXG5AcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICBAc3RhdGUtc3VjY2Vzcy10ZXh0O1xyXG5AcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICBAc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XHJcbkBwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgIEBzdGF0ZS1zdWNjZXNzLWJnO1xyXG5cclxuQHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgQHN0YXRlLWluZm8tdGV4dDtcclxuQHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgQHN0YXRlLWluZm8tYm9yZGVyO1xyXG5AcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICBAc3RhdGUtaW5mby1iZztcclxuXHJcbkBwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgIEBzdGF0ZS13YXJuaW5nLXRleHQ7XHJcbkBwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgIEBzdGF0ZS13YXJuaW5nLWJvcmRlcjtcclxuQHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgQHN0YXRlLXdhcm5pbmctYmc7XHJcblxyXG5AcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICBAc3RhdGUtZGFuZ2VyLXRleHQ7XHJcbkBwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgIEBzdGF0ZS1kYW5nZXItYm9yZGVyO1xyXG5AcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICBAc3RhdGUtZGFuZ2VyLWJnO1xyXG5cclxuXHJcbi8vPT0gVGh1bWJuYWlsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcclxuQHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4O1xyXG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXHJcbkB0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgIEBib2R5LWJnO1xyXG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcclxuQHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZDtcclxuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xyXG5AdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG5cclxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXHJcbkB0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgIEB0ZXh0LWNvbG9yO1xyXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxyXG5AdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHg7XHJcblxyXG5cclxuLy89PSBXZWxsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG5Ad2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1O1xyXG5Ad2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oQHdlbGwtYmcsIDclKTtcclxuXHJcblxyXG4vLz09IEJhZGdlc1xyXG4vL1xyXG4vLyMjXHJcblxyXG5AYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmO1xyXG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXHJcbkBiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmY7XHJcbkBiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgIEBncmF5LWxpZ2h0O1xyXG5cclxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xyXG5AYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICBAbGluay1jb2xvcjtcclxuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xyXG5AYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmO1xyXG5cclxuQGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZDtcclxuQGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMTtcclxuQGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweDtcclxuXHJcblxyXG4vLz09IEJyZWFkY3J1bWJzXHJcbi8vXHJcbi8vIyNcclxuXHJcbkBicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4O1xyXG5AYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHg7XHJcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXHJcbkBicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNTtcclxuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcclxuQGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjO1xyXG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXHJcbkBicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xyXG5AYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiO1xyXG5cclxuXHJcbi8vPT0gQ2Fyb3VzZWxcclxuLy9cclxuLy8jI1xyXG5cclxuQGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KTtcclxuXHJcbkBjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG5AY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlO1xyXG5AY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjU7XHJcbkBjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4O1xyXG5cclxuQGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmY7XHJcbkBjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmO1xyXG5cclxuQGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmY7XHJcblxyXG5cclxuLy89PSBDbG9zZVxyXG4vL1xyXG4vLyMjXHJcblxyXG5AY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkO1xyXG5AY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwO1xyXG5AY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmY7XHJcblxyXG5cclxuLy89PSBDb2RlXHJcbi8vXHJcbi8vIyNcclxuXHJcbkBjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGU7XHJcbkBjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQ7XHJcblxyXG5Aa2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmO1xyXG5Aa2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzO1xyXG5cclxuQHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNTtcclxuQHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgQGdyYXktZGFyaztcclxuQHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYztcclxuQHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHg7XHJcblxyXG5cclxuLy89PSBUeXBlXHJcbi8vXHJcbi8vIyNcclxuXHJcbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cclxuQGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHg7XHJcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxyXG5AdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICBAZ3JheS1saWdodDtcclxuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcclxuQGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcclxuQGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgQGdyYXktbGlnaHQ7XHJcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxyXG5AYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICBAZ3JheS1saWdodDtcclxuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxyXG5AYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoQGZvbnQtc2l6ZS1iYXNlICogMS4yNSk7XHJcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcclxuQGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgQGdyYXktbGlnaHRlcjtcclxuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcclxuQHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgQGdyYXktbGlnaHRlcjtcclxuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXHJcbkBkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgIEBjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw7XHJcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxyXG5AaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICBAZ3JheS1saWdodGVyO1xyXG4iLCIvKiBJY29uc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi8qIHN0YXRlcyBhbmQgaW1hZ2VzICovXHJcblxyXG4vLyBGSVhNRSAtIFRoZSBzYWlkIGltYWdlcyBhcmUgbm90IHByZXNlbnQgdW5kZXIgdGhlIGltYWdlIGRpcmVjdG9yeSBjdXJyZW50bHkhIE5lZWQgdG8gdGhpbmsgYWJvdXQgaG93IHRvIGZpeCB0aGF0IVxyXG5cclxuLnVpLWljb24ge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJAe3VpLWltYWdlLWRpcn0vdWktaWNvbnNfQHt1aS1ncmF5LWRhcmtlci1udW19XzI1NngyNDAucG5nXCIpO1xyXG59XHJcblxyXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLWljb24ge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIkB7dWktaW1hZ2UtZGlyfS91aS1pY29uc19Ae3VpLWdyYXktZGFya2VyLW51bX1fMjU2eDI0MC5wbmdcIik7XHJcbn1cclxuXHJcbi51aS13aWRnZXQtaGVhZGVyIC51aS1pY29uIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJAe3VpLWltYWdlLWRpcn0vdWktaWNvbnNfQHt1aS1ncmF5LWRhcmtlci1udW19XzI1NngyNDAucG5nXCIpO1xyXG59XHJcblxyXG4udWktc3RhdGUtZGVmYXVsdCAudWktaWNvbiB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiQHt1aS1pbWFnZS1kaXJ9L3VpLWljb25zX0B7dWktZ3JheS1saWdodC1udW19XzI1NngyNDAucG5nXCIpO1xyXG59XHJcblxyXG4udWktc3RhdGUtaG92ZXIgLnVpLWljb24sXHJcbi51aS1zdGF0ZS1mb2N1cyAudWktaWNvbiB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiQHt1aS1pbWFnZS1kaXJ9L3VpLWljb25zX0B7dWktZ3JheS1udW19XzI1NngyNDAucG5nXCIpO1xyXG59XHJcblxyXG4udWktc3RhdGUtYWN0aXZlIC51aS1pY29uIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJAe3VpLWltYWdlLWRpcn0vdWktaWNvbnNfQHt1aS1ncmF5LW51bX1fMjU2eDI0MC5wbmdcIik7XHJcbn1cclxuXHJcbi51aS1zdGF0ZS1oaWdobGlnaHQgLnVpLWljb24ge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChcIkB7dWktaW1hZ2UtZGlyfS91aS1pY29uc19Ae3VpLWJyYW5kLXByaW1hcnktbnVtfV8yNTZ4MjQwLnBuZ1wiKTtcclxufVxyXG5cclxuLnVpLXN0YXRlLWVycm9yIC51aS1pY29uLFxyXG4udWktc3RhdGUtZXJyb3ItdGV4dCAudWktaWNvbiB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiQHt1aS1pbWFnZS1kaXJ9L3VpLWljb25zX0B7dWktYnJhbmQtd2FybmluZy1udW19XzI1NngyNDAucG5nXCIpO1xyXG59XHJcblxyXG4vKiBwb3NpdGlvbmluZyAqL1xyXG5cclxuLnVpLWljb24tY2FyYXQtMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XHJcbi51aS1pY29uLWNhcmF0LTEtbmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAwOyB9XHJcbi51aS1pY29uLWNhcmF0LTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IDA7IH1cclxuLnVpLWljb24tY2FyYXQtMS1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IDA7IH1cclxuLnVpLWljb24tY2FyYXQtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggMDsgfVxyXG4udWktaWNvbi1jYXJhdC0xLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDsgfVxyXG4udWktaWNvbi1jYXJhdC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAwOyB9XHJcbi51aS1pY29uLWNhcmF0LTEtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggMDsgfVxyXG4udWktaWNvbi1jYXJhdC0yLW4tcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAwOyB9XHJcbi51aS1pY29uLWNhcmF0LTItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IDA7IH1cclxuXHJcbi51aS1pY29uLXRyaWFuZ2xlLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2cHg7IH1cclxuLnVpLWljb24tdHJpYW5nbGUtMS1uZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNnB4OyB9XHJcbi51aS1pY29uLXRyaWFuZ2xlLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xNnB4OyB9XHJcbi51aS1pY29uLXRyaWFuZ2xlLTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTZweDsgfVxyXG4udWktaWNvbi10cmlhbmdsZS0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTZweDsgfVxyXG4udWktaWNvbi10cmlhbmdsZS0xLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2cHg7IH1cclxuLnVpLWljb24tdHJpYW5nbGUtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE2cHg7IH1cclxuLnVpLWljb24tdHJpYW5nbGUtMS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTZweDsgfVxyXG4udWktaWNvbi10cmlhbmdsZS0yLW4tcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTZweDsgfVxyXG4udWktaWNvbi10cmlhbmdsZS0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTZweDsgfVxyXG5cclxuLnVpLWljb24tYXJyb3ctMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzJweDsgfVxyXG4udWktaWNvbi1hcnJvdy0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTMycHg7IH1cclxuLnVpLWljb24tYXJyb3ctMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTMycHg7IH1cclxuLnVpLWljb24tYXJyb3ctMS1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0zMnB4OyB9XHJcbi51aS1pY29uLWFycm93LTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0zMnB4OyB9XHJcbi51aS1pY29uLWFycm93LTEtc3cgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMzJweDsgfVxyXG4udWktaWNvbi1hcnJvdy0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMzJweDsgfVxyXG4udWktaWNvbi1hcnJvdy0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0zMnB4OyB9XHJcbi51aS1pY29uLWFycm93LTItbi1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0zMnB4OyB9XHJcbi51aS1pY29uLWFycm93LTItbmUtc3cgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTMycHg7IH1cclxuLnVpLWljb24tYXJyb3ctMi1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTMycHg7IH1cclxuLnVpLWljb24tYXJyb3ctMi1zZS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtMzJweDsgfVxyXG4udWktaWNvbi1hcnJvd3N0b3AtMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0zMnB4OyB9XHJcbi51aS1pY29uLWFycm93c3RvcC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTMycHg7IH1cclxuLnVpLWljb24tYXJyb3dzdG9wLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMjRweCAtMzJweDsgfVxyXG4udWktaWNvbi1hcnJvd3N0b3AtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MHB4IC0zMnB4OyB9XHJcblxyXG4udWktaWNvbi1hcnJvd3RoaWNrLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ4cHg7IH1cclxuLnVpLWljb24tYXJyb3d0aGljay0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTQ4cHg7IH1cclxuLnVpLWljb24tYXJyb3d0aGljay0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNDhweDsgfVxyXG4udWktaWNvbi1hcnJvd3RoaWNrLTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtNDhweDsgfVxyXG4udWktaWNvbi1hcnJvd3RoaWNrLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC00OHB4OyB9XHJcbi51aS1pY29uLWFycm93dGhpY2stMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00OHB4OyB9XHJcbi51aS1pY29uLWFycm93dGhpY2stMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTQ4cHg7IH1cclxuLnVpLWljb24tYXJyb3d0aGljay0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC00OHB4OyB9XHJcbi51aS1pY29uLWFycm93dGhpY2stMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTQ4cHg7IH1cclxuLnVpLWljb24tYXJyb3d0aGljay0yLW5lLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC00OHB4OyB9XHJcbi51aS1pY29uLWFycm93dGhpY2stMi1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTQ4cHg7IH1cclxuLnVpLWljb24tYXJyb3d0aGljay0yLXNlLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC00OHB4OyB9XHJcbi51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtNDhweDsgfVxyXG4udWktaWNvbi1hcnJvd3RoaWNrc3RvcC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTQ4cHg7IH1cclxuLnVpLWljb24tYXJyb3d0aGlja3N0b3AtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC00OHB4OyB9XHJcbi51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtNDhweDsgfVxyXG5cclxuLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02NHB4OyB9XHJcbi51aS1pY29uLWFycm93cmV0dXJudGhpY2stMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTY0cHg7IH1cclxuLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNjRweDsgfVxyXG4udWktaWNvbi1hcnJvd3JldHVybnRoaWNrLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC02NHB4OyB9XHJcbi51aS1pY29uLWFycm93cmV0dXJuLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC02NHB4OyB9XHJcbi51aS1pY29uLWFycm93cmV0dXJuLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC02NHB4OyB9XHJcbi51aS1pY29uLWFycm93cmV0dXJuLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC02NHB4OyB9XHJcbi51aS1pY29uLWFycm93cmV0dXJuLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNjRweDsgfVxyXG4udWktaWNvbi1hcnJvd3JlZnJlc2gtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC02NHB4OyB9XHJcbi51aS1pY29uLWFycm93cmVmcmVzaC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTY0cHg7IH1cclxuLnVpLWljb24tYXJyb3dyZWZyZXNoLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtNjRweDsgfVxyXG4udWktaWNvbi1hcnJvd3JlZnJlc2gtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC02NHB4OyB9XHJcblxyXG4udWktaWNvbi1hcnJvdy00IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtODBweDsgfVxyXG4udWktaWNvbi1hcnJvdy00LWRpYWcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtODBweDsgfVxyXG4udWktaWNvbi1leHRsaW5rIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTgwcHg7IH1cclxuLnVpLWljb24tbmV3d2luIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTgwcHg7IH1cclxuLnVpLWljb24tcmVmcmVzaCB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC04MHB4OyB9XHJcbi51aS1pY29uLXNodWZmbGUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtODBweDsgfVxyXG4udWktaWNvbi10cmFuc2Zlci1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtODBweDsgfVxyXG4udWktaWNvbi10cmFuc2ZlcnRoaWNrLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtODBweDsgfVxyXG5cclxuLnVpLWljb24tZm9sZGVyLWNvbGxhcHNlZCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTk2cHg7IH1cclxuLnVpLWljb24tZm9sZGVyLW9wZW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtOTZweDsgfVxyXG4udWktaWNvbi1kb2N1bWVudCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05NnB4OyB9XHJcbi51aS1pY29uLWRvY3VtZW50LWIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtOTZweDsgfVxyXG4udWktaWNvbi1ub3RlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTk2cHg7IH1cclxuLnVpLWljb24tbWFpbC1jbG9zZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtOTZweDsgfVxyXG4udWktaWNvbi1tYWlsLW9wZW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtOTZweDsgfVxyXG4udWktaWNvbi1zdWl0Y2FzZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTZweDsgfVxyXG4udWktaWNvbi1jb21tZW50IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC05NnB4OyB9XHJcbi51aS1pY29uLXBlcnNvbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtOTZweDsgfVxyXG4udWktaWNvbi1wcmludCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtOTZweDsgfVxyXG4udWktaWNvbi10cmFzaCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtOTZweDsgfVxyXG4udWktaWNvbi1sb2NrZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTk2cHg7IH1cclxuLnVpLWljb24tdW5sb2NrZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTk2cHg7IH1cclxuLnVpLWljb24tYm9va21hcmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTk2cHg7IH1cclxuLnVpLWljb24tdGFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MHB4IC05NnB4OyB9XHJcblxyXG4udWktaWNvbi1ob21lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTEycHg7IH1cclxuLnVpLWljb24tZmxhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xMTJweDsgfVxyXG4udWktaWNvbi1jYWxlbmRhciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xMTJweDsgfVxyXG4udWktaWNvbi1jYXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTExMnB4OyB9XHJcbi51aS1pY29uLXBlbmNpbCB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xMTJweDsgfVxyXG4udWktaWNvbi1jbG9jayB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xMTJweDsgfVxyXG4udWktaWNvbi1kaXNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTExMnB4OyB9XHJcbi51aS1pY29uLWNhbGN1bGF0b3IgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTExMnB4OyB9XHJcbi51aS1pY29uLXpvb21pbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTEycHg7IH1cclxuLnVpLWljb24tem9vbW91dCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTEycHg7IH1cclxuLnVpLWljb24tc2VhcmNoIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC0xMTJweDsgfVxyXG4udWktaWNvbi13cmVuY2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTExMnB4OyB9XHJcbi51aS1pY29uLWdlYXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTExMnB4OyB9XHJcbi51aS1pY29uLWhlYXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwOHB4IC0xMTJweDsgfVxyXG4udWktaWNvbi1zdGFyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC0xMTJweDsgfVxyXG4udWktaWNvbi1saW5rIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MHB4IC0xMTJweDsgfVxyXG5cclxuLnVpLWljb24tY2FuY2VsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTI4cHg7IH1cclxuLnVpLWljb24tcGx1cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xMjhweDsgfVxyXG4udWktaWNvbi1wbHVzdGhpY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTI4cHg7IH1cclxuLnVpLWljb24tbWludXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTI4cHg7IH1cclxuLnVpLWljb24tbWludXN0aGljayB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xMjhweDsgfVxyXG4udWktaWNvbi1jbG9zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xMjhweDsgfVxyXG4udWktaWNvbi1jbG9zZXRoaWNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTEyOHB4OyB9XHJcbi51aS1pY29uLWtleSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTI4cHg7IH1cclxuLnVpLWljb24tbGlnaHRidWxiIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xMjhweDsgfVxyXG4udWktaWNvbi1zY2lzc29ycyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTI4cHg7IH1cclxuLnVpLWljb24tY2xpcGJvYXJkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC0xMjhweDsgfVxyXG4udWktaWNvbi1jb3B5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC0xMjhweDsgfVxyXG4udWktaWNvbi1jb250YWN0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0xMjhweDsgfVxyXG4udWktaWNvbi1pbWFnZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMDhweCAtMTI4cHg7IH1cclxuLnVpLWljb24tdmlkZW8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTEyOHB4OyB9XHJcbi51aS1pY29uLXNjcmlwdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtMTI4cHg7IH1cclxuXHJcbi51aS1pY29uLWFsZXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTQ0cHg7IH1cclxuLnVpLWljb24taW5mbyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNDRweDsgfVxyXG4udWktaWNvbi1ub3RpY2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTQ0cHg7IH1cclxuLnVpLWljb24taGVscCB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNDRweDsgfVxyXG4udWktaWNvbi1jaGVjayB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNDRweDsgfVxyXG4udWktaWNvbi1idWxsZXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTQ0cHg7IH1cclxuLnVpLWljb24tcmFkaW8tb24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTQ0cHg7IH1cclxuLnVpLWljb24tcmFkaW8tb2ZmIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0xNDRweDsgfVxyXG4udWktaWNvbi1waW4tdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTQ0cHg7IH1cclxuLnVpLWljb24tcGluLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTE0NHB4OyB9XHJcblxyXG4udWktaWNvbi1wbGF5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTYwcHg7IH1cclxuLnVpLWljb24tcGF1c2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMTYwcHg7IH1cclxuLnVpLWljb24tc2Vlay1uZXh0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE2MHB4OyB9XHJcbi51aS1pY29uLXNlZWstcHJldiB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNjBweDsgfVxyXG4udWktaWNvbi1zZWVrLWVuZCB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNjBweDsgfVxyXG4udWktaWNvbi1zZWVrLWZpcnN0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2MHB4OyB9XHJcbi51aS1pY29uLXNlZWstc3RhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTYwcHg7IH1cclxuLnVpLWljb24tc3RvcCB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xNjBweDsgfVxyXG4udWktaWNvbi1lamVjdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTYwcHg7IH1cclxuLnVpLWljb24tdm9sdW1lLW9mZiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTYwcHg7IH1cclxuLnVpLWljb24tdm9sdW1lLW9uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xNjBweDsgfVxyXG5cclxuLnVpLWljb24tcG93ZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNzZweDsgfVxyXG4udWktaWNvbi1zaWduYWwtZGlhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNzZweDsgfVxyXG4udWktaWNvbi1zaWduYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTc2cHg7IH1cclxuLnVpLWljb24tYmF0dGVyeS0wIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTE3NnB4OyB9XHJcbi51aS1pY29uLWJhdHRlcnktMSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNzZweDsgfVxyXG4udWktaWNvbi1iYXR0ZXJ5LTIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTc2cHg7IH1cclxuLnVpLWljb24tYmF0dGVyeS0zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE3NnB4OyB9XHJcblxyXG4udWktaWNvbi1jaXJjbGUtcGx1cyB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE5MnB4OyB9XHJcbi51aS1pY29uLWNpcmNsZS1taW51cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xOTJweDsgfVxyXG4udWktaWNvbi1jaXJjbGUtY2xvc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTkycHg7IH1cclxuLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTkycHg7IH1cclxuLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTkycHg7IH1cclxuLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTkycHg7IH1cclxuLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTkycHg7IH1cclxuLnVpLWljb24tY2lyY2xlLWFycm93LWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTE5MnB4OyB9XHJcbi51aS1pY29uLWNpcmNsZS1hcnJvdy1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xOTJweDsgfVxyXG4udWktaWNvbi1jaXJjbGUtYXJyb3ctdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTkycHg7IH1cclxuLnVpLWljb24tY2lyY2xlLWFycm93LW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTE5MnB4OyB9XHJcbi51aS1pY29uLWNpcmNsZS16b29taW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTE5MnB4OyB9XHJcbi51aS1pY29uLWNpcmNsZS16b29tb3V0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0xOTJweDsgfVxyXG4udWktaWNvbi1jaXJjbGUtY2hlY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTE5MnB4OyB9XHJcblxyXG4udWktaWNvbi1jaXJjbGVzbWFsbC1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjA4cHg7IH1cclxuLnVpLWljb24tY2lyY2xlc21hbGwtbWludXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMjA4cHg7IH1cclxuLnVpLWljb24tY2lyY2xlc21hbGwtY2xvc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjA4cHg7IH1cclxuLnVpLWljb24tc3F1YXJlc21hbGwtcGx1cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0yMDhweDsgfVxyXG4udWktaWNvbi1zcXVhcmVzbWFsbC1taW51cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yMDhweDsgfVxyXG4udWktaWNvbi1zcXVhcmVzbWFsbC1jbG9zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMDhweDsgfVxyXG5cclxuLnVpLWljb24tZ3JpcC1kb3R0ZWQtdmVydGljYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMjRweDsgfVxyXG4udWktaWNvbi1ncmlwLWRvdHRlZC1ob3Jpem9udGFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIyNHB4OyB9XHJcbi51aS1pY29uLWdyaXAtc29saWQtdmVydGljYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjI0cHg7IH1cclxuLnVpLWljb24tZ3JpcC1zb2xpZC1ob3Jpem9udGFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTIyNHB4OyB9XHJcbi51aS1pY29uLWdyaXBzbWFsbC1kaWFnb25hbC1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yMjRweDsgfVxyXG4udWktaWNvbi1ncmlwLWRpYWdvbmFsLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIyNHB4OyB9IiwiLyogTWlzYyB2aXN1YWxzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLyogQ29ybmVyIHJhZGl1cyAqL1xyXG5cclxuLnVpLWNvcm5lci1hbGwge1xyXG5cdGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbn1cclxuXHJcbi51aS1jb3JuZXItdG9wLCAudWktY29ybmVyLWxlZnQsIC51aS1jb3JuZXItdGwge1xyXG5cdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWJhc2U7XHJcbn1cclxuXHJcbi51aS1jb3JuZXItdG9wLCAudWktY29ybmVyLXJpZ2h0LCAudWktY29ybmVyLXRyIHtcclxuXHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcclxufVxyXG5cclxuLnVpLWNvcm5lci1ib3R0b20sIC51aS1jb3JuZXItbGVmdCwgLnVpLWNvcm5lci1ibCB7XHJcblx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogQGJvcmRlci1yYWRpdXMtYmFzZTtcclxufVxyXG5cclxuLnVpLWNvcm5lci1ib3R0b20sIC51aS1jb3JuZXItcmlnaHQsIC51aS1jb3JuZXItYnIge1xyXG5cdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAYm9yZGVyLXJhZGl1cy1iYXNlO1xyXG59XHJcblxyXG5cclxuLyogT3ZlcmxheXMgKi9cclxuXHJcbi51aS13aWRnZXQtb3ZlcmxheSB7XHJcblx0YmFja2dyb3VuZDogQGdyYXktbGlnaHQgdXJsKFwiQHt1aS1pbWFnZS1kaXJ9L3VpLWJnX2ZsYXRfMF9Ae3VpLWdyYXktbGlnaHQtbnVtfV80MHgxMDAucG5nXCIpIDUwJSA1MCUgcmVwZWF0LXg7XHJcblx0LnVpLW9wYWNpdHkoLjMwKTtcclxufVxyXG5cclxuLnVpLXdpZGdldC1zaGFkb3cge1xyXG5cdG1hcmdpbjogLThweCAwIDAgLThweDtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0YmFja2dyb3VuZDogQGdyYXktbGlnaHQgdXJsKFwiQHt1aS1pbWFnZS1kaXJ9L3VpLWJnX2ZsYXRfMF9Ae3VpLWdyYXktbGlnaHQtbnVtfV80MHgxMDAucG5nXCIpIDUwJSA1MCUgcmVwZWF0LXg7XHJcblx0LnVpLW9wYWNpdHkoLjMwKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHggO1xyXG59XHJcblxyXG5cclxuLyoqKiBJbnB1dCBmaWVsZCBzdHlsaW5nIGZyb20gQm9vdHN0cmFwICoqL1xyXG5cclxuLypcclxuaW5wdXQsIHRleHRhcmVhIHtcclxuXHQudWktdHJhbnNpdGlvbih+XCJib3JkZXIgbGluZWFyIDAuMnMsIGJveC1zaGFkb3cgbGluZWFyIDAuMnNcIik7XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuICBvdmVyZmxvdzogYXV0bztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59XHJcblxyXG5pbnB1dDpmb2N1cywgdGV4dGFyZWE6Zm9jdXMge1xyXG5cdG91dGxpbmU6IDA7XHJcblx0Ym9yZGVyLWNvbG9yOiByZ2JhKDgyLCAxNjgsIDIzNiwgMC44KTtcclxuXHQudWktYm94LXNoYWRvdyh+XCJpbnNldCAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDAgOHB4IHJnYmEoODIsIDE2OCwgMjM2LCAwLjYpXCIpO1xyXG59XHJcbmlucHV0W3R5cGU9ZmlsZV06Zm9jdXMsIGlucHV0W3R5cGU9Y2hlY2tib3hdOmZvY3VzLCBzZWxlY3Q6Zm9jdXMge1xyXG5cdC51aS1ib3gtc2hhZG93IChub25lKTtcclxuXHRvdXRsaW5lOiAxcHggZG90dGVkICM2NjY7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXHJcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXHJcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXHJcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcclxuLnVpLWF1dG9jb21wbGV0ZS1pbnB1dCxcclxudGV4dGFyZWEsXHJcbi51bmVkaXRhYmxlLWlucHV0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0cGFkZGluZzogNHB4O1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRsaW5lLWhlaWdodDogMThweDtcclxuXHRjb2xvcjogIzU1NTU1NTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XHJcbiAgLnVpLWJveC1zaXppbmcoIGNvbnRlbnQtYm94KTtcclxufVxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuKi8iLCIvKiFcclxuICogalF1ZXJ5IFVJIEJvb3RzdHJhcCB2MS4wIEFscGhhXHJcbiAqXHJcbiAqIGpRdWVyeSBVSSBSZXNpemFibGUgMS4xMC4zXHJcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3Jlc2l6YWJsZS9cclxuICpcclxuICogUG9ydGlvbnMgY29weXJpZ2h0IEFkZHkgT3NtYW5pLCBqUXVlcnkgVUkgJiBUd2l0dGVyLCBJbmMuXHJcbiAqIENyZWF0ZWQgdGhlIExFU1MgdmVyc2lvbiBieSBAZGhhcmFwdmpcclxuICogUmVsZWFzZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG5cclxuLnVpLXJlc2l6YWJsZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udWktcmVzaXphYmxlLWhhbmRsZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGZvbnQtc2l6ZTogMC4xcHg7XHJcblx0ei1pbmRleDogOTk5OTk7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi51aS1yZXNpemFibGUtZGlzYWJsZWQgLnVpLXJlc2l6YWJsZS1oYW5kbGUsXHJcbi51aS1yZXNpemFibGUtYXV0b2hpZGUgLnVpLXJlc2l6YWJsZS1oYW5kbGUge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi51aS1yZXNpemFibGUtbiB7XHJcblx0Y3Vyc29yOiBuLXJlc2l6ZTtcclxuXHRoZWlnaHQ6IDdweDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR0b3A6IC01cHg7XHJcblx0bGVmdDogMDtcclxufVxyXG5cclxuLnVpLXJlc2l6YWJsZS1zIHtcclxuXHRjdXJzb3I6IHMtcmVzaXplO1xyXG5cdGhlaWdodDogN3B4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvdHRvbTogLTVweDtcclxuXHRsZWZ0OiAwO1xyXG59XHJcblxyXG4udWktcmVzaXphYmxlLWUge1xyXG5cdGN1cnNvcjogZS1yZXNpemU7XHJcblx0d2lkdGg6IDdweDtcclxuXHRyaWdodDogLTVweDtcclxuXHR0b3A6IDA7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4udWktcmVzaXphYmxlLXcge1xyXG5cdGN1cnNvcjogdy1yZXNpemU7XHJcblx0d2lkdGg6IDdweDtcclxuXHRsZWZ0OiAtNXB4O1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi51aS1yZXNpemFibGUtc2Uge1xyXG5cdGN1cnNvcjogc2UtcmVzaXplO1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRyaWdodDogMXB4O1xyXG5cdGJvdHRvbTogMXB4O1xyXG59XHJcblxyXG4udWktcmVzaXphYmxlLXN3IHtcclxuXHRjdXJzb3I6IHN3LXJlc2l6ZTtcclxuXHR3aWR0aDogOXB4O1xyXG5cdGhlaWdodDogOXB4O1xyXG5cdGxlZnQ6IC01cHg7XHJcblx0Ym90dG9tOiAtNXB4O1xyXG59XHJcblxyXG4udWktcmVzaXphYmxlLW53IHtcclxuXHRjdXJzb3I6IG53LXJlc2l6ZTtcclxuXHR3aWR0aDogOXB4O1xyXG5cdGhlaWdodDogOXB4O1xyXG5cdGxlZnQ6IC01cHg7XHJcblx0dG9wOiAtNXB4O1xyXG59XHJcblxyXG4udWktcmVzaXphYmxlLW5lIHtcclxuXHRjdXJzb3I6IG5lLXJlc2l6ZTtcclxuXHR3aWR0aDogOXB4O1xyXG5cdGhlaWdodDogOXB4O1xyXG5cdHJpZ2h0OiAtNXB4O1xyXG5cdHRvcDogLTVweDtcclxufSIsIi8qXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYVxyXG4gKlxyXG4gKiBqUXVlcnkgVUkgU2VsZWN0YWJsZSAxLjEwLjNcclxuICogaHR0cDovL2pxdWVyeXVpLmNvbS9zZWxlY3RhYmxlL1xyXG4gKlxyXG4gKiBQb3J0aW9ucyBjb3B5cmlnaHQgQWRkeSBPc21hbmksIGpRdWVyeSBVSSAmIFR3aXR0ZXIsIEluYy5cclxuICogQ3JlYXRlZCB0aGUgTEVTUyB2ZXJzaW9uIGJ5IEBkaGFyYXB2alxyXG4gKiBSZWxlYXNlZCB1bmRlciBNSVRcclxuICovXHJcblxyXG4udWktc2VsZWN0YWJsZS1oZWxwZXIge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAxMDA7XHJcblx0Ym9yZGVyOiAxcHggZG90dGVkIEB1aS1ibGFjaztcclxufVxyXG4iLCIvKlxyXG4gKiBqUXVlcnkgVUkgQm9vdHN0cmFwIHYxLjAgQWxwaGFcclxuICpcclxuICogalF1ZXJ5IFVJIEFjY29yZGlvbiAxLjEwLjNcclxuICogaHR0cDovL2pxdWVyeXVpLmNvbS9hY2NvcmRpb24vXHJcbiAqXHJcbiAqIFBvcnRpb25zIGNvcHlyaWdodCBBZGR5IE9zbWFuaSwgalF1ZXJ5IFVJICYgVHdpdHRlciwgSW5jLlxyXG4gKiBDcmVhdGVkIHRoZSBMRVNTIHZlcnNpb24gYnkgQGRoYXJhcHZqXHJcbiAqIFJlbGVhc2VkIHVuZGVyIE1JVFxyXG4gKi9cclxuLyogSUUvV2luIC0gRml4IGFuaW1hdGlvbiBidWcgLSAjNDYxNSAqL1xyXG4udWktYWNjb3JkaW9uIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHQudWktYWNjb3JkaW9uIHtcclxuXHRcdCYtbGktZml4IHtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xyXG5cdFx0fVxyXG5cdFx0Ji1oZWFkZXItYWN0aXZlIHtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyBcclxuXHRcdH1cclxuXHRcdCYtaGVhZGVyIHsgXHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdFx0XHRwYWRkaW5nOiAuNWVtIC41ZW0gLjVlbSAuN2VtO1xyXG5cdFx0XHRtaW4taGVpZ2h0OiAwOyAvKiBzdXBwb3J0OiBJRTcgKi9cclxuXHRcdH1cclxuXHRcdCYtaWNvbnMge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDIuMmVtO1xyXG5cdFx0fVxyXG5cdFx0Ji1ub2ljb25zIHtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAuN2VtO1xyXG5cdFx0fVxyXG5cdFx0Ji1pY29ucyB7XHJcblx0XHRcdC51aS1hY2NvcmRpb24taWNvbnN7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyLjJlbTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji1oZWFkZXIge1xyXG5cdFx0XHQudWktYWNjb3JkaW9uLWhlYWRlci1pY29uIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHRcclxuXHRcdFx0XHRsZWZ0OiAuNWVtO1xyXG5cdFx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IC04cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCYtY29udGVudCB7IFxyXG5cdFx0XHRwYWRkaW5nOiAxZW0gMi4yZW07IFxyXG5cdFx0XHRib3JkZXItdG9wOiAwOyBcclxuXHRcdFx0bWFyZ2luLXRvcDogLTJweDsgXHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcblx0XHRcdHRvcDogMXB4OyBcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMnB4OyBcclxuXHRcdFx0b3ZlcmZsb3c6IGF1dG87IFxyXG5cdFx0XHRkaXNwbGF5OiBub25lOyBcclxuXHRcdH1cclxuXHRcdCYtY29udGVudC1hY3RpdmUgeyBcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYVxyXG4gKlxyXG4gKiBqUXVlcnkgVUkgQXV0b2NvbXBsZXRlIDEuMTAuM1xyXG4gKiBodHRwOi8vZG9jcy5qcXVlcnkuY29tL1VJL0F1dG9jb21wbGV0ZSN0aGVtaW5nXHJcbiAqXHJcbiAqIFBvcnRpb25zIGNvcHlyaWdodCBBZGR5IE9zbWFuaSwgalF1ZXJ5IFVJICYgVHdpdHRlciwgSW5jLlxyXG4gKiBDcmVhdGVkIHRoZSBMRVNTIHZlcnNpb24gYnkgQGRoYXJhcHZqXHJcbiAqIFJlbGVhc2VkIHVuZGVyIE1JVFxyXG4gKi9cclxuLnVpLWF1dG9jb21wbGV0ZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdGN1cnNvcjogZGVmYXVsdDtcclxufSIsIi8qXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYVxyXG4gKlxyXG4gKiBqUXVlcnkgVUkgQnV0dG9uIDEuMTAuM1xyXG4gKiBodHRwOi8vZG9jcy5qcXVlcnkuY29tL1VJL0J1dHRvbiN0aGVtaW5nXHJcbiAqXHJcbiAqIFBvcnRpb25zIGNvcHlyaWdodCBBZGR5IE9zbWFuaSwgalF1ZXJ5IFVJICYgVHdpdHRlciwgSW5jLlxyXG4gKiBDcmVhdGVkIHRoZSBMRVNTIHZlcnNpb24gYnkgQGRoYXJhcHZqXHJcbiAqIFJlbGVhc2VkIHVuZGVyIE1JVFxyXG4gKi9cclxuLnVpLWJ1dHRvbiB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiBAdWktcGFkZGluZy1iYXNlLXZlcnRpY2FsIEB1aS1wYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDtcclxuICBcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0Zm9udC1zaXplOiBAZm9udC1zaXplLWJhc2U7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRsaW5lLWhlaWdodDogQGxpbmUtaGVpZ2h0LWJhc2U7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgQHVpLWJ0bi1kZWZhdWx0LWJvcmRlcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOkB1aS13aGl0ZTtcclxuXHQudWktdXNlci1zZWxlY3Qobm9uZSk7XHJcblx0Jjpmb2N1cyB7XHJcblx0ICAudWktdGFiLWZvY3VzKClcclxuXHR9XHJcblx0Jjpmb2N1cywgJjpob3ZlciB7XHJcblx0XHRjb2xvcjogIzMzMzMzMztcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XHJcblx0XHRib3JkZXItY29sb3I6ICNhZGFkYWQ7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG51aS1idXR0b24uZGlzYWJsZWQsXHJcbnVpLWJ1dHRvbltkaXNhYmxlZF0sXHJcbmZpZWxkc2V0W2Rpc2FibGVkXSB1aS1idXR0b24sXHJcbnVpLWJ1dHRvbi5kaXNhYmxlZDpob3ZlcixcclxudWktYnV0dG9uW2Rpc2FibGVkXTpob3ZlcixcclxuZmllbGRzZXRbZGlzYWJsZWRdIHVpLWJ1dHRvbjpob3ZlcixcclxudWktYnV0dG9uLmRpc2FibGVkOmZvY3VzLFxyXG51aS1idXR0b25bZGlzYWJsZWRdOmZvY3VzLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gdWktYnV0dG9uOmZvY3VzLFxyXG51aS1idXR0b24uZGlzYWJsZWQ6YWN0aXZlLFxyXG51aS1idXR0b25bZGlzYWJsZWRdOmFjdGl2ZSxcclxuZmllbGRzZXRbZGlzYWJsZWRdIHVpLWJ1dHRvbjphY3RpdmUsXHJcbnVpLWJ1dHRvbi5kaXNhYmxlZC5hY3RpdmUsXHJcbnVpLWJ1dHRvbltkaXNhYmxlZF0uYWN0aXZlLFxyXG5maWVsZHNldFtkaXNhYmxlZF0gdWktYnV0dG9uLnVpLXN0YXRlLWFjdGl2ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogQHVpLXdoaXRlO1xyXG4gIGJvcmRlci1jb2xvcjogI2NjY2NjYztcclxufVxyXG5cclxuLnVpLWJ0bi1sYXJnZXtcclxuXHQuYnRuLWxnO1xyXG59XHJcblxyXG4udWktYnRuLXNtYWxse1xyXG5cdC5idG4tc207XHJcbn1cclxuXHJcbi51aS1idG4tbWluaSB7XHJcblx0LmJ0bi14cztcclxufVxyXG5cclxuLnVpLWJ0bi1ibG9jayB7XHJcblx0LmJ0bi1ibG9jaztcclxufVxyXG5cclxuLnVpLWJ0bi1ibG9jayArIC51aS1idG4tYmxvY2sge1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLCBpbnB1dFt0eXBlPVwicmVzZXRcIl0sIGlucHV0W3R5cGU9XCJidXR0b25cIl17XHJcblx0Ji51aS1idG4tYmxvY2t7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkgXHJcbi51aS1idXR0b24taWNvbi1wcmltYXJ5IHtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbn1cclxuXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkge1xyXG5wYWRkaW5nOjJweCA3cHggM3B4O1xyXG59XHJcblxyXG4udWktYnV0dG9uIHtcclxuXHQudWktYnV0dG9uLXZhcmlhbnQoQHVpLXdoaXRlLCBAdWktYnRuLWRlZmF1bHQtYmcsIEB1aS1idG4tZGVmYXVsdC1ib3JkZXIpO1xyXG59XHJcblxyXG4udWktYnV0dG9uLXByaW1hcnkge1xyXG5cdC51aS1idXR0b24tdmFyaWFudChAdWktd2hpdGUsIEB1aS1idG4tcHJpbWFyeS1iZywgQHVpLWJ0bi1wcmltYXJ5LWJvcmRlcik7XHJcbn1cclxuLnVpLWJ1dHRvbi13YXJuaW5nIHtcclxuXHQudWktYnV0dG9uLXZhcmlhbnQoQHVpLXdoaXRlLCBAdWktYnRuLXdhcm5pbmctYmcsIEB1aS1idG4td2FybmluZy1ib3JkZXIpO1xyXG59XHJcbi51aS1idXR0b24taW5mbyB7XHJcblx0LnVpLWJ1dHRvbi12YXJpYW50KEB1aS13aGl0ZSwgQHVpLWJ0bi1pbmZvLWJnLCBAdWktYnRuLWluZm8tYm9yZGVyKTtcclxufVxyXG4udWktYnV0dG9uLWRhbmdlciB7XHJcblx0LnVpLWJ1dHRvbi12YXJpYW50KEB1aS13aGl0ZSwgQHVpLWJ0bi1kYW5nZXItYmcsIEB1aS1idG4tZGFuZ2VyLWJvcmRlcik7XHJcbn1cclxuLnVpLWJ1dHRvbi1pbnZlcnNlIHtcclxuXHQudWktYnV0dG9uLXZhcmlhbnQoQHVpLXdoaXRlLCBAdWktZ3JheS1kYXJrZXIsIEB1aS1ncmF5LWRhcmtlcik7XHJcbn1cclxuLnVpLWJ1dHRvbi1zdWNjZXNzIHtcclxuXHQudWktYnV0dG9uLXZhcmlhbnQoQHVpLXdoaXRlLCBAdWktYnRuLXN1Y2Nlc3MtYmcsIEB1aS1idG4tc3VjY2Vzcy1ib3JkZXIpO1xyXG59XHJcbi51aS1idXR0b24tZXJyb3Ige1xyXG5cdC51aS1idXR0b24tdmFyaWFudChAdWktd2hpdGUsIEB1aS1idG4tZGFuZ2VyLWJnLCBAdWktYnRuLWRhbmdlci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiB0byBtYWtlIHJvb20gZm9yIHRoZSBpY29uLCBhIHdpZHRoIG5lZWRzIHRvIGJlIHNldCBoZXJlICovXHJcbi51aS1idXR0b24taWNvbi1vbmx5IHtcclxuXHR3aWR0aDogMi4yZW07XHJcbn1cclxuXHJcbi8qIGJ1dHRvbiBlbGVtZW50cyBzZWVtIHRvIG5lZWQgYSBsaXR0bGUgbW9yZSB3aWR0aCAqL1xyXG4udWktYnV0dG9uLWljb25zLW9ubHkge1xyXG5cdHdpZHRoOiAzLjRlbTtcclxufVxyXG5cclxuYnV0dG9uLnVpLWJ1dHRvbi1pY29ucy1vbmx5IHtcclxuXHR3aWR0aDogMy43ZW07XHJcbn1cclxuXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkgLnVpLWJ1dHRvbi1pY29uLXByaW1hcnkudWktaWNvbiB7XHJcbiAgICBtYXJnaW4tdG9wOjVweDtcclxufVxyXG4vKmJ1dHRvbiB0ZXh0IGVsZW1lbnQgKi9cclxuXHJcbi51aS1idXR0b24gLnVpLWJ1dHRvbi10ZXh0IHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRsaW5lLWhlaWdodDogQHVpLWxpbmUtaGVpZ2h0LWJhc2U7XHJcbn1cclxuXHJcbi51aS1idXR0b24taWNvbi1vbmx5IC51aS1idXR0b24tdGV4dCxcclxuLnVpLWJ1dHRvbi1pY29ucy1vbmx5IC51aS1idXR0b24tdGV4dCB7XHJcblx0cGFkZGluZzogLjRlbTtcclxuXHR0ZXh0LWluZGVudDogLTk5OTlweDtcclxuXHRkaXNwbGF5Om5vbmU7IC8qdGVtcGZpeCovXHJcbn1cclxuXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkgLnVpLWJ1dHRvbi10ZXh0LFxyXG4udWktYnV0dG9uLXRleHQtaWNvbnMgLnVpLWJ1dHRvbi10ZXh0IHtcclxuXHRwYWRkaW5nOiAuNGVtIDFlbSAuNGVtIDIuMWVtO1xyXG59XHJcblxyXG4udWktYnV0dG9uLXRleHQtaWNvbi1zZWNvbmRhcnkgLnVpLWJ1dHRvbi10ZXh0LFxyXG4udWktYnV0dG9uLXRleHQtaWNvbnMgLnVpLWJ1dHRvbi10ZXh0IHtcclxuXHRwYWRkaW5nOiAuNGVtIDIuMWVtIC40ZW0gMWVtO1xyXG59XHJcblxyXG4udWktYnV0dG9uLXRleHQtaWNvbnMgLnVpLWJ1dHRvbi10ZXh0IHtcclxuXHRwYWRkaW5nLWxlZnQ6IDIuMWVtO1xyXG5cdHBhZGRpbmctcmlnaHQ6IDIuMWVtO1xyXG59XHJcblxyXG4vKiBubyBpY29uIHN1cHBvcnQgZm9yIGlucHV0IGVsZW1lbnRzLCBwcm92aWRlIHBhZGRpbmcgYnkgZGVmYXVsdCAqL1xyXG5pbnB1dC51aS1idXR0b24ge1xyXG5cdHBhZGRpbmc6IC40ZW0gMWVtO1xyXG59XHJcblxyXG4vKmJ1dHRvbiBpY29uIGVsZW1lbnQocykgKi9cclxuLnVpLWJ1dHRvbi1pY29uLW9ubHkgLnVpLWljb24sXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkgLnVpLWljb24sXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXNlY29uZGFyeSAudWktaWNvbixcclxuLnVpLWJ1dHRvbi10ZXh0LWljb25zIC51aS1pY29uLFxyXG4udWktYnV0dG9uLWljb25zLW9ubHkgLnVpLWljb24ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB0b3A6IDUwJTtcclxufVxyXG5cclxuLnVpLWJ1dHRvbi1pY29uLW9ubHkgLnVpLWljb24ge1xyXG5cdGxlZnQ6IDUwJTtcclxuXHQvKiBjaHJvbWUgbWFyZ2luKi9cclxuXHRtYXJnaW4tbGVmdDogLThweDtcclxuXHQvKiBmaXJlZm94IG1hcmdpbiovXHJcbiAgICBtYXJnaW4tcmlnaHQ6IC02cHg7XHJcbn1cclxuXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnksIC51aS1idXR0b24tdGV4dC1pY29ucywgLnVpLWJ1dHRvbi1pY29ucy1vbmx5IHtcclxuXHQudWktYnV0dG9uLWljb24tcHJpbWFyeSB7XHJcblx0XHRsZWZ0OiAuNWVtO1xyXG5cdH1cclxufVxyXG5cclxuLnVpLWJ1dHRvbi10ZXh0LWljb24tc2Vjb25kYXJ5LCAudWktYnV0dG9uLXRleHQtaWNvbnMsIC51aS1idXR0b24taWNvbnMtb25seSB7XHJcblx0LnVpLWJ1dHRvbi1pY29uLXNlY29uZGFyeXtcclxuXHRcdHJpZ2h0OiAuNWVtO1xyXG5cdH1cclxufVxyXG5cclxuLnVpLWJ1dHRvbi10ZXh0LWljb25zLCAudWktYnV0dG9uLWljb25zLW9ubHkge1xyXG5cdC51aS1idXR0b24taWNvbi1zZWNvbmRhcnl7XHJcblx0XHRyaWdodDogLjVlbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qYnV0dG9uIHNldHMqL1xyXG5cclxuLnVpLWJ1dHRvbnNldCB7XHJcblx0bWFyZ2luLXJpZ2h0OiA3cHg7XHJcblx0LnVpLXN0YXRlLWFjdGl2ZSB7XHJcblx0XHRjb2xvcjogQHVpLXdoaXRlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzQyOGJjYTtcclxuXHRcdGJvcmRlci1jb2xvcjogIzM1N2ViZDtcclxuXHRcdCYudWktc3RhdGUtaG92ZXIge1xyXG5cdFx0XHRjb2xvcjogQHVpLXdoaXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzI3NmIxO1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICMyODVlOGU7XHJcblx0XHR9XHJcblx0fVxyXG5cdC51aS1idXR0b24ge1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IC0uNGVtO1xyXG5cdH1cclxufVxyXG5cclxuLyogcmVzZXQgZXh0cmEgcGFkZGluZyBpbiBGaXJlZm94ICovXHJcbmJ1dHRvbi51aS1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xyXG5cdGJvcmRlcjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG59IFxyXG4iLCIvL1xyXG4vLyBCdXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gQmFzZSBzdHlsZXNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBGb3IgaW5wdXQuYnRuXHJcbiAgZm9udC13ZWlnaHQ6IEBidG4tZm9udC13ZWlnaHQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlc2V0IHVudXN1YWwgRmlyZWZveC1vbi1BbmRyb2lkIGRlZmF1bHQgc3R5bGU7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzL2lzc3Vlcy8yMTRcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIC5idXR0b24tc2l6ZShAcGFkZGluZy1iYXNlLXZlcnRpY2FsOyBAcGFkZGluZy1iYXNlLWhvcml6b250YWw7IEBmb250LXNpemUtYmFzZTsgQGxpbmUtaGVpZ2h0LWJhc2U7IEBib3JkZXItcmFkaXVzLWJhc2UpO1xyXG4gIC51c2VyLXNlbGVjdChub25lKTtcclxuXHJcbiAgJjpmb2N1cyB7XHJcbiAgICAudGFiLWZvY3VzKCk7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgY29sb3I6IEBidG4tZGVmYXVsdC1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gICY6YWN0aXZlLFxyXG4gICYuYWN0aXZlIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgLmJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xyXG4gIH1cclxuXHJcbiAgJi5kaXNhYmxlZCxcclxuICAmW2Rpc2FibGVkXSxcclxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IC8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzXHJcbiAgICAub3BhY2l0eSguNjUpO1xyXG4gICAgLmJveC1zaGFkb3cobm9uZSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gQWx0ZXJuYXRlIGJ1dHRvbnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5idG4tZGVmYXVsdCB7XHJcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4tZGVmYXVsdC1jb2xvcjsgQGJ0bi1kZWZhdWx0LWJnOyBAYnRuLWRlZmF1bHQtYm9yZGVyKTtcclxufVxyXG4uYnRuLXByaW1hcnkge1xyXG4gIC5idXR0b24tdmFyaWFudChAYnRuLXByaW1hcnktY29sb3I7IEBidG4tcHJpbWFyeS1iZzsgQGJ0bi1wcmltYXJ5LWJvcmRlcik7XHJcbn1cclxuLy8gU3VjY2VzcyBhcHBlYXJzIGFzIGdyZWVuXHJcbi5idG4tc3VjY2VzcyB7XHJcbiAgLmJ1dHRvbi12YXJpYW50KEBidG4tc3VjY2Vzcy1jb2xvcjsgQGJ0bi1zdWNjZXNzLWJnOyBAYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcclxufVxyXG4vLyBJbmZvIGFwcGVhcnMgYXMgYmx1ZS1ncmVlblxyXG4uYnRuLWluZm8ge1xyXG4gIC5idXR0b24tdmFyaWFudChAYnRuLWluZm8tY29sb3I7IEBidG4taW5mby1iZzsgQGJ0bi1pbmZvLWJvcmRlcik7XHJcbn1cclxuLy8gV2FybmluZyBhcHBlYXJzIGFzIG9yYW5nZVxyXG4uYnRuLXdhcm5pbmcge1xyXG4gIC5idXR0b24tdmFyaWFudChAYnRuLXdhcm5pbmctY29sb3I7IEBidG4td2FybmluZy1iZzsgQGJ0bi13YXJuaW5nLWJvcmRlcik7XHJcbn1cclxuLy8gRGFuZ2VyIGFuZCBlcnJvciBhcHBlYXIgYXMgcmVkXHJcbi5idG4tZGFuZ2VyIHtcclxuICAuYnV0dG9uLXZhcmlhbnQoQGJ0bi1kYW5nZXItY29sb3I7IEBidG4tZGFuZ2VyLWJnOyBAYnRuLWRhbmdlci1ib3JkZXIpO1xyXG59XHJcblxyXG5cclxuLy8gTGluayBidXR0b25zXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXHJcbi5idG4tbGluayB7XHJcbiAgY29sb3I6IEBsaW5rLWNvbG9yO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcblxyXG4gICYsXHJcbiAgJjphY3RpdmUsXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAuYm94LXNoYWRvdyhub25lKTtcclxuICB9XHJcbiAgJixcclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMsXHJcbiAgJjphY3RpdmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgJjpob3ZlcixcclxuICAmOmZvY3VzIHtcclxuICAgIGNvbG9yOiBAbGluay1ob3Zlci1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG4gICZbZGlzYWJsZWRdLFxyXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgY29sb3I6IEBidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEJ1dHRvbiBTaXplc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bi1sZyB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBldmVuLW51bWJlcmVkIGhlaWdodCBvZiBidXR0b24gbmV4dCB0byBsYXJnZSBpbnB1dFxyXG4gIC5idXR0b24tc2l6ZShAcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDsgQHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDsgQGZvbnQtc2l6ZS1sYXJnZTsgQGxpbmUtaGVpZ2h0LWxhcmdlOyBAYm9yZGVyLXJhZGl1cy1sYXJnZSk7XHJcbn1cclxuLmJ0bi1zbSB7XHJcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XHJcbiAgLmJ1dHRvbi1zaXplKEBwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOyBAcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOyBAZm9udC1zaXplLXNtYWxsOyBAbGluZS1oZWlnaHQtc21hbGw7IEBib3JkZXItcmFkaXVzLXNtYWxsKTtcclxufVxyXG4uYnRuLXhzIHtcclxuICAuYnV0dG9uLXNpemUoQHBhZGRpbmcteHMtdmVydGljYWw7IEBwYWRkaW5nLXhzLWhvcml6b250YWw7IEBmb250LXNpemUtc21hbGw7IEBsaW5lLWhlaWdodC1zbWFsbDsgQGJvcmRlci1yYWRpdXMtc21hbGwpO1xyXG59XHJcblxyXG5cclxuLy8gQmxvY2sgYnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uYnRuLWJsb2NrIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgcGFkZGluZy1yaWdodDogMDtcclxufVxyXG5cclxuLy8gVmVydGljYWxseSBzcGFjZSBvdXQgbXVsdGlwbGUgYmxvY2sgYnV0dG9uc1xyXG4uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcclxuICAmLmJ0bi1ibG9jayB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuIiwiLyohXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYVxyXG4gKlxyXG4gKiBqUXVlcnkgVUkgTWVudSAxLjEwLjNcclxuICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9NZW51I3RoZW1pbmdcclxuICpcclxuICogUG9ydGlvbnMgY29weXJpZ2h0IEFkZHkgT3NtYW5pLCBqUXVlcnkgVUkgJiBUd2l0dGVyLCBJbmMuXHJcbiAqIENyZWF0ZWQgdGhlIExFU1MgdmVyc2lvbiBieSBAZGhhcmFwdmpcclxuICogUmVsZWFzZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG4udWktbWVudSB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAycHg7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0LnVpLW1lbnV7XHJcblx0XHRtYXJnaW4tdG9wOiAtM3B4O1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0bGlzdC1zdHlsZTpub25lO1xyXG5cdH1cclxufVxyXG5cclxuLypcclxuKiBCdWcgaW5saW5lIHdpdGggSUUgc3ViIG1lbnVcclxuKi9cclxuLyogSUU5LCBJRTEwICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6flwiMFxcMFwiKSB7XHJcblx0LnVpLW1lbnUgbGkge1xyXG5cdCAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG5cdCAgZGlzcGxheTogaW5saW5lO1xyXG5cdCAgbGluZS1oZWlnaHQ6IDA7XHJcblx0fVxyXG5cclxuXHRsaS51aS1tZW51LWl0ZW0geyBcclxuXHQgIC8qIFRoaXMgZml4ZXMgdGhlIElFMTAgaXNzdWUgKGpRdWVyeSBVSSBJc3N1ZSAjODg0NCkqL1xyXG5cdCAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG5cdCAgZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG59XHJcblxyXG4udWktbWVudXtcclxuXHQudWktbWVudS1pdGVtIHtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGxpc3Qtc3R5bGU6bm9uZTtcclxuXHRcdC8qIHN1cHBvcnQ6IElFMTAsIHNlZSAjODg0NCAqL1xyXG5cdFx0bGlzdC1zdHlsZS1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFBQUFQLy8veUg1QkFFQUFBQUFMQUFBQUFBQkFBRUFBQUlCUkFBNyk7XHJcblx0fVxyXG5cdC51aS1tZW51LWRpdmlkZXIge1xyXG5cdFx0bWFyZ2luOiA1cHggLTJweCA1cHggLTJweDtcclxuXHRcdGhlaWdodDogMDtcclxuXHRcdGZvbnQtc2l6ZTogMDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAwO1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XHJcblx0fVxyXG5cdC51aS1tZW51LWl0ZW0gYSB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBhZGRpbmc6IDJweCAuNGVtO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRcdG1pbi1oZWlnaHQ6IDA7IC8qIHN1cHBvcnQ6IElFNyAqL1xyXG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBAdWktbWVudS1pdGVtLWEtYmc7XHJcblx0XHRib3JkZXItY29sb3I6IEB1aS1tZW51LWl0ZW0tYS1ib3JkZXI7XHJcblx0XHRjb2xvcjogQHVpLW1lbnUtaXRlbS1hLWNvbG9yO1xyXG5cdFx0XHJcblx0XHQmLnVpLWNvcm5lci1hbGx7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDBweDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Ji51aS1zdGF0ZS1mb2N1cywgJi51aS1zdGF0ZS1hY3RpdmUsICYudWktd2lkZ2V0LWNvbnRlbnR7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYudWktc3RhdGUtYWN0aXZlLCAmLnVpLXdpZGdldC1jb250ZW50IHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogQHVpLW1lbnUtaXRlbS1hLWFjdGl2ZS1iZztcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiBAdWktbWVudS1pdGVtLWEtYWN0aXZlLWJvcmRlcjtcclxuXHRcdFx0Y29sb3I6IEB1aS1tZW51LWl0ZW0tYS1hY3RpdmUtY29sb3I7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji51aS1zdGF0ZS1mb2N1cyB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IEB1aS1tZW51LWl0ZW0tYS1mb2N1cy1iZztcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiBAdWktbWVudS1pdGVtLWEtZm9jdXMtYm9yZGVyO1xyXG5cdFx0XHRjb2xvcjogQHVpLW1lbnUtaXRlbS1hLWZvY3VzLWNvbG9yO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvKiBGaXggcHJvYmxlbSB3aXRoIGJvcmRlciBpbiB1aS1zdGF0ZS1hY3RpdmUgKi9cclxuXHRcdC51aS1zdGF0ZS1hY3RpdmUge1xyXG5cdFx0XHRwYWRkaW5nOiAxcHggLjRlbTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi51aS1tZW51IC51aS1zdGF0ZS1kaXNhYmxlZCB7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRtYXJnaW46IC40ZW0gMCAuMmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0YSB7XHJcblx0XHRjdXJzb3I6IGRlZmF1bHQ7XHJcblx0fVxyXG59XHJcblxyXG4vKiBpY29uIHN1cHBvcnQgKi9cclxuLnVpLW1lbnUtaWNvbnMge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQudWktbWVudS1pdGVtIGEge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAyZW07XHJcblx0fVxyXG59XHJcblxyXG4udWktbWVudXtcclxuXHR3aWR0aDogMjAwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMmVtO1xyXG5cdC8qIGxlZnQtYWxpZ25lZCAqL1xyXG5cdC51aS1pY29uIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLjJlbTtcclxuXHRcdGxlZnQ6IC4yZW07XHJcblx0fVxyXG5cclxuXHQvKiByaWdodC1hbGlnbmVkICovXHJcblx0LnVpLW1lbnUtaWNvbiB7XHJcblx0XHRwb3NpdGlvbjogc3RhdGljO1xyXG5cdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdH1cclxufVxyXG4iLCIvKiFcclxuICogalF1ZXJ5IFVJIEJvb3RzdHJhcCB2MS4wIEFscGhhXHJcbiAqXHJcbiAqIGpRdWVyeSBVSSBzcGlubmVyIDEuMTAuM1xyXG4gKiBodHRwOi8vZG9jcy5qcXVlcnkuY29tL1VJL01lbnUjdGhlbWluZ1xyXG4gKlxyXG4gKiBQb3J0aW9ucyBjb3B5cmlnaHQgQWRkeSBPc21hbmksIGpRdWVyeSBVSSAmIFR3aXR0ZXIsIEluYy5cclxuICogQ3JlYXRlZCB0aGUgTEVTUyB2ZXJzaW9uIGJ5IEBkaGFyYXB2alxyXG4gKiBSZWxlYXNlZCB1bmRlciBNSVRcclxuICovXHJcblxyXG4udWktc3Bpbm5lciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLnVpLXNwaW5uZXItaW5wdXQge1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAuMmVtIDIycHggMC4yZW0gMC40ZW07XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLnVpLXNwaW5uZXItYnV0dG9uIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDUwJTtcclxuXHRmb250LXNpemU6IC41ZW07XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRjdXJzb3I6IGRlZmF1bHQ7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRyaWdodDogMDtcclxufVxyXG5cclxuLyogbW9yZSBzcGVjaWZpY2l0eSByZXF1aXJlZCBoZXJlIHRvIG92ZXJpZGUgZGVmYXVsdCBib3JkZXJzICovXHJcbi51aS1zcGlubmVyIHtcclxuXHRhLnVpLXNwaW5uZXItYnV0dG9uIHtcclxuXHRcdGJvcmRlci10b3A6IG5vbmU7XHJcblx0XHRib3JkZXItYm90dG9tOiBub25lO1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xyXG5cdH1cclxuXHQvKiB2ZXJ0aWNhbCBjZW50cmUgaWNvbiAqL1xyXG5cdC51aS1pY29uIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdG1hcmdpbi10b3A6IC04cHg7XHJcblx0XHR0b3A6IDUwJTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0fVxyXG5cdC8qIG5lZWQgdG8gZml4IGljb25zIHNwcml0ZSAqL1xyXG5cdC51aS1pY29uLXRyaWFuZ2xlLTEtcyB7XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjVweCAtMTZweDtcclxuXHR9XHJcbn1cclxuXHRcclxuLnVpLXNwaW5uZXItdXAge1xyXG5cdHRvcDogMDtcclxufVxyXG5cclxuLnVpLXNwaW5uZXItZG93biB7XHJcblx0Ym90dG9tOiAwO1xyXG59XHJcbiIsIi8qIVxyXG4gKiBqUXVlcnkgVUkgQm9vdHN0cmFwIHYxLjAgQWxwaGFcclxuICpcclxuICogalF1ZXJ5IFVJIERpYWxvZyAxLjEwLjNcclxuICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9EaWFsb2cjdGhlbWluZ1xyXG4gKlxyXG4gKiBQb3J0aW9ucyBjb3B5cmlnaHQgQWRkeSBPc21hbmksIGpRdWVyeSBVSSAmIFR3aXR0ZXIsIEluYy5cclxuICogQ3JlYXRlZCB0aGUgTEVTUyB2ZXJzaW9uIGJ5IEBkaGFyYXB2alxyXG4gKiBSZWxlYXNlZCB1bmRlciBNSVRcclxuICovXHJcbi51aS1kaWFsb2cgeyBcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7IFxyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHBhZGRpbmc6IC4yZW07IFxyXG5cdHdpZHRoOiAzMDBweDsgXHJcblx0b3ZlcmZsb3c6IGhpZGRlbjsgXHJcblx0b3V0bGluZTogMDtcclxuXHRiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG5cdGJvcmRlci1yYWRpdXM6IEBib3JkZXItcmFkaXVzLWxhcmdlO1xyXG5cdC51aS1ib3gtc2hhZG93KDAgM3B4IDdweCByZ2JhKDAsIDAsIDAsIDAuMykpO1xyXG5cdG91dGxpbmU6IG1lZGl1bSBub25lO1xyXG5cdHotaW5kZXg6IDEwNTA7XHJcblx0LnVpLWRpYWxvZy10aXRsZWJhciB7IFxyXG5cdFx0LypwYWRkaW5nOiAuNGVtIDFlbTsqL1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0Ym9yZGVyOjBweCAwcHggMHB4IDFweCBzb2xpZDtcclxuXHRcdGJvcmRlci1jb2xvcjogQHVpLXdoaXRlO1xyXG5cdFx0cGFkZGluZzogNXB4IDE1cHg7XHJcblx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246bm9uZTtcclxuXHRcdCN1aS1ib3JkZXItcmFkaXVzID4gLmJvdHRvbVJpZ2h0ICggMHB4ICk7XHJcblx0XHQjdWktYm9yZGVyLXJhZGl1cyA+IC5ib3R0b21MZWZ0ICggMHB4ICk7XHJcblx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCBkYXJrZW4oQHVpLWdyYXktbGlnaHRlciwgMTQpO1xyXG5cdH1cclxuXHQudWktZGlhbG9nLXRpdGxlIHtcclxuXHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0Y29sb3I6QHVpLWdyYXktZGFyazsgLy8gRklYTUUgLSB0aGlzIG5lZWRzIHRvIGJlICM0MDQwNDBcclxuXHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XHJcblx0XHRtYXJnaW4tdG9wOjVweDtcclxuXHRcdG1hcmdpbi1ib3R0b206NXB4O1xyXG5cdFx0cGFkZGluZzo1cHggMDtcclxuXHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR9XHJcblx0LnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogLjNlbTtcclxuXHRcdHRvcDogNTAlO1xyXG5cdFx0d2lkdGg6IDE5cHg7XHJcblx0XHRtYXJnaW46IC0yMHB4IDAgMCAwO1xyXG5cdFx0cGFkZGluZzogMXB4O1xyXG5cdFx0aGVpZ2h0OiAxOHB4O1xyXG5cdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRsaW5lLWhlaWdodDogMTMuNXB4O1xyXG5cdFx0dGV4dC1zaGFkb3c6IDAgMXB4IDAgQHVpLXdoaXRlO1xyXG5cdFx0LnVpLW9wYWNpdHkoLjI1KTtcclxuXHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRib3JkZXItd2lkdGg6IDA7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHQuYm94LXNoYWRvdyggbm9uZSk7XHJcblx0fVxyXG5cdC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2Ugc3BhbiB7IFxyXG5cdFx0ZGlzcGxheTogYmxvY2s7IFxyXG5cdFx0bWFyZ2luOiAxcHg7IFxyXG5cdFx0dGV4dC1pbmRlbnQ6OTk5OXB4O1xyXG5cdH1cclxuXHQudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOmhvdmVyLCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOmZvY3VzIHsgXHJcblx0XHQub3BhY2l0eSguOSk7XHJcblx0fVxyXG5cdC51aS1kaWFsb2ctY29udGVudCB7IFxyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcclxuXHRcdGJvcmRlcjogMDsgXHJcblx0XHRwYWRkaW5nOiAxNXB4OyBcclxuXHRcdGJhY2tncm91bmQ6IG5vbmU7IFxyXG5cdFx0b3ZlcmZsb3c6IGF1dG87IFxyXG5cdH1cclxuXHQudWktZGlhbG9nLWJ1dHRvbnBhbmUge1xyXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdGJvcmRlci13aWR0aDogMXB4IDAgMCAwO1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuXHRcdG1hcmdpbjogLjVlbSAwIDAgMDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IEB1aS1mb3JtLWFjdGlvbnMtYmFja2dyb3VuZDtcclxuXHRcdHBhZGRpbmc6IDVweCAxNXB4IDVweDtcclxuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZW4oQHVpLWdyYXktbGlnaHRlciwxMCUpO1xyXG5cdFx0I3VpLWJvcmRlci1yYWRpdXMgPiAuYm9yZGVyKCAwLCAwLCA2cHgsIDZweCApO1xyXG5cdFx0LnVpLWJveC1zaGFkb3coIGluc2V0IDAgMXB4IDAgQHVpLXdoaXRlICk7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdH1cclxuXHQudWktZGlhbG9nLWJ1dHRvbnBhbmUgLnVpLWRpYWxvZy1idXR0b25zZXQge1xyXG5cdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdH1cclxuXHQudWktZGlhbG9nLWJ1dHRvbnBhbmUgYnV0dG9uIHsgXHJcblx0XHRtYXJnaW46IC41ZW0gLjRlbSAuNWVtIDA7IFxyXG5cdFx0Y3Vyc29yOiBwb2ludGVyOyBcclxuXHR9XHJcblx0LnVpLXJlc2l6YWJsZS1zZSB7IFxyXG5cdFx0d2lkdGg6IDE0cHg7IFxyXG5cdFx0aGVpZ2h0OiAxNHB4OyBcclxuXHRcdHJpZ2h0OiAzcHg7IFxyXG5cdFx0Ym90dG9tOiAzcHg7IFxyXG5cdH1cclxufVxyXG4udWktZHJhZ2dhYmxlIC51aS1kaWFsb2ctdGl0bGViYXIgeyBjdXJzb3I6IG1vdmU7IH1cclxuXHJcbi51aS1kaWFsb2ctYnV0dG9ucGFuZSAudWktZGlhbG9nLWJ1dHRvbnNldCAudWktYnV0dG9uIHtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQyOGJjYTtcclxuICAgIGJvcmRlci1jb2xvcjogIzM1N2ViZDtcclxuXHQmLnVpLXN0YXRlLWhvdmVye1xyXG5cdFx0Y29sb3I6ICNmZmZmZmY7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzI3NmIxO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAjMjg1ZThlO1xyXG5cdH1cclxufVxyXG5cclxuLyoqKkRpYWxvZyBmaXhlcyoqL1xyXG4udWktZGlhbG9nLWJ1dHRvbnNldCAudWktYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGNvbG9yOiAjMzMzMzMzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XHJcbiAgICAudWktdHJhbnNpdGlvbiggMC4xcyBsaW5lYXIgYWxsKTtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cdCYudWktc3RhdGUtaG92ZXJ7XHJcblx0XHRjb2xvcjogIzMzMzMzMztcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XHJcblx0XHRib3JkZXItY29sb3I6ICNhZGFkYWQ7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4udWktZGlhbG9nLWJ1dHRvbnNldCAudWktYnV0dG9ue1xyXG5cdC8qIHVpLWRpYWxvZy1idXR0b25zZXQgVUkgaW5mbyAqL1xyXG5cdCYudWktYnV0dG9uLWluZm97XHJcblx0XHRjb2xvcjogI2ZmZmZmZjtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICM1YmMwZGU7XHJcblx0XHRib3JkZXItY29sb3I6ICM0NmI4ZGE7XHJcblx0XHQmLnVpLXN0YXRlLWhvdmVye1xyXG5cdFx0XHRjb2xvcjogI2ZmZmZmZjtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzM5YjNkNztcclxuXHRcdFx0Ym9yZGVyLWNvbG9yOiAjMjY5YWJjO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQvKiB1aS1kaWFsb2ctYnV0dG9uc2V0IFVJIHN1Y2Nlc3MgKi9cclxuXHQmLnVpLWJ1dHRvbi1zdWNjZXNze1xyXG5cdFx0Y29sb3I6ICNmZmZmZmY7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAjNGNhZTRjO1xyXG5cdFx0Ji51aS1zdGF0ZS1ob3ZlcntcclxuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICM0N2E0NDc7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogIzM5ODQzOTtcclxuXHRcdH1cclxuXHR9XHJcblx0LyogdWktZGlhbG9nLWJ1dHRvbnNldCBVSSB3YXJuaW5nICovXHJcblx0Ji51aS1idXR0b24td2FybmluZ3tcclxuXHRcdGNvbG9yOiAjZmZmZmZmO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2YwYWQ0ZTtcclxuXHRcdGJvcmRlci1jb2xvcjogI2VlYTIzNjtcclxuXHRcdCYudWktc3RhdGUtaG92ZXJ7XHJcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWQ5YzI4O1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICNkNTg1MTI7XHJcblx0XHR9XHJcblx0fVxyXG5cdC8qIHVpLWRpYWxvZy1idXR0b25zZXQgVUkgRGFuZ2VyICovXHJcblx0Ji51aS1idXR0b24tZGFuZ2Vye1xyXG5cdFx0Y29sb3I6ICNmZmZmZmY7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZDk1MzRmO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAjZDQzZjNhO1xyXG5cdFx0Ji51aS1zdGF0ZS1ob3ZlcntcclxuXHRcdFx0Y29sb3I6ICNmZmZmZmY7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNkMjMyMmQ7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogI2FjMjkyNTtcclxuXHRcdH1cclxuXHR9XHJcblx0LyogdWktZGlhbG9nLWJ1dHRvbnNldCBVSSBJbnZlcnNlICovXHJcblx0Ji51aS1idXR0b24taW52ZXJzZXtcclxuXHRcdGNvbG9yOiAjZmZmZmZmO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcclxuXHRcdGJvcmRlci1jb2xvcjogIzA4MDgwODtcclxuXHRcdCYudWktc3RhdGUtaG92ZXJ7XHJcblx0XHRcdGNvbG9yOiAjZmZmZmZmO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMzYzNjM2O1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICMwMDAwMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qXHJcbiAqIGpRdWVyeSBVSSBTbGlkZXIgMS4xMC4zXHJcbiAqIGh0dHA6Ly9kb2NzLmpxdWVyeS5jb20vVUkvU2xpZGVyI3RoZW1pbmdcclxuICpcclxuICogUG9ydGlvbnMgY29weXJpZ2h0IEFkZHkgT3NtYW5pLCBqUXVlcnkgVUkgJiBUd2l0dGVyLCBJbmMuXHJcbiAqIENyZWF0ZWQgdGhlIExFU1MgdmVyc2lvbiBieSBAZGhhcmFwdmpcclxuICogUmVsZWFzZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG4udWktc2xpZGVyIHsgXHJcblx0cG9zaXRpb246IHJlbGF0aXZlOyBcclxuXHR0ZXh0LWFsaWduOiBsZWZ0OyBcclxuXHQvKiBGb3IgSUU4IC0gU2VlICM2NzI3ICovXHJcblx0LnVpLXN0YXRlLWRpc2FibGVkIC51aS1zbGlkZXItaGFuZGxlLFxyXG5cdC51aS1zdGF0ZS1kaXNhYmxlZCAudWktc2xpZGVyLXJhbmdlIHtcclxuXHRcdGZpbHRlcjogaW5oZXJpdDtcclxuXHR9XHJcblx0LnVpLXNsaWRlci1oYW5kbGUgeyBcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTsgXHJcblx0XHR6LWluZGV4OiAyOyBcclxuXHRcdHdpZHRoOiAxLjJlbTsgXHJcblx0XHRoZWlnaHQ6IDEuMmVtOyBcclxuXHRcdGN1cnNvcjogZGVmYXVsdDsgXHJcblx0fVxyXG5cdC51aS1zbGlkZXItcmFuZ2UgeyBcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTsgXHJcblx0XHR6LWluZGV4OiAxOyBcclxuXHRcdGZvbnQtc2l6ZTogLjdlbTsgXHJcblx0XHRkaXNwbGF5OiBibG9jazsgXHJcblx0XHRib3JkZXI6IDA7IFxyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG5cclxuXHRcdGNvbG9yOiBAdWktd2hpdGU7XHJcblx0XHQjdWktZ3JhZGllbnQgPiAudmVydGljYWwgKCBAdWktbGluay1jb2xvciwgQHVpLWxpbmstaG92ZXItY29sb3IgKTtcdC8vIEZJWE1FIC0gTmVlZCB0byBmaXggdGhlIGNvbG9yc1xyXG5cdFx0LnVpLWJveC1zaGFkb3coIDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSkgKTtcclxuXHRcdC51aS1ib3gtc2l6aW5nKCBib3JkZXItYm94ICk7XHJcblx0XHQudWktdHJhbnNpdGlvbiggd2lkdGggMC42cyBlYXNlKTtcclxuXHRcdC8qYm9yZGVyLWNvbG9yOiBAdWktYmx1ZS1kYXJrIEB1aS1ibHVlLWRhcmsgQHVpLWJsdWU7XHJcblx0XHRib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTsgKi9cclxuXHR9XHJcbn1cclxuXHJcbi51aS1zbGlkZXItaG9yaXpvbnRhbCB7XHJcblx0aGVpZ2h0OiAuOGVtO1xyXG5cdC51aS1zbGlkZXItaGFuZGxlIHsgXHJcblx0XHR0b3A6IC0uM2VtOyBcclxuXHRcdG1hcmdpbi1sZWZ0OiAtLjZlbTsgXHJcblx0fVxyXG5cdC51aS1zbGlkZXItcmFuZ2UgeyBcclxuXHRcdHRvcDogMDsgXHJcblx0XHRoZWlnaHQ6IDEwMCU7IFxyXG5cdH1cclxuXHQudWktc2xpZGVyLXJhbmdlLW1pbiB7IGxlZnQ6IDA7IH1cclxuXHQudWktc2xpZGVyLXJhbmdlLW1heCB7IHJpZ2h0OiAwOyB9XHJcbn1cclxuXHJcbi51aS1zbGlkZXItdmVydGljYWwgeyBcclxuXHR3aWR0aDogLjhlbTtcclxuXHRoZWlnaHQ6IDEwMHB4OyBcclxuXHQudWktc2xpZGVyLWhhbmRsZSB7IFxyXG5cdFx0bGVmdDogLS4zZW07IFxyXG5cdFx0bWFyZ2luLWxlZnQ6IDA7IFxyXG5cdFx0bWFyZ2luLWJvdHRvbTogLS42ZW07IFxyXG5cdH1cclxuXHQudWktc2xpZGVyLXJhbmdlIHsgXHJcblx0XHRsZWZ0OiAwOyBcclxuXHRcdHdpZHRoOiAxMDAlOyBcclxuXHR9XHJcblx0LnVpLXNsaWRlci1yYW5nZS1taW4geyBib3R0b206IDA7IH1cclxuXHQudWktc2xpZGVyLXJhbmdlLW1heCB7IHRvcDogMDsgfVxyXG59IiwiLyohXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYVxyXG4gKlxyXG4gKiBqUXVlcnkgVUkgVGFicyAxLjEwLjNcclxuICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9UYWJzI3RoZW1pbmdcclxuICpcclxuICogUG9ydGlvbnMgY29weXJpZ2h0IEFkZHkgT3NtYW5pLCBqUXVlcnkgVUkgJiBUd2l0dGVyLCBJbmMuXHJcbiAqIENyZWF0ZWQgdGhlIExFU1MgdmVyc2lvbiBieSBAZGhhcmFwdmpcclxuICogUmVsZWFzZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG4udWktdGFicyB7IFxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTsgXHQvKiBwb3NpdGlvbjogcmVsYXRpdmUgcHJldmVudHMgSUUgc2Nyb2xsIGJ1ZyAoZWxlbWVudCB3aXRoIHBvc2l0aW9uOiByZWxhdGl2ZSBpbnNpZGUgY29udGFpbmVyIHdpdGggb3ZlcmZsb3c6IGF1dG8gYXBwZWFyIGFzIFwiZml4ZWRcIikgKi9cclxuXHRib3JkZXI6IDA7IFxyXG5cdC51aS1ib3JkZXItcmFkaXVzKDApO1xyXG5cdC51aS10YWJzLW5hdiB7IFxyXG5cdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cdFx0Ym9yZGVyOiBzb2xpZCAjZGRkO1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAwIDAgMXB4IDA7XHJcblx0XHQudWktYm9yZGVyLXJhZGl1cyggMCApO1xyXG5cdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHR9XHJcblx0LnVpLXRhYnMtbmF2IGxpIHsgXHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdG1hcmdpbi1yaWdodDogMnB4O1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogLTFweDtcclxuXHRcdGJvcmRlcjogMDtcclxuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi51aS10YWJzLW5hdiAudWktc3RhdGUtZGVmYXVsdHtcclxuXHRib3JkZXI6IDA7XHJcblx0LnVpLWJveC1zaGFkb3coIG5vbmUgKTtcclxufVxyXG4udWktdGFicyB7XHJcblx0LnVpLXRhYnMtbmF2e1xyXG5cdFx0bGkgYSB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCBAdWktd2hpdGU7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xyXG5cdFx0XHQjdWktYm9yZGVyLXJhZGl1cyA+IC5ib3JkZXIoIDRweCwgNHB4LCAwLCAwICk7XHJcblx0XHRcdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdG91dGxpbmU6IG5vbmU7XHJcblx0XHRcdGNvbG9yOiAjMDA2OUQ2O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0XHQmOmhvdmVye1xyXG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlU21va2U7XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGVTbW9rZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0bGkudWktdGFicy1hY3RpdmUgYXtcclxuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcblx0XHRcdGNvbG9yOiAjNTU1O1xyXG5cdFx0fVxyXG5cdFx0bGkudWktdGFicy1hY3RpdmU6aG92ZXJ7XHJcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdGN1cnNvcjogdGV4dDtcclxuXHRcdH1cclxuXHRcdGxpLnVpLXRhYnMtYWN0aXZlIGEsXHJcblx0XHRsaS51aS1zdGF0ZS1kaXNhYmxlZCBhLFxyXG5cdFx0bGkudWktdGFicy1sb2FkaW5nIGEge1xyXG5cdFx0XHRjdXJzb3I6IHRleHQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdC8qIGZpcnN0IHNlbGVjdG9yIGluIGdyb3VwIHNlZW1zIG9ic29sZXRlLCBidXQgcmVxdWlyZWQgdG8gb3ZlcmNvbWUgYnVnIGluIE9wZXJhIGFwcGx5aW5nIGN1cnNvcjogdGV4dCBvdmVyYWxsIGlmIGRlZmluZWQgZWxzZXdoZXJlLi4uICovXHJcblx0LnVpLXRhYnMtcGFuZWwge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW46IDFlbSAwO1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdFx0LnVpLWJvcmRlci1yYWRpdXMoMCk7XHJcblx0XHRwYWRkaW5nOiAxcHggMDtcclxuXHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0fVxyXG5cdC51aS10YWJzLWhpZGUge1xyXG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQudWktdGFicy1uYXYgbGkge1xyXG5cdFx0ZmlsdGVyOm5vbmU7XHJcblx0fVxyXG59XHJcbiIsIi8qIVxyXG4gKiBqUXVlcnkgVUkgQm9vdHN0cmFwIHYxLjAgQWxwaGFcclxuICpcclxuICogalF1ZXJ5IFVJIFRvb2x0aXAgMS4xMC4zXHJcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20vdG9vbHRpcC9cclxuICpcclxuICogUG9ydGlvbnMgY29weXJpZ2h0IEFkZHkgT3NtYW5pLCBqUXVlcnkgVUkgJiBUd2l0dGVyLCBJbmMuXHJcbiAqIENyZWF0ZWQgdGhlIExFU1MgdmVyc2lvbiBieSBAZGhhcmFwdmpcclxuICogUmVsZWFzZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG4udWktdG9vbHRpcCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Zm9udC1zaXplOiAxMXB4O1xyXG5cdC51aS1vcGFjaXR5KC44MCk7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHZpc2liaWxpdHk6IHZpc2libGU7XHJcblx0ei1pbmRleDogQHVpLXppbmRleC10b29sdGlwO1xyXG5cdG1heC13aWR0aDogMjAwcHg7XHJcblx0YmFja2dyb3VuZDogQHVpLWJsYWNrO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIEB1aS1ibGFjaztcclxuXHRjb2xvcjogQHVpLXdoaXRlO1xyXG5cdHBhZGRpbmc6IDNweCA4cHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHQudWktYm94LXNoYWRvdyhpbnNldCAwIDFweCAwIEB1aS1ibGFjayk7XHJcblx0LnVpLWJvcmRlci1yYWRpdXMoNHB4KTtcclxuXHRib3JkZXItd2lkdGg6IDFweDtcclxuXHJcblx0LmFycm93IHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG5cdFx0Ji5ib3R0b20ge1xyXG5cdFx0XHR0b3A6IDEwMCU7XHJcblx0XHRcdGxlZnQ6IDM4JTtcclxuXHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0Ym9yZGVyLXRvcDo4cHggc29saWQgQHVpLWJsYWNrO1xyXG5cdFx0XHRcdGJvcmRlci1yaWdodDo4cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTo4cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6OHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLnRvcCB7XHJcblx0XHRcdHRvcDogLTUwJTtcclxuXHRcdFx0Ym90dG9tOiAyMnB4O1xyXG5cdFx0XHRsZWZ0OiA0MiU7XHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdGJvcmRlci10b3A6NnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdGJvcmRlci1yaWdodDo2cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTo2cHggc29saWQgQHVpLWJsYWNrO1xyXG5cdFx0XHRcdGJvcmRlci1sZWZ0OjZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5sZWZ0IHtcclxuXHRcdFx0dG9wIDogMjUlO1xyXG5cdFx0XHRsZWZ0OiAtMTUlO1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdFx0Ym90dG9tOi0xNnB4O1xyXG5cdFx0XHQmOmFmdGVye1xyXG5cdFx0XHRcdHdpZHRoOjA7XHJcblx0XHRcdFx0Ym9yZGVyLXRvcDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdGJvcmRlci1yaWdodDogNnB4IHNvbGlkIEB1aS1ibGFjaztcclxuXHRcdFx0XHRib3JkZXItYm90dG9tOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5yaWdodCB7XHJcblx0XHRcdHRvcDogMjYlO1xyXG5cdFx0XHRsZWZ0OiAxMDAlO1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdFx0Ym90dG9tOi0xNnB4O1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogMXB4O1xyXG5cdFx0XHQmOmFmdGVye1xyXG5cdFx0XHRcdHdpZHRoOjA7XHJcblx0XHRcdFx0Ym9yZGVyLXRvcDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRib3JkZXItbGVmdDogNnB4IHNvbGlkIEB1aS1ibGFjaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGNvbnRlbnQgOiBcIiBcIiA7XHJcblx0XHRcdHBvc2l0aW9uIDogYWJzb2x1dGUgO1xyXG5cdFx0XHRoZWlnaHQgOiAwIDtcclxuXHRcdFx0bGVmdDowO1xyXG5cdFx0XHR0b3A6IDA7XHJcblx0XHRcdHdpZHRoOiAwO1xyXG5cdFx0XHRtYXJnaW4tbGVmdCA6IDAgO1xyXG5cdFx0XHRib3R0b20gOiAxMnB4IDtcclxuXHRcdFx0Ym94LXNoYWRvdzogNnB4IDVweCA5cHggLTlweCBAdWktYmxhY2s7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4iLCIvKiFcclxuICogalF1ZXJ5IFVJIEJvb3RzdHJhcCB2MS4wIEFscGhhXHJcbiAqXHJcbiAqIGpRdWVyeSBVSSBQcm9ncmVzc2JhciAxLjEwLjNcclxuICogaHR0cDovL2pxdWVyeXVpLmNvbS90b29sdGlwL1xyXG4gKlxyXG4gKiBQb3J0aW9ucyBjb3B5cmlnaHQgQWRkeSBPc21hbmksIGpRdWVyeSBVSSAmIFR3aXR0ZXIsIEluYy5cclxuICogQ3JlYXRlZCB0aGUgTEVTUyB2ZXJzaW9uIGJ5IEBkaGFyYXB2alxyXG4gKiBSZWxlYXNlZCB1bmRlciBNSVRcclxuICovXHJcbi51aS1wcm9ncmVzc2JhciB7XHJcblx0aGVpZ2h0OjJlbTtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdGJvcmRlcjowcHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHQjdWktZ3JhZGllbnQgPiAudmVydGljYWwoI2Y1ZjVmNSwgI2Y5ZjlmOSk7XHJcblx0LnVpLWJvcmRlci1yYWRpdXMoNHB4KTtcclxuXHQudWktYm94LXNoYWRvdyhpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpKTtcclxuXHRcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdC51aS1wcm9ncmVzc2Jhci12YWx1ZSB7XHJcblx0XHRtYXJnaW46IDBweDtcclxuXHRcdGhlaWdodDoxMDAlO1xyXG5cdFx0Y29sb3I6IEB1aS13aGl0ZTsgLyp0aGlzIGNhbiBiZSByZW1vdmVkIGlmIHVpLXdpZGdldC1oZWFkZXIgaXMgYmx1ZSovXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjNDI4QkNBO1xyXG5cdFx0LnVpLWJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcblx0XHQudWktdHJhbnNpdGlvbiggd2lkdGggMC42cyBlYXNlKTtcclxuXHR9XHJcblx0LnVpLXByb2dyZXNzYmFyLW92ZXJsYXl7XHJcblx0XHQjdWktZ3JhZGllbnQgPiAudmVydGljYWwoIEB1aS1saW5rLWNvbG9yLCBAdWktbGluay1ob3Zlci1jb2xvciApO1x0Ly8gRklYTUUgLSBWZXJpZnkgdGhhdCB0aGlzIG1hdGNoZXMgdGhlIGFjdHVhbCBDU1Mgb3V0Y29tZS5cclxuXHRcdGJhY2tncm91bmQtc2l6ZTogNDBweCA0MHB4O1xyXG5cdFx0LnVpLWFuaW1hdGlvbiggcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTtcclxuXHR9XHRcdFxyXG59XHJcblxyXG4udWktcHJvZ3Jlc3NiYXItaW5kZXRlcm1pbmF0ZSAudWktcHJvZ3Jlc3NiYXItdmFsdWUge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbn0iLCIvKipUb29sYmFyKiovXHJcblxyXG4udWktdG9vbGJhcntcclxuXHRwYWRkaW5nOiA3cHggMTRweDtcclxuXHRtYXJnaW46IDAgMCAxOHB4O1xyXG5cdCN1aS1ncmFkaWVudCA+IC52ZXJ0aWNhbCggQHVpLXdoaXRlLCBAdWktZm9ybS1hY3Rpb25zLWJhY2tncm91bmQgKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKEB1aS1ncmF5LWxpZ2h0LDI1JSk7XHJcblx0LnVpLWJvcmRlci1yYWRpdXMoIDNweCApO1xyXG5cdC51aS1ib3gtc2hhZG93KCBpbnNldCAwIDFweCAwIEB1aS13aGl0ZSApO1xyXG59IiwiLyohXHJcbiAqIGpRdWVyeSBVSSBCb290c3RyYXAgdjEuMCBBbHBoYVxyXG4gKlxyXG4gKiBqUXVlcnkgVUkgRGF0ZXBpY2tlciAxLjEwLjNcclxuICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9EYXRlcGlja2VyI3RoZW1pbmdcclxuICpcclxuICogUG9ydGlvbnMgY29weXJpZ2h0IEFkZHkgT3NtYW5pLCBqUXVlcnkgVUkgJiBUd2l0dGVyLCBJbmMuXHJcbiAqIENyZWF0ZWQgdGhlIExFU1MgdmVyc2lvbiBieSBAZGhhcmFwdmpcclxuICogUmVsZWFzZWQgdW5kZXIgTUlUXHJcbiAqL1xyXG4gLnVpLWRhdGVwaWNrZXIgeyBcclxuIFx0d2lkdGg6IDE3ZW07IFxyXG4gXHRwYWRkaW5nOiAuMmVtIC4yZW0gMDsgXHJcbiBcdGRpc3BsYXk6IG5vbmU7IFxyXG4gXHQudWktZGF0ZXBpY2tlci1oZWFkZXIgeyBcclxuIFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTsgXHJcbiBcdFx0cGFkZGluZzouMmVtIDA7IFxyXG4gXHRcdGJvcmRlcjowO1xyXG4gXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gXHRcdHdpZHRoOiAxMDAlO1xyXG4gXHRcdHBhZGRpbmc6IDRweCAwO1xyXG4gXHRcdGJhY2tncm91bmQtY29sb3I6IEB0YWJsZS1iZy1ob3ZlcjtcclxuIFx0XHRjb2xvcjogQHVpLWdyYXk7XHJcbiBcdH1cclxuIFx0LnVpLWRhdGVwaWNrZXItcHJldixcclxuIFx0LnVpLWRhdGVwaWNrZXItbmV4dCB7IFxyXG4gXHRcdHBvc2l0aW9uOmFic29sdXRlOyBcclxuIFx0XHR0b3A6IDJweDsgXHJcbiBcdFx0d2lkdGg6IDEuOGVtOyBcclxuIFx0XHRoZWlnaHQ6IDEuOGVtOyBcclxuIFx0fVxyXG5cclxuIFx0LnVpLWRhdGVwaWNrZXItcHJldi1ob3ZlcixcclxuIFx0LnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7IFxyXG4gXHRcdC8qdG9wOiAxcHg7Ki8gXHJcbiBcdH1cclxuIFx0LnVpLWRhdGVwaWNrZXItcHJldiB7IGxlZnQ6MnB4OyB9XHJcbiBcdC51aS1kYXRlcGlja2VyLW5leHQgeyByaWdodDoycHg7IH1cclxuXHJcbiAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIHsgLypsZWZ0OjFweDsqLyB9XHJcbi51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIgeyAvKnJpZ2h0OjFweDsqLyB9XHJcblxyXG4udWktZGF0ZXBpY2tlci1wcmV2IHNwYW4sIFxyXG4udWktZGF0ZXBpY2tlci1uZXh0IHNwYW4geyBcclxuXHRkaXNwbGF5OiBibG9jazsgXHJcblx0cG9zaXRpb246IGFic29sdXRlOyBcclxuXHRsZWZ0OiA1MCU7IFxyXG5cdG1hcmdpbi1sZWZ0OiAtOHB4OyBcclxuXHR0b3A6IDUwJTsgXHJcblx0bWFyZ2luLXRvcDogLThweDsgIFxyXG59XHJcbi51aS1kYXRlcGlja2VyLXRpdGxlIHtcclxuXHRtYXJnaW46IDAgMi4zZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuOGVtO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRzZWxlY3QgeyBcclxuXHRcdGZvbnQtc2l6ZToxZW07IFxyXG5cdFx0bWFyZ2luOjFweCAwOyBcclxuXHR9XHJcbn1cclxuc2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgteWVhciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuc2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgsIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIge1xyXG5cdHdpZHRoOiA0OSU7XHJcbn1cclxudGFibGUge1xyXG5cdHdpZHRoOiAxMDAlOyBcclxuXHRmb250LXNpemU6IDFlbTsgXHJcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgXHJcblx0bWFyZ2luOjAgMCAuNGVtOyBcclxufVxyXG50aCB7IFxyXG5cdHBhZGRpbmc6IC43ZW0gLjNlbTsgXHJcblx0dGV4dC1hbGlnbjogY2VudGVyOyBcclxuXHRmb250LXdlaWdodDogYm9sZDsgXHJcblx0Ym9yZGVyOiAwOyAgXHJcbn1cclxudGQge1xyXG5cdGJvcmRlcjogMDsgXHJcblx0cGFkZGluZzogMXB4OyBcclxuXHRzcGFuLCBhIHsgXHJcblx0XHRkaXNwbGF5OiBibG9jazsgXHJcblx0XHRwYWRkaW5nOiAuMmVtOyBcclxuXHRcdHRleHQtYWxpZ246IHJpZ2h0OyBcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXHJcblx0fVxyXG59XHJcbi51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgeyBcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lOyBcclxuXHRtYXJnaW46IC43ZW0gMCAwIDA7IFxyXG5cdHBhZGRpbmc6MCAuMmVtOyBcclxuXHRib3JkZXItbGVmdDogMDsgXHJcblx0Ym9yZGVyLXJpZ2h0OiAwOyBcclxuXHRib3JkZXItYm90dG9tOiAwOyBcclxuXHRidXR0b24geyBcclxuXHRcdGZsb2F0OiByaWdodDsgXHJcblx0XHRtYXJnaW46IC41ZW0gLjJlbSAuNGVtOyBcclxuXHRcdGN1cnNvcjogcG9pbnRlcjsgXHJcblx0XHRwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbSAuNmVtOyBcclxuXHRcdHdpZHRoOmF1dG87IFxyXG5cdFx0b3ZlcmZsb3c6dmlzaWJsZTtcclxuXHRcdC51aS1kYXRlcGlja2VyLWN1cnJlbnQge1xyXG5cdFx0XHRmbG9hdDpsZWZ0OyBcclxuXHRcdH1cclxuXHR9XHJcbn1cclxufVxyXG4vKiB3aXRoIG11bHRpcGxlIGNhbGVuZGFycyAqL1xyXG4udWktZGF0ZXBpY2tlci51aS1kYXRlcGlja2VyLW11bHRpIHsgd2lkdGg6YXV0bzsgfVxyXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB7IGZsb2F0OmxlZnQ7IH1cclxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAgdGFibGUgeyBcclxuXHR3aWR0aDo5NSU7IFxyXG5cdG1hcmdpbjowIGF1dG8gLjRlbTsgXHJcbn1cclxuLnVpLWRhdGVwaWNrZXItbXVsdGktMiAudWktZGF0ZXBpY2tlci1ncm91cCB7IHdpZHRoOjUwJTsgfVxyXG4udWktZGF0ZXBpY2tlci1tdWx0aS0zIC51aS1kYXRlcGlja2VyLWdyb3VwIHsgd2lkdGg6MzMuMyU7IH1cclxuLnVpLWRhdGVwaWNrZXItbXVsdGktNCAudWktZGF0ZXBpY2tlci1ncm91cCB7IHdpZHRoOjI1JTsgfVxyXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlciB7IGJvcmRlci1sZWZ0LXdpZHRoOjA7IH1cclxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7IGJvcmRlci1sZWZ0LXdpZHRoOjA7IH1cclxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7IGNsZWFyOmxlZnQ7IH1cclxuLnVpLWRhdGVwaWNrZXItcm93LWJyZWFrIHsgXHJcblx0Y2xlYXI6Ym90aDsgXHJcblx0d2lkdGg6MTAwJTsgXHJcblx0Zm9udC1zaXplOjBlbTsgXHJcbn1cclxuXHJcbi8qIFJUTCBzdXBwb3J0ICovXHJcbi51aS1kYXRlcGlja2VyLXJ0bCB7XHJcblx0ZGlyZWN0aW9uOiBydGw7XHJcblx0LnVpLWRhdGVwaWNrZXItcHJldiB7IFxyXG5cdFx0cmlnaHQ6IDJweDsgXHJcblx0XHRsZWZ0OiBhdXRvO1xyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdHJpZ2h0OiAxcHg7IFxyXG5cdFx0XHRsZWZ0OiBhdXRvOyBcclxuXHRcdH1cclxuXHR9XHJcblx0LnVpLWRhdGVwaWNrZXItbmV4dCB7IFxyXG5cdFx0bGVmdDogMnB4OyBcclxuXHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGxlZnQ6IDFweDsgXHJcblx0XHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcclxuXHRcdGNsZWFyOnJpZ2h0OyBcclxuXHRcdGJ1dHRvbiB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHQudWktZGF0ZXBpY2tlci1jdXJyZW50IHtcclxuXHRcdFx0XHRmbG9hdDpyaWdodDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQudWktZGF0ZXBpY2tlci1ncm91cCB7XHJcblx0XHRmbG9hdDpyaWdodDtcclxuXHR9XHJcblx0LnVpLWRhdGVwaWNrZXItZ3JvdXAtbGFzdCAudWktZGF0ZXBpY2tlci1oZWFkZXIgeyBcclxuXHRcdGJvcmRlci1yaWdodC13aWR0aDowOyBcclxuXHRcdGJvcmRlci1sZWZ0LXdpZHRoOjFweDsgXHJcblx0fVxyXG5cdC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIgeyBcclxuXHRcdGJvcmRlci1yaWdodC13aWR0aDowOyBcclxuXHRcdGJvcmRlci1sZWZ0LXdpZHRoOjFweDsgXHJcblx0fVxyXG59XHJcblxyXG4vKiBJRTYgSUZSQU1FIEZJWCAodGFrZW4gZnJvbSBkYXRlcGlja2VyIDEuNS4zICovXHJcbi51aS1kYXRlcGlja2VyLWNvdmVyIHtcclxuXHRkaXNwbGF5OiBub25lOyAvKnNvcnJ5IGZvciBJRTUqL1xyXG5cdC8vZGlzcGxheS8qKi86IGJsb2NrOyAvKnNvcnJ5IGZvciBJRTUqL1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTsgLyptdXN0IGhhdmUqL1xyXG5cdHotaW5kZXg6IC0xOyAvKm11c3QgaGF2ZSovXHJcblx0ZmlsdGVyOiBtYXNrKCk7IC8qbXVzdCBoYXZlKi9cclxuXHR0b3A6IC00cHg7IC8qbXVzdCBoYXZlKi9cclxuXHRsZWZ0OiAtNHB4OyAvKm11c3QgaGF2ZSovXHJcblx0d2lkdGg6IDIwMHB4OyAvKm11c3QgaGF2ZSovXHJcblx0aGVpZ2h0OiAyMDBweDsgLyptdXN0IGhhdmUqL1xyXG59XHJcblxyXG4udWktZGF0ZXBpY2tlciB0aHtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRjb2xvcjogQHVpLWdyYXk7XHJcbn1cclxuXHJcbi51aS1kYXRlcGlja2VyLXRvZGF5IHtcclxuXHRhe1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogQHVpLWxpbmstY29sb3I7XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRwYWRkaW5nOiAwIDRweDtcclxuXHRcdG1hcmdpbi1ib3R0b206MHB4O1xyXG5cdFx0Jjpob3ZlcntcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogQHVpLWdyYXk7XHJcblx0XHRcdGNvbG9yOiBAdWktd2hpdGU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLnVpLWRhdGVwaWNrZXIgdGQge1xyXG5cdGF7XHJcblx0XHRtYXJnaW4tYm90dG9tOjBweDtcclxuXHRcdGJvcmRlcjowcHg7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVye1xyXG5cdFx0Y29sb3I6QHVpLXdoaXRlO1xyXG5cdH1cclxuXHJcblx0LnVpLXN0YXRlLWRlZmF1bHQge1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdFx0YmFja2dyb3VuZDpub25lO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdHBhZGRpbmc6IDVweDtcclxuXHRcdGNvbG9yOiBAdWktZ3JheTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdGZpbHRlcjogbm9uZTtcclxuXHR9XHJcblx0XHJcblx0LnVpLXN0YXRlLWhpZ2hsaWdodHtcclxuXHRcdGNvbG9yOiBAdWktd2hpdGU7XHJcblx0XHRiYWNrZ3JvdW5kOiBmYWRlKEBicmFuZC1wcmltYXJ5LCA4MCUpO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAjNDZiOGRhO1xyXG5cdFx0dGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcblx0XHRib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuXHRcdC51aS1ib3JkZXItcmFkaXVzKDBweCk7XHJcblx0fVxyXG5cdFxyXG5cdC51aS1zdGF0ZS1hY3RpdmUge1xyXG5cdFx0Y29sb3I6QGdyYXktZGFyaztcclxuXHRcdGJhY2tncm91bmQ6QHVpLWdyYXktbGlnaHRlcjtcclxuXHRcdGJvcmRlci1jb2xvcjogI2FkYWRhZDtcclxuXHRcdG1hcmdpbi1ib3R0b206MHB4O1xyXG5cdFx0Zm9udC1zaXplOm5vcm1hbDtcclxuXHRcdHRleHQtc2hhZG93OiAwcHg7XHJcblx0XHRib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuXHRcdC51aS1ib3JkZXItcmFkaXVzKCAwcHggKTtcclxuXHR9XHJcblx0LnVpLXN0YXRlLWhvdmVye1xyXG5cdFx0Y29sb3I6QHVpLXdoaXRlO1xyXG5cdFx0YmFja2dyb3VuZDpAbGFiZWwtcHJpbWFyeS1iZztcclxuXHRcdHRleHQtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAjMzU3ZWJkO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcblx0XHQudWktYm9yZGVyLXJhZGl1cyggMHB4ICk7XHJcblx0fVxyXG59IiwiXHJcbi8qKipXaWptbyBUaGVtaW5nKiovXHJcblxyXG5kaXYud2lqbW8td2lqbWVudXtcclxuXHRwYWRkaW5nOjAgMjBweDtcclxuXHQjdWktZ3JhZGllbnQgPiAudmVydGljYWwgKCAjMzMzMzMzLCAjMjIyMjIyICk7ICBcclxuXHQudWktYm94LXNoYWRvdyggMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yNSksIGluc2V0IDAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4xKSApO1xyXG59XHJcblxyXG4ud2lqbW8td2lqbWVudSB7XHJcblx0LnVpLXN0YXRlLWRlZmF1bHQge1xyXG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRcdGNvbG9yOiBAdWktZ3JheS1saWdodDtcclxuXHR9XHJcblxyXG5cdC51aS1zdGF0ZS1kZWZhdWx0IC53aWptby13aWptZW51LXRleHQge1xyXG5cdFx0Y29sb3I6IEB1aS1ncmF5LWxpZ2h0O1xyXG5cdH1cclxuXHJcblx0LnVpLXN0YXRlLWhvdmVye1xyXG5cdFx0YmFja2dyb3VuZDogIzQ0NDtcclxuXHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XHJcblx0XHQud2lqbW8td2lqbWVudS10ZXh0e1xyXG5cdFx0XHRjb2xvcjpAdWktd2hpdGU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5kaXYud2lqbW8td2lqbWVudSAudWktd2lkZ2V0LWhlYWRlciBoM3tcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLXRvcDoxcHg7XHJcblx0cGFkZGluZzowO1xyXG59XHJcblxyXG4ud2lqbW8td2lqbWVudSB7XHJcblx0aDMgYXtcclxuXHRcdGNvbG9yOiBAdWktd2hpdGU7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDIwMDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG5cdFx0bWFyZ2luLXRvcDoxcHg7XHJcblx0XHRwYWRkaW5nOiA4cHggMjBweCAxMnB4O1xyXG5cdFx0Jjpob3ZlcntcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcclxuXHRcdFx0Y29sb3I6IEB1aS13aGl0ZTtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQudWktd2lkZ2V0LWhlYWRlcntcclxuXHRcdGJvcmRlcjowcHg7XHJcblx0fVxyXG5cdC53aWptby13aWptZW51LXBhcmVudCAud2lqbW8td2lqbWVudS1jaGlsZCB7XHJcblx0XHRwYWRkaW5nOiAwLjNlbSAwO1xyXG5cdH1cclxufVxyXG5cclxuZGl2Lndpam1vLXdpam1lbnUgLndpam1vLXdpam1lbnUtaXRlbSB7XHJcblx0Lndpam1vLXdpam1lbnUtY2hpbGR7XHJcblx0XHRiYWNrZ3JvdW5kOiAjMzMzO1xyXG5cdFx0Ym9yZGVyOjA7XHJcblx0XHRtYXJnaW46MDtcclxuXHRcdHBhZGRpbmc6IDZweCAwO1xyXG5cdFx0d2lkdGg6MTYwcHg7XHJcblx0XHQjdWktYm9yZGVyLXJhZGl1cyA+IC5ib3JkZXIoIDAsIDAsIDZweCwgNnB4ICk7XHJcblx0XHQudWktYm94LXNoYWRvdyggMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKSApO1xyXG5cdH1cclxuXHRtYXJnaW46MDtcclxuXHRib3JkZXI6MDtcclxufVxyXG5cclxuLndpam1vLXdpam1lbnUgYS53aWptby13aWptZW51LWxpbmt7XHJcblx0bWFyZ2luOjA7XHJcblx0bGluZS1oZWlnaHQ6IDE5cHg7XHJcblx0cGFkZGluZzogMTBweCAxMHB4IDExcHg7XHJcblx0Ym9yZGVyOjA7XHJcblx0LnVpLWJvcmRlci1yYWRpdXMoIDAgKTtcclxufVxyXG5cclxuZGl2Lndpam1vLXdpam1lbnUgLndpam1vLXdpam1lbnUtY2hpbGQge1xyXG5cdC53aWptby13aWptZW51LWxpbmt7XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0ZmxvYXQ6bm9uZTtcclxuXHRcdHBhZGRpbmc6IDRweCAxNXB4O1xyXG5cdFx0d2lkdGg6YXV0bztcclxuXHR9XHJcblxyXG5cdC53aWptby13aWptZW51LWNoaWxkIC53aWptby13aWptZW51LXRleHQge1xyXG5cdFx0ZmxvYXQ6bm9uZTtcclxuXHR9XHJcbn1cclxuLndpam1vLXdpam1lbnUgLndpam1vLXdpam1lbnUtaXRlbSB7XHJcblx0Lndpam1vLXdpam1lbnUtY2hpbGQgLnVpLXN0YXRlLWhvdmVyIHtcclxuXHRcdGJhY2tncm91bmQ6ICMxOTE5MTk7XHJcblx0fVxyXG5cclxuXHQud2lqbW8td2lqbWVudS1zZXBhcmF0b3J7XHJcblx0XHRwYWRkaW5nOiA1cHggMDtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xyXG5cdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICM0NDQ7XHJcblx0XHRib3JkZXItYm90dG9tOjA7XHJcblx0XHRib3JkZXItbGVmdDowO1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OjA7XHJcblx0fVxyXG5cdGlucHV0IHtcclxuXHRcdC50cmFuc2l0aW9uKCBub25lIDBzIGVhc2UgMHMgKTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICMxMTExMTE7XHJcblx0XHQudWktYm9yZGVyLXJhZGl1cyggNHB4ICk7XHJcblx0XHQudWktYm94LXNoYWRvdyggMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKSBpbnNldCwgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpICk7XHJcblx0XHRjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcclxuXHRcdGZvbnQtZmFtaWx5OiBzYW5zRm9udEZhbWlseTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdFx0bWFyZ2luOiA1cHggMTBweCAwIDEwcHg7XHJcblx0XHRwYWRkaW5nOiA0cHggOXB4O1xyXG5cdFx0d2lkdGg6MTAwcHg7XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG5cdFx0XHRjb2xvcjogQHVpLXdoaXRlO1xyXG5cdFx0fVxyXG5cdFx0Jjpmb2N1cyB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IEB1aS13aGl0ZTtcclxuXHRcdFx0Ym9yZGVyOiAwIG5vbmU7XHJcblx0XHRcdC51aS1ib3gtc2hhZG93KCAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4xNSkgKTtcclxuXHRcdFx0Y29sb3I6IEB1aS1ncmF5LWRhcms7XHJcblx0XHRcdG91dGxpbmU6IDAgbm9uZTtcclxuXHRcdFx0cGFkZGluZzogNXB4IDEwcHg7XHJcblx0XHRcdHRleHQtc2hhZG93OiAwIDFweCAwIEB1aS13aGl0ZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi53aWptby13aWptZW51IC51aS1zdGF0ZS1kZWZhdWx0LCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kZWZhdWx0IHtcclxuXHR0ZXh0LXNoYWRvdzpub25lO1xyXG59XHJcblxyXG4ud2lqbW8td2lqbWVudSAudWktc3RhdGUtZGVmYXVsdHtcclxuXHQudWktYm94LXNoYWRvdyggbm9uZSApO1xyXG5cdGNvbG9yOkB1aS1ncmF5LWxpZ2h0O1xyXG5cdGZpbHRlcjogbm9uZTtcclxufVxyXG5cclxuXHJcbiIsIi8qc3R5bGVzIGZvciBqcXVlcnkgdWkgZGF0ZXJhbmdlcGlja2VyIHBsdWdpbiAqL1xyXG5cclxuLnVpLWRhdGVyYW5nZXBpY2tlcmNvbnRhaW4ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiA5OTk7XHJcblx0LnVpLWRhdGVyYW5nZXBpY2tlciB7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdHBhZGRpbmc6IDVweCAhaW1wb3J0YW50O1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRkaXNwbGF5OiBpbmxpbmU7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHRjbGVhcjogbGVmdDtcclxuXHR9XHJcbn1cclxuXHJcbi51aS1kYXRlcmFuZ2VwaWNrZXIge1xyXG5cdHVsLCAucmFuZ2VzLCAucmFuZ2Utc3RhcnQsIC5yYW5nZS1lbmQge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHQgLnJhbmdlcyB7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHBhZGRpbmc6IDVweCA1cHggNDBweCAwO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0fVxyXG5cdC5yYW5nZS1zdGFydCwgLnJhbmdlLWVuZCB7XHJcblx0XHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdH1cclxuXHRidXR0b24uYnRuRG9uZSB7XHJcblx0XHRjbGVhcjpib3RoO1xyXG5cdFx0Y3Vyc29yOnBvaW50ZXI7XHJcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdGJvdHRvbTowO1xyXG5cdFx0cmlnaHQ6MDtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFxyXG5cdFx0I3VpLWdyYWRpZW50ID4gLnZlcnRpY2FsLXRocmVlLWNvbG9ycyggQHVpLXdoaXRlLCBAdWktd2hpdGUsIDI1JSwgQHVpLWdyYXktbGlnaHRlciApO1xyXG5cdFx0XHJcblx0XHRwYWRkaW5nOiA1cHggMTRweCA2cHg7XHJcblx0XHRtYXJnaW46IDVweDtcclxuXHRcdHRleHQtc2hhZG93OiAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcclxuXHRcdGNvbG9yOiAjMzMzO1xyXG5cdFx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcblx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAjYmJiO1xyXG5cdFx0XHJcblx0XHQudWktYm94LXNoYWRvdyggaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMiksIDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDUpICk7XHJcblx0XHQudWktdHJhbnNpdGlvbiggMC4xcyBsaW5lYXIgYmFja2dyb3VuZC1pbWFnZSApO1xyXG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0fVxyXG5cdHVsIHtcclxuXHRcdHdpZHRoOiAxNy42ZW07XHJcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdH1cclxuXHRsaSB7XHJcblx0XHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdFx0cGFkZGluZzogMXB4O1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0bWFyZ2luOiAxcHggMDtcclxuXHR9XHJcblx0LnVpLXdpZGdldC1oZWFkZXJ7XHJcblx0XHRib3JkZXI6MXB4IHNvbGlkICNjY2M7XHJcblx0fVxyXG5cclxuXHQudWktc3RhdGUtaG92ZXJ7XHJcblx0XHRiYWNrZ3JvdW5kOiBAdWktYmx1ZS1kYXJrO1xyXG5cdFx0Y29sb3I6IEB1aS13aGl0ZTtcclxuXHRcdGF7XHJcblx0XHRcdGNvbG9yOiBAdWktd2hpdGU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQudWktd2lkZ2V0e1xyXG5cdFx0cGFkZGluZy1yaWdodDo0cHg7XHJcblx0fVxyXG5cdGxpLnByZXNldF8wIHtcclxuXHRcdG1hcmdpbi10b3A6IDEuNWVtICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cdC51aS13aWRnZXQtY29udGVudCBhIHtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0Zm9udC13ZWlnaHQ6bm9ybWFsO1xyXG5cdH1cclxuXHRsaSB7XHJcblx0XHRhIHtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRcdFx0bWFyZ2luOiAuM2VtIC41ZW07XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0fVxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdGZsb2F0OiByaWdodDtcclxuXHRcdFx0bWFyZ2luOiAuM2VtIC4yZW07XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQudGl0bGUtc3RhcnQsIC50aXRsZS1lbmQge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW46IDAgMCAuMmVtO1xyXG5cdFx0Zm9udC1zaXplOiAxZW07XHJcblx0XHRwYWRkaW5nOiAwIDRweCAycHg7XHJcblx0fVxyXG5cdC51aS1kYXRlcGlja2VyLWlubGluZSB7XHJcblx0XHRmb250LXNpemU6IDFlbTtcclxuXHR9XHJcbn1cclxuXHJcbi51aS1kYXRlcmFuZ2VwaWNrZXItYXJyb3dzIHtcclxuXHRwYWRkaW5nOiAycHg7XHJcblx0d2lkdGg6IDIwNHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRpbnB1dC51aS1yYW5nZXBpY2tlci1pbnB1dCB7XHJcblx0XHR3aWR0aDogMTU4cHg7XHJcblx0XHRtYXJnaW46IDAgMnB4IDAgMjBweDtcclxuXHRcdHBhZGRpbmc6IDJweDtcclxuXHRcdGhlaWdodDogMS4xZW07XHJcblx0fVxyXG5cdC51aS1kYXRlcmFuZ2VwaWNrZXItcHJldiwgLnVpLWRhdGVyYW5nZXBpY2tlci1uZXh0IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMnB4OyBcclxuXHRcdHBhZGRpbmc6IDFweDtcclxuXHR9XHJcblx0LnVpLWRhdGVyYW5nZXBpY2tlci1wcmV2IHtcclxuXHRcdGxlZnQ6IDJweDtcclxuXHR9XHJcblx0LnVpLWRhdGVyYW5nZXBpY2tlci1uZXh0IHtcclxuXHRcdHJpZ2h0OiAycHg7XHJcblx0fVxyXG5cdC51aS1kYXRlcmFuZ2VwaWNrZXItcHJldjpob3ZlciwgLnVpLWRhdGVyYW5nZXBpY2tlci1uZXh0OmhvdmVyLCAudWktZGF0ZXJhbmdlcGlja2VyLXByZXY6Zm9jdXMsIC51aS1kYXRlcmFuZ2VwaWNrZXItbmV4dDpmb2N1cyB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdH1cclxufVxyXG4iLCIvKmN1c3RvbSB1cGxvYWQgZWxlbWVudHMqL1xyXG4uY3VzdG9tZmlsZS1pbnB1dCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IC05OTllbTtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IDA7XHJcblx0LnVpLW9wYWNpdHkoMCk7XHJcbn1cclxuXHJcbi5jdXN0b21maWxlIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0d2lkdGg6IGF1dG87XHJcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uY3VzdG9tZmlsZS5pbnB1dC1hcHBlbmQgLmN1c3RvbWZpbGUtZmVlZGJhY2sgeyBcclxuXHRib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcclxuXHRwYWRkaW5nLWxlZnQ6MjVweDtcclxufVxyXG4uY3VzdG9tZmlsZS5pbnB1dC1wcmVwZW5kIC5jdXN0b21maWxlLWZlZWRiYWNrIHtcclxuXHRib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcclxufVxyXG4uY3VzdG9tZmlsZS5pbnB1dC1wcmVwZW5kIC5hZGQtb24sIC5jdXN0b21maWxlLmlucHV0LWFwcGVuZCAuYWRkLW9uIHtcclxuXHRjb2xvcjojMzMzO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0I3VpLWdyYWRpZW50ID4gLnZlcnRpY2FsLXRocmVlLWNvbG9ycyggQHVpLXdoaXRlLCBAdWktd2hpdGUsIDI1JSwgQHVpLWdyYXktbGlnaHRlciApO1xyXG59XHJcbi5jdXN0b21maWxlLWRpc2FibGVkIHtcclxuXHRvcGFjaXR5OiAuNTtcclxuXHRmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKG9wYWNpdHk9MCk7XHJcblx0Ly8udWktb3BhY2l0eSguNTApO1xyXG5cdGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLmN1c3RvbWZpbGUtZmVlZGJhY2sge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICNDQ0NDQ0M7XHJcblx0Y29sb3I6IEBncmF5O1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250LXNpemU6IDEzcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE4cHg7XHJcblx0cGFkZGluZzogNHB4OyBcclxuXHQudWktdHJhbnNpdGlvbiggYm9yZGVyIGxpbmVhciAwLjJzLCBib3gtc2hhZG93IGxpbmVhciAwLjJzICk7XHJcblx0LnVpLWJveC1zaGFkb3coIGluc2V0IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSkgKTtcclxufVxyXG4vKiBJRTcgaGFjayAqL1xyXG4qK2h0bWwgLmN1c3RvbWZpbGUtZmVlZGJhY2sge1xyXG5cdG1hcmdpbi10b3A6IDFweDtcclxufVxyXG4vKiBFTyBIYWNrICovXHJcbi5jdXN0b21maWxlLWZlZWRiYWNrLXBvcHVsYXRlZCB7XHJcblx0cGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cdGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbi1nZW5lcmljLmdpZikgNXB4IGNlbnRlciBuby1yZXBlYXQ7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHQtby10ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uY3VzdG9tZmlsZS1idXR0b24ge1xyXG5cdC8qIElFNyBhbmQgYmVsbG93IGhhY2sqL1xyXG5cdCptYXJnaW4tdG9wOiAtMXB4O1xyXG5cdC8qIEVPIEhhY2sgKi9cclxufVxyXG4uY3VzdG9tZmlsZTpob3ZlciAuY3VzdG9tZmlsZS1idXR0b24sIC5jdXN0b21maWxlLWZvY3VzIC5jdXN0b21maWxlLWJ1dHRvbiAgeyBcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNXB4O1xyXG5cdGNvbG9yOiAjMzMzO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG4uY3VzdG9tZmlsZS1mb2N1cyAuY3VzdG9tZmlsZS1idXR0b24ge31cclxuXHJcblxyXG4vKmZpbGUgdHlwZSBpY29ucyovXHJcbi5jdXN0b21maWxlLWV4dC1qcGcsIC5jdXN0b21maWxlLWV4dC1naWYsIC5jdXN0b21maWxlLWV4dC1wbmcsIC5jdXN0b21maWxlLWV4dC1qcGVnLCAuY3VzdG9tZmlsZS1leHQtYm1wIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24taW1hZ2UuZ2lmKTtcclxufVxyXG4uY3VzdG9tZmlsZS1leHQtbXAzLCAuY3VzdG9tZmlsZS1leHQtbXA0LCAuY3VzdG9tZmlsZS1leHQtbW92LCAuY3VzdG9tZmlsZS1leHQtc3dmLCAuY3VzdG9tZmlsZS1leHQtd2F2LCAuY3VzdG9tZmlsZS1leHQtbTR2IHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tbWVkaWEuZ2lmKTtcclxufVxyXG4uY3VzdG9tZmlsZS1leHQtemlwLCAuY3VzdG9tZmlsZS1leHQtdGFyLCAuY3VzdG9tZmlsZS1leHQtc2l0IHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24temlwLmdpZik7XHJcbn1cclxuXHJcbi8qKlxyXG4qIGZpeCBidWcgcG9zaXRpb24gYnV0dG9uIGN1c3RvbWZpbGUuIE1vdmVkIGZyb20gZG9jcy5jc3NcclxuKi9cclxuLmlucHV0LWFwcGVuZC5jdXN0b21maWxlLCAuaW5wdXQtcHJlcGVuZCB7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG59XHJcbi5pbnB1dC1hcHBlbmQuY3VzdG9tZmlsZSAuYWRkLW9ue1xyXG4gICAgaGVpZ2h0OjIwcHg7XHJcbiAgICBmb250LXNpemU6MTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OjE4cHg7XHJcbiAgICBtaW4td2lkdGg6IDcwcHg7XHJcbn1cclxuIiwiLyoqXHJcbiogTGVzcydkIHZlcnNpb24gb2YgRm9udCBBd2Vzb21lIGluIGpRdWVyeSBVSVxyXG4qIEBhdXRob3IgR2VyaXRzIEF1cmVsaWVuLCBWaWpheSBEaGFyYXBcclxuKlxyXG4qKi9cclxuXHJcbi51aS1idXR0b24taWNvbi1wcmltYXJ5LnVpLWljb25bY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLFxyXG4udWktYnV0dG9uLWljb24tcHJpbWFyeS51aS1pY29uW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsXHJcbi51aS1idXR0b24taWNvbi1zZWNvbmRhcnkudWktaWNvbltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsXHJcbi51aS1idXR0b24taWNvbi1zZWNvbmRhcnkudWktaWNvbltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIG1hcmdpbi1sZWZ0OiA3cHghaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcclxuICAgIGNvbG9yOmluaGVyaXQ7XHJcbn1cclxuXHJcbi8qICoqXHJcbiogSWYgeW91IHVzZSBcIkZvbnQgYXdlc29tZVwiIGlzIGRpc2FibGUgVUkgaWNvbnMgaW4gZWxlbWVudFxyXG4qKiAqL1xyXG4udWktc3RhdGUtZGVmYXVsdCAudWktaWNvbltjbGFzcyo9XCIgaWNvbi1cIl17XHJcbiAgICAvKiBSZXNldCBiYWNrZ3JvdW5kIHdpdGggZm9udCBBd2Vzb21lICovXHJcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XHJcbiAgICBtYXJnaW4tbGVmdDotMTJweDsgLypmaXggZm9yIG1hcmdpbiBpc3N1ZSB3aXRoIGZvbnQgYXdlc29tZSBidXR0b25zKi9cclxufVxyXG5cclxuLyogSWYgeW91IGRvIG5vdCB1c2UgdWktaWNvbiB1bmNvbW1lbnQgdGhlIGxpbmVzICovXHJcbi8qXHJcbi51aS1idXR0b24gLnVpLWJ1dHRvbi10ZXh0e1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzo1cHg7XHJcbn1cclxuXHJcbi51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkgLnVpLWJ1dHRvbi1pY29uLXByaW1hcnl7XHJcbiAgICBmbG9hdDpub25lO1xyXG59Ki8iXSwiZmlsZSI6ImpxdWVyeS11aS5jc3MifQ== */
