﻿@charset "UTF-8";
:root {
  --pc-contents-max-width:1200px;
  --z-index-header:1000;
  --hover-opacity-duration:.2s;
  --hover-opacity-ease:ease;
  --color-white:#FFFFFF;
  --color-black:#000000;
  --color-gray900:#222222;
  --color-gray800:#323232;
  --color-gray600:#505050;
  --color-gray500:#666666;
  --color-gray400:#B0B0B0;
  --color-gray300:#D7D7D7;
  --color-gray200:#EDEDED;
  --color-gray100:#F0F0F0;
  --color-blue1200:#1D60B0;
  --color-blue1000:#2588FE;
  --color-blue900:#2577D8;
  --color-blue800:#4085D6;
  --color-blue400:#A6C5E5;
  --color-blue300:#C0D9F2;
  --color-blue200:#EAF3FC;
  --color-blue100:#F0F6FB;
  --color-green100:#DDF1D9;
  --color-red900:#EE2F34;
}

/*
pxをvwに変換
*/
/************************************************************
header用
*************************************************************/
/*
メディアクエリ
記述例
body{
  @include mixin.ms-w('max',1200){
    background-color: red;
  }
}
*/
/*
フォームリセット
*/
/*
ICON FONT
*/
.table-wrap {
  position: relative;
  background: #fff;
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .table-wrap {
    width: calc(var(--vw-noscrbar) - var(--vw-noscrbar) * 0.1719 / 2);
  }
}
@media only screen and (max-width:768px) {
  .table-wrap {
    width: calc(var(--vw-noscrbar) - (var(--vw-noscrbar) - 87.6923076923vw) / 2);
  }
}
.table-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  width: 20px;
  height: 100%;
  pointer-events: none;
  z-index: 2;
}
.table-wrap::before {
  left: 0;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.3), transparent);
  opacity: 0;
  transition: opacity 0.2s;
}
.table-wrap.shadow-left::before {
  opacity: 1;
}
.table-wrap.shadow-right::after {
  opacity: 1;
}
.table-wrap .table-inner {
  overflow-x: auto;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .table-wrap .table-inner {
    cursor: grab;
  }
}
@media only screen and (max-width:768px) {
  .table-wrap .table-inner {
    cursor: grab;
  }
}
.table-wrap .table-inner.dragging {
  cursor: grabbing;
  user-select: none;
}
.table-wrap table {
  width: 100%;
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .table-wrap table {
    min-width: 105.6rem;
  }
}
@media only screen and (max-width:768px) {
  .table-wrap table {
    min-width: 105.6rem;
  }
}

[class^=icons-], [class*=" icons-"] {
  display: inline-block;
  font-family: "icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icons-arrow-1:before {
  content: "\ea01";
}

.icons-arrow-2:before {
  content: "\ea02";
}

.icons-search:before {
  content: "\ea03";
}

.icons-lang:before {
  content: "\ea04";
}

.icons-circle-plus:before {
  content: "\ea05";
}

.icons-check:before {
  content: "\ea06";
}

.icons-close:before {
  content: "\ea07";
}

.icons-slash:before {
  content: "\ea08";
}

.icons-download:before {
  content: "\ea09";
}

.icons-blank:before {
  content: "\ea0a";
}

.icons-circle-minus:before {
  content: "\ea0b";
}

.icons-bldg:before {
  content: "\ea0c";
}

.icons-pen:before {
  content: "\ea0d";
}

.icons-flow:before {
  content: "\ea0e";
}

.icons-prize:before {
  content: "\ea0f";
}

.icons-global:before {
  content: "\ea10";
}

.icons-strength:before {
  content: "\ea11";
}

.icons-tel:before {
  content: "\ea12";
}

.icons-mail:before {
  content: "\ea13";
}

.icons-wakaba:before {
  content: "\ea14";
}

.icons-faq:before {
  content: "\ea15";
}

.icons-x:before {
  content: "\ea16";
}

.icons-facebook:before {
  content: "\ea17";
}

.icons-instagram:before {
  content: "\ea18";
}

.icons-youtube:before {
  content: "\ea19";
}

.icons-line:before {
  content: "\ea1a";
}

/*
mixin
*/
/************************************************************
SCREEN RESPONSIVE
*************************************************************/
.l-products__lineup-chart {
  color: var(--color-gray900);
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart {
    padding-bottom: 15rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart {
    padding-bottom: 10rem;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart {
    margin-top: 4rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart {
    margin-top: 4rem;
  }
}
.l-products__lineup-chart-text .text1 {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2;
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-text .text2 {
    margin-top: 0;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-text .text2 {
    margin-top: 1.6rem;
  }
}
.l-products__lineup-chart-text .text2 ul li {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 2;
}
.l-products__lineup-chart-text .label {
  padding-right: 4rem;
  position: relative;
  white-space: nowrap;
}
.l-products__lineup-chart-text .label::after {
  content: "";
  width: 3.2rem;
  height: 1em;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0.4rem;
  margin: auto;
}
.l-products__lineup-chart-text .label[data-color=blue]::after {
  background-color: var(--color-blue200);
}
.l-products__lineup-chart-text .label[data-color=green]::after {
  background-color: var(--color-green100);
}
.l-products__lineup-chart-text .label[data-color=red]::after {
  background-color: var(--color-white);
  border: 1px solid var(--color-red900);
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table {
    margin-top: 1.6rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table {
    margin-top: 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table .view-pc {
    display: none;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table .view-sp {
    display: none;
  }
}
.l-products__lineup-chart-table table {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table {
    border-bottom: 1px solid var(--color-gray500);
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table thead tr th {
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.3;
    color: var(--color-white);
    background-color: var(--color-gray800);
    width: calc((100% - 13rem) / 10);
    padding: 1.2rem 0;
  }
  .l-products__lineup-chart-table table thead tr th:first-child {
    border-left: 1px solid var(--color-gray800);
  }
  .l-products__lineup-chart-table table thead tr th:nth-child(n+2) {
    border-left: 1px solid var(--color-gray600);
  }
  .l-products__lineup-chart-table table thead tr th:last-child {
    border-right: 1px solid var(--color-gray600);
  }
  .l-products__lineup-chart-table table thead tr.dummy {
    height: 0;
    overflow: hidden;
    opacity: 0;
  }
  .l-products__lineup-chart-table table thead tr.dummy th {
    padding: 0;
    width: calc((100% - 13rem) / 10);
  }
  .l-products__lineup-chart-table table thead tr.dummy th:first-child {
    width: 3rem;
  }
  .l-products__lineup-chart-table table thead tr.dummy th:first-child + th {
    width: 10rem;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr.borderTop th, .l-products__lineup-chart-table table tbody tr.borderTop td {
    border-top: 1px solid var(--color-gray500);
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr:not(.borderTop):nth-child(n+2) th:not(.newTech), .l-products__lineup-chart-table table tbody tr:not(.borderTop):nth-child(n+2) td:not(.newTech) {
    border-top: 1px solid var(--color-gray300);
  }
}
.l-products__lineup-chart-table table tbody tr.sub th:first-child {
  border-top: none;
}
.l-products__lineup-chart-table table tbody tr.sub th + th {
  font-size: 1.1rem;
  border-left: 1px solid var(--color-gray500);
  padding: 0 0.5rem;
}
.l-products__lineup-chart-table table tbody tr th, .l-products__lineup-chart-table table tbody tr td {
  border: none;
  padding: 0;
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr th, .l-products__lineup-chart-table table tbody tr td {
    border-left: 1px solid var(--color-gray300);
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr th:last-child, .l-products__lineup-chart-table table tbody tr td:last-child {
    border-right: 1px solid var(--color-gray300);
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr:last-child {
    border-bottom: 1px solid var(--color-gray500);
  }
}
.l-products__lineup-chart-table table tbody tr th {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.3;
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr th {
    color: var(--color-white);
    background-color: var(--color-gray600);
    padding: 0.8rem;
  }
}
.l-products__lineup-chart-table table tbody tr td {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  background-color: var(--color-white);
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr td {
    min-height: 4.8rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr td {
    border-left: 1px solid var(--color-gray300);
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr td {
    border-bottom: 1px solid var(--color-gray300);
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr td:last-child {
    border-right: 1px solid var(--color-gray300);
  }
}
.l-products__lineup-chart-table table tbody tr td:has(a) {
  background-color: var(--color-blue200);
}
@media (hover: hover) {
  .l-products__lineup-chart-table table tbody tr td:has(a):hover {
    background-color: var(--color-blue300);
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr td.soon {
    padding: 0.8rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr td.soon {
    font-size: 1.3rem;
    background-color: var(--color-green100);
    overflow-wrap: anywhere;
    padding: 0.8rem;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr td.soon > span {
    padding: 0;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr td.soon > span {
    padding: 0;
  }
}
.l-products__lineup-chart-table table tbody tr td.soon a, .l-products__lineup-chart-table table tbody tr td.soon > span {
  background-color: var(--color-green100);
}
.l-products__lineup-chart-table table tbody tr td.newTech {
  border: none;
  position: relative;
}
.l-products__lineup-chart-table table tbody tr td.newTech::after {
  content: "";
  width: calc(100% + 1px);
  height: calc(100% + 1px);
  border: 1px solid var(--color-red900);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table table tbody tr td.newTech.soon span {
    position: relative;
    z-index: 2;
    background: none;
  }
  .l-products__lineup-chart-table table tbody tr td.newTech.soon::after {
    background-color: var(--color-green100);
    z-index: 1;
  }
}
.l-products__lineup-chart-table table tbody tr td .small {
  font-size: 1rem;
  font-weight: 400;
}
.l-products__lineup-chart-table table tbody tr td a, .l-products__lineup-chart-table table tbody tr td > span {
  height: 100%;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  padding: 0.4rem 0.8rem;
  word-break: break-all;
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table table tbody tr td a, .l-products__lineup-chart-table table tbody tr td > span {
    font-size: 1.3rem;
    padding: 0.8rem;
  }
}
.l-products__lineup-chart-table table tbody tr td a span, .l-products__lineup-chart-table table tbody tr td > span span {
  width: 100%;
}
@media (hover: hover) {
  .l-products__lineup-chart-table table tbody tr td a:hover {
    background-color: var(--color-blue300);
  }
}
.l-products__lineup-chart-table table tbody tr td a span {
  width: 100%;
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table .camera-type {
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 1.6rem;
  }
  .l-products__lineup-chart-table .camera-groups .camera-group {
    padding: 2.4rem 0;
  }
  .l-products__lineup-chart-table .camera-groups .camera-group:nth-child(2n+1) {
    background-color: var(--color-gray100);
  }
  .l-products__lineup-chart-table .camera-groups .camera-group .camera-group-item:nth-child(n+2) {
    margin-top: 2.4rem;
  }
  .l-products__lineup-chart-table .camera-head {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 0.8rem;
    display: flex;
    align-items: center;
    gap: 1.6rem;
  }
  .l-products__lineup-chart-table .camera-head .main {
    font-size: 1.8rem;
  }
  .l-products__lineup-chart-table .camera-head .sub {
    font-size: 1.4rem;
  }
}
.l-products__lineup-chart-table#lineup-chart-linecamera {
  border: none;
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera {
    margin-top: 4rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera {
    margin-top: 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera {
    overflow: auto;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera table {
    width: calc(13rem + (100% - 13rem) / 10 * 4);
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera table {
    width: 100%;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera table {
    min-width: initial;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera table thead tr th {
    width: 25%;
    font-size: 1.2rem;
    color: var(--color-white);
    background-color: var(--color-gray600);
    border-right: 1px solid var(--color-gray500);
    padding: 0.8rem;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera table thead tr th:first-child {
    width: 13rem;
  }
}
.l-products__lineup-chart-table#lineup-chart-linecamera table tbody tr th {
  padding: 0.4rem 0.5rem;
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera table tbody tr td {
    padding-top: 1.35rem;
    padding-bottom: 1.35rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-table#lineup-chart-linecamera table tbody tr td {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
  }
}
.l-products__lineup-chart-table#lineup-chart-linecamera table tbody tr td a::after {
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  border: 2px solid var(--color-blue1000);
  border-radius: 50%;
  display: inline-block;
  margin: auto;
}
.l-products__lineup-chart-table#lineup-chart-linecamera .camera-groups-linecamera .camera-group-linecamera:nth-child(n+2) {
  margin-top: 2.4rem;
}
.l-products__lineup-chart-notes {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2;
  background-color: var(--color-gray100);
  border-radius: 0.8rem;
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-notes {
    padding: 3.2rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-notes {
    padding: 2.4rem 1.6rem;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-notes {
    margin-top: 4rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-notes {
    margin-top: 4.8rem;
  }
}
@media only screen and (min-width:769px) {
  .l-products__lineup-chart-notes ul + ul {
    margin-top: 2.4rem;
  }
}
@media only screen and (max-width:768px) {
  .l-products__lineup-chart-notes ul + ul {
    margin-top: 2.4rem;
  }
} /************************************************************
SCREEN RESPONSIVE
*************************************************************/
#description p {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.7;
}
@media only screen and (min-width:769px) {
  #description p {
    margin-top: 6.4rem;
  }
}
@media only screen and (max-width:768px) {
  #description p {
    margin-top: 4.8rem;
  }
}
@media only screen and (min-width:769px) {
  #description p {
    padding-bottom: 8rem;
  }
}
@media only screen and (max-width:768px) {
  #description p {
    padding-bottom: 6.4rem;
  }
} /************************************************************
SCREEN RESPONSIVE
*************************************************************/
.comparison-table__title {
  margin-bottom: 4.8rem;
}
.comparison-table .table-wrap {
  margin-top: 4.8rem;
}
.comparison-table table {
  width: 100%;
  min-width: 105.6rem;
  table-layout: fixed;
  border-collapse: collapse;
}
.comparison-table table tr th, .comparison-table table tr td {
  font-size: 1.1rem;
  line-height: 1.5;
  font-weight: 400;
}
.comparison-table table tr th:nth-child(1) {
  font-weight: 500;
}
.comparison-table table tr td {
  vertical-align: top;
  color: var(--color-gray900);
  border-top: 1px solid var(--color-gray300);
  border-right: 1px solid var(--color-gray300);
  padding: 0.8rem;
}
.comparison-table table tr:nth-child(2n+1) th:nth-child(1) {
  color: var(--color-white);
  background-color: var(--color-gray800);
}
.comparison-table table tr:nth-child(2n+1) td {
  background-color: var(--color-gray200);
}
.comparison-table table tr:nth-child(2n+2) th:nth-child(1) {
  color: var(--color-white);
  background-color: var(--color-gray600);
}
.comparison-table table tr:nth-child(1) th:nth-child(1) {
  background-color: var(--color-gray600);
}
.comparison-table table tr:nth-child(1) th:nth-child(n+2) {
  color: var(--color-white);
  background-color: var(--color-blue800);
  border-right: 1px solid var(--color-blue400);
  padding: 1.15rem 0.8rem;
}
.comparison-table table tr:nth-child(2) th, .comparison-table table tr:nth-child(2) th:nth-child(1) {
  color: var(--color-gray900);
  background-color: var(--color-blue100);
  border-right: 1px solid var(--color-gray300);
  padding: 1.15rem 0.8rem;
}
.comparison-table table tr:nth-last-child(1) th, .comparison-table table tr:nth-last-child(1) td {
  border-bottom: 1px solid var(--color-gray300);
}
.comparison-table table ul li {
  padding-left: 1em;
  position: relative;
}
.comparison-table table ul li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

/************************************************************
SCREEN RESPONSIVE
*************************************************************/
@media only screen and (min-width:769px) {
  .lineup-chart {
    margin-top: 15rem;
  }
}
@media only screen and (max-width:768px) {
  .lineup-chart {
    margin-top: 6.4rem;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJfZm91bmRhdGlvbi9fdmFycy5zY3NzIiwiX2ZvdW5kYXRpb24vX2Z1bmN0aW9uLnNjc3MiLCJfZm91bmRhdGlvbi9fbWVkaWEuc2NzcyIsIl9mb3VuZGF0aW9uL19taXhpbi5zY3NzIiwiX29iamVjdC9fY29tcG9uZW50L190YWJsZS13cmFwLnNjc3MiLCJfZm91bmRhdGlvbi9faWNvbmZvbnQuc2NzcyIsIl9sYXlvdXQvX3Byb2R1Y3RzX19saW5ldXAtY2hhcnQuc2NzcyIsInBhZ2VzL2Nob2ljZS9pbmRleF9zdHlsZXMvX2Rlc2NyaXB0aW9uLnNjc3MiLCJwYWdlcy9jaG9pY2UvaW5kZXhfc3R5bGVzL19jb21wYXJpc29uLXRhYmxlLnNjc3MiLCJwYWdlcy9jaG9pY2UvaW5kZXhfc3R5bGVzL19saW5ldXAtY2hhcnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBTUE7RUFDRTtFQUNBO0VBR0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQy9CRjtBQUFBO0FBQUE7QUNtQkE7QUFBQTtBQUFBO0FDbEJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQWlDQTtBQUFBO0FBQUE7QUM5Q0E7RUFDRTtFQUNBOztBQUVBO0VBSkY7SUFLSTs7O0FGSkY7RUVERjtJQVFJOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUVGO0VBQ0U7RUFDQTtFQUNBOztBQUNBO0VBSkY7SUFLSTs7O0FGdkNKO0VFa0NBO0lBUUk7OztBQUdGO0VBQ0U7RUFDQTs7QUFHSjtFQUNFOztBQUNBO0VBRkY7SUFHSTs7O0FG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QUNFO0VBQ0E7O0FBTUY7RUFDRTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQU1GO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBS0o7RUFDRTs7QUFLSjtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7O0FDMUZWO0FBQUE7QUFBQTtBUEhFO0VPT0Y7SVBEZ0IsWU9Fa0I7OztBUExoQztFT0lGO0lQQWdCLFlPQ3lCIiwiZmlsZSI6InBhZ2VzL2Nob2ljZS9pbmRleC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIkc2NyZWVuX3NwOlwic2NyZWVuIGFuZCAobWF4LXdpZHRoOjc2OHB4KVwiO1xuJHNjcmVlbl9wYzpcInNjcmVlbiBhbmQgKG1pbi13aWR0aDo3NjlweClcIjtcblxuJHNjcmVlbl9oZWFkZXJfc3A6XCJzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTA4MHB4KVwiO1xuJHNjcmVlbl9oZWFkZXJfcGM6XCJzY3JlZW4gYW5kIChtaW4td2lkdGg6MTA4MXB4KVwiO1xuXG46cm9vdCB7XG4gIC0tcGMtY29udGVudHMtbWF4LXdpZHRoOjEyMDBweDsgLy9QQ+OBruOCs+ODs+ODhuODs+ODhOW5heOBruacgOWkp1xuICAtLXotaW5kZXgtaGVhZGVyOjEwMDA7IC8v44OY44OD44OA44O844Guei1pbmRleFxuXG4gIC8v6YCP6YGO44KE6Imy5aSJ5pu057O744Gu44Ki44OL44Oh44O844K344On44Oz5YCkXG4gIC0taG92ZXItb3BhY2l0eS1kdXJhdGlvbjouMnM7XG4gIC0taG92ZXItb3BhY2l0eS1lYXNlOmVhc2U7XG5cbiAgLS1jb2xvci13aGl0ZTojRkZGRkZGO1xuICAtLWNvbG9yLWJsYWNrOiMwMDAwMDA7XG4gIC0tY29sb3ItZ3JheTkwMDojMjIyMjIyO1xuICAtLWNvbG9yLWdyYXk4MDA6IzMyMzIzMjtcbiAgLS1jb2xvci1ncmF5NjAwOiM1MDUwNTA7XG4gIC0tY29sb3ItZ3JheTUwMDojNjY2NjY2O1xuICAtLWNvbG9yLWdyYXk0MDA6I0IwQjBCMDtcbiAgLS1jb2xvci1ncmF5MzAwOiNEN0Q3RDc7XG4gIC0tY29sb3ItZ3JheTIwMDojRURFREVEO1xuICAtLWNvbG9yLWdyYXkxMDA6I0YwRjBGMDtcbiAgLS1jb2xvci1ibHVlMTIwMDojMUQ2MEIwO1xuICAtLWNvbG9yLWJsdWUxMDAwOiMyNTg4RkU7XG4gIC0tY29sb3ItYmx1ZTkwMDojMjU3N0Q4O1xuICAtLWNvbG9yLWJsdWU4MDA6IzQwODVENjtcbiAgLS1jb2xvci1ibHVlNDAwOiNBNkM1RTU7XG4gIC0tY29sb3ItYmx1ZTMwMDojQzBEOUYyO1xuICAtLWNvbG9yLWJsdWUyMDA6I0VBRjNGQztcbiAgLS1jb2xvci1ibHVlMTAwOiNGMEY2RkI7XG4gIC0tY29sb3ItZ3JlZW4xMDA6I0RERjFEOTtcbiAgLS1jb2xvci1yZWQ5MDA6I0VFMkYzNDtcbn1cblxuXG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbi8qXG5weOOCknZ344Gr5aSJ5o+bXG4qL1xuQGZ1bmN0aW9uIGdldHZ3KCRzaXplLCAkdmlld3BvcnQ6MzkwKXtcbiAgJHJhdGU6IG1hdGguZGl2KDEwMCwkdmlld3BvcnQpO1xuICBAcmV0dXJuICRyYXRlICogJHNpemUgKiAxdnc7XG59XG5cbi8v77yF44KS6L+U44GZXG5AZnVuY3Rpb24gZ2V0cGVyKCRzaXplLCAkcGFyZW50KXtcbiAgJHJhdGU6IG1hdGguZGl2KDEwMCwkcGFyZW50KTtcbiAgQHJldHVybiAkcmF0ZSAqICRzaXplICogMSU7XG59XG5cbi8v5Y2K5YiG44Gu44K144Kk44K644KScHjjgafov5TjgZlcbkBmdW5jdGlvbiBnZXRoYWxmKCRzaXplKXtcbiAgQHJldHVybiAkc2l6ZSAqIDAuNXB4O1xufVxuXG4vL3JlbeOCkui/lOOBmVxuQGZ1bmN0aW9uIGdldHJlbSgkc2l6ZSwgJGJhc2U6IDE2KSB7XG5cdEByZXR1cm4gbWF0aC5kaXYoJHNpemUsICRiYXNlKSArIHJlbTtcbn1cblxuLy9saW5lLWhlaWdodOOBrmVt44KS6KiI566XXG5AZnVuY3Rpb24gZ2V0bGhlbSgkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpIHtcblx0QHJldHVybiBtYXRoLmRpdigkbGluZS1oZWlnaHQsJGZvbnQtc2l6ZSkgKyBlbTtcbn1cblxuLy9sZXR0ZXItc3BhY2luZ+OBrmVt44KS6KiI566XXG5AZnVuY3Rpb24gZ2V0bHNlbSgkZm9udC1zaXplLCAkcHgpIHtcblx0QHJldHVybiBtYXRoLmRpdigkcHgsJGZvbnQtc2l6ZSkgKyBlbTtcbn0iLCJAdXNlIFwiLi4vX2ZvdW5kYXRpb24vdmFyc1wiIGFzIHZhcnM7XG5cbkBtaXhpbiBwYyB7XG4gIEBtZWRpYSBvbmx5ICN7dmFycy4kc2NyZWVuX3BjfSB7IEBjb250ZW50OyB9XG59XG5AbWl4aW4gc3Age1xuICBAbWVkaWEgb25seSAje3ZhcnMuJHNjcmVlbl9zcH0geyBAY29udGVudDsgfVxufVxuQG1peGluIHJlc3AoJGF0ciwgJHBjLCAkc3ApIHtcbiAgQGluY2x1ZGUgcGMgeyAjeyRhdHJ9OiAkcGM7IH1cbiAgQGluY2x1ZGUgc3AgeyAjeyRhdHJ9OiAkc3A7IH1cbn1cblxuQG1peGluIGhvdmVye1xuICBAbWVkaWEoaG92ZXI6aG92ZXIpIHtcbiAgICAmOmhvdmVye1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmhlYWRlcueUqFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuQG1peGluIGhlYWRlcl9wYyB7XG4gIEBtZWRpYSBvbmx5ICN7dmFycy4kc2NyZWVuX2hlYWRlcl9wY30geyBAY29udGVudDsgfVxufVxuQG1peGluIGhlYWRlcl9zcCB7XG4gIEBtZWRpYSBvbmx5ICN7dmFycy4kc2NyZWVuX2hlYWRlcl9zcH0geyBAY29udGVudDsgfVxufVxuQG1peGluIGhlYWRlcl9yZXNwKCRhdHIsICRwYywgJHNwKSB7XG4gIEBpbmNsdWRlIGhlYWRlcl9wYyB7ICN7JGF0cn06ICRwYzsgfVxuICBAaW5jbHVkZSBoZWFkZXJfc3AgeyAjeyRhdHJ9OiAkc3A7IH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcbkB1c2UgXCIuL21lZGlhXCIgYXMgbWVkaWE7XG5cbi8qXG7jg6Hjg4fjgqPjgqLjgq/jgqjjg6pcbuiomOi/sOS+i1xuYm9keXtcbiAgQGluY2x1ZGUgbWl4aW4ubXMtdygnbWF4JywxMjAwKXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gIH1cbn1cbiovXG5AbWl4aW4gbXMtdygkbWF4bWluLCR2YWwpe1xuICBAbWVkaWEgc2NyZWVuIGFuZCAoI3skbWF4bWlufS13aWR0aDojeyR2YWx9cHgpe1xuICAgIEBjb250ZW50O1xuICB9O1xufVxuXG4vKlxu44OV44Kp44O844Og44Oq44K744OD44OIXG4qL1xuQG1peGluIGZvcm0tcmVzZXR7XG4gIGJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgY29sb3I6aW5oZXJpdDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgdGV4dGFyZWF7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxufVxuXG4vKlxuSUNPTiBGT05UXG4qL1xuXG5AbWl4aW4gaWNvbnMtZm9udHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJpY29uc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuQG1peGluIGljb25zLXh7IGNvbnRlbnQ6IFwiXFxFQTA0XCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1mYWNlYm9va3sgY29udGVudDogXCJcXEVBMDVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWluc3RhZ3JhbXsgY29udGVudDogXCJcXEVBMDZcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXlvdXR1YmV7IGNvbnRlbnQ6IFwiXFxFQTA3XCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1saW5leyBjb250ZW50OiBcIlxcRUEwOFwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5cbkBtaXhpbiBkcm9wc2hhZG93RnJhbWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDEuNnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBtZWRpYS5yZXNwKHBhZGRpbmcsNHJlbSwyLjRyZW0gMS42cmVtKTtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUxMjAwKTtcbiAgICBmaWx0ZXI6IGJsdXIoMS42cmVtKTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjZyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC44cmVtO1xuICAgIGxlZnQ6IDAuOHJlbTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjI7XG4gIH1cbn1cblxuQG1peGluIGhpZGUge1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufSIsIkB1c2UgXCIuLi8uLi9fZm91bmRhdGlvbi92YXJzXCIgYXMgdmFycztcbkB1c2UgXCIuLi8uLi9fZm91bmRhdGlvbi9mdW5jdGlvblwiIGFzIGZ1bmM7XG5AdXNlIFwiLi4vLi4vX2ZvdW5kYXRpb24vbWl4aW5cIiBhcyBtaXhpbjtcbkB1c2UgXCIuLi8uLi9fZm91bmRhdGlvbi9tZWRpYVwiIGFzIG1lZGlhO1xuXG4udGFibGUtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAgIHdpZHRoOiBjYWxjKHZhcigtLXZ3LW5vc2NyYmFyKSAtICh2YXIoLS12dy1ub3NjcmJhcikgKiAoMSAtIDAuODI4MSkgLyAyKSk7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEuc3Age1xuICAgIHdpZHRoOiBjYWxjKHZhcigtLXZ3LW5vc2NyYmFyKSAtICgodmFyKC0tdnctbm9zY3JiYXIpIC0gZnVuYy5nZXR2dygzNDIpKSAvIDIpKTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC4zKSwgdHJhbnNwYXJlbnQpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICB9XG5cbiAgJi5zaGFkb3ctbGVmdDo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaGFkb3ctcmlnaHQ6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC50YWJsZS1pbm5lciB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAgICAgY3Vyc29yOiBncmFiO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS5zcCB7XG4gICAgICBjdXJzb3I6IGdyYWI7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICBjdXJzb3I6IGdyYWJiaW5nO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgfVxuICB9XG4gIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAgICAgbWluLXdpZHRoOiAxMDUuNnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEuc3Age1xuICAgICAgbWluLXdpZHRoOiAxMDUuNnJlbTtcbiAgICB9XG4gIH1cbn0iLCJbY2xhc3NePVwiaWNvbnMtXCJdLCBbY2xhc3MqPVwiIGljb25zLVwiXXtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbnNcIjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuLmljb25zLWFycm93LTE6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMDFcIiB9XG4uaWNvbnMtYXJyb3ctMjpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwMlwiIH1cbi5pY29ucy1zZWFyY2g6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMDNcIiB9XG4uaWNvbnMtbGFuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwNFwiIH1cbi5pY29ucy1jaXJjbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwNVwiIH1cbi5pY29ucy1jaGVjazpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwNlwiIH1cbi5pY29ucy1jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwN1wiIH1cbi5pY29ucy1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwOFwiIH1cbi5pY29ucy1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwOVwiIH1cbi5pY29ucy1ibGFuazpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwQVwiIH1cbi5pY29ucy1jaXJjbGUtbWludXM6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMEJcIiB9XG4uaWNvbnMtYmxkZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwQ1wiIH1cbi5pY29ucy1wZW46YmVmb3JlIHsgY29udGVudDogXCJcXEVBMERcIiB9XG4uaWNvbnMtZmxvdzpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwRVwiIH1cbi5pY29ucy1wcml6ZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUEwRlwiIH1cbi5pY29ucy1nbG9iYWw6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMTBcIiB9XG4uaWNvbnMtc3RyZW5ndGg6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMTFcIiB9XG4uaWNvbnMtdGVsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTEyXCIgfVxuLmljb25zLW1haWw6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMTNcIiB9XG4uaWNvbnMtd2FrYWJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE0XCIgfVxuLmljb25zLWZhcTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUExNVwiIH1cbi5pY29ucy14OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE2XCIgfVxuLmljb25zLWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE3XCIgfVxuLmljb25zLWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcRUExOFwiIH1cbi5pY29ucy15b3V0dWJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxFQTE5XCIgfVxuLmljb25zLWxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXEVBMUFcIiB9XG5cblxuLypcbm1peGluXG4qL1xuXG5AbWl4aW4gaWNvbnMtZm9udHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbnNcIjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AbWl4aW4gaWNvbnMtYXJyb3ctMSB7IGNvbnRlbnQ6IFwiXFxFQTAxXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1hcnJvdy0yIHsgY29udGVudDogXCJcXEVBMDJcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXNlYXJjaCB7IGNvbnRlbnQ6IFwiXFxFQTAzXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1sYW5nIHsgY29udGVudDogXCJcXEVBMDRcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNpcmNsZS1wbHVzIHsgY29udGVudDogXCJcXEVBMDVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNoZWNrIHsgY29udGVudDogXCJcXEVBMDZcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNsb3NlIHsgY29udGVudDogXCJcXEVBMDdcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXNsYXNoIHsgY29udGVudDogXCJcXEVBMDhcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWRvd25sb2FkIHsgY29udGVudDogXCJcXEVBMDlcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWJsYW5rIHsgY29udGVudDogXCJcXEVBMEFcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWNpcmNsZS1taW51cyB7IGNvbnRlbnQ6IFwiXFxFQTBCXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1ibGRnIHsgY29udGVudDogXCJcXEVBMENcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXBlbiB7IGNvbnRlbnQ6IFwiXFxFQTBEXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1mbG93IHsgY29udGVudDogXCJcXEVBMEVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXByaXplIHsgY29udGVudDogXCJcXEVBMEZcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLWdsb2JhbCB7IGNvbnRlbnQ6IFwiXFxFQTEwXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy1zdHJlbmd0aCB7IGNvbnRlbnQ6IFwiXFxFQTExXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy10ZWwgeyBjb250ZW50OiBcIlxcRUExMlwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtbWFpbCB7IGNvbnRlbnQ6IFwiXFxFQTEzXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cbkBtaXhpbiBpY29ucy13YWthYmEgeyBjb250ZW50OiBcIlxcRUExNFwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtZmFxIHsgY29udGVudDogXCJcXEVBMTVcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXggeyBjb250ZW50OiBcIlxcRUExNlwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtZmFjZWJvb2sgeyBjb250ZW50OiBcIlxcRUExN1wiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtaW5zdGFncmFtIHsgY29udGVudDogXCJcXEVBMThcIjsgQGluY2x1ZGUgaWNvbnMtZm9udDsgfVxuQG1peGluIGljb25zLXlvdXR1YmUgeyBjb250ZW50OiBcIlxcRUExOVwiOyBAaW5jbHVkZSBpY29ucy1mb250OyB9XG5AbWl4aW4gaWNvbnMtbGluZSB7IGNvbnRlbnQ6IFwiXFxFQTFBXCI7IEBpbmNsdWRlIGljb25zLWZvbnQ7IH1cblxuIiwiQHVzZSBcIi4uL19mb3VuZGF0aW9uL3ZhcnNcIiBhcyB2YXJzO1xuQHVzZSBcIi4uL19mb3VuZGF0aW9uL2Z1bmN0aW9uXCIgYXMgZnVuYztcbkB1c2UgXCIuLi9fZm91bmRhdGlvbi9taXhpblwiIGFzIG1peGluO1xuQHVzZSBcIi4uL19mb3VuZGF0aW9uL21lZGlhXCIgYXMgbWVkaWE7XG5AdXNlIFwiLi4vX2ZvdW5kYXRpb24vaWNvbmZvbnRcIiBhcyBpY29ucztcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuU0NSRUVOIFJFU1BPTlNJVkVcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5sLXByb2R1Y3RzX19saW5ldXAtY2hhcnR7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5OTAwKTtcbiAgQGluY2x1ZGUgbWVkaWEucmVzcChwYWRkaW5nLWJvdHRvbSwxNXJlbSwxMHJlbSk7XG4gIEBpbmNsdWRlIG1lZGlhLnJlc3AobWFyZ2luLXRvcCw0cmVtLDRyZW0pO1xuICAmLXRleHQge1xuICAgIC50ZXh0MSB7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMjtcbiAgICB9XG4gICAgLnRleHQyIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AobWFyZ2luLXRvcCwwLDEuNnJlbSk7XG4gICAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5sYWJlbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNHJlbSArIDMuMnJlbSArIDAuNHJlbSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDMuMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMC40cmVtO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICB9XG4gICAgICAmW2RhdGEtY29sb3I9XCJibHVlXCJdOjphZnRlciB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUyMDApOyB9XG4gICAgICAmW2RhdGEtY29sb3I9XCJncmVlblwiXTo6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbjEwMCk7IH1cbiAgICAgICZbZGF0YS1jb2xvcj1cInJlZFwiXTo6YWZ0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXJlZDkwMCk7IH1cbiAgICB9XG4gIH1cbiAgJi10YWJsZXtcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1hcmdpbi10b3AsMS42cmVtLDIuNHJlbSk7XG4gICAgLnZpZXctcGMgeyBAaW5jbHVkZSBtZWRpYS5zcCB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC52aWV3LXNwIHsgQGluY2x1ZGUgbWVkaWEucGMgeyBkaXNwbGF5OiBub25lOyB9IH1cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5wYyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKC0tY29sb3ItZ3JheTUwMCk7XG4gICAgICB9XG4gICAgICB0aGVhZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLnBjIHtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5ODAwKTtcbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAxM3JlbSkgLyAxMCk7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEuMnJlbSAwO1xuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXk4MDApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6bnRoLWNoaWxkKG4rMil7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5NjAwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXk2MDApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmR1bW15IHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAtIDEzcmVtKSAvIDEwKTtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICAgICAgICAgICAgKyB0aHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwcmVtO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGJvZHkge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgJi5ib3JkZXJUb3Age1xuICAgICAgICAgICAgdGgsdGR7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnBjIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhcigtLWNvbG9yLWdyYXk1MDApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bm90KC5ib3JkZXJUb3ApIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKG4rMil7XG4gICAgICAgICAgICAgIHRoLHRke1xuICAgICAgICAgICAgICAgICY6bm90KC5uZXdUZWNoKXtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnBjIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnN1YiB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICArIHRoIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoLS1jb2xvci1ncmF5NTAwKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB0aCx0ZHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5wYyB7XG4gICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5wYyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnBjIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoLS1jb2xvci1ncmF5NTAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgdGgge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwIHtcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTYwMCk7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwIHsgbWluLWhlaWdodDogNC44cmVtOyB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcCB7IGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7IH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApOyB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aGFzKGEpIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZTIwMCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibHVlMzAwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zb29ue1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5wYyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbjEwMCk7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID5zcGFuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5wYyB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcCB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhLCA+c3BhbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4xMDApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubmV3VGVjaHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMXB4KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDFweCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItcmVkOTAwKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJi5zb29uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS5wYyB7XG4gICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbjEwMCk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc21hbGwge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhLCA+c3BhbiB7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuNHJlbSAwLjhyZW07XG4gICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEuc3Age1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibHVlMzAwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyBPbmx5IFNQXG4gICAgQGluY2x1ZGUgbWVkaWEuc3Age1xuICAgICAgLmNhbWVyYS10eXBlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gICAgICB9XG4gICAgICAuY2FtZXJhLWdyb3VwcyB7XG4gICAgICAgIC5jYW1lcmEtZ3JvdXAge1xuICAgICAgICAgIHBhZGRpbmc6IDIuNHJlbSAwO1xuICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkxMDApO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FtZXJhLWdyb3VwLWl0ZW0ge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQobisyKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jYW1lcmEtaGVhZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAubWFpbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnN1YiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJiNsaW5ldXAtY2hhcnQtbGluZWNhbWVyYSB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKG1hcmdpbi10b3AsNHJlbSwyLjRyZW0pO1xuICAgICAgQGluY2x1ZGUgbWVkaWEuc3AgeyBvdmVyZmxvdzogYXV0bzsgfVxuICAgICAgdGFibGUge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS5wYyB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTNyZW0gKyAoKDEwMCUgLSAxM3JlbSkgLyAxMCkgKiA0KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS5zcCB7IHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwIHsgbWluLXdpZHRoOiBpbml0aWFsOyB9XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTYwMCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTUwMCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnBjIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3JlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMC40cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEucGMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxLjM1cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjM1cmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLnNwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMC44cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjhyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlMTAwMCk7XG4gICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBPbmx5IFNQXG4gICAgICAuY2FtZXJhLWdyb3Vwcy1saW5lY2FtZXJhIHtcbiAgICAgICAgLmNhbWVyYS1ncm91cC1saW5lY2FtZXJhIHtcbiAgICAgICAgICAmOm50aC1jaGlsZChuKzIpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi1ub3Rlc3tcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkxMDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBAaW5jbHVkZSBtZWRpYS5yZXNwKHBhZGRpbmcsMy4ycmVtLDIuNHJlbSAxLjZyZW0pO1xuICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AobWFyZ2luLXRvcCw0cmVtLDQuOHJlbSk7XG4gICAgdWwge1xuICAgICAgKyB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AobWFyZ2luLXRvcCwyLjRyZW0sMi40cmVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vdmFyc1wiIGFzIHZhcnM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vZnVuY3Rpb25cIiBhcyBmdW5jO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL21peGluXCIgYXMgbWl4aW47XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWVkaWFcIiBhcyBtZWRpYTtcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9pY29uZm9udFwiIGFzIGljb25zO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gUkVTUE9OU0lWRVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuI2Rlc2NyaXB0aW9uIHtcbiAgcCB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AobWFyZ2luLXRvcCwgNi40cmVtLCA0LjhyZW0pO1xuICAgIEBpbmNsdWRlIG1lZGlhLnJlc3AocGFkZGluZy1ib3R0b20sIDhyZW0sIDYuNHJlbSk7XG4gIH1cbn0iLCJAdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vdmFyc1wiIGFzIHZhcnM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vZnVuY3Rpb25cIiBhcyBmdW5jO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL21peGluXCIgYXMgbWl4aW47XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWVkaWFcIiBhcyBtZWRpYTtcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9pY29uZm9udFwiIGFzIGljb25zO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5TQ1JFRU4gUkVTUE9OU0lWRVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmNvbXBhcmlzb24tdGFibGUge1xuICAmX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNC44cmVtO1xuICB9XG4gIC50YWJsZS13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiA0LjhyZW07XG4gIH1cbiAgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMTA1LjZyZW07XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIHRyIHtcbiAgICAgIHRoLCB0ZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgfVxuICAgICAgdGgge1xuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheTkwMCk7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JheTMwMCk7XG4gICAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgdGgge1xuICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5ODAwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXkyMDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgybisyKSB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JheTYwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmF5NjAwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQobisyKSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZTgwMCk7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlNDAwKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMTVyZW0gMC44cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgJiwgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXk5MDApO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZTEwMCk7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ncmF5MzAwKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMTVyZW0gMC44cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyYXkzMDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAn44O7JztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi92YXJzXCIgYXMgdmFycztcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9mdW5jdGlvblwiIGFzIGZ1bmM7XG5AdXNlIFwiLi4vLi4vLi4vX2ZvdW5kYXRpb24vbWl4aW5cIiBhcyBtaXhpbjtcbkB1c2UgXCIuLi8uLi8uLi9fZm91bmRhdGlvbi9tZWRpYVwiIGFzIG1lZGlhO1xuQHVzZSBcIi4uLy4uLy4uL19mb3VuZGF0aW9uL2ljb25mb250XCIgYXMgaWNvbnM7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblNDUkVFTiBSRVNQT05TSVZFXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ubGluZXVwLWNoYXJ0IHtcbiAgQGluY2x1ZGUgbWVkaWEucmVzcChtYXJnaW4tdG9wLCAxNXJlbSwgNi40cmVtKTtcbn0iXX0= */