.half {
  float: left;
  width: 50%; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1300px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1300px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1300px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1300px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1301px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1301px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1301px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1301px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1300px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1301px) {
  .hidden-lg {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

h1, h2, h3, h4, .kemail [class^=button] {
  font-family: "Reader", Helvetica, Arial, sans-serif;
  font-weight: 500;
  line-height: 1;
  margin: 0 0 0.5em;
  text-transform: uppercase; }
  h1 strong, h2 strong, h3 strong, h4 strong, .kemail [class^=button] strong {
    color: #ffaf11;
    font-weight: inherit; }

h1 {
  font-size: 2.125rem; }
  @media all and (max-width: 1300px) {
    h1 {
      font-size: 2.125rem; } }
  @media all and (max-width: 991px) {
    h1 {
      font-size: 2.125rem; } }
  @media all and (max-width: 767px) {
    h1 {
      font-size: 2.125rem; } }

h2 {
  font-size: 1.5625rem; }
  @media all and (max-width: 1300px) {
    h2 {
      font-size: 1.5625rem; } }
  @media all and (max-width: 991px) {
    h2 {
      font-size: 1.5625rem; } }
  @media all and (max-width: 767px) {
    h2 {
      font-size: 1.5625rem; } }

h3 {
  letter-spacing: 0.1em;
  font-size: 1.25rem; }
  @media all and (max-width: 1300px) {
    h3 {
      font-size: 1.25rem; } }
  @media all and (max-width: 991px) {
    h3 {
      font-size: 1.25rem; } }
  @media all and (max-width: 767px) {
    h3 {
      font-size: 1.25rem; } }

h4 {
  text-transform: none;
  font-family: "Reader", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-size: 1rem; }
  @media all and (max-width: 1300px) {
    h4 {
      font-size: 1rem; } }
  @media all and (max-width: 991px) {
    h4 {
      font-size: 1rem; } }
  @media all and (max-width: 767px) {
    h4 {
      font-size: 1rem; } }

body {
  font-family: "Reader", Helvetica, Arial, sans-serif;
  font-size: 1rem; }
  @media all and (max-width: 1300px) {
    body {
      font-size: 1rem; } }
  @media all and (max-width: 991px) {
    body {
      font-size: 1rem; } }
  @media all and (max-width: 767px) {
    body {
      font-size: 1rem; } }

ul:not([class]) {
  padding: 0;
  list-style-type: none; }
  ul:not([class]) li {
    position: relative;
    padding-left: 30px; }
    ul:not([class]) li:before {
      position: absolute;
      top: calc(1/2 * 1.4em);
      left: 0;
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
      content: ' ';
      display: block;
      width: 7px;
      height: 7px;
      background-color: #ffaf11; }
    ul:not([class]) li + li {
      margin-top: 10px; }

ol:not([class]) {
  padding: 0;
  list-style-type: none; }
  ol:not([class]) li {
    position: relative;
    padding-left: 30px;
    counter-increment: list-counter; }
    ol:not([class]) li h3 {
      margin-bottom: 0; }
    ol:not([class]) li:before {
      position: absolute;
      top: 1px;
      left: 0;
      content: counter(list-counter);
      font-family: "Reader", Helvetica, Arial, sans-serif;
      font-weight: 500;
      line-height: 1;
      margin: 0 0 0.5em;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: #ffaf11;
      font-size: 1.25rem; }
      @media all and (max-width: 1300px) {
        ol:not([class]) li:before {
          font-size: 1.25rem; } }
      @media all and (max-width: 991px) {
        ol:not([class]) li:before {
          font-size: 1.25rem; } }
      @media all and (max-width: 767px) {
        ol:not([class]) li:before {
          font-size: 1.25rem; } }

* {
  -webkit-font-smoothing: antialiased; }

html {
  font-size: 100%; }

body {
  line-height: 1.4;
  color: #1a1a1a;
  font-family: "Reader", Helvetica, Arial, sans-serif; }
  body .inverted-colors {
    color: #fff; }

p {
  margin-top: 0;
  margin-bottom: 1em; }

a:not([class]) {
  color: #ffaf11;
  text-decoration: underline;
  font-style: italic; }
  a:not([class]):hover {
    color: #db9623; }

em {
  font-style: italic; }

strong {
  font-weight: 700; }

sup {
  top: -0.2em !important; }

.kemail {
  /* Items box */ }
  .kemail [class^=button] {
    display: inline-block;
    vertical-align: middle;
    outline: none;
    text-decoration: none;
    border: 1px solid #db9623;
    background: #ffaf11;
    padding: 16px 20px;
    min-width: 170px;
    color: #fff;
    font-size: 1rem;
    transition: color 0.3s, background 0.3s; }
    .kemail [class^=button]:hover {
      text-decoration: none;
      color: #fff;
      background: #db9623; }
  .kemail h1 {
    font-size: 2.125rem;
    font-weight: 300;
    text-transform: none; }
    @media all and (max-width: 1300px) {
      .kemail h1 {
        font-size: 2.125rem; } }
    @media all and (max-width: 991px) {
      .kemail h1 {
        font-size: 2.125rem; } }
    @media all and (max-width: 767px) {
      .kemail h1 {
        font-size: 2.125rem; } }
  .kemail h2 {
    font-size: 1.5625rem;
    font-weight: 500;
    text-transform: none;
    margin-bottom: 30px; }
    @media all and (max-width: 1300px) {
      .kemail h2 {
        font-size: 1.5625rem; } }
    @media all and (max-width: 991px) {
      .kemail h2 {
        font-size: 1.5625rem; } }
    @media all and (max-width: 767px) {
      .kemail h2 {
        font-size: 1.5625rem; } }
  .kemail .title .title-content {
    padding-top: 50px; }
    .kemail .title .title-content h1, .kemail .title .title-content p {
      text-align: center; }
    .kemail .title .title-content span {
      font-size: 10px;
      color: #666; }
  .kemail .confirmation {
    padding: 50px 0; }
    .kemail .confirmation .confirmation-content {
      text-align: center; }
  .kemail #contactUsForm {
    margin-bottom: 100px; }
  .kemail .field .control-group {
    margin-bottom: 15px; }
  .kemail .field textarea {
    width: 100%;
    border: 1px solid #bbbfbc;
    min-height: 122px; }
  .kemail .fields .form-title {
    padding-top: 30px; }
  .kemail .inner-col {
    padding: 0px; }
  .kemail .submit {
    margin-top: 30px; }
  .kemail .errorMsg {
    color: #c90400; }
  .kemail .selectric-wrapper {
    position: relative;
    cursor: pointer; }
  .kemail .selectric-responsive {
    width: 100%; }
  .kemail .selectric {
    border: 1px solid #c1c1c1;
    background: transparent;
    position: relative; }
    .kemail .selectric .label {
      display: block;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      margin: 0 34px 0 20px;
      font-size: 14px;
      line-height: 34px;
      color: #a6a6a6;
      height: 34px; }
    .kemail .selectric .btn {
      display: block;
      position: absolute;
      right: 0;
      top: 0;
      width: 34px;
      height: 34px;
      line-height: 34px;
      color: #c1c1c1;
      text-align: center; }
      .kemail .selectric .btn i {
        font-size: 18px;
        vertical-align: middle;
        line-height: inherit; }
  .kemail .selectric-hover .selectric {
    border-color: #c4c4c4; }
    .kemail .selectric-hover .selectric .button {
      color: #a2a2a2; }
      .kemail .selectric-hover .selectric .button:after {
        border-top-color: #a2a2a2; }
  .kemail .selectric-open {
    z-index: 9999; }
    .kemail .selectric-open .selectric {
      border-color: #c4c4c4; }
    .kemail .selectric-open .selectric-items {
      display: block; }
  .kemail .selectric-disabled {
    filter: alpha(opacity=50);
    opacity: 0.5;
    cursor: default;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .kemail .selectric-hide-select {
    position: relative;
    overflow: hidden;
    width: 0;
    height: 0; }
    .kemail .selectric-hide-select select {
      position: absolute;
      left: -100%;
      display: none; }
  .kemail .selectric-input {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 1px !important;
    height: 1px !important;
    outline: none !important;
    border: none !important;
    *font: 0/0 a !important;
    background: none !important; }
  .kemail .selectric-temp-show {
    position: absolute !important;
    visibility: hidden !important;
    display: block !important; }
  .kemail .selectric-items {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #f3f3f3;
    border: 1px solid #c4c4c4;
    z-index: -1;
    box-shadow: 0 0 10px -6px;
    border-top: 0; }
    .kemail .selectric-items .selectric-scroll {
      height: 100%;
      overflow: auto; }
    .kemail .selectric-items ul, .kemail .selectric-items li {
      list-style: none;
      padding: 0;
      margin: 0;
      font-size: 14px;
      line-height: 20px;
      min-height: 20px; }
    .kemail .selectric-items li {
      display: block;
      padding: 14px 20px;
      border-top: 1px solid #c1c1c1;
      color: #a6a6a6;
      cursor: pointer; }
      .kemail .selectric-items li:first-child {
        border-top: 0; }
      .kemail .selectric-items li.selected {
        background: #fff;
        color: #1a1a1a; }
      .kemail .selectric-items li:hover {
        background: #fff; }
      .kemail .selectric-items li:after, .kemail .selectric-items li:before {
        content: none;
        display: none; }
    .kemail .selectric-items .disabled {
      filter: alpha(opacity=50);
      opacity: 0.5;
      cursor: default !important;
      background: none !important;
      color: #666 !important;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; }
    .kemail .selectric-items .selectric-group .selectric-group-label {
      font-weight: bold;
      padding-left: 10px;
      cursor: default;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      background: none;
      color: #444; }
    .kemail .selectric-items .selectric-group.disabled li {
      filter: alpha(opacity=100);
      opacity: 1; }
    .kemail .selectric-items .selectric-group li {
      padding-left: 25px; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Njc3Mvd2Vic2l0ZS91dGlscy9fdXRpbHMuc2NzcyIsIi4uLy4uLy4uL3Njc3MvY29tbW9uL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS11dGlsaXRpZXMuc2NzcyIsIi4uLy4uLy4uL3Njc3MvY29tbW9uL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vc2Nzcy93ZWJzaXRlL2Jhc2UvX3RleHRzLnNjc3MiLCIuLi8uLi8uLi9zY3NzL3dlYnNpdGUvYmFzZS9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi9zY3NzL3dlYnNpdGUvbGF5b3V0L190ZXh0LWRlZmF1bHRzLnNjc3MiLCJtYWluLnNjc3MiLCJ3ZWJzaXRlL3V0aWxzL19zZWxlY3RyaWMuc2NzcyIsIi4uLy4uLy4uL3Njc3Mvd2Vic2l0ZS9iYXNlL19idXR0b25zLnNjc3MiLCJ3ZWJzaXRlL2Jhc2UvX3RleHQtZGVmYXVsdHMuc2NzcyIsIndlYnNpdGUvY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJ3ZWJzaXRlL2NvbXBvbmVudHMvX2Zvcm0uc2NzcyIsIndlYnNpdGUvYmFzZS9fdmFyaWFibGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0pBO0VBQ0MsWUFBWTtFQUNaLFdBQVcsRUFDWDs7QUM5SEM7RUFDRSxvQkFBb0IsRUFBQTs7QUNOdEI7RUFDRSx5QkFBeUIsRUFDMUI7O0FBRkQ7RUFDRSx5QkFBeUIsRUFDMUI7O0FBRkQ7RUFDRSx5QkFBeUIsRUFDMUI7O0FBRkQ7RUFDRSx5QkFBeUIsRUFDMUI7O0FEaUJIOzs7Ozs7Ozs7Ozs7RUFZRSx5QkFBeUIsRUFDMUI7O0FBRUQ7RUM1Q0U7SUFDRSwwQkFBMEIsRUFDM0I7RUFDRDtJQUFFLDBCQUEwQixFQUFJO0VBQ2hDO0lBQUUsOEJBQThCLEVBQUk7RUFDcEM7O0lBQUUsK0JBQStCLEVBQUksRUFBQTs7QUQyQ3JDO0VBREY7SUFFSSwwQkFBMEIsRUFFN0IsRUFB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LGdCQUFnQjtNQUNoQiwwQkFBa0I7U0FBbEIsdUJBQWtCO1VBQWxCLHNCQUFrQjtjQUFsQixrQkFBa0I7TUFDbEIsaUJBQWlCO01BQ2pCLFlBQVksRUFDYjtJRGhNTDtNQ21NTSwyQkFBYTtNQUNiLFdBQVcsRUFDWjtJRHJNTDtNQ3dNTSxtQkFBbUIsRUFDcEIiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAZnVuY3Rpb24gZnMoJHNpemVWYWx1ZSkge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkc2l6ZVZhbHVlKSAvIDE2ICogMXJlbTtcbn1cblxuQG1peGluIHJlc2V0LXVscyB7XG5cdHVsLCBsaSB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblxuXHRcdCY6YmVmb3JlLCAmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XG4gICAgQGlmIHR5cGUtb2YoJG51bWJlcikgPT0gJ251bWJlcicgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG4gICAgICAgIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJG51bWJlcjtcbn1cblxuQG1peGluIGNyZWF0ZVNwcml0ZXNoZWV0KCRncmlkU2V0dGluZ3MsICRzcHJpdGVzKXtcblx0JGdyaWRXOiBtYXAtZ2V0KCRncmlkU2V0dGluZ3MsIHdpZHRoKTtcblx0JGdyaWRIOiBtYXAtZ2V0KCRncmlkU2V0dGluZ3MsIGhlaWdodCk7XG5cdCRncmlkSEM6IG1hcC1nZXQoJGdyaWRTZXR0aW5ncywgaG9yaXpvbnRhbEN1dHMpO1xuXHQkZ3JpZFZDOiBtYXAtZ2V0KCRncmlkU2V0dGluZ3MsIHZlcnRpY2FsQ3V0cyk7XG5cdCRzcHJpdGVzaGVldFBhdGg6IG1hcC1nZXQoJGdyaWRTZXR0aW5ncywgc3ByaXRlc2hlZXRQYXRoKTtcblxuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkc3ByaXRlcyl7XG5cdFx0JHNwcml0ZTogbnRoKCRzcHJpdGVzLCAkaSk7XG5cdFx0JG5hbWU6IG1hcC1nZXQoJHNwcml0ZSwgbmFtZSk7XG5cdFx0JHg6IG1hcC1nZXQoJHNwcml0ZSwgeCk7XG5cdFx0JHk6IG1hcC1nZXQoJHNwcml0ZSwgeSk7XG5cdFx0JHc6IG1hcC1nZXQoJHNwcml0ZSwgdyk7XG5cdFx0JGg6IG1hcC1nZXQoJHNwcml0ZSwgaCk7XG5cblx0XHQuc3ByaXRlLSN7JG5hbWV9IHtcblx0XHRcdHdpZHRoOiAoJGdyaWRXIC8gJGdyaWRIQykgKiAkdztcblx0XHRcdGhlaWdodDogKCRncmlkSCAvICRncmlkVkMpICogJGg7XG5cblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgkc3ByaXRlc2hlZXRQYXRoKTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogJGdyaWRXICRncmlkSDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246ICgoJGdyaWRXIC8gJGdyaWRIQykgKiAkeCAqIC0xKSAoKCRncmlkSCAvICRncmlkVkMpICogJHkgKiAtMSk7XG5cdFx0fVxuXHR9XG59O1xuXG5AZnVuY3Rpb24gbGV0dGVyLXNwYWNpbmcoJGxzKXtcblx0QHJldHVybiAoJGxzIC8gMTAwMCAqIDFlbSk7XG59XG5cbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3IpIHtcblx0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6JGNvbG9yOyB9XG5cdDo6LW1vei1wbGFjZWhvbGRlciB7IGNvbG9yOiRjb2xvcjsgfSAvKiBmaXJlZm94IDE5KyAqL1xuXHQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6JGNvbG9yOyB9IC8qIGllICovXG5cdGlucHV0Oi1tb3otcGxhY2Vob2xkZXIgeyBjb2xvcjokY29sb3I7IH1cbn1cblxuQG1peGluIHNtb290aC1ncmFkaWVudC1pbWFnZXMoKXtcblx0aW1hZ2UtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkOyAgICAgICAgICAgICAvKiBGVUNLIFNNT09USElORywgR0lWRSBNRSBTUEVFRCAgKi9cbiAgICBpbWFnZS1yZW5kZXJpbmc6IC1tb3otY3Jpc3AtZWRnZXM7ICAgICAgICAgIC8qIEZpcmVmb3ggICAgICAgICAgICAgICAgICAgICAgICAqL1xuICAgIGltYWdlLXJlbmRlcmluZzogLW8tY3Jpc3AtZWRnZXM7ICAgICAgICAgICAgLyogT3BlcmEgICAgICAgICAgICAgICAgICAgICAgICAgICovXG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAtd2Via2l0LW9wdGltaXplLWNvbnRyYXN0OyAvKiBDaHJvbWUgKGFuZCBldmVudHVhbGx5IFNhZmFyaSkgKi9cbiAgICBpbWFnZS1yZW5kZXJpbmc6IG9wdGltaXplLWNvbnRyYXN0OyAgICAgICAgIC8qIENTUzMgUHJvcG9zZWQgICAgICAgICAgICAgICAgICAqL1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7ICAgLyogSUU4KyAgICAgICAgICAgICAgICAgICAgICAgICAgICovXG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnRzaXplcygkYnJlYWtwb2ludHMpe1xuXHRAZWFjaCAkYnJlYWtwb2ludCwgJGZ6IGluICRicmVha3BvaW50cyB7XG5cdFx0QGluY2x1ZGUgYXQtbW9zdCgkYnJlYWtwb2ludCkge1xuXHRcdFx0Zm9udC1zaXplOiAkZno7XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBob3ZlcigkY2xhc3M6IG51bGwpe1xuXHRAaWYoJGNsYXNzICE9IG51bGwpIHtcblx0XHQubm8tdG91Y2ggJjpob3ZlciwgLm5vLXRvdWNoICY6Zm9jdXMsICYuI3skY2xhc3N9IHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblx0fVxuXHRAZWxzZSB7XG5cdFx0Lm5vLXRvdWNoICY6aG92ZXIsIC5uby10b3VjaCAmOmZvY3VzIHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gc2V0Qm9vdHN0cmFwR3V0dGVycygkZ3V0dGVyKXtcblx0JGk6IDE7XG5cdCRsaXN0OiBcIi5jb250YWluZXIsIC5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIjtcblxuXHRAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuXHRcdCRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG5cdH1cblxuXHQjeyRsaXN0fSB7XG5cdFx0cGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXHR9XG5cblx0LnJvdyB7XG5cdFx0bWFyZ2luLWxlZnQ6IC0oJGd1dHRlciAvIDIpICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luLXJpZ2h0OiAtKCRndXR0ZXIgLyAyKSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtaXhpbiB2ZW5kb3IoJHByb3BlcnR5LCAkdmFsdWUpe1xuXHQkdmVuZG9yczoobywgd2Via2l0LCBtb3osIG1zKTtcblxuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmVuZG9ycykge1xuXHRcdC0je250aCgkdmVuZG9ycywgJGkpfS0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcblx0fVxuXG5cdCN7JHByb3BlcnR5fTogJHZhbHVlO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbigkd2hhdCwgJGhvd0xvbmcsICRlYXNlOmVhc2UsICRkZWxheTowcykge1xuXHRAaW5jbHVkZSB2ZW5kb3IodHJhbnNpdGlvbiwgI3skd2hhdH0gI3skaG93TG9uZ30gI3skZWFzZX0gI3skZGVsYXl9KTtcbn1cblxuQG1peGluIG11bHRpcGxlLXRyYW5zaXRpb25zKCR0cmFuc2l0aW9ucyl7XG5cdCR0cmFuc2l0aW9uU3RyaW5nOiAnJztcblxuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdHJhbnNpdGlvbnMpIHtcblx0XHQkdGhpc1RyYW5zaXRpb246IG50aCgkdHJhbnNpdGlvbnMsICRpKTtcblxuXHRcdEBlYWNoICR3aGF0LCAkaG93TG9uZywgJGVhc2UsICRkZWxheSBpbiAkdGhpc1RyYW5zaXRpb24ge1xuXHRcdFx0JHRyYW5zaXRpb25TdHJpbmc6ICN7JHRyYW5zaXRpb25TdHJpbmd9ICN7JHdoYXR9ICN7JGhvd0xvbmd9ICN7JGVhc2V9ICN7JGRlbGF5fTtcblx0XHR9XG5cblx0XHRAaWYgJGkgPCBsZW5ndGgoJHRyYW5zaXRpb25zKXtcblx0XHRcdCR0cmFuc2l0aW9uU3RyaW5nOiAkdHJhbnNpdGlvblN0cmluZysnLCc7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgdmVuZG9yKHRyYW5zaXRpb24sICR0cmFuc2l0aW9uU3RyaW5nKTtcbn1cblxuXG4uaGFsZiB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDogNTAlO1xufVxuXG5AbWl4aW4gY2lyY2xlKCR3LCAkY29sb3IpIHtcblx0d2lkdGg6ICR3O1xuXHRoZWlnaHQ6ICR3O1xuXHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBtaW4tZHBweCgkZHBweCkge1xuXHRAbWVkaWEgc2NyZWVuIGFuZFxuXHRcdFx0KC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogJGRwcHgpLFxuXHQgICAgXHQobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkZHBweCksXG5cdFx0XHQobWluLXJlc29sdXRpb246ICN7JGRwcHh9ZHBweCksXG5cdFx0XHQobWluLXJlc29sdXRpb246ICgkZHBweCAqIDk2ZHBpKSkge1xuXG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGNvbWJpbmVkLXJldGluYS1xdWVyeSgkZHBweCwgJHdpZHRoKSB7XG5cdEBtZWRpYSBzY3JlZW4gYW5kXG5cdFx0XHQobWluLXdpZHRoOiAkd2lkdGgpLFxuXHRcdFx0KC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogJGRwcHgpLFxuXHQgICAgXHQobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkZHBweCksXG5cdFx0XHQobWluLXJlc29sdXRpb246ICN7JGRwcHh9ZHBweCksXG5cdFx0XHQobWluLXJlc29sdXRpb246ICgkZHBweCAqIDk2ZHBpKSkge1xuXG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIHJldGluYS1iZygkaW1hZ2UsICRpbWFnZS1mb3JtYXQsICRzZXR0aW5ncykge1xuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkc2V0dGluZ3MpIHtcblx0XHQkdGhpc1NldHRpbmc6IG50aCgkc2V0dGluZ3MsICRpKTtcblxuXHRcdCRkcHB4OiBtYXAtZ2V0KCR0aGlzU2V0dGluZywgZHBweCk7XG5cdFx0JG1pbi13aWR0aDogbWFwLWdldCgkdGhpc1NldHRpbmcsIG1pbi13aWR0aCk7XG5cdFx0JHdpZHRoOiBtYXAtZ2V0KCR0aGlzU2V0dGluZywgd2lkdGgpO1xuXHRcdCRoZWlnaHQ6IG1hcC1nZXQoJHRoaXNTZXR0aW5nLCBoZWlnaHQpO1xuXG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy8jeyRpbWFnZX1AI3skZHBweH14LiN7JGltYWdlLWZvcm1hdH0nKTtcblxuXHRcdEBpZiAkZHBweCAhPSBudWxsIGFuZCAkbWluLXdpZHRoICE9IG51bGwge1xuXHRcdFx0QGluY2x1ZGUgY29tYmluZWQtcmV0aW5hLXF1ZXJ5KCRkcHB4LCAkbWluLXdpZHRoKSB7XG5cdFx0XHRcdHdpZHRoOiAkd2lkdGg7XG5cdFx0XHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRcdH1cblx0XHR9XG5cdFx0QGVsc2UgaWYgJGRwcHggIT0gbnVsbCB7XG5cdFx0XHRAaW5jbHVkZSBtaW4tZHBweCgkZHBweCkge1xuXHRcdFx0XHR3aWR0aDogJHdpZHRoO1xuXHRcdFx0XHRoZWlnaHQ6ICRoZWlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdEBlbHNlIGlmICRtaW4td2lkdGggIT0gbnVsbCB7XG5cdFx0XHRAaW5jbHVkZSBhdC1sZWFzdCgkbWluLXdpZHRoKSB7XG5cdFx0XHRcdHdpZHRoOiAkd2lkdGg7XG5cdFx0XHRcdGhlaWdodDogJGhlaWdodDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGF0LWxlYXN0KCR3aWR0aCl7XG5cdEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICR3aWR0aCl7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIGF0LW1vc3QoJHdpZHRoKXtcblx0QG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJHdpZHRoKXtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gYmV0d2VlbigkbWluLXdpZHRoLCAkbWF4LXdpZHRoKXtcblx0QG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJG1pbi13aWR0aCkgYW5kIChtYXgtd2lkdGg6ICRtYXgtd2lkdGggLSAxKXtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gaXNOb3QoJHdpZHRoKXtcblx0QG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJHdpZHRoICsgMSksIGFsbCBhbmQgKG1heC13aWR0aDogJHdpZHRoIC0gMSl7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIHRyaWFuZ2xlKCRzZXR0aW5ncykge1xuXHQkd2lkdGg6IG1hcC1nZXQoJHNldHRpbmdzLCB3aWR0aCk7XG5cdCRjb2xvcjogbWFwLWdldCgkc2V0dGluZ3MsIGNvbG9yKTtcblx0JG5vdC1lcXVpOiBtYXAtZ2V0KCRzZXR0aW5ncywgbm90LWVxdWkpO1xuXG5cdGNvbnRlbnQ6ICcgJztcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOjA7XG5cdGhlaWdodDowO1xuXG5cdEBpZiAkbm90LWVxdWkge1xuXHRcdCRzaWRlczogbWFwLWdldCgkc2V0dGluZ3MsIHNpZGUpO1xuXHRcdCRoZWlnaHQ6IG1hcC1nZXQoJHNldHRpbmdzLCBoZWlnaHQpO1xuXG5cdFx0JHNpZGUxOiBudGgoJHNpZGVzLCAxKTtcblx0XHQkc2lkZTI6IG50aCgkc2lkZXMsIDIpO1xuXG5cdFx0QGlmICRzaWRlMSA9PSAnbGVmdCcge1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGNvbG9yO1xuXG5cdFx0XHRAaWYgJHNpZGUyID09ICdib3R0b20nIHtcblx0XHRcdFx0Ym9yZGVyLXRvcDogJGhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdH1cblx0XHRcdEBlbHNlIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdH1cblx0XHR9XG5cdFx0QGVsc2UgaWYgJHNpZGUxID09ICdyaWdodCcge1xuXHRcdFx0Ym9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkY29sb3I7XG5cblx0XHRcdEBpZiAkc2lkZTIgPT0gJ2JvdHRvbScge1xuXHRcdFx0XHRib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdFx0QGVsc2Uge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRAZWxzZSBpZiAkc2lkZTEgPT0gJ3RvcCcge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkICRjb2xvcjtcblxuXHRcdFx0QGlmICRzaWRlMiA9PSAnbGVmdCcge1xuXHRcdFx0XHRib3JkZXItcmlnaHQ6ICRoZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHR9XG5cdFx0XHRAZWxzZSB7XG5cdFx0XHRcdGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRAZWxzZSB7XG5cdFx0XHRib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGNvbG9yO1xuXG5cdFx0XHRAaWYgJHNpZGUyID09ICdsZWZ0JyB7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdH1cblx0XHRcdEBlbHNlIHtcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6ICRoZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdEBlbHNlIHtcblx0XHQkc2lkZTogbWFwLWdldCgkc2V0dGluZ3MsIHNpZGUpO1xuXG5cdFx0QGlmICRzaWRlID09ICdsZWZ0JyBvciAkc2lkZSA9PSAncmlnaHQnIHtcblx0XHRcdGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHR9XG5cdFx0QGVsc2Uge1xuXHRcdFx0Ym9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdH1cblxuXHRcdEBpZiAkc2lkZSA9PSAnbGVmdCcge1xuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGNvbG9yO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAkc2lkZSA9PSAncmlnaHQnIHtcblx0XHRcdGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGNvbG9yO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAkc2lkZSA9PSAndG9wJyB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGNvbG9yO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAkc2lkZSA9PSAnYm90dG9tJyB7XG5cdFx0XHRib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGNvbG9yO1xuXHRcdH1cblx0fVxufVxuIiwiLy9cbi8vIFJlc3BvbnNpdmU6IFV0aWxpdHkgY2xhc3Nlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJRTEwIGluIFdpbmRvd3MgKFBob25lKSA4XG4vL1xuLy8gU3VwcG9ydCBmb3IgcmVzcG9uc2l2ZSB2aWV3cyB2aWEgbWVkaWEgcXVlcmllcyBpcyBraW5kIG9mIGJvcmtlZCBpbiBJRTEwLCBmb3Jcbi8vIFN1cmZhY2UvZGVza3RvcCBpbiBzcGxpdCB2aWV3IGFuZCBmb3IgV2luZG93cyBQaG9uZSA4LiBUaGlzIHBhcnRpY3VsYXIgZml4XG4vLyBtdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgc25pcHBldCBvZiBKYXZhU2NyaXB0IHRvIHNuaWZmIHRoZSB1c2VyIGFnZW50IGFuZFxuLy8gYXBwbHkgc29tZSBjb25kaXRpb25hbCBDU1MgdG8gKm9ubHkqIHRoZSBTdXJmYWNlL2Rlc2t0b3AgV2luZG93cyA4LiBMb29rIGF0XG4vLyBvdXIgR2V0dGluZyBTdGFydGVkIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcyBidWcuXG4vL1xuLy8gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgZm9sbG93aW5nOlxuLy9cbi8vIElzc3VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3XG4vLyBEb2NzOiBodHRwOi8vZ2V0Ym9vdHN0cmFwLmNvbS9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEzLzAxL3dpbmRvd3MtcGhvbmUtOC1hbmQtZGV2aWNlLXdpZHRoL1xuLy8gU291cmNlOiBodHRwOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi9cblxuQGF0LXJvb3Qge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB9XG59XG5cblxuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUteHMsIC52aXNpYmxlLXNtLCAudmlzaWJsZS1tZCwgYW5kIC52aXNpYmxlLWxnIGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1zbScpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbGcnKTtcblxuLnZpc2libGUteHMtYmxvY2ssXG4udmlzaWJsZS14cy1pbmxpbmUsXG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1zbS1ibG9jayxcbi52aXNpYmxlLXNtLWlubGluZSxcbi52aXNpYmxlLXNtLWlubGluZS1ibG9jayxcbi52aXNpYmxlLW1kLWJsb2NrLFxuLnZpc2libGUtbWQtaW5saW5lLFxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrLFxuLnZpc2libGUtbGctYmxvY2ssXG4udmlzaWJsZS1sZy1pbmxpbmUsXG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXhzJyk7XG59XG4udmlzaWJsZS14cy1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS14cy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG59XG4udmlzaWJsZS1zbS1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtc20taW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLW1kJyk7XG59XG4udmlzaWJsZS1tZC1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbWQtaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xufVxuLnZpc2libGUtbGctYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtbGctaW5saW5lLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLXNtJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLW1kJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1sZycpO1xufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuLy9cbi8vIE1lZGlhIHF1ZXJpZXMgYXJlIHBsYWNlZCBvbiB0aGUgaW5zaWRlIHRvIGJlIG1peGluLWZyaWVuZGx5LlxuXG4vLyBOb3RlOiBEZXByZWNhdGVkIC52aXNpYmxlLXByaW50IGFzIG9mIHYzLjIuMFxuXG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtcHJpbnQnKTtcblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xufVxuLnZpc2libGUtcHJpbnQtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUtcHJpbnQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tcHJpbnQnKTtcbn1cbiIsIi8vIFJlc3BvbnNpdmUgdXRpbGl0aWVzXG5cbi8vXG4vLyBNb3JlIGVhc2lseSBpbmNsdWRlIGFsbCB0aGUgc3RhdGVzIGZvciByZXNwb25zaXZlLXV0aWxpdGllcy5sZXNzLlxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS12aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSN7JHBhcmVudH0gIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0ciN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGgjeyRwYXJlbnR9LFxuICB0ZCN7JHBhcmVudH0gICAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCRwYXJlbnQpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJcblxuJXRpdGxlIHtcblx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS10aXRsZTtcblx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRtYXJnaW46IDAgMCAwLjVlbTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Ly9sZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoMjAwKTtcblxuXHRzdHJvbmcge1xuXHRcdGNvbG9yOiAkY29sb3ItYWNjZW50LXByaW1hcnk7XG5cdFx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XG5cdH1cbn1cblxuJXRpdGxlMSB7XG5cdEBleHRlbmQgJXRpdGxlO1xuXG5cdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10aXRsZTEtbGc7XG5cblx0QGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250c2l6ZXMoKFxuXHRcdCRzY3JlZW4tbWQtbWF4OiAkZm9udC1zaXplLXRpdGxlMS1tZCxcblx0XHQkc2NyZWVuLXNtLW1heDogJGZvbnQtc2l6ZS10aXRsZTEtc20sXG5cdFx0JHNjcmVlbi14cy1tYXg6ICRmb250LXNpemUtdGl0bGUxLXhzLFxuXHQpKTtcbn1cblxuJXRpdGxlMiB7XG5cdEBleHRlbmQgJXRpdGxlO1xuXG5cdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10aXRsZTItbGc7XG5cdEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udHNpemVzKChcblx0XHQkc2NyZWVuLW1kLW1heDogJGZvbnQtc2l6ZS10aXRsZTItbWQsXG5cdFx0JHNjcmVlbi1zbS1tYXg6ICRmb250LXNpemUtdGl0bGUyLXNtLFxuXHRcdCRzY3JlZW4teHMtbWF4OiAkZm9udC1zaXplLXRpdGxlMi14cyxcblx0KSk7XG59XG5cbiV0aXRsZTMge1xuXHRAZXh0ZW5kICV0aXRsZTtcblxuXHRsZXR0ZXItc3BhY2luZzogMC4xZW07XG5cdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10aXRsZTMtbGc7XG5cdEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udHNpemVzKChcblx0XHQkc2NyZWVuLW1kLW1heDogJGZvbnQtc2l6ZS10aXRsZTMtbWQsXG5cdFx0JHNjcmVlbi1zbS1tYXg6ICRmb250LXNpemUtdGl0bGUzLXNtLFxuXHRcdCRzY3JlZW4teHMtbWF4OiAkZm9udC1zaXplLXRpdGxlMy14cyxcblx0KSk7XG59XG5cblxuJXRpdGxlNCB7XG5cdEBleHRlbmQgJXRpdGxlO1xuXG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXRleHQ7XG5cdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLXRpdGxlNC1sZztcblx0QGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250c2l6ZXMoKFxuXHRcdCRzY3JlZW4tbWQtbWF4OiAkZm9udC1zaXplLXRpdGxlNC1tZCxcblx0XHQkc2NyZWVuLXNtLW1heDogJGZvbnQtc2l6ZS10aXRsZTQtc20sXG5cdFx0JHNjcmVlbi14cy1tYXg6ICRmb250LXNpemUtdGl0bGU0LXhzLFxuXHQpKTtcbn1cblxuJXRleHQge1xuXHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXRleHQ7XG5cdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZXh0LWxnO1xuXHRAaW5jbHVkZSByZXNwb25zaXZlLWZvbnRzaXplcygoXG5cdFx0JHNjcmVlbi1tZC1tYXg6ICRmb250LXNpemUtdGV4dC1tZCxcblx0XHQkc2NyZWVuLXNtLW1heDogJGZvbnQtc2l6ZS10ZXh0LXNtLFxuXHRcdCRzY3JlZW4teHMtbWF4OiAkZm9udC1zaXplLXRleHQteHMsXG5cdCkpO1xufVxuXG4lZm9vdGVyX25hdl9jYXRlZ29yeSB7XG5cdEBleHRlbmQgJXRpdGxlO1xuXHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG5cblx0Zm9udC1zaXplOiAkZm9udC1zaXplLXRleHQtbGc7XG5cdEBpbmNsdWRlIHJlc3BvbnNpdmUtZm9udHNpemVzKChcblx0XHQkc2NyZWVuLW1kLW1heDogJGZvbnQtc2l6ZS10ZXh0LW1kLFxuXHRcdCRzY3JlZW4tc20tbWF4OiAkZm9udC1zaXplLXRleHQtc20sXG5cdFx0JHNjcmVlbi14cy1tYXg6ICRmb250LXNpemUtdGV4dC14cyxcblx0KSk7XG59XG5cbiV1bm9yZGVyZWRfbGlzdCB7XG5cdHBhZGRpbmc6IDA7XG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuXHRsaSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHBhZGRpbmctbGVmdDogMzBweDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiBjYWxjKDEvMiAqIDEuNGVtKTtcblx0XHRcdFx0bGVmdDogMDtcblxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG5cblx0XHRcdGNvbnRlbnQ6ICcgJztcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHR3aWR0aDogN3B4O1xuXHRcdFx0aGVpZ2h0OiA3cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYWNjZW50LXByaW1hcnk7XG5cdFx0fVxuXG5cdFx0JiArIGxpIHtcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0fVxuXHR9XG59XG5cbiVvcmRlcmVkX2xpc3Qge1xuXHRwYWRkaW5nOiAwO1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cblx0bGkge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cblx0XHRjb3VudGVyLWluY3JlbWVudDogbGlzdC1jb3VudGVyO1xuXHRcdFxuXHRcdGgzIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDFweDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFxuXHRcdFx0Y29udGVudDogY291bnRlcihsaXN0LWNvdW50ZXIpO1xuXG5cdFx0XHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXRpdGxlO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdG1hcmdpbjogMCAwIDAuNWVtO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjFlbTtcblx0XHRcdGNvbG9yOiAkY29sb3ItYWNjZW50LXByaW1hcnk7XG5cdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtdGl0bGUzLWxnO1xuXHRcdFx0QGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250c2l6ZXMoKFxuXHRcdFx0XHQkc2NyZWVuLW1kLW1heDogJGZvbnQtc2l6ZS10aXRsZTMtbWQsXG5cdFx0XHRcdCRzY3JlZW4tc20tbWF4OiAkZm9udC1zaXplLXRpdGxlMy1zbSxcblx0XHRcdFx0JHNjcmVlbi14cy1tYXg6ICRmb250LXNpemUtdGl0bGUzLXhzLFxuXHRcdFx0KSk7XG5cdFx0fVxuXHR9XG59IiwiXG4vLyBXZWJzaXRlIHZhcmlhYmxlcztcbiRncmlkLWd1dHRlci13aWR0aDogMzBweDtcblxuJHNjcmVlbi1sZy1taW46IDEzMDFweDtcbiRzY3JlZW4tbWQtbWF4OiAxMzAwcHg7XG4kY29udGFpbmVyLWxnOiAxMjAwcHg7XG5cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb2xvcnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYmxhY2s6ICMwMDA7XG4kd2hpdGU6ICNmZmY7XG5cbiRibHVlNDk6ICMxZTdkYTY7XG4kYmx1ZTQxOiAjMTk2YThjO1xuXG4kcGVhY29jazMxOiAjMDA0ZjZhO1xuJHBlYWNvY2syNDogIzAxNDA1NTtcbiRwZWFjb2NrOTQ6ICNlNGVmZjM7XG5cbiRncmVlbjkyOiAjZDllZWVlO1xuJGdyZWVuNzU6ICNhZGJkYmQ7XG4kZ3JlZW41MjogIzAwOGI4YjtcbiRncmVlbjQwOiAjMDE3MTczO1xuXG4keWVsbG93Nzg6ICNmZmFmMTE7IFxuJHllbGxvdzQ4OiAjZGI5NjIzO1xuXG4kcmVkOiAjZjAwO1xuXG4kZ3JheTk3OiAjZjdmN2Y3O1xuJGdyYXk5NTogI2YyZjJmMjtcbiRncmF5OTE6ICNlNmU2ZTY7XG4kZ3JheTgxOiAjY2JjYmNiO1xuJGdyYXk3NzogI2JiYmZiYztcbiRncmF5NTg6ICM4YzhjOGM7XG4kZ3JheTQzOiAjNjY2NjY2O1xuJGdyYXkxNTogIzI2MjYyNjtcbiRncmF5OTogIzFhMWExYTtcblxuJGNvbG9yLXRleHQtcHJpbWFyeTogJGdyYXk5ICFkZWZhdWx0O1xuJGNvbG9yLXRleHQtc2Vjb25kYXJ5OiAkd2hpdGUgIWRlZmF1bHQ7XG4kY29sb3ItdGV4dC1tZW51LXByaW1hcnk6ICRncmF5OSAhZGVmYXVsdDtcblxuJGNvbG9yLWFjY2VudC1wcmltYXJ5OiAkeWVsbG93NzggIWRlZmF1bHQ7XG4kY29sb3ItYWNjZW50LXByaW1hcnlfaG92ZXI6ICR5ZWxsb3c0OCAhZGVmYXVsdDtcbiRjb2xvci1hY2NlbnQtc2Vjb25kYXJ5OiAkcGVhY29jazMxICFkZWZhdWx0O1xuJGNvbG9yLWFjY2VudC1zZWNvbmRhcnlfaG92ZXI6ICRwZWFjb2NrMjQgIWRlZmF1bHQ7XG5cbiRjb2xvci1iYWNrZ3JvdW5kLW1haW46ICR3aGl0ZSAhZGVmYXVsdDtcbiRjb2xvci1iYWNrZ3JvdW5kLWxpZ2h0OiAkZ3JheTk1ICFkZWZhdWx0O1xuJGNvbG9yLWJhY2tncm91bmQtZGFyazogJGJsYWNrICFkZWZhdWx0O1xuXG5cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBGb250c1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRmb250LWZhbWlseS10aXRsZTogJ1JlYWRlcicsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktdGV4dDogJ1JlYWRlcicsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbiRmb250LXdlaWdodC10aGluOiAyMDA7XG4kZm9udC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiRmb250LXdlaWdodC1ub3JtYWw6IDQwMDtcbiRmb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogNjAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiRmb250LXdlaWdodC1leHRyYWJvbGQ6IDgwMDtcbiRmb250LXdlaWdodC1ibGFjazogOTAwO1xuXG5cbiRmb250LXNpemUtdGl0bGUxLWxnOiBmcyg1MHB4KSAhZGVmYXVsdDtcbiRmb250LXNpemUtdGl0bGUxLW1kOiBmcyg1MHB4KSAhZGVmYXVsdDtcbiRmb250LXNpemUtdGl0bGUxLXNtOiBmcygzMHB4KSAhZGVmYXVsdDtcbiRmb250LXNpemUtdGl0bGUxLXhzOiBmcygzMHB4KSAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS10aXRsZTItbGc6IGZzKDMwcHgpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS10aXRsZTItbWQ6IGZzKDMwcHgpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS10aXRsZTItc206IGZzKDI1cHgpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS10aXRsZTIteHM6IGZzKDI1cHgpICFkZWZhdWx0OyBcblxuJGZvbnQtc2l6ZS10aXRsZTMtbGc6IGZzKDIwcHgpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS10aXRsZTMtbWQ6IGZzKDIwcHgpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS10aXRsZTMtc206IGZzKDIwcHgpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS10aXRsZTMteHM6IGZzKDIwcHgpICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLXRpdGxlNC1sZzogZnMoMTZweCkgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXRpdGxlNC1tZDogZnMoMTZweCkgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXRpdGxlNC1zbTogZnMoMTZweCkgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXRpdGxlNC14czogZnMoMTZweCkgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtdGV4dC1sZzogZnMoMTZweCkgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXRleHQtbWQ6IGZzKDE2cHgpICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS10ZXh0LXNtOiBmcygxNnB4KSAhZGVmYXVsdDtcbiRmb250LXNpemUtdGV4dC14czogZnMoMTZweCkgIWRlZmF1bHQ7XG5cblxuXG4kZm9udC1zaXplLW1lbnUtbGc6IGZzKDE1cHgpO1xuJGZvbnQtc2l6ZS1tZW51LW1kOiBmcygxNXB4KTtcbiRmb250LXNpemUtbWVudS1zbTogZnMoMTVweCk7XG4kZm9udC1zaXplLW1lbnUteHM6IGZzKDE1cHgpOyIsIioge1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuaHRtbCB7XG5cdGZvbnQtc2l6ZTogMTAwJTtcbn1cblxuYm9keSB7XG5cdEBleHRlbmQgJXRleHQ7XG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdGNvbG9yOiAkY29sb3ItdGV4dC1wcmltYXJ5O1xuXHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXRleHQ7XG5cblx0LmludmVydGVkLWNvbG9ycyB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxufVxuXG5oMSB7XG5cdEBleHRlbmQgJXRpdGxlMTtcbn1cblxuaDIge1xuXHRAZXh0ZW5kICV0aXRsZTI7XG59XG5cbmgzIHtcblx0QGV4dGVuZCAldGl0bGUzO1xufVxuXG5oNCB7XG5cdEBleHRlbmQgJXRpdGxlNDtcbn1cblxucCB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxudWw6bm90KFtjbGFzc10pIHtcblx0QGV4dGVuZCAldW5vcmRlcmVkX2xpc3Q7XG59XG5cbm9sOm5vdChbY2xhc3NdKSB7XG5cdEBleHRlbmQgJW9yZGVyZWRfbGlzdDtcbn1cblxuXG5hOm5vdChbY2xhc3NdKSB7XG5cdGNvbG9yOiAkY29sb3ItYWNjZW50LXByaW1hcnk7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6ICRjb2xvci1hY2NlbnQtcHJpbWFyeV9ob3Zlcjtcblx0fVxufVxuXG5lbSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xufVxuXG5zdXAge1xuXHR0b3A6IC0wLjJlbSAhaW1wb3J0YW50O1xufSIsIlxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBJbXBvcnQgYmFzZSBzdHlsZXNcbkBpbXBvcnQgXCJiYXNlLnNjc3NcIjtcblxuLmtlbWFpbCB7XG5cdEBpbXBvcnQgXCIuLi8uLi8uLi9zY3NzL3dlYnNpdGUvYmFzZS9fYnV0dG9uc1wiO1xuXG5cdEBpbXBvcnQgXCJ3ZWJzaXRlL2Jhc2UvX3RleHQtZGVmYXVsdHNcIjtcblx0QGltcG9ydCBcIndlYnNpdGUvY29tcG9uZW50cy9faGVhZGVyXCI7XHRcblx0QGltcG9ydCBcIndlYnNpdGUvY29tcG9uZW50cy9fZm9ybVwiO1x0XG5cblx0QGltcG9ydCBcIndlYnNpdGUvdXRpbHMvX3NlbGVjdHJpY1wiO1xuXG59IiwiJG1haW4tY29sb3I6ICNEREQ7XG4kc2Vjb25kYXJ5LWNvbG9yOiAjQkJCO1xuJGJnLWNvbG9yOiAjRjhGOEY4O1xuJHRleHQtY29sb3I6ICM0NDQ7XG4kaGVpZ2h0OiAzNnB4O1xuJHNwYWNpbmc6IDIwcHg7XG4kYm9yZGVyLXdpZHRoOiAxcHg7XG4kaW5uZXItaGVpZ2h0OiAkaGVpZ2h0IC0gKCRib3JkZXItd2lkdGggKiAyKTtcblxuLnNlbGVjdHJpYy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zZWxlY3RyaWMtcmVzcG9uc2l2ZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VsZWN0cmljIHtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5Nzg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgbWFyZ2luOiAwICRpbm5lci1oZWlnaHQgMCAkc3BhY2luZztcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6ICRpbm5lci1oZWlnaHQ7XG4gICAgY29sb3I6ICRncmF5Njg7XG4gICAgaGVpZ2h0OiAkaW5uZXItaGVpZ2h0O1xuICB9XG5cbiAgLmJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJGlubmVyLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRpbm5lci1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbm5lci1oZWlnaHQ7XG4gICAgY29sb3I6ICRncmF5Nzg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3RyaWMtaG92ZXIgLnNlbGVjdHJpYyB7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRtYWluLWNvbG9yLCAxMCUpO1xuXG4gIC5idXR0b24ge1xuICAgIGNvbG9yOiBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgMTAlKTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3RyaWMtb3BlbiB7XG4gIHotaW5kZXg6IDk5OTk7XG5cbiAgLnNlbGVjdHJpYyB7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJG1haW4tY29sb3IsIDEwJSk7XG4gIH1cblxuICAuc2VsZWN0cmljLWl0ZW1zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc2VsZWN0cmljLWRpc2FibGVkIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc2VsZWN0cmljLWhpZGUtc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIHNlbGVjdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0xMDAlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNlbGVjdHJpYy1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAqZm9udDogMC8wIGEgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0cmljLXRlbXAtc2hvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLyogSXRlbXMgYm94ICovXG4uc2VsZWN0cmljLWl0ZW1zIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICRmb3JtLWJhY2tncm91bmQtcHJpbWFyeTtcbiAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRtYWluLWNvbG9yLCAxMCUpO1xuICB6LWluZGV4OiAtMTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggLTZweDtcblxuICBib3JkZXItdG9wOiAwO1xuXG4gIC5zZWxlY3RyaWMtc2Nyb2xsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAuc2VsZWN0cmljLWFib3ZlICYge1xuICAvLyAgIHRvcDogYXV0bztcbiAgLy8gICBib3R0b206IDEwMCU7XG4gIC8vICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRtYWluLWNvbG9yLCAxMCUpO1xuICAvLyAgIGJvcmRlci1ib3R0b206IDA7XG4gIC8vIH1cblxuICB1bCwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIH1cblxuICBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTRweCAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JheTc4O1xuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRUVFO1xuICAgIGNvbG9yOiAkZ3JheTY4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wOjA7XG4gICAgfVxuXG4gICAgJi5zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZm9ybS1iYWNrZ3JvdW5kLXNlY29uZGFyeTtcbiAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1wcmltYXJ5O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGZvcm0tYmFja2dyb3VuZC1zZWNvbmRhcnk7XG4gICAgfVxuXG4gICAgJjphZnRlciwgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5kaXNhYmxlZCB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNjY2ICFpbXBvcnRhbnQ7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAuc2VsZWN0cmljLWdyb3VwIHtcbiAgICAuc2VsZWN0cmljLWdyb3VwLWxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCBsaSB7XG4gICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIH1cbiAgfVxufVxuIiwiJWJhc2VfYnV0dG9uIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG5cdG91dGxpbmU6IG5vbmU7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yLWFjY2VudC1wcmltYXJ5X2hvdmVyO1xuXHRiYWNrZ3JvdW5kOiAkY29sb3ItYWNjZW50LXByaW1hcnk7XG5cblx0cGFkZGluZzogMTZweCAyMHB4O1xuXHRtaW4td2lkdGg6IDE3MHB4O1xuXG5cdEBleHRlbmQgJXRpdGxlO1xuXHRjb2xvcjogJGNvbG9yLXRleHQtc2Vjb25kYXJ5O1xuXHRmb250LXNpemU6IGZzKDE2cHgpO1xuXG5cdHRyYW5zaXRpb246IGNvbG9yIDAuM3MsIGJhY2tncm91bmQgMC4zczsgXG5cblx0Jjpob3ZlciB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGNvbG9yOiAkY29sb3ItdGV4dC1zZWNvbmRhcnk7IFxuXHRcdGJhY2tncm91bmQ6ICRjb2xvci1hY2NlbnQtcHJpbWFyeV9ob3Zlcjtcblx0fVxufVxuXG5cbltjbGFzc149YnV0dG9uXSB7XG5cdEBleHRlbmQgJWJhc2VfYnV0dG9uO1xufSIsImgxIHtcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLXRpdGxlMS1sZztcblx0Zm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodDtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cblx0QGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250c2l6ZXMoKFxuXHRcdCRzY3JlZW4tbWQtbWF4OiAkZm9udC1zaXplLXRpdGxlMS1tZCxcblx0XHQkc2NyZWVuLXNtLW1heDogJGZvbnQtc2l6ZS10aXRsZTEtc20sXG5cdFx0JHNjcmVlbi14cy1tYXg6ICRmb250LXNpemUtdGl0bGUxLXhzLFxuXHQpKTtcbn1cblxuaDIge1xuXHRmb250LXNpemU6ICRmb250LXNpemUtdGl0bGUyLWxnO1xuXHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuXHRAaW5jbHVkZSByZXNwb25zaXZlLWZvbnRzaXplcygoXG5cdFx0JHNjcmVlbi1tZC1tYXg6ICRmb250LXNpemUtdGl0bGUyLW1kLFxuXHRcdCRzY3JlZW4tc20tbWF4OiAkZm9udC1zaXplLXRpdGxlMi1zbSxcblx0XHQkc2NyZWVuLXhzLW1heDogJGZvbnQtc2l6ZS10aXRsZTIteHMsXG5cdCkpO1xufSIsIi50aXRsZSB7XG4gICAgLnRpdGxlLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDsgICAgICAgXG5cbiAgICAgICAgaDEscCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29uZmlybWF0aW9uIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgLmNvbmZpcm1hdGlvbi1jb250ZW50IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cbiIsIiNjb250YWN0VXNGb3JtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbn1cblxuLmZpZWxkIHtcbiAgICAuY29udHJvbC1ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2JiYmZiYztcbiAgICAgICAgbWluLWhlaWdodDogMTIycHg7XG4gICAgfVxufVxuXG4uZmllbGRzIHtcbiAgICAuZm9ybS10aXRsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIH1cbn1cblxuLmlubmVyLWNvbCB7XG4gICAgcGFkZGluZzogMHB4O1xufVxuXG4uc3VibWl0IHtcbiAgICBtYXJnaW4tdG9wOjMwcHg7XG59XG5cbi5lcnJvck1zZyB7XG4gICAgY29sb3I6ICNjOTA0MDA7XG59IiwiXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ09MT1IgREVGU1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0JGdyYXk2ODogI2E2YTZhNjtcblx0JGdyYXk3ODogI2MxYzFjMTtcblx0JGdyYXk5NjogI2YzZjNmMztcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDT0xPUiBVU0FHRVxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXHQkZm9ybS1iYWNrZ3JvdW5kLXByaW1hcnk6ICRncmF5OTY7XG5cdCRmb3JtLWJhY2tncm91bmQtc2Vjb25kYXJ5OiAkd2hpdGU7XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBURVhUU1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXHQkZm9udC1zaXplLXRpdGxlMS1sZzogZnMoMzRweCk7XG5cdCRmb250LXNpemUtdGl0bGUxLW1kOiBmcygzNHB4KTtcblx0JGZvbnQtc2l6ZS10aXRsZTEtc206IGZzKDM0cHgpO1xuXHQkZm9udC1zaXplLXRpdGxlMS14czogZnMoMzRweCk7XG5cblx0JGZvbnQtc2l6ZS10aXRsZTItbGc6IGZzKDI1cHgpO1xuXHQkZm9udC1zaXplLXRpdGxlMi1tZDogZnMoMjVweCk7XG5cdCRmb250LXNpemUtdGl0bGUyLXNtOiBmcygyNXB4KTtcblx0JGZvbnQtc2l6ZS10aXRsZTIteHM6IGZzKDI1cHgpOyJdfQ== */
