/* web/client/vendor/opensans/OpenSans.css */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:
    local("Open Sans Regular"),
    local("OpenSans-Regular"),
    url("./OpenSans_v17_Latin_Regular-YQCXHXU4.woff2") format("woff2"),
    url("./OpenSans_v17_Latin_Regular-MSAAAJKJ.woff") format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src:
    local("Open Sans Italic"),
    local("OpenSans-Italic"),
    url("./OpenSans_v17_Latin_Italic-D4E22K6Z.woff2") format("woff2"),
    url("./OpenSans_v17_Latin_Italic-PP4AH22B.woff") format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src:
    local("Open Sans Bold"),
    local("OpenSans-Bold"),
    url("./OpenSans_v17_Latin_Bold-FGEZJDH6.woff2") format("woff2"),
    url("./OpenSans_v17_Latin_Bold-TZQ6IT5M.woff") format("woff");
}
@font-face {
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src:
    local("Open Sans Bold Italic"),
    local("OpenSans-BoldItalic"),
    url("./OpenSans_v17_Latin_BoldItalic-A7WB22UP.woff2") format("woff2"),
    url("./OpenSans_v17_Latin_BoldItalic-524AIUJJ.woff") format("woff");
}

/* web/client/styles/base.css */
:root {
  --blue-500: #0BA5EC;
  --green-50: #eef8eb;
  --green-100: #E0F2E0;
  --green-300: #86c36a;
  --green-400: #76B35A;
  --green-500: #4CAF50;
  --gray-100: #F9FAFB;
  --gray-200: #EAECF0;
  --gray-300: #D0D5DD;
  --gray-400: #999;
  --gray-600: #555555;
  --gray-700: #444444;
  --gray-800: #333333;
  --orange-500: #f6751f;
}
html {
  height: 100%;
}
body {
  height: 100%;
  margin: 0;
  padding: 0;
  background: white;
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  color: #202020;
}
#page {
  width: 100%;
  height: 100%;
}
*:focus {
  border-color: #76b35a;
}
canvas:focus {
  border: none;
  outline: none;
}
a {
  cursor: pointer;
  color: var(--color, gray);
  text-decoration: none;
}
a:hover {
  color: var(--color, #79a63a);
}
button {
  padding: 0.14em 0.71em 0.21em 0.71em;
  background: #76b35a;
  border: 1px solid #76b35a;
  border-radius: 3px;
  color: white;
  font-family: inherit;
  font-size: 1em;
  cursor: pointer;
  white-space: nowrap;
}
button::-moz-focus-inner {
  border: 0;
}
button > img {
  position: relative;
  top: 3px;
  width: 16px;
  height: 16px;
  filter: invert(100%) sepia(100%) saturate(2%) hue-rotate(243deg) brightness(104%) contrast(101%);
}
button:not(:disabled):not(.active):hover {
  filter: brightness(80%) contrast(150%);
}
button.secondary {
  background: #ddd;
  border: 1px solid #ddd;
  color: black;
}
button.secondary:not(.insist) > img {
  filter: none;
}
button.danger {
  background: #d33410;
  border-color: #d33410;
  --color: white;
  color: var(--color);
}
button.insist {
  background: #d33410 !important;
  border-color: #d33410 !important;
  --color: white;
  color: var(--color) !important;
  transition:
    --color 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease;
}
button.danger.insist {
  background: #951a0b !important;
  border-color: #951a0b !important;
}
button.small {
  background: #ddd;
  border: 1px solid #ddd;
  color: black;
  font-size: 0.7em;
}
button.small > img {
  top: 2px;
  width: 12px;
  height: 12px;
}
button.small:not(.insist) > img {
  filter: none;
}
button.active {
  filter: invert(100%);
}
button.down {
  background: #000;
  color: #fff;
}
button:disabled {
  filter: saturate(0%) contrast(50%);
  cursor: not-allowed;
}
button.on {
  border: 4px solid #76b35a;
}
button.off {
  opacity: 0.6;
}
button.big {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  border-radius: 8px;
}
button.big > img {
  top: inherit;
}
button.sm {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px;
  min-height: auto;
  border-radius: 8px;
}
button.sm > img {
  top: inherit;
  width: 16px;
  height: 16px;
}
button.link {
  padding: 0;
  background-color: inherit;
  border: 0;
}
button.link.insist {
  padding: 0;
  color: #fff;
}
button.link.insist > img {
  filter: brightness(0) invert(100%) brightness(200%);
}
button.flat {
  width: fit-content;
  align-self: center;
  padding: 0;
  background-color: inherit;
  border: 0;
}
button.flat > img {
  width: 15px;
  height: 15px;
  filter: none;
  opacity: 0.7;
}
.toggle {
  display: flex;
  margin: 4px auto;
}
.toggle > button {
  background: #ddd;
  border: 1px solid #ddd;
  color: black;
}
.toggle > button.active {
  filter: none;
  background: #76b35a;
  border: 1px solid #76b35a;
  color: white;
  cursor: inherit;
}
.toggle > button:disabled {
  color: #cccccc;
}
.toggle > button:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.toggle > button:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.section {
  display: flex;
  margin-bottom: 6px;
  padding-bottom: 6px;
  font-weight: bold;
  color: #525461;
  text-align: left;
  border-bottom: 1px solid #ededf0;
  align-items: end;
}
* + .section {
  margin-top: 12px;
}
.busy {
  position: relative;
  cursor: wait !important;
}
button.busy,
img.busy,
.busy > img {
  opacity: 0.2 !important;
  color: rgba(0, 0, 0, 0) !important;
  background-image: none !important;
}
button.busy * {
  visibility: hidden;
}
img.busy,
.busy > img {
  animation: busy_spin 0.8s ease-in-out infinite;
}
button.busy::after {
  position: absolute;
  top: calc(50% - 10px);
  left: calc(50% - 10px);
  content: " ";
  display: block;
  width: 12px;
  height: 12px;
  margin: 1px;
  border-radius: 50%;
  border: 3px solid black;
  border-color: black transparent black transparent;
  animation: busy_spin 0.8s ease-in-out infinite;
}
@keyframes busy_spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.recorded-path-saving-dialog {
  min-width: min(360px, calc(100vw - 32px));
}
.recorded-path-saving {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 32px;
  font-size: 1.15rem;
  font-weight: bold;
  text-align: center;
}
.recorded-path-saving-hourglass {
  width: 42px;
  height: 42px;
  border: 5px solid currentColor;
  border-color: currentColor transparent currentColor transparent;
  border-radius: 50%;
  animation: busy_spin 0.8s ease-in-out infinite;
}
hr {
  margin: 4px auto;
  width: 90%;
  border: none;
  border-bottom: 1px solid #ededf0;
}
input,
textarea {
  padding: 4px 5px;
  background: white;
  border: 1px solid #ededf0;
  border-width: 0.5px;
  border-radius: 3px;
  font-family: inherit;
  font-size: 0.94em;
}
input[type=text],
input[type=password] {
  width: 160px;
  max-width: 100%;
}
input[type=number] {
  width: 6em;
  max-width: 100%;
}
label:has(input:is([type=checkbox], [type=radio]):not(:disabled)) {
  cursor: pointer;
}
input:is([type=checkbox], [type=radio]) {
  margin-top: 0;
}
input:is([type=checkbox], [type=radio]):not(:disabled) {
  cursor: pointer;
}
input[type=file] {
  border: none;
}
input:disabled {
  background-color: #eee;
}
:not(form):invalid {
  box-shadow: none;
}
:not(form):-moz-submit-invalid {
  box-shadow: none;
}
:not(form):-moz-ui-invalid {
  box-shadow: none;
}
label:has(input:required) > span:first-child::after {
  content: " *";
  color: red;
  font-weight: bold;
}
form.submitted input:invalid {
  background-color: #f9e4df !important;
  border-color: #d33410 !important;
  outline: 1px solid #d33410 !important;
  color: #d33410 !important;
}
select[multiple] {
  padding: 3px 6px 3px 6px;
  border: 1px solid #ededf0;
  border-width: 0.5px;
  border-radius: 3px;
  font-family: inherit;
  font-size: 0.94em;
}
select[multiple]:focus {
  background-color: #79a63a;
  color: #ffffff;
}
select:not([multiple]) {
  padding: 3px 26px 3px 6px;
  border: 1px solid #ededf0;
  border-width: 0.5px;
  border-radius: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: white;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAALCAYAAAB7/H1+AAAA+UlEQVQokdXQsUeFYRTH8XOjSMMlEUlLWi6RqKGhqaGppX/o93vOeV7P4309Q0O8RFNDLw1NDW3pn4iGiERFbtT4Nj1cSbrdu/TlLGf4OI7IvyzGuAjghuR1jHEh79u2nfgyHRGRsixnAJwCePLer/2IhxCWSN6SvPLez3+Dd0REUkrTAE4AvDjnNn51uaouk7wDcFlV1dwAPogek3w1s61hviKqugLgHsBFSmk275ummSJ5RLJvZttDobmiKHokHwCchxC6dV1PkjwE8KaqO39Cc865VZKPAM5IHpB8V9XdkdCc936d5DOAD1XdGwuaM7NNkvtjRUfpEypChFloulwwAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: inherit;
  font-size: 0.94em;
}
select:not([multiple]):not(:disabled):hover,
select:not([multiple]):not(:disabled):focus {
  background: #79a63a;
  border-color: #79a63a;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAALCAYAAAB7/H1+AAABOUlEQVQoU2NkoBFgpJG5DGCDnzx5IsPIyLgXiF//+fMnTE5O7hnUQiY0i/8D+f9fvHjB/ffv33lA9U7//v1zlZGRuYDuQLiLnz17JgeU3AfEz5iZmUPFxcVfohkONvTx48ecQPk5////92BiYvKQlJQ8jc3XKEHx8uVLZaBL9gI13Qa6JlJKSuoNVBNIHdhQoGHTgHKBQDVe0tLSx3AFJUYYv3r1SvX379/7gJqvAC2JlpWVfQfSfPXqVTZBQcFpQGYYEPsALT2EL36wRt7z58+1gC7aA8SnOTk544AGfgOKTQQaFAsUCwS6dA+hSMeZKoARpAuMmN1AA44CXf8UyE4B0kFAl+4gZChIHm9yA0aoEdCFu4DquIE4HOjSTcQYStBgkAJgEJgBDZcFunQtsYYSZTAphiGrBQBoCXwMooaZrwAAAABJRU5ErkJggg==);
  background-repeat: no-repeat;
  background-position: right;
  color: white;
}
select:disabled {
  background-color: #eee;
}
form {
  display: flex;
  flex-direction: column;
  background: #76b35a;
  padding: 0;
  background: white;
  border-radius: 6px;
  box-shadow: #15172526 0px 15px 25px 0px, #15172520 0px 2px 8px 0px;
}
fieldset {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.71em;
  padding: 10px 12px;
  background: #f8f8f8;
  border: none;
  border-radius: 4px;
}
fieldset:disabled > * {
  opacity: 0.2;
}
fieldset > legend {
  font-weight: bold;
  background: #f8f8f8;
}
fieldset.flex {
  flex-direction: row;
}
form label {
  display: flex;
  gap: 0.43em;
  align-items: center;
  height: 2em;
}
form label > span:first-child {
  width: 180px;
}
form label > input:not([type=checkbox]):not([type=radio]),
form label > select,
form label > div {
  flex: 1;
}
.section-name-language-fields {
  display: contents;
}
form button {
  padding: 3px 12px 4px 12px;
  align-self: center;
}
form > .title {
  display: flex;
  position: sticky;
  top: 0;
  z-index: 9999;
  font-weight: bold;
  border-bottom: 1px solid #ededf0;
  border-radius: 6px 6px 0 0;
  background: #eee;
  padding: 10px;
  align-items: center;
  justify-content: center;
  gap: 0.71em;
}
form > .title > span {
  padding-left: 5px;
  flex: 1;
}
form > .title > span + button {
  margin-left: 50px;
}
form > main,
form > .main {
  display: flex;
  box-sizing: border-box;
  max-width: 100%;
  flex-direction: column;
  gap: 0.71em;
  overflow-y: auto;
  padding: 16px;
}
form > .meta {
  display: flex;
  flex-direction: column;
  padding: 14px 80px;
  min-width: 200px;
  border-radius: 3px;
  background: #eee;
  gap: 0.71em;
}
form > .meta > label > span:first-child {
  width: 120px;
}
form > footer,
form > .footer {
  display: flex;
  position: sticky;
  bottom: 0;
  z-index: 9999;
  border-bottom: 1px solid #ededf0;
  border-radius: 0 0 6px 6px;
  background: #eee;
  padding: 10px;
  align-items: center;
  justify-content: right;
  gap: 0.71em;
}
table {
  border-collapse: collapse;
  empty-cells: show;
  border: 1px solid #ededf0;
}
.table-scroll {
  max-width: 100%;
  min-width: 0;
  overflow: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}
table th {
  text-align: left;
  text-transform: uppercase;
  background: #fafafa;
  color: #525461;
  padding: 8px;
  user-select: none;
  -webkit-user-select: none;
}
table.nowrap-head th {
  white-space: nowrap;
}
table td,
table th {
  height: 1.5em;
  padding: 8px;
  vertical-align: middle;
}
table.nopadding td {
  padding: 0;
}
table.no-side-padding td {
  padding: 8px 0;
}
tr {
  background: white;
  border-bottom: 1px solid #ededf0;
  vertical-align: middle;
  position: relative;
}
tr.item.dealer {
  background: var(--green-50);
}
table tbody.whole tr:not(:last-child) {
  border-bottom: none;
}
table tbody.whole:hover tr,
table tbody tr:not(.dragging):not(.nohover):hover {
  background: #76b35a;
  color: white;
  --color: white;
}
table tbody.whole:hover button.company-selector-entity,
table tbody tr:not(.dragging):not(.nohover):hover button.company-selector-entity {
  color: white;
}
table tbody tr.highlight {
  background: #f6751f;
  color: white;
  --color: white;
}
table tr.item.editable:not(.disabled) td:last-child {
  background: url(data:image/webp;base64,UklGRgIFAABXRUJQVlA4WAoAAAAwAAAAPwAAPwAASUNDUKACAAAAAAKgbGNtcwQwAABtbnRyUkdCIFhZWiAH5gAKAAwADQAIAAthY3NwQVBQTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLWxjbXMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1kZXNjAAABIAAAAEBjcHJ0AAABYAAAADZ3dHB0AAABmAAAABRjaGFkAAABrAAAACxyWFlaAAAB2AAAABRiWFlaAAAB7AAAABRnWFlaAAACAAAAABRyVFJDAAACFAAAACBnVFJDAAACFAAAACBiVFJDAAACFAAAACBjaHJtAAACNAAAACRkbW5kAAACWAAAACRkbWRkAAACfAAAACRtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACQAAAAcAEcASQBNAFAAIABiAHUAaQBsAHQALQBpAG4AIABzAFIARwBCbWx1YwAAAAAAAAABAAAADGVuVVMAAAAaAAAAHABQAHUAYgBsAGkAYwAgAEQAbwBtAGEAaQBuAABYWVogAAAAAAAA9tYAAQAAAADTLXNmMzIAAAAAAAEMQgAABd7///MlAAAHkwAA/ZD///uh///9ogAAA9wAAMBuWFlaIAAAAAAAAG+gAAA49QAAA5BYWVogAAAAAAAAJJ8AAA+EAAC2xFhZWiAAAAAAAABilwAAt4cAABjZcGFyYQAAAAAAAwAAAAJmZgAA8qcAAA1ZAAAT0AAACltjaHJtAAAAAAADAAAAAKPXAABUfAAATM0AAJmaAAAmZwAAD1xtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAEcASQBNAFBtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJBTFBIAgEAAAGAo+2Tu2QGUNtYUZlzrvQwPFSZG8AFtKUy3UM7TmHOOVU5zi55Z/6zFdpExARAqxW7pofbfVrc+jLmbqXTm8R3ueFOvx+Y+i03Per3AdO/ZcedTpFIdIzb44Tp37LzskB/8ZoMN++Cqd+y+107B2PPZcGCA6apzDTDnLgtS56Wmh/YMmuaMfRS1v7ZxVgtq99Gt/YHdV9L4D5A2igFzHmrjHLIWVBGOQSvKIfgFeUQvLI5BL8OETwrwV+P00K+169y2Yz/Q5lXNiYwSKooKtDxpOoqIgCbqoogOfqm6LlPBJJWjYmBLCbelLzEUQhgdPOJbND0sDoEQXYMzgU90A6tR1ZQOCAyAQAAMAoAnQEqQABAAD6RSJlKJaSiIaYaqxCwEglpAAPke8lX7czsm5G0EzucevYzu3xmUg3WkdrrqO/JPt6dlCLPNmGGRX2L8dr0iNpz+kEMw+oby7DYaLVK0xD4AP717f//+0Jdnkzb2PxOHh7e+MfpYRY+Xb2hfo+J3I4X8xeVM3dqLeKP/VIIuOgd/V1b9milQzVFPIF8nIqK506ZDkpDK7HUv/Nln6V/GZykK20OBtwlWw1Msk51k2OWgAVlwaaQCoZLmon+wuvNe8z/3JizE1LTcTpjFQAJjDvK/PO8/lQbPciqKwoA48Z8yoMti2LyOAosLa0GpNAYp6EIaYHxB2iBiomN7vLCscze36I3fxJN/4oXcGqdfNqToYSnqIIiHf+nWKDJbyt5pQa4B/0K7EAA);
  background-repeat: no-repeat;
  background-size: 16px 16px;
  background-position: center right;
  padding-right: 24px;
}
table tr.locked td:last-child {
  background: url(data:image/webp;base64,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lJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDx+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKK7D/AIQX/qI/+QP/ALKuwoA830LQv7a+0f6T5Pk7f4N2c59x6Vsf8IL/ANRH/wAgf/ZV2FFAHH/8IL/1Ef8AyB/9lWPruhf2L9n/ANJ87zd38G3GMe59a9IooA8for2CuP8A+EF/6iP/AJA/+yoA4+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoorY0LQv7a+0f6T5Pk7f4N2c59x6UAGhaF/bX2j/SfJ8rb/BuznPuPSvSKKKACiiigAoq/Zab9s3/AL7Ztx/DnOc+/tW0ng3fn/T8Y/6Y/wD2VAHLUV1L+DdmP9Pzn/pj/wDZVi3um/Y9n77fuz/DjGMe/vQBQooooAK8313Qv7F+z/6T53nbv4NuMY9z616RRQB4/RWxruhf2L9n/wBJ87zt38G3GMe59ax6ACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK9I0LQv7F+0f6T53m7f4NuMZ9z61x+haF/bX2j/SfJ8nb/BuznPuPSvSKACiipI4/MzzjHtQBLaWn2rf8+3bjtmvSNG8JfYvP/07fv2/8ssYxn3960dC0b+zvtH+keZ5m3+DGMZ9/et2gBiJszznNPoooAKY6b8c4xT6KAOR1nwl9t8j/Ttmzd/yyznOPf2rze7tPsuz5927PbFe7Vha7o39o/Z/9I8vy938Gc5x7+1AHjtFPkj8vHOc0ygDH13Qv7a+z/6T5Pk7v4N2c49x6V5vXsFeb67oX9i/Z/8ASfO87d/BtxjHufWgDHooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAOw8C/wDL/wD9s/8A2auwoooAK7XwPp/n/b/3u3Hl/wAOf73vXFV7H4dt/I+0/Nuzt7Y9aANyiiigAooooAKKKKACiiigDzXxxp/kfYP3u7d5n8OP7vvXFV7H4it/P+zfNt27u2fSvHKACuP8df8ALh/20/8AZa7CigDx+iiigAooooAKKKKACiiigAooooAKKKKACiitjQtC/tr7R/pPk+Vt/g3Zzn3HpQAaFoX9tfaP9J8nydv8G7Oc+49K2P8AhBf+oj/5A/8Asq7CigAooooAK9w0wY838P614fWpHrGzP7jOf9v/AOtQB7XRXi/9uf8ATv8A+P8A/wBaj+3P+nf/AMf/APrUAe0UV4v/AG5/07/+P/8A1qP7c/6d/wDx/wD+tQB7RRXi/wDbn/Tv/wCP/wD1qP7c/wCnf/x//wCtQB7RRXi/9uf9O/8A4/8A/Wo/tz/p3/8AH/8A61AHrOpjPlfj/SvD61JNY34/cYx/t/8A1qy6ACiiigDj/wDhBf8AqI/+QP8A7KsfXdC/sX7P/pPnebu/g24xj3PrXpFFAHj9FbGu6F/Yv2f/AEnzvN3fwbcYx7n1rHoAKKKKACiiigAooooAKKKKACuw8C/8v/8A2z/9mrj67DwL/wAv/wD2z/8AZqAOwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA47xz/y4f8AbT/2WuQrr/HP/Lh/20/9lrkKACiiigAooooAKKKKACiiigArsPAv/L//ANs//Zq4+uw8C/8AL/8A9s//AGagDsKKKKACiiigAooooAKKKKACtK10r7Tv/fbduP4c/wBa7nw54Z+zfaf9L3btv/LPHr712arigDxO60r7Ns/fbt2f4cf1rNr35lzXGeI/DP2n7N/pe3bu/wCWefT3oA80ooooAKKKKACiiigAooooA47xz/y4f9tP/Za5Cuv8c/8ALh/20/8AZa5CgAooooAKKKKACiiigAooooAK7DwL/wAv/wD2z/8AZq4+uw8C/wDL/wD9s/8A2agDsKKKKACiiigAooooAK2/D9p9q+0/Pt27e2fWsSug8MT+T9q+XOdnf/eoA9eAxS0UUAFIRmlooA8b8QWn2X7N8+7du7Y9KxK6DxPP532X5cY39/8Adrn6ACiiigAooooAKKKKAOO8c/8ALh/20/8AZa5Cuv8AHP8Ay4f9tP8A2WuQoAKKKKACiiigAooooAKKKKACuw8C/wDL/wD9s/8A2auPrsPAv/L/AP8AbP8A9moA7CiiigAooooAKKKKACnK23tTaKAPX9B1v+0PtH+j+Xs2/wAec5z7e1dBXimj/wDLb/gP9a9rFABXP69rf9n/AGf/AEfzN+7+PGMY9veugNeKax/yx/4F/SgDNZt3am0UUAFFFFABRRRQAUUUUAcd45/5cP8Atp/7LXIV1/jn/lw/7af+y1yFABRRRQAUUUUAFFFFABRRRQAV2HgX/l//AO2f/s1cfXYeBf8Al/8A+2f/ALNQB2FFFFABRRRQAUUUUAFFFFAGlpTbfO4z0/rXtorwEHFejaP4x83zv9Axjb/y2+v+zQB3BrxHVX3eTxjGf6V22seMfK8n/QM53f8ALb6f7Neck5oASiiigAooooAKKKKACiiigDjvHP8Ay4f9tP8A2WuQrr/HP/Lh/wBtP/Za5CgAooooAKKKKACiiigAooooAK7DwL/y/wD/AGz/APZq4+uw8C/8v/8A2z/9moA7CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDjvHP8Ay4f9tP8A2WuQrr/HP/Lh/wBtP/Za5CgAooooAKKKKACiiigAooooAK2NC13+xftH+jed523+PbjGfY+tY9FAHsFFeb6Frv8AYv2j/RvO87b/AB7cYz7H1rY/4Tv/AKhv/kf/AOxoA7CiuP8A+E7/AOob/wCR/wD7Gj/hO/8AqG/+R/8A7GgDsKK4/wD4Tv8A6hv/AJH/APsaP+E7/wCob/5H/wDsaAOworj/APhO/wDqG/8Akf8A+xo/4Tv/AKhv/kf/AOxoA7CiuP8A+E7/AOob/wCR/wD7Gj/hO/8AqG/+R/8A7GgDsKK4/wD4Tv8A6hv/AJH/APsaP+E7/wCob/5H/wDsaAOworj/APhO/wDqG/8Akf8A+xo/4Tv/AKhv/kf/AOxoA7CiuP8A+E7/AOob/wCR/wD7Gj/hO/8AqG/+R/8A7GgDsKK4/wD4Tv8A6hv/AJH/APsaP+E7/wCob/5H/wDsaAOworj/APhO/wDqG/8Akf8A+xrH13Xf7a+z/wCjeT5O7+PdnOPYelABruu/219n/wBG8nyd38e7Ocew9Kx6KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD//Z);
  background-repeat: no-repeat;
  background-size: 16px 16px;
  background-position: center right;
  padding-right: 24px;
}
table tr.default {
  background: #eee;
}
table .center {
  text-align: center;
}
table .right {
  text-align: right;
  width: 1px;
}
table .check {
  width: 2em;
}
table .icon {
  padding-top: 5px;
  padding-bottom: 0;
  user-select: none;
  -webkit-user-select: none;
}
table .grab {
  padding-top: 5px;
  padding-bottom: 0;
}
.grab {
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
table .missing {
  font-style: italic;
  color: var(--color, gray);
}
table col.small {
  width: 180px;
}
table col.medium {
  width: 220px;
}
table col.big {
  width: 280px;
}
table col.large {
  width: 380px;
}
table td > button + button {
  margin-left: 1.2em;
}
table .arrows {
  margin-left: 4px;
  display: inline-flex;
  flex-direction: column;
  gap: 1px;
  vertical-align: middle;
}
table .arrows .up {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid lightgray;
}
table .arrows .down {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid lightgray;
}
table .arrows .up.active {
  border-bottom: 5px solid #525461;
}
table .arrows .down.active {
  border-top: 5px solid #525461;
}
.actions {
  display: flex;
  justify-content: center;
  padding: 12px 0;
  gap: 0.71em;
  flex-wrap: wrap;
}
#log {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  top: calc(2.8em + 12px);
  z-index: 99999;
  min-width: 320px;
  max-width: 600px;
  user-select: none;
  -webkit-user-select: none;
}
#log > div {
  margin-bottom: 8px;
  padding: 8px;
  background: #373737;
  color: white;
  border-radius: 4px;
  box-shadow: 1px 1px #00000033;
  text-align: center;
  cursor: pointer;
}
@media (hover: hover) {
  #log > div:hover {
    filter: opacity(40%);
  }
}
#log > div.error {
  background: #db0a0a;
}
#log > div.success {
  background: #2d8261;
}
.log_close {
  float: right;
  padding: 2px 6px;
  background: none;
  border: 0;
  color: white;
  font-weight: bold;
}
.log_close:hover {
  background: none !important;
}
.log_spin {
  float: left;
  display: inline-block;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  margin: -1px 0 0 -1px;
}
.log_spin::after {
  content: " ";
  display: block;
  width: 12px;
  height: 12px;
  margin: 1px;
  border-radius: 50%;
  border: 4px solid white;
  border-color: white transparent white transparent;
  animation: log_spin 0.8s ease-in-out infinite;
}
@keyframes log_spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.dialog {
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding-top: 44px;
  display: flex;
  align-items: start;
  justify-content: center;
  background: #ffffffcc;
}
.dialog ~ .dialog {
  padding-top: 66px;
}
.dialog.screen {
  align-items: center;
  padding-top: 0;
  background: #76b35a;
}
.dialog > form {
  background-color: white;
  max-width: 85%;
  max-height: calc(100vh - 100px);
  overflow-y: auto;
}
.dialog.left > form {
  position: fixed;
  left: 76px;
}
.dialog.no-fade-bg {
  background: #ffffff00;
}
.dialog.non-modal {
  background: transparent;
  pointer-events: none;
}
.dialog.non-modal > form {
  pointer-events: auto;
}
.warning {
  --color: red;
  color: var(--color, red);
}
.warning:before {
  content: "\26a0\fe0e";
  margin-right: 4px;
}
.sub {
  font-size: 0.8em;
  font-weight: normal;
  text-transform: none;
  font-variant: normal;
  color: var(--color, #888);
}
.child {
  display: inline-block;
  width: 0.8em;
  height: 0.8em;
  border-left: 1px solid var(--color, #bbb);
  border-bottom: 1px solid var(--color, #bbb);
  vertical-align: top;
  margin-left: calc(8px + (var(--depth, 1) - 1) * 1em);
}
.flip-x {
  transform: scaleX(-1);
}
.hide {
  display: none !important;
}
.disabled {
  opacity: 0.5;
}
#modes.disabled,
#header.disabled {
  pointer-events: none;
  opacity: 0.1;
}
.break {
  flex-basis: 100%;
  height: 0;
}
.nowrap {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hidden {
  visibility: hidden;
}
.justify-between {
  justify-content: space-between;
}
.ml-auto {
  margin-left: auto;
}
tr.hidden {
  display: none;
}
.line-through {
  text-decoration: line-through;
}
.field-computed-coord {
  font-size: 0.94em;
  padding: 0 6px;
  width: 10em;
  margin-top: -0.7em;
  flex: none !important;
}
.text-green {
  color: #76b35a;
}
.border-green {
  border-color: #76b35a;
}
input.border-green:focus {
  outline-color: #76b35a;
}
.text-right {
  text-align: right;
}
th.gap {
  padding: 0;
}
.blink {
  animation: blinking 1.25s linear infinite;
}
.blink:hover {
  animation: none;
}
@keyframes blinking {
  80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#svgmap_root.full-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  z-index: 9999;
  background-color: #fff;
}
#svgmap_root.full-screen polygon.active,
#svgmap_root.full-screen text.active,
#svgmap_root.full-screen .g-rows,
#svgmap_root.full-screen .g-plants,
#svgmap_root.full-screen .g-active-zone,
#svgmap_root.full-screen .g-paths {
  opacity: 0.4;
}
#svgmap_root.only-arrow-drag * {
  pointer-events: none;
}
#svgmap_root.only-arrow-drag svg {
  pointer-events: auto;
}
#svgmap_root.only-arrow-drag .move-arrow {
  pointer-events: auto;
  user-select: none;
}
.coverage-toggle,
.path-animation-toggle {
  position: relative;
  margin-bottom: 6px;
}
.coverage-dialog {
  position: fixed;
  top: 0;
  right: 8px;
  z-index: 30;
  min-width: 220px;
  padding: 10px;
  background: var(--bg-100, #fff);
  border: 1px solid var(--border, #ccc);
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
}
.coverage-dialog-row {
  gap: 4px;
  margin-bottom: 8px;
}
.coverage-dialog-checkbox {
  gap: 6px;
  align-items: center;
}
#header_logo {
  position: relative;
}
#header_logo.dev::after,
#header_logo.dev2::after {
  content: "";
  position: absolute;
  top: 6px;
  left: 6px;
  width: 45px;
  height: 45px;
  background-image: url(data:image/webp;base64,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);
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
}
#header_logo.dev2::after {
  background-image: url(data:image/webp;base64,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);
}
#main-svg {
  width: 100%;
  height: 100%;
  cursor: grab;
  outline: 1px solid;
}
#main-svg.add-point-mode {
  cursor: crosshair !important;
}
#main-svg.add-point-mode * {
  pointer-events: none;
}
#main-svg.no-fill-zones .zone {
  fill-opacity: 0;
}
.g-origin {
  cursor: pointer;
}
.path-origin-point {
  fill: #e32636;
  stroke: none;
}
.path-origin-line {
  fill: none;
  stroke: #e32636;
  filter: drop-shadow(0px 0px 5px rgba(255, 255, 255, 0.9));
}
.ab-line {
  cursor: pointer;
}
.ab-line > rect,
.origin-point {
  stroke: none;
  fill: #aaa;
}
.ab-line > polyline,
.origin-line {
  stroke: #aaa;
  fill: none;
  filter: drop-shadow(0px 0px 5px rgba(255, 255, 255, 0.9));
}
.ab-line.active > rect,
.origin-point.active {
  fill: magenta;
}
.ab-line.active > polyline,
.origin-line.active {
  stroke: magenta;
}
.ab-line > text {
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: bold;
  fill: #aaa;
  text-anchor: middle;
}
.ab-line.active > text {
  fill: magenta;
}
#robot-marker,
#robot-marker-warning {
  stroke: #fff;
  stroke-width: 0.4;
  fill: #2d8261;
  opacity: 0.8;
}
#robot-marker-warning {
  fill: #db0a0a;
}
.zone {
  fill-opacity: 0.4;
  cursor: pointer;
  stroke: #0077ff;
  stroke-width: 1px;
}
.zone.active {
  stroke-dasharray: 4 4;
}
.zone-work {
  fill: #0096ff;
  stroke-dasharray: 10 10;
}
.zone-recognition {
  fill: #687d82;
  stroke: #687d82;
  stroke-dasharray: 3 5;
}
.zone-avoid,
.zone-avoid_around,
.zone-avoid_reverse {
  fill: #FFEB3B;
}
.zone-safety {
  fill: var(--green-500);
  stroke: rgb(214, 46, 11);
  stroke-width: 2px;
}
.zone-preview {
  fill: #0066ff80;
}
.zone-preview-yellow {
  fill: greenyellow;
  stroke: green;
  opacity: 1 !important;
}
.zone-undefined {
  fill: #FFC107;
}
.path-line {
  stroke: red;
  fill: none;
}
.path-point {
  stroke: red;
  fill: #ff7575;
  stroke-width: 1px;
  cursor: pointer;
}
.g-path.active .path-point {
  fill: #fff;
}
.path-line-chunk {
  stroke: grey;
  fill: none;
}
.path-animation-line {
  fill: none;
  stroke: blue;
  stroke-width: 1px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.path-animation-tractor {
  user-select: none;
}
.field-path-animation-toolbar {
  position: fixed;
  top: 0;
  right: 8px;
  z-index: 30;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: max-content;
  max-width: calc(100vw - 40px);
  padding: 8px 10px;
  border: 1px solid var(--border, #bbb);
  border-radius: 6px;
  background: var(--bg-100, #fff);
  background: color-mix(in srgb, var(--bg-100, #fff) 92%, transparent);
  box-shadow: 0 3px 12px rgba(0, 0, 0, .2);
  white-space: nowrap;
}
.field-path-animation-toolbar-host {
  display: contents;
}
.field-path-animation-sliders {
  display: grid;
  grid-template-columns: max-content auto max-content;
  gap: 6px;
}
.field-path-animation-toolbar label {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}
.field-path-animation-toolbar .field-path-animation-sliders > label {
  display: contents;
}
.field-path-animation-toolbar input {
  box-sizing: border-box;
  width: 4.5em;
  flex: 0 0 4.5em;
}
.field-path-animation-toolbar select {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
}
.field-path-animation-scope-label {
  align-self: center;
}
.field-path-animation-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-left: 6px;
}
.field-path-animation-toolbar button {
  display: inline-flex;
  width: auto;
  min-width: max-content;
  max-width: none;
  height: auto;
  min-height: 32px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin: 0;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
}
.field-path-animation-toolbar button > span {
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
}
.field-path-animation-toolbar button > img {
  position: static;
  top: auto;
  left: auto;
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin: 0;
  object-fit: contain;
  transform: none;
}
#main:has(#svgmap_root.full-screen) .field-path-animation-toolbar-host {
  display: none;
}
html.medium .field-path-animation-toolbar {
  width: auto;
  max-width: calc(100vw - 24px);
}
html.small .field-path-animation-toolbar {
  width: auto;
  max-width: calc(100vw - 16px);
  gap: 4px;
}
html.small .field-path-animation-sliders {
  column-gap: 4px;
}
html.small .field-path-animation-actions {
  gap: 4px;
  margin-left: 4px;
}
@media (max-width: 560px) {
  .field-path-animation-toolbar {
    flex-wrap: nowrap;
    width: max-content;
    max-width: calc(100vw - 8px);
    gap: 4px;
    padding: 6px 4px;
  }
  .field-path-animation-toolbar label {
    min-width: 0;
    flex: 1 1 auto;
    justify-content: center;
    gap: 3px;
    font-size: .9em;
  }
  .field-path-animation-toolbar input {
    width: 4em;
    min-width: 0;
    flex: 0 1 4em;
  }
  .field-path-animation-toolbar button {
    width: 38px;
    min-width: 38px;
    max-width: 38px;
    flex: 0 0 38px;
    padding-inline: 0;
  }
  .field-path-animation-toolbar button > span {
    display: none;
  }
}
@media (max-width: 380px) {
  .field-path-animation-toolbar {
    flex-wrap: wrap;
  }
  .field-path-animation-sliders {
    width: 100%;
  }
  .field-path-animation-actions {
    flex-direction: row;
    margin-left: 0;
  }
}
.path-point-chunk {
  fill: grey;
}
.g-path.active .path-point-chunk.active {
  fill: var(--green-500);
}
#svgmap_root.rawsvg.panning .g-path .inactive-points,
#svgmap_root.rawsvg.panning .g-active-zone .zone-points {
  display: none;
}
.g-path.active .path-line-chunk {
  stroke: blue;
}
.g-path.active .path-point-chunk {
  fill: #b8d4ff;
  stroke: blue;
}
.g-field.has-active-path .g-path:not(.active) {
  opacity: 0.5;
}
.g-field:not(.has-active-path) .path-line-chunk {
  stroke: blue;
}
.g-field:not(.has-active-path) .path-point-chunk {
  fill: blue;
}
.path-direction-chunk {
  fill: none;
  stroke: gray;
}
.g-path.active .path-direction-chunk {
  stroke: blue;
}
.g-field:not(.has-active-path) .path-direction-chunk {
  stroke: blue;
}
.g-field:not(.has-active-path) .g-path.path-headland .path-line-chunk,
.g-field:not(.has-active-path) .g-path.path-headland .path-direction-chunk {
  stroke: orange;
}
.g-field:not(.has-active-path) .g-path.path-headland .path-point-chunk {
  fill: orange;
}
.g-path.path-headland.active .path-line-chunk,
.g-path.path-headland.active .path-direction-chunk {
  stroke: orange;
}
.g-path.path-headland.active .path-point-chunk {
  fill: #ffd6a3;
  stroke: orange;
}
.g-path.path-headland.active .path-point-chunk.active {
  fill: var(--green-500);
}
.g-field:not(.has-active-path) .g-path.path-rows .path-line-chunk,
.g-field:not(.has-active-path) .g-path.path-rows .path-direction-chunk {
  stroke: blue;
}
.g-field:not(.has-active-path) .g-path.path-rows .path-point-chunk {
  fill: blue;
}
.g-path.path-rows.active .path-line-chunk,
.g-path.path-rows.active .path-direction-chunk {
  stroke: blue;
}
.g-path.path-rows.active .path-point-chunk {
  fill: #b8d4ff;
  stroke: blue;
}
.g-path.path-rows.active .path-point-chunk.active {
  fill: var(--green-500);
}
.g-field:not(.has-active-path) .g-path.path-connection .path-line-chunk,
.g-field:not(.has-active-path) .g-path.path-connection .path-direction-chunk {
  stroke: #7F00FF;
}
.g-field:not(.has-active-path) .g-path.path-connection .path-point-chunk {
  fill: #7F00FF;
}
.g-path.path-connection.active .path-line-chunk,
.g-path.path-connection.active .path-direction-chunk {
  stroke: #7F00FF;
}
.g-path.path-connection.active .path-point-chunk {
  fill: #ddb8ff;
  stroke: #7F00FF;
}
.g-path.path-connection.active .path-point-chunk.active {
  fill: var(--green-500);
}
.g-plants .plant-chunk {
  fill: green;
  pointer-events: none;
}
.g-path-commands {
  fill: none;
}
.g-commands-on-point {
  stroke: red;
}
.g-commands-offseted {
  stroke: yellow;
}
.g-commands-disabled {
  stroke: var(--gray-600);
}
.g-commands-highlight {
  stroke: none;
  fill: red;
  opacity: 0.5;
}
.g-field .g-highlight-row-turn .path-line-chunk {
  stroke: #ff00cc;
  stroke-width: 4px;
}
.g-field .g-highlight-row-turn .path-point-chunk {
  fill: #fff;
  stroke: #ff00cc;
  stroke-width: 3px;
}
.row-label,
.plant-label,
.zone-label,
.point-label,
.distance-label {
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: bold;
  fill: #0000FF;
  text-anchor: middle;
  pointer-events: none;
}
.zone-label {
  stroke: #fff;
  stroke-opacity: 0.8;
  paint-order: stroke fill;
  stroke-linejoin: round;
}
.plant-label {
  fill: #FFFFFF;
}
.point-label {
  font-size: 10px;
  fill: #FFFFFF;
  alignment-baseline: central;
}
.zone-point {
  fill: #0077ff;
  stroke: #fff;
  stroke-width: 2px;
  cursor: pointer;
}
.zone-point-chunk {
  fill: #0077ff;
  stroke: #fff;
  stroke-width: 2px;
  pointer-events: none;
}
.mid-point {
  fill: #00cc66;
  stroke: #fff;
  stroke-width: 2px;
  cursor: pointer;
}
.row-plant {
  fill: green;
  pointer-events: none;
}
.g-rows line.work {
  stroke: #0000FF;
}
.g-rows.dashed line.work,
.g-field.has-active-path .g-rows line.work {
  stroke-dasharray: 4 4;
}
.g-rows line.skip {
  stroke: #FF0000;
}
.g-row-turns .row-turn {
  stroke: #0000FF;
  fill: none;
}
.edit-point-icon,
.move-arrow {
  cursor: pointer;
}
.tabs-panel {
  display: flex;
  padding: 14px 10px;
  width: 95%;
  justify-content: space-between;
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 1;
}
.touch-area {
  opacity: 0;
}
div.separator {
  min-width: 1px;
  min-height: 100%;
  align-self: stretch;
  background-color: #ededf0;
}
#origin-end-active,
#origin-end {
  stroke-dasharray: 100 0;
}
#origin-end {
  stroke: #aaa;
}
#origin-end-active {
  stroke: magenta;
}
.flex {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.flex-v {
  display: flex;
  gap: 0.5rem;
  flex-direction: column;
}
.flex-0 {
  flex: 0;
}
.flex-1 {
  flex: 1;
}
.nogap {
  gap: 0;
}
.overflow-auto {
  overflow: auto;
}
.margin-0 {
  margin: 0;
}
.tooltip {
  position: absolute;
  display: none;
  background: #fff;
  gap: 12px;
  padding: 12px;
  border-radius: 8px;
  z-index: 100;
  box-shadow: 0 0 20px #000;
}
.tooltip fieldset {
  background: #fff;
}
.show-tooltip:hover + .tooltip {
  display: flex;
}
.ui-tooltip {
  position: fixed;
  background: #fff;
  padding: 8px;
  border-radius: 8px;
  z-index: 999999;
  box-shadow: 0 0 5px #0006;
}
.ui-tooltip > * {
  pointer-events: none;
}
.icon-white {
  filter: brightness(0) invert(100%) brightness(200%);
}
.icon-black {
  filter: brightness(0);
}
.icon-gray {
  filter: brightness(0) saturate(0) invert(38%) sepia(0%) saturate(7499%) hue-rotate(204deg) brightness(70%) contrast(88%);
}
.icon-green {
  filter: brightness(0) saturate(100%) invert(45%) sepia(69%) saturate(386%) hue-rotate(88deg) brightness(117%) contrast(92%);
}
.icon-red {
  filter: brightness(0) saturate(100%) invert(16%) sepia(83%) saturate(7473%) hue-rotate(0deg) brightness(92%) contrast(97%);
}
.icon-invert {
  filter: invert(100%);
}
.icon-locked,
.icon-locked-green,
.icon-locked-green-circle,
.icon-unlocked-green-circle {
  width: 16px;
  height: 16px;
  background-image: url(data:image/webp;base64,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lJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDx+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKK7D/AIQX/qI/+QP/ALKuwoA830LQv7a+0f6T5Pk7f4N2c59x6Vsf8IL/ANRH/wAgf/ZV2FFAHH/8IL/1Ef8AyB/9lWPruhf2L9n/ANJ87zd38G3GMe59a9IooA8for2CuP8A+EF/6iP/AJA/+yoA4+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoorY0LQv7a+0f6T5Pk7f4N2c59x6UAGhaF/bX2j/SfJ8rb/BuznPuPSvSKKKACiiigAoq/Zab9s3/AL7Ztx/DnOc+/tW0ng3fn/T8Y/6Y/wD2VAHLUV1L+DdmP9Pzn/pj/wDZVi3um/Y9n77fuz/DjGMe/vQBQooooAK8313Qv7F+z/6T53nbv4NuMY9z616RRQB4/RWxruhf2L9n/wBJ87zt38G3GMe59ax6ACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK9I0LQv7F+0f6T53m7f4NuMZ9z61x+haF/bX2j/SfJ8nb/BuznPuPSvSKACiipI4/MzzjHtQBLaWn2rf8+3bjtmvSNG8JfYvP/07fv2/8ssYxn3960dC0b+zvtH+keZ5m3+DGMZ9/et2gBiJszznNPoooAKY6b8c4xT6KAOR1nwl9t8j/Ttmzd/yyznOPf2rze7tPsuz5927PbFe7Vha7o39o/Z/9I8vy938Gc5x7+1AHjtFPkj8vHOc0ygDH13Qv7a+z/6T5Pk7v4N2c49x6V5vXsFeb67oX9i/Z/8ASfO87d/BtxjHufWgDHooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAOw8C/wDL/wD9s/8A2auwoooAK7XwPp/n/b/3u3Hl/wAOf73vXFV7H4dt/I+0/Nuzt7Y9aANyiiigAooooAKKKKACiiigDzXxxp/kfYP3u7d5n8OP7vvXFV7H4it/P+zfNt27u2fSvHKACuP8df8ALh/20/8AZa7CigDx+iiigAooooAKKKKACiiigAooooAKKKKACiitjQtC/tr7R/pPk+Vt/g3Zzn3HpQAaFoX9tfaP9J8nydv8G7Oc+49K2P8AhBf+oj/5A/8Asq7CigAooooAK9w0wY838P614fWpHrGzP7jOf9v/AOtQB7XRXi/9uf8ATv8A+P8A/wBaj+3P+nf/AMf/APrUAe0UV4v/AG5/07/+P/8A1qP7c/6d/wDx/wD+tQB7RRXi/wDbn/Tv/wCP/wD1qP7c/wCnf/x//wCtQB7RRXi/9uf9O/8A4/8A/Wo/tz/p3/8AH/8A61AHrOpjPlfj/SvD61JNY34/cYx/t/8A1qy6ACiiigDj/wDhBf8AqI/+QP8A7KsfXdC/sX7P/pPnebu/g24xj3PrXpFFAHj9FbGu6F/Yv2f/AEnzvN3fwbcYx7n1rHoAKKKKACiiigAooooAKKKKACuw8C/8v/8A2z/9mrj67DwL/wAv/wD2z/8AZqAOwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA47xz/y4f8AbT/2WuQrr/HP/Lh/20/9lrkKACiiigAooooAKKKKACiiigArsPAv/L//ANs//Zq4+uw8C/8AL/8A9s//AGagDsKKKKACiiigAooooAKKKKACtK10r7Tv/fbduP4c/wBa7nw54Z+zfaf9L3btv/LPHr712arigDxO60r7Ns/fbt2f4cf1rNr35lzXGeI/DP2n7N/pe3bu/wCWefT3oA80ooooAKKKKACiiigAooooA47xz/y4f9tP/Za5Cuv8c/8ALh/20/8AZa5CgAooooAKKKKACiiigAooooAK7DwL/wAv/wD2z/8AZq4+uw8C/wDL/wD9s/8A2agDsKKKKACiiigAooooAK2/D9p9q+0/Pt27e2fWsSug8MT+T9q+XOdnf/eoA9eAxS0UUAFIRmlooA8b8QWn2X7N8+7du7Y9KxK6DxPP532X5cY39/8Adrn6ACiiigAooooAKKKKAOO8c/8ALh/20/8AZa5Cuv8AHP8Ay4f9tP8A2WuQoAKKKKACiiigAooooAKKKKACuw8C/wDL/wD9s/8A2auPrsPAv/L/AP8AbP8A9moA7CiiigAooooAKKKKACnK23tTaKAPX9B1v+0PtH+j+Xs2/wAec5z7e1dBXimj/wDLb/gP9a9rFABXP69rf9n/AGf/AEfzN+7+PGMY9veugNeKax/yx/4F/SgDNZt3am0UUAFFFFABRRRQAUUUUAcd45/5cP8Atp/7LXIV1/jn/lw/7af+y1yFABRRRQAUUUUAFFFFABRRRQAV2HgX/l//AO2f/s1cfXYeBf8Al/8A+2f/ALNQB2FFFFABRRRQAUUUUAFFFFAGlpTbfO4z0/rXtorwEHFejaP4x83zv9Axjb/y2+v+zQB3BrxHVX3eTxjGf6V22seMfK8n/QM53f8ALb6f7Neck5oASiiigAooooAKKKKACiiigDjvHP8Ay4f9tP8A2WuQrr/HP/Lh/wBtP/Za5CgAooooAKKKKACiiigAooooAK7DwL/y/wD/AGz/APZq4+uw8C/8v/8A2z/9moA7CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDjvHP8Ay4f9tP8A2WuQrr/HP/Lh/wBtP/Za5CgAooooAKKKKACiiigAooooAK2NC13+xftH+jed523+PbjGfY+tY9FAHsFFeb6Frv8AYv2j/RvO87b/AB7cYz7H1rY/4Tv/AKhv/kf/AOxoA7CiuP8A+E7/AOob/wCR/wD7Gj/hO/8AqG/+R/8A7GgDsKK4/wD4Tv8A6hv/AJH/APsaP+E7/wCob/5H/wDsaAOworj/APhO/wDqG/8Akf8A+xo/4Tv/AKhv/kf/AOxoA7CiuP8A+E7/AOob/wCR/wD7Gj/hO/8AqG/+R/8A7GgDsKK4/wD4Tv8A6hv/AJH/APsaP+E7/wCob/5H/wDsaAOworj/APhO/wDqG/8Akf8A+xo/4Tv/AKhv/kf/AOxoA7CiuP8A+E7/AOob/wCR/wD7Gj/hO/8AqG/+R/8A7GgDsKK4/wD4Tv8A6hv/AJH/APsaP+E7/wCob/5H/wDsaAOworj/APhO/wDqG/8Akf8A+xrH13Xf7a+z/wCjeT5O7+PdnOPYelABruu/219n/wBG8nyd38e7Ocew9Kx6KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD//Z);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.icon-locked-green {
  background-image: url(data:image/webp;base64,UklGRpADAABXRUJQVlA4TIMDAAAvP8APED/loI0kR/LyR/xhuz6QcNi2jSRxd/sv995MbIdt20gSd7f/dveeSWzXtW2bzrp4iM2iU0IKyb/Vg23r5igEEAABaDhArdSipQ0laClFSwlaNsOf6yybYXNoQwmdpQQtpex/aJf9/tz/QUsbSugsm2G/P/f7Q7E5KGpplxLa0C6K/1sJihL2P2yGdilh/6EztKGE/zDSpeCkBaYEuDYg1GoofCFw+OONB74QjDGC4I5XiUMcCWjEECKJEixSULCIwoOCgYKGgoaBgkIACwuNKhQUglrwhkCwhIOLL574QvCH4HUAHjQUFDQO+EHwwxm/8A9TnLENc2jic65LwUKd+z6ii5/rqp3nbpznkcfr9VHH9jaFYC23wSDt2jZDcrZ61opt27ZTYcW239h2hW9ss1c/dJCe6vjT80T0fwJK/m9dvmwpsTw1iz+uXbNqBbFm3cclaTixcbUrEBs+h/bg7RMVZ0XpY3UU7H53MKjrr+4pBXMFVhB7AXBg85GArr9UZjH2Fowl97Yjwdx8rblmDu7Whd2GzMqFLQdD+X5LBVPttN6lZShnBSu7zmzyAtx/E8iVBq8CjGtTVZphRAOUt54oAPTxpzA2xV6AEfXlZaWZiCZnq6EqINcHMedh7K2gptREBRB108UpV84O4at6Z+d2N4jITEQSIMlu0yxUvoWw1etCnV5lIgIFVU6ReaJfAljw3Au0n4kIgCSQC33nidWd84t39LaKa+loIvxQh6aFTu4sKt7Vu0rb3MGURswQAEkCgOnc7Cj7Pxfp5g1cvquUeW1NBAAkAYAk0d6KdftPHcLBIpx/8QxP7yspo4cMGoCBGAQMBDAIwPBxKrAHdu7A9nOJXXuked1cqqNASQAg6WmlMXaSved4Upfuq2QTLjcKVtITUAAHTid1IQ8Sy5l1NrED4pjFX1juPHYuJPZOvAJMBVtkwsDhk32TQFOysE9Vpqa653TRNMCq61prSitNRSf1Lg6P1o80ACKSo3VekycZ1izveuXrMc/5Xw+tH5lVGpGjZWEaFsK2NYgqS02rGSopsADG1BpUltWPdz5OSctYkwGGz/QxU9I8qiKiGTbL5w1Ph0UVpnr4XK+FhsVJpTA1k0VTke1ntjPoOL05PbZpRv/BdpYNLzsLSf8iiprcxXDOJHVlbyh7TyaFD7v2Bcn3JckfPhYkS/4vBQA=);
}
.icon-locked-green-circle {
  background-image: url(data:image/webp;base64,UklGRpYEAABXRUJQVlA4TIoEAAAvP8APEP/EoG0jSd7jT3km94Fg2LZtGP1/8taYCNq2TfhT/lczbBtJkfuv9JlxjxQCCIAANBxKNFVUU6GayiqpUJ961KGa+lWoporaVacutaikqnpUqFWF6lWoR2UMFSAQgIgKNMTvINgEaECb3tn/632JIG3aQDdtoNH/he4YbYJNAgt3oJtvyQi906YN6Q4EEiCAUXQDbUgb2P/7uP0eY+90pw0RHaJR8b5uACqCtCHFlmtAxQAIlcrZEEEKApUKnDIYU1mMMVC0tj1tI1llppTR7TAzM/My0zDjMu+WmTze/l0phXtN5N+yMxfwfxH9d+A2kiK59phheru/4L2z6WrPNNZUlhWjTGoaM+1dKevM1JaomJQg05mantaGIuUUNLT2pKG3uVolCJp7E2uvUwlT155Md1Op4vUNbID0KT6lTd0JdNQrNpsvffvDv7P4V765tFWxqe9w1lalOHs//Sdkgs/2Ki5VbY5aKtjnvj5kKAzIQGdNKITB6+xTV7S4HcoVY+MdMiBMAwEhqwnA0p2Nikm5y9ZWwR6eG+SZrA4gWbLzfCN7Nv7Gjir21nvGNnH/xmXceDgZ2e6yN1bFPVk3/0Lv/W8IfweDH2/cim3YLjuvTKzqnOVb/Ot085oUZ/+4zsGbY7s39osPJbLt6E8EwIzsFy5N/L+9lPVlVhPw7PC2rRvtg4gceWRy8AX/B27n1hq/WHZOZXVAOLBR+QzIoWEKDUZ38EuoN6pZsa4ZHQbT7yvxgRzAege4MRjA0FXFpjlaKKp5j7WZM8O7lQ8R1s6/aAbmQUwV6LG1Kpb/pyaYr6yDWOds8vkMBea3mEXcamvgbVowFK6fV77EOrc6F9L8Rl6DXSSLePv+MwjWzqmNPvplIyAiAgDq4loo9HZvTCXszMuw/3gfB3No5qTL0ZmAgvDtAR/sjZm8WsbZN7/K78sGoJcP73yH23JH5LZYzyRP3xhCsPTbL3hzllHriXSVRO0aM5GE0yFECAYgAAbQEtBKNqR8RnYxe4MuT9pV1Ill613CUGgHkTA3EQwBS8dVNO38Laci4MiO5RR/QyNniUKxDilq9KSmsGo8qeQBrGBaKKtD0oZgXFV6UpaArNOPt5/+oVcJxlmZJ8VJzH2yu//Ang+HybgrTgCBkSsH1cadavsFo8OssyQXAv08umZemplVLSKOFypdTerwo6gPZkLtqtKTmsKq8aQx6YWN+Qs056zRk4yzOQpOKvF3blRHRg05y3jS7ioA8Oqgkp1bD38f6qyz9nzdSGD9tepX8nQid4jD1w2pTWDtxXYf6smkFme1Vt1MwDzxt6s9T6e1+/8+Y9dtd/LzRqgDf5CJF1O3pcF93emJ00rOD6+5a4jst9wFq6Nf3w8mA3et0f0mj1+7TrHE7TeluVCaub4hKi5J1fXG9i0n03PS7lvi+6b9s2mZ3S8i0uTSt90aXEwlgzftvs2pbxzYkkoG7L7RpW9NNWhz6pvTBMfGO8WzaHGeG9JS1ZZgbklHPZLNTU7i56ZCz20FnxsLPbcWeG4u9Nz+rkYA);
}
.icon-unlocked-green-circle {
  background-image: url(data:image/webp;base64,UklGRsYEAABXRUJQVlA4TLkEAAAvP8APEPfEoG0jSb7jT3mbe0gwbNs2jP4/eWtMBG3bJvwp/6sZto2kyP1X+sy4RwoBBEAAGg4lmiqqqVBNZZVUqE896lBN/SpUU0XtqlOXWlRSVT0q1KpC9SrUozKGCpA2QEQFGoJAABJsAjSgTe/s/3pfIkibNtBNG2j0f6E7Rptgk8DgDnTzLxmhd9q0Id2BQAIEMIpuoA1pA/u/n9v3GLvTnTZEdIhGxfu6AagI0oYUK/eAigEQKpVrQwQpCFQqcJWDYyrDMQaK1ranbSQpzEnrNEwdDzMzMy0zDTMzM/O43mrWSuFmbSuyZy/g+yP6PwHsf7tZM4Zy6USUEsgNGbVmyBpGPsYHjJHRCE27UopwALN2/n310XvQ1b92zuEAIqVKOwydcpa7l/z80FbEL0u4O1vuBFYrcHd33xMpbEtIOH1pk8DjfV3uLtSCaQ3Huds8LCQE3gKWQN8RAMYPmy7Eh1sB1Ivc0zwn4ZJ9x4JDwvuc6QKKdW3VDPfsHpVer47t30X7T7z2wpGuBzJVTSMp7v3Nf1LggfX4R3MO5tI8WrD71aQjgC8HvZAa0UJJ7r3spSMFcHntInMUPeLA3DXXBQD5bJkXkiMaqinu+3vfEcDZVXPnmKM94p6rT0oBid98kKoOVM9w3wVv+o4lsNzkPQXCyqfClng+3weZ+gCtIvffKx3bevstR49olIiIg4ho/2MLUuzxQ7GlNswVTznyA54u4j0ClBbcF++EPK6AYaVaXIHuOQLyD94jAEQEeOHXd8KSt1XiNYVOgSvO/CSFPb2N9zDQ1skPtviogkLHr8xVl/4rYU1t5aZLfceUTWJMCWWfdlYpwK2TH2zxsauUbXtVeDh3TNkkxkwlVLxKIdlsCcseW6JW8mhEQrJ18oMtPppqkYbL4CHdMWWTGFuiBsOVV+n2gthsCcseWz5AngHNmMKWy7fozhcJiAsnDv9DhwgAEREAnLksBazx2zfp8haFWJOhxv0XvpC+9lsbRAISEAAk4MASE30b7mcL/VBjMBTWf5HCLYXtDWUJOBCQAhhfp2AwDCls9IE2T9dGhSGGnMq4sMlFIcoxpL+uNENCzdvHekui79jCkQJSV4IhGgBNi2uHztx1JgWktmhAH35aNLp88fdPhQwkoQuWpN0ruLmAz9suHbuvK8GQ1kWWc44D6BHRBflu0gGgI82Q0/XasX/w++6d7ejKMQx9XUMMhi6ynHMus0d0QXzQZjDUtH2AtYGjt8Dkq59Loa3G0IxpsgBcXMGxYM6qK7bT1xVrMiAfwPQlPspx5pXTh648A2AEMHV+Xo/46deOrwbD1Yjok6d78/jiM28dqaoWabhQ0kc3TOLL7wqprcQ8K3rczqtNHNueTumreLWz2qzJ538es15DW7bthfJAbhd0+5WZb6fwdRQ6fqjFNQTqFa8x1WHXhvCQa5gpt4ocWPY+LO+JA8WWGuoZDhx8/DmUdIADmTobtJriwIzZoZzBAaqywUeSPMQ0wnRSKjw0wvRWM2HJVJnuejEcRWL6W8Px4OLDLRZorRBUocaC7pSzQVC5w0LYrpQieqhUabOwNox8bJAYGQ0W7mbNGMqlE1FKIDdk1JrsfxsA);
}
.icon-length::before {
  content: "\279d";
  display: inline-block;
  line-height: 1;
  font-size: calc(1em - 1px);
  margin-right: 4px;
}
.icon-real-length::before {
  content: "\21c4";
  display: inline-block;
  line-height: 1;
  position: relative;
  top: -1px;
  margin-right: 4px;
}
label.checkbox input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #ccc;
  border-radius: 6px;
  outline: none;
  cursor: pointer;
  position: relative;
  transition: all 0.2s;
  vertical-align: middle;
  margin-bottom: 0;
}
label.checkbox input[type=checkbox]:checked {
  background-color: var(--blue-500);
  border-color: var(--blue-500);
}
label.checkbox input[type=checkbox]:disabled {
  background-color: var(--gray-100);
  border-color: var(--gray-300);
  cursor: default;
}
label.checkbox input[type=checkbox]:checked:disabled {
  background-color: var(--gray-400);
  border-color: var(--gray-400);
}
label.checkbox input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 4px;
  height: 9px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.template-editor {
  font-size: 13px;
  padding-top: 8px;
}
.template-editor > form {
  max-height: calc(100vh - 16px);
}
.turn-template-readonly-panel {
  padding: 0;
}
.turn-template-readonly-panel.non-modal > form {
  position: fixed;
  left: 16px;
  bottom: 16px;
  width: min(1420px, 1800px, 100vw);
  max-width: none;
  max-height: calc(100vh - 32px);
  transform: translate(var(--turn-template-readonly-x, 0px), var(--turn-template-readonly-y, 0px)) scale(0.5);
  transform-origin: left bottom;
}
.turn-template-readonly-panel .turn-template-readonly-fields {
  display: contents;
  pointer-events: none;
}
.turn-template-readonly-panel .main button:not(.turn-template-point-summary),
.turn-template-readonly-panel .main .grab {
  display: none !important;
}
.turn-template-readonly-panel .turn-template-point-header {
  grid-template-columns: 34px minmax(0, 1fr);
}
.turn-template-readonly-panel .turn-template-point-summary {
  grid-column: 2;
}
.turn-template-readonly-panel .turn-template-readonly-selected > .turn-template-head,
.turn-template-readonly-panel .turn-template-point-readonly-selected,
.turn-template-readonly-panel .turn-template-point-readonly-selected > .turn-template-point-header,
.turn-template-readonly-panel .turn-template-point-readonly-selected .turn-template-point-summary {
  background-color: var(--orange-500);
}
.turn-template-readonly-panel .turn-template-readonly-selected > .turn-template-head .turn-template-title,
.turn-template-readonly-panel .turn-template-point-readonly-selected .turn-template-point-summary,
.turn-template-readonly-panel .turn-template-point-readonly-selected .turn-template-point-summary small {
  color: var(--hp-text, #071d36);
}
.turn-template {
  border-radius: 16px;
  box-shadow: 0 0 8px #ddd;
}
.turn-template button.big:not(.link) {
  background-color: var(--green-300);
}
.turn-template .grab {
  width: inherit;
}
.turn-template-row {
  padding: 0 24px;
  min-height: 42px;
}
.turn-template-head {
  border-radius: 16px 16px 0 0;
  background-color: var(--green-400);
  min-height: 48px;
}
.turn-template-title {
  color: #fff;
}
.turn-shape-summary {
  gap: 8px;
  flex-wrap: wrap;
}
.turn-template-safety-options {
  gap: 16px;
  flex-wrap: wrap;
}
.turn-template-safety-options > label {
  display: flex;
  align-items: center;
  gap: 8px;
}
.turn-template-safety-options > label > span:first-child {
  width: auto;
}
.turn-shape-summary > label {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: none;
}
.turn-shape-summary > label > span:first-child {
  width: auto;
}
.turn-shape-summary > label > input:not([type=checkbox]):not([type=radio]) {
  flex: none;
  width: auto;
  min-width: 2em;
}
.turn-shape-summary > label > input.turn-shape-custom-bearing {
  width: 5.9em;
}
.tu-te-point {
  border-top: 1px solid var(--gray-200);
  align-items: flex-start;
  gap: 0;
}
.tu-te-point-title {
  font-weight: 600;
  line-height: 12px;
}
.tu-te-separator {
  min-width: 2px;
  align-self: stretch;
  margin: 8px 0;
  background-color: var(--green-400);
}
.tu-te-commands {
  margin: 8px 16px;
  flex: 1;
  gap: 16px;
  position: relative;
  min-width: 150px;
  align-self: center;
}
.tu-te-add-command-btn.sm {
  position: absolute;
  bottom: -11px;
  z-index: 10;
  background: var(--green-100);
  border: 0;
}
.turn-template button.tu-te-add-command-btn.big {
  align-self: flex-start;
  background-color: var(--green-100);
  border: 0;
  min-height: 28px;
}
.tu-te-command {
  border: 4px dashed var(--gray-200);
  border-radius: 8px;
}
.tu-te-command.editable {
  cursor: pointer;
}
.tu-te-command-inner {
  margin: -3px;
  padding: 8px;
  border-radius: 8px;
  background-color: #fff;
  position: relative;
}
.tu-te-command-title {
  align-self: center;
  margin-top: -17px;
  padding: 0 8px;
  background-color: #fff;
  font-size: 11px;
  color: #202020;
  border-radius: 8px;
}
.tu-te-types {
  margin: 8px 16px;
  flex: 1;
  gap: 16px;
  position: relative;
  min-width: 150px;
  cursor: pointer;
}
.tu-te-change-type-btn.sm {
  position: absolute;
  bottom: -11px;
  z-index: 10;
  background: var(--green-100);
  border: 0;
}
.turn-template button.tu-te-change-type-btn.big {
  align-self: flex-start;
  background-color: var(--green-100);
  border: 0;
  min-height: 28px;
}
.tu-te-params {
  flex-wrap: wrap;
}
.tu-te-param {
  border: 1px solid var(--gray-200);
  background-color: var(--gray-100);
  border-radius: 12px;
  padding: 4px;
  font-size: 11px;
  color: #202020;
}
.tu-te-param-value {
  font-weight: 600;
}
.point-command-param-row {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(80px, 150px) 40px;
  gap: 0.43em;
  align-items: center;
  min-height: 2em;
}
.point-command-param-row > .point-command-param-name:first-child {
  width: auto;
  min-width: 0;
  align-items: center;
  white-space: nowrap;
}
.point-command-param-row > input:not([type=checkbox]):not([type=radio]),
.point-command-param-row > select {
  box-sizing: border-box;
  width: 100%;
  max-width: 150px;
  min-width: 0;
  justify-self: stretch;
  flex: none;
}
.point-command-input {
  box-sizing: border-box;
  width: 150px;
  max-width: 150px;
  flex: none;
}
.point-command-param-unit {
  min-width: 40px;
}
.grab-placeholder {
  width: 16px;
  min-width: 16px;
  height: 16px;
  pointer-events: none;
}
.turn-template input[type=text],
.turn-template input[type=number],
.turn-template select,
input[type=text].big,
input[type=number].big,
select.big {
  font-family: "Open Sans";
  border-radius: 8px;
  border-color: var(--gray-300);
  box-sizing: border-box;
}
.turn-template input[type=number],
input[type=number].big {
  width: 5em;
}
.turn-template input[name=bearing] {
  width: 5.9em;
}
.hover-only {
  visibility: hidden;
}
.robot-row:hover .hover-only,
.tu-te-point > .turn-template-row:hover .hover-only,
.tu-te-command:hover .hover-only,
.path-points-list.edit > tr:hover .hover-only,
.zone-points-list.edit > tr:hover .hover-only,
.turn-template-head:hover .hover-only {
  visibility: visible;
}
.path-points-list.noedit .btag {
  position: relative;
  left: -8px;
}
.path-points-list.noedit .offsets {
  position: relative;
  right: -40px;
}
.path-points-list.noedit .grab {
  pointer-events: none;
}
.path-points-list.noedit .grab img {
  visibility: hidden;
}
.path-points-scroll.virtualized {
  box-sizing: border-box;
  flex: 1 1 0;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  height: auto;
  min-height: 0;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overflow-anchor: none;
}
.virtual-path-points-spacer,
.virtual-path-points-spacer > td {
  box-sizing: border-box;
  padding: 0 !important;
  border: 0 !important;
}
.virtual-path-point-preview {
  height: 53px;
  pointer-events: none;
}
.virtual-path-point-preview > td {
  box-sizing: border-box;
  height: 53px;
  padding-top: 0;
  padding-bottom: 0;
}
.add-point-mode .path-mid-points,
.add-point-mode .zone-mid-points,
.add-point-mode .g-move-point {
  display: none;
}
.axis-drag-rotation {
  z-index: 2;
  position: absolute;
  left: 20px;
  top: 60px;
  background: #fff;
  padding: 8px;
  border-radius: 8px;
  border: 1px solid var(--gray-200);
}
.axis-drag-rotation input {
  padding: 0;
  border: 0;
}
.path-selector-btn {
  width: 100%;
  min-height: 44px;
  padding: 8px;
  margin-top: 0 !important;
  background: #f6751f;
  color: #fff;
  box-sizing: border-box;
}
.path-selector-main {
  min-width: 0;
  margin-right: auto;
  text-align: left;
}
.path-selector-btn .sub {
  color: #fff;
}
.path-selector-btn:hover {
  background-color: var(--green-400);
  color: #fff;
  cursor: pointer;
}
.path-selector-btn:hover .expand-icon {
  filter: invert(100%);
}
.path-selector-dlg-bg {
  background-color: #ffffff11;
  padding-top: 0;
}
.path-selector-dlg {
  display: flex;
  flex-direction: column;
  position: fixed;
  min-height: 200px;
  max-width: 90%;
  border-radius: 6px;
  box-shadow: #15172526 0px 15px 25px 0px, #15172520 0px 2px 8px 0px;
  overflow: hidden;
  background-color: #fff;
}
.path-selector-dlg tr:last-child {
  border-bottom: 0;
}
.company-selector-btn {
  min-width: 240px;
  max-width: 100%;
  display: flex;
  align-items: stretch;
  gap: 0;
}
.company-selector-btn.disabled {
  opacity: .65;
}
.company-selector-btn.company-badge .company-selector-crumbs {
  border-right: 1px solid var(--gray-200);
  border-radius: 6px;
}
.company-selector-crumbs {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border: 1px solid var(--gray-200);
  border-right: 0;
  border-radius: 6px 0 0 6px;
  background: #fff;
  overflow: hidden;
}
.company-selector-crumbs .link {
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--green-400);
  text-decoration: underline;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.company-selector-crumbs .link:disabled,
.company-selector-current {
  color: var(--gray-800);
  text-decoration: none;
}
.company-selector-crumb-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  border-radius: 3px;
  object-fit: cover;
}
.company-selector-sep,
.company-selector-empty {
  color: var(--gray-600);
  white-space: nowrap;
}
.company-selector-btn > button {
  border-radius: 0 6px 6px 0;
}
.company-selector-btn > button img {
  margin-left: 4px;
}
.company-selector-dlg {
  width: min(1000px, 92vw);
}
.company-selector-dlg:has(.company-selector-robot-list.show-users) {
  width: min(1000px, 92vw);
}
.company-selector-search {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px;
  border-bottom: 1px solid var(--gray-200);
}
.company-selector-search > input {
  min-width: 12em;
  flex: 1;
}
.company-selector-search > label {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}
.company-selector-search > label > input {
  margin-top: 4px;
}
.company-selector-body {
  min-height: 280px;
  height: min(560px, 70vh);
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(260px, 2fr);
  overflow: hidden;
}
.psd-leading-col,
.psd-metric-col {
  width: 0;
}
.company-selector-pane {
  display: contents;
}
.company-selector-pane-summary {
  display: none;
}
.company-selector-root-picker {
  display: none;
}
.company-selector-roots,
.company-selector-tree {
  min-height: 0;
  overflow: auto;
  padding: 4px;
}
.company-selector-roots {
  border-right: 1px solid var(--gray-200);
}
.company-selector-no-result {
  padding: 12px;
}
.company-selector-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 4px 8px;
  border-radius: 4px;
  cursor: pointer;
}
.company-selector-row:hover {
  background: var(--gray-100);
}
.company-selector-row.dealer {
  background: var(--green-50);
}
.company-selector-row.active {
  background: var(--gray-100);
}
.company-selector-row.active.dealer:not(.selected) {
  background: var(--green-100);
}
.company-selector-row.selected {
  background: var(--green-400);
  color: #fff;
}
.company-selector-row.selected .company-selector-entity,
.company-selector-row.selected button.company-selector-entity {
  color: #fff;
}
.company-selector-row.match {
  font-weight: bold;
}
.company-selector-row.disabled {
  color: var(--gray-600);
  cursor: default;
}
.company-selector-row img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.company-selector-row span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.company-selector-row-main {
  min-width: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.company-selector-company {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
button.company-selector-company-select {
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  text-align: left;
}
button.company-selector-company-select:not(:disabled):not(.active):hover {
  filter: none;
}
button.company-selector-company-select > img {
  top: 0;
  filter: none;
}
.company-selector-company img,
.company-selector-entities img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  flex: none;
}
.company-selector-entities img {
  width: 16px;
  height: 16px;
  filter: saturate(0%) brightness(120%);
}
.company-selector-company-name {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.company-selector-entities {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 6px;
}
.company-selector-entities > div {
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.company-selector-entity-group-label {
  display: none;
}
.company-selector-robot-list {
  gap: 0;
  min-width: 100%;
  width: max-content;
}
.company-selector-robot-header,
.company-selector-robot-row {
  min-width: 0;
  width: 100%;
  display: grid;
  grid-template-columns: 200px max-content;
  align-items: start;
  gap: 4px 10px;
}
.company-selector-robot-list.show-users .company-selector-robot-header,
.company-selector-robot-list.show-users .company-selector-robot-row {
  grid-template-columns: 200px 200px max-content;
}
.company-selector-robot-header {
  box-sizing: border-box;
  padding: 8px;
  border-bottom: 1px solid var(--gray-200);
  color: var(--gray-600);
  font-size: .8em;
  font-weight: bold;
  text-transform: uppercase;
}
.company-selector-sort-header {
  cursor: pointer;
  user-select: none;
}
.company-selector-sort-header .arrows {
  margin-left: 4px;
  display: inline-flex;
  flex-direction: column;
  gap: 1px;
  vertical-align: middle;
}
.company-selector-sort-header .arrows .up {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid lightgray;
}
.company-selector-sort-header .arrows .down {
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid lightgray;
}
.company-selector-sort-header .arrows .up.active {
  border-bottom-color: #525461;
}
.company-selector-sort-header .arrows .down.active {
  border-top-color: #525461;
}
.company-selector-robot-name {
  min-width: 0;
  gap: 4px;
}
.company-selector-robot-users {
  min-width: 0;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 2px;
  text-align: left;
}
.company-selector-user-breadcrumb {
  min-width: 0;
  max-width: 100%;
  gap: 2px;
}
.company-selector-company-breadcrumb {
  min-width: 0;
  max-width: 100%;
  gap: 2px;
}
.company-selector-user-name {
  min-width: 0;
  gap: 2px;
}
.company-selector-robot-name img,
.company-selector-user-breadcrumb img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  flex: none;
}
.company-selector-fieldgroup-header,
.company-selector-fieldgroup-row {
  min-width: 0;
  width: 100%;
  display: grid;
  grid-template-columns: 200px max-content;
  align-items: center;
  gap: 4px 10px;
}
.company-selector-fieldgroup-header {
  box-sizing: border-box;
  padding: 8px;
  border-bottom: 1px solid var(--gray-200);
  color: var(--gray-600);
  font-weight: 600;
}
.company-selector-fieldgroup-name {
  min-width: 0;
  gap: 4px;
}
.company-selector-fieldgroup-name img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  flex: none;
}
.company-selector-entity {
  min-width: 0;
  max-width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--gray-600);
  font-size: .9em;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  white-space: nowrap;
}
button.company-selector-entity {
  color: var(--green-400);
  text-decoration: underline;
}
button.company-selector-entity.selected {
  background: var(--green-400);
  color: white;
  padding: 0 4px;
}
button.company-selector-entity:hover {
  color: var(--green-300);
}
button.company-selector-entity.selected:hover {
  color: white;
}
.psd-list-row {
  min-height: 0;
  display: flex;
  align-items: stretch;
  flex: 1;
}
.psd-list-col {
  min-height: 0;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--gray-200);
}
.psd-list-col:last-child {
  border-right: 0;
}
.psd-pane-summary {
  display: none;
}
.psd-pane-content {
  display: contents;
}
.psd-pathsets-head,
.psd-paths-head {
  padding: 12px;
  border-bottom: 1px solid var(--gray-200);
}
.psd-pathsets-head {
  min-width: 130px;
}
.psd-paths-head {
  min-width: 280px;
}
.psd-pathsets,
.psd-paths {
  display: flex;
  flex-direction: column;
  overflow: hidden auto;
}
.psd-indent {
  margin-left: calc((var(--depth, 1) - 1) * 1em + 0.8em);
}
.popup-btn {
  position: relative;
  display: flex;
  min-width: 0;
  border-radius: 50%;
  border: 0;
  padding: 6px;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.popup-btn > img {
  top: 0;
  filter: none;
}
.popup-btn:hover {
  background-color: var(--gray-200);
}
.popup-btn.disabled {
  opacity: 0.2;
  pointer-events: none;
}
.popup-btn.busy > img {
  animation: none;
}
.popup-dlg {
  background-color: transparent;
}
.popup {
  box-sizing: border-box;
  max-width: calc(100vw - 16px);
  max-height: calc(100vh - 16px);
  opacity: 0;
  transform: scale(0.5) translate(-40%, -40%);
  animation: fadeScaleIn 0.2s forwards;
}
.popup-list {
  box-sizing: border-box;
  max-width: 100%;
  max-height: inherit;
  overflow: auto;
  background-color: var(--gray-800);
  color: #EAEAEA;
  list-style: none;
  margin: 0;
  padding: 8px 0;
  outline: 0;
  font-size: 12px;
}
.popup-list > li {
  padding: 4px 12px;
  cursor: pointer;
}
.popup-list > li.separator {
  height: 1px;
  padding: 0;
  margin: 8px 0;
  background-color: var(--gray-600);
  pointer-events: none;
}
.popup-list > li.insist {
  background-color: #d33410;
}
.popup-list > li.disabled {
  color: var(--gray-300);
  cursor: not-allowed;
}
.popup-list > li:not(.disabled):not(.insist):hover {
  background-color: var(--gray-700);
}
.add-path-point-dlg {
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 50px;
  left: 10px;
  min-width: 400px;
  min-height: 200px;
  max-width: 90%;
  max-height: calc(100vh - 100px);
  border-radius: 6px;
  box-shadow: #15172526 0px 15px 25px 0px, #15172520 0px 2px 8px 0px;
  overflow: hidden;
  background-color: #fff;
  z-index: 9999;
}
.add-path-point-dlg .icon {
  width: 18px;
  height: 18px;
  margin: -2px -4px -1px -4px;
}
.add-path-point-dlg .main {
  gap: 0;
}
.add-path-point-dlg .list {
  min-height: 0;
  overflow-y: auto;
}
.add-path-point-dlg .item {
  padding: 4px 8px;
  border-radius: 3px;
}
.add-path-point-dlg .item:not(.active):hover {
  background-color: var(--gray-100);
}
.add-path-point-dlg .item:hover .hover-only {
  visibility: visible;
}
.add-path-point-dlg .active {
  background-color: var(--green-300);
  color: white;
  --color: white;
}
.add-path-point-dlg select {
  min-height: 28px;
}
.add-path-point-dlg input[name=offset_x],
.add-path-point-dlg input[name=offset_y] {
  width: 5em;
}
.add-path-point-dlg input[name=latitude],
.add-path-point-dlg input[name=longitude] {
  width: 7.2em;
}
.btn-turn-template img {
  width: 30px;
  height: 30px;
  margin: -10px -9px -5px -6px;
}
.btn-turn-template span {
  position: absolute;
  font-size: 11px;
  font-weight: bold;
  color: var(--blue-500);
  width: 50%;
  text-align: center;
}
.map-tooltip {
  position: absolute;
  pointer-events: none;
  flex-direction: column;
  gap: 8px;
  z-index: 10;
  background-color: #fff;
  border-radius: 8px;
}
.reorder-ghost {
  box-sizing: border-box;
  position: fixed;
  z-index: 10000;
  margin: 0;
  opacity: 0.97;
  pointer-events: none !important;
  outline: 2px solid var(--green-300);
  border-radius: 10px;
  box-shadow: 0 16px 32px #14261b2e, 0 4px 10px #14261b24;
  cursor: grabbing;
  overflow: hidden;
}
.reorder-ghost *,
.reorder-ghost .hover-only {
  pointer-events: none !important;
}
.reorder-ghost .hover-only {
  visibility: visible !important;
}
[reorderitem].dragging {
  opacity: 1;
  background: var(--gray-100);
  box-shadow: inset 3px 0 var(--green-400);
}
[reorderitem].dragging:not(.reorder-ghost) > * {
  visibility: hidden !important;
}
.reorder-ghost > * {
  visibility: visible !important;
}
.reorder-marker {
  position: fixed;
  z-index: 10001;
  border-radius: 999px;
  background: var(--green-500);
  box-shadow: 0 0 0 2px #fff, 0 3px 8px #174d2c59;
  pointer-events: none;
  transform: translateY(-50%);
}
.generate-path-dlg {
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 50px;
  left: 10px;
  width: 470px;
  max-width: 90%;
  height: calc(100vh - 62px);
  border-radius: 6px;
  box-shadow: #15172526 0px 15px 25px 0px, #15172520 0px 2px 8px 0px;
  overflow: hidden;
  background-color: #fff;
  z-index: 9999;
}
.generate-path-dlg > .main {
  flex: 1;
}
.generate-path-selector {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  width: 100%;
}
.generate-path-selector button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 100%;
  min-height: 140px;
  border-radius: 8px;
  white-space: normal;
}
.generate-path-selector .btn-title {
  display: block;
  word-break: break-word;
}
.generate-path-selector .btn-icon {
  top: inherit;
  width: 56px;
  height: 56px;
  display: block;
  font-size: 40px;
}
.expand-row:hover {
  filter: brightness(80%) contrast(150%);
  cursor: pointer;
}
.expand-row .expand-icon {
  width: 16px;
  height: 16px;
  background-image: url(data:image/webp;base64,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);
  background-size: 16px 10px;
  background-position: center;
  background-repeat: no-repeat;
}
.expand-row .expand-icon.collapsed {
  transform: rotate(-90deg);
}
.command-template {
  padding: 8px;
  border-radius: 8px;
  box-shadow: 0 0 8px #ddd;
}
.field-search {
  font-size: 1em;
  padding: 8px;
  min-width: 250px;
}
button.runtime-section-edit-button,
button.runtime-section-edit-button:not(:disabled):not(.active):hover {
  width: 100%;
  min-width: 0;
  min-height: 32px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  filter: none;
  font: inherit;
  text-align: inherit;
  white-space: normal;
  overflow-wrap: anywhere;
}
.setting-hint {
  display: inline-flex;
}
.setting-hint > img {
  width: 16px;
}
.gmap-search {
  z-index: 1;
  padding: 10px;
  gap: 0;
}
.gmap-search-suggestions {
  gap: 0;
  background-color: white;
  cursor: pointer;
  padding: 4px 0;
  border-radius: 4px;
}
.gmap-search-suggestion {
  padding: 8px;
}
.gmap-search-suggestion:hover {
  background-color: #eee;
}
.add-rectangle-a,
.add-rectangle-b {
  position: absolute;
  font-size: 15px;
  font-weight: bold;
  left: -16px;
  pointer-events: none;
}
.add-rectangle-a {
  bottom: 0;
}
.add-rectangle-b {
  top: 0;
}
input.w-150 {
  max-width: 150px;
}
.company-logo-sm {
  width: 24px;
  height: 24px;
}
.company-tree-cell {
  position: relative;
}
.company-tree-name {
  min-height: 40px;
  margin: -8px 0;
  display: flex;
  align-items: stretch;
}
.company-tree-guides {
  display: flex;
  align-items: stretch;
  flex: none;
}
.company-tree-guide {
  position: static;
  width: 20px;
  flex: none;
}
.company-tree-guide::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--company-tree-left);
  border-left: 1px solid var(--gray-300);
}
.company-tree-guide:not(.continues):not(.branch)::after {
  display: none;
}
.company-tree-guide.branch::after {
  bottom: 50%;
}
.company-tree-guide.branch.continues::after {
  bottom: 0;
}
.company-tree-guide.branch::before {
  content: "";
  position: absolute;
  top: 50%;
  left: var(--company-tree-left);
  width: 10px;
  border-top: 1px solid var(--gray-300);
}
.company-tree-label {
  min-width: 0;
  align-items: center;
  gap: 8px;
  padding-left: 4px;
}
.company-tree-label > span {
  min-width: 0;
}
.section-company-check {
  vertical-align: middle;
}
.section-company-check > input[type=checkbox] {
  display: block;
  margin: 0 auto;
}
@keyframes fadeScaleIn {
  to {
    opacity: 1;
    transform: scale(1) translate(0, 0);
  }
}

/* web/client/styles/base_small.css */
.medium .tabset > button:not(.view-switch) > span,
.medium .tabset-actions > button:not(.view-switch) > span:not(.button-icon):not(.field-apply-icon),
.medium .field-map-tools-scroll > button:not(.view-switch) > span:not(.button-icon),
.medium .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button > span:not(.button-icon),
.medium #header_id > button > span,
.medium button.compact-on-medium > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}
.medium .tabset > button:not(.view-switch),
.medium .tabset-actions > button:not(.view-switch),
.medium .field-map-tools-scroll > button:not(.view-switch),
.medium .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button,
.medium .field-map-primary-actions > button:not(.view-switch) {
  box-sizing: border-box;
  display: inline-flex;
  min-width: 40px;
  min-height: 40px;
  align-items: center;
  justify-content: center;
}
.medium .tabset > button:not(.view-switch) > img,
.medium .tabset-actions > button:not(.view-switch) > img,
.medium .field-map-tools-scroll > button:not(.view-switch) > img,
.medium .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button > img,
.medium .field-map-primary-actions > button:not(.view-switch) > img {
  top: 0;
}
.medium .button-icon {
  display: inline-grid;
  min-width: 18px;
  min-height: 18px;
  place-items: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}
.medium .table-scroll {
  max-width: 100%;
  min-width: 0;
  overflow: auto;
}
.medium .devices-table-scroll,
.medium .robot-users-table-scroll {
  max-width: 100%;
  min-width: 0;
  overflow: auto;
}
.medium .table-scroll th,
.medium .table-scroll td,
.medium .devices-table-scroll th,
.medium .devices-table-scroll td,
.medium .robot-users-table-scroll th,
.medium .robot-users-table-scroll td {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
html.medium:not(.small) .robot-device-table {
  width: max-content !important;
  min-width: 100% !important;
  table-layout: auto !important;
}
.small {
  --viewport-inline-padding: 8px;
}
.small body {
  min-width: 0;
  overflow-x: clip;
  font-size: 13px;
}
.small button,
.small input,
.small select,
.small textarea {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.small button {
  min-width: 0;
  height: auto;
  white-space: normal;
  overflow-wrap: anywhere;
}
.small pre,
.small code {
  max-width: 100%;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small form > .meta {
  min-width: 0;
  padding: 12px 16px;
}
.small form > .title,
.small form > footer,
.small form > .footer {
  min-width: 0;
  flex-wrap: wrap;
}
.small form > .title > span {
  min-width: 0;
}
.small form > .title > span + button {
  margin-left: 0;
}
.small form > main,
.small form > .main {
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
}
.small form fieldset {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}
.small form table {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100%;
  table-layout: fixed !important;
}
.small form table col:not(.check) {
  width: auto !important;
}
.small .section-dlg > form {
  width: min(960px, 100%);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.small .section-dlg > form > .main {
  min-height: 0;
  flex: 1 1 auto;
  overflow-y: auto;
}
.small .section-dlg > form > :is(.title, .footer) > button,
.small .section-dlg .tabset > button.tab {
  min-height: 44px;
}
.small .section-dlg .tabset > button.tab,
.small .section-dlg .tabset > button.tab:is(:hover, :focus-visible, .active) {
  background-color: transparent;
  color: #202020;
  filter: none;
}
.small .section-dlg .tabset > button.tab.active,
.small .section-dlg .tabset > button.tab.active:hover {
  background-color: #ededf0;
  color: #202020;
  filter: none;
}
.small .section-dlg > form > .meta select {
  min-height: 44px;
}
.small .section-dlg > form > .meta > .section-module-field {
  box-sizing: border-box;
  width: 100%;
  max-width: 360px;
  min-width: 0;
  min-height: 44px;
  height: auto;
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}
.small .section-dlg > form > .meta > .section-module-field > span:first-child {
  width: auto;
  min-width: 0;
  flex: none;
}
.small .section-dlg > form > .meta > .section-module-field > select[name=module] {
  width: 100%;
  min-width: 0;
}
.small .section-name-language-fields {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}
.small .section-name-language-fields > label {
  display: grid;
  min-width: 0;
  min-height: 54px;
  grid-template-columns: minmax(7rem, 38%) minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}
.small .section-name-language-fields > label > span:first-child {
  width: auto;
  align-self: center;
}
.small .section-name-language-fields > label > input {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 40px;
  min-height: 40px;
  max-height: 40px;
  align-self: center;
}
.small .section-settings-editor {
  display: block;
  border: 0;
}
.small .section-settings-editor > colgroup,
.small .section-settings-editor > thead {
  display: none;
}
.small .section-settings-editor > tbody {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 10px;
}
.small .section-settings-editor > tbody > .section-setting-editor-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d7d8de;
  border-radius: 6px;
  background: white;
}
.small .section-settings-editor > tbody > .section-setting-editor-card > td {
  box-sizing: border-box;
  display: grid;
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 54px;
  grid-template-columns: minmax(7rem, 38%) minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  border-bottom: 1px solid #ededf0;
  text-align: left;
}
.small .section-settings-editor > tbody > .section-setting-editor-card > td.grab {
  background-color: #ededf0;
  border-bottom-color: #d7d8de;
  color: #3f414a;
  font-weight: 600;
}
.small .section-settings-editor > tbody > .section-setting-editor-card > td:last-child {
  border-bottom: 0;
}
.small .section-settings-editor > tbody > .section-setting-editor-card > td:empty {
  display: none;
}
.small .section-settings-editor > tbody > .section-setting-editor-card > td::before {
  content: attr(data-label);
  min-width: 0;
  color: #525461;
  font-size: 0.72em;
  font-weight: bold;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
.small .section-settings-editor > tbody > .section-setting-editor-card > td > :is(input:not([type=checkbox]), select) {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  min-height: 40px;
}
.small .section-settings-editor > tbody > .section-setting-editor-card:hover {
  background: white;
  color: #202020;
  --color: gray;
}
.small .section-settings-editor > tbody > .section-setting-editor-card select:is(:hover, :focus) {
  border-color: #76b35a;
  background-color: white;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='m2 2 6 6 6-6' fill='none' stroke='%23525461' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 6px center;
  background-size: 14px 9px;
  color: #202020;
  filter: none;
}
.small .section-settings-editor > tbody > .section-setting-editor-card > td > :is(input[type=checkbox], button, img) {
  justify-self: start;
}
.small .section-settings-editor > tbody > .section-setting-editor-card input[type=checkbox] {
  width: 24px;
  height: 24px;
}
.small .section-setting-checkbox-target {
  box-sizing: border-box;
  display: flex;
  width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: flex-start;
}
.small .section-settings-editor > tbody > .section-setting-editor-card button {
  min-width: 40px;
  min-height: 44px;
}
.small .section-settings-editor > tbody > .section-setting-editor-empty {
  display: block;
  grid-column: 1 / -1;
}
.small .section-settings-editor > tbody > .section-setting-editor-empty > td {
  display: block;
  width: 100%;
  padding: 16px;
}
.small .section-mobile-assignment-group {
  display: grid;
  min-width: 0;
  gap: 8px;
}
.small .section-mobile-assignment-group + .section-mobile-assignment-group {
  margin-top: 12px;
}
.small .section-mobile-assignment-card,
.small .section-mobile-robot-list {
  box-sizing: border-box;
  min-width: 0;
  margin: 0;
  padding: 10px;
  border: 1px solid #d7d8de;
  border-radius: 6px;
  background: white;
}
.small .section-mobile-assignment-card > legend {
  max-width: 100%;
  padding-inline: 6px;
  font-weight: bold;
  overflow-wrap: anywhere;
}
.small .section-mobile-assignment-all,
.small .section-mobile-assignment-row,
.small .section-mobile-implement-list > label {
  box-sizing: border-box;
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  align-items: center;
  gap: 8px;
  padding: 6px 4px;
}
.small :is(.section-mobile-assignment-all, .section-mobile-assignment-row, .section-mobile-implement-list > label) > input[type=checkbox] {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
}
.small .section-mobile-assignment-row + .section-mobile-assignment-row,
.small .section-mobile-implement-list > label + label {
  border-top: 1px solid #ededf0;
}
.small .section-mobile-assignment-all {
  margin-bottom: 4px;
  border-bottom: 1px solid #ededf0;
  font-weight: bold;
}
.small .section-mobile-assignment-all > span,
.small .section-mobile-assignment-row > span,
.small .section-mobile-implement-list > label > span {
  width: auto;
  min-width: 0;
  flex: 1 1 auto;
  overflow-wrap: anywhere;
}
.small .section-mobile-assignment-row > span {
  display: grid;
  gap: 2px;
}
.small .section-mobile-assignment-row small {
  color: #777;
}
.small .section-mobile-implement-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
  gap: 0 8px;
}
.small .section-mobile-implement-list > .sub {
  grid-column: 1 / -1;
  padding: 8px 4px;
}
.small form label {
  min-width: 0;
  height: auto;
  min-height: 2em;
}
.small form label > span:first-child,
.small form label > input:not([type=checkbox]):not([type=radio]),
.small form label > select,
.small form label > div {
  min-width: 0;
}
.small table col.small,
.small table col.medium,
.small table col.big,
.small table col.large {
  width: auto;
}
.small table th,
.small table td {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small .nowrap,
.small table.nowrap-head th {
  white-space: normal;
}
.small .table-scroll {
  border: 1px solid #ededf0;
  border-radius: 4px;
}
.small .table-scroll > table {
  border: 0;
}
.small .table-scroll > table thead th,
.small .devices-table thead th,
.small .robot-users-table thead th {
  position: sticky;
  top: -1px;
  z-index: 2;
  background: #fafafa;
}
.small .toggle {
  display: flex;
  margin: 4px 0;
  min-width: 0;
  flex-wrap: wrap;
}
.small #log {
  width: calc(100vw - 16px);
  min-width: 0;
  max-width: 600px;
}
.small .dialog {
  box-sizing: border-box;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  padding: 8px var(--viewport-inline-padding);
  overflow: hidden;
}
.small .dialog ~ .dialog {
  padding-top: 16px;
}
.small .dialog > form {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  max-height: calc(100vh - 16px);
  max-height: calc(100dvh - 16px);
  overflow-x: clip;
  overflow-y: auto;
}
.small .template-editor > form {
  width: min(960px, 100%);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.small .turn-template-editor > form > .main {
  min-height: 0;
  flex: 1 1 auto;
  overflow-x: hidden;
  overflow-y: auto;
}
.small .turn-template-body,
.small .turn-template-content {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
}
.small .turn-preview {
  position: relative;
  height: auto;
}
.small .point-command-editor > form {
  width: min(640px, 100%);
}
.small .point-command-editor > form > .main {
  min-width: 0;
  overflow-x: hidden;
}
.small .point-command-editor > form > .main > * {
  flex-shrink: 0;
}
.small .turn-template-editor .hover-only {
  visibility: visible;
}
.small .turn-template-editor .tu-te-point button {
  min-width: 40px;
  min-height: 40px;
}
.small .template-editor > form > .footer button {
  box-sizing: border-box;
  height: auto;
  min-height: 44px;
  padding-block: 8px;
  line-height: 1.3;
  overflow: visible;
}
.small .section-setting-options-dlg > form > .main > label:has(> input:is([name=hint_en], [name=hint_hu])) {
  box-sizing: border-box;
  height: auto;
  min-height: 54px;
  gap: 8px;
}
.small .section-setting-options-dlg input:is([name=hint_en], [name=hint_hu]) {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 40px;
  min-height: 40px;
}
.small .dialog.left > form {
  left: var(--viewport-inline-padding);
  top: var(--viewport-inline-padding);
  right: var(--viewport-inline-padding);
}
.small .profile-dialog-main {
  width: min(700px, calc(100vw - 32px)) !important;
}
.small .company-selector-btn {
  min-width: 0;
  max-width: 100%;
}
.small .company-selector-crumbs {
  flex: 1 1 auto;
}
.small .company-selector-dlg,
.small .company-selector-dlg:has(.company-selector-robot-list.show-users) {
  width: calc(100vw - 16px);
}
.small .company-selector-search {
  min-width: 0;
  flex-wrap: wrap;
  gap: 8px;
}
.small .company-selector-search > input {
  min-width: 0;
  flex: 1 1 12em;
}
.small .company-selector-body {
  min-width: 0;
  min-height: 0;
  height: min(560px, calc(100dvh - 150px));
  grid-template-columns: minmax(120px, 1fr) minmax(0, 2fr);
}
.small .company-selector-robot-list {
  min-width: 0;
  width: 100%;
}
.small .company-selector-robot-header,
.small .company-selector-robot-row,
.small .company-selector-robot-list.show-users .company-selector-robot-header,
.small .company-selector-robot-list.show-users .company-selector-robot-row,
.small .company-selector-fieldgroup-header,
.small .company-selector-fieldgroup-row {
  grid-template-columns: minmax(110px, 1fr) minmax(0, 1fr);
}
.small .company-selector-robot-list.show-users .company-selector-robot-header,
.small .company-selector-robot-list.show-users .company-selector-robot-row {
  grid-template-columns: minmax(100px, 1fr) minmax(100px, 1fr) minmax(0, 1fr);
}
.small .path-selector-dlg,
.small .popup,
.small .popup-list {
  max-width: calc(100vw - 16px);
  max-height: calc(100dvh - 16px);
}
.small .path-selector-dlg {
  box-sizing: border-box;
  left: var(--viewport-inline-padding) !important;
  right: var(--viewport-inline-padding) !important;
  top: 58px !important;
  width: auto !important;
  max-width: none;
  max-height: calc(100dvh - var(--mobile-nav-height, 70px) - 66px) !important;
}
.small .popup-list {
  overflow: auto;
}
.small .add-path-point-dlg,
.small .generate-path-dlg {
  box-sizing: border-box;
  left: var(--viewport-inline-padding);
  right: var(--viewport-inline-padding);
  top: 58px;
  width: auto;
  min-width: 0;
  max-width: none;
  max-height: calc(100dvh - var(--mobile-nav-height, 70px) - 66px);
}
.small .generate-path-dlg {
  height: calc(100dvh - var(--mobile-nav-height, 70px) - 66px);
}
.small .generate-path-selector {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.small .rs-ui-selected-row.active {
  flex-wrap: wrap;
}
.small .rs-ui-row-settings {
  min-width: 0;
  flex: 1 1 100%;
}
.small .rs-ui-simple-headland {
  margin-left: 0;
  max-width: 100%;
}
.small .rs-ui-legend {
  flex-wrap: wrap;
}
.small .field-search {
  min-width: 0;
  width: 100%;
}
.small .multi-selector {
  min-width: 0;
  max-width: 100%;
}
.small .flex {
  min-width: 0;
  flex-wrap: wrap;
}
.small .flex > * {
  min-width: 0;
  max-width: 100%;
}
.small .path-selector-dlg .psd-leading-col {
  width: 36px;
}
.small .path-selector-dlg .psd-metric-col {
  width: 76px;
}
.small .path-selector-dlg .popup-btn {
  box-sizing: border-box;
  min-width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) {
  display: block;
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100%;
  table-layout: auto !important;
  border: 0;
}
.small :is(.table-scroll.responsive-table-cards, .devices-table-scroll.responsive-table-cards) {
  overflow: visible;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) colgroup {
  display: none;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > thead {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 10px;
  align-items: start;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr {
  display: block;
  min-width: 0;
  margin: 0;
  padding: 4px;
  overflow: hidden;
  border: 1px solid #ededf0;
  border-radius: 6px;
  background: white;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading) {
  display: flex;
  flex-direction: column;
}
.small .responsive-table-section {
  display: flex;
}
.small .runtime-section-table > colgroup > col:first-child {
  width: min(42vw, 200px) !important;
}
.small .runtime-section-table > tbody > tr > td {
  min-width: 0;
  padding-block: 12px;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small button.runtime-section-edit-button {
  min-height: 44px;
}
.small .implement-presets-table > colgroup > col:first-child {
  width: min(52vw, 260px) !important;
}
.small .dialog.section-dlg > form {
  overflow: hidden;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr.robot-users-external-title {
  grid-column: 1 / -1;
  padding: 0;
  border: 0;
  background: transparent;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr.robot-users-external-title > th {
  padding: 8px;
  border: 1px solid #ededf0;
  border-radius: 4px;
  background: #f6f6f8;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(7.5rem, 40%) minmax(0, 1fr);
  gap: 8px;
  width: 100% !important;
  min-width: 0;
  height: auto;
  padding: 7px 8px;
  align-items: start;
  overflow-wrap: anywhere;
  word-break: break-word;
  border-bottom: 1px solid #ededf0;
  background-position: center right 8px;
  text-align: left !important;
}
.small .responsive-cell-value {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td:last-child {
  border-bottom: 0;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td::before {
  content: attr(data-label);
  min-width: 0;
  color: #525461;
  font-size: 0.78em;
  font-weight: bold;
  line-height: 1.4;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td[data-label]:not([data-label=""]) {
  background-color: #ededf0;
  border-bottom-color: #d7d8de;
  color: #3f414a;
  font-weight: 600;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td[data-label]:not([data-label=""]) ~ td[data-label]:not([data-label=""]) {
  background-color: white;
  border-bottom-color: #ededf0;
  color: inherit;
  font-weight: normal;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td[data-label]:not([data-label=""])::before {
  color: #3f414a;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td[data-label]:not([data-label=""]) ~ td[data-label]:not([data-label=""])::before {
  color: #525461;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading) > td[data-label]:not([data-label=""]):not(.responsive-card-heading) {
  background-color: white !important;
  border-bottom-color: #ededf0 !important;
  color: inherit !important;
  font-weight: normal !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading) > td.responsive-card-heading {
  order: -1;
  background-color: #ededf0 !important;
  border-bottom-color: #d7d8de !important;
  color: #3f414a !important;
  font-weight: 600 !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td.responsive-card-heading::before {
  color: #3f414a !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading) > td:not(.responsive-card-heading)::before {
  color: #525461 !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > td.responsive-card-picture {
  display: none !important;
}
.small .responsive-card-heading-icon {
  display: block !important;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  object-fit: contain;
}
@media (hover: hover) and (pointer: fine) {
  .small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:not(.dragging):not(.nohover):hover > td,
  .small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:not(.dragging):not(.nohover):hover > td[data-label] {
    background-color: #76b35a !important;
    border-bottom-color: #ffffff40 !important;
    color: white !important;
  }
  .small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:not(.dragging):not(.nohover):hover > td[data-label]:not([data-label=""])::before {
    color: white !important;
  }
  .small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading):not(.dragging):not(.nohover):hover > td[data-label]:not([data-label=""]) {
    background-color: #76b35a !important;
    border-bottom-color: #ffffff40 !important;
    color: white !important;
  }
  .small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading):not(.dragging):not(.nohover):hover > td[data-label]:not([data-label=""])::before {
    color: white !important;
  }
}
@media (hover: none), (pointer: coarse) {
  .small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:not(.highlight):hover {
    background: white !important;
    color: #202020 !important;
    --color: gray;
  }
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr.highlight > td {
  background-color: #f6751f !important;
  border-bottom-color: #ffffff40 !important;
  color: white !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr.highlight > td[data-label] {
  background-color: #f6751f !important;
  border-bottom-color: #ffffff40 !important;
  color: white !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading).highlight > td[data-label]:not([data-label=""]) {
  background-color: #f6751f !important;
  border-bottom-color: #ffffff40 !important;
  color: white !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr:has(> td.responsive-card-heading).highlight > td[data-label]:not([data-label=""])::before {
  color: white !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr.highlight > td[data-label]:not([data-label=""])::before {
  color: white !important;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > :is(td:not([data-label]), td[data-label=""]) {
  display: block;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > :is(td:not([data-label]), td[data-label=""])::before {
  display: none;
}
.small :is(table.responsive-table-cards, .responsive-table-cards > table) > tbody > tr > th {
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: auto;
  white-space: normal;
  overflow-wrap: anywhere;
}
.small .responsive-table-cards > table.companies-tree .company-tree-cell {
  display: block;
}
.small .responsive-table-cards > table.companies-tree .company-tree-cell::before {
  display: block;
  margin-bottom: 4px;
}
.small .responsive-table-cards > table.companies-tree .company-tree-name {
  min-width: 0;
  min-height: 34px;
  margin: 0;
}
.small .responsive-table-cards > table.companies-tree .company-tree-guides {
  display: flex;
}
.small .responsive-table-cards > table.companies-tree .company-tree-guide {
  position: relative;
  width: 16px;
}
.small .responsive-table-cards > table.companies-tree .company-tree-guide::after,
.small .responsive-table-cards > table.companies-tree .company-tree-guide.branch::before {
  left: 50%;
}
.small .responsive-table-cards > table.companies-tree .company-tree-guide.branch::before {
  width: 8px;
}
.small .responsive-table-cards > table.companies-tree .company-tree-label {
  flex-wrap: nowrap;
}
@media screen and (max-width: 600px) {
  html.small .company-selector-body {
    display: flex;
    flex-direction: column;
  }
  html.small .company-selector-pane {
    box-sizing: border-box;
    min-height: 0;
    display: flex;
    flex: 0 0 44px;
    flex-direction: column;
    overflow: hidden;
    border-bottom: 1px solid var(--gray-200);
  }
  html.small .company-selector-pane:last-child {
    border-bottom: 0;
  }
  html.small .company-selector-pane.active {
    flex: 1 1 auto;
  }
  html.small .company-selector-pane-summary {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    display: flex;
    flex: 0 0 44px;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border: 0;
    border-radius: 0;
    background: var(--gray-100);
    color: var(--gray-700);
    text-align: left;
  }
  html.small .company-selector-pane.active > .company-selector-pane-summary {
    border-bottom: 1px solid var(--gray-200);
    background: white;
  }
  html.small .company-selector-pane-summary > span {
    flex: 0 0 auto;
    color: var(--gray-700);
    font-size: .8em;
    font-weight: 600;
    text-transform: uppercase;
  }
  html.small .company-selector-pane-summary > strong {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  html.small .company-selector-pane-summary > .expand-icon {
    top: 0;
    width: 16px;
    height: 10px;
    flex: 0 0 auto;
    filter: none;
    transition: transform .15s ease;
  }
  html.small .company-selector-pane.active > .company-selector-pane-summary > .expand-icon {
    transform: rotate(180deg);
  }
  html.small .company-selector-pane > :is(.company-selector-roots, .company-selector-tree) {
    display: none;
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
  }
  html.small .company-selector-pane.active > :is(.company-selector-roots, .company-selector-tree) {
    display: block;
  }
  html.small .company-selector-roots {
    border-right: 0;
  }
  html.small :is(.company-selector-roots > .company-selector-root-node, .company-selector-tree > .company-selector-tree-node) {
    position: relative;
    padding-left: var(--company-selector-mobile-indent, 8px);
    align-items: flex-start;
  }
  html.small :is(.company-selector-roots > .company-selector-root-node.nested, .company-selector-tree > .company-selector-tree-node.nested)::before,
  html.small :is(.company-selector-roots > .company-selector-root-node.nested, .company-selector-tree > .company-selector-tree-node.nested)::after {
    content: "";
    position: absolute;
    left: calc(16px + (var(--company-selector-depth) - 1) * 16px);
    pointer-events: none;
  }
  html.small :is(.company-selector-roots > .company-selector-root-node.nested, .company-selector-tree > .company-selector-tree-node.nested)::before {
    top: -5px;
    height: calc(50% + 5px);
    border-left: 1px solid var(--gray-300);
  }
  html.small :is(.company-selector-roots > .company-selector-root-node.nested, .company-selector-tree > .company-selector-tree-node.nested)::after {
    top: 50%;
    width: 8px;
    border-top: 1px solid var(--gray-300);
  }
  html.small :is(.company-selector-roots > .company-selector-root-node.selected, .company-selector-tree > .company-selector-tree-node.selected)::before,
  html.small :is(.company-selector-roots > .company-selector-root-node.selected, .company-selector-tree > .company-selector-tree-node.selected)::after {
    border-color: #ffffffb3;
  }
  html.small .company-selector-tree .company-selector-company,
  html.small .company-selector-tree .company-selector-entities {
    flex-wrap: nowrap;
  }
  html.small .company-selector-tree .company-selector-entities {
    position: relative;
    margin-left: 20px;
    padding-left: 10px;
    border-left: 1px solid var(--gray-300);
  }
  html.small .company-selector-tree .company-selector-row.selected .company-selector-entities {
    border-left-color: #ffffff80;
  }
  html.small .company-selector-tree .company-selector-entities > div {
    flex: 1 1 auto;
  }
  html.small .company-selector-tree .company-selector-entity-group-label {
    display: block;
    flex: 0 0 100%;
    color: var(--gray-600);
    font-size: .75em;
    font-weight: 600;
    line-height: 1.4;
    text-transform: uppercase;
  }
  html.small .company-selector-tree .company-selector-row.selected .company-selector-entity-group-label {
    color: #ffffffe6;
  }
  html.small .company-selector-robot-header,
  html.small .company-selector-robot-row,
  html.small .company-selector-robot-list.show-users .company-selector-robot-header,
  html.small .company-selector-robot-list.show-users .company-selector-robot-row,
  html.small .company-selector-fieldgroup-header,
  html.small .company-selector-fieldgroup-row {
    grid-template-columns: minmax(0, 1fr);
  }
  html.small .company-selector-robot-header,
  html.small .company-selector-fieldgroup-header {
    display: none;
  }
  html.small :is(.company-selector-robot-row, .company-selector-fieldgroup-row) > [data-mobile-label] {
    box-sizing: border-box;
    position: relative;
    min-height: 28px;
    padding: 4px 4px 4px 86px;
    border-bottom: 1px solid var(--gray-200);
  }
  html.small :is(.company-selector-robot-row, .company-selector-fieldgroup-row) > [data-mobile-label]:last-child {
    border-bottom: 0;
  }
  html.small :is(.company-selector-robot-row, .company-selector-fieldgroup-row) > [data-mobile-label]::before {
    content: attr(data-mobile-label);
    position: absolute;
    top: 5px;
    left: 4px;
    width: 76px;
    color: var(--gray-600);
    font-size: .72em;
    font-weight: 600;
    line-height: 1.4;
    text-transform: uppercase;
  }
  html.small .company-selector-row.selected :is(.company-selector-robot-row, .company-selector-fieldgroup-row) > [data-mobile-label]::before {
    color: #ffffffe6;
  }
  html.small .company-selector-robot-header > :not(:first-child),
  html.small .company-selector-fieldgroup-header > :not(:first-child) {
    display: none;
  }
  html.small .generate-path-selector {
    grid-template-columns: minmax(0, 1fr);
  }
  html.small .generate-path-selector button {
    min-height: 96px;
  }
}
@media screen and (max-width: 640px) {
  html.small .path-selector-dlg {
    top: 58px !important;
    right: 8px;
    bottom: calc(var(--mobile-nav-height, 70px) + 8px);
    left: 8px !important;
    width: auto;
    max-width: none;
    min-height: 0;
    max-height: none !important;
  }
  html.small .psd-list-row {
    flex-direction: column;
    overflow: hidden;
  }
  html.small .psd-list-col {
    box-sizing: border-box;
    min-height: 44px;
    display: flex;
    flex: 0 0 44px;
    flex-direction: column;
    overflow: hidden;
    border-right: 0;
    border-bottom: 1px solid var(--gray-200);
  }
  html.small .psd-list-col:last-child {
    border-bottom: 0;
  }
  html.small .psd-list-col.active {
    min-height: 0;
    flex: 1 1 auto;
  }
  html.small .psd-pane-summary {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    display: flex;
    flex: 0 0 44px;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border: 0;
    border-radius: 0;
    background: var(--gray-100);
    color: var(--gray-700);
    text-align: left;
  }
  html.small .psd-list-col.active > .psd-pane-summary {
    border-bottom: 1px solid var(--gray-200);
    background: white;
  }
  html.small .psd-pane-summary > span {
    flex: 0 0 auto;
    color: var(--gray-700);
    font-size: .8em;
    font-weight: 600;
    text-transform: uppercase;
  }
  html.small .psd-pane-summary > strong {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  html.small .psd-pane-summary > .expand-icon {
    top: 0;
    width: 16px;
    height: 10px;
    flex: 0 0 auto;
    filter: none;
    transition: transform .15s ease;
  }
  html.small .psd-list-col.active > .psd-pane-summary > .expand-icon {
    transform: rotate(180deg);
  }
  html.small .psd-pane-content {
    display: none;
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
  }
  html.small .psd-list-col.active > .psd-pane-content {
    display: flex;
    flex-direction: column;
  }
  html.small .psd-pathsets-head,
  html.small .psd-paths-head {
    min-width: 0;
    min-height: 44px;
    flex: 0 0 auto;
  }
  html.small .path-selector-dlg .psd-pathsets,
  html.small .path-selector-dlg .psd-paths {
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden auto;
  }
  html.small .path-selector-dlg :is(.psd-pathsets, .psd-paths) > table {
    width: 100%;
    min-width: 0 !important;
  }
  html.small form label:has(> span:first-child) {
    align-items: stretch;
    flex-wrap: wrap;
  }
  html.small form .section-name-language-fields > label:has(> span:first-child) {
    align-items: center;
  }
  html.small form label > span:first-child {
    width: auto;
    flex: 1 0 100%;
  }
  html.small form > .meta > label > span:first-child {
    width: auto;
  }
  html.small form fieldset.flex,
  html.small form :is(main, .main) > div[style*="display: flex"],
  html.small form :is(main, .main) > div[style*="display:flex"] {
    min-width: 0;
    flex-wrap: wrap;
  }
  html.small form :is(.device-editor-meta, .device-editor-main) > label:has(> span:first-child) {
    align-items: center;
    flex-wrap: nowrap;
  }
  html.small form :is(.device-editor-meta, .device-editor-main) > label > span:first-child {
    width: auto;
    flex: 0 1 clamp(90px, 34%, 140px);
    overflow-wrap: anywhere;
  }
  html.small form :is(.device-editor-meta, .device-editor-main) > label > :is(input:not([type=checkbox]):not([type=radio]), select, div) {
    min-width: 0;
    flex: 1 1 0;
  }
  html.small .turn-template-editor > form > .main {
    gap: 12px;
    padding: 12px;
  }
  html.small .turn-preview {
    box-sizing: border-box;
    width: calc(100% - 24px);
    max-width: none;
    margin: 10px 12px;
  }
  html.small .turn-template-implement-controls {
    display: grid;
    min-width: 0;
    gap: 8px;
  }
  html.small .turn-template-implement-controls > label {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    height: auto;
    align-items: center;
    gap: 8px;
  }
  html.small .turn-template-implement-toggle {
    grid-template-columns: minmax(0, 1fr) 24px;
  }
  html.small .turn-template-implement-distance {
    grid-template-columns: minmax(0, 1fr) minmax(72px, 5em) max-content;
  }
  html.small .turn-template-implement-controls > label > span:first-child {
    width: auto;
    min-width: 0;
    flex: none;
    overflow-wrap: anywhere;
  }
  html.small .turn-template-implement-toggle > input[type=checkbox] {
    width: 24px;
    height: 24px;
    margin: 0;
  }
  html.small .turn-template-implement-distance > input {
    width: 100%;
    min-width: 0;
    min-height: 40px;
  }
  html.small .turn-template-head {
    box-sizing: border-box;
    min-height: 0;
    height: auto;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
  }
  html.small .turn-template-head > .grab {
    width: 20px;
    min-width: 20px;
    flex: 0 0 20px;
  }
  html.small .turn-template-head > label.checkbox {
    box-sizing: border-box;
    min-width: 0;
    min-height: 44px;
    height: auto;
    margin-right: 0 !important;
    flex: 1 1 calc(100% - 28px);
    flex-wrap: nowrap;
  }
  html.small .turn-template-head > label.checkbox > .turn-template-title {
    width: auto;
    min-width: 0;
    flex: 1 1 auto;
  }
  html.small .turn-template-head > button {
    min-width: 44px;
    min-height: 44px;
    flex: 0 0 auto;
    justify-content: center;
  }
  html.small .turn-template-head > button:nth-last-child(-n+2) {
    flex: 1 1 120px;
  }
  html.small .turn-template-settings {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px;
    align-items: center;
    gap: 8px !important;
    padding: 10px 12px;
  }
  html.small .turn-template-settings > label:first-child {
    grid-column: 1;
    min-width: 0;
    min-height: 40px;
    height: auto;
    flex-wrap: nowrap;
  }
  html.small .turn-template-settings > select[name=headland] {
    grid-column: 2 / -1;
  }
  html.small .turn-template-settings > input[name=categoryId] {
    grid-column: 1 / -1;
  }
  html.small .turn-template-settings > .turn-preview-show,
  html.small .turn-template-settings > input[name=categoryIds] {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
  }
  html.small .turn-template-settings > select[name=useCustomRows] {
    grid-column: 1;
  }
  html.small .turn-template-settings > input[name=customRows] {
    grid-column: 2 / -1;
  }
  html.small .turn-template-settings > label.checkbox {
    grid-column: 1 / 3;
    min-width: 0;
    min-height: 44px;
    height: auto;
    flex-wrap: nowrap;
  }
  html.small .turn-template-settings > label.checkbox > span {
    width: auto;
    min-width: 0;
    flex: 1 1 auto;
    overflow-wrap: anywhere;
  }
  html.small .turn-template-settings > :is(input, select) {
    width: 100%;
    min-width: 0;
    min-height: 40px;
  }
  html.small .turn-template-settings > button.small.flat {
    box-sizing: border-box;
    grid-column: 3;
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    margin-right: 0 !important;
    justify-self: end;
  }
  html.small .turn-shape-summary {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
  }
  html.small .turn-shape-summary > label {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 40px;
    grid-template-columns: minmax(0, 1fr) minmax(56px, auto);
    align-items: center;
    gap: 6px;
  }
  html.small .turn-shape-summary > label.checkbox {
    grid-column: 1 / -1;
    grid-template-columns: 24px minmax(0, 1fr);
  }
  html.small .turn-shape-summary > label > span:first-child {
    width: auto;
    min-width: 0;
    overflow-wrap: anywhere;
  }
  html.small .turn-shape-summary > label > input:not([type=checkbox]):not([type=radio]) {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: 40px;
  }
  html.small .turn-shape-summary > button {
    min-width: 44px;
    min-height: 44px;
  }
  html.small .tu-te-point {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
  }
  html.small .turn-template-point-fields {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 0;
    grid-template-columns: minmax(72px, auto) repeat(2, minmax(0, 1fr));
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
  }
  html.small .turn-template-point-fields > label.checkbox {
    grid-column: 1;
    min-width: 0;
    min-height: 44px;
    height: auto;
    flex-wrap: nowrap;
  }
  html.small .turn-template-point-fields > label.checkbox > span:first-child {
    width: auto;
    flex: 0 0 auto;
  }
  html.small .turn-template-point-fields > div.flex.turn-template-offset-x {
    grid-column: 2;
  }
  html.small .turn-template-point-fields > div.flex {
    display: grid;
    grid-column: 3;
    grid-template-columns: minmax(0, 1fr) max-content;
    gap: 4px;
    flex-wrap: nowrap;
  }
  html.small .turn-template-point-fields > div.flex > span {
    min-width: 0 !important;
  }
  html.small .turn-template-point-fields > select[name=bearing_type] {
    grid-column: 1 / 3;
  }
  html.small .turn-template-point-fields > div.turn-template-bearing {
    grid-column: 3;
  }
  html.small .turn-template-point-fields > select[name=base] {
    grid-column: 3;
  }
  html.small .turn-template-point-fields:has(> div.turn-template-bearing) > select[name=base] {
    grid-column: 1 / 3;
  }
  html.small .turn-template-point-fields > input[name=category_id] {
    grid-column: 1 / 3;
    max-width: none !important;
  }
  html.small .turn-template-point-fields > button.link {
    box-sizing: border-box;
    grid-column: 3;
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    justify-self: start;
  }
  html.small .turn-template-point-fields > :is(input, select),
  html.small .turn-template-point-fields > div.flex > input {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: 40px;
  }
  html.small .tu-te-point > .tu-te-separator {
    width: auto;
    min-width: 0;
    height: 2px;
    min-height: 2px;
    margin: 0 12px;
  }
  html.small .tu-te-point > :is(.tu-te-commands, .tu-te-types) {
    box-sizing: border-box;
    width: auto;
    min-width: 0;
    margin: 10px 12px;
    align-self: stretch;
  }
  html.small :is(.tu-te-add-command-btn.sm, .tu-te-change-type-btn.sm) {
    position: static;
    min-width: 44px;
    min-height: 44px;
  }
  html.small .turn-template button:is(.tu-te-add-command-btn, .tu-te-change-type-btn) {
    min-width: 44px;
    min-height: 44px;
  }
  html.small .point-command-editor :is(.point-command-event-row, .point-command-condition-row) {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr) minmax(72px, 112px) max-content;
    align-items: center;
    gap: 8px;
  }
  html.small .point-command-editor :is(.point-command-event-row, .point-command-condition-row) > span:first-child,
  html.small .point-command-editor :is(.point-command-event-row, .point-command-condition-row) > .point-command-input {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    max-width: none;
  }
  html.small .point-command-editor .point-command-event-row > select:not(.point-command-input) {
    grid-column: 1;
    width: 100%;
    min-width: 0 !important;
  }
  html.small .point-command-editor .point-command-event-row > input[type=number] {
    box-sizing: border-box;
    grid-column: 2;
    width: 100%;
    min-width: 0;
    max-width: none !important;
  }
  html.small .point-command-editor :is(.point-command-event-row, .point-command-condition-row) > sub {
    grid-column: 3;
    min-width: 0;
  }
  html.small .point-command-editor :is(.point-command-event-row, .point-command-condition-row) > sub:empty {
    display: none;
  }
  html.small .point-command-custom-condition {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(64px, 0.7fr) minmax(0, 1.3fr) 44px;
    gap: 8px;
  }
  html.small .point-command-custom-condition > input {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }
  html.small .point-command-custom-condition > button.small {
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    height: auto !important;
  }
  html.small .point-command-param-row {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: auto;
    grid-template-columns: minmax(0, 1fr) max-content;
    grid-template-rows: auto auto;
    align-items: center;
    gap: 6px;
  }
  html.small .point-command-param-row > .point-command-param-name:first-child {
    box-sizing: border-box;
    grid-column: 1 / -1;
    grid-row: 1;
    width: auto;
    min-width: 0;
    min-height: 40px;
    height: auto;
    align-self: stretch;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  html.small .point-command-param-row > :is(input:not([type=checkbox]):not([type=radio]), select) {
    box-sizing: border-box;
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    min-width: 0;
    min-height: 40px;
    height: 40px;
    max-width: none;
  }
  html.small .point-command-param-unit {
    grid-column: 2;
    grid-row: 2;
    min-width: 24px;
    align-self: center;
  }
  html.small .turn-template-editor > form > .footer {
    padding: 8px;
    gap: 8px;
  }
  html.small .turn-template-editor > form > .footer > .flex {
    min-width: 0;
    flex: 1 1 100%;
    gap: 8px;
  }
  html.small .turn-template-editor > form > .footer button {
    min-width: 40px;
    min-height: 40px;
  }
  html.small .turn-template-editor > form > .footer > .flex > button {
    flex: 1 1 120px;
  }
}
@media screen and (min-width: 641px) and (max-width: 800px) {
  html.small .tu-te-point {
    box-sizing: border-box;
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: hidden;
  }
  html.small .tu-te-point > .turn-template-point-fields {
    box-sizing: border-box;
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
  }
  html.small .tu-te-point > .tu-te-separator {
    display: none;
  }
  html.small .tu-te-point > :is(.tu-te-commands, .tu-te-types) {
    box-sizing: border-box;
    width: auto;
    min-width: 0;
    margin: 10px 12px;
    align-self: stretch;
  }
}
@media (hover: none), (pointer: coarse) {
  .hover-only {
    visibility: visible;
  }
}
@media screen and (max-height: 340px) {
  .dialog.section-dlg {
    padding-top: 0;
    height: 100%;
  }
  .dialog.section-dlg > form {
    max-height: 100%;
  }
}
@media screen and (max-height: 280px) {
  .dialog {
    padding-top: 0;
    align-content: center;
    flex-wrap: wrap;
  }
  .dialog > form {
    max-height: 100%;
  }
}

/* web/client/styles/center.css */
#header {
  position: fixed;
  z-index: 999;
  box-sizing: border-box;
  left: 0;
  top: 0;
  width: 100%;
  display: flex;
  height: 50px;
  padding-left: 10px;
  padding-right: 10px;
  gap: 0.71em;
  align-items: center;
  background: #f6f6f8;
  color: #838691;
  border-bottom: 1px solid #ededf0;
}
.header-btn,
#header_logo {
  display: flex;
  margin-right: 6px;
  width: 50px;
  height: 100%;
  align-items: center;
  justify-content: center;
}
.header-btn > img,
#header_logo > img {
  width: 34px;
  height: 34px;
}
.header-btn {
  margin-right: 0;
}
.header-btn.search > img {
  width: 30px;
  height: 30px;
}
.dialog > form:has(> .field-search-results) {
  overflow: hidden;
}
.field-search-results {
  overflow: hidden;
}
.field-search-results > .table-scroll {
  max-height: calc(100dvh - 190px);
  overflow: auto;
}
.field-search-results .field-entity-table {
  border-collapse: separate;
  border-spacing: 0;
}
.field-search-results .field-entity-table > thead > tr > th {
  position: sticky;
  top: 0;
  z-index: 3;
  border-bottom: 1px solid var(--hp-border);
  background: #f4f8f5;
  box-shadow: none;
}
#header_title {
  color: #525461;
  font-size: 1.5em;
}
#header_mod {
  flex: 1;
  min-width: 0;
  max-width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.71em;
}
#header_mod > * {
  min-width: 0;
  max-width: 100%;
}
#header_mod > select {
  flex-shrink: 1;
}
#header_id {
  flex: 0 0 auto;
  display: flex;
  justify-content: right;
  gap: 0.71em;
}
#modes {
  position: fixed;
  z-index: 9999;
  box-sizing: border-box;
  left: 0;
  top: 49px;
  width: 80px;
  height: calc(100vh - 51px);
  padding-top: 10px;
  display: flex;
  flex-direction: column;
  background: #f6f6f8;
  border-right: 1px solid #ededf0;
  align-items: center;
  overflow: hidden auto;
}
#modes > a {
  margin-top: 4px;
  display: flex;
  flex-direction: column;
  width: 70px;
  gap: 2px;
  align-items: center;
  text-align: center;
  cursor: pointer;
  font-size: 0.7em;
  text-transform: uppercase;
  text-align: center;
  color: #c2c2c2;
}
#modes > a > .mode-label {
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#modes > a > img {
  max-width: 70%;
  max-height: 60%;
  aspect-ratio: 1/1;
  object-fit: contain;
  filter: saturate(0%) brightness(120%);
}
#modes > a:hover {
  color: #a1a1a1;
}
#modes > a:hover > img {
  filter: saturate(0%);
}
#modes > a.active {
  color: #65c151;
}
#modes > a.active > img {
  filter: none;
}
#modes .sticky-btn {
  position: sticky;
  bottom: 0;
  background: #f6f6f8;
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
}
#page > main {
  padding: 50px 0 0 80px;
  height: 100%;
  box-sizing: border-box;
}
#main {
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 10px;
  min-height: calc(100% - 20px);
}
#main > * + * {
  margin-top: 1rem;
}
.field-workspace-view {
  box-sizing: border-box;
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
html:has(#main.field-workspace-view),
html:has(#main.field-workspace-view) body {
  overflow: hidden;
}
#page > main:has(> #main.field-workspace-view) {
  overflow: hidden;
}
#main.field-workspace-view > .tabset {
  display: none;
}
#main.field-workspace-view > .field-workspace-stage {
  margin-top: 0;
}
.field-workspace-view .field-map-tools {
  display: none;
}
.field-workspace-stage {
  box-sizing: border-box;
  display: flex;
  min-width: 0;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #dfe2e6;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 32px #252a3417;
}
#main > .field-workspace-stage.is-expanded {
  position: fixed;
  z-index: 10000;
  inset: 0;
  margin: 0;
  border-width: 0;
  border-radius: 0;
  box-shadow: none;
}
html.point-editor-expanded,
html.point-editor-expanded body {
  overflow: hidden;
}
html.point-editor-expanded .dialog {
  z-index: 10001;
}
.field-workspace-toolbar {
  box-sizing: border-box;
  display: flex;
  min-height: 58px;
  padding: 8px 10px 8px 12px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid #e4e7ea;
  background:
    linear-gradient(
      135deg,
      #fbfcfb 0%,
      #f0f7ee 100%);
}
.field-workspace-title {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 10px;
  color: #444852;
}
.field-workspace-title > span:last-child {
  min-width: 0;
}
.field-workspace-title strong,
.field-workspace-title small {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.field-workspace-title small {
  margin-top: 2px;
  color: #838691;
}
.field-workspace-mark {
  box-sizing: border-box;
  display: inline-flex;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: #e1f2dc;
}
.field-workspace-mark > img {
  width: 20px;
  height: 20px;
}
.field-workspace-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 6px;
}
.field-workspace-actions > :is(button, a) {
  box-sizing: border-box;
  display: inline-flex;
  width: 40px;
  height: 40px;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid #d8dce0;
  border-radius: 9px;
  background: #fff;
  color: #525461;
  font-size: 1.35em;
  line-height: 1;
  text-decoration: none;
}
.field-workspace-actions > .field-workspace-save {
  width: auto;
  min-width: 40px;
  padding: 0 13px;
  gap: 7px;
  border-color: #65aa4d;
  background: #65b94e;
  color: #fff;
  font-size: 0.9em;
  font-weight: 600;
}
.field-workspace-action-icon {
  font-size: 1.25em;
  line-height: 1;
}
.field-workspace-actions > :is(button, a):disabled {
  cursor: not-allowed;
  opacity: 0.55;
}
.field-workspace-actions > :is(button, a):hover {
  border-color: #76b35a;
  background: #f2f8ef;
  color: #579541;
  filter: none;
}
.field-workspace-actions > .field-workspace-save:hover {
  border-color: #54973e;
  background: #5aa944;
  color: #fff;
}
.field-workspace-actions > .field-workspace-close:hover {
  border-color: #dc8c8c;
  background: #fff4f4;
  color: #b33d3d;
}
.field-workspace-actions > a:visited {
  color: #525461;
}
.field-workspace-expand-close {
  display: none;
}
.field-workspace-stage.is-expanded .field-workspace-expand-open {
  display: none;
}
.field-workspace-stage.is-expanded .field-workspace-expand-close {
  display: inline;
}
.field-workspace-frame {
  display: block;
  width: 100%;
  min-width: 0;
  height: 100%;
  min-height: 0;
  flex: 1 1 auto;
  border: 0;
  background: #f4f5f7;
}
.field-workspace-empty {
  box-sizing: border-box;
  display: flex;
  min-height: 260px;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 24px;
  color: #525461;
  text-align: center;
}
.field-workspace-empty > img {
  width: 44px;
  height: 44px;
  margin-bottom: 6px;
  opacity: 0.65;
}
.point-editor-close-dialog > form {
  max-width: min(520px, calc(100vw - 24px));
}
.point-editor-close-dialog .main > p {
  margin-bottom: 0;
}
.point-editor-close-actions {
  flex-wrap: wrap;
}
#home {
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
}
#home > a {
  display: flex;
  flex-direction: column;
  width: 120px;
  gap: 6px;
  align-items: center;
  text-align: center;
  cursor: pointer;
  font-size: 0.8em;
  text-transform: uppercase;
  color: #a1a1a1;
}
#home > a > img {
  max-height: calc(100% - 20px);
  max-width: min(70%, 124px);
  aspect-ratio: 1/1;
  object-fit: contain;
  filter: saturate(0%);
}
#home > a:hover {
  color: #65c151;
}
#home > a:hover > img {
  filter: none;
}
img.picture {
  width: 128px;
  height: 128px;
  margin: 0 auto;
  padding: 1em;
}
.profile-dialog-username {
  margin: -0.4em 0 1em;
  overflow-wrap: anywhere;
  text-align: center;
  font-weight: 600;
}
img.working {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  animation: work_spin 0.8s ease-in-out infinite;
}
@keyframes work_spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#settings {
  display: flex;
  flex-direction: column;
  position: fixed;
  box-sizing: border-box;
  width: 400px;
  height: calc(100% - 50px);
  padding-bottom: 10px;
  border-right: 1px solid #ededf0;
  overflow-y: auto;
  align-items: center;
}
#settings table {
  width: 100%;
  border: none;
}
#settings > :not(table) + table {
  border-top: 1px solid #ededf0;
}
#settings thead > tr {
  background: #f6f6f8;
  color: #525461;
  padding: 0px 20px;
  text-transform: uppercase;
}
#settings thead > tr > th {
  font-weight: normal;
}
#settings + #main {
  margin-left: 400px;
}
#settings.field-workspace-settings {
  display: none;
}
#settings.field-workspace-settings + #main {
  margin-left: 0;
}
#settings > * + :not(table) {
  margin-top: 12px;
}
#settings > .toggle {
  margin: 14px auto;
}
#settings.disabled {
  pointer-events: none;
}
.tabset {
  z-index: 99;
  margin-top: 0;
  display: flex;
  background: white;
  border-bottom: 1px solid #ededf0;
  align-items: end;
  gap: 0.71em;
}
.tabset-tabs,
.tabset-actions {
  min-width: 0;
  display: flex;
  align-items: end;
  gap: 0.71em;
}
.tabset-tabs {
  flex: 0 1 auto;
}
.tabset-actions {
  flex: 1 1 auto;
  justify-content: flex-end;
}
.field-map-tools-scroll,
.field-map-primary-actions {
  display: contents;
}
.tabset > img,
.tabset-tabs > img {
  width: 24px;
  height: 24px;
  margin: 0 5px 8px 10px;
  padding: 0;
}
.tabset > img.picture,
.tabset-tabs > img.picture {
  display: none;
}
.responsive-card-heading-icon {
  display: none;
}
.tabset > .tab,
.tabset-tabs > .tab {
  display: block;
  padding: 0 14px;
  height: 40px;
  line-height: 40px;
  cursor: pointer;
  white-space: nowrap;
}
.tabset > button.tab,
.tabset > button.tab:hover,
.tabset-tabs > button.tab,
.tabset-tabs > button.tab:hover {
  appearance: none;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  color: inherit;
  filter: none;
  font: inherit;
  text-align: left;
}
.tabset > .tab + .tab,
.tabset-tabs > .tab + .tab {
  margin-left: -10px;
}
.tabset > .tab.active,
.tabset-tabs > .tab.active {
  background-color: #ededf0;
  background-image: url(data:image/webp;base64,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AD8A+f6KKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAP/9kA);
  background-position: 8px 50%;
  background-size: 16px;
  background-repeat: no-repeat;
  padding-left: 30px;
  cursor: inherit;
}
.tabset > .tab.disabled,
.tabset-tabs > .tab.disabled {
  cursor: not-allowed;
}
.tabset.configure > .tab.active,
.tabset.configure > .tabset-tabs > .tab.active {
  background-image: url(data:image/webp;base64,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);
}
.tabset > span {
  margin-bottom: 14px;
  font-size: 0.8em;
}
.tabset > label,
.tabset > input,
.tabset > select,
.tabset > button,
.tabset-tabs > label,
.tabset-tabs > input,
.tabset-tabs > select,
.tabset-tabs > button,
.tabset-actions > label,
.tabset-actions > input,
.tabset-actions > select,
.tabset-actions > button,
.field-map-tools-scroll > label,
.field-map-tools-scroll > input,
.field-map-tools-scroll > select,
.field-map-tools-scroll > button,
.field-map-primary-actions > button {
  margin-bottom: 6px;
}
#main > .tabset {
  position: sticky;
  top: 50px;
  margin-top: -10px;
  min-height: 50px;
}
#main > .tabset > .tab,
#main > .tabset > .tabset-tabs > .tab {
  margin-top: 10px;
}
form > .main > .tabset {
  position: sticky;
  margin-top: -16px;
  top: -16px;
  border-top: 16px solid white;
  margin-bottom: 0.71em;
}
#device {
  position: sticky;
  bottom: 0;
  margin-top: 0;
  margin-bottom: -10px;
  display: flex;
  background: #f8f8f8;
  border-bottom: 10px solid white;
  border-radius: 4px;
  padding: 10px 12px;
  align-items: center;
  gap: 12px;
  z-index: 2;
}
#device > img {
  width: 32px;
  height: 32px;
}
#svgmap_root {
  position: absolute;
  width: calc(100% - 20px);
  top: 50px;
  height: calc(100% - 80px);
  bottom: 0;
}
#map_zoom {
  position: absolute;
  right: 20px;
  top: 76px;
  z-index: 1;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
#map_zoom > button {
  width: 32px;
  height: 32px;
  padding: 0;
  border-radius: 50%;
  line-height: 1;
}
#map_zoom > button.heading {
  width: 48px;
  height: 48px;
}
#map_attribution {
  position: absolute;
  right: 16px;
  bottom: 20px;
  z-index: 1;
  margin: 0;
  padding: 2px 4px;
  font-size: 0.9em;
  background: #ffffffdd;
}
table td.picture {
  padding: 4px 0 0 4px;
}
table td.picture > img {
  width: 24px;
  height: 24px;
}
.item {
  cursor: pointer;
}
.locked {
  cursor: not-allowed !important;
}
.stag {
  display: inline-block;
  font-size: 0.8em;
  border-radius: 3px;
  margin: 1px 2px 0 2px;
  padding: 2px 4px;
  background: #ddd;
  color: black;
  white-space: nowrap;
  vertical-align: bottom;
}
.stag + .stag {
  margin-left: 6px;
}
.devices-table-scroll {
  max-height: calc(100vh - 130px);
  overflow: auto;
}
.devices-table thead th {
  position: sticky;
  top: -1px;
  z-index: 2;
  background: #fafafa;
}
.robot-users-table-scroll {
  max-height: calc(100vh - 130px);
  overflow: auto;
}
.robot-users-table {
  table-layout: auto;
  width: 100%;
}
.robot-users-table .robot-users-status,
.robot-users-table .robot-users-permission {
  width: 1%;
  white-space: nowrap;
}
.admin-settings-details > summary {
  display: none;
}
.robot-users-table th.robot-users-permission {
  font-size: 10px;
}
.robot-users-table thead th {
  position: sticky;
  top: -1px;
  z-index: 2;
  background: #fafafa;
}
.robot-users-table .robot-users-external-title > th {
  position: sticky;
  top: 39px;
  z-index: 1;
}
@media (max-width: 1400px) {
  .robot-users-table th.robot-users-permission {
    white-space: normal;
  }
}
.robot-users-search {
  flex: 1;
  display: flex;
  min-height: 38px;
  justify-content: flex-start;
  align-items: center;
}
.robot-users-search > input {
  width: 100%;
  max-width: 200px;
}
.btag {
  display: inline-block;
  border-radius: 3px;
  margin: 1px 4px 0 4px;
  padding: 2px 8px;
  background: #ddd;
  color: black;
  white-space: nowrap;
  vertical-align: middle;
}
.btag + .btag {
  margin-left: 6px;
}
.btag > .sub {
  color: #888;
}
.stag > .sub {
  color: #888;
}
.assign.admin::before {
  content: "\265a";
  padding-left: 2px;
}
.assign.partner::before {
  content: "\265e";
  padding-left: 2px;
}
.assign.user {
  display: none;
}
.robot-user-identity {
  display: flex;
  min-width: 0;
  max-width: 100%;
  flex-wrap: nowrap;
  align-items: center;
  gap: 6px;
}
.robot-user-identity > .robot-user-picture {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  object-fit: cover;
}
.robot-user-identity > .user-name-text {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.robot-user-identity > .assign {
  flex: 0 0 auto;
}
.status.master {
  background: #f500ba;
  color: white;
}
.status.owner {
  background: #195b96;
  color: white;
}
.status.renter {
  background: #60a6e4;
  color: white;
}
.status.none {
  background: #ddd;
  color: black;
}
.status.view {
  background: #f6751f;
  color: white;
}
.status.notify {
  background: #cd7e1d;
  color: white;
}
.status.fleet {
  background: #cd401d;
  color: white;
}
.status.cloud_control {
  background: #54c9ec;
  color: white;
}
.status.live {
  background: #195b96;
  color: white;
}
.row.safe {
}
.row.avoid {
  background: #db0a0a;
  color: white;
}
.param.range {
  background: #ddd;
  color: black;
}
.param.option {
  background: #eee;
  color: black;
}
.param > .sub {
  color: #888;
}
.unsupported {
  text-decoration: line-through;
  cursor: not-allowed;
}
.tiles {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center;
}
.tiles > .section {
  width: 100%;
}
.responsive-table-section {
  display: none;
}
.tiles > .tile {
  width: 160px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  border-radius: 6px;
  background: #f6f6f8;
  padding: 12px 12px 8px 12px;
  cursor: pointer;
  align-items: center;
}
.tiles > .tile.highlight {
  background: #f6751f;
  color: white;
  --color: white;
}
.tiles > .tile.default {
  background: #ddd;
}
.tiles > .tile > span {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tiles > .tile > img {
  width: 100%;
  margin-bottom: 16px;
  max-width: 128px;
}
.tiles.menu {
  flex: 1;
  align-items: center;
}
.tiles.menu > .tile > img {
  filter: saturate(0%) brightness(120%);
}
.tiles.menu > .tile:hover > img {
  filter: saturate(0%);
}
.g-mission-routes {
  pointer-events: auto;
}
.handle-main circle {
  transition: r 0.15s ease, stroke-width 0.15s ease;
}
.handle-branch circle {
  transition: r 0.15s ease, stroke-width 0.15s ease;
}
.handle-anchor circle {
  transition: r 0.15s ease, stroke-width 0.15s ease;
}

/* web/client/styles/center_small.css */
.medium #home > a {
  max-width: 90px;
}
html.medium:not(.small) {
  --settings-width: clamp(300px, 34vw, 400px);
}
html.medium:not(.small) #settings {
  width: var(--settings-width);
}
html.medium:not(.small) #settings + #main {
  margin-left: var(--settings-width);
}
html.medium:not(.small) #main > .tabset {
  flex-wrap: wrap;
}
html.medium:not(.small) #main > .tabset > .tabset-tabs {
  flex: 0 0 auto;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
}
html.small {
  height: auto;
  min-height: 100%;
}
.small {
  --mobile-nav-height: calc(68px + env(safe-area-inset-bottom, 0px));
}
.small #header {
  gap: 4px;
  padding-inline: 6px;
}
.small #header_logo,
.small #header_title {
  display: none;
}
.small #header_mod {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  justify-content: flex-start;
  gap: 4px;
  overflow: hidden;
}
.small #header_mod > * {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
}
.small #header_mod .company-selector-btn {
  flex: 1 1 42%;
  width: auto;
  min-width: 0;
}
.small #header_mod:has(> :nth-child(2)) .company-selector-btn {
  flex: 0 1 36%;
  max-width: 36%;
}
.small #header_mod .company-selector-crumbs {
  min-width: 0;
  padding-inline: 6px 4px;
  gap: 2px;
}
.small #header_mod .company-selector-crumbs > .link,
.small #header_mod .company-selector-crumbs > .company-selector-sep {
  display: none;
}
.small #header_mod .company-selector-current,
.small #header_mod .company-selector-current > .flex,
.small #header_mod .company-selector-current > .flex > span {
  min-width: 0;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.small #header_mod .company-selector-current > .flex {
  flex-wrap: nowrap;
}
.small #header_mod .company-selector-btn > button {
  flex: 0 0 38px;
  width: 38px;
  padding-inline: 6px;
}
.small #header_mod .company-selector-btn > button > span {
  display: none;
}
.small #header_mod .company-selector-btn.header-context-trigger {
  flex: 0 0 40px;
  width: 40px;
  min-width: 40px;
  max-width: 40px;
}
.small #header_mod .company-selector-btn.header-context-trigger .company-selector-crumbs {
  display: none;
}
.small #header_mod .company-selector-btn.header-context-trigger > button {
  flex: 0 0 40px;
  width: 40px;
  min-width: 40px;
  height: 40px;
  padding: 0;
  border-radius: 6px;
}
.small #header_mod > select.header-primary-select {
  flex: 1 1 0;
  min-width: 0;
  max-width: 100%;
}
.small #header_mod > select.header-parent-select {
  display: none;
}
.small #header_mod .header-actions {
  flex: 0 0 auto;
  flex-wrap: nowrap;
}
.small .device-class-tabs {
  display: none;
}
.small #header_mod > select {
  flex: 1 1 60%;
  width: auto;
  min-width: 0;
  text-overflow: ellipsis;
}
.small #header_id,
.small #header_id.small {
  position: static;
  flex: 0 0 auto;
  width: auto;
  max-height: none;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-end;
  gap: 4px;
  font-size: inherit;
}
.small #header_id > button > span {
  display: none;
}
.small #header_id > button {
  box-sizing: border-box;
  width: 40px;
  min-width: 40px;
  height: 40px;
  padding: 5px;
}
.small #header_id > button > img {
  width: 24px;
  height: 24px;
}
.small #modes {
  top: auto;
  bottom: 0;
  width: 100%;
  height: var(--mobile-nav-height);
  padding: 0 4px env(safe-area-inset-bottom, 0px);
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 2px;
  border-right: none;
  border-top: 1px solid #ededf0;
  overflow: visible;
  z-index: 999;
}
.small #modes > [hidden],
.small .mode-overflow-menu[hidden],
.small .mode-overflow-menu > [hidden] {
  display: none !important;
}
.small #modes > a,
.small #modes > .mode-more {
  box-sizing: border-box;
  flex: 1 1 0;
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 44px;
  margin-top: 0;
  padding: 4px 2px 2px;
  justify-content: center;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
  line-height: 1.05;
}
.small #modes > .mode-more {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #c2c2c2;
  font-size: 0.7em;
  text-transform: uppercase;
}
.small #modes > .mode-more.contains-active {
  color: #c2c2c2;
}
.small #modes > .mode-more,
.small #modes > .mode-more.contains-active {
  filter: none;
}
.small #modes > a:link,
.small #modes > a:visited {
  color: #c2c2c2;
  text-decoration: none;
}
.small #modes > a:hover {
  color: #a1a1a1;
}
.small #modes > a.active:link,
.small #modes > a.active:visited {
  color: #65c151;
}
.small .mode-more-icon {
  box-sizing: border-box;
  display: flex;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
}
.small #modes > a > img {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
}
.small .mode-overflow-scrim {
  position: fixed;
  inset: 0 0 var(--mobile-nav-height);
  width: auto;
  max-width: none;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  z-index: 1000;
}
.small .mode-overflow-menu {
  position: fixed;
  right: 8px;
  bottom: calc(var(--mobile-nav-height) + 8px);
  box-sizing: border-box;
  display: flex;
  width: min(320px, calc(100vw - 16px));
  max-height: min(60dvh, 420px);
  padding: 8px;
  flex-direction: column;
  gap: 4px;
  overflow-x: clip;
  overflow-y: auto;
  border: 1px solid #ededf0;
  border-radius: 8px;
  background: white;
  box-shadow: #15172526 0 10px 24px, #15172520 0 2px 8px;
  z-index: 1001;
}
.small .mode-overflow-menu > a {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  min-width: 0;
  min-height: 52px;
  padding: 6px 10px;
  align-items: center;
  gap: 10px;
  border-radius: 6px;
  color: #525461;
  font-size: 0.9em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
.small .mode-overflow-menu > a:link,
.small .mode-overflow-menu > a:visited {
  color: #525461;
  text-decoration: none;
}
.small .mode-overflow-menu > a:hover,
.small .mode-overflow-menu > a:focus-visible,
.small .mode-overflow-menu > a.active,
.small .mode-overflow-menu > a.active:link,
.small .mode-overflow-menu > a.active:visited {
  background: transparent;
  color: #65c151;
}
.small .mode-overflow-menu > a > img {
  width: 32px;
  height: 32px;
  object-fit: contain;
  filter: saturate(0%) brightness(120%);
}
.small .mode-overflow-menu > a:hover > img,
.small .mode-overflow-menu > a:focus-visible > img,
.small .mode-overflow-menu > a.active > img {
  filter: none;
}
.small #modes .sticky-btn {
  position: static;
  box-sizing: border-box;
  width: auto;
  min-width: 0;
  margin-inline: auto;
  padding: 4px 2px;
}
.small #modes > div[style*="flex: 1"] {
  display: none;
}
.small body,
.small #page {
  height: auto;
  min-height: 100dvh;
}
.small #page > main {
  min-width: 0;
  height: auto;
  min-height: 100dvh;
  padding-left: 0;
  padding-bottom: var(--mobile-nav-height);
}
.small #main {
  min-width: 0;
  max-width: 100%;
  min-height: calc(100dvh - 50px - var(--mobile-nav-height) - 20px);
}
.small #page > main:has(.field-workspace-view) {
  height: 100dvh;
  min-height: 100dvh;
  overflow: hidden;
}
.small #main.field-workspace-view {
  box-sizing: border-box;
  height: 100%;
  min-height: 0;
  padding: 6px;
  overflow: hidden;
}
.small .field-workspace-view .field-map-tools {
  display: none !important;
}
.small .field-workspace-stage {
  min-height: 0;
  border-radius: 9px;
}
.small .field-workspace-toolbar {
  min-height: 52px;
  padding: 6px;
  gap: 6px;
}
.small .field-workspace-title {
  gap: 7px;
  font-size: 0.92em;
}
.small .field-workspace-mark {
  width: 32px;
  height: 32px;
  flex-basis: 32px;
  border-radius: 8px;
}
.small .field-workspace-mark > img {
  width: 18px;
  height: 18px;
}
.small .field-workspace-actions {
  gap: 4px;
}
.small .field-workspace-actions > :is(button, a) {
  width: 38px;
  height: 38px;
  min-height: 38px;
  border-radius: 8px;
}
.small .field-workspace-actions > .field-workspace-save {
  width: 38px;
  padding: 0;
}
.small .field-workspace-action-label {
  display: none;
}
.small .point-editor-close-dialog .footer > button {
  min-height: 42px;
  flex: 1 1 auto;
}
.small #settings {
  display: none;
  position: absolute;
  left: 0;
  top: calc(var(--hp-header-height, 43px) + 58px);
  bottom: var(--mobile-nav-height);
  width: calc(100% - 20px);
  height: auto;
  max-height: none;
  min-height: 0;
  margin: 0 10px;
  padding-bottom: 12px;
  z-index: 9;
  background: white;
  border: none;
  gap: 1em;
  overflow-x: hidden;
  overflow-y: auto;
}
.small #settings + #main {
  margin-left: 0;
}
.small #settings table {
  border: 1px solid #ededf0;
  table-layout: auto !important;
}
.small #settings thead > tr > th {
  font-weight: bold;
}
.small #settings > .picture {
  display: none;
}
.small #page > main:has(.mobile-settings-activation) {
  display: flex;
  flex-direction: column;
}
.small #page > main:has(.mobile-settings-activation) > #main {
  min-height: 0;
  order: 0;
}
.small #page > main:has(.mobile-settings-activation) > #settings {
  position: static;
  bottom: auto;
  width: calc(100% - 20px);
  max-height: none;
  min-height: 0;
  order: 1;
  overflow: visible;
}
.small .tabset {
  min-width: 0;
  max-width: 100%;
  height: auto;
  min-height: 40px;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 4px;
  overflow: visible;
}
.small .tabset > * {
  min-width: 0;
  max-width: 100%;
  flex-shrink: 1;
}
.small .tabset-tabs,
.small .tabset-actions {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  display: flex;
  align-items: center;
  gap: 6px;
}
.small .tabset-tabs {
  flex: 1 1 100%;
  flex-wrap: nowrap;
  justify-content: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}
.small .tabset-tabs:is(.field-view-tabs, .mission-view-tabs, .admin-section-tabs, .user-detail-tabs, .robot-detail-tabs, .implement-detail-tabs) {
  position: relative;
  overflow: visible;
}
.small .tabset-tabs.device-class-tabs {
  display: none;
}
.small .tabset-actions {
  flex: 1 1 100%;
  min-height: 44px;
  padding: 4px 0;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-content: center;
  border-top: 1px solid #f1f1f3;
}
.small .tabset > .tabset-primary-actions {
  min-height: 40px;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  margin-left: auto;
  padding: 0;
  border-top: 0;
}
.small .tabset:has(> .tabset-primary-actions) > .tabset-tabs {
  flex: 1 1 0;
}
.small .tabset > div:not(.tab):empty {
  display: none;
}
.small .tabset > .tab,
.small .tabset-tabs > .tab {
  box-sizing: border-box;
  display: flex;
  flex: 0 0 auto;
  min-height: 40px;
  height: auto;
  padding: 8px 12px;
  align-items: center;
  line-height: 1.2;
  white-space: nowrap;
}
.small .tabset-tabs:is(.field-view-tabs, .mission-view-tabs, .admin-section-tabs, .user-detail-tabs, .robot-detail-tabs, .implement-detail-tabs) > .tab:not(.tab-overflow) {
  min-width: 0;
  flex: 1 1 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.small .compact-tab-direct > .compact-tab-label {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.small .tabset-tabs > button.tab {
  appearance: none;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  color: inherit;
  filter: none;
  font: inherit;
  text-align: left;
}
.small .tabset-tabs > button.tab:hover {
  background-color: #f6f6f8;
  color: inherit;
}
.small .tabset-tabs > button.tab.active,
.small .tabset-tabs > button.tab.active:hover {
  background-color: #ededf0;
}
.small .tabset-tabs > .tab-overflow {
  display: inline-flex;
  flex: 0 0 auto;
  min-width: 64px;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: #525461;
}
.small .tab-overflow-scrim {
  position: fixed;
  inset: 0 0 var(--mobile-nav-height);
  z-index: 1;
  width: 100%;
  max-width: none;
  height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #15172522;
}
.small .tab-overflow-menu {
  box-sizing: border-box;
  position: fixed;
  top: 104px;
  right: 8px;
  z-index: 2;
  width: min(280px, calc(100vw - 16px));
  max-height: min(60dvh, 420px);
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 6px;
  overflow-y: auto;
  border: 1px solid #d7d8de;
  border-radius: 8px;
  background: white;
  box-shadow: #15172526 0 12px 24px;
}
.small .tab-overflow-menu[hidden],
.small .tab-overflow-scrim[hidden],
.small .compact-tab-direct[hidden],
.small .compact-tab-menu-item[hidden],
.small .tabset-tabs > .tab-overflow[hidden] {
  display: none !important;
}
.small .tab-overflow-menu > button.tab {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  padding: 8px 10px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #525461;
  filter: none;
  font: inherit;
  text-align: left;
}
.small .tab-overflow-menu .compact-tab-label {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}
.small .tab-overflow-menu > button.tab:is(:hover, :focus-visible, .active) {
  background: transparent;
  color: #65c151;
}
.small .tabset > .tab + .tab,
.small .tabset-tabs > .tab + .tab {
  margin-left: 0;
}
.small .tabset > :is(button, label, input, select),
.small .tabset-tabs > :is(button, label, input, select),
.small .tabset-actions > :is(button, label, input, select) {
  flex: 0 1 auto;
  min-height: 40px;
  margin-bottom: 0;
  white-space: normal;
}
.small .tabset-actions > label {
  display: flex;
  align-items: center;
  gap: 5px;
}
.small .tabset-actions > label > input {
  flex: 0 0 auto;
}
.small .tabset > .tab.active,
.small .tabset-tabs > .tab.active {
  background-image: none;
  padding-left: 14px;
}
.small .tabset.configure > .tabset-tabs > .tab.active {
  background-image: none;
}
.small .tabset > img.picture,
.small .tabset-tabs > img.picture {
  display: none;
}
.small .view-switch {
  box-sizing: border-box;
  display: inline-flex;
  width: 44px;
  min-width: 44px;
  height: 40px;
  min-height: 40px;
  padding: 6px;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  gap: 0;
  color: #525461;
}
.small .view-switch > .view-switch-icon {
  display: inline-flex !important;
  width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
  font-family: "Segoe UI Symbol", sans-serif;
  font-size: 23px;
  font-weight: normal;
  line-height: 1;
}
.small .view-switch > .view-switch-label {
  display: none !important;
}
.small .user-name-cell {
  display: flex;
  min-width: 0;
  max-width: 100%;
  flex-wrap: nowrap;
  align-items: center;
}
.small .user-name-cell > img {
  flex: 0 0 24px;
}
.small .user-name-cell > .assign {
  flex: 0 0 auto;
  margin-left: 4px;
}
.small .user-name-cell > .user-name-text {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small .user-tile-name {
  display: flex;
  min-width: 0;
  max-width: 100%;
  flex-wrap: nowrap;
  align-items: baseline;
  justify-content: center;
  gap: 4px;
}
.small .user-tile-name > .assign {
  flex: 0 0 auto;
}
.small .user-tile-name > .user-name-text {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small .field-view-tabs > :is(.compact-tab-direct, .tab-overflow) {
  height: 40px;
  min-height: 40px;
  max-height: 40px;
  align-self: center;
}
.small .tab-action-create {
  min-width: 40px;
}
.small #main:not(.field-workspace-view) > .tabset {
  position: sticky;
  left: auto;
  top: 50px;
  width: auto;
  margin: -10px -10px 0;
  padding-inline: 10px;
}
.small #main > .tabset + * {
  margin-top: 1rem;
}
.small form > .main > .tabset {
  position: sticky;
  left: auto;
  top: -16px;
  width: auto;
  overflow: visible;
}
.small .tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  align-items: stretch;
}
.small .tiles.menu {
  flex: none;
  min-height: 0;
  align-items: start;
  align-content: start;
}
.small .tiles.menu > .tile {
  align-self: start;
}
.small .tiles > .section {
  grid-column: 1 / -1;
}
.small .tiles > .tile {
  box-sizing: border-box;
  width: auto;
  min-width: 0;
  padding: 10px 8px 8px;
}
.small .tiles > .tile > img {
  width: min(72px, 100%);
  margin-bottom: 8px;
}
.small .tiles > .tile > span {
  max-width: 100%;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  word-break: break-word;
  text-align: center;
}
.small .flex {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small #device {
  bottom: var(--mobile-nav-height);
  min-width: 0;
  flex-wrap: wrap;
}
.small #svgmap_root:not(.full-screen) {
  height: calc(100% - 80px - var(--mobile-nav-height));
}
.small .devices-table-scroll,
.small .robot-users-table-scroll {
  max-height: none;
  overflow: visible;
}
.small .field-main,
.small .mission-main {
  min-height: calc(100dvh - 50px - var(--mobile-nav-height) - 20px);
}
.small .field-view-tabs,
.small .mission-view-tabs,
.small .robot-detail-tabs {
  scroll-padding-inline: 10px;
}
.small .field-map-view .field-map-tools,
.small .mission-map-view .mission-map-tools {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  flex: 1 1 100%;
  contain: inline-size;
  flex-wrap: nowrap;
  justify-content: flex-start;
  overflow: hidden;
}
.small .field-map-tools-scroll,
.small .mission-map-tools-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.small .field-map-tools-scroll::-webkit-scrollbar,
.small .mission-map-tools-scroll::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.small .field-map-tools-scroll,
.small .mission-map-tools-scroll {
  box-sizing: border-box;
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  align-items: center;
  gap: 6px;
  contain: inline-size;
}
.small :is(.field-map-primary-actions, .mission-map-primary-actions) {
  box-sizing: border-box;
  display: flex;
  min-height: 44px;
  flex: 0 0 auto;
  align-items: center;
  gap: 4px;
  padding-left: 6px;
  border-left: 1px solid #ededf0;
  background: white;
  box-shadow: -6px 0 8px #ffffffd9;
}
.small :is(.field-map-primary-actions, .mission-map-primary-actions) > button > span:not(.button-icon):not(.field-apply-icon) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}
.small .field-map-tools-scroll > *,
.small .mission-map-tools-scroll > * {
  flex: 0 0 auto;
}
.small .field-map-tools-scroll > button,
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle),
.small .field-map-primary-actions > button,
.small .mission-map-tools-scroll > button,
.small .mission-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle),
.small .mission-map-primary-actions > button,
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button {
  box-sizing: border-box;
  min-width: 44px;
  min-height: 44px;
  flex: 0 0 44px;
}
.small :is(.field-map-primary-actions, .mission-map-primary-actions) > button {
  width: 40px;
  min-width: 40px;
  max-width: 40px;
  height: 40px;
  min-height: 40px;
  max-height: 40px;
  flex: 0 0 40px;
}
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button {
  width: 44px;
}
.small .field-map-tools-scroll > button:not(.view-switch),
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle),
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button {
  height: 44px;
  margin-bottom: 0;
}
.small .field-map-tools-scroll > button:not(.view-switch),
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle),
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button {
  display: flex;
  align-items: center;
  justify-content: center;
}
.small .field-map-tools-scroll > button:not(.view-switch) > img,
.small .field-map-tools-scroll > :is(.coverage-toggle, .path-animation-toggle) > button > img {
  display: block;
  top: 0;
}
.small :is(.field-map-primary-actions, .mission-map-primary-actions) > button > .field-apply-icon {
  width: 20px;
  height: 20px;
  top: 0;
  object-fit: contain;
}
.small .field-map-tools-scroll > div[style*="flex: 1"],
.small .mission-map-tools-scroll > div[style*="flex: 1"] {
  display: none;
}
.small .field-panel-view .field-map-tools,
.small .mission-panel-view .mission-map-tools {
  display: none !important;
}
.small :is(.field-panel-view, .mission-panel-view) > .tabset,
.small .tabset:has(> .tabset-tabs:is(.user-detail-tabs, .implement-detail-tabs)),
.small .tabset:has(> .tabset-tabs.robot-detail-tabs):not(:has(.robot-users-search)) {
  flex-wrap: nowrap;
}
.small :is(.field-panel-view, .mission-panel-view) > .tabset > .tabset-tabs,
.small .tabset:has(> .tabset-tabs:is(.user-detail-tabs, .implement-detail-tabs)) > .tabset-tabs,
.small .tabset:has(> .tabset-tabs.robot-detail-tabs):not(:has(.robot-users-search)) > .tabset-tabs {
  flex: 1 1 auto;
}
.small :is(.field-panel-view, .mission-panel-view) > .tabset > .tabset-actions,
.small .tabset:has(> .tabset-tabs:is(.user-detail-tabs, .implement-detail-tabs)) > .tabset-actions,
.small .tabset:has(> .tabset-tabs.robot-detail-tabs):not(:has(.robot-users-search)) > .tabset-actions {
  min-height: 40px;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  padding: 0;
  border-top: 0;
}
.small :is(.coverage-toggle, .path-animation-toggle) {
  flex: 0 0 auto;
  margin-bottom: 0;
}
.small .coverage-dialog {
  position: fixed;
  width: min(320px, calc(100vw - 16px));
  min-width: 0;
  max-height: min(60dvh, 420px);
  overflow-y: auto;
  z-index: 1002;
}
.small .mobile-field-panel,
.small .mobile-mission-panel {
  box-sizing: border-box;
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  flex-direction: column;
  gap: 12px;
}
.small .mobile-field-panel > *,
.small .mobile-mission-panel > * {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}
.small :is(.mobile-field-panel, .mobile-mission-panel) table {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
  max-width: 100%;
}
.small .field-map-stage,
.small .mission-map-stage {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: max(420px, 65dvh);
  margin-top: 0 !important;
  flex: 1 0 auto;
  overflow: hidden;
  border-radius: 4px;
  background: #f6f6f8;
}
.small :is(.field-map-stage, .mission-map-stage) #svgmap_root:not(.full-screen) {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
}
.small :is(.field-map-stage, .mission-map-stage) > canvas {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
}
.small :is(.field-map-stage, .mission-map-stage) #map_zoom {
  position: absolute;
  top: 10px;
  right: 10px;
}
.small :is(.field-map-stage, .mission-map-stage) #map_attribution {
  right: 8px;
  bottom: 8px;
}
.small :is(.field-map-stage, .mission-map-stage) #device {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  border-bottom: 0;
}
.small .path-no-selection {
  box-sizing: border-box;
  width: 100%;
  padding: 20px 12px;
  border: 1px dashed #cfd1d8;
  border-radius: 6px;
  text-align: center;
}
.small :is(.path-points-scroll, .zone-points-scroll) {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  max-height: none;
  overflow: visible !important;
}
.small .path-points-scroll.virtualized {
  height: min(60vh, 640px);
  min-height: min(240px, 60vh);
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
.small .path-points-list.noedit .btag,
.small .path-points-list.noedit .offsets {
  left: auto;
  right: auto;
}
.small :is(.path-points-table, .zone-points-table, .zone-list-table) {
  box-sizing: border-box;
  display: block;
  width: 100% !important;
  min-width: 0;
  table-layout: auto !important;
  border-spacing: 0;
}
.small :is(.path-points-table, .zone-points-table, .zone-list-table) colgroup {
  display: none;
}
.small :is(.path-points-table, .zone-points-table, .zone-list-table) > tbody {
  display: block;
  min-width: 0;
}
.small :is(.path-points-table, .zone-points-table) > tbody > tr {
  box-sizing: border-box;
  display: grid;
  width: 100%;
  min-width: 0;
  height: auto !important;
  min-height: 48px;
  grid-template-columns: 28px minmax(0, 1fr) 38px minmax(52px, auto) minmax(42px, auto);
  align-items: center;
  border-bottom: 1px solid #ededf0;
}
.small .zone-points-table > tbody.noedit > tr {
  grid-template-columns: minmax(0, 1fr) auto auto;
}
.small :is(.path-points-table, .zone-points-table) > tbody > tr.point-list-empty-row {
  display: block;
  min-height: 0;
}
.small :is(.path-points-table, .zone-points-table) > tbody > tr > td {
  box-sizing: border-box;
  width: auto !important;
  min-width: 0;
  height: auto;
  padding: 5px 3px !important;
  overflow-wrap: anywhere;
}
.small :is(.path-points-table, .zone-points-table) .nowrap {
  white-space: normal;
  overflow-wrap: anywhere;
}
.small :is(.path-points-table, .zone-points-table) button.small {
  min-width: 36px;
  min-height: 36px;
  height: 36px !important;
  padding: 5px;
}
.small .zone-list-table > thead,
.small .zone-list-table > thead > tr,
.small .zone-list-table > thead > tr > th {
  box-sizing: border-box;
  display: block;
  width: 100%;
  min-width: 0;
  height: auto;
}
.small .zone-list-table > thead > tr > th {
  padding: 8px;
  overflow: visible;
}
.small .zone-list-table > thead > tr > th > div {
  display: flex !important;
  min-width: 0;
  flex-wrap: wrap;
  justify-content: flex-start !important;
  gap: 5px 12px;
}
.small .zone-list-table > thead > tr > th button {
  float: none !important;
  margin: 4px 0 0 4px !important;
}
.small .zone-list-table > tbody > tr {
  box-sizing: border-box;
  display: grid;
  width: 100%;
  min-width: 0;
  height: auto !important;
  min-height: 52px;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  align-items: center;
  border-bottom: 1px solid #ededf0;
}
.small .zone-list-table > tbody > tr:has(input[type=checkbox]) {
  grid-template-columns: 38px minmax(0, 1fr) auto auto;
}
.small .zone-list-table > tbody > tr:has(> td[colspan]) {
  display: block;
  min-height: 0;
}
.small .zone-list-table > tbody > tr > td {
  box-sizing: border-box;
  width: auto !important;
  min-width: 0;
  height: auto;
  padding: 7px 4px !important;
  overflow-wrap: anywhere;
}
.small .zone-list-table > tbody > tr > td:first-child:not(:last-child) {
  padding-left: 8px !important;
}
.small .admin-sections-table-scroll,
.small .admin-sections-table,
.small .robot-device-table {
  height: auto;
  min-height: 0;
}
.small .admin-settings-details {
  width: 100%;
  min-width: 0;
}
.small .admin-settings-details > summary {
  display: list-item;
  min-height: 32px;
  color: #525461;
  cursor: pointer;
  line-height: 32px;
}
.small .admin-settings-list {
  margin-top: 6px;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.small .admin-section-name > .responsive-cell-value,
.small .robot-device-card .responsive-cell-value {
  display: flex;
  min-width: 0;
  max-width: 100%;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
.small .robot-detail-picture {
  flex: 0 0 34px;
  margin: 0 2px 4px 0;
}
.small .robot-detail-actions .robot-users-search {
  flex: 1 1 180px;
  min-width: min(180px, 100%);
}
.small .robot-detail-actions .robot-users-search > input {
  width: 100%;
  min-height: 40px;
}
.small .robot-device-table-scroll + .robot-device-table-scroll {
  margin-top: 12px;
}
.small .robot-device-card > .robot-device-actions button {
  min-height: 36px;
}
.small .robot-device-card button.robot-device-action-button:has(> img:only-child) {
  display: inline-flex;
  box-sizing: border-box;
  width: 40px;
  min-width: 40px;
  max-width: 40px;
  height: 40px;
  min-height: 40px;
  max-height: 40px;
  padding: 0;
  align-items: center;
  justify-content: center;
}
.small #svgmap_root.full-screen {
  top: 0;
}
@media screen and (min-width: 641px) and (max-width: 1024px) {
  html.small #header_mod .company-selector-btn.header-context-trigger {
    width: auto;
    min-width: 120px;
    max-width: 220px;
    flex: 0 1 24vw;
  }
  html.small #header_mod .company-selector-btn.header-context-trigger .company-selector-crumbs {
    display: flex;
    flex: 1 1 auto;
  }
  html.small #header_mod .company-selector-btn.header-context-trigger > button {
    width: 38px;
    min-width: 38px;
    height: 40px;
    flex: 0 0 38px;
    padding-inline: 6px;
    border-radius: 0 6px 6px 0;
  }
}
@media screen and (max-width: 380px) {
  html.small .tiles {
    gap: 8px;
  }
  html.small .tiles > .tile > img {
    width: min(64px, 100%);
  }
}

/* web/client/styles/svg_axis_drag.css */
.ax-label {
  font-size: 12px;
  fill: #444;
}
.ax-crosshair {
  stroke: #1d1515;
  stroke-width: 1;
}
.ax-tick {
  stroke: #333;
  stroke-width: 1;
}
.ax-faded {
  opacity: 0.3;
}
.ax-highlight {
  opacity: 1;
}
.ax-drag-line {
  stroke: red;
  stroke-width: 2;
  stroke-dasharray: 4, 2;
}
.ax-hidden {
  display: none;
}
.ax-dragging {
  opacity: 0.5;
}

/* web/client/styles/turn_preview.css */
.template-editor > form {
  width: min(1420px, 96vw);
  max-width: 96vw;
}
.turn-template-body {
  display: flex;
  align-items: flex-start;
}
.turn-template-content {
  flex: 1;
  min-width: 0;
}
.turn-shape-editor > form {
  width: min(640px, 96vw);
}
.turn-shape-editor form > .turn-shape-editor-main {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
}
.turn-shape-editor-fields {
  display: flex;
  flex-direction: column;
  flex: 1 1 300px;
  min-width: 0;
  gap: 10px;
  padding: 12px 12px 12px 0;
  box-sizing: border-box;
}
.turn-shape-editor-fields > label {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 40px;
  gap: 10px;
}
.turn-shape-editor-fields > label > :is(input:not([type=checkbox]):not([type=radio]), select) {
  box-sizing: border-box;
  min-width: 0;
}
.turn-preview {
  position: sticky;
  top: 8px;
  box-sizing: border-box;
  flex: 0 0 190px;
  width: 190px;
  height: 190px;
  margin: 12px;
  border: 1px solid var(--gray-200);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.turn-preview-close {
  position: absolute;
  z-index: 1;
  top: 6px;
  right: 6px;
  width: 24px;
  height: 24px;
  min-height: 24px;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.85);
  color: var(--gray-600);
  font-size: 18px;
  line-height: 24px;
}
.turn-preview-svg {
  display: block;
  width: 100%;
  height: 164px;
  pointer-events: none;
}
.turn-preview-row-width {
  height: 26px;
  border-top: 1px solid var(--gray-200);
  color: var(--gray-600);
  font-size: 12px;
  line-height: 25px;
  text-align: center;
}
.turn-preview-row {
  stroke: var(--gray-300);
  stroke-width: 1;
  stroke-dasharray: 4 3;
  vector-effect: non-scaling-stroke;
}
.turn-preview-path {
  fill: none;
  stroke: blue;
  stroke-width: 2;
  stroke-linejoin: round;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
}
.turn-preview-points {
  fill: blue;
  stroke: none;
  shape-rendering: geometricPrecision;
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}
.turn-preview-points.current-row,
.turn-preview-points.next-row {
  fill: white;
  stroke: blue;
  stroke-width: 2;
}
.turn-preview-points.next-row {
  fill: #c4d1e2;
}
.turn-preview-points.endpoints {
  fill: blue;
  stroke: none;
}
.turn-preview-points.active {
  fill: var(--green-500);
  stroke: blue;
  stroke-width: 2;
}
.turn-preview-marker {
  pointer-events: none;
}
.turn-preview-marker > circle {
  fill: #1262d8;
  stroke: #fff;
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
  transition:
    fill 120ms ease,
    stroke 120ms ease,
    stroke-width 120ms ease;
}
.turn-preview-marker > text {
  fill: #fff;
  font-weight: 800;
  text-anchor: middle;
  dominant-baseline: central;
  user-select: none;
}
.turn-preview-marker.current-row > circle,
.turn-preview-marker.next-row > circle {
  fill: white;
  stroke: blue;
}
.turn-preview-marker.next-row > circle {
  fill: #c4d1e2;
}
.turn-preview-marker.current-row > text,
.turn-preview-marker.next-row > text {
  fill: #17304d;
}
.turn-preview-marker.active > circle {
  fill: var(--green-500);
  stroke: #08763d;
  stroke-width: 3;
}
.turn-preview-marker.active > text {
  fill: #fff;
}
html.theme-modern .turn-template-head > .grab > img {
  opacity: .82;
  filter: none;
}
html.theme-modern .turn-template-master .turn-template-master-item > .grab {
  opacity: .78;
}
html.theme-modern .turn-template-master-item > .grab > img {
  opacity: 1;
  filter: brightness(0) invert(1);
}
html.theme-modern .turn-template-master .turn-template-master-item.active > .grab {
  opacity: 1;
}
@media (max-width: 1200px) {
  .turn-template-body {
    display: block;
  }
  .turn-preview {
    position: static;
    width: auto;
    height: 186px;
    margin: 12px 24px;
  }
  .turn-preview-svg {
    height: 160px;
  }
}
@media (max-width: 680px) {
  .turn-shape-editor form > .turn-shape-editor-main {
    display: block;
  }
}

/* web/client/styles/dialog-window.css */
.dialog > form > .title {
  flex-wrap: nowrap;
  flex-shrink: 0;
}
.dialog > form > .title > .dialog-title-text {
  flex: 1 1 auto;
  min-width: 0;
  padding-left: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dialog > form > .title > button {
  flex-shrink: 0;
}
.dialog > form.dialog-windowed {
  box-sizing: border-box;
}
.dialog > form.dialog-window-is-sized {
  overflow: auto;
}
.dialog > form > .title > :is(.dialog-window-maximize, .dialog-window-close),
.dialog > form > .title > :is(.dialog-window-maximize, .dialog-window-close):not(:disabled):not(.active):hover {
  display: inline-flex;
  box-sizing: border-box;
  width: 34px;
  min-width: 34px;
  max-width: 34px;
  height: 34px;
  min-height: 34px;
  max-height: 34px;
  margin: 0 0 0 6px;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--hp-border, #d0d5dd);
  border-radius: 6px;
  background: #fff;
  color: #24384f;
  box-shadow: none;
  filter: none;
  transform: none;
}
.dialog > form > .title > .dialog-window-maximize {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
}
.dialog > form > .title > :is(.dialog-window-maximize, .dialog-window-close):not(:disabled):not(.active):hover {
  border-color: #aebcc9;
  background: #f2f5f8;
}
.dialog > form > .title > .dialog-window-maximize + .dialog-window-close,
.dialog > form > .title > .dialog-window-maximize + .dialog-window-close:not(:disabled):not(.active):hover {
  margin-left: -3px;
}
.dialog > .dialog-window-resize-handle {
  position: fixed;
  z-index: 10001;
  display: block;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  border: 0;
  background:
    linear-gradient(
      135deg,
      transparent 0 46%,
      #65746a 47% 53%,
      transparent 54%) 8px 8px / 10px 10px no-repeat,
    linear-gradient(
      135deg,
      transparent 0 46%,
      #94a198 47% 53%,
      transparent 54%) 12px 12px / 6px 6px no-repeat;
  cursor: nwse-resize;
  touch-action: none;
  user-select: none;
}
.dialog > .dialog-window-resize-handle[hidden] {
  display: none;
}
.dialog > form.dialog-is-resizing {
  cursor: nwse-resize !important;
  user-select: none;
}
.dialog > form.dialog-window-is-maximized > .title.dialog-drag-handle {
  cursor: default;
}
.dialog > form > .title.dialog-drag-handle {
  cursor: grab;
  touch-action: none;
  user-select: none;
}
.dialog > form.dialog-is-dragging > .title.dialog-drag-handle {
  cursor: grabbing;
}
.dialog > form > .title.dialog-drag-handle :is(button, a, input, select, textarea, label) {
  cursor: pointer;
}

/* web/client/styles/ui_slider.css */
.ui-slider {
  display: inline-grid;
  min-width: 0;
  grid-template-columns: minmax(80px, 120px) 3.5em;
  align-items: center;
  gap: 4px;
}
.ui-slider > input.ui-slider-input {
  width: 120px;
  min-width: 80px;
  height: 6px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 999px;
  outline: none;
  appearance: none;
  cursor: pointer;
}
.ui-slider > input.ui-slider-input::-webkit-slider-thumb {
  width: 18px;
  height: 18px;
  border: 2px solid #fff;
  border-radius: 50%;
  appearance: none;
}
.ui-slider > input.ui-slider-input::-moz-range-track {
  height: 6px;
  border: 0;
  border-radius: 999px;
}
.ui-slider > input.ui-slider-input::-moz-range-thumb {
  width: 14px;
  height: 14px;
  border: 2px solid #fff;
  border-radius: 50%;
}
.ui-slider > input.ui-slider-input:focus-visible::-webkit-slider-thumb {
  outline: 2px solid var(--hp-brand-300, #72bd88);
  outline-offset: 2px;
}
.ui-slider > input.ui-slider-input:focus-visible::-moz-range-thumb {
  outline: 2px solid var(--hp-brand-300, #72bd88);
  outline-offset: 2px;
}
.ui-slider-value {
  min-width: 0;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
@media (max-width: 560px) {
  .field-path-animation-toolbar .ui-slider {
    grid-template-columns: minmax(54px, 1fr) 3.5em;
  }
  .field-path-animation-toolbar .ui-slider > input.ui-slider-input {
    width: 80px;
    min-width: 54px;
  }
}

/* web/client/lib/generate_path/uvbot_ui.css */
.uvb-ui label > span:first-child {
  flex: 1;
}
.uvb-ui input,
.uvb-ui select {
  flex: 0 !important;
}
.uvb-ui input[type=number] {
  width: 50px;
}
.uvb-ui select {
  min-width: 120px;
}
.uvb-ui sub {
  min-width: 1em;
  text-align: center;
}

/* web/client/lib/generate_path/rowselector_ui.css */
.rs-ui {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 10px;
}
.rs-ui-settings-table {
  width: 100%;
  border: 1px solid #dce6ef;
  border-spacing: 0;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 2px 8px #15365009;
  overflow: hidden;
}
.rs-ui-settings-table th {
  padding: 7px 9px;
  background:
    linear-gradient(
      110deg,
      #f6f9fc,
      #eaf1f7);
  color: var(--hp-text, #17241d);
  font-size: 11px;
  font-weight: 700;
  text-align: left;
}
.rs-ui-settings-table th.rs-ui-settings-count {
  color: #64748b;
  font-weight: 600;
  text-align: right;
}
.rs-ui-settings-table td {
  height: 34px;
  padding: 5px 9px;
  border-top: 1px solid #e8eef3;
  font-size: 11px;
}
.rs-ui-settings-table td:first-child {
  width: 56%;
  color: #334155;
}
.rs-ui-settings-table td:last-child {
  text-align: right;
}
.rs-ui-settings-table select {
  min-width: 118px;
  max-width: 100%;
}
.rs-ui select:not(.rs-ui-nth-select):not(.rs-mini-nth-select) {
  box-sizing: border-box;
  min-height: 26px;
  height: 26px;
  padding: 2px 22px 2px 6px;
  border-radius: 6px;
  font-size: 11px;
  line-height: 20px;
}
.rs-ui-mode-select {
  width: 116px;
  min-width: 0 !important;
}
.rs-ui-feature-nth,
.rs-step-op-body select {
  min-width: 0 !important;
}
.rs-ui label > span:first-child {
  flex: 1;
}
.rs-ui > * {
  flex-shrink: 0;
}
.rs-ui > label,
.rs-ui-row-settings > label {
  height: auto;
  min-height: 38px;
  margin-block: 0;
  gap: 6px;
}
.rs-ui-tabs {
  display: flex;
  align-items: stretch;
  min-height: 26px;
  height: 26px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.rs-ui-tab {
  display: inline-flex;
  flex: 1 1 0;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0 10px;
  border: 0;
  border-right: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 0;
  background: transparent;
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  box-shadow: none;
  outline: none;
  transition: background-color 0.12s ease, color 0.12s ease;
}
.rs-ui-tab:last-child {
  border-right: 0;
}
.rs-ui-tab:not(:disabled):not(.active):is(:hover, :focus-visible) {
  background: #f1f5f9;
  color: #334155;
}
.rs-ui-tab.active {
  background: #1e6b3d;
  color: #ffffff;
  font-weight: 700;
}
.rs-ui-split-zone {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  min-height: 60px;
}
.rs-ui-split-zone-panel {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rs-ui-split-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1px 4px;
  margin-right: 4px;
  border-radius: 4px;
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}
.rs-ui-split-badge.is-split-1 {
  background: #e0f2fe;
  color: #0369a1;
  border: 1px solid #bae6fd;
}
.rs-ui-split-badge.is-split-2 {
  background: #fef3c7;
  color: #b45309;
  border: 1px solid #fde68a;
}
.rs-ui-split-division-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 10px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #f8fafc;
  gap: 8px;
}
.rs-ui-split-division-label {
  color: #0f172a;
  font-size: 12px;
  font-weight: 700;
}
.rs-ui-split-division-header.is-editing-line {
  border-color: var(--hp-brand-700, #1e6b3d);
  background: #edf8f0;
}
.rs-ui-split-mode-toggle {
  height: 24px;
  min-height: 24px;
  padding: 0 8px;
  font-size: 11px;
  font-weight: 600;
  line-height: 22px;
  border-radius: 4px;
}
.rs-ui-split-line-actions {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.rs-ui-split-mode-toggle.active {
  background: var(--hp-brand-700, #1e6b3d) !important;
  border-color: var(--hp-brand-800, #154b30) !important;
  color: #ffffff !important;
  font-weight: 700;
}
.rs-ui-split-settings-card {
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #ffffff;
  overflow: hidden;
}
.rs-ui-split-settings-header {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  cursor: pointer;
  font-size: 11px;
  line-height: 14px;
  background: #ffffff;
  transition: background-color 0.12s ease;
}
.rs-ui-split-settings-header:hover {
  background: #f8fafc;
}
.rs-ui-split-title {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 1;
}
.rs-ui-split-override-status {
  font-size: 10px;
  line-height: 13px;
  padding: 2px 6px;
  border-radius: 4px;
}
.rs-ui-split-override-status.is-default {
  background: #f1f5f9;
  color: #64748b;
}
.rs-ui-split-override-status.is-overridden {
  background: #dcfce7;
  color: #15803d;
  font-weight: 700;
}
.rs-ui-split-settings-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
  border-top: 1px solid #e2e8f0;
  background: #fafbfc;
}
.rs-ui-split-override-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11px;
  font-weight: 600;
  line-height: 14px;
}
.rs-ui-split-default-notice {
  font-size: 11px;
  line-height: 14px;
  color: #64748b;
  font-style: italic;
  padding: 2px 0;
}
.rs-ui-select-on-map {
  position: fixed;
  top: var(--rs-map-tools-top, 260px);
  left: var(--rs-map-tools-left, 50%);
  z-index: 10000;
  box-sizing: border-box;
  width: min(320px, calc(100vw - 24px));
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  overflow-x: hidden;
  overflow-y: visible;
  transform: translateX(-50%);
  padding: 8px;
  border: 1px solid var(--hp-border, #d9e2dc);
  border-radius: 13px;
  background: #fffffff2;
  box-shadow: 0 8px 20px #071d130d;
}
.rs-ui-map-tools-title {
  box-sizing: border-box;
  width: auto;
  min-width: 0;
  flex: 0 0 auto;
  padding-bottom: 0;
  color: var(--hp-text, #17241d);
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
  text-align: center;
}
.rs-ui-map-tools-actions {
  box-sizing: border-box;
  display: flex;
  width: auto;
  flex: 0 0 auto;
  min-width: 0;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
}
.rs-ui-select-on-map[hidden] {
  display: none !important;
}
@media (max-width: 1024px) {
  .rs-ui-select-on-map {
    width: min(272px, calc(100vw - 16px));
  }
}
@media (max-width: 640px) {
  .rs-ui-select-on-map {
    width: min(256px, calc(100vw - 16px));
    padding: 6px;
    border-radius: 10px;
  }
}
.rs-ui-map-options {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 60px;
  align-items: center;
  align-self: flex-end;
  width: 100%;
  flex: 1 1 100%;
  min-width: 0;
  max-width: 100%;
  gap: 4px 12px;
  line-height: 20px;
  padding-bottom: 8px;
}
.rs-ui-map-options select {
  min-width: 0;
  width: 60px;
}
.rs-ui-map-options > * {
  min-width: 0;
}
.rs-ui-map-options input[type=checkbox] {
  justify-self: end;
}
.rs-ui-all-rows,
.rs-ui-selected-rows {
  display: flex;
  flex-wrap: wrap;
  padding: 12px;
  gap: 6px;
  border: 1px solid var(--hp-border, #d9e2dc);
  border-radius: 8px;
  background: #fff;
  box-shadow: inset 0 1px 0 #fff;
  opacity: 1 !important;
}
.rs-ui fieldset.rs-ui-all-rows.disabled,
.rs-ui fieldset.rs-ui-selected-rows.disabled,
.rs-ui fieldset.rs-ui-all-rows.is-read-only,
.rs-ui fieldset.rs-ui-selected-rows.is-read-only {
  opacity: 1 !important;
}
.rs-ui fieldset.is-read-only .rs-ui-row-btn {
  cursor: default;
}
.rs-ui-row-btn {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 30px;
  padding: 3px 7px;
  border: 1px solid #cbd7cf;
  border-radius: 5px;
  background: #fff;
  color: #34443a;
  box-shadow: none;
  cursor: pointer;
  font-weight: 700;
  line-height: 1.2;
}
button.rs-ui-row-btn:not(:disabled):not(.active):is(:hover, :focus-visible) {
  border-color: #83b58e;
  background: #f3faf5;
  color: var(--hp-brand-700, #1e6b3d);
  box-shadow: none;
  transform: none;
  filter: none !important;
}
.rs-ui-insert-hint {
  flex-basis: 100%;
  font-size: 0.9em;
  font-weight: 600;
}
.rs-ui-row-btn.selected {
  border-color: #70ae7d;
  background: var(--hp-brand-50, #edf8f0);
  color: var(--hp-brand-700, #1e6b3d);
  box-shadow: inset 0 0 0 1px #fff;
}
.rs-ui button.rs-ui-row-btn.selected:not(:disabled):is(:hover, :focus-visible) {
  border-color: #278746;
  background: #d9efdf;
  color: #154b30;
  filter: none !important;
}
.rs-ui-row-browser-toolbar,
.rs-ui-row-browser-meta,
.rs-ui-row-grid {
  flex-basis: 100%;
  width: 100%;
}
.rs-ui-row-browser-toolbar {
  display: grid;
  grid-template-columns: minmax(130px, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.rs-ui-row-search {
  box-sizing: border-box;
  display: flex;
  min-width: 0;
  min-height: 26px;
  height: 26px;
  margin: 0;
  padding: 0 8px;
  align-items: center;
  gap: 6px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  transition: border-color 0.12s ease, box-shadow 0.12s ease;
}
.rs-ui-row-search:hover {
  border-color: #83b58e;
}
.rs-ui-row-search:focus-within {
  border-color: var(--hp-brand-500, #39a956);
  box-shadow: 0 0 0 2px rgba(57, 169, 86, 0.18);
}
.rs-ui-row-search > img {
  position: static;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  opacity: .6;
  pointer-events: none;
  filter: none;
}
.rs-ui-row-search > input[type=search] {
  flex: 1 1 auto !important;
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: 0 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: 11px;
  font-weight: 500;
  color: var(--hp-text, #17241d);
  outline: none !important;
}
.rs-ui-row-search > input[type=search]::placeholder {
  color: #94a3b8;
}
.rs-ui-row-search > input[type=search]::-webkit-search-cancel-button {
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.12s ease;
}
.rs-ui-row-search > input[type=search]::-webkit-search-cancel-button:hover {
  opacity: 1;
}
.rs-ui-row-filters {
  box-sizing: border-box;
  display: inline-flex;
  align-items: stretch;
  height: 26px;
  min-height: 26px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.rs-ui-row-filters > button {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 100%;
  padding: 0 8px;
  border: 0;
  border-right: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 0;
  background: transparent;
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  box-shadow: none;
  transform: none;
  filter: none !important;
  transition: all 0.12s ease;
}
.rs-ui-row-filters > button:last-child {
  border-right: 0;
}
.rs-ui .rs-ui-row-filters > button:not(:disabled):not(.active):is(:hover, :focus-visible) {
  background: #f3faf5 !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  filter: none !important;
}
.rs-ui .rs-ui-row-filters > button.active {
  background: var(--hp-brand-50, #edf8f0) !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  font-weight: 700;
  filter: none !important;
}
.rs-ui .rs-ui-row-filters > button.active:is(:hover, :focus-visible) {
  background: #d9efdf !important;
  color: var(--hp-brand-800, #154b30) !important;
  filter: none !important;
}
.rs-ui-row-browser-meta {
  display: flex;
  min-height: 28px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border-bottom: 1px solid #e0e7e2;
}
.rs-ui-row-browser-actions {
  display: flex;
  gap: 12px;
}
.rs-ui .rs-ui-row-browser-actions > button.link,
.rs-ui .rs-ui-row-browser-actions > button.link:not(:disabled):not(.active):is(:hover, :focus-visible) {
  color: var(--hp-brand-700, #1e6b3d);
  font-size: .78rem;
  font-weight: 750;
  filter: none !important;
}
.rs-ui-row-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(44px, 1fr));
  gap: 5px;
}
.rs-ui-row-grid > .rs-ui-empty-content {
  grid-column: 1 / -1;
}
.rs-ui-selected-row {
  display: flex;
  align-items: flex-start;
  gap: 6px;
}
.rs-ui .rs-ui-selected-row.active > button.rs-ui-row-btn,
.rs-ui .rs-ui-selected-row.active > button.rs-ui-row-btn:not(:disabled):is(:hover, :focus-visible) {
  border-color: var(--hp-brand-600, #278746);
  background: var(--hp-brand-600, #278746);
  color: white;
  filter: none !important;
}
.rs-ui-selected-row.active {
  flex-basis: 100%;
  padding: 10px;
  border: 1px solid #8fc29a;
  border-left: 4px solid var(--hp-brand-500, #39a956);
  border-radius: 8px;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
  background: #fff;
  box-shadow: 0 7px 18px #071d130d;
}
.rs-ui-row-settings {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
  min-width: 220px;
}
.rs-ui-row-settings label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}
.rs-ui-row-settings label > span:first-child {
  min-width: 120px;
  flex: 1;
}
.rs-ui-selected-row select {
  width: auto;
  max-width: 120px;
  min-height: 30px;
}
.rs-ui-delete-btn {
  align-self: flex-start;
  min-width: 36px;
  min-height: 36px;
  padding: 0 9px;
  border: 1px solid #e6b2ad;
  border-radius: 9px;
  background: #fff;
  color: #bd3d32;
  box-shadow: none;
  font-size: 1.2em;
  line-height: 1;
}
button.rs-ui-delete-btn:not(:disabled):not(.active):hover {
  border-color: #cf4b40;
  background: #fff1ef;
  color: #a82f27;
  box-shadow: none;
  transform: none;
  filter: none !important;
}
.rs-ui-selected-row.active > .rs-ui-row-btn {
  align-self: flex-start;
}
.rs-ui select {
  max-width: 120px;
}
.rs-ui input {
  flex: 0 !important;
}
.rs-ui-collapse-row {
  display: flex;
  min-height: 42px;
  padding: 0 11px;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--hp-border, #d9e2dc);
  border-radius: 11px;
  background: #fff;
  cursor: pointer;
  font-weight: bold;
}
.rs-ui-collapse-row:hover {
  border-color: #a9c2b0;
  background: #f4faf6;
  color: var(--hp-brand-700, #1e6b3d);
  filter: none !important;
}
.rs-ui-collapse-icon {
  width: 12px;
  height: 10px;
  background-image: url(data:image/webp;base64,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);
  background-size: contain;
  background-repeat: no-repeat;
  transform: none;
}
.rs-ui-collapse-icon.collapsed {
  transform: rotate(-90deg);
}
.rs-ui-simple-headland {
  margin-left: 24px;
  max-width: 360px;
}
.rs-ui-safety-headland {
  margin-left: 24px;
}
.rs-ui-safety-headland .rs-ui-simple-headland {
  margin-left: 24px;
}
.rs-ui-safety-detour-toggle > span:nth-child(2) {
  flex: 1;
}
.rs-ui-safety-detour-toggle.is-disabled {
  cursor: default;
  opacity: 0.6;
}
.rs-ui-clear-btn,
button.rs-ui-clear-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 26px;
  min-height: 26px;
  padding: 0 8px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #ffffff;
  color: var(--hp-brand-700, #1e6b3d);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  font-size: 11px;
  font-weight: 600;
  line-height: 24px;
  cursor: pointer;
  filter: none !important;
  transition: all 0.12s ease;
}
button.rs-ui-clear-btn:not(:disabled):not(.active):hover,
.rs-ui-clear-btn:not(:disabled):not(.active):hover {
  border-color: #83b58e !important;
  background: #f3faf5 !important;
  color: var(--hp-brand-800, #154b30) !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
}
button.rs-ui-clear-btn:disabled,
.rs-ui-clear-btn:disabled {
  opacity: 0.35 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  filter: none !important;
}
.rs-ui .btn-turn-template {
  flex: 0 0 auto;
}
.rs-ui-icon-btn {
  height: 28px;
  min-width: 34px;
  padding: 0 10px;
}
.rs-ui-icon-btn img {
  width: 18px;
  height: 18px;
  display: block;
  position: static;
  margin: 0;
}
button.rs-ui-icon-btn:not(:disabled):not(.active):hover {
  border-color: #83b58e !important;
  background: #f3faf5 !important;
  filter: none !important;
}
.rs-ui-inline-checkbox {
  display: flex;
  align-items: center;
  gap: 4px;
}
.rs-ui-legend {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 2px 9px;
  border: 1px solid #cad8ce;
  border-radius: 9px;
  background: #e8f0eb;
  color: #2b3a31;
  cursor: pointer;
}
.rs-ui-legend:hover {
  border-color: #94b59c;
  background: #e1eee5;
  color: var(--hp-brand-700, #1e6b3d);
  filter: none !important;
}
.rs-ui-collapsed-content,
.rs-ui-empty-content {
  flex-basis: 100%;
  color: var(--gray-500);
}
.rs-ui-selection-rect {
  position: fixed;
  z-index: 10000;
  pointer-events: none;
  border: 2px solid var(--hp-brand-500, #39a956);
  border-radius: 6px;
  background: #39a95624;
  box-sizing: border-box;
}
@media (max-width: 640px) {
  .rs-ui {
    gap: 8px;
  }
  .rs-ui-all-rows,
  .rs-ui-selected-rows {
    padding: 9px;
    gap: 5px;
    border-radius: 8px;
  }
  .rs-ui-row-btn {
    min-width: 36px;
    min-height: 34px;
    padding: 4px 6px;
  }
  .rs-ui-row-browser-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }
  .rs-ui-row-filters {
    width: 100%;
  }
  .rs-ui-row-filters > button {
    flex: 1 1 0;
  }
  .rs-ui-row-grid {
    grid-template-columns: repeat(auto-fill, minmax(40px, 1fr));
  }
  .rs-ui-selected-row.active {
    box-sizing: border-box;
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .rs-ui-row-settings {
    min-width: min(220px, 100%);
    flex: 1 1 180px;
  }
}
.rs-ui {
  max-width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
}
.generate-path-dlg > :is(main, .main) {
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
.rs-ui-row-btn.is-active-step {
  background-color: #eab308 !important;
  border-color: #a16207 !important;
  color: #000000 !important;
  font-weight: 700;
}
.rs-ui-turn-templates-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  height: auto;
  min-height: 38px;
}
.rs-ui-turn-templates-label > span:first-child {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rs-ui-turn-templates-actions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  margin-left: auto;
}
.rs-ui .btn-turn-template span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 11px;
  font-weight: bold;
  color: var(--hp-brand-700, #1e6b3d);
  width: auto;
  text-align: center;
  line-height: 1;
  pointer-events: none;
}
.rs-step-op-cards-wrap {
  flex-basis: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 8px;
}
.rs-step-op-card.is-shifted {
  animation: rsShiftPulse 0.35s ease-out;
}
@keyframes rsShiftPulse {
  0% {
    box-shadow: 0 0 0 3px rgba(57, 169, 86, 0.45), 0 4px 16px rgba(0, 0, 0, 0.12);
    transform: scale(1.005);
  }
  100% {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    transform: scale(1);
  }
}
.rs-step-op-multi-bar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 3px 6px;
  background: #f8fafc;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  box-sizing: border-box;
}
.rs-step-op-multi-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}
.rs-step-op-multi-actions .rs-step-op-delete {
  width: auto;
  min-width: 48px;
  padding: 0 7px;
  white-space: nowrap;
}
.rs-step-op-card {
  flex-basis: 100%;
  width: 100%;
  background: #ffffff;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-top: 3px solid var(--hp-brand-500, #39a956);
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  padding: 10px 14px;
  margin-top: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 10px;
  animation: rsCardFadeIn 0.16s ease-out;
}
@keyframes rsCardFadeIn {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.rs-step-op-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid #f1f5f9;
}
.rs-step-op-title {
  display: flex;
  align-items: center;
  gap: 8px;
}
.rs-step-op-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  background: #f8fafc;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
  color: #1e293b;
  letter-spacing: 0.02em;
}
.rs-step-op-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #eab308;
  margin-right: 5px;
}
.rs-step-op-rowname {
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
}
.rs-step-op-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}
.rs-step-op-actions .rs-step-op-btn {
  width: 26px;
  min-width: 26px;
  height: 26px;
  min-height: 26px;
  padding: 0;
  border-radius: 6px;
}
.rs-step-op-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 26px;
  min-height: 26px;
  padding: 0 8px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  border-radius: 6px;
  cursor: pointer;
  background: #ffffff;
  border: 1px solid var(--hp-border, #cbd5e1);
  color: #1e293b;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  transition: all 0.12s ease;
  box-sizing: border-box;
}
.rs-step-op-shift svg {
  display: block;
}
.rs-step-op-btn:not(.rs-step-op-delete):hover:not(:disabled) {
  background: #f3faf5 !important;
  border-color: #83b58e !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  box-shadow: none !important;
  filter: none !important;
}
.rs-step-op-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
  background: #f1f5f9;
  border-color: #e2e8f0;
  color: #94a3b8;
  pointer-events: none;
  filter: none !important;
}
.rs-step-op-delete {
  background: #fff5f3;
  border-color: #efc4be;
  color: var(--hp-danger, #c43827);
  padding: 0 6px;
  width: 26px;
  min-width: 26px;
  height: 26px;
  min-height: 26px;
  border-radius: 6px;
  transition:
    color 0.12s ease,
    background 0.12s ease,
    border-color 0.12s ease;
}
.rs-step-op-delete:hover:not(:disabled):not(.insist) {
  background: #ffebe7;
  border-color: #e28a7d;
  color: #a72314;
  filter: none !important;
}
.rs-step-op-delete.insist {
  background: #dc2626 !important;
  border-color: #dc2626 !important;
  color: white !important;
}
.rs-step-op-delete.insist:hover:not(:disabled) {
  background: #b91c1c !important;
  border-color: #b91c1c !important;
  color: white !important;
  filter: none !important;
}
button.rs-step-op-delete > img,
.rs-step-op-delete img {
  position: static !important;
  top: 0 !important;
  margin: 0 !important;
  width: 12px;
  height: 12px;
  display: block;
  flex-shrink: 0;
  filter: none;
}
button.rs-step-op-delete.insist > img,
.rs-step-op-delete.insist img {
  filter: brightness(0) invert(1) !important;
}
.rs-step-op-count {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}
.rs-step-op-close {
  background: transparent;
  border: 1px solid transparent;
  border-radius: 6px;
  color: #64748b;
  font-size: 14px;
  padding: 0;
  width: 26px;
  min-width: 26px;
  height: 26px;
  min-height: 26px;
  transition: all 0.12s ease;
}
.rs-step-op-close:hover {
  background: #f1f5f9;
  color: #0f172a;
  border-color: var(--hp-border, #cbd5e1);
  filter: none !important;
}
.rs-step-op-body {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  padding-top: 2px;
}
.rs-step-op-body label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 12px;
  color: #334155;
  font-weight: 500;
}
.rs-step-op-body label > span:first-child {
  color: #475569;
}
.rs-step-op-body select,
.rs-step-op-body input[type=number] {
  background-color: #ffffff;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 4px;
  padding: 2px 6px;
  height: 26px;
  font-size: 12px;
  color: #1e293b;
  box-sizing: border-box;
}
.rs-ui-mode-select,
.rs-ui-feature-nth,
.rs-step-op-body select {
  min-height: 26px;
  height: 26px;
  font-size: 11px;
}
.rs-step-op-body input[type=number] {
  width: 65px;
}
.rs-step-op-body select:focus,
.rs-step-op-body input[type=number]:focus {
  border-color: var(--hp-brand-500, #39a956);
  outline: none;
  box-shadow: 0 0 0 1px var(--hp-brand-500, #39a956);
}
.rs-step-op-body .rs-ui-collapse-row {
  font-size: 12px;
  color: #1e293b;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
}
.rs-ui-legend-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: default;
}
.rs-ui-view-toggle,
button.rs-ui-view-toggle {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 26px;
  min-height: 26px;
  padding: 0 8px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #ffffff;
  color: var(--hp-text, #334155);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  font-size: 11px;
  font-weight: 600;
  line-height: 24px;
  cursor: pointer;
  filter: none !important;
  transition: all 0.12s ease;
}
button.rs-ui-view-toggle:not(:disabled):not(.active):hover,
.rs-ui-view-toggle:not(:disabled):not(.active):hover {
  border-color: #83b58e !important;
  background: #f3faf5 !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
}
.rs-ui-action-group,
.rs-mini-action-group {
  box-sizing: border-box;
  display: inline-flex;
  align-items: stretch;
  height: 26px;
  min-height: 26px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  transition: border-color 0.12s ease;
}
.rs-ui-action-group:hover,
.rs-mini-action-group:hover {
  border-color: #83b58e;
}
.rs-ui-action-btn,
.rs-mini-action-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  min-width: 24px;
  height: 100%;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  filter: none !important;
  transition: all 0.12s ease;
}
.rs-ui-action-btn + .rs-ui-action-btn,
.rs-mini-action-btn + .rs-mini-action-btn {
  border-left: 1px solid var(--hp-border, #cbd5e1);
}
.rs-ui-action-btn:not(.active):hover,
.rs-mini-action-btn:not(.active):hover {
  background: #f3faf5 !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  filter: none !important;
}
.rs-ui-action-btn.active,
.rs-mini-action-btn.active {
  filter: none !important;
}
.rs-ui-action-btn.is-add.active,
.rs-mini-action-btn.is-add.active {
  background: var(--hp-brand-500, #39a956) !important;
  border-color: var(--hp-brand-500, #39a956) !important;
  color: #ffffff !important;
  filter: none !important;
}
.rs-ui-action-btn.is-add.active:hover,
.rs-mini-action-btn.is-add.active:hover {
  background: var(--hp-brand-600, #278746) !important;
  border-color: var(--hp-brand-600, #278746) !important;
  color: #ffffff !important;
  filter: none !important;
}
.rs-ui-action-btn.is-remove.active,
.rs-mini-action-btn.is-remove.active {
  background: var(--hp-danger, #dc2626) !important;
  border-color: var(--hp-danger, #dc2626) !important;
  color: #ffffff !important;
  filter: none !important;
}
.rs-ui-action-btn.is-remove.active:hover,
.rs-mini-action-btn.is-remove.active:hover {
  background: #b91c1c !important;
  border-color: #b91c1c !important;
  color: #ffffff !important;
  filter: none !important;
}
.rs-ui-duplicate-toggle,
.rs-mini-dup-btn,
button.rs-ui-duplicate-toggle,
button.rs-mini-dup-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  min-width: 26px;
  height: 26px;
  min-height: 26px;
  padding: 0;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #ffffff;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  filter: none !important;
  transition: all 0.12s ease;
}
.rs-ui-duplicate-toggle img,
.rs-mini-dup-btn img {
  position: static !important;
  top: 0 !important;
  margin: 0 !important;
  width: 14px;
  height: 14px;
  display: block;
  opacity: 0.65;
  filter: none !important;
  transition: opacity 0.12s ease;
}
.rs-ui-duplicate-toggle:not(.active):hover,
.rs-mini-dup-btn:not(.active):hover,
button.rs-ui-duplicate-toggle:not(.active):hover,
button.rs-mini-dup-btn:not(.active):hover {
  background: #f3faf5 !important;
  border-color: #83b58e !important;
  filter: none !important;
}
.rs-ui-duplicate-toggle:not(.active):hover img,
.rs-mini-dup-btn:not(.active):hover img {
  opacity: 0.95 !important;
  filter: none !important;
}
.rs-ui-duplicate-toggle.active,
.rs-mini-dup-btn.active {
  background: var(--hp-brand-500, #39a956) !important;
  border-color: var(--hp-brand-500, #39a956) !important;
  box-shadow: none !important;
  filter: none !important;
}
.rs-ui-duplicate-toggle.active:hover,
.rs-mini-dup-btn.active:hover {
  background: var(--hp-brand-600, #278746) !important;
  border-color: var(--hp-brand-600, #278746) !important;
  filter: none !important;
}
.rs-ui-duplicate-toggle.active img,
.rs-mini-dup-btn.active img {
  opacity: 1 !important;
  filter: brightness(0) invert(1) !important;
}
.rs-ui-feature {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.rs-ui-feature-table {
  margin: 0;
}
.rs-ui-simple-feature .rs-ui-setting-group-heading th {
  padding: 7px 10px 4px;
  border-top: 1px solid #e8eef3;
  color: #64748b;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: left;
  text-transform: uppercase;
}
.rs-ui-simple-feature .rs-ui-setting-group:first-of-type .rs-ui-setting-group-heading th {
  border-top: 0;
}
.rs-ui-feature-table td.rs-ui-feature-controls {
  white-space: nowrap;
  text-align: right;
}
.rs-ui-feature-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}
.rs-ui-direction-summary {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 16px;
  line-height: 1;
}
.rs-ui-setting-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.rs-ui-setting-icon {
  display: block;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  object-fit: contain;
}
.rs-ui-setting-icon.is-inactive {
  opacity: 0.4;
}
.rs-ui-simple-feature .rs-ui-feature-number {
  width: 78px;
  min-width: 78px;
}
.rs-ui-simple-headland-editor {
  min-width: min(360px, 80vw);
}
.rs-ui-simple-headland-editor > label {
  min-height: 32px;
}
.rs-ui-simple-headland-editor input[type=number],
.rs-ui-simple-number-editor input[type=number] {
  box-sizing: border-box;
  width: 10em;
  min-width: 10em;
  flex: 0 0 10em;
}
.rs-ui-simple-row-start-editor .rs-ui-editor-toggle {
  min-height: 32px;
}
.rs-ui-simple-number-editor .rs-ui-number-editor-row {
  min-height: 34px;
}
.rs-ui-feature-nth {
  width: 72px;
  min-width: 72px !important;
  height: 26px;
  padding: 2px 4px;
  font-size: 11px;
}
.rs-ui-feature-mini {
  min-width: 0;
  width: 100%;
}
.rs-ui-setting-toggle {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}
.rs-ui-settings-editor {
  min-width: min(420px, 80vw);
  gap: 8px;
}
.rs-ui-settings-editor label {
  display: flex;
  align-items: center;
  gap: 6px;
}
.rs-ui-settings-editor label > span:first-child {
  min-width: 100px;
}
.rs-ui-settings-editor input[type=number] {
  min-width: 0;
  flex: 1 1 90px;
}
.rs-ui-rowselector-dialog .rs-ui-settings-editor {
  width: min(560px, calc(100vw - 32px));
  max-width: calc(100vw - 32px);
  padding: 4px 8px;
  gap: 6px;
}
.rs-ui-rowselector-editor {
  padding: 2px 0;
}
.rs-ui-rowselector-editor label {
  min-height: 32px;
}
.rs-ui-rowselector-editor .rs-ui-feature-input-row {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.rs-ui-rowselector-editor .rs-ui-feature-input-row > .rs-ui-setting-toggle {
  flex: 0 0 auto;
}
.rs-ui-rowselector-editor .rs-ui-feature-input-row input[type=number] {
  box-sizing: border-box;
  width: auto;
  min-width: 0;
  height: 34px;
  padding: 4px 5px;
  color: #17241d;
  background: #ffffff;
}
.rs-ui-rowselector-editor .rs-ui-feature-input-row input[type=number]:disabled {
  opacity: 1;
  color: #475569;
  background: #f1f5f9;
  border-color: #cbd5e1;
  cursor: default;
}
.rs-ui-rowselector-editor .rs-ui-coordinate-input {
  width: 10em !important;
  min-width: 10em !important;
}
.rs-ui-rowselector-editor .rs-ui-offset-input {
  width: 6em !important;
  min-width: 6em !important;
}
.rs-ui-rowselector-editor .rs-ui-bearing-input {
  width: 10em !important;
  min-width: 10em !important;
}
.rs-ui-rowselector-editor .rs-ui-feature-input-row > .sub,
.rs-ui-rowselector-editor .rs-ui-feature-input-row > sub {
  flex: 0 0 auto;
}
.rs-ui-rowselector-editor .rs-ui-editor-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  font-weight: 600;
  line-height: 20px;
}
.rs-ui-rowselector-editor .rs-ui-editor-toggle > span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
}
.rs-ui-rowselector-editor .rs-ui-editor-toggle > span:first-child {
  flex: 1 1 auto;
  min-width: 0;
}
.rs-ui-rowselector-editor .rs-ui-editor-toggle > span:nth-child(2) {
  flex: 0 0 auto;
}
.rs-ui-rowselector-editor .rs-ui-editor-toggle > input[type=checkbox] {
  display: block;
  flex: 0 0 auto;
  margin: 0;
}
.rs-ui-rowselector-editor .rs-ui-point-row {
  flex-wrap: wrap;
  align-items: center;
}
.rs-ui-rowselector-editor .rs-ui-coordinate-group,
.rs-ui-rowselector-editor .rs-ui-offset-group {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.rs-ui-rowselector-editor .rs-ui-coordinate-group {
  flex: 1 1 auto;
}
.rs-ui-rowselector-editor .rs-ui-coordinate-group > span:first-child {
  flex: 0 0 auto;
}
.rs-ui-rowselector-editor .rs-ui-offset-group {
  flex: 0 0 auto;
}
.rs-ui-rowselector-editor .rs-ui-offset-group label {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
}
.rs-ui-rowselector-editor .rs-ui-bearing-row {
  flex-wrap: wrap;
}
.rs-ui-rowselector-editor .rs-ui-bearing-row > span:first-child {
  flex: 0 0 auto;
}
.rs-ui-rowselector-editor .rs-ui-bearing-row input[type=number] {
  flex: 0 0 auto;
}
.rs-ui-rowselector-editor .rs-ui-feature-input-row:not(.rs-ui-point-row):not(.rs-ui-bearing-row) {
  display: flex;
  align-items: center;
  gap: 6px;
}
.rs-ui-rowselector-editor .rs-ui-feature-input-row:not(.rs-ui-point-row):not(.rs-ui-bearing-row) > span:first-child {
  flex: 0 0 auto;
}
@media (max-width: 640px) {
  .rs-ui-rowselector-editor .rs-ui-coordinate-group,
  .rs-ui-rowselector-editor .rs-ui-offset-group {
    flex-wrap: wrap;
  }
  .rs-ui-rowselector-editor .rs-ui-offset-group {
    width: 100%;
  }
}
.rs-ui-nth-btn,
.rs-mini-nth-btn {
  box-sizing: border-box;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 26px;
  min-height: 26px;
  padding: 0 6px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #ffffff;
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
  line-height: 24px;
  color: #64748b;
  gap: 3px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  filter: none !important;
  transition: all 0.12s ease;
  user-select: none;
  -webkit-user-select: none;
}
.rs-ui-nth-btn:not(.active):hover,
.rs-mini-nth-btn:not(.active):hover {
  background: #f3faf5 !important;
  border-color: #83b58e !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  filter: none !important;
}
.rs-ui-nth-btn:not(.active):hover .rs-ui-nth-arrow,
.rs-mini-nth-btn:not(.active):hover .rs-mini-nth-arrow {
  opacity: 0.9 !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
}
.rs-ui-nth-btn.active,
.rs-mini-nth-btn.active {
  background: var(--hp-brand-50, #edf8f0) !important;
  border-color: var(--hp-brand-500, #39a956) !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  filter: none !important;
}
.rs-ui-nth-btn.active:hover,
.rs-mini-nth-btn.active:hover {
  background: #e1f2e6 !important;
  border-color: var(--hp-brand-600, #278746) !important;
  color: var(--hp-brand-800, #154b30) !important;
  filter: none !important;
}
.rs-ui-nth-btn.active .rs-ui-nth-arrow,
.rs-mini-nth-btn.active .rs-mini-nth-arrow {
  opacity: 0.95 !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
}
.rs-ui-nth-text,
.rs-mini-nth-text {
  pointer-events: none;
  white-space: nowrap;
  letter-spacing: -0.2px;
}
.rs-ui-nth-arrow,
.rs-mini-nth-arrow {
  pointer-events: none;
  display: block;
  opacity: 0.65;
  flex-shrink: 0;
}
.rs-ui-nth-select,
.rs-mini-nth-select {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  -webkit-appearance: none;
  appearance: none;
}
.rs-mini-view-host {
  width: 100%;
  flex-basis: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  position: relative;
}
.rs-mini-view-host:has(.rs-mini-magbox[style*="display: block"]),
.rs-mini-view-container:has(.rs-mini-magbox[style*="display: block"]) {
  z-index: 1000;
}
.rs-mini-view-container {
  position: relative;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 6px;
  user-select: none;
  margin-top: 4px;
}
.rs-mini-strip-wrap {
  position: relative;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  height: 60px;
  background: #fafafa;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 8px;
  overflow: hidden;
  cursor: crosshair;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.06);
}
.rs-mini-strip-wrap.is-view-only {
  cursor: default;
}
.rs-mini-strip-svg {
  display: block;
  width: 100%;
  height: 100%;
}
.rs-mini-magbox {
  position: absolute;
  bottom: calc(100% + 4px);
  left: 0;
  right: 0;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  background: #ffffff;
  border: 1px solid var(--hp-border, #94a3b8);
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
  z-index: 1001;
  padding: 6px 8px 8px;
  box-sizing: border-box;
  pointer-events: auto;
  opacity: 1 !important;
}
.rs-mini-magbox::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 8px;
  background: transparent;
}
.rs-mini-maghead {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #475569;
  margin-bottom: 6px;
  padding: 0 2px;
}
.rs-mini-maghead-left {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
.rs-mini-nav-group,
.rs-mini-zoom-group {
  box-sizing: border-box;
  display: inline-flex;
  align-items: stretch;
  height: 26px;
  min-height: 26px;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  transition: border-color 0.12s ease;
}
.rs-mini-nav-group:hover,
.rs-mini-zoom-group:hover {
  border-color: #83b58e;
}
.rs-mini-nav-btn,
.rs-mini-zoom-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  min-width: 24px;
  height: 100%;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
  color: #64748b;
  filter: none !important;
  transition: background 0.12s ease, color 0.12s ease;
}
.rs-mini-nav-btn + .rs-mini-nav-btn,
.rs-mini-zoom-btn + .rs-mini-zoom-btn {
  border-left: 1px solid var(--hp-border, #cbd5e1);
}
.rs-mini-nav-btn:not(:disabled):not(.disabled):hover,
.rs-mini-zoom-btn:not(:disabled):not(.disabled):hover {
  background: #f3faf5 !important;
  color: var(--hp-brand-700, #1e6b3d) !important;
  filter: none !important;
}
.rs-mini-nav-btn:not(:disabled):not(.disabled):hover svg,
.rs-mini-zoom-btn:not(:disabled):not(.disabled):hover svg {
  color: var(--hp-brand-700, #1e6b3d) !important;
}
.rs-mini-nav-btn:disabled,
.rs-mini-nav-btn.disabled,
.rs-mini-zoom-btn:disabled,
.rs-mini-zoom-btn.disabled {
  opacity: 0.35 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  filter: none !important;
}
.rs-mini-nav-btn svg,
.rs-mini-zoom-btn svg {
  display: block;
  pointer-events: none;
}
.rs-mini-maghead-right {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-left: auto;
}
.rs-mini-close-btn,
button.rs-mini-close-btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  min-width: 26px;
  height: 26px;
  min-height: 26px;
  padding: 0;
  border: 1px solid var(--hp-border, #cbd5e1);
  border-radius: 6px;
  background: #ffffff;
  cursor: pointer;
  font-size: 13px;
  line-height: 1;
  color: #94a3b8;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  filter: none !important;
  transition: all 0.12s ease;
}
button.rs-mini-close-btn:hover,
.rs-mini-close-btn:hover {
  background: #fee2e2 !important;
  border-color: #fca5a5 !important;
  color: #dc2626 !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
}
.rs-mini-magrange {
  color: var(--blue-500, #0284c7);
}
.rs-mini-mag-svg {
  display: block;
  width: 100%;
  height: 114px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  cursor: pointer;
}
.rs-mini-bar {
  fill: #94a3b8;
  transition: fill 0.08s ease;
}
.rs-mini-bar.is-selected {
  fill: var(--hp-brand-500, #39a956);
}
.rs-mini-bar.is-empty-slot {
  fill: #e2e8f0;
  stroke: var(--hp-border, #cbd5e1);
  stroke-width: 0.75px;
  opacity: 0.8;
}
.rs-mini-bar.is-active {
  fill: #eab308;
  stroke: #a16207;
  stroke-width: 1.5px;
}
.rs-mini-bar.is-hovered {
  fill: #2563eb;
}
.rs-mini-bar.is-selected.is-hovered {
  fill: var(--hp-brand-600, #278746);
  stroke: #86efac;
  stroke-width: 1px;
}
.rs-mini-bar.is-active.is-hovered {
  fill: #facc15;
  stroke: #78350f;
  stroke-width: 2px;
}
.rs-mini-bar.is-preview-add {
  fill: #60a5fa;
  stroke: #2563eb;
  stroke-dasharray: 2 2;
}
.rs-mini-bar.is-preview-remove {
  fill: #f87171;
  stroke: #dc2626;
  stroke-dasharray: 2 2;
}
.rs-mini-dim-overlay {
  fill: #ffffff;
  opacity: 0.62;
  pointer-events: none;
}
.rs-mini-zoom-lens {
  fill: #3b82f6;
  opacity: 0.18;
  stroke: #2563eb;
  stroke-width: 1.5px;
  pointer-events: none;
}
.rs-mini-hit-target {
  fill: transparent;
  cursor: pointer;
}
.rs-mini-row-label {
  font-size: 10px;
  fill: #64748b;
  font-weight: 500;
  pointer-events: none;
}
.rs-mini-empty-text {
  font-size: 12px;
  fill: #94a3b8;
}
.rs-split-zone-line-overlay {
  pointer-events: none;
}
.rs-split-zone-line {
  fill: none;
  stroke: #f59e0b;
  stroke-width: 2.5px;
  stroke-dasharray: 8 6;
  vector-effect: non-scaling-stroke;
}
.rs-split-zone-line.is-editing {
  fill: none;
  stroke: #3b82f6;
  stroke-width: 3px;
  stroke-dasharray: 6 4;
}
.rs-split-zone-line-hitarea {
  fill: none;
  stroke: transparent;
  stroke-width: 26px;
  vector-effect: non-scaling-stroke;
  pointer-events: stroke;
  cursor: grab;
}
.rs-split-zone-line-hitarea:active {
  cursor: grabbing;
}
.rs-split-zone-handle {
  fill: #ffffff;
  stroke: #3b82f6;
  stroke-width: 2.5px;
  vector-effect: non-scaling-stroke;
  pointer-events: all;
  cursor: grab;
}
.rs-split-zone-handle:hover {
  fill: #dbeafe;
  stroke-width: 3.5px;
}
.rs-split-zone-handle:active {
  cursor: grabbing;
  fill: #3b82f6;
}
.rs-split-zone-handle-mid {
  fill: #f59e0b;
  stroke: #ffffff;
}
.rs-split-zone-handle-mid:hover {
  fill: #d97706;
}
.rs-split-zone-virtual-zones {
  pointer-events: none;
}
.rs-split-virtual-zone {
  vector-effect: non-scaling-stroke;
  pointer-events: none;
  transition: opacity 0.15s ease;
}
.rs-split-virtual-zone-s1.rs-split-virtual-zone-work {
  fill: rgba(30, 107, 61, 0.16);
  stroke: rgba(30, 107, 61, 0.75);
  stroke-width: 1.5px;
}
.rs-split-virtual-zone-s1.rs-split-virtual-zone-safety {
  fill: rgba(16, 185, 129, 0.15);
  stroke: rgba(16, 185, 129, 0.8);
  stroke-width: 1.5px;
  stroke-dasharray: 5 3;
}
.rs-split-virtual-zone-s2.rs-split-virtual-zone-work {
  fill: rgba(234, 88, 12, 0.16);
  stroke: rgba(234, 88, 12, 0.75);
  stroke-width: 1.5px;
}
.rs-split-virtual-zone-s2.rs-split-virtual-zone-safety {
  fill: rgba(245, 158, 11, 0.15);
  stroke: rgba(245, 158, 11, 0.8);
  stroke-width: 1.5px;
  stroke-dasharray: 5 3;
}
.rs-split-virtual-zone-s1.rs-split-virtual-zone-avoid,
.rs-split-virtual-zone-s1.rs-split-virtual-zone-obstacle,
.rs-split-virtual-zone-s1.rs-split-virtual-zone-non_work,
.rs-split-virtual-zone-s1.rs-split-virtual-zone-pass_through {
  fill: rgba(255, 235, 59, 0.18);
  stroke: rgba(22, 163, 74, 0.8);
  stroke-width: 1.5px;
  stroke-dasharray: 5 3;
}
.rs-split-virtual-zone-s2.rs-split-virtual-zone-avoid,
.rs-split-virtual-zone-s2.rs-split-virtual-zone-obstacle,
.rs-split-virtual-zone-s2.rs-split-virtual-zone-non_work,
.rs-split-virtual-zone-s2.rs-split-virtual-zone-pass_through {
  fill: rgba(255, 235, 59, 0.18);
  stroke: rgba(234, 88, 12, 0.8);
  stroke-width: 1.5px;
  stroke-dasharray: 5 3;
}
.rs-ui-split-active-svg .g-rows,
.rs-ui-split-active-svg .g-row-indexes {
  opacity: 0.15;
  pointer-events: none;
  transition: opacity 0.2s ease;
}
.rs-split-zone-rows {
  pointer-events: stroke;
}
.rs-split-row {
  vector-effect: non-scaling-stroke;
  stroke-width: 1.5px;
  cursor: pointer;
  pointer-events: stroke;
  transition:
    stroke-width 0.1s ease,
    stroke 0.1s ease,
    opacity 0.1s ease;
}
.rs-split-row.rs-split-row-s1 {
  stroke: rgba(22, 163, 74, 0.45);
  stroke-dasharray: 3 3;
  stroke-width: 1px;
}
.rs-split-row.rs-split-row-s2 {
  stroke: rgba(234, 88, 12, 0.45);
  stroke-dasharray: 3 3;
  stroke-width: 1px;
}
.rs-split-zone-rows.is-map-tool-active .rs-split-row.rs-split-row-s1 {
  stroke: #16a34a;
}
.rs-split-zone-rows.is-map-tool-active .rs-split-row.rs-split-row-s2 {
  stroke: #ea580c;
}
.rs-split-zone-rows.is-map-tool-active .rs-split-row:not(.selected) {
  stroke-dasharray: 3 3;
  stroke-width: 1px;
}
.rs-split-row.skip {
  stroke-dasharray: 2 4;
  stroke: transparent !important;
}
.rs-split-zone-rows.is-map-tool-active .rs-split-row.skip {
  stroke: #dc2626 !important;
}
.rs-split-row.rs-split-row-s1.selected {
  stroke: transparent;
  stroke-width: 3px;
  filter: none;
}
.rs-split-row.rs-split-row-s2.selected {
  stroke: transparent;
  stroke-width: 3px;
  filter: none;
}
.rs-split-row.highlighted {
  stroke: #fbbf24 !important;
  stroke-dasharray: none !important;
  stroke-width: 2px !important;
  filter: drop-shadow(0 0 2px rgba(251, 191, 36, 0.8));
}
.rs-split-zone-rows.is-map-tool-active .rs-split-row.selected,
.rs-split-zone-rows.is-map-tool-active .rs-split-row.selected.highlighted {
  stroke: transparent !important;
  stroke-dasharray: none !important;
  filter: none !important;
}
.rs-ui-common-turn-templates-label {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 8px 0;
}
.turn-template-row-targets {
  align-items: center;
  display: flex;
  gap: 8px;
}
.turn-template-row-target-details {
  min-width: 210px;
}
.turn-template-row-target-details summary {
  cursor: pointer;
}
.turn-template-row-target-actions {
  display: flex;
  gap: 8px;
  margin: 6px 0;
}
.turn-template-row-target-list {
  max-height: 180px;
  overflow: auto;
}
.turn-template-row-target-list label {
  display: flex;
  gap: 6px;
  white-space: nowrap;
}

/* web/client/lib/generate_path/headland_basic_ui.css */
.hb-ui label > span:first-child {
  flex: 1;
}
.hb-ui input,
.hb-ui select {
  flex: 0 !important;
}
.hb-ui input[type=number] {
  width: 50px;
}
.hb-ui select {
  min-width: 120px;
}
.hb-ui select.hb-ui-passes {
  min-width: 50px;
}
.hb-ui sub {
  min-width: 1em;
  text-align: center;
}
.hb-ui-loading {
  position: absolute;
  inset: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  cursor: wait;
  background: rgba(255, 255, 255, 0.75);
}
.hb-ui-loading-spinner {
  width: 24px;
  height: 24px;
  border: 4px solid black;
  border-color: black transparent black transparent;
  border-radius: 50%;
  animation: busy_spin 0.8s ease-in-out infinite;
}

/* web/client/lib/multi_selector.css */
.multi-selector {
  padding: 4px 5px;
  border: 1px solid var(--gray-300);
  border-radius: 8px;
  font-size: 12px;
  font-family: "Open Sans";
}
.multi-selector.editable {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}

/* web/client/lib/generate_path/field_path_ui.css */
.fp-ui label > span:first-child {
  flex: 1;
}
.fp-ui input,
.fp-ui select {
  flex: inherit !important;
}
.fp-ui input[type=number] {
  width: 50px;
}
.fp-ui sub {
  min-width: 1em;
  text-align: center;
}
.fp-ui label[name=avoid_zones] {
  height: auto;
}
.fp-ui select {
  max-width: 70%;
}
.fp-ui-selector {
  border-radius: 3px;
  border: 1px solid #ededf0;
}

/* web/client/styles/device-report-import.css */
.dialog.device-report-import-dialog {
  box-sizing: border-box;
  inset: 0;
  width: auto;
  height: auto;
  padding: 44px 8px 8px;
  overflow: hidden;
}
html.small .dialog.device-report-import-dialog {
  padding: 8px;
}
.dialog > form.device-report-import-form {
  box-sizing: border-box;
  width: min(1040px, 100%);
  max-width: 100%;
  max-height: 100%;
  min-width: 0;
  overflow: hidden;
}
.device-report-import-form > .device-report-import-main {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  gap: 12px;
}
.device-report-import-main > * {
  flex-shrink: 0;
}
.device-report-import-main p {
  margin: 0;
}
.device-report-import-main .report-import-file {
  height: auto;
  flex-wrap: wrap;
}
.device-report-import-main .report-import-file > input {
  min-width: 0;
  max-width: 100%;
}
.device-report-import-main .report-import-json {
  box-sizing: border-box;
  width: 100%;
  min-height: 220px;
  resize: vertical;
  font-family: monospace;
}
.report-import-summary {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  font-weight: 600;
}
.report-import-guidance {
  color: var(--hp-text-muted, #555);
  font-size: .9em;
}
.report-import-warning {
  color: #875300;
}
.report-import-error {
  padding: 10px;
  border: 1px solid #d33410;
  background: #fff0ec;
  color: #9f260a;
}
.report-import-device {
  min-width: 0;
  border: 1px solid var(--hp-border, #d0d5dd);
  border-radius: 6px;
  overflow: hidden;
}
.report-import-device-heading {
  display: flex;
  min-height: 38px;
  padding: 8px 12px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: var(--hp-surface-muted, #f4f5f6);
}
.report-import-device-heading > label {
  height: auto;
  min-width: 0;
  margin: 0;
}
.report-import-device-heading strong {
  overflow-wrap: anywhere;
}
.report-import-device-heading input {
  flex: none;
}
.report-import-status {
  flex: none;
  max-width: 50%;
  text-align: right;
  font-size: .85em;
}
:is(.report-import-other_robot, .report-import-ambiguous, .report-import-class_missing, .report-import-class_conflict) .report-import-status {
  color: #9f260a;
}
:is(.report-import-new, .report-import-attach, .report-import-update) .report-import-status {
  color: #1e6b3d;
}
.report-import-selectors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
}
.report-import-selectors > label {
  height: auto;
  min-width: 0;
  flex-wrap: wrap;
}
.report-import-selectors > label > span:first-child {
  width: auto;
  flex-basis: 100%;
}
.report-import-selectors select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
.report-import-fields > summary {
  padding: 0 12px 10px;
  cursor: pointer;
}
.report-import-table-scroll {
  overflow: auto;
  margin: 0 12px 12px;
}
.report-import-table-scroll > table {
  table-layout: fixed;
  width: 100%;
  min-width: 650px;
}
.report-import-table-scroll th {
  font-size: .78em;
}
.report-import-table-scroll :is(th, td) {
  overflow-wrap: anywhere;
}
.report-import-table-scroll th:nth-child(1) {
  width: 26%;
}
.report-import-table-scroll th:nth-child(2) {
  width: 22%;
}
.report-import-table-scroll th:nth-child(3) {
  width: 42%;
}
.report-import-table-scroll th:nth-child(4) {
  width: 70px;
  overflow-wrap: normal;
}
.report-import-table-scroll td:last-child {
  text-align: center;
}
.report-import-table-scroll td > :is(input:not([type=checkbox]), select) {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
.report-import-table-scroll small {
  display: block;
  margin-top: 3px;
  font-size: .78em;
}
.device-report-import-form .report-field-required {
  background: #fff0ec;
}
.device-report-import-form .report-field-missing {
  background: #fff9e8;
}
.device-report-import-form .report-field-changed {
  background: #f0f8f1;
}
.device-report-import-form .report-import-table-scroll tbody tr:hover {
  color: inherit;
  --color: inherit;
  background: #edf2f5;
}
.report-import-unmapped {
  margin: 0 12px 12px;
  color: var(--hp-text-muted, #555);
  font-size: .85em;
}
.report-import-unmapped summary {
  cursor: pointer;
}
.report-import-unmapped dl {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 4px 12px;
}
.report-import-unmapped :is(dt, dd) {
  margin: 0;
  overflow-wrap: anywhere;
}
.device-report-import-form > .footer {
  flex: none;
  flex-wrap: wrap;
}
.report-import-footer-space {
  flex: 1;
}
@media (max-width: 640px) {
  .device-report-import-form > .device-report-import-main {
    padding: 10px;
  }
  .report-import-selectors {
    grid-template-columns: minmax(0, 1fr);
  }
  html.small .device-report-import-form .report-import-table-scroll > table {
    min-width: 650px !important;
    width: 650px !important;
    max-width: none !important;
  }
  .report-import-device-heading {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .report-import-status {
    max-width: 100%;
    text-align: left;
  }
  .device-report-import-form > .footer {
    padding: 8px;
    gap: 6px;
  }
  .report-import-footer-space {
    display: none;
  }
  .device-report-import-form > .footer > button {
    flex: 1 1 auto;
    min-width: 0;
    white-space: normal;
  }
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vY2xpZW50L3ZlbmRvci9vcGVuc2Fucy9PcGVuU2Fucy5jc3MiLCAiLi4vY2xpZW50L3N0eWxlcy9iYXNlLmNzcyIsICIuLi9jbGllbnQvc3R5bGVzL2Jhc2Vfc21hbGwuY3NzIiwgIi4uL2NsaWVudC9zdHlsZXMvY2VudGVyLmNzcyIsICIuLi9jbGllbnQvc3R5bGVzL2NlbnRlcl9zbWFsbC5jc3MiLCAiLi4vY2xpZW50L3N0eWxlcy9zdmdfYXhpc19kcmFnLmNzcyIsICIuLi9jbGllbnQvc3R5bGVzL3R1cm5fcHJldmlldy5jc3MiLCAiLi4vY2xpZW50L3N0eWxlcy9kaWFsb2ctd2luZG93LmNzcyIsICIuLi9jbGllbnQvc3R5bGVzL3VpX3NsaWRlci5jc3MiLCAiLi4vY2xpZW50L2xpYi9nZW5lcmF0ZV9wYXRoL3V2Ym90X3VpLmNzcyIsICIuLi9jbGllbnQvbGliL2dlbmVyYXRlX3BhdGgvcm93c2VsZWN0b3JfdWkuY3NzIiwgIi4uL2NsaWVudC9saWIvZ2VuZXJhdGVfcGF0aC9oZWFkbGFuZF9iYXNpY191aS5jc3MiLCAiLi4vY2xpZW50L2xpYi9tdWx0aV9zZWxlY3Rvci5jc3MiLCAiLi4vY2xpZW50L2xpYi9nZW5lcmF0ZV9wYXRoL2ZpZWxkX3BhdGhfdWkuY3NzIiwgIi4uL2NsaWVudC9zdHlsZXMvZGV2aWNlLXJlcG9ydC1pbXBvcnQuY3NzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiBvcGVuLXNhbnMtcmVndWxhciAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiBsb2NhbCgnT3BlbiBTYW5zIFJlZ3VsYXInKSwgbG9jYWwoJ09wZW5TYW5zLVJlZ3VsYXInKSxcbiAgICAgICB1cmwoJ09wZW5TYW5zX3YxN19MYXRpbl9SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBDaHJvbWUgMjYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrICovXG4gICAgICAgdXJsKCdPcGVuU2Fuc192MTdfTGF0aW5fUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi9cbn1cblxuLyogb3Blbi1zYW5zLWl0YWxpYyAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiBsb2NhbCgnT3BlbiBTYW5zIEl0YWxpYycpLCBsb2NhbCgnT3BlblNhbnMtSXRhbGljJyksXG4gICAgICAgdXJsKCdPcGVuU2Fuc192MTdfTGF0aW5fSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBDaHJvbWUgMjYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrICovXG4gICAgICAgdXJsKCdPcGVuU2Fuc192MTdfTGF0aW5fSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqL1xufVxuXG4vKiBvcGVuLXNhbnMtNzAwIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IGxvY2FsKCdPcGVuIFNhbnMgQm9sZCcpLCBsb2NhbCgnT3BlblNhbnMtQm9sZCcpLFxuICAgICAgIHVybCgnT3BlblNhbnNfdjE3X0xhdGluX0JvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIENocm9tZSAyNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSsgKi9cbiAgICAgICB1cmwoJ09wZW5TYW5zX3YxN19MYXRpbl9Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqL1xufVxuXG4vKiBvcGVuLXNhbnMtNzAwaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IGxvY2FsKCdPcGVuIFNhbnMgQm9sZCBJdGFsaWMnKSwgbG9jYWwoJ09wZW5TYW5zLUJvbGRJdGFsaWMnKSxcbiAgICAgICB1cmwoJ09wZW5TYW5zX3YxN19MYXRpbl9Cb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBDaHJvbWUgMjYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrICovXG4gICAgICAgdXJsKCdPcGVuU2Fuc192MTdfTGF0aW5fQm9sZEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi9cbn1cbiIsICI6cm9vdCB7XG4gICAgLS1ibHVlLTUwMDogIzBCQTVFQztcbiAgICAtLWdyZWVuLTUwOiAjZWVmOGViO1xuICAgIC0tZ3JlZW4tMTAwOiAjRTBGMkUwO1xuICAgIC0tZ3JlZW4tMzAwOiAjODZjMzZhO1xuICAgIC0tZ3JlZW4tNDAwOiAjNzZCMzVBO1xuICAgIC0tZ3JlZW4tNTAwOiAjNENBRjUwO1xuICAgIC0tZ3JheS0xMDA6ICNGOUZBRkI7XG4gICAgLS1ncmF5LTIwMDogI0VBRUNGMDtcbiAgICAtLWdyYXktMzAwOiAjRDBENUREO1xuICAgIC0tZ3JheS00MDA6ICM5OTk7XG4gICAgLS1ncmF5LTYwMDogIzU1NTU1NTtcbiAgICAtLWdyYXktNzAwOiAjNDQ0NDQ0O1xuICAgIC0tZ3JheS04MDA6ICMzMzMzMzM7XG4gICAgLS1vcmFuZ2UtNTAwOiAjZjY3NTFmO1xufVxuXG5odG1sIHsgaGVpZ2h0OiAxMDAlOyB9XG5cbmJvZHkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBmb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjMjAyMDIwO1xufVxuXG4jcGFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4qOmZvY3VzIHsgYm9yZGVyLWNvbG9yOiAjNzZiMzVhOyB9XG5jYW52YXM6Zm9jdXMge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG5hIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLCBncmF5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5hOmhvdmVyIHsgY29sb3I6IHZhcigtLWNvbG9yLCAjNzlhNjNhKTsgfVxuXG5idXR0b24ge1xuICAgIHBhZGRpbmc6IDAuMTRlbSAwLjcxZW0gMC4yMWVtIDAuNzFlbTtcbiAgICBiYWNrZ3JvdW5kOiAjNzZiMzVhO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3NmIzNWE7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7IGJvcmRlcjogMDsgfVxuYnV0dG9uID4gaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAzcHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIC8qIFR1cm4gaW1hZ2UgdG8gd2hpdGUsIGZpbHRlciBjYWxjdWxhdGVkIGhlcmU6IGh0dHBzOi8vY29kZXBlbi5pby9zb3N1a2UvcGVuL1Bqb3FxcCAqL1xuICAgIGZpbHRlcjogaW52ZXJ0KDEwMCUpIHNlcGlhKDEwMCUpIHNhdHVyYXRlKDIlKSBodWUtcm90YXRlKDI0M2RlZykgYnJpZ2h0bmVzcygxMDQlKSBjb250cmFzdCgxMDElKTtcbn1cbmJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aG92ZXIgeyBmaWx0ZXI6IGJyaWdodG5lc3MoODAlKSBjb250cmFzdCgxNTAlKTsgfVxuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIGNvbG9yOiBibGFjaztcbn1cbmJ1dHRvbi5zZWNvbmRhcnk6bm90KC5pbnNpc3QpID4gaW1nIHsgZmlsdGVyOiBub25lOyB9XG5idXR0b24uZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZDMzNDEwO1xuICAgIGJvcmRlci1jb2xvcjogI2QzMzQxMDtcbiAgICAtLWNvbG9yOiB3aGl0ZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3IpO1xufVxuYnV0dG9uLmluc2lzdCB7XG4gICAgYmFja2dyb3VuZDogI2QzMzQxMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2QzMzQxMCAhaW1wb3J0YW50O1xuICAgIC0tY29sb3I6IHdoaXRlO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvcikgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiAtLWNvbG9yIDAuMnMgZWFzZSwgYmFja2dyb3VuZCAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG59XG5idXR0b24uZGFuZ2VyLmluc2lzdCB7XG4gICAgYmFja2dyb3VuZDogIzk1MWEwYiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogIzk1MWEwYiAhaW1wb3J0YW50O1xufVxuYnV0dG9uLnNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMC43ZW07XG59XG5idXR0b24uc21hbGwgPiBpbWcge1xuICAgIHRvcDogMnB4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbn1cbmJ1dHRvbi5zbWFsbDpub3QoLmluc2lzdCkgPiBpbWcgeyBmaWx0ZXI6IG5vbmU7IH1cbmJ1dHRvbi5hY3RpdmUgeyBmaWx0ZXI6IGludmVydCgxMDAlKTsgfVxuYnV0dG9uLmRvd24geyBiYWNrZ3JvdW5kOiAjMDAwOyBjb2xvcjogI2ZmZiB9XG5idXR0b246ZGlzYWJsZWQge1xuICAgIGZpbHRlcjogc2F0dXJhdGUoMCUpIGNvbnRyYXN0KDUwJSk7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbmJ1dHRvbi5vbiB7XG4gICAgYm9yZGVyOiA0cHggc29saWQgIzc2YjM1YTtcbn1cbmJ1dHRvbi5vZmYge1xuICAgIG9wYWNpdHk6IDAuNjtcbn1cblxuYnV0dG9uLmJpZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDMycHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuYnV0dG9uLmJpZyA+IGltZyB7XG4gICAgdG9wOiBpbmhlcml0O1xufVxuYnV0dG9uLnNtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA0cHg7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuYnV0dG9uLnNtID4gaW1nIHtcbiAgICB0b3A6IGluaGVyaXQ7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xufVxuYnV0dG9uLmxpbmsge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXI6IDA7XG59XG5idXR0b24ubGluay5pbnNpc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLypiYWNrZ3JvdW5kLWNvbG9yOiAjZDMzNDEwODggIWltcG9ydGFudDsqL1xuICAgIGNvbG9yOiAjZmZmO1xufVxuYnV0dG9uLmxpbmsuaW5zaXN0ID4gaW1nIHtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEwMCUpIGJyaWdodG5lc3MoMjAwJSk7XG59XG5idXR0b24uZmxhdCB7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiAwO1xufVxuYnV0dG9uLmZsYXQgPiBpbWcge1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTVweDtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogMC43O1xufVxuXG4udG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogNHB4IGF1dG87XG59XG4udG9nZ2xlID4gYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gICAgY29sb3I6IGJsYWNrO1xufVxuLnRvZ2dsZSA+IGJ1dHRvbi5hY3RpdmUge1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjNzZiMzVhO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3NmIzNWE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGN1cnNvcjogaW5oZXJpdDtcbn1cbi50b2dnbGUgPiBidXR0b246ZGlzYWJsZWQgeyBjb2xvcjogI2NjY2NjYzsgfVxuLnRvZ2dsZSA+IGJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLnRvZ2dsZSA+IGJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICM1MjU0NjE7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBhbGlnbi1pdGVtczogZW5kO1xufVxuKiArIC5zZWN0aW9uIHsgbWFyZ2luLXRvcDogMTJweDsgfVxuXG4uYnVzeSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogd2FpdCAhaW1wb3J0YW50O1xufVxuYnV0dG9uLmJ1c3ksIGltZy5idXN5LCAuYnVzeSA+IGltZyB7XG4gICAgb3BhY2l0eTogMC4yICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG59XG5idXR0b24uYnVzeSAqIHsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5pbWcuYnVzeSwgLmJ1c3kgPiBpbWcgeyBhbmltYXRpb246IGJ1c3lfc3BpbiAwLjhzIGVhc2UtaW4tb3V0IGluZmluaXRlOyB9XG5idXR0b24uYnVzeTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCBibGFjaztcbiAgICBib3JkZXItY29sb3I6IGJsYWNrIHRyYW5zcGFyZW50IGJsYWNrIHRyYW5zcGFyZW50O1xuICAgIGFuaW1hdGlvbjogYnVzeV9zcGluIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIGJ1c3lfc3BpbiB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5yZWNvcmRlZC1wYXRoLXNhdmluZy1kaWFsb2cge1xuICAgIG1pbi13aWR0aDogbWluKDM2MHB4LCBjYWxjKDEwMHZ3IC0gMzJweCkpO1xufVxuLnJlY29yZGVkLXBhdGgtc2F2aW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDE2cHg7XG4gICAgcGFkZGluZzogMzJweDtcbiAgICBmb250LXNpemU6IDEuMTVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnJlY29yZGVkLXBhdGgtc2F2aW5nLWhvdXJnbGFzcyB7XG4gICAgd2lkdGg6IDQycHg7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIGJvcmRlcjogNXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvciB0cmFuc3BhcmVudCBjdXJyZW50Q29sb3IgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGFuaW1hdGlvbjogYnVzeV9zcGluIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbmhyIHtcbiAgICBtYXJnaW46IDRweCBhdXRvO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGYwO1xufVxuXG5pbnB1dCwgdGV4dGFyZWEge1xuICAgIHBhZGRpbmc6IDRweCA1cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBib3JkZXItd2lkdGg6IDAuNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDAuOTRlbTtcbn1cbmlucHV0W3R5cGU9dGV4dF0sIGlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgICB3aWR0aDogNmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cbmxhYmVsOmhhcyhpbnB1dDppcyhbdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSk6bm90KDpkaXNhYmxlZCkpIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5pbnB1dDppcyhbdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSkgeyBtYXJnaW4tdG9wOiAwOyB9XG5pbnB1dDppcyhbdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSk6bm90KDpkaXNhYmxlZCkgeyBjdXJzb3I6IHBvaW50ZXI7IH1cbmlucHV0W3R5cGU9ZmlsZV0geyBib3JkZXI6IG5vbmU7IH1cbmlucHV0OmRpc2FibGVkIHsgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxuXG46bm90KGZvcm0pOmludmFsaWQgeyBib3gtc2hhZG93OiBub25lOyB9XG46bm90KGZvcm0pOi1tb3otc3VibWl0LWludmFsaWQgeyBib3gtc2hhZG93OiBub25lOyB9XG46bm90KGZvcm0pOi1tb3otdWktaW52YWxpZCB7IGJveC1zaGFkb3c6IG5vbmU7IH1cblxubGFiZWw6aGFzKGlucHV0OnJlcXVpcmVkKSA+IHNwYW46Zmlyc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnIConO1xuICAgIGNvbG9yOiByZWQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5mb3JtLnN1Ym1pdHRlZCBpbnB1dDppbnZhbGlkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjllNGRmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDMzNDEwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkICNkMzM0MTAgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2QzMzQxMCAhaW1wb3J0YW50O1xufVxuXG5zZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBwYWRkaW5nOiAzcHggNnB4IDNweCA2cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBib3JkZXItd2lkdGg6IDAuNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDAuOTRlbTtcbn1cbnNlbGVjdFttdWx0aXBsZV06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzlhNjNhO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbnNlbGVjdDpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmc6IDNweCAyNnB4IDNweCA2cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBib3JkZXItd2lkdGg6IDAuNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCWUFBQUFMQ0FZQUFBQjcvSDErQUFBQStVbEVRVlFva2RYUXNVZUZZUlRIOFhPalNNTWxFVWxMV2k2UnFLR2hxYUdwcFgvbzkzdk9lVjdQNDMwOVEwTzhSRk5ETHcxTkRXM3BuNGlHaUVSRmJ0VDROajFjU2JyZHUvVGxMR2Y0T0k3SXZ5ekd1QWpnaHVSMWpIRWg3OXUybmZneUhSR1JzaXhuQUp3Q2VQTGVyLzJJaHhDV1NONlN2UExlejMrRGQwUkVVa3JUQUU0QXZEam5ObjUxdWFvdWs3d0RjRmxWMWR3QVBvZ2VrM3cxczYxaHZpS3F1Z0xnSHNCRlNtazI3NXVtbVNKNVJMSnZadHREb2JtaUtIb2tId0NjaHhDNmRWMVBrandFOEthcU8zOUNjODY1VlpLUEFNNUlIcEI4VjlYZGtkQ2M5MzZkNURPQUQxWGRHd3VhTTdOTmt2dGpSVWZwRXlwQ2hGbG91bHd3QUFBQUFFbEZUa1N1UW1DQ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDAuOTRlbTtcbn1cbnNlbGVjdDpub3QoW211bHRpcGxlXSk6bm90KDpkaXNhYmxlZCk6aG92ZXIsXG5zZWxlY3Q6bm90KFttdWx0aXBsZV0pOm5vdCg6ZGlzYWJsZWQpOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAjNzlhNjNhO1xuICAgIGJvcmRlci1jb2xvcjogIzc5YTYzYTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJZQUFBQUxDQVlBQUFCNy9IMStBQUFCT1VsRVFWUW9VMk5rb0JGZ3BKRzVER0NEbnp4NUlzUEl5TGdYaUYvLytmTW5URTVPN2huVVFpWTBpLzhEK2Y5ZnZIakIvZmZ2MzNsQTlVNy8vdjF6bFpHUnVZRHVRTGlMbnoxN0pnZVUzQWZFejVpWm1VUEZ4Y1Zmb2hrT052VHg0OGVjUVBrNS8vLy85MkJpWXZLUWxKUThqYzNYS0VIeDh1VkxaYUJMOWdJMTNRYTZKbEpLU3VvTlZCTklIZGhRb0dIVGdIS0JRRFZlMHRMU3gzQUZKVVlZdjNyMVN2WDM3OS83Z0pxdkFDMkpscFdWZlFmU2ZQWHFWVFpCUWNGcFFHWVlFUHNBTFQyRUwzNndSdDd6NTgrMWdDN2FBOFNuT1RrNTQ0QUdmZ09LVFFRYUZBc1VDd1M2ZEEraFNNZVpLb0FScEF1TW1OMUFBNDRDWGY4VXlFNEIwa0ZBbCs0Z1pDaElIbTl5QTBhb0VkQ0Z1NERxdUlFNEhPalNUY1FZU3RCZ2tBSmdFSmdCRFpjRnVuUXRzWVlTWlRBcGhpR3JCUUJvQ1h3TW9vYVpyd0FBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cbnNlbGVjdDpkaXNhYmxlZCB7IGJhY2tncm91bmQtY29sb3I6ICNlZWU7IH1cbmZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBiYWNrZ3JvdW5kOiAjNzZiMzVhO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJveC1zaGFkb3c6ICMxNTE3MjUyNiAwcHggMTVweCAyNXB4IDBweCxcbiAgICAgICAgICAgICAgICAjMTUxNzI1MjAgMHB4IDJweCA4cHggMHB4O1xufVxuZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjcxZW07XG4gICAgcGFkZGluZzogMTBweCAxMnB4O1xuICAgIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cbmZpZWxkc2V0OmRpc2FibGVkID4gKiB7IG9wYWNpdHk6IDAuMjsgfVxuZmllbGRzZXQgPiBsZWdlbmQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJhY2tncm91bmQ6ICNmOGY4Zjg7XG59XG5maWVsZHNldC5mbGV4IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuZm9ybSBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDAuNDNlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMmVtO1xufVxuZm9ybSBsYWJlbCA+IHNwYW46Zmlyc3QtY2hpbGQgeyB3aWR0aDogMTgwcHg7IH1cbmZvcm0gbGFiZWwgPiBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKSxcbiAgICBmb3JtIGxhYmVsID4gc2VsZWN0LFxuICAgIGZvcm0gbGFiZWwgPiBkaXYgeyBmbGV4OiAxOyB9XG4uc2VjdGlvbi1uYW1lLWxhbmd1YWdlLWZpZWxkcyB7IGRpc3BsYXk6IGNvbnRlbnRzOyB9XG5mb3JtIGJ1dHRvbiB7XG4gICAgcGFkZGluZzogM3B4IDEycHggNHB4IDEycHg7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuZm9ybSA+IC50aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweCA2cHggMCAwO1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMC43MWVtO1xufVxuZm9ybSA+IC50aXRsZSA+IHNwYW4ge1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIGZsZXg6IDE7XG59XG5mb3JtID4gLnRpdGxlID4gc3BhbiArIGJ1dHRvbiB7IG1hcmdpbi1sZWZ0OiA1MHB4OyB9XG5mb3JtID4gbWFpbixcbmZvcm0gPiAubWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC43MWVtO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgcGFkZGluZzogMTZweDtcbn1cbmZvcm0gPiAubWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDE0cHggODBweDtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgIGdhcDogMC43MWVtO1xufVxuZm9ybSA+IC5tZXRhID4gbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHsgd2lkdGg6IDEyMHB4OyB9XG5mb3JtID4gZm9vdGVyLFxuZm9ybSA+IC5mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgNnB4IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xuICAgIGdhcDogMC43MWVtO1xufVxuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBlbXB0eS1jZWxsczogc2hvdztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWRlZGYwO1xufVxuLnRhYmxlLXNjcm9sbCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yLWlubGluZTogY29udGFpbjtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbnRhYmxlIHRoIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgICBjb2xvcjogIzUyNTQ2MTtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbn1cbnRhYmxlLm5vd3JhcC1oZWFkIHRoIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxudGFibGUgdGQsIHRhYmxlIHRoIHtcbiAgICBoZWlnaHQ6IDEuNWVtO1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxudGFibGUubm9wYWRkaW5nIHRkIHtcbiAgICBwYWRkaW5nOiAwO1xufVxudGFibGUubm8tc2lkZS1wYWRkaW5nIHRkIHtcbiAgICBwYWRkaW5nOiA4cHggMDtcbn1cbnRyIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbnRyLml0ZW0uZGVhbGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi01MCk7XG59XG50YWJsZSB0Ym9keS53aG9sZSB0cjpub3QoOmxhc3QtY2hpbGQpIHsgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxudGFibGUgdGJvZHkud2hvbGU6aG92ZXIgdHIsIHRhYmxlIHRib2R5IHRyOm5vdCguZHJhZ2dpbmcpOm5vdCgubm9ob3Zlcik6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM3NmIzNWE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIC0tY29sb3I6IHdoaXRlO1xufVxudGFibGUgdGJvZHkud2hvbGU6aG92ZXIgYnV0dG9uLmNvbXBhbnktc2VsZWN0b3ItZW50aXR5LFxudGFibGUgdGJvZHkgdHI6bm90KC5kcmFnZ2luZyk6bm90KC5ub2hvdmVyKTpob3ZlciBidXR0b24uY29tcGFueS1zZWxlY3Rvci1lbnRpdHkge1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cbnRhYmxlIHRib2R5IHRyLmhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZDogI2Y2NzUxZjtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgLS1jb2xvcjogd2hpdGU7IC8qIE92ZXJyaWRlIGNvbG9yIG9mIGNvbXBhdGlibGUgY2hpbGRyZW4gZWxlbWVudHMgKi9cbn1cbnRhYmxlIHRyLml0ZW0uZWRpdGFibGU6bm90KC5kaXNhYmxlZCkgdGQ6bGFzdC1jaGlsZCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9hc3NldHMvaW1nL2VkaXQud2VicCcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE2cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG59XG50YWJsZSB0ci5sb2NrZWQgdGQ6bGFzdC1jaGlsZCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9hc3NldHMvaW1nL2xvY2tlZC53ZWJwJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTZweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgcGFkZGluZy1yaWdodDogMjRweDtcbn1cbnRhYmxlIHRyLmRlZmF1bHQgeyBiYWNrZ3JvdW5kOiAjZWVlOyB9XG50YWJsZSAuY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG50YWJsZSAucmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodDsgd2lkdGg6IDFweDsgfVxudGFibGUgLmNoZWNrIHsgd2lkdGg6IDJlbTsgfVxudGFibGUgLmljb24ge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbn1cbnRhYmxlIC5ncmFiIHtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLmdyYWIge1xuICAgIGN1cnNvcjogZ3JhYjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxudGFibGUgLm1pc3Npbmcge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogdmFyKC0tY29sb3IsIGdyYXkpO1xufVxudGFibGUgY29sLnNtYWxsIHsgd2lkdGg6IDE4MHB4OyB9XG50YWJsZSBjb2wubWVkaXVtIHsgd2lkdGg6IDIyMHB4OyB9XG50YWJsZSBjb2wuYmlnIHsgd2lkdGg6IDI4MHB4OyB9XG50YWJsZSBjb2wubGFyZ2UgeyB3aWR0aDogMzgwcHg7IH1cbnRhYmxlIHRkID4gYnV0dG9uICsgYnV0dG9uIHsgbWFyZ2luLWxlZnQ6IDEuMmVtOyB9XG5cbnRhYmxlIC5hcnJvd3Mge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDFweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxudGFibGUgLmFycm93cyAudXAge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCBsaWdodGdyYXk7XG59XG50YWJsZSAuYXJyb3dzIC5kb3duIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkIGxpZ2h0Z3JheTtcbn1cbnRhYmxlIC5hcnJvd3MgLnVwLmFjdGl2ZSB7IGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjNTI1NDYxOyB9XG50YWJsZSAuYXJyb3dzIC5kb3duLmFjdGl2ZSB7IGJvcmRlci10b3A6IDVweCBzb2xpZCAjNTI1NDYxOyB9XG5cbi5hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICBnYXA6IDAuNzFlbTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbiNsb2cge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRvcDogY2FsYygyLjhlbSArIDEycHgpO1xuICAgIHotaW5kZXg6IDk5OTk5O1xuICAgIG1pbi13aWR0aDogMzIwcHg7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuI2xvZyA+IGRpdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiAjMzczNzM3O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAjMDAwMDAwMzM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgI2xvZyA+IGRpdjpob3ZlciB7IGZpbHRlcjogb3BhY2l0eSg0MCUpOyB9XG59XG4jbG9nID4gZGl2LmVycm9yIHsgYmFja2dyb3VuZDogI2RiMGEwYTsgfVxuI2xvZyA+IGRpdi5zdWNjZXNzIHsgYmFja2dyb3VuZDogIzJkODI2MTsgfVxuLmxvZ19jbG9zZSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmxvZ19jbG9zZTpob3ZlciB7IGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuLmxvZ19zcGluIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luOiAtMXB4IDAgMCAtMXB4O1xufVxuLmxvZ19zcGluOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBtYXJnaW46IDFweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiA0cHggc29saWQgd2hpdGU7XG4gICAgYm9yZGVyLWNvbG9yOiB3aGl0ZSB0cmFuc3BhcmVudCB3aGl0ZSB0cmFuc3BhcmVudDtcbiAgICBhbmltYXRpb246IGxvZ19zcGluIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIGxvZ19zcGluIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLmRpYWxvZyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiA0NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmZjYztcbn1cbi5kaWFsb2cgfiAuZGlhbG9nIHsgcGFkZGluZy10b3A6IDY2cHg7IH1cbi5kaWFsb2cuc2NyZWVuIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIC8qYmFja2dyb3VuZDogIzMyMzYzMDsqL1xuICAgIGJhY2tncm91bmQ6ICM3NmIzNWE7XG4gICAgLypiYWNrZ3JvdW5kOiAjYWYwZTBlOyovXG59XG4uZGlhbG9nID4gZm9ybSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgbWF4LXdpZHRoOiA4NSU7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDEwMHB4KTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLmRpYWxvZy5sZWZ0ID4gZm9ybSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDc2cHg7XG59XG4uZGlhbG9nLm5vLWZhZGUtYmcge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmYwMDtcbn1cbi5kaWFsb2cubm9uLW1vZGFsIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5kaWFsb2cubm9uLW1vZGFsID4gZm9ybSB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi53YXJuaW5nIHsgLS1jb2xvcjogcmVkOyBjb2xvcjogdmFyKC0tY29sb3IsIHJlZCk7IH1cbi53YXJuaW5nOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcdTI2QTBcXEZFMEVcIjtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cblxuLnN1YiB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvciwgIzg4OCk7XG59XG5cbi5jaGlsZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwLjhlbTtcbiAgICBoZWlnaHQ6IDAuOGVtO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3IsICNiYmIpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvciwgI2JiYik7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4cHggKyAodmFyKC0tZGVwdGgsIDEpIC0gMSkgKiAxZW0pO1xufVxuXG4uZmxpcC14IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG59XG5cbi5oaWRlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4uZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cbiNtb2Rlcy5kaXNhYmxlZCxcbiNoZWFkZXIuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG9wYWNpdHk6IDAuMTtcbn1cbi5icmVhayB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG59XG4ubm93cmFwIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uaGlkZGVuIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uanVzdGlmeS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4ubWwtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG50ci5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ubGluZS10aHJvdWdoIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLmZpZWxkLWNvbXB1dGVkLWNvb3JkIHtcbiAgICBmb250LXNpemU6IDAuOTRlbTtcbiAgICBwYWRkaW5nOiAwIDZweDtcbiAgICB3aWR0aDogMTBlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC43ZW07XG4gICAgZmxleDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1ncmVlbiB7XG4gICAgY29sb3I6ICM3NmIzNWE7XG59XG5cbi5ib3JkZXItZ3JlZW4ge1xuICAgIGJvcmRlci1jb2xvcjogIzc2YjM1YTtcbn1cblxuaW5wdXQuYm9yZGVyLWdyZWVuOmZvY3VzIHtcbiAgICBvdXRsaW5lLWNvbG9yOiAjNzZiMzVhO1xufVxuXG4udGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbnRoLmdhcCB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmJsaW5rIHtcbiAgICAgYW5pbWF0aW9uOiBibGlua2luZyAxLjI1cyBsaW5lYXIgaW5maW5pdGU7XG59XG4uYmxpbms6aG92ZXIge1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbn1cbkBrZXlmcmFtZXMgYmxpbmtpbmcge1xuICAgIDgwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIDkwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuI3N2Z21hcF9yb290LmZ1bGwtc2NyZWVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbiNzdmdtYXBfcm9vdC5mdWxsLXNjcmVlbiBwb2x5Z29uLmFjdGl2ZSxcbiNzdmdtYXBfcm9vdC5mdWxsLXNjcmVlbiB0ZXh0LmFjdGl2ZSxcbiNzdmdtYXBfcm9vdC5mdWxsLXNjcmVlbiAuZy1yb3dzLFxuI3N2Z21hcF9yb290LmZ1bGwtc2NyZWVuIC5nLXBsYW50cyxcbiNzdmdtYXBfcm9vdC5mdWxsLXNjcmVlbiAuZy1hY3RpdmUtem9uZSxcbiNzdmdtYXBfcm9vdC5mdWxsLXNjcmVlbiAuZy1wYXRocyB7XG4gICAgb3BhY2l0eTogMC40IDtcbn1cblxuI3N2Z21hcF9yb290Lm9ubHktYXJyb3ctZHJhZyAqIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiNzdmdtYXBfcm9vdC5vbmx5LWFycm93LWRyYWcgc3ZnIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbiNzdmdtYXBfcm9vdC5vbmx5LWFycm93LWRyYWcgLm1vdmUtYXJyb3cge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uY292ZXJhZ2UtdG9nZ2xlLFxuLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDZweDtcbn1cblxuLmNvdmVyYWdlLWRpYWxvZyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogOHB4O1xuICAgIHotaW5kZXg6IDMwO1xuICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy0xMDAsICNmZmYpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlciwgI2NjYyk7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAuMTgpO1xufVxuXG4uY292ZXJhZ2UtZGlhbG9nLXJvdyB7XG4gICAgZ2FwOiA0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4uY292ZXJhZ2UtZGlhbG9nLWNoZWNrYm94IHtcbiAgICBnYXA6IDZweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4jaGVhZGVyX2xvZ28ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiNoZWFkZXJfbG9nby5kZXY6OmFmdGVyLFxuI2hlYWRlcl9sb2dvLmRldjI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDZweDtcbiAgICBsZWZ0OiA2cHg7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vYXNzZXRzL2ltZy9kZXYud2VicCcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuI2hlYWRlcl9sb2dvLmRldjI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2Fzc2V0cy9pbWcvZGV2Mi53ZWJwJyk7XG59XG5cbiNtYWluLXN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGN1cnNvcjogZ3JhYjtcbiAgICBvdXRsaW5lOiAxcHggc29saWQ7XG59XG4jbWFpbi1zdmcuYWRkLXBvaW50LW1vZGUge1xuICAgIGN1cnNvcjogY3Jvc3NoYWlyICFpbXBvcnRhbnQ7XG59XG4jbWFpbi1zdmcuYWRkLXBvaW50LW1vZGUgKiB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4jbWFpbi1zdmcubm8tZmlsbC16b25lcyAuem9uZSB7XG4gICAgZmlsbC1vcGFjaXR5OiAwO1xufVxuXG4uZy1vcmlnaW4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5wYXRoLW9yaWdpbi1wb2ludCB7XG4gICAgZmlsbDogI2UzMjYzNjtcbiAgICBzdHJva2U6IG5vbmU7XG59XG4ucGF0aC1vcmlnaW4tbGluZSB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICNlMzI2MzY7XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMHB4IDVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkpO1xufVxuLmFiLWxpbmUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5hYi1saW5lID4gcmVjdCxcbi5vcmlnaW4tcG9pbnQge1xuICAgIHN0cm9rZTogbm9uZTtcbiAgICBmaWxsOiAjYWFhO1xufVxuLmFiLWxpbmUgPiBwb2x5bGluZSxcbi5vcmlnaW4tbGluZSB7XG4gICAgc3Ryb2tlOiAjYWFhO1xuICAgIGZpbGw6IG5vbmU7XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMHB4IDVweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkpO1xufVxuLmFiLWxpbmUuYWN0aXZlID4gcmVjdCxcbi5vcmlnaW4tcG9pbnQuYWN0aXZlIHtcbiAgICBmaWxsOiBtYWdlbnRhO1xufVxuLmFiLWxpbmUuYWN0aXZlID4gcG9seWxpbmUsXG4ub3JpZ2luLWxpbmUuYWN0aXZlIHtcbiAgICBzdHJva2U6IG1hZ2VudGE7XG59XG4uYWItbGluZSA+IHRleHQge1xuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZmlsbDogI2FhYTtcbiAgICB0ZXh0LWFuY2hvcjogbWlkZGxlO1xufVxuLmFiLWxpbmUuYWN0aXZlID4gdGV4dCB7XG4gICAgZmlsbDogbWFnZW50YTtcbn1cblxuI3JvYm90LW1hcmtlcixcbiNyb2JvdC1tYXJrZXItd2FybmluZyB7XG4gICAgc3Ryb2tlOiAjZmZmO1xuICAgIHN0cm9rZS13aWR0aDogMC40O1xuICAgIGZpbGw6ICMyZDgyNjE7XG4gICAgb3BhY2l0eTogMC44O1xufVxuI3JvYm90LW1hcmtlci13YXJuaW5nIHtcbiAgICBmaWxsOiAjZGIwYTBhO1xufVxuLnpvbmUge1xuICAgIGZpbGwtb3BhY2l0eTogMC40O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBzdHJva2U6ICMwMDc3ZmY7XG4gICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG59XG4uem9uZS5hY3RpdmUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDQgNDtcbn1cbi56b25lLXdvcmsge1xuICAgIGZpbGw6ICMwMDk2ZmY7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMTAgMTA7XG59XG4uem9uZS1yZWNvZ25pdGlvbiB7XG4gICAgZmlsbDogIzY4N2Q4MjtcbiAgICBzdHJva2U6ICM2ODdkODI7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMyA1O1xufVxuLnpvbmUtYXZvaWQsXG4uem9uZS1hdm9pZF9hcm91bmQsXG4uem9uZS1hdm9pZF9yZXZlcnNlIHtcbiAgICBmaWxsOiAjRkZFQjNCO1xufVxuLnpvbmUtc2FmZXR5IHtcbiAgICBmaWxsOiB2YXIoLS1ncmVlbi01MDApO1xuICAgIHN0cm9rZTogcmdiKDIxNCwgNDYsIDExKTtcbiAgICBzdHJva2Utd2lkdGg6IDJweDtcbn1cbi56b25lLXByZXZpZXcge1xuICAgIGZpbGw6ICMwMDY2ZmY4MDtcbn1cbi56b25lLXByZXZpZXcteWVsbG93IHtcbiAgICBmaWxsOiBncmVlbnllbGxvdztcbiAgICBzdHJva2U6IGdyZWVuO1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cbi56b25lLXVuZGVmaW5lZCB7XG4gICAgZmlsbDogI0ZGQzEwNztcbn1cbi5wYXRoLWxpbmUge1xuICAgIHN0cm9rZTogcmVkO1xuICAgIGZpbGw6IG5vbmU7XG59XG4ucGF0aC1wb2ludCB7XG4gICAgc3Ryb2tlOiByZWQ7XG4gICAgZmlsbDogI2ZmNzU3NTtcbiAgICBzdHJva2Utd2lkdGg6IDFweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZy1wYXRoLmFjdGl2ZSAucGF0aC1wb2ludCB7XG4gICAgZmlsbDogI2ZmZjtcbn1cblxuLnBhdGgtbGluZS1jaHVuayB7XG4gICAgc3Ryb2tlOiBncmV5O1xuICAgIGZpbGw6IG5vbmU7XG59XG4ucGF0aC1hbmltYXRpb24tbGluZSB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6IGJsdWU7XG4gICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG59XG4ucGF0aC1hbmltYXRpb24tdHJhY3RvciB7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiA4cHg7XG4gICAgei1pbmRleDogMzA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDQwcHgpO1xuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlciwgI2JiYik7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLTEwMCwgI2ZmZik7XG4gICAgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJnLTEwMCwgI2ZmZikgOTIlLCB0cmFuc3BhcmVudCk7XG4gICAgYm94LXNoYWRvdzogMCAzcHggMTJweCByZ2JhKDAsIDAsIDAsIC4yKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmZpZWxkLXBhdGgtYW5pbWF0aW9uLXRvb2xiYXItaG9zdCB7XG4gICAgZGlzcGxheTogY29udGVudHM7XG59XG4uZmllbGQtcGF0aC1hbmltYXRpb24tc2xpZGVycyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1heC1jb250ZW50IGF1dG8gbWF4LWNvbnRlbnQ7XG4gICAgZ2FwOiA2cHg7XG59XG4uZmllbGQtcGF0aC1hbmltYXRpb24tdG9vbGJhciBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uZmllbGQtcGF0aC1hbmltYXRpb24tdG9vbGJhciAuZmllbGQtcGF0aC1hbmltYXRpb24tc2xpZGVycyA+IGxhYmVsIHtcbiAgICBkaXNwbGF5OiBjb250ZW50cztcbn1cbi5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIGlucHV0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiA0LjVlbTtcbiAgICBmbGV4OiAwIDAgNC41ZW07XG59XG4uZmllbGQtcGF0aC1hbmltYXRpb24tdG9vbGJhciBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuLmZpZWxkLXBhdGgtYW5pbWF0aW9uLXNjb3BlLWxhYmVsIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4uZmllbGQtcGF0aC1hbmltYXRpb24tYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG59XG4uZmllbGQtcGF0aC1hbmltYXRpb24tdG9vbGJhciBidXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiA1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cbi5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIGJ1dHRvbiA+IHNwYW4ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cbi5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIGJ1dHRvbiA+IGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgZmxleDogMCAwIDE2cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgdHJhbnNmb3JtOiBub25lO1xufVxuI21haW46aGFzKCNzdmdtYXBfcm9vdC5mdWxsLXNjcmVlbikgLmZpZWxkLXBhdGgtYW5pbWF0aW9uLXRvb2xiYXItaG9zdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbmh0bWwubWVkaXVtIC5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAyNHB4KTtcbn1cbmh0bWwuc21hbGwgLmZpZWxkLXBhdGgtYW5pbWF0aW9uLXRvb2xiYXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDE2cHgpO1xuICAgIGdhcDogNHB4O1xufVxuaHRtbC5zbWFsbCAuZmllbGQtcGF0aC1hbmltYXRpb24tc2xpZGVycyB7XG4gICAgY29sdW1uLWdhcDogNHB4O1xufVxuaHRtbC5zbWFsbCAuZmllbGQtcGF0aC1hbmltYXRpb24tYWN0aW9ucyB7XG4gICAgZ2FwOiA0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NjBweCkge1xuICAgIC5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gOHB4KTtcbiAgICAgICAgZ2FwOiA0cHg7XG4gICAgICAgIHBhZGRpbmc6IDZweCA0cHg7XG4gICAgfVxuICAgIC5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIGxhYmVsIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogM3B4O1xuICAgICAgICBmb250LXNpemU6IC45ZW07XG4gICAgfVxuICAgIC5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDRlbTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAwIDEgNGVtO1xuICAgIH1cbiAgICAuZmllbGQtcGF0aC1hbmltYXRpb24tdG9vbGJhciBidXR0b24ge1xuICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgbWluLXdpZHRoOiAzOHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDM4cHg7XG4gICAgICAgIGZsZXg6IDAgMCAzOHB4O1xuICAgICAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgICB9XG4gICAgLmZpZWxkLXBhdGgtYW5pbWF0aW9uLXRvb2xiYXIgYnV0dG9uID4gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDM4MHB4KSB7XG4gICAgLmZpZWxkLXBhdGgtYW5pbWF0aW9uLXRvb2xiYXIge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIC5maWVsZC1wYXRoLWFuaW1hdGlvbi1zbGlkZXJzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5maWVsZC1wYXRoLWFuaW1hdGlvbi1hY3Rpb25zIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxufVxuLnBhdGgtcG9pbnQtY2h1bmsge1xuICAgIGZpbGw6IGdyZXk7XG59XG4uZy1wYXRoLmFjdGl2ZSAucGF0aC1wb2ludC1jaHVuay5hY3RpdmUge1xuICAgIGZpbGw6IHZhcigtLWdyZWVuLTUwMCk7XG59XG5cbiNzdmdtYXBfcm9vdC5yYXdzdmcucGFubmluZyAuZy1wYXRoIC5pbmFjdGl2ZS1wb2ludHMsXG4jc3ZnbWFwX3Jvb3QucmF3c3ZnLnBhbm5pbmcgLmctYWN0aXZlLXpvbmUgLnpvbmUtcG9pbnRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZy1wYXRoLmFjdGl2ZSAucGF0aC1saW5lLWNodW5rIHtcbiAgICBzdHJva2U6IGJsdWU7XG59XG4uZy1wYXRoLmFjdGl2ZSAucGF0aC1wb2ludC1jaHVuayB7XG4gICAgZmlsbDogI2I4ZDRmZjtcbiAgICBzdHJva2U6IGJsdWU7XG59XG4uZy1maWVsZC5oYXMtYWN0aXZlLXBhdGggLmctcGF0aDpub3QoLmFjdGl2ZSkge1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cbi5nLWZpZWxkOm5vdCguaGFzLWFjdGl2ZS1wYXRoKSAucGF0aC1saW5lLWNodW5rIHtcbiAgICBzdHJva2U6IGJsdWU7XG59XG4uZy1maWVsZDpub3QoLmhhcy1hY3RpdmUtcGF0aCkgLnBhdGgtcG9pbnQtY2h1bmsge1xuICAgIGZpbGw6IGJsdWU7XG59XG5cbi5wYXRoLWRpcmVjdGlvbi1jaHVuayB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6IGdyYXk7XG59XG4uZy1wYXRoLmFjdGl2ZSAucGF0aC1kaXJlY3Rpb24tY2h1bmsge1xuICAgIHN0cm9rZTogYmx1ZTtcbn1cbi5nLWZpZWxkOm5vdCguaGFzLWFjdGl2ZS1wYXRoKSAucGF0aC1kaXJlY3Rpb24tY2h1bmsge1xuICAgIHN0cm9rZTogYmx1ZTtcbn1cblxuLyogUGF0aCB0eXBlIGhlYWRsYW5kICovXG4uZy1maWVsZDpub3QoLmhhcy1hY3RpdmUtcGF0aCkgLmctcGF0aC5wYXRoLWhlYWRsYW5kIC5wYXRoLWxpbmUtY2h1bmssXG4uZy1maWVsZDpub3QoLmhhcy1hY3RpdmUtcGF0aCkgLmctcGF0aC5wYXRoLWhlYWRsYW5kIC5wYXRoLWRpcmVjdGlvbi1jaHVuayB7XG4gICAgc3Ryb2tlOiBvcmFuZ2U7XG59XG4uZy1maWVsZDpub3QoLmhhcy1hY3RpdmUtcGF0aCkgLmctcGF0aC5wYXRoLWhlYWRsYW5kIC5wYXRoLXBvaW50LWNodW5rIHtcbiAgICBmaWxsOiBvcmFuZ2U7XG59XG5cbi5nLXBhdGgucGF0aC1oZWFkbGFuZC5hY3RpdmUgLnBhdGgtbGluZS1jaHVuayxcbi5nLXBhdGgucGF0aC1oZWFkbGFuZC5hY3RpdmUgLnBhdGgtZGlyZWN0aW9uLWNodW5rIHtcbiAgICBzdHJva2U6IG9yYW5nZTtcbn1cbi5nLXBhdGgucGF0aC1oZWFkbGFuZC5hY3RpdmUgLnBhdGgtcG9pbnQtY2h1bmsge1xuICAgIGZpbGw6ICNmZmQ2YTM7XG4gICAgc3Ryb2tlOiBvcmFuZ2U7XG59XG4uZy1wYXRoLnBhdGgtaGVhZGxhbmQuYWN0aXZlIC5wYXRoLXBvaW50LWNodW5rLmFjdGl2ZSB7XG4gICAgZmlsbDogdmFyKC0tZ3JlZW4tNTAwKTtcbn1cblxuLyogUGF0aCB0eXBlIHJvd3MgKi9cbi5nLWZpZWxkOm5vdCguaGFzLWFjdGl2ZS1wYXRoKSAuZy1wYXRoLnBhdGgtcm93cyAucGF0aC1saW5lLWNodW5rLFxuLmctZmllbGQ6bm90KC5oYXMtYWN0aXZlLXBhdGgpIC5nLXBhdGgucGF0aC1yb3dzIC5wYXRoLWRpcmVjdGlvbi1jaHVuayB7XG4gICAgc3Ryb2tlOiBibHVlO1xufVxuLmctZmllbGQ6bm90KC5oYXMtYWN0aXZlLXBhdGgpIC5nLXBhdGgucGF0aC1yb3dzIC5wYXRoLXBvaW50LWNodW5rIHtcbiAgICBmaWxsOiBibHVlO1xufVxuXG4uZy1wYXRoLnBhdGgtcm93cy5hY3RpdmUgLnBhdGgtbGluZS1jaHVuayxcbi5nLXBhdGgucGF0aC1yb3dzLmFjdGl2ZSAucGF0aC1kaXJlY3Rpb24tY2h1bmsge1xuICAgIHN0cm9rZTogYmx1ZTtcbn1cbi5nLXBhdGgucGF0aC1yb3dzLmFjdGl2ZSAucGF0aC1wb2ludC1jaHVuayB7XG4gICAgZmlsbDogI2I4ZDRmZjtcbiAgICBzdHJva2U6IGJsdWU7XG59XG4uZy1wYXRoLnBhdGgtcm93cy5hY3RpdmUgLnBhdGgtcG9pbnQtY2h1bmsuYWN0aXZlIHtcbiAgICBmaWxsOiB2YXIoLS1ncmVlbi01MDApO1xufVxuXG4vKiBQYXRoIHR5cGUgY29ubmVjdGlvbiAqL1xuLmctZmllbGQ6bm90KC5oYXMtYWN0aXZlLXBhdGgpIC5nLXBhdGgucGF0aC1jb25uZWN0aW9uIC5wYXRoLWxpbmUtY2h1bmssXG4uZy1maWVsZDpub3QoLmhhcy1hY3RpdmUtcGF0aCkgLmctcGF0aC5wYXRoLWNvbm5lY3Rpb24gLnBhdGgtZGlyZWN0aW9uLWNodW5rIHtcbiAgICBzdHJva2U6ICM3RjAwRkY7XG59XG4uZy1maWVsZDpub3QoLmhhcy1hY3RpdmUtcGF0aCkgLmctcGF0aC5wYXRoLWNvbm5lY3Rpb24gLnBhdGgtcG9pbnQtY2h1bmsge1xuICAgIGZpbGw6ICM3RjAwRkY7XG59XG5cbi5nLXBhdGgucGF0aC1jb25uZWN0aW9uLmFjdGl2ZSAucGF0aC1saW5lLWNodW5rLFxuLmctcGF0aC5wYXRoLWNvbm5lY3Rpb24uYWN0aXZlIC5wYXRoLWRpcmVjdGlvbi1jaHVuayB7XG4gICAgc3Ryb2tlOiAjN0YwMEZGO1xufVxuLmctcGF0aC5wYXRoLWNvbm5lY3Rpb24uYWN0aXZlIC5wYXRoLXBvaW50LWNodW5rIHtcbiAgICBmaWxsOiAjZGRiOGZmO1xuICAgIHN0cm9rZTogIzdGMDBGRjtcbn1cbi5nLXBhdGgucGF0aC1jb25uZWN0aW9uLmFjdGl2ZSAucGF0aC1wb2ludC1jaHVuay5hY3RpdmUge1xuICAgIGZpbGw6IHZhcigtLWdyZWVuLTUwMCk7XG59XG5cbi5nLXBsYW50cyAucGxhbnQtY2h1bmsge1xuICAgIGZpbGw6IGdyZWVuO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uZy1wYXRoLWNvbW1hbmRzIHtcbiAgICBmaWxsOiBub25lO1xufVxuLmctY29tbWFuZHMtb24tcG9pbnQge1xuICAgIHN0cm9rZTogcmVkO1xufVxuLmctY29tbWFuZHMtb2Zmc2V0ZWQge1xuICAgIHN0cm9rZTogeWVsbG93O1xufVxuLmctY29tbWFuZHMtZGlzYWJsZWQge1xuICAgIHN0cm9rZTogdmFyKC0tZ3JheS02MDApO1xufVxuLmctY29tbWFuZHMtaGlnaGxpZ2h0IHtcbiAgICBzdHJva2U6IG5vbmU7XG4gICAgZmlsbDogcmVkO1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cblxuLmctZmllbGQgLmctaGlnaGxpZ2h0LXJvdy10dXJuIC5wYXRoLWxpbmUtY2h1bmsge1xuICAgIHN0cm9rZTogI2ZmMDBjYztcbiAgICBzdHJva2Utd2lkdGg6IDRweDtcbn1cbi5nLWZpZWxkIC5nLWhpZ2hsaWdodC1yb3ctdHVybiAucGF0aC1wb2ludC1jaHVuayB7XG4gICAgZmlsbDogI2ZmZjtcbiAgICBzdHJva2U6ICNmZjAwY2M7XG4gICAgc3Ryb2tlLXdpZHRoOiAzcHg7XG59XG5cbi5yb3ctbGFiZWwsXG4ucGxhbnQtbGFiZWwsXG4uem9uZS1sYWJlbCxcbi5wb2ludC1sYWJlbCxcbi5kaXN0YW5jZS1sYWJlbCB7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmaWxsOiAjMDAwMEZGO1xuICAgIHRleHQtYW5jaG9yOiBtaWRkbGU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uem9uZS1sYWJlbCB7XG4gICAgc3Ryb2tlOiAjZmZmO1xuICAgIHN0cm9rZS1vcGFjaXR5OiAwLjg7XG4gICAgcGFpbnQtb3JkZXI6IHN0cm9rZSBmaWxsO1xuICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG59XG4ucGxhbnQtbGFiZWwge1xuICAgIGZpbGw6ICNGRkZGRkY7XG59XG4ucG9pbnQtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBmaWxsOiAjRkZGRkZGO1xuICAgIGFsaWdubWVudC1iYXNlbGluZTogY2VudHJhbDtcbn1cbi56b25lLXBvaW50IHtcbiAgICBmaWxsOiAjMDA3N2ZmO1xuICAgIHN0cm9rZTogI2ZmZjtcbiAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uem9uZS1wb2ludC1jaHVuayB7XG4gICAgZmlsbDogIzAwNzdmZjtcbiAgICBzdHJva2U6ICNmZmY7XG4gICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubWlkLXBvaW50IHtcbiAgICBmaWxsOiAjMDBjYzY2O1xuICAgIHN0cm9rZTogI2ZmZjtcbiAgICBzdHJva2Utd2lkdGg6IDJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucm93LXBsYW50IHtcbiAgICBmaWxsOiBncmVlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5nLXJvd3MgbGluZS53b3JrIHtcbiAgICBzdHJva2U6ICMwMDAwRkY7XG59XG4uZy1yb3dzLmRhc2hlZCBsaW5lLndvcmssXG4uZy1maWVsZC5oYXMtYWN0aXZlLXBhdGggLmctcm93cyBsaW5lLndvcmsge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDQgNDtcbn1cbi5nLXJvd3MgbGluZS5za2lwIHtcbiAgICBzdHJva2U6ICNGRjAwMDA7XG59XG4uZy1yb3ctdHVybnMgLnJvdy10dXJuIHtcbiAgICBzdHJva2U6ICMwMDAwRkY7XG4gICAgZmlsbDogbm9uZTtcbn1cblxuLmVkaXQtcG9pbnQtaWNvbixcbi5tb3ZlLWFycm93IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi50YWJzLXBhbmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDE0cHggMTBweDtcbiAgICB3aWR0aDogOTUlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi50b3VjaC1hcmVhIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG5kaXYuc2VwYXJhdG9yIHtcbiAgICBtaW4td2lkdGg6IDFweDtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRmMDtcbn1cblxuLyogU2FmYXJpIGZpeGVzICovXG4jb3JpZ2luLWVuZC1hY3RpdmUsXG4jb3JpZ2luLWVuZCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMTAwIDA7XG59XG4jb3JpZ2luLWVuZCB7XG4gICAgc3Ryb2tlOiAjYWFhO1xufVxuI29yaWdpbi1lbmQtYWN0aXZlIHtcbiAgICBzdHJva2U6IG1hZ2VudGE7XG59XG5cbi5mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG59XG4uZmxleC12IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMC41cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uZmxleC0wIHtcbiAgICBmbGV4OiAwO1xufVxuLmZsZXgtMSB7XG4gICAgZmxleDogMTtcbn1cbi5ub2dhcCB7XG4gICAgZ2FwOiAwO1xufVxuLm92ZXJmbG93LWF1dG8ge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuLm1hcmdpbi0wIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi50b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGdhcDogMTJweDtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggIzAwMDtcbn1cbi50b29sdGlwIGZpZWxkc2V0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLnNob3ctdG9vbHRpcDpob3ZlciArIC50b29sdGlwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4udWktdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB6LWluZGV4OiA5OTk5OTk7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjMDAwNjtcbn1cbi51aS10b29sdGlwID4gKiB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5pY29uLXdoaXRlIHsgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxMDAlKSBicmlnaHRuZXNzKDIwMCUpOyB9XG4uaWNvbi1ibGFjayB7IGZpbHRlcjogYnJpZ2h0bmVzcygwKTsgfVxuLmljb24tZ3JheSAgeyBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMCkgaW52ZXJ0KDM4JSkgc2VwaWEoMCUpIHNhdHVyYXRlKDc0OTklKSBodWUtcm90YXRlKDIwNGRlZykgYnJpZ2h0bmVzcyg3MCUpIGNvbnRyYXN0KDg4JSk7IH1cbi5pY29uLWdyZWVuIHsgZmlsdGVyOiBicmlnaHRuZXNzKDApIHNhdHVyYXRlKDEwMCUpIGludmVydCg0NSUpIHNlcGlhKDY5JSkgc2F0dXJhdGUoMzg2JSkgaHVlLXJvdGF0ZSg4OGRlZykgYnJpZ2h0bmVzcygxMTclKSBjb250cmFzdCg5MiUpOyB9XG4uaWNvbi1yZWQgICB7IGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoMTYlKSBzZXBpYSg4MyUpIHNhdHVyYXRlKDc0NzMlKSBodWUtcm90YXRlKDBkZWcpIGJyaWdodG5lc3MoOTIlKSBjb250cmFzdCg5NyUpOyB9XG4uaWNvbi1pbnZlcnQgeyBmaWx0ZXI6IGludmVydCgxMDAlKTsgfVxuLmljb24tbG9ja2VkLFxuLmljb24tbG9ja2VkLWdyZWVuLFxuLmljb24tbG9ja2VkLWdyZWVuLWNpcmNsZSxcbi5pY29uLXVubG9ja2VkLWdyZWVuLWNpcmNsZSB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vYXNzZXRzL2ltZy9sb2NrZWQud2VicCcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi5pY29uLWxvY2tlZC1ncmVlbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaW1nL2xvY2tlZC1ncmVlbi53ZWJwJyk7XG59XG4uaWNvbi1sb2NrZWQtZ3JlZW4tY2lyY2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2Fzc2V0cy9pbWcvbG9ja2VkLWdyZWVuLWNpcmNsZS53ZWJwJyk7XG59XG4uaWNvbi11bmxvY2tlZC1ncmVlbi1jaXJjbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vYXNzZXRzL2ltZy91bmxvY2tlZC1ncmVlbi1jaXJjbGUud2VicCcpO1xufVxuLmljb24tbGVuZ3RoOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXHUyNzlEXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxZW0gLSAxcHgpO1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLmljb24tcmVhbC1sZW5ndGg6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcdTIxQzRcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cblxuLyogQmlnIGNoZWNrYm94ICovXG5sYWJlbC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLyogQmlnIGNoZWNrYm94IGNoZWNrZWQgKi9cbmxhYmVsLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZS01MDApO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJsdWUtNTAwKTtcbn1cbmxhYmVsLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYXktMTAwKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmF5LTMwMCk7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbmxhYmVsLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS00MDApO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdyYXktNDAwKTtcbn1cbi8qIEJpZyBjaGVja2JveCBjaGVjayBpY29uICovXG5sYWJlbC5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDVweDtcbiAgdG9wOiAxcHg7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogOXB4O1xuICBib3JkZXI6IHNvbGlkIHdoaXRlO1xuICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi50ZW1wbGF0ZS1lZGl0b3Ige1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBwYWRkaW5nLXRvcDogOHB4XG59XG4udGVtcGxhdGUtZWRpdG9yID4gZm9ybSB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDE2cHgpO1xufVxuLnR1cm4tdGVtcGxhdGUtcmVhZG9ubHktcGFuZWwge1xuICAgIHBhZGRpbmc6IDA7XG59XG4udHVybi10ZW1wbGF0ZS1yZWFkb25seS1wYW5lbC5ub24tbW9kYWwgPiBmb3JtIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMTZweDtcbiAgICBib3R0b206IDE2cHg7XG4gICAgd2lkdGg6IG1pbigxNDIwcHgsIDE4MDBweCwgMTAwdncpO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoXG4gICAgICAgIHZhcigtLXR1cm4tdGVtcGxhdGUtcmVhZG9ubHkteCwgMHB4KSxcbiAgICAgICAgdmFyKC0tdHVybi10ZW1wbGF0ZS1yZWFkb25seS15LCAwcHgpXG4gICAgKSBzY2FsZSgwLjUpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xufVxuLnR1cm4tdGVtcGxhdGUtcmVhZG9ubHktcGFuZWwgLnR1cm4tdGVtcGxhdGUtcmVhZG9ubHktZmllbGRzIHtcbiAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi50dXJuLXRlbXBsYXRlLXJlYWRvbmx5LXBhbmVsIC5tYWluIGJ1dHRvbjpub3QoLnR1cm4tdGVtcGxhdGUtcG9pbnQtc3VtbWFyeSksXG4udHVybi10ZW1wbGF0ZS1yZWFkb25seS1wYW5lbCAubWFpbiAuZ3JhYiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnR1cm4tdGVtcGxhdGUtcmVhZG9ubHktcGFuZWwgLnR1cm4tdGVtcGxhdGUtcG9pbnQtaGVhZGVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDM0cHggbWlubWF4KDAsIDFmcik7XG59XG4udHVybi10ZW1wbGF0ZS1yZWFkb25seS1wYW5lbCAudHVybi10ZW1wbGF0ZS1wb2ludC1zdW1tYXJ5IHtcbiAgICBncmlkLWNvbHVtbjogMjtcbn1cbi50dXJuLXRlbXBsYXRlLXJlYWRvbmx5LXBhbmVsIC50dXJuLXRlbXBsYXRlLXJlYWRvbmx5LXNlbGVjdGVkID4gLnR1cm4tdGVtcGxhdGUtaGVhZCxcbi50dXJuLXRlbXBsYXRlLXJlYWRvbmx5LXBhbmVsIC50dXJuLXRlbXBsYXRlLXBvaW50LXJlYWRvbmx5LXNlbGVjdGVkLFxuLnR1cm4tdGVtcGxhdGUtcmVhZG9ubHktcGFuZWwgLnR1cm4tdGVtcGxhdGUtcG9pbnQtcmVhZG9ubHktc2VsZWN0ZWQgPiAudHVybi10ZW1wbGF0ZS1wb2ludC1oZWFkZXIsXG4udHVybi10ZW1wbGF0ZS1yZWFkb25seS1wYW5lbCAudHVybi10ZW1wbGF0ZS1wb2ludC1yZWFkb25seS1zZWxlY3RlZCAudHVybi10ZW1wbGF0ZS1wb2ludC1zdW1tYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vcmFuZ2UtNTAwKTtcbn1cbi50dXJuLXRlbXBsYXRlLXJlYWRvbmx5LXBhbmVsIC50dXJuLXRlbXBsYXRlLXJlYWRvbmx5LXNlbGVjdGVkID4gLnR1cm4tdGVtcGxhdGUtaGVhZCAudHVybi10ZW1wbGF0ZS10aXRsZSxcbi50dXJuLXRlbXBsYXRlLXJlYWRvbmx5LXBhbmVsIC50dXJuLXRlbXBsYXRlLXBvaW50LXJlYWRvbmx5LXNlbGVjdGVkIC50dXJuLXRlbXBsYXRlLXBvaW50LXN1bW1hcnksXG4udHVybi10ZW1wbGF0ZS1yZWFkb25seS1wYW5lbCAudHVybi10ZW1wbGF0ZS1wb2ludC1yZWFkb25seS1zZWxlY3RlZCAudHVybi10ZW1wbGF0ZS1wb2ludC1zdW1tYXJ5IHNtYWxsIHtcbiAgICBjb2xvcjogdmFyKC0taHAtdGV4dCwgIzA3MWQzNik7XG59XG4udHVybi10ZW1wbGF0ZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBib3gtc2hhZG93OiAwIDAgOHB4ICNkZGQ7XG59XG4udHVybi10ZW1wbGF0ZSBidXR0b24uYmlnOm5vdCgubGluaykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuLTMwMCk7XG59XG4udHVybi10ZW1wbGF0ZSAuZ3JhYiB7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG59XG4udHVybi10ZW1wbGF0ZS1yb3cge1xuICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xufVxuLnR1cm4tdGVtcGxhdGUtaGVhZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweCAxNnB4IDAgMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmVlbi00MDApO1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG59XG4udHVybi10ZW1wbGF0ZS10aXRsZSB7XG4gICAgY29sb3I6ICNmZmY7XG59XG4udHVybi1zaGFwZS1zdW1tYXJ5IHtcbiAgICBnYXA6IDhweDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG4udHVybi10ZW1wbGF0ZS1zYWZldHktb3B0aW9ucyB7XG4gICAgZ2FwOiAxNnB4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cbi50dXJuLXRlbXBsYXRlLXNhZmV0eS1vcHRpb25zID4gbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbn1cbi50dXJuLXRlbXBsYXRlLXNhZmV0eS1vcHRpb25zID4gbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogYXV0bztcbn1cbi50dXJuLXNoYXBlLXN1bW1hcnkgPiBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNHB4O1xuICAgIGZsZXg6IG5vbmU7XG59XG4udHVybi1zaGFwZS1zdW1tYXJ5ID4gbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogYXV0bztcbn1cbi50dXJuLXNoYXBlLXN1bW1hcnkgPiBsYWJlbCA+IGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pIHtcbiAgICBmbGV4OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogMmVtO1xufVxuLnR1cm4tc2hhcGUtc3VtbWFyeSA+IGxhYmVsID4gaW5wdXQudHVybi1zaGFwZS1jdXN0b20tYmVhcmluZyB7XG4gICAgd2lkdGg6IDUuOWVtO1xufVxuLnR1LXRlLXBvaW50IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ3JheS0yMDApO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogMDtcbn1cbi50dS10ZS1wb2ludC10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTJweDtcbn1cbi50dS10ZS1zZXBhcmF0b3Ige1xuICAgIG1pbi13aWR0aDogMnB4O1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgbWFyZ2luOiA4cHggMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmVlbi00MDApO1xufVxuLnR1LXRlLWNvbW1hbmRzIHtcbiAgICBtYXJnaW46IDhweCAxNnB4O1xuICAgIGZsZXg6IDE7XG4gICAgZ2FwOiAxNnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cbi50dS10ZS1hZGQtY29tbWFuZC1idG4uc20ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0xMXB4O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuLTEwMCk7XG4gICAgYm9yZGVyOiAwO1xufVxuLnR1cm4tdGVtcGxhdGUgYnV0dG9uLnR1LXRlLWFkZC1jb21tYW5kLWJ0bi5iaWcge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4tMTAwKTtcbiAgICBib3JkZXI6IDA7XG4gICAgbWluLWhlaWdodDogMjhweDtcbn1cbi50dS10ZS1jb21tYW5kIHtcbiAgICBib3JkZXI6IDRweCBkYXNoZWQgdmFyKC0tZ3JheS0yMDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi50dS10ZS1jb21tYW5kLmVkaXRhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udHUtdGUtY29tbWFuZC1pbm5lciB7XG4gICAgbWFyZ2luOiAtM3B4O1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udHUtdGUtY29tbWFuZC10aXRsZSB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IC0xN3B4O1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAjMjAyMDIwO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi50dS10ZS10eXBlcyB7XG4gICAgbWFyZ2luOiA4cHggMTZweDtcbiAgICBmbGV4OiAxO1xuICAgIGdhcDogMTZweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udHUtdGUtY2hhbmdlLXR5cGUtYnRuLnNtIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMTFweDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi0xMDApO1xuICAgIGJvcmRlcjogMDtcbn1cbi50dXJuLXRlbXBsYXRlIGJ1dHRvbi50dS10ZS1jaGFuZ2UtdHlwZS1idG4uYmlnIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuLTEwMCk7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG59XG4udHUtdGUtcGFyYW1zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG4udHUtdGUtcGFyYW0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktMjAwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTEwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAjMjAyMDIwO1xufVxuLnR1LXRlLXBhcmFtLXZhbHVlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuLnBvaW50LWNvbW1hbmQtcGFyYW0tcm93IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDI0MHB4LCAxZnIpIG1pbm1heCg4MHB4LCAxNTBweCkgNDBweDtcbiAgICBnYXA6IDAuNDNlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDJlbTtcbn1cbi5wb2ludC1jb21tYW5kLXBhcmFtLXJvdyA+IC5wb2ludC1jb21tYW5kLXBhcmFtLW5hbWU6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4ucG9pbnQtY29tbWFuZC1wYXJhbS1yb3cgPiBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKSxcbi5wb2ludC1jb21tYW5kLXBhcmFtLXJvdyA+IHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBqdXN0aWZ5LXNlbGY6IHN0cmV0Y2g7XG4gICAgZmxleDogbm9uZTtcbn1cbi5wb2ludC1jb21tYW5kLWlucHV0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgIGZsZXg6IG5vbmU7XG59XG4ucG9pbnQtY29tbWFuZC1wYXJhbS11bml0IHtcbiAgICBtaW4td2lkdGg6IDQwcHg7XG59XG4uZ3JhYi1wbGFjZWhvbGRlciB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgbWluLXdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi50dXJuLXRlbXBsYXRlIGlucHV0W3R5cGU9dGV4dF0sXG4udHVybi10ZW1wbGF0ZSBpbnB1dFt0eXBlPW51bWJlcl0sXG4udHVybi10ZW1wbGF0ZSBzZWxlY3QsXG5pbnB1dFt0eXBlPXRleHRdLmJpZyxcbmlucHV0W3R5cGU9bnVtYmVyXS5iaWcsXG5zZWxlY3QuYmlnIHtcbiAgICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JheS0zMDApO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4udHVybi10ZW1wbGF0ZSBpbnB1dFt0eXBlPW51bWJlcl0sXG5pbnB1dFt0eXBlPW51bWJlcl0uYmlnIHtcbiAgICB3aWR0aDogNWVtO1xufVxuLnR1cm4tdGVtcGxhdGUgaW5wdXRbbmFtZT1iZWFyaW5nXSB7XG4gICAgd2lkdGg6IDUuOWVtO1xufVxuXG4uaG92ZXItb25seSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5yb2JvdC1yb3c6aG92ZXIgLmhvdmVyLW9ubHksXG4udHUtdGUtcG9pbnQgPiAudHVybi10ZW1wbGF0ZS1yb3c6aG92ZXIgLmhvdmVyLW9ubHksXG4udHUtdGUtY29tbWFuZDpob3ZlciAuaG92ZXItb25seSxcbi5wYXRoLXBvaW50cy1saXN0LmVkaXQgPiB0cjpob3ZlciAuaG92ZXItb25seSxcbi56b25lLXBvaW50cy1saXN0LmVkaXQgPiB0cjpob3ZlciAuaG92ZXItb25seSxcbi50dXJuLXRlbXBsYXRlLWhlYWQ6aG92ZXIgLmhvdmVyLW9ubHkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ucGF0aC1wb2ludHMtbGlzdC5ub2VkaXQgLmJ0YWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOHB4O1xufVxuLnBhdGgtcG9pbnRzLWxpc3Qubm9lZGl0IC5vZmZzZXRzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IC00MHB4O1xufVxuLnBhdGgtcG9pbnRzLWxpc3Qubm9lZGl0IC5ncmFiIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5wYXRoLXBvaW50cy1saXN0Lm5vZWRpdCAuZ3JhYiBpbWcge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnBhdGgtcG9pbnRzLXNjcm9sbC52aXJ0dWFsaXplZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG59XG4udmlydHVhbC1wYXRoLXBvaW50cy1zcGFjZXIsXG4udmlydHVhbC1wYXRoLXBvaW50cy1zcGFjZXIgPiB0ZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG4udmlydHVhbC1wYXRoLXBvaW50LXByZXZpZXcge1xuICAgIGhlaWdodDogNTNweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi52aXJ0dWFsLXBhdGgtcG9pbnQtcHJldmlldyA+IHRkIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogNTNweDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5hZGQtcG9pbnQtbW9kZSAucGF0aC1taWQtcG9pbnRzLFxuLmFkZC1wb2ludC1tb2RlIC56b25lLW1pZC1wb2ludHMsXG4uYWRkLXBvaW50LW1vZGUgLmctbW92ZS1wb2ludCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmF4aXMtZHJhZy1yb3RhdGlvbiB7XG4gICAgei1pbmRleDogMjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMjBweDtcbiAgICB0b3A6IDYwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXktMjAwKTtcbn1cbi5heGlzLWRyYWctcm90YXRpb24gaW5wdXQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4ucGF0aC1zZWxlY3Rvci1idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjZjY3NTFmO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4ucGF0aC1zZWxlY3Rvci1tYWluIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ucGF0aC1zZWxlY3Rvci1idG4gLnN1YiB7XG4gICAgY29sb3I6ICNmZmY7XG59XG4ucGF0aC1zZWxlY3Rvci1idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuLTQwMCk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnBhdGgtc2VsZWN0b3ItYnRuOmhvdmVyIC5leHBhbmQtaWNvbiB7XG4gICAgZmlsdGVyOiBpbnZlcnQoMTAwJSk7XG59XG4ucGF0aC1zZWxlY3Rvci1kbGctYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYxMTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbn1cbi5wYXRoLXNlbGVjdG9yLWRsZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYm94LXNoYWRvdzogIzE1MTcyNTI2IDBweCAxNXB4IDI1cHggMHB4LCAjMTUxNzI1MjAgMHB4IDJweCA4cHggMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5wYXRoLXNlbGVjdG9yLWRsZyB0cjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xufVxuLmNvbXBhbnktc2VsZWN0b3ItYnRuIHtcbiAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGdhcDogMDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLWJ0bi5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjY1O1xufVxuLmNvbXBhbnktc2VsZWN0b3ItYnRuLmNvbXBhbnktYmFkZ2UgLmNvbXBhbnktc2VsZWN0b3ItY3J1bWJzIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTIwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3ItY3J1bWJzIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNHB4O1xuICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheS0yMDApO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHggMCAwIDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY29tcGFueS1zZWxlY3Rvci1jcnVtYnMgLmxpbmsge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4tNDAwKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uY29tcGFueS1zZWxlY3Rvci1jcnVtYnMgLmxpbms6ZGlzYWJsZWQsXG4uY29tcGFueS1zZWxlY3Rvci1jdXJyZW50IHtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS04MDApO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLWNydW1iLWljb24ge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uY29tcGFueS1zZWxlY3Rvci1zZXAsXG4uY29tcGFueS1zZWxlY3Rvci1lbXB0eSB7XG4gICAgY29sb3I6IHZhcigtLWdyYXktNjAwKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmNvbXBhbnktc2VsZWN0b3ItYnRuID4gYnV0dG9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDZweCA2cHggMDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLWJ0biA+IGJ1dHRvbiBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG59XG4uY29tcGFueS1zZWxlY3Rvci1kbGcge1xuICAgIHdpZHRoOiBtaW4oMTAwMHB4LCA5MnZ3KTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLWRsZzpoYXMoLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtbGlzdC5zaG93LXVzZXJzKSB7XG4gICAgd2lkdGg6IG1pbigxMDAwcHgsIDkydncpO1xufVxuLmNvbXBhbnktc2VsZWN0b3Itc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxMnB4O1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ3JheS0yMDApO1xufVxuLmNvbXBhbnktc2VsZWN0b3Itc2VhcmNoID4gaW5wdXQge1xuICAgIG1pbi13aWR0aDogMTJlbTtcbiAgICBmbGV4OiAxO1xufVxuLmNvbXBhbnktc2VsZWN0b3Itc2VhcmNoID4gbGFiZWwge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDRweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmNvbXBhbnktc2VsZWN0b3Itc2VhcmNoID4gbGFiZWwgPiBpbnB1dCB7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3ItYm9keSB7XG4gICAgbWluLWhlaWdodDogMjgwcHg7XG4gICAgaGVpZ2h0OiBtaW4oNTYwcHgsIDcwdmgpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTYwcHgsIDFmcikgbWlubWF4KDI2MHB4LCAyZnIpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucHNkLWxlYWRpbmctY29sLFxuLnBzZC1tZXRyaWMtY29sIHtcbiAgICB3aWR0aDogMDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXBhbmUge1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xufVxuLmNvbXBhbnktc2VsZWN0b3ItcGFuZS1zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm9vdC1waWNrZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uY29tcGFueS1zZWxlY3Rvci1yb290cyxcbi5jb21wYW55LXNlbGVjdG9yLXRyZWUge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcGFkZGluZzogNHB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm9vdHMge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWdyYXktMjAwKTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLW5vLXJlc3VsdCB7XG4gICAgcGFkZGluZzogMTJweDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIG1pbi1oZWlnaHQ6IDM0cHg7XG4gICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm93OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LTEwMCk7XG59XG4uY29tcGFueS1zZWxlY3Rvci1yb3cuZGVhbGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi01MCk7XG59XG4uY29tcGFueS1zZWxlY3Rvci1yb3cuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LTEwMCk7XG59XG4uY29tcGFueS1zZWxlY3Rvci1yb3cuYWN0aXZlLmRlYWxlcjpub3QoLnNlbGVjdGVkKSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4tMTAwKTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXJvdy5zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4tNDAwKTtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXJvdy5zZWxlY3RlZCAuY29tcGFueS1zZWxlY3Rvci1lbnRpdHksXG4uY29tcGFueS1zZWxlY3Rvci1yb3cuc2VsZWN0ZWQgYnV0dG9uLmNvbXBhbnktc2VsZWN0b3ItZW50aXR5IHtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXJvdy5tYXRjaCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uY29tcGFueS1zZWxlY3Rvci1yb3cuZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS1ncmF5LTYwMCk7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm93IGltZyB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG4uY29tcGFueS1zZWxlY3Rvci1yb3cgc3BhbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXJvdy1tYWluIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogNHB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3ItY29tcGFueSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbn1cbmJ1dHRvbi5jb21wYW55LXNlbGVjdG9yLWNvbXBhbnktc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5idXR0b24uY29tcGFueS1zZWxlY3Rvci1jb21wYW55LXNlbGVjdDpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aG92ZXIge1xuICAgIGZpbHRlcjogbm9uZTtcbn1cbmJ1dHRvbi5jb21wYW55LXNlbGVjdG9yLWNvbXBhbnktc2VsZWN0ID4gaW1nIHtcbiAgICB0b3A6IDA7XG4gICAgZmlsdGVyOiBub25lO1xufVxuLmNvbXBhbnktc2VsZWN0b3ItY29tcGFueSBpbWcsXG4uY29tcGFueS1zZWxlY3Rvci1lbnRpdGllcyBpbWcge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIGZsZXg6IG5vbmU7XG59XG4uY29tcGFueS1zZWxlY3Rvci1lbnRpdGllcyBpbWcge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBmaWx0ZXI6IHNhdHVyYXRlKDAlKSBicmlnaHRuZXNzKDEyMCUpO1xufVxuLmNvbXBhbnktc2VsZWN0b3ItY29tcGFueS1uYW1lIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmNvbXBhbnktc2VsZWN0b3ItZW50aXRpZXMge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogNnB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3ItZW50aXRpZXMgPiBkaXYge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDRweDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLWVudGl0eS1ncm91cC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXJvYm90LWxpc3Qge1xuICAgIGdhcDogMDtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtaGVhZGVyLFxuLmNvbXBhbnktc2VsZWN0b3Itcm9ib3Qtcm93IHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIwMHB4IG1heC1jb250ZW50O1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBnYXA6IDRweCAxMHB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtbGlzdC5zaG93LXVzZXJzIC5jb21wYW55LXNlbGVjdG9yLXJvYm90LWhlYWRlcixcbi5jb21wYW55LXNlbGVjdG9yLXJvYm90LWxpc3Quc2hvdy11c2VycyAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1yb3cge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjAwcHggMjAwcHggbWF4LWNvbnRlbnQ7XG59XG4uY29tcGFueS1zZWxlY3Rvci1yb2JvdC1oZWFkZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ncmF5LTIwMCk7XG4gICAgY29sb3I6IHZhcigtLWdyYXktNjAwKTtcbiAgICBmb250LXNpemU6IC44ZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXNvcnQtaGVhZGVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4uY29tcGFueS1zZWxlY3Rvci1zb3J0LWhlYWRlciAuYXJyb3dzIHtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXNvcnQtaGVhZGVyIC5hcnJvd3MgLnVwIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgbGlnaHRncmF5O1xufVxuLmNvbXBhbnktc2VsZWN0b3Itc29ydC1oZWFkZXIgLmFycm93cyAuZG93biB7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkIGxpZ2h0Z3JheTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXNvcnQtaGVhZGVyIC5hcnJvd3MgLnVwLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzUyNTQ2MTtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXNvcnQtaGVhZGVyIC5hcnJvd3MgLmRvd24uYWN0aXZlIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjNTI1NDYxO1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtbmFtZSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGdhcDogNHB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtdXNlcnMge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiAycHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXVzZXItYnJlYWRjcnVtYiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBnYXA6IDJweDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLWNvbXBhbnktYnJlYWRjcnVtYiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBnYXA6IDJweDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLXVzZXItbmFtZSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGdhcDogMnB4O1xufVxuLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtbmFtZSBpbWcsXG4uY29tcGFueS1zZWxlY3Rvci11c2VyLWJyZWFkY3J1bWIgaW1nIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBmbGV4OiBub25lO1xufVxuLmNvbXBhbnktc2VsZWN0b3ItZmllbGRncm91cC1oZWFkZXIsXG4uY29tcGFueS1zZWxlY3Rvci1maWVsZGdyb3VwLXJvdyB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMDBweCBtYXgtY29udGVudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNHB4IDEwcHg7XG59XG4uY29tcGFueS1zZWxlY3Rvci1maWVsZGdyb3VwLWhlYWRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdyYXktMjAwKTtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS02MDApO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uY29tcGFueS1zZWxlY3Rvci1maWVsZGdyb3VwLW5hbWUge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBnYXA6IDRweDtcbn1cbi5jb21wYW55LXNlbGVjdG9yLWZpZWxkZ3JvdXAtbmFtZSBpbWcge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIGZsZXg6IG5vbmU7XG59XG4uY29tcGFueS1zZWxlY3Rvci1lbnRpdHkge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLWdyYXktNjAwKTtcbiAgICBmb250LXNpemU6IC45ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbmJ1dHRvbi5jb21wYW55LXNlbGVjdG9yLWVudGl0eSB7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuLTQwMCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5idXR0b24uY29tcGFueS1zZWxlY3Rvci1lbnRpdHkuc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuLTQwMCk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDAgNHB4O1xufVxuYnV0dG9uLmNvbXBhbnktc2VsZWN0b3ItZW50aXR5OmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4tMzAwKTtcbn1cbmJ1dHRvbi5jb21wYW55LXNlbGVjdG9yLWVudGl0eS5zZWxlY3RlZDpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuLnBzZC1saXN0LXJvdyB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGZsZXg6IDE7XG59XG4ucHNkLWxpc3QtY29sIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTIwMCk7XG59XG4ucHNkLWxpc3QtY29sOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDtcbn1cbi5wc2QtcGFuZS1zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnBzZC1wYW5lLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xufVxuLnBzZC1wYXRoc2V0cy1oZWFkLFxuLnBzZC1wYXRocy1oZWFkIHtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ncmF5LTIwMCk7XG5cbn1cbi5wc2QtcGF0aHNldHMtaGVhZCB7XG4gICAgbWluLXdpZHRoOiAxMzBweDtcbn1cbi5wc2QtcGF0aHMtaGVhZCB7XG4gICAgbWluLXdpZHRoOiAyODBweDtcbn1cbi5wc2QtcGF0aHNldHMsXG4ucHNkLXBhdGhzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiBhdXRvO1xufVxuLnBzZC1pbmRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCh2YXIoLS1kZXB0aCwgMSkgLSAxKSAqIDFlbSArIDAuOGVtKTtcbn1cblxuLnBvcHVwLWJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogNnB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5wb3B1cC1idG4gPiBpbWcge1xuICAgIHRvcDogMDtcbiAgICBmaWx0ZXI6IG5vbmU7XG59XG4ucG9wdXAtYnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTIwMCk7XG59XG4ucG9wdXAtYnRuLmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucG9wdXAtYnRuLmJ1c3kgPiBpbWcge1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbn1cbi5wb3B1cC1kbGcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnBvcHVwIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDE2cHgpO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxNnB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KSB0cmFuc2xhdGUoLTQwJSwgLTQwJSk7XG4gICAgYW5pbWF0aW9uOiBmYWRlU2NhbGVJbiAwLjJzIGZvcndhcmRzO1xufVxuLnBvcHVwLWxpc3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS04MDApO1xuICAgIGNvbG9yOiAjRUFFQUVBO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDhweCAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgZm9udC1zaXplOiAxMnB4O1xufVxuLnBvcHVwLWxpc3QgPiBsaSB7XG4gICAgcGFkZGluZzogNHB4IDEycHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnBvcHVwLWxpc3QgPiBsaS5zZXBhcmF0b3Ige1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiA4cHggMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTYwMCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucG9wdXAtbGlzdCA+IGxpLmluc2lzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QzMzQxMDtcbn1cbi5wb3B1cC1saXN0ID4gbGkuZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS1ncmF5LTMwMCk7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5wb3B1cC1saXN0ID4gbGk6bm90KC5kaXNhYmxlZCk6bm90KC5pbnNpc3QpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmF5LTcwMCk7XG59XG5cbi5hZGQtcGF0aC1wb2ludC1kbGcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA1MHB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgbWluLXdpZHRoOiA0MDBweDtcbiAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBib3gtc2hhZG93OiAjMTUxNzI1MjYgMHB4IDE1cHggMjVweCAwcHgsICMxNTE3MjUyMCAwcHggMnB4IDhweCAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHotaW5kZXg6IDk5OTk7XG59XG4uYWRkLXBhdGgtcG9pbnQtZGxnIC5pY29uIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgbWFyZ2luOiAtMnB4IC00cHggLTFweCAtNHB4O1xufVxuLmFkZC1wYXRoLXBvaW50LWRsZyAubWFpbiB7XG4gICAgZ2FwOiAwO1xufVxuLmFkZC1wYXRoLXBvaW50LWRsZyAubGlzdCB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLmFkZC1wYXRoLXBvaW50LWRsZyAuaXRlbSB7XG4gICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4uYWRkLXBhdGgtcG9pbnQtZGxnIC5pdGVtOm5vdCguYWN0aXZlKTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JheS0xMDApO1xufVxuLmFkZC1wYXRoLXBvaW50LWRsZyAuaXRlbTpob3ZlciAuaG92ZXItb25seSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5hZGQtcGF0aC1wb2ludC1kbGcgLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4tMzAwKTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgLS1jb2xvcjogd2hpdGU7XG59XG4uYWRkLXBhdGgtcG9pbnQtZGxnIHNlbGVjdCB7XG4gICAgbWluLWhlaWdodDogMjhweDtcbn1cbi5hZGQtcGF0aC1wb2ludC1kbGcgaW5wdXRbbmFtZT0nb2Zmc2V0X3gnXSxcbi5hZGQtcGF0aC1wb2ludC1kbGcgaW5wdXRbbmFtZT0nb2Zmc2V0X3knXSB7XG4gICAgd2lkdGg6IDVlbVxufVxuLmFkZC1wYXRoLXBvaW50LWRsZyBpbnB1dFtuYW1lPSdsYXRpdHVkZSddLFxuLmFkZC1wYXRoLXBvaW50LWRsZyBpbnB1dFtuYW1lPSdsb25naXR1ZGUnXSB7XG4gICAgd2lkdGg6IDcuMmVtXG59XG5cbi5idG4tdHVybi10ZW1wbGF0ZSBpbWcge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBtYXJnaW46IC0xMHB4IC05cHggLTVweCAtNnB4XG59XG4uYnRuLXR1cm4tdGVtcGxhdGUgc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tYmx1ZS01MDApO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWFwLXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogOHB4O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4ucmVvcmRlci1naG9zdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDAuOTc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZ3JlZW4tMzAwKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMTZweCAzMnB4ICMxNDI2MWIyZSwgMCA0cHggMTBweCAjMTQyNjFiMjQ7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnJlb3JkZXItZ2hvc3QgKixcbi5yZW9yZGVyLWdob3N0IC5ob3Zlci1vbmx5IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufVxuLnJlb3JkZXItZ2hvc3QgLmhvdmVyLW9ubHkge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cbltyZW9yZGVyaXRlbV0uZHJhZ2dpbmcge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JheS0xMDApO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDNweCAwIHZhcigtLWdyZWVuLTQwMCk7XG59XG5bcmVvcmRlcml0ZW1dLmRyYWdnaW5nOm5vdCgucmVvcmRlci1naG9zdCkgPiAqIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbi5yZW9yZGVyLWdob3N0ID4gKiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuLnJlb3JkZXItbWFya2VyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwMDE7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4tNTAwKTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggI2ZmZiwgMCAzcHggOHB4ICMxNzRkMmM1OTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5nZW5lcmF0ZS1wYXRoLWRsZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDUwcHg7XG4gICAgbGVmdDogMTBweDtcbiAgICB3aWR0aDogNDcwcHg7XG4gICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjJweCk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJveC1zaGFkb3c6ICMxNTE3MjUyNiAwcHggMTVweCAyNXB4IDBweCwgIzE1MTcyNTIwIDBweCAycHggOHB4IDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgei1pbmRleDogOTk5OTtcbn1cbi5nZW5lcmF0ZS1wYXRoLWRsZyA+IC5tYWluIHtcbiAgICBmbGV4OiAxO1xufVxuLmdlbmVyYXRlLXBhdGgtc2VsZWN0b3Ige1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogMTBweDtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5nZW5lcmF0ZS1wYXRoLXNlbGVjdG9yIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDE0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuLmdlbmVyYXRlLXBhdGgtc2VsZWN0b3IgLmJ0bi10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cbi5nZW5lcmF0ZS1wYXRoLXNlbGVjdG9yIC5idG4taWNvbiB7XG4gICAgdG9wOiBpbmhlcml0O1xuICAgIHdpZHRoOiA1NnB4O1xuICAgIGhlaWdodDogNTZweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDQwcHg7XG59XG5cbi5leHBhbmQtcm93OmhvdmVyIHtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoODAlKSBjb250cmFzdCgxNTAlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZXhwYW5kLXJvdyAuZXhwYW5kLWljb24ge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2Fzc2V0cy9pbWcvZXhwYW5kLndlYnAnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi5leHBhbmQtcm93IC5leHBhbmQtaWNvbi5jb2xsYXBzZWQge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG5cbi5jb21tYW5kLXRlbXBsYXRlIHtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCA4cHggI2RkZDtcbn1cblxuLmZpZWxkLXNlYXJjaCB7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgcGFkZGluZzogOHB4O1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG59XG5cbmJ1dHRvbi5ydW50aW1lLXNlY3Rpb24tZWRpdC1idXR0b24sXG5idXR0b24ucnVudGltZS1zZWN0aW9uLWVkaXQtYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOm5vdCguYWN0aXZlKTpob3ZlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDMycHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmaWx0ZXI6IG5vbmU7XG4gICAgZm9udDogaW5oZXJpdDtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5zZXR0aW5nLWhpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuLnNldHRpbmctaGludCA+IGltZyB7XG4gICAgd2lkdGg6IDE2cHg7XG59XG5cbi5nbWFwLXNlYXJjaCB7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGdhcDogMDtcbn1cbi5nbWFwLXNlYXJjaC1zdWdnZXN0aW9ucyB7XG4gICAgZ2FwOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4uZ21hcC1zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gICAgcGFkZGluZzogOHB4O1xufVxuLmdtYXAtc2VhcmNoLXN1Z2dlc3Rpb246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG59XG5cbi5hZGQtcmVjdGFuZ2xlLWEsXG4uYWRkLXJlY3RhbmdsZS1iIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxlZnQ6IC0xNnB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmFkZC1yZWN0YW5nbGUtYSB7XG4gICAgYm90dG9tOiAwO1xufVxuLmFkZC1yZWN0YW5nbGUtYiB7XG4gICAgdG9wOiAwO1xufVxuXG5pbnB1dC53LTE1MCB7XG4gICAgbWF4LXdpZHRoOiAxNTBweDtcbn1cblxuLmNvbXBhbnktbG9nby1zbSB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xufVxuXG4uY29tcGFueS10cmVlLWNlbGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb21wYW55LXRyZWUtbmFtZSB7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBtYXJnaW46IC04cHggMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuLmNvbXBhbnktdHJlZS1ndWlkZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZmxleDogbm9uZTtcbn1cbi5jb21wYW55LXRyZWUtZ3VpZGUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgZmxleDogbm9uZTtcbn1cbi5jb21wYW55LXRyZWUtZ3VpZGU6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiB2YXIoLS1jb21wYW55LXRyZWUtbGVmdCk7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTMwMCk7XG59XG4uY29tcGFueS10cmVlLWd1aWRlOm5vdCguY29udGludWVzKTpub3QoLmJyYW5jaCk6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLmNvbXBhbnktdHJlZS1ndWlkZS5icmFuY2g6OmFmdGVyIHtcbiAgICBib3R0b206IDUwJTtcbn1cbi5jb21wYW55LXRyZWUtZ3VpZGUuYnJhbmNoLmNvbnRpbnVlczo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbn1cbi5jb21wYW55LXRyZWUtZ3VpZGUuYnJhbmNoOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiB2YXIoLS1jb21wYW55LXRyZWUtbGVmdCk7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWdyYXktMzAwKTtcbn1cbi5jb21wYW55LXRyZWUtbGFiZWwge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIHBhZGRpbmctbGVmdDogNHB4O1xufVxuLmNvbXBhbnktdHJlZS1sYWJlbCA+IHNwYW4ge1xuICAgIG1pbi13aWR0aDogMDtcbn1cbi5zZWN0aW9uLWNvbXBhbnktY2hlY2sge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uc2VjdGlvbi1jb21wYW55LWNoZWNrID4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuQGtleWZyYW1lcyBmYWRlU2NhbGVJbiB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG4iLCAiLypcbiAqIFJlc3BvbnNpdmUgYmFzZSBsYXllci5cbiAqXG4gKiBUaGUgYXBwbGljYXRpb24gYWRkcyBgbWVkaXVtYCBiZWxvdyAxMjgwcHggYW5kIGBzbWFsbGAgdGhyb3VnaCAxMDI0cHguXG4gKiBLZWVwIGRlc2t0b3AgcnVsZXMgaW4gYmFzZS5jc3MgYW5kIGNvbnRhaW4gY29tcGFjdC1sYXlvdXQgY2hhbmdlcyBoZXJlLlxuICovXG5cbi5tZWRpdW0ge1xuICAgIC8qIE9ubHkgY29tcGFjdCBpY29uIHRvb2xiYXJzLiBEaWFsb2cgYW5kIGZvcm0gYWN0aW9ucyBrZWVwIHRoZWlyIGxhYmVscy4gKi9cbiAgICAmIC50YWJzZXQgPiBidXR0b246bm90KC52aWV3LXN3aXRjaCkgPiBzcGFuLFxuICAgICYgLnRhYnNldC1hY3Rpb25zID4gYnV0dG9uOm5vdCgudmlldy1zd2l0Y2gpID4gc3Bhbjpub3QoLmJ1dHRvbi1pY29uKTpub3QoLmZpZWxkLWFwcGx5LWljb24pLFxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiBidXR0b246bm90KC52aWV3LXN3aXRjaCkgPiBzcGFuOm5vdCguYnV0dG9uLWljb24pLFxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiA6aXMoLmNvdmVyYWdlLXRvZ2dsZSwgLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSkgPiBidXR0b24gPiBzcGFuOm5vdCguYnV0dG9uLWljb24pLFxuICAgICYgI2hlYWRlcl9pZCA+IGJ1dHRvbiA+IHNwYW4sXG4gICAgJiBidXR0b24uY29tcGFjdC1vbi1tZWRpdW0gPiBzcGFuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYgLnRhYnNldCA+IGJ1dHRvbjpub3QoLnZpZXctc3dpdGNoKSxcbiAgICAmIC50YWJzZXQtYWN0aW9ucyA+IGJ1dHRvbjpub3QoLnZpZXctc3dpdGNoKSxcbiAgICAmIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gYnV0dG9uOm5vdCgudmlldy1zd2l0Y2gpLFxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiA6aXMoLmNvdmVyYWdlLXRvZ2dsZSwgLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSkgPiBidXR0b24sXG4gICAgJiAuZmllbGQtbWFwLXByaW1hcnktYWN0aW9ucyA+IGJ1dHRvbjpub3QoLnZpZXctc3dpdGNoKSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICYgLnRhYnNldCA+IGJ1dHRvbjpub3QoLnZpZXctc3dpdGNoKSA+IGltZyxcbiAgICAmIC50YWJzZXQtYWN0aW9ucyA+IGJ1dHRvbjpub3QoLnZpZXctc3dpdGNoKSA+IGltZyxcbiAgICAmIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gYnV0dG9uOm5vdCgudmlldy1zd2l0Y2gpID4gaW1nLFxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiA6aXMoLmNvdmVyYWdlLXRvZ2dsZSwgLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSkgPiBidXR0b24gPiBpbWcsXG4gICAgJiAuZmllbGQtbWFwLXByaW1hcnktYWN0aW9ucyA+IGJ1dHRvbjpub3QoLnZpZXctc3dpdGNoKSA+IGltZyB7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmIC5idXR0b24taWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICAgICAgICBtaW4td2lkdGg6IDE4cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgICYgLnRhYmxlLXNjcm9sbCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICAmIC5kZXZpY2VzLXRhYmxlLXNjcm9sbCxcbiAgICAmIC5yb2JvdC11c2Vycy10YWJsZS1zY3JvbGwge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuXG4gICAgJiAudGFibGUtc2Nyb2xsIHRoLFxuICAgICYgLnRhYmxlLXNjcm9sbCB0ZCxcbiAgICAmIC5kZXZpY2VzLXRhYmxlLXNjcm9sbCB0aCxcbiAgICAmIC5kZXZpY2VzLXRhYmxlLXNjcm9sbCB0ZCxcbiAgICAmIC5yb2JvdC11c2Vycy10YWJsZS1zY3JvbGwgdGgsXG4gICAgJiAucm9ib3QtdXNlcnMtdGFibGUtc2Nyb2xsIHRkIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICB9XG59XG5cbmh0bWwubWVkaXVtOm5vdCguc21hbGwpIC5yb2JvdC1kZXZpY2UtdGFibGUge1xuICAgIHdpZHRoOiBtYXgtY29udGVudCAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHRhYmxlLWxheW91dDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uc21hbGwge1xuICAgIC0tdmlld3BvcnQtaW5saW5lLXBhZGRpbmc6IDhweDtcblxuICAgICYgYm9keSB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgb3ZlcmZsb3cteDogY2xpcDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cblxuICAgICYgYnV0dG9uLFxuICAgICYgaW5wdXQsXG4gICAgJiBzZWxlY3QsXG4gICAgJiB0ZXh0YXJlYSB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgICYgYnV0dG9uIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgIH1cblxuICAgICYgcHJlLFxuICAgICYgY29kZSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICB9XG5cbiAgICAmIGZvcm0gPiAubWV0YSB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4O1xuICAgIH1cblxuICAgICYgZm9ybSA+IC50aXRsZSxcbiAgICAmIGZvcm0gPiBmb290ZXIsXG4gICAgJiBmb3JtID4gLmZvb3RlciB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgICYgZm9ybSA+IC50aXRsZSA+IHNwYW4ge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJiBmb3JtID4gLnRpdGxlID4gc3BhbiArIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgICYgZm9ybSA+IG1haW4sXG4gICAgJiBmb3JtID4gLm1haW4ge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteDogY2xpcDtcbiAgICB9XG5cbiAgICAmIGZvcm0gZmllbGRzZXQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIGZvcm0gdGFibGUge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiBmb3JtIHRhYmxlIGNvbDpub3QoLmNoZWNrKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1kbGcgPiBmb3JtIHtcbiAgICAgICAgd2lkdGg6IG1pbig5NjBweCwgMTAwJSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1kbGcgPiBmb3JtID4gLm1haW4ge1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLWRsZyA+IGZvcm0gPiA6aXMoLnRpdGxlLCAuZm9vdGVyKSA+IGJ1dHRvbixcbiAgICAmIC5zZWN0aW9uLWRsZyAudGFic2V0ID4gYnV0dG9uLnRhYiB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgfVxuXG4gICAgLyogRGlhbG9nIHRhYnMgYXJlIHJlYWwgYnV0dG9ucywgYnV0IG11c3Qgbm90IGluaGVyaXQgdGhlIGdsb2JhbCBhY3RpdmVcbiAgICAgICBidXR0b24gaW52ZXJzaW9uIG9yIHRoZSBzdGlja3kgZ3JlZW4gdG91Y2gtaG92ZXIgc3RhdGUuICovXG4gICAgJiAuc2VjdGlvbi1kbGcgLnRhYnNldCA+IGJ1dHRvbi50YWIsXG4gICAgJiAuc2VjdGlvbi1kbGcgLnRhYnNldCA+IGJ1dHRvbi50YWI6aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSwgLmFjdGl2ZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICMyMDIwMjA7XG4gICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLWRsZyAudGFic2V0ID4gYnV0dG9uLnRhYi5hY3RpdmUsXG4gICAgJiAuc2VjdGlvbi1kbGcgLnRhYnNldCA+IGJ1dHRvbi50YWIuYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRmMDtcbiAgICAgICAgY29sb3I6ICMyMDIwMjA7XG4gICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLWRsZyA+IGZvcm0gPiAubWV0YSBzZWxlY3Qge1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgIH1cblxuICAgIC8qIEtlZXAgdGhlIHNob3J0IG1vZHVsZSBsYWJlbCBhbmQgc2VsZWN0b3Igb24gb25lIGNvbXBhY3Qgcm93LiBUaGUgbWV0YVxuICAgICAgIGNvbnRhaW5lciBpcyBjZW50ZXJlZCwgc28gZ2l2ZSB0aGUgcm93IGVub3VnaCB3aWR0aCBmb3IgdHJhbnNsYXRlZFxuICAgICAgIG1vZHVsZSBuYW1lcyBpbnN0ZWFkIG9mIGxldHRpbmcgaXQgc2hyaW5rIHRvIGl0cyBjb250ZW50cy4gKi9cbiAgICAmIC5zZWN0aW9uLWRsZyA+IGZvcm0gPiAubWV0YSA+IC5zZWN0aW9uLW1vZHVsZS1maWVsZCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDM2MHB4O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtYXgtY29udGVudCBtaW5tYXgoMCwgMWZyKTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1kbGcgPiBmb3JtID4gLm1ldGEgPiAuc2VjdGlvbi1tb2R1bGUtZmllbGQgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLWRsZyA+IGZvcm0gPiAubWV0YSA+IC5zZWN0aW9uLW1vZHVsZS1maWVsZCA+IHNlbGVjdFtuYW1lPVwibW9kdWxlXCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLW5hbWUtbGFuZ3VhZ2UtZmllbGRzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICAgICAgICBnYXA6IDhweDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLW5hbWUtbGFuZ3VhZ2UtZmllbGRzID4gbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDU0cHg7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDdyZW0sIDM4JSkgbWlubWF4KDAsIDFmcik7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4O1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tbmFtZS1sYW5ndWFnZS1maWVsZHMgPiBsYWJlbCA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tbmFtZS1sYW5ndWFnZS1maWVsZHMgPiBsYWJlbCA+IGlucHV0IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiA0MHB4O1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5ncy1lZGl0b3Ige1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tc2V0dGluZ3MtZWRpdG9yID4gY29sZ3JvdXAsXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5ncy1lZGl0b3IgPiB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5ncy1lZGl0b3IgPiB0Ym9keSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgobWluKDEwMCUsIDMyMHB4KSwgMWZyKSk7XG4gICAgICAgIGdhcDogMTBweDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLXNldHRpbmdzLWVkaXRvciA+IHRib2R5ID4gLnNlY3Rpb24tc2V0dGluZy1lZGl0b3ItY2FyZCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkN2Q4ZGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5ncy1lZGl0b3IgPiB0Ym9keSA+IC5zZWN0aW9uLXNldHRpbmctZWRpdG9yLWNhcmQgPiB0ZCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogNTRweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoN3JlbSwgMzglKSBtaW5tYXgoMCwgMWZyKTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDdweCA4cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGYwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tc2V0dGluZ3MtZWRpdG9yID4gdGJvZHkgPiAuc2VjdGlvbi1zZXR0aW5nLWVkaXRvci1jYXJkID4gdGQuZ3JhYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZjA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkN2Q4ZGU7XG4gICAgICAgIGNvbG9yOiAjM2Y0MTRhO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tc2V0dGluZ3MtZWRpdG9yID4gdGJvZHkgPiAuc2VjdGlvbi1zZXR0aW5nLWVkaXRvci1jYXJkID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5ncy1lZGl0b3IgPiB0Ym9keSA+IC5zZWN0aW9uLXNldHRpbmctZWRpdG9yLWNhcmQgPiB0ZDplbXB0eSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5ncy1lZGl0b3IgPiB0Ym9keSA+IC5zZWN0aW9uLXNldHRpbmctZWRpdG9yLWNhcmQgPiB0ZDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBjb2xvcjogIzUyNTQ2MTtcbiAgICAgICAgZm9udC1zaXplOiAwLjcyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLXNldHRpbmdzLWVkaXRvciA+IHRib2R5ID4gLnNlY3Rpb24tc2V0dGluZy1lZGl0b3ItY2FyZCA+IHRkID4gOmlzKGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKSwgc2VsZWN0KSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgLyogQSBmb2N1c2VkIG5hdGl2ZSBzZWxlY3RvciBvdGhlcndpc2UgcmVtYWlucyBzb2xpZCBncmVlbiBhZnRlciBhIHRvdWNoLFxuICAgICAgIHdoaWxlIGl0cyByb3cga2VlcHMgdGhlIGRlc2t0b3AgaG92ZXIgY29sb3VyLiBCb3RoIGFyZSBtaXNsZWFkaW5nIGluIGFuXG4gICAgICAgZWRpdG9yIGNhcmQsIHNvIGNvbXBhY3QgbGF5b3V0cyByZXRhaW4gdGhlIG5ldXRyYWwgY29udHJvbCBzdXJmYWNlLiAqL1xuICAgICYgLnNlY3Rpb24tc2V0dGluZ3MtZWRpdG9yID4gdGJvZHkgPiAuc2VjdGlvbi1zZXR0aW5nLWVkaXRvci1jYXJkOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGNvbG9yOiAjMjAyMDIwO1xuICAgICAgICAtLWNvbG9yOiBncmF5O1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tc2V0dGluZ3MtZWRpdG9yID4gdGJvZHkgPiAuc2VjdGlvbi1zZXR0aW5nLWVkaXRvci1jYXJkIHNlbGVjdDppcyg6aG92ZXIsIDpmb2N1cykge1xuICAgICAgICBib3JkZXItY29sb3I6ICM3NmIzNWE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzE2JyBoZWlnaHQ9JzEwJyB2aWV3Qm94PScwIDAgMTYgMTAnJTNFJTNDcGF0aCBkPSdtMiAyIDYgNiA2LTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzNTI1NDYxJyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgNnB4IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNHB4IDlweDtcbiAgICAgICAgY29sb3I6ICMyMDIwMjA7XG4gICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLXNldHRpbmdzLWVkaXRvciA+IHRib2R5ID4gLnNlY3Rpb24tc2V0dGluZy1lZGl0b3ItY2FyZCA+IHRkID4gOmlzKGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgYnV0dG9uLCBpbWcpIHtcbiAgICAgICAganVzdGlmeS1zZWxmOiBzdGFydDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLXNldHRpbmdzLWVkaXRvciA+IHRib2R5ID4gLnNlY3Rpb24tc2V0dGluZy1lZGl0b3ItY2FyZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tc2V0dGluZy1jaGVja2JveC10YXJnZXQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tc2V0dGluZ3MtZWRpdG9yID4gdGJvZHkgPiAuc2VjdGlvbi1zZXR0aW5nLWVkaXRvci1jYXJkIGJ1dHRvbiB7XG4gICAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLXNldHRpbmdzLWVkaXRvciA+IHRib2R5ID4gLnNlY3Rpb24tc2V0dGluZy1lZGl0b3ItZW1wdHkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLXNldHRpbmdzLWVkaXRvciA+IHRib2R5ID4gLnNlY3Rpb24tc2V0dGluZy1lZGl0b3ItZW1wdHkgPiB0ZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1hc3NpZ25tZW50LWdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBnYXA6IDhweDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1hc3NpZ25tZW50LWdyb3VwICsgLnNlY3Rpb24tbW9iaWxlLWFzc2lnbm1lbnQtZ3JvdXAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tbW9iaWxlLWFzc2lnbm1lbnQtY2FyZCxcbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1yb2JvdC1saXN0IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkN2Q4ZGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtYXNzaWdubWVudC1jYXJkID4gbGVnZW5kIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWlubGluZTogNnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtYXNzaWdubWVudC1hbGwsXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtYXNzaWdubWVudC1yb3csXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtaW1wbGVtZW50LWxpc3QgPiBsYWJlbCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHggNHB4O1xuICAgIH1cblxuICAgICYgOmlzKC5zZWN0aW9uLW1vYmlsZS1hc3NpZ25tZW50LWFsbCwgLnNlY3Rpb24tbW9iaWxlLWFzc2lnbm1lbnQtcm93LCAuc2VjdGlvbi1tb2JpbGUtaW1wbGVtZW50LWxpc3QgPiBsYWJlbCkgPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBmbGV4OiAwIDAgMjRweDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1hc3NpZ25tZW50LXJvdyArIC5zZWN0aW9uLW1vYmlsZS1hc3NpZ25tZW50LXJvdyxcbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1pbXBsZW1lbnQtbGlzdCA+IGxhYmVsICsgbGFiZWwge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1hc3NpZ25tZW50LWFsbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZGVkZjA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgICYgLnNlY3Rpb24tbW9iaWxlLWFzc2lnbm1lbnQtYWxsID4gc3BhbixcbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1hc3NpZ25tZW50LXJvdyA+IHNwYW4sXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtaW1wbGVtZW50LWxpc3QgPiBsYWJlbCA+IHNwYW4ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtYXNzaWdubWVudC1yb3cgPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAycHg7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtYXNzaWdubWVudC1yb3cgc21hbGwge1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICB9XG5cbiAgICAmIC5zZWN0aW9uLW1vYmlsZS1pbXBsZW1lbnQtbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgobWluKDEwMCUsIDE4MHB4KSwgMWZyKSk7XG4gICAgICAgIGdhcDogMCA4cHg7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1tb2JpbGUtaW1wbGVtZW50LWxpc3QgPiAuc3ViIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgcGFkZGluZzogOHB4IDRweDtcbiAgICB9XG5cbiAgICAmIGZvcm0gbGFiZWwge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogMmVtO1xuICAgIH1cblxuICAgICYgZm9ybSBsYWJlbCA+IHNwYW46Zmlyc3QtY2hpbGQsXG4gICAgJiBmb3JtIGxhYmVsID4gaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSksXG4gICAgJiBmb3JtIGxhYmVsID4gc2VsZWN0LFxuICAgICYgZm9ybSBsYWJlbCA+IGRpdiB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmIHRhYmxlIGNvbC5zbWFsbCxcbiAgICAmIHRhYmxlIGNvbC5tZWRpdW0sXG4gICAgJiB0YWJsZSBjb2wuYmlnLFxuICAgICYgdGFibGUgY29sLmxhcmdlIHsgd2lkdGg6IGF1dG87IH1cblxuICAgICYgdGFibGUgdGgsXG4gICAgJiB0YWJsZSB0ZCB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgfVxuXG4gICAgJiAubm93cmFwLFxuICAgICYgdGFibGUubm93cmFwLWhlYWQgdGgge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIH1cblxuICAgICYgLnRhYmxlLXNjcm9sbCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZjA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB9XG5cbiAgICAmIC50YWJsZS1zY3JvbGwgPiB0YWJsZSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAmIC50YWJsZS1zY3JvbGwgPiB0YWJsZSB0aGVhZCB0aCxcbiAgICAmIC5kZXZpY2VzLXRhYmxlIHRoZWFkIHRoLFxuICAgICYgLnJvYm90LXVzZXJzLXRhYmxlIHRoZWFkIHRoIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgIH1cblxuICAgICYgLnRvZ2dsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogNHB4IDA7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgICYgI2xvZyB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gMTZweCk7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICB9XG5cbiAgICAmIC5kaWFsb2cge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgaGVpZ2h0OiAxMDBkdmg7XG4gICAgICAgIHBhZGRpbmc6IDhweCB2YXIoLS12aWV3cG9ydC1pbmxpbmUtcGFkZGluZyk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJiAuZGlhbG9nIH4gLmRpYWxvZyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIH1cblxuICAgICYgLmRpYWxvZyA+IGZvcm0ge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDE2cHgpO1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIDE2cHgpO1xuICAgICAgICBvdmVyZmxvdy14OiBjbGlwO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cblxuICAgIC8qIFRoaXMgZWRpdG9yIGNhbiBjb250YWluIGRvemVucyBvZiB0dXJuIHBvaW50cy4gS2VlcCB0aGUgY2hyb21lIGZpeGVkIGFuZFxuICAgICAgIGxldCB0aGUgbWFpbiByZWdpb24gb3duIGFsbCB2ZXJ0aWNhbCBzY3JvbGxpbmcgaW4gY29tcGFjdCBsYXlvdXRzLiAqL1xuICAgICYgLnRlbXBsYXRlLWVkaXRvciA+IGZvcm0ge1xuICAgICAgICB3aWR0aDogbWluKDk2MHB4LCAxMDAlKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmIC50dXJuLXRlbXBsYXRlLWVkaXRvciA+IGZvcm0gPiAubWFpbiB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfVxuXG4gICAgJiAudHVybi10ZW1wbGF0ZS1ib2R5LFxuICAgICYgLnR1cm4tdGVtcGxhdGUtY29udGVudCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJiAudHVybi1wcmV2aWV3IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgJiAucG9pbnQtY29tbWFuZC1lZGl0b3IgPiBmb3JtIHtcbiAgICAgICAgd2lkdGg6IG1pbig2NDBweCwgMTAwJSk7XG4gICAgfVxuXG4gICAgJiAucG9pbnQtY29tbWFuZC1lZGl0b3IgPiBmb3JtID4gLm1haW4ge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmIC5wb2ludC1jb21tYW5kLWVkaXRvciA+IGZvcm0gPiAubWFpbiA+ICoge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAvKiBUYWJsZXRzIGNhbiBiZSB0b3VjaC1vbmx5LCBzbyBhY3Rpb25zIG11c3Qgbm90IGRlcGVuZCBvbiBob3Zlci4gKi9cbiAgICAmIC50dXJuLXRlbXBsYXRlLWVkaXRvciAuaG92ZXItb25seSB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJiAudHVybi10ZW1wbGF0ZS1lZGl0b3IgLnR1LXRlLXBvaW50IGJ1dHRvbiB7XG4gICAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAmIC50ZW1wbGF0ZS1lZGl0b3IgPiBmb3JtID4gLmZvb3RlciBidXR0b24ge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IDhweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5nLW9wdGlvbnMtZGxnID4gZm9ybSA+IC5tYWluID4gbGFiZWw6aGFzKD4gaW5wdXQ6aXMoW25hbWU9XCJoaW50X2VuXCJdLCBbbmFtZT1cImhpbnRfaHVcIl0pKSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogNTRweDtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgfVxuXG4gICAgJiAuc2VjdGlvbi1zZXR0aW5nLW9wdGlvbnMtZGxnIGlucHV0OmlzKFtuYW1lPVwiaGludF9lblwiXSwgW25hbWU9XCJoaW50X2h1XCJdKSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAmIC5kaWFsb2cubGVmdCA+IGZvcm0ge1xuICAgICAgICBsZWZ0OiB2YXIoLS12aWV3cG9ydC1pbmxpbmUtcGFkZGluZyk7XG4gICAgICAgIHRvcDogdmFyKC0tdmlld3BvcnQtaW5saW5lLXBhZGRpbmcpO1xuICAgICAgICByaWdodDogdmFyKC0tdmlld3BvcnQtaW5saW5lLXBhZGRpbmcpO1xuICAgIH1cblxuICAgICYgLnByb2ZpbGUtZGlhbG9nLW1haW4ge1xuICAgICAgICB3aWR0aDogbWluKDcwMHB4LCBjYWxjKDEwMHZ3IC0gMzJweCkpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiAuY29tcGFueS1zZWxlY3Rvci1idG4ge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIC5jb21wYW55LXNlbGVjdG9yLWNydW1icyB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIH1cblxuICAgICYgLmNvbXBhbnktc2VsZWN0b3ItZGxnLFxuICAgICYgLmNvbXBhbnktc2VsZWN0b3ItZGxnOmhhcyguY29tcGFueS1zZWxlY3Rvci1yb2JvdC1saXN0LnNob3ctdXNlcnMpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSAxNnB4KTtcbiAgICB9XG5cbiAgICAmIC5jb21wYW55LXNlbGVjdG9yLXNlYXJjaCB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDhweDtcbiAgICB9XG5cbiAgICAmIC5jb21wYW55LXNlbGVjdG9yLXNlYXJjaCA+IGlucHV0IHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAxIDEgMTJlbTtcbiAgICB9XG5cbiAgICAmIC5jb21wYW55LXNlbGVjdG9yLWJvZHkge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogbWluKDU2MHB4LCBjYWxjKDEwMGR2aCAtIDE1MHB4KSk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEyMHB4LCAxZnIpIG1pbm1heCgwLCAyZnIpO1xuICAgIH1cblxuICAgICYgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtbGlzdCB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJiAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1oZWFkZXIsXG4gICAgJiAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1yb3csXG4gICAgJiAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1saXN0LnNob3ctdXNlcnMgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtaGVhZGVyLFxuICAgICYgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtbGlzdC5zaG93LXVzZXJzIC5jb21wYW55LXNlbGVjdG9yLXJvYm90LXJvdyxcbiAgICAmIC5jb21wYW55LXNlbGVjdG9yLWZpZWxkZ3JvdXAtaGVhZGVyLFxuICAgICYgLmNvbXBhbnktc2VsZWN0b3ItZmllbGRncm91cC1yb3cge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxMTBweCwgMWZyKSBtaW5tYXgoMCwgMWZyKTtcbiAgICB9XG5cbiAgICAmIC5jb21wYW55LXNlbGVjdG9yLXJvYm90LWxpc3Quc2hvdy11c2VycyAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1oZWFkZXIsXG4gICAgJiAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1saXN0LnNob3ctdXNlcnMgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3Qtcm93IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTAwcHgsIDFmcikgbWlubWF4KDEwMHB4LCAxZnIpIG1pbm1heCgwLCAxZnIpO1xuICAgIH1cblxuICAgICYgLnBhdGgtc2VsZWN0b3ItZGxnLFxuICAgICYgLnBvcHVwLFxuICAgICYgLnBvcHVwLWxpc3Qge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAxNnB4KTtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDBkdmggLSAxNnB4KTtcbiAgICB9XG5cbiAgICAmIC5wYXRoLXNlbGVjdG9yLWRsZyB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGxlZnQ6IHZhcigtLXZpZXdwb3J0LWlubGluZS1wYWRkaW5nKSAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDogdmFyKC0tdmlld3BvcnQtaW5saW5lLXBhZGRpbmcpICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogNThweCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gdmFyKC0tbW9iaWxlLW5hdi1oZWlnaHQsIDcwcHgpIC0gNjZweCkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmIC5wb3B1cC1saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuXG4gICAgJiAuYWRkLXBhdGgtcG9pbnQtZGxnLFxuICAgICYgLmdlbmVyYXRlLXBhdGgtZGxnIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbGVmdDogdmFyKC0tdmlld3BvcnQtaW5saW5lLXBhZGRpbmcpO1xuICAgICAgICByaWdodDogdmFyKC0tdmlld3BvcnQtaW5saW5lLXBhZGRpbmcpO1xuICAgICAgICB0b3A6IDU4cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDBkdmggLSB2YXIoLS1tb2JpbGUtbmF2LWhlaWdodCwgNzBweCkgLSA2NnB4KTtcbiAgICB9XG5cbiAgICAmIC5nZW5lcmF0ZS1wYXRoLWRsZyB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDBkdmggLSB2YXIoLS1tb2JpbGUtbmF2LWhlaWdodCwgNzBweCkgLSA2NnB4KTtcbiAgICB9XG5cbiAgICAmIC5nZW5lcmF0ZS1wYXRoLXNlbGVjdG9yIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIH1cblxuICAgICYgLnJzLXVpLXNlbGVjdGVkLXJvdy5hY3RpdmUge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgJiAucnMtdWktcm93LXNldHRpbmdzIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICB9XG5cbiAgICAmIC5ycy11aS1zaW1wbGUtaGVhZGxhbmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYgLnJzLXVpLWxlZ2VuZCB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAmIC5maWVsZC1zZWFyY2gge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYgLm11bHRpLXNlbGVjdG9yIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJiAuZmxleCB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgICYgLmZsZXggPiAqIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uc21hbGwgLnBhdGgtc2VsZWN0b3ItZGxnIC5wc2QtbGVhZGluZy1jb2wge1xuICAgIHdpZHRoOiAzNnB4O1xufVxuXG4uc21hbGwgLnBhdGgtc2VsZWN0b3ItZGxnIC5wc2QtbWV0cmljLWNvbCB7XG4gICAgd2lkdGg6IDc2cHg7XG59XG5cbi5zbWFsbCAucGF0aC1zZWxlY3Rvci1kbGcgLnBvcHVwLWJ0biB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4vKlxuICogT3B0LWluIHRhYmxlLXRvLWNhcmQgcHJpbWl0aXZlLiBBZGQgYC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzYCBlaXRoZXIgdG8gdGhlXG4gKiB0YWJsZSBpdHNlbGYgb3IgdG8gaXRzIGRpcmVjdCB3cmFwcGVyLCBhbmQgcHV0IHRoZSB2aXNpYmxlIGhlYWRpbmcgaW50byBlYWNoXG4gKiBjZWxsJ3MgYGRhdGEtbGFiZWxgIGF0dHJpYnV0ZS4gRGVza3RvcCB0YWJsZSBzZW1hbnRpY3MgcmVtYWluIHVudG91Y2hlZC5cbiAqL1xuLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0YWJsZS1sYXlvdXQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5zbWFsbCA6aXMoLnRhYmxlLXNjcm9sbC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAuZGV2aWNlcy10YWJsZS1zY3JvbGwucmVzcG9uc2l2ZS10YWJsZS1jYXJkcykge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpIGNvbGdyb3VwIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGhlYWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KG1pbigxMDAlLCAzMjBweCksIDFmcikpO1xuICAgIGdhcDogMTBweDtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZjA7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0cjpoYXMoPiB0ZC5yZXNwb25zaXZlLWNhcmQtaGVhZGluZykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnNtYWxsIC5yZXNwb25zaXZlLXRhYmxlLXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5zbWFsbCAucnVudGltZS1zZWN0aW9uLXRhYmxlID4gY29sZ3JvdXAgPiBjb2w6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiBtaW4oNDJ2dywgMjAwcHgpICFpbXBvcnRhbnQ7XG59XG5cbi5zbWFsbCAucnVudGltZS1zZWN0aW9uLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgcGFkZGluZy1ibG9jazogMTJweDtcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuXG4uc21hbGwgYnV0dG9uLnJ1bnRpbWUtc2VjdGlvbi1lZGl0LWJ1dHRvbiB7XG4gICAgbWluLWhlaWdodDogNDRweDtcbn1cblxuLnNtYWxsIC5pbXBsZW1lbnQtcHJlc2V0cy10YWJsZSA+IGNvbGdyb3VwID4gY29sOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogbWluKDUydncsIDI2MHB4KSAhaW1wb3J0YW50O1xufVxuXG4uc21hbGwgLmRpYWxvZy5zZWN0aW9uLWRsZyA+IGZvcm0ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyLnJvYm90LXVzZXJzLWV4dGVybmFsLXRpdGxlIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ci5yb2JvdC11c2Vycy1leHRlcm5hbC10aXRsZSA+IHRoIHtcbiAgICBwYWRkaW5nOiA4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmODtcbn1cblxuLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDcuNXJlbSwgNDAlKSBtaW5tYXgoMCwgMWZyKTtcbiAgICBnYXA6IDhweDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogN3B4IDhweDtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgOHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnNtYWxsIC5yZXNwb25zaXZlLWNlbGwtdmFsdWUge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cblxuLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ciA+IHRkOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGNvbG9yOiAjNTI1NDYxO1xuICAgIGZvbnQtc2l6ZTogMC43OGVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbn1cblxuLyogVGhlIGZpcnN0IGxhYmVsbGVkIHJvdyBpcyB0aGUgdmlzdWFsIGhlYWRpbmcgb2YgZXZlcnkgbW9iaWxlIHRhYmxlIGNhcmQuICovXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOm5vdChbZGF0YS1sYWJlbD1cIlwiXSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZjA7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2Q3ZDhkZTtcbiAgICBjb2xvcjogIzNmNDE0YTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOm5vdChbZGF0YS1sYWJlbD1cIlwiXSkgfiB0ZFtkYXRhLWxhYmVsXTpub3QoW2RhdGEtbGFiZWw9XCJcIl0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZWRlZGYwO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06bm90KFtkYXRhLWxhYmVsPVwiXCJdKTo6YmVmb3JlIHtcbiAgICBjb2xvcjogIzNmNDE0YTtcbn1cblxuLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTpub3QoW2RhdGEtbGFiZWw9XCJcIl0pIH4gdGRbZGF0YS1sYWJlbF06bm90KFtkYXRhLWxhYmVsPVwiXCJdKTo6YmVmb3JlIHtcbiAgICBjb2xvcjogIzUyNTQ2MTtcbn1cblxuLyogRXhwbGljaXQgZW50aXR5IGhlYWRpbmdzIG92ZXJyaWRlIHNvdXJjZS1jb2x1bW4gb3JkZXIgb24gbW9iaWxlIGNhcmRzLiAqL1xuLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHI6aGFzKD4gdGQucmVzcG9uc2l2ZS1jYXJkLWhlYWRpbmcpID4gdGRbZGF0YS1sYWJlbF06bm90KFtkYXRhLWxhYmVsPVwiXCJdKTpub3QoLnJlc3BvbnNpdmUtY2FyZC1oZWFkaW5nKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZWRlZGYwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyOmhhcyg+IHRkLnJlc3BvbnNpdmUtY2FyZC1oZWFkaW5nKSA+IHRkLnJlc3BvbnNpdmUtY2FyZC1oZWFkaW5nIHtcbiAgICBvcmRlcjogLTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRmMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNkN2Q4ZGUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzNmNDE0YSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbn1cblxuLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHIgPiB0ZC5yZXNwb25zaXZlLWNhcmQtaGVhZGluZzo6YmVmb3JlIHtcbiAgICBjb2xvcjogIzNmNDE0YSAhaW1wb3J0YW50O1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0cjpoYXMoPiB0ZC5yZXNwb25zaXZlLWNhcmQtaGVhZGluZykgPiB0ZDpub3QoLnJlc3BvbnNpdmUtY2FyZC1oZWFkaW5nKTo6YmVmb3JlIHtcbiAgICBjb2xvcjogIzUyNTQ2MSAhaW1wb3J0YW50O1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ciA+IHRkLnJlc3BvbnNpdmUtY2FyZC1waWN0dXJlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5zbWFsbCAucmVzcG9uc2l2ZS1jYXJkLWhlYWRpbmctaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgZmxleDogMCAwIDI0cHg7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAgIC5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyOm5vdCguZHJhZ2dpbmcpOm5vdCgubm9ob3Zlcik6aG92ZXIgPiB0ZCxcbiAgICAuc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0cjpub3QoLmRyYWdnaW5nKTpub3QoLm5vaG92ZXIpOmhvdmVyID4gdGRbZGF0YS1sYWJlbF0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzZiMzVhICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmZmZmY0MCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0cjpub3QoLmRyYWdnaW5nKTpub3QoLm5vaG92ZXIpOmhvdmVyID4gdGRbZGF0YS1sYWJlbF06bm90KFtkYXRhLWxhYmVsPVwiXCJdKTo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHI6aGFzKD4gdGQucmVzcG9uc2l2ZS1jYXJkLWhlYWRpbmcpOm5vdCguZHJhZ2dpbmcpOm5vdCgubm9ob3Zlcik6aG92ZXIgPiB0ZFtkYXRhLWxhYmVsXTpub3QoW2RhdGEtbGFiZWw9XCJcIl0pIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzc2YjM1YSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmZmZmNDAgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHI6aGFzKD4gdGQucmVzcG9uc2l2ZS1jYXJkLWhlYWRpbmcpOm5vdCguZHJhZ2dpbmcpOm5vdCgubm9ob3Zlcik6aG92ZXIgPiB0ZFtkYXRhLWxhYmVsXTpub3QoW2RhdGEtbGFiZWw9XCJcIl0pOjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAoaG92ZXI6IG5vbmUpLCAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHI6bm90KC5oaWdobGlnaHQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMyMDIwMjAgIWltcG9ydGFudDtcbiAgICAgICAgLS1jb2xvcjogZ3JheTtcbiAgICB9XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyLmhpZ2hsaWdodCA+IHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjY3NTFmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZmZmZjQwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyLmhpZ2hsaWdodCA+IHRkW2RhdGEtbGFiZWxdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjY3NTFmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZmZmZjQwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyOmhhcyg+IHRkLnJlc3BvbnNpdmUtY2FyZC1oZWFkaW5nKS5oaWdobGlnaHQgPiB0ZFtkYXRhLWxhYmVsXTpub3QoW2RhdGEtbGFiZWw9XCJcIl0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjY3NTFmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZmZmZjQwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5zbWFsbCA6aXModGFibGUucmVzcG9uc2l2ZS10YWJsZS1jYXJkcywgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZSkgPiB0Ym9keSA+IHRyOmhhcyg+IHRkLnJlc3BvbnNpdmUtY2FyZC1oZWFkaW5nKS5oaWdobGlnaHQgPiB0ZFtkYXRhLWxhYmVsXTpub3QoW2RhdGEtbGFiZWw9XCJcIl0pOjpiZWZvcmUge1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ci5oaWdobGlnaHQgPiB0ZFtkYXRhLWxhYmVsXTpub3QoW2RhdGEtbGFiZWw9XCJcIl0pOjpiZWZvcmUge1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ciA+IDppcyh0ZDpub3QoW2RhdGEtbGFiZWxdKSwgdGRbZGF0YS1sYWJlbD1cIlwiXSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc21hbGwgOmlzKHRhYmxlLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUpID4gdGJvZHkgPiB0ciA+IDppcyh0ZDpub3QoW2RhdGEtbGFiZWxdKSwgdGRbZGF0YS1sYWJlbD1cIlwiXSk6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNtYWxsIDppcyh0YWJsZS5yZXNwb25zaXZlLXRhYmxlLWNhcmRzLCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlKSA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbn1cblxuLnNtYWxsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUuY29tcGFuaWVzLXRyZWUgLmNvbXBhbnktdHJlZS1jZWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNtYWxsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUuY29tcGFuaWVzLXRyZWUgLmNvbXBhbnktdHJlZS1jZWxsOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLnNtYWxsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUuY29tcGFuaWVzLXRyZWUgLmNvbXBhbnktdHJlZS1uYW1lIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5zbWFsbCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlLmNvbXBhbmllcy10cmVlIC5jb21wYW55LXRyZWUtZ3VpZGVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uc21hbGwgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZS5jb21wYW5pZXMtdHJlZSAuY29tcGFueS10cmVlLWd1aWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDE2cHg7XG59XG5cbi5zbWFsbCAucmVzcG9uc2l2ZS10YWJsZS1jYXJkcyA+IHRhYmxlLmNvbXBhbmllcy10cmVlIC5jb21wYW55LXRyZWUtZ3VpZGU6OmFmdGVyLFxuLnNtYWxsIC5yZXNwb25zaXZlLXRhYmxlLWNhcmRzID4gdGFibGUuY29tcGFuaWVzLXRyZWUgLmNvbXBhbnktdHJlZS1ndWlkZS5icmFuY2g6OmJlZm9yZSB7XG4gICAgbGVmdDogNTAlO1xufVxuXG4uc21hbGwgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZS5jb21wYW5pZXMtdHJlZSAuY29tcGFueS10cmVlLWd1aWRlLmJyYW5jaDo6YmVmb3JlIHtcbiAgICB3aWR0aDogOHB4O1xufVxuXG4uc21hbGwgLnJlc3BvbnNpdmUtdGFibGUtY2FyZHMgPiB0YWJsZS5jb21wYW5pZXMtdHJlZSAuY29tcGFueS10cmVlLWxhYmVsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLWJvZHkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItcGFuZSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDAgMCA0NHB4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ3JheS0yMDApO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItcGFuZTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLXBhbmUuYWN0aXZlIHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci1wYW5lLXN1bW1hcnkge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMCAwIDQ0cHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmF5LTEwMCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmF5LTcwMCk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci1wYW5lLmFjdGl2ZSA+IC5jb21wYW55LXNlbGVjdG9yLXBhbmUtc3VtbWFyeSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ncmF5LTIwMCk7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItcGFuZS1zdW1tYXJ5ID4gc3BhbiB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS03MDApO1xuICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci1wYW5lLXN1bW1hcnkgPiBzdHJvbmcge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLXBhbmUtc3VtbWFyeSA+IC5leHBhbmQtaWNvbiB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xNXMgZWFzZTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLXBhbmUuYWN0aXZlID4gLmNvbXBhbnktc2VsZWN0b3ItcGFuZS1zdW1tYXJ5ID4gLmV4cGFuZC1pY29uIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLXBhbmUgPiA6aXMoLmNvbXBhbnktc2VsZWN0b3Itcm9vdHMsIC5jb21wYW55LXNlbGVjdG9yLXRyZWUpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItcGFuZS5hY3RpdmUgPiA6aXMoLmNvbXBhbnktc2VsZWN0b3Itcm9vdHMsIC5jb21wYW55LXNlbGVjdG9yLXRyZWUpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci1yb290cyB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIDppcyhcbiAgICAgICAgLmNvbXBhbnktc2VsZWN0b3Itcm9vdHMgPiAuY29tcGFueS1zZWxlY3Rvci1yb290LW5vZGUsXG4gICAgICAgIC5jb21wYW55LXNlbGVjdG9yLXRyZWUgPiAuY29tcGFueS1zZWxlY3Rvci10cmVlLW5vZGVcbiAgICApIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWNvbXBhbnktc2VsZWN0b3ItbW9iaWxlLWluZGVudCwgOHB4KTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCA6aXMoXG4gICAgICAgIC5jb21wYW55LXNlbGVjdG9yLXJvb3RzID4gLmNvbXBhbnktc2VsZWN0b3Itcm9vdC1ub2RlLm5lc3RlZCxcbiAgICAgICAgLmNvbXBhbnktc2VsZWN0b3ItdHJlZSA+IC5jb21wYW55LXNlbGVjdG9yLXRyZWUtbm9kZS5uZXN0ZWRcbiAgICApOjpiZWZvcmUsXG4gICAgaHRtbC5zbWFsbCA6aXMoXG4gICAgICAgIC5jb21wYW55LXNlbGVjdG9yLXJvb3RzID4gLmNvbXBhbnktc2VsZWN0b3Itcm9vdC1ub2RlLm5lc3RlZCxcbiAgICAgICAgLmNvbXBhbnktc2VsZWN0b3ItdHJlZSA+IC5jb21wYW55LXNlbGVjdG9yLXRyZWUtbm9kZS5uZXN0ZWRcbiAgICApOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTZweCArICh2YXIoLS1jb21wYW55LXNlbGVjdG9yLWRlcHRoKSAtIDEpICogMTZweCk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgOmlzKFxuICAgICAgICAuY29tcGFueS1zZWxlY3Rvci1yb290cyA+IC5jb21wYW55LXNlbGVjdG9yLXJvb3Qtbm9kZS5uZXN0ZWQsXG4gICAgICAgIC5jb21wYW55LXNlbGVjdG9yLXRyZWUgPiAuY29tcGFueS1zZWxlY3Rvci10cmVlLW5vZGUubmVzdGVkXG4gICAgKTo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICBoZWlnaHQ6IGNhbGMoNTAlICsgNXB4KTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTMwMCk7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCA6aXMoXG4gICAgICAgIC5jb21wYW55LXNlbGVjdG9yLXJvb3RzID4gLmNvbXBhbnktc2VsZWN0b3Itcm9vdC1ub2RlLm5lc3RlZCxcbiAgICAgICAgLmNvbXBhbnktc2VsZWN0b3ItdHJlZSA+IC5jb21wYW55LXNlbGVjdG9yLXRyZWUtbm9kZS5uZXN0ZWRcbiAgICApOjphZnRlciB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ3JheS0zMDApO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgOmlzKFxuICAgICAgICAuY29tcGFueS1zZWxlY3Rvci1yb290cyA+IC5jb21wYW55LXNlbGVjdG9yLXJvb3Qtbm9kZS5zZWxlY3RlZCxcbiAgICAgICAgLmNvbXBhbnktc2VsZWN0b3ItdHJlZSA+IC5jb21wYW55LXNlbGVjdG9yLXRyZWUtbm9kZS5zZWxlY3RlZFxuICAgICk6OmJlZm9yZSxcbiAgICBodG1sLnNtYWxsIDppcyhcbiAgICAgICAgLmNvbXBhbnktc2VsZWN0b3Itcm9vdHMgPiAuY29tcGFueS1zZWxlY3Rvci1yb290LW5vZGUuc2VsZWN0ZWQsXG4gICAgICAgIC5jb21wYW55LXNlbGVjdG9yLXRyZWUgPiAuY29tcGFueS1zZWxlY3Rvci10cmVlLW5vZGUuc2VsZWN0ZWRcbiAgICApOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZmIzO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItdHJlZSAuY29tcGFueS1zZWxlY3Rvci1jb21wYW55LFxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItdHJlZSAuY29tcGFueS1zZWxlY3Rvci1lbnRpdGllcyB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItdHJlZSAuY29tcGFueS1zZWxlY3Rvci1lbnRpdGllcyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTMwMCk7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci10cmVlIC5jb21wYW55LXNlbGVjdG9yLXJvdy5zZWxlY3RlZCAuY29tcGFueS1zZWxlY3Rvci1lbnRpdGllcyB7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmZmZmODA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci10cmVlIC5jb21wYW55LXNlbGVjdG9yLWVudGl0aWVzID4gZGl2IHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci10cmVlIC5jb21wYW55LXNlbGVjdG9yLWVudGl0eS1ncm91cC1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYXktNjAwKTtcbiAgICAgICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLXRyZWUgLmNvbXBhbnktc2VsZWN0b3Itcm93LnNlbGVjdGVkIC5jb21wYW55LXNlbGVjdG9yLWVudGl0eS1ncm91cC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmZTY7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1oZWFkZXIsXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1yb3csXG4gICAgaHRtbC5zbWFsbCAuY29tcGFueS1zZWxlY3Rvci1yb2JvdC1saXN0LnNob3ctdXNlcnMgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtaGVhZGVyLFxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtbGlzdC5zaG93LXVzZXJzIC5jb21wYW55LXNlbGVjdG9yLXJvYm90LXJvdyxcbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLWZpZWxkZ3JvdXAtaGVhZGVyLFxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItZmllbGRncm91cC1yb3cge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtaGVhZGVyLFxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItZmllbGRncm91cC1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgOmlzKC5jb21wYW55LXNlbGVjdG9yLXJvYm90LXJvdywgLmNvbXBhbnktc2VsZWN0b3ItZmllbGRncm91cC1yb3cpID4gW2RhdGEtbW9iaWxlLWxhYmVsXSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWluLWhlaWdodDogMjhweDtcbiAgICAgICAgcGFkZGluZzogNHB4IDRweCA0cHggODZweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdyYXktMjAwKTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIDppcyguY29tcGFueS1zZWxlY3Rvci1yb2JvdC1yb3csIC5jb21wYW55LXNlbGVjdG9yLWZpZWxkZ3JvdXAtcm93KSA+IFtkYXRhLW1vYmlsZS1sYWJlbF06bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCA6aXMoLmNvbXBhbnktc2VsZWN0b3Itcm9ib3Qtcm93LCAuY29tcGFueS1zZWxlY3Rvci1maWVsZGdyb3VwLXJvdykgPiBbZGF0YS1tb2JpbGUtbGFiZWxdOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbW9iaWxlLWxhYmVsKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgbGVmdDogNHB4O1xuICAgICAgICB3aWR0aDogNzZweDtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYXktNjAwKTtcbiAgICAgICAgZm9udC1zaXplOiAuNzJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5jb21wYW55LXNlbGVjdG9yLXJvdy5zZWxlY3RlZCA6aXMoLmNvbXBhbnktc2VsZWN0b3Itcm9ib3Qtcm93LCAuY29tcGFueS1zZWxlY3Rvci1maWVsZGdyb3VwLXJvdykgPiBbZGF0YS1tb2JpbGUtbGFiZWxdOjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZmU2O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3Itcm9ib3QtaGVhZGVyID4gOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIGh0bWwuc21hbGwgLmNvbXBhbnktc2VsZWN0b3ItZmllbGRncm91cC1oZWFkZXIgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmdlbmVyYXRlLXBhdGgtc2VsZWN0b3Ige1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLmdlbmVyYXRlLXBhdGgtc2VsZWN0b3IgYnV0dG9uIHtcbiAgICAgICAgbWluLWhlaWdodDogOTZweDtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgaHRtbC5zbWFsbCAucGF0aC1zZWxlY3Rvci1kbGcge1xuICAgICAgICB0b3A6IDU4cHggIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDhweDtcbiAgICAgICAgYm90dG9tOiBjYWxjKHZhcigtLW1vYmlsZS1uYXYtaGVpZ2h0LCA3MHB4KSArIDhweCk7XG4gICAgICAgIGxlZnQ6IDhweCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucHNkLWxpc3Qtcm93IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wc2QtbGlzdC1jb2wge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAwIDAgNDRweDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ3JheS0yMDApO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBzZC1saXN0LWNvbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wc2QtbGlzdC1jb2wuYWN0aXZlIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucHNkLXBhbmUtc3VtbWFyeSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAwIDAgNDRweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYXktMTAwKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYXktNzAwKTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wc2QtbGlzdC1jb2wuYWN0aXZlID4gLnBzZC1wYW5lLXN1bW1hcnkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ3JheS0yMDApO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wc2QtcGFuZS1zdW1tYXJ5ID4gc3BhbiB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JheS03MDApO1xuICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucHNkLXBhbmUtc3VtbWFyeSA+IHN0cm9uZyB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBzZC1wYW5lLXN1bW1hcnkgPiAuZXhwYW5kLWljb24ge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMTVzIGVhc2U7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucHNkLWxpc3QtY29sLmFjdGl2ZSA+IC5wc2QtcGFuZS1zdW1tYXJ5ID4gLmV4cGFuZC1pY29uIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wc2QtcGFuZS1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucHNkLWxpc3QtY29sLmFjdGl2ZSA+IC5wc2QtcGFuZS1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wc2QtcGF0aHNldHMtaGVhZCxcbiAgICBodG1sLnNtYWxsIC5wc2QtcGF0aHMtaGVhZCB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucGF0aC1zZWxlY3Rvci1kbGcgLnBzZC1wYXRoc2V0cyxcbiAgICBodG1sLnNtYWxsIC5wYXRoLXNlbGVjdG9yLWRsZyAucHNkLXBhdGhzIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW4gYXV0bztcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wYXRoLXNlbGVjdG9yLWRsZyA6aXMoLnBzZC1wYXRoc2V0cywgLnBzZC1wYXRocykgPiB0YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIGZvcm0gbGFiZWw6aGFzKD4gc3BhbjpmaXJzdC1jaGlsZCkge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgIC8qIEtlZXAgdGhlIHNlY3Rpb24gdGl0bGUgdHJhbnNsYXRpb25zIGFzIGRlc2t0b3AtbGlrZSBsYWJlbC92YWx1ZSByb3dzLiAqL1xuICAgIGh0bWwuc21hbGwgZm9ybSAuc2VjdGlvbi1uYW1lLWxhbmd1YWdlLWZpZWxkcyA+IGxhYmVsOmhhcyg+IHNwYW46Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIGZvcm0gbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgZm9ybSA+IC5tZXRhID4gbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCBmb3JtIGZpZWxkc2V0LmZsZXgsXG4gICAgaHRtbC5zbWFsbCBmb3JtIDppcyhtYWluLCAubWFpbikgPiBkaXZbc3R5bGUqPVwiZGlzcGxheTogZmxleFwiXSxcbiAgICBodG1sLnNtYWxsIGZvcm0gOmlzKG1haW4sIC5tYWluKSA+IGRpdltzdHlsZSo9XCJkaXNwbGF5OmZsZXhcIl0ge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAvKiBEZXZpY2Ugc2V0dGluZ3Mgc3RpbGwgZml0IGFzIGEgY29tcGFjdCBsYWJlbC92YWx1ZSBwYWlyIG9uIHBob25lcy4gKi9cbiAgICBodG1sLnNtYWxsIGZvcm0gOmlzKC5kZXZpY2UtZWRpdG9yLW1ldGEsIC5kZXZpY2UtZWRpdG9yLW1haW4pID4gbGFiZWw6aGFzKD4gc3BhbjpmaXJzdC1jaGlsZCkge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIGZvcm0gOmlzKC5kZXZpY2UtZWRpdG9yLW1ldGEsIC5kZXZpY2UtZWRpdG9yLW1haW4pID4gbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZsZXg6IDAgMSBjbGFtcCg5MHB4LCAzNCUsIDE0MHB4KTtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCBmb3JtIDppcyguZGV2aWNlLWVkaXRvci1tZXRhLCAuZGV2aWNlLWVkaXRvci1tYWluKSA+IGxhYmVsID4gOmlzKGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSksIHNlbGVjdCwgZGl2KSB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleDogMSAxIDA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1lZGl0b3IgPiBmb3JtID4gLm1haW4ge1xuICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi1wcmV2aWV3IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMTBweCAxMnB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtaW1wbGVtZW50LWNvbnRyb2xzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBnYXA6IDhweDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLWltcGxlbWVudC1jb250cm9scyA+IGxhYmVsIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDhweDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLWltcGxlbWVudC10b2dnbGUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIDI0cHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1pbXBsZW1lbnQtZGlzdGFuY2Uge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCg3MnB4LCA1ZW0pIG1heC1jb250ZW50O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtaW1wbGVtZW50LWNvbnRyb2xzID4gbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1pbXBsZW1lbnQtdG9nZ2xlID4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtaW1wbGVtZW50LWRpc3RhbmNlID4gaW5wdXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtaGVhZCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtaGVhZCA+IC5ncmFiIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIG1pbi13aWR0aDogMjBweDtcbiAgICAgICAgZmxleDogMCAwIDIwcHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1oZWFkID4gbGFiZWwuY2hlY2tib3gge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXg6IDEgMSBjYWxjKDEwMCUgLSAyOHB4KTtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1oZWFkID4gbGFiZWwuY2hlY2tib3ggPiAudHVybi10ZW1wbGF0ZS10aXRsZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtaGVhZCA+IGJ1dHRvbiB7XG4gICAgICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtaGVhZCA+IGJ1dHRvbjpudGgtbGFzdC1jaGlsZCgtbiArIDIpIHtcbiAgICAgICAgZmxleDogMSAxIDEyMHB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtc2V0dGluZ3Mge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCgwLCAxZnIpIDQ0cHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXNldHRpbmdzID4gbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtc2V0dGluZ3MgPiBzZWxlY3RbbmFtZT1cImhlYWRsYW5kXCJdIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAtMTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXNldHRpbmdzID4gaW5wdXRbbmFtZT1cImNhdGVnb3J5SWRcIl0ge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtc2V0dGluZ3MgPiAudHVybi1wcmV2aWV3LXNob3csXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1zZXR0aW5ncyA+IGlucHV0W25hbWU9XCJjYXRlZ29yeUlkc1wiXSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1zZXR0aW5ncyA+IHNlbGVjdFtuYW1lPVwidXNlQ3VzdG9tUm93c1wiXSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtc2V0dGluZ3MgPiBpbnB1dFtuYW1lPVwiY3VzdG9tUm93c1wiXSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyIC8gLTE7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1zZXR0aW5ncyA+IGxhYmVsLmNoZWNrYm94IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAzO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1zZXR0aW5ncyA+IGxhYmVsLmNoZWNrYm94ID4gc3BhbiB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXNldHRpbmdzID4gOmlzKGlucHV0LCBzZWxlY3QpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXNldHRpbmdzID4gYnV0dG9uLnNtYWxsLmZsYXQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tc2hhcGUtc3VtbWFyeSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTQwcHgsIDFmcikpO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDhweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAxMnB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tc2hhcGUtc3VtbWFyeSA+IGxhYmVsIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoNTZweCwgYXV0byk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogNnB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tc2hhcGUtc3VtbWFyeSA+IGxhYmVsLmNoZWNrYm94IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyNHB4IG1pbm1heCgwLCAxZnIpO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tc2hhcGUtc3VtbWFyeSA+IGxhYmVsID4gc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tc2hhcGUtc3VtbWFyeSA+IGxhYmVsID4gaW5wdXQ6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cInJhZGlvXCJdKSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi1zaGFwZS1zdW1tYXJ5ID4gYnV0dG9uIHtcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1LXRlLXBvaW50IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXBvaW50LWZpZWxkcyB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDcycHgsIGF1dG8pIHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1wb2ludC1maWVsZHMgPiBsYWJlbC5jaGVja2JveCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1wb2ludC1maWVsZHMgPiBsYWJlbC5jaGVja2JveCA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1wb2ludC1maWVsZHMgPiBkaXYuZmxleC50dXJuLXRlbXBsYXRlLW9mZnNldC14IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1wb2ludC1maWVsZHMgPiBkaXYuZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1heC1jb250ZW50O1xuICAgICAgICBnYXA6IDRweDtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1wb2ludC1maWVsZHMgPiBkaXYuZmxleCA+IHNwYW4ge1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXBvaW50LWZpZWxkcyA+IHNlbGVjdFtuYW1lPVwiYmVhcmluZ190eXBlXCJdIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAzO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtcG9pbnQtZmllbGRzID4gZGl2LnR1cm4tdGVtcGxhdGUtYmVhcmluZyB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtcG9pbnQtZmllbGRzID4gc2VsZWN0W25hbWU9XCJiYXNlXCJdIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDM7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1wb2ludC1maWVsZHM6aGFzKD4gZGl2LnR1cm4tdGVtcGxhdGUtYmVhcmluZykgPiBzZWxlY3RbbmFtZT1cImJhc2VcIl0ge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIDM7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1wb2ludC1maWVsZHMgPiBpbnB1dFtuYW1lPVwiY2F0ZWdvcnlfaWRcIl0ge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIDM7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUtcG9pbnQtZmllbGRzID4gYnV0dG9uLmxpbmsge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAganVzdGlmeS1zZWxmOiBzdGFydDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXBvaW50LWZpZWxkcyA+IDppcyhpbnB1dCwgc2VsZWN0KSxcbiAgICBodG1sLnNtYWxsIC50dXJuLXRlbXBsYXRlLXBvaW50LWZpZWxkcyA+IGRpdi5mbGV4ID4gaW5wdXQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1LXRlLXBvaW50ID4gLnR1LXRlLXNlcGFyYXRvciB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAycHg7XG4gICAgICAgIG1hcmdpbjogMCAxMnB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1LXRlLXBvaW50ID4gOmlzKC50dS10ZS1jb21tYW5kcywgLnR1LXRlLXR5cGVzKSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1hcmdpbjogMTBweCAxMnB4O1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgOmlzKC50dS10ZS1hZGQtY29tbWFuZC1idG4uc20sIC50dS10ZS1jaGFuZ2UtdHlwZS1idG4uc20pIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1cm4tdGVtcGxhdGUgYnV0dG9uOmlzKC50dS10ZS1hZGQtY29tbWFuZC1idG4sIC50dS10ZS1jaGFuZ2UtdHlwZS1idG4pIHtcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBvaW50LWNvbW1hbmQtZWRpdG9yIDppcygucG9pbnQtY29tbWFuZC1ldmVudC1yb3csIC5wb2ludC1jb21tYW5kLWNvbmRpdGlvbi1yb3cpIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoNzJweCwgMTEycHgpIG1heC1jb250ZW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDhweDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wb2ludC1jb21tYW5kLWVkaXRvciA6aXMoLnBvaW50LWNvbW1hbmQtZXZlbnQtcm93LCAucG9pbnQtY29tbWFuZC1jb25kaXRpb24tcm93KSA+IHNwYW46Zmlyc3QtY2hpbGQsXG4gICAgaHRtbC5zbWFsbCAucG9pbnQtY29tbWFuZC1lZGl0b3IgOmlzKC5wb2ludC1jb21tYW5kLWV2ZW50LXJvdywgLnBvaW50LWNvbW1hbmQtY29uZGl0aW9uLXJvdykgPiAucG9pbnQtY29tbWFuZC1pbnB1dCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wb2ludC1jb21tYW5kLWVkaXRvciAucG9pbnQtY29tbWFuZC1ldmVudC1yb3cgPiBzZWxlY3Q6bm90KC5wb2ludC1jb21tYW5kLWlucHV0KSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucG9pbnQtY29tbWFuZC1lZGl0b3IgLnBvaW50LWNvbW1hbmQtZXZlbnQtcm93ID4gaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wb2ludC1jb21tYW5kLWVkaXRvciA6aXMoLnBvaW50LWNvbW1hbmQtZXZlbnQtcm93LCAucG9pbnQtY29tbWFuZC1jb25kaXRpb24tcm93KSA+IHN1YiB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAucG9pbnQtY29tbWFuZC1lZGl0b3IgOmlzKC5wb2ludC1jb21tYW5kLWV2ZW50LXJvdywgLnBvaW50LWNvbW1hbmQtY29uZGl0aW9uLXJvdykgPiBzdWI6ZW1wdHkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBvaW50LWNvbW1hbmQtY3VzdG9tLWNvbmRpdGlvbiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDY0cHgsIDAuN2ZyKSBtaW5tYXgoMCwgMS4zZnIpIDQ0cHg7XG4gICAgICAgIGdhcDogOHB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBvaW50LWNvbW1hbmQtY3VzdG9tLWNvbmRpdGlvbiA+IGlucHV0IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wb2ludC1jb21tYW5kLWN1c3RvbS1jb25kaXRpb24gPiBidXR0b24uc21hbGwge1xuICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC5wb2ludC1jb21tYW5kLXBhcmFtLXJvdyB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtYXgtY29udGVudDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogNnB4O1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBvaW50LWNvbW1hbmQtcGFyYW0tcm93ID4gLnBvaW50LWNvbW1hbmQtcGFyYW0tbmFtZTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBvaW50LWNvbW1hbmQtcGFyYW0tcm93ID4gOmlzKGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSksIHNlbGVjdCkge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnBvaW50LWNvbW1hbmQtcGFyYW0tdW5pdCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgbWluLXdpZHRoOiAyNHB4O1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1lZGl0b3IgPiBmb3JtID4gLmZvb3RlciB7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1lZGl0b3IgPiBmb3JtID4gLmZvb3RlciA+IC5mbGV4IHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1lZGl0b3IgPiBmb3JtID4gLmZvb3RlciBidXR0b24ge1xuICAgICAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgaHRtbC5zbWFsbCAudHVybi10ZW1wbGF0ZS1lZGl0b3IgPiBmb3JtID4gLmZvb3RlciA+IC5mbGV4ID4gYnV0dG9uIHtcbiAgICAgICAgZmxleDogMSAxIDEyMHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQxcHgpIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGh0bWwuc21hbGwgLnR1LXRlLXBvaW50IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1LXRlLXBvaW50ID4gLnR1cm4tdGVtcGxhdGUtcG9pbnQtZmllbGRzIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50dS10ZS1wb2ludCA+IC50dS10ZS1zZXBhcmF0b3Ige1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgLnR1LXRlLXBvaW50ID4gOmlzKC50dS10ZS1jb21tYW5kcywgLnR1LXRlLXR5cGVzKSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1hcmdpbjogMTBweCAxMnB4O1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIH1cbn1cblxuQG1lZGlhIChob3Zlcjogbm9uZSksIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAuaG92ZXItb25seSB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMzQwcHgpIHtcbiAgICAuZGlhbG9nLnNlY3Rpb24tZGxnIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLmRpYWxvZy5zZWN0aW9uLWRsZyA+IGZvcm0ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDI4MHB4KSB7XG4gICAgLmRpYWxvZyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gICAgLmRpYWxvZyA+IGZvcm0ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cbiIsICIjaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgZ2FwOiAwLjcxZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY4O1xuICAgIGNvbG9yOiAjODM4NjkxO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZGYwO1xufVxuLmhlYWRlci1idG4sXG4jaGVhZGVyX2xvZ28ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uaGVhZGVyLWJ0biA+IGltZyxcbiNoZWFkZXJfbG9nbyA+IGltZyB7XG4gICAgd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xufVxuLmhlYWRlci1idG4ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbn1cbi5oZWFkZXItYnRuLnNlYXJjaCAgPiBpbWcge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbn1cbi5kaWFsb2cgPiBmb3JtOmhhcyg+IC5maWVsZC1zZWFyY2gtcmVzdWx0cykge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZmllbGQtc2VhcmNoLXJlc3VsdHMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZmllbGQtc2VhcmNoLXJlc3VsdHMgPiAudGFibGUtc2Nyb2xsIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIDE5MHB4KTtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cbi5maWVsZC1zZWFyY2gtcmVzdWx0cyAuZmllbGQtZW50aXR5LXRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuLmZpZWxkLXNlYXJjaC1yZXN1bHRzIC5maWVsZC1lbnRpdHktdGFibGUgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogI2Y0ZjhmNTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuI2hlYWRlcl90aXRsZSB7XG4gICAgY29sb3I6ICM1MjU0NjE7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbn1cbiNoZWFkZXJfbW9kIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC43MWVtO1xufVxuI2hlYWRlcl9tb2QgPiAqIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuI2hlYWRlcl9tb2QgPiBzZWxlY3Qge1xuICAgIGZsZXgtc2hyaW5rOiAxO1xufVxuI2hlYWRlcl9pZCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xuICAgIGdhcDogMC43MWVtO1xufVxuXG4jbW9kZXMge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDQ5cHg7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTFweCk7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQ6ICNmNmY2Zjg7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW4gYXV0bztcbn1cbiNtb2RlcyA+IGEge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgZ2FwOiAycHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNjMmMyYzI7XG59XG4jbW9kZXMgPiBhID4gLm1vZGUtbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4jbW9kZXMgPiBhID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDcwJTtcbiAgICBtYXgtaGVpZ2h0OiA2MCU7XG4gICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBmaWx0ZXI6IHNhdHVyYXRlKDAlKSBicmlnaHRuZXNzKDEyMCUpO1xufVxuI21vZGVzID4gYTpob3ZlciB7IGNvbG9yOiAjYTFhMWExOyB9XG4jbW9kZXMgPiBhOmhvdmVyID4gaW1nIHsgZmlsdGVyOiBzYXR1cmF0ZSgwJSk7IH1cbiNtb2RlcyA+IGEuYWN0aXZlIHsgY29sb3I6ICM2NWMxNTE7IH1cbiNtb2RlcyA+IGEuYWN0aXZlID4gaW1nIHsgZmlsdGVyOiBub25lOyB9XG4jbW9kZXMgLnN0aWNreS1idG4ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6ICNmNmY2Zjg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jcGFnZSA+IG1haW4ge1xuICAgIHBhZGRpbmc6IDUwcHggMCAwIDgwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4jbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xufVxuI21haW4gPiAqICsgKiB7IG1hcmdpbi10b3A6IDFyZW07IH1cblxuLmZpZWxkLXdvcmtzcGFjZS12aWV3IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5odG1sOmhhcygjbWFpbi5maWVsZC13b3Jrc3BhY2UtdmlldyksXG5odG1sOmhhcygjbWFpbi5maWVsZC13b3Jrc3BhY2UtdmlldykgYm9keSB7IG92ZXJmbG93OiBoaWRkZW47IH1cbiNwYWdlID4gbWFpbjpoYXMoPiAjbWFpbi5maWVsZC13b3Jrc3BhY2UtdmlldykgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG4jbWFpbi5maWVsZC13b3Jrc3BhY2UtdmlldyA+IC50YWJzZXQgeyBkaXNwbGF5OiBub25lOyB9XG4jbWFpbi5maWVsZC13b3Jrc3BhY2UtdmlldyA+IC5maWVsZC13b3Jrc3BhY2Utc3RhZ2UgeyBtYXJnaW4tdG9wOiAwOyB9XG4uZmllbGQtd29ya3NwYWNlLXZpZXcgLmZpZWxkLW1hcC10b29scyB7IGRpc3BsYXk6IG5vbmU7IH1cbi5maWVsZC13b3Jrc3BhY2Utc3RhZ2Uge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RmZTJlNjtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCAxMnB4IDMycHggIzI1MmEzNDE3O1xufVxuI21haW4gPiAuZmllbGQtd29ya3NwYWNlLXN0YWdlLmlzLWV4cGFuZGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgaW5zZXQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5odG1sLnBvaW50LWVkaXRvci1leHBhbmRlZCxcbmh0bWwucG9pbnQtZWRpdG9yLWV4cGFuZGVkIGJvZHkgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5odG1sLnBvaW50LWVkaXRvci1leHBhbmRlZCAuZGlhbG9nIHsgei1pbmRleDogMTAwMDE7IH1cbi5maWVsZC13b3Jrc3BhY2UtdG9vbGJhciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi1oZWlnaHQ6IDU4cHg7XG4gICAgcGFkZGluZzogOHB4IDEwcHggOHB4IDEycHg7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxMnB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTRlN2VhO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmYmZjZmIgMCUsICNmMGY3ZWUgMTAwJSk7XG59XG4uZmllbGQtd29ya3NwYWNlLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICBjb2xvcjogIzQ0NDg1Mjtcbn1cbi5maWVsZC13b3Jrc3BhY2UtdGl0bGUgPiBzcGFuOmxhc3QtY2hpbGQgeyBtaW4td2lkdGg6IDA7IH1cbi5maWVsZC13b3Jrc3BhY2UtdGl0bGUgc3Ryb25nLFxuLmZpZWxkLXdvcmtzcGFjZS10aXRsZSBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLmZpZWxkLXdvcmtzcGFjZS10aXRsZSBzbWFsbCB7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIGNvbG9yOiAjODM4NjkxO1xufVxuLmZpZWxkLXdvcmtzcGFjZS1tYXJrIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBmbGV4OiAwIDAgMzZweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogI2UxZjJkYztcbn1cbi5maWVsZC13b3Jrc3BhY2UtbWFyayA+IGltZyB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xufVxuLmZpZWxkLXdvcmtzcGFjZS1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGdhcDogNnB4O1xufVxuLmZpZWxkLXdvcmtzcGFjZS1hY3Rpb25zID4gOmlzKGJ1dHRvbiwgYSkge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDhkY2UwO1xuICAgIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjNTI1NDYxO1xuICAgIGZvbnQtc2l6ZTogMS4zNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5maWVsZC13b3Jrc3BhY2UtYWN0aW9ucyA+IC5maWVsZC13b3Jrc3BhY2Utc2F2ZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiA0MHB4O1xuICAgIHBhZGRpbmc6IDAgMTNweDtcbiAgICBnYXA6IDdweDtcbiAgICBib3JkZXItY29sb3I6ICM2NWFhNGQ7XG4gICAgYmFja2dyb3VuZDogIzY1Yjk0ZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uZmllbGQtd29ya3NwYWNlLWFjdGlvbi1pY29uIHtcbiAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cbi5maWVsZC13b3Jrc3BhY2UtYWN0aW9ucyA+IDppcyhidXR0b24sIGEpOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNTU7XG59XG4uZmllbGQtd29ya3NwYWNlLWFjdGlvbnMgPiA6aXMoYnV0dG9uLCBhKTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNzZiMzVhO1xuICAgIGJhY2tncm91bmQ6ICNmMmY4ZWY7XG4gICAgY29sb3I6ICM1Nzk1NDE7XG4gICAgZmlsdGVyOiBub25lO1xufVxuLmZpZWxkLXdvcmtzcGFjZS1hY3Rpb25zID4gLmZpZWxkLXdvcmtzcGFjZS1zYXZlOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICM1NDk3M2U7XG4gICAgYmFja2dyb3VuZDogIzVhYTk0NDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5maWVsZC13b3Jrc3BhY2UtYWN0aW9ucyA+IC5maWVsZC13b3Jrc3BhY2UtY2xvc2U6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI2RjOGM4YztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmNGY0O1xuICAgIGNvbG9yOiAjYjMzZDNkO1xufVxuLmZpZWxkLXdvcmtzcGFjZS1hY3Rpb25zID4gYTp2aXNpdGVkIHsgY29sb3I6ICM1MjU0NjE7IH1cbi5maWVsZC13b3Jrc3BhY2UtZXhwYW5kLWNsb3NlIHsgZGlzcGxheTogbm9uZTsgfVxuLmZpZWxkLXdvcmtzcGFjZS1zdGFnZS5pcy1leHBhbmRlZCAuZmllbGQtd29ya3NwYWNlLWV4cGFuZC1vcGVuIHsgZGlzcGxheTogbm9uZTsgfVxuLmZpZWxkLXdvcmtzcGFjZS1zdGFnZS5pcy1leHBhbmRlZCAuZmllbGQtd29ya3NwYWNlLWV4cGFuZC1jbG9zZSB7IGRpc3BsYXk6IGlubGluZTsgfVxuLmZpZWxkLXdvcmtzcGFjZS1mcmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZjRmNWY3O1xufVxuLmZpZWxkLXdvcmtzcGFjZS1lbXB0eSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi1oZWlnaHQ6IDI2MHB4O1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbiAgICBwYWRkaW5nOiAyNHB4O1xuICAgIGNvbG9yOiAjNTI1NDYxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5maWVsZC13b3Jrc3BhY2UtZW1wdHkgPiBpbWcge1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgb3BhY2l0eTogMC42NTtcbn1cbi5wb2ludC1lZGl0b3ItY2xvc2UtZGlhbG9nID4gZm9ybSB7IG1heC13aWR0aDogbWluKDUyMHB4LCBjYWxjKDEwMHZ3IC0gMjRweCkpOyB9XG4ucG9pbnQtZWRpdG9yLWNsb3NlLWRpYWxvZyAubWFpbiA+IHAgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4ucG9pbnQtZWRpdG9yLWNsb3NlLWFjdGlvbnMgeyBmbGV4LXdyYXA6IHdyYXA7IH1cblxuI2hvbWUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG4jaG9tZSA+IGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgZ2FwOiA2cHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ExYTFhMTtcbn1cbiNob21lID4gYSA+IGltZyB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgbWF4LXdpZHRoOiBtaW4oNzAlLCAxMjRweCk7XG4gICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBmaWx0ZXI6IHNhdHVyYXRlKDAlKTtcbn1cbiNob21lID4gYTpob3ZlciB7IGNvbG9yOiAjNjVjMTUxOyB9XG4jaG9tZSA+IGE6aG92ZXIgPiBpbWcgeyBmaWx0ZXI6IG5vbmU7IH1cblxuaW1nLnBpY3R1cmUge1xuICAgIHdpZHRoOiAxMjhweDtcbiAgICBoZWlnaHQ6IDEyOHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDFlbTtcbn1cbi5wcm9maWxlLWRpYWxvZy11c2VybmFtZSB7XG4gICAgbWFyZ2luOiAtMC40ZW0gMCAxZW07XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5pbWcud29ya2luZyB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgYW5pbWF0aW9uOiB3b3JrX3NwaW4gMC44cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbkBrZXlmcmFtZXMgd29ya19zcGluIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuI3NldHRpbmdzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gNTBweCk7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jc2V0dGluZ3MgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbn1cbiNzZXR0aW5ncyA+IDpub3QodGFibGUpICsgdGFibGUgeyBib3JkZXItdG9wOiAxcHggc29saWQgI2VkZWRmMDsgfVxuI3NldHRpbmdzIHRoZWFkID4gdHIge1xuICAgIGJhY2tncm91bmQ6ICNmNmY2Zjg7XG4gICAgY29sb3I6ICM1MjU0NjE7XG4gICAgcGFkZGluZzogMHB4IDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNzZXR0aW5ncyB0aGVhZCA+IHRyID4gdGggeyBmb250LXdlaWdodDogbm9ybWFsOyB9XG4jc2V0dGluZ3MgKyAjbWFpbiB7IG1hcmdpbi1sZWZ0OiA0MDBweDsgfVxuI3NldHRpbmdzLmZpZWxkLXdvcmtzcGFjZS1zZXR0aW5ncyB7IGRpc3BsYXk6IG5vbmU7IH1cbiNzZXR0aW5ncy5maWVsZC13b3Jrc3BhY2Utc2V0dGluZ3MgKyAjbWFpbiB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4jc2V0dGluZ3MgPiAqICsgOm5vdCh0YWJsZSkgeyBtYXJnaW4tdG9wOiAxMnB4OyB9XG4jc2V0dGluZ3MgPiAudG9nZ2xlIHsgbWFyZ2luOiAxNHB4IGF1dG87IH1cbiNzZXR0aW5ncy5kaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi50YWJzZXQge1xuICAgIHotaW5kZXg6IDk5O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgIGdhcDogMC43MWVtO1xufVxuLnRhYnNldC10YWJzLFxuLnRhYnNldC1hY3Rpb25zIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZW5kO1xuICAgIGdhcDogMC43MWVtO1xufVxuLnRhYnNldC10YWJzIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbn1cbi50YWJzZXQtYWN0aW9ucyB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsLFxuLmZpZWxkLW1hcC1wcmltYXJ5LWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xufVxuLnRhYnNldCA+IGltZyxcbi50YWJzZXQtdGFicyA+IGltZyB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbjogMCA1cHggOHB4IDEwcHg7XG4gICAgcGFkZGluZzogMDtcbn1cbi50YWJzZXQgPiBpbWcucGljdHVyZSxcbi50YWJzZXQtdGFicyA+IGltZy5waWN0dXJlIHsgZGlzcGxheTogbm9uZTsgfVxuLnJlc3BvbnNpdmUtY2FyZC1oZWFkaW5nLWljb24geyBkaXNwbGF5OiBub25lOyB9XG4udGFic2V0ID4gLnRhYixcbi50YWJzZXQtdGFicyA+IC50YWIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMTRweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4udGFic2V0ID4gYnV0dG9uLnRhYixcbi50YWJzZXQgPiBidXR0b24udGFiOmhvdmVyLFxuLnRhYnNldC10YWJzID4gYnV0dG9uLnRhYixcbi50YWJzZXQtdGFicyA+IGJ1dHRvbi50YWI6aG92ZXIge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZmlsdGVyOiBub25lO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi50YWJzZXQgPiAudGFiICsgLnRhYixcbi50YWJzZXQtdGFicyA+IC50YWIgKyAudGFiIHsgbWFyZ2luLWxlZnQ6IC0xMHB4OyB9XG4udGFic2V0ID4gLnRhYi5hY3RpdmUsXG4udGFic2V0LXRhYnMgPiAudGFiLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRmMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL2Fzc2V0cy9pbWcvc2VsZWN0LndlYnAnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA4cHggNTAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTZweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBjdXJzb3I6IGluaGVyaXQ7XG59XG4udGFic2V0ID4gLnRhYi5kaXNhYmxlZCxcbi50YWJzZXQtdGFicyA+IC50YWIuZGlzYWJsZWQgeyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4udGFic2V0LmNvbmZpZ3VyZSA+IC50YWIuYWN0aXZlLFxuLnRhYnNldC5jb25maWd1cmUgPiAudGFic2V0LXRhYnMgPiAudGFiLmFjdGl2ZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vYXNzZXRzL2ltZy9jb25maWd1cmUud2VicCcpOyB9XG4udGFic2V0ID4gc3BhbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICBmb250LXNpemU6IDAuOGVtO1xufVxuLnRhYnNldCA+IGxhYmVsLCAudGFic2V0ID4gaW5wdXQsIC50YWJzZXQgPiBzZWxlY3QsIC50YWJzZXQgPiBidXR0b24sXG4udGFic2V0LXRhYnMgPiBsYWJlbCwgLnRhYnNldC10YWJzID4gaW5wdXQsIC50YWJzZXQtdGFicyA+IHNlbGVjdCwgLnRhYnNldC10YWJzID4gYnV0dG9uLFxuLnRhYnNldC1hY3Rpb25zID4gbGFiZWwsIC50YWJzZXQtYWN0aW9ucyA+IGlucHV0LCAudGFic2V0LWFjdGlvbnMgPiBzZWxlY3QsIC50YWJzZXQtYWN0aW9ucyA+IGJ1dHRvbixcbi5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gbGFiZWwsIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gaW5wdXQsIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gc2VsZWN0LCAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbCA+IGJ1dHRvbixcbi5maWVsZC1tYXAtcHJpbWFyeS1hY3Rpb25zID4gYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogNnB4OyB9XG5cbiNtYWluID4gLnRhYnNldCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDUwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgbWluLWhlaWdodDogNTBweDtcbn1cbiNtYWluID4gLnRhYnNldCA+IC50YWIsXG4jbWFpbiA+IC50YWJzZXQgPiAudGFic2V0LXRhYnMgPiAudGFiIHsgbWFyZ2luLXRvcDogMTBweDsgfVxuXG5mb3JtID4gLm1haW4gPiAudGFic2V0IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgIHRvcDogLTE2cHg7XG4gICAgYm9yZGVyLXRvcDogMTZweCBzb2xpZCB3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjcxZW07XG59XG5cbiNkZXZpY2Uge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTJweDtcbiAgICB6LWluZGV4OiAyO1xufVxuI2RldmljZSA+IGltZyB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xufVxuXG4jc3ZnbWFwX3Jvb3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgdG9wOiA1MHB4O1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgYm90dG9tOiAwO1xufVxuI21hcF96b29tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiA3NnB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xufVxuI21hcF96b29tID4gYnV0dG9uIHtcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG4jbWFwX3pvb20gPiBidXR0b24uaGVhZGluZyB7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgaGVpZ2h0OiA0OHB4O1xufVxuI21hcF9hdHRyaWJ1dGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNnB4O1xuICAgIGJvdHRvbTogMjBweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAycHggNHB4O1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZmRkO1xufVxuXG50YWJsZSB0ZC5waWN0dXJlIHsgcGFkZGluZzogNHB4IDAgMCA0cHg7IH1cbnRhYmxlIHRkLnBpY3R1cmUgPiBpbWcge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbn1cblxuLml0ZW0geyBjdXJzb3I6IHBvaW50ZXI7IH1cbi5sb2NrZWQgeyBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7IH1cblxuLnN0YWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBtYXJnaW46IDFweCAycHggMCAycHg7XG4gICAgcGFkZGluZzogMnB4IDRweDtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG4uc3RhZyArIC5zdGFnIHsgbWFyZ2luLWxlZnQ6IDZweDsgfVxuXG4uZGV2aWNlcy10YWJsZS1zY3JvbGwge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzBweCk7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG4uZGV2aWNlcy10YWJsZSB0aGVhZCB0aCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IC0xcHg7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xufVxuXG4ucm9ib3QtdXNlcnMtdGFibGUtc2Nyb2xsIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTMwcHgpO1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuLnJvYm90LXVzZXJzLXRhYmxlIHtcbiAgICB0YWJsZS1sYXlvdXQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG59XG4ucm9ib3QtdXNlcnMtdGFibGUgLnJvYm90LXVzZXJzLXN0YXR1cyxcbi5yb2JvdC11c2Vycy10YWJsZSAucm9ib3QtdXNlcnMtcGVybWlzc2lvbiB7XG4gICAgd2lkdGg6IDElO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5hZG1pbi1zZXR0aW5ncy1kZXRhaWxzID4gc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5yb2JvdC11c2Vycy10YWJsZSB0aC5yb2JvdC11c2Vycy1wZXJtaXNzaW9uIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG59XG4ucm9ib3QtdXNlcnMtdGFibGUgdGhlYWQgdGgge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAtMXB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbn1cbi5yb2JvdC11c2Vycy10YWJsZSAucm9ib3QtdXNlcnMtZXh0ZXJuYWwtdGl0bGUgPiB0aCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDM5cHg7XG4gICAgei1pbmRleDogMTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgICAucm9ib3QtdXNlcnMtdGFibGUgdGgucm9ib3QtdXNlcnMtcGVybWlzc2lvbiB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxufVxuXG4ucm9ib3QtdXNlcnMtc2VhcmNoIHtcbiAgICBmbGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLWhlaWdodDogMzhweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5yb2JvdC11c2Vycy1zZWFyY2ggPiBpbnB1dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbn1cblxuLmJ0YWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgbWFyZ2luOiAxcHggNHB4IDAgNHB4O1xuICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmJ0YWcgKyAuYnRhZyB7IG1hcmdpbi1sZWZ0OiA2cHg7IH1cbi5idGFnID4gLnN1YiB7IGNvbG9yOiAjODg4OyB9XG4uc3RhZyA+IC5zdWIgeyBjb2xvcjogIzg4ODsgfVxuXG4uYXNzaWduLmFkbWluOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcdTI2NUEnO1xuICAgIHBhZGRpbmctbGVmdDogMnB4O1xufVxuLmFzc2lnbi5wYXJ0bmVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcdTI2NUUnO1xuICAgIHBhZGRpbmctbGVmdDogMnB4O1xufVxuLmFzc2lnbi51c2VyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ucm9ib3QtdXNlci1pZGVudGl0eSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG59XG4ucm9ib3QtdXNlci1pZGVudGl0eSA+IC5yb2JvdC11c2VyLXBpY3R1cmUge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBmbGV4OiAwIDAgMjRweDtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5yb2JvdC11c2VyLWlkZW50aXR5ID4gLnVzZXItbmFtZS10ZXh0IHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cbi5yb2JvdC11c2VyLWlkZW50aXR5ID4gLmFzc2lnbiB7IGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5zdGF0dXMubWFzdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjUwMGJhO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cbi5zdGF0dXMub3duZXIge1xuICAgIGJhY2tncm91bmQ6ICMxOTViOTY7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuLnN0YXR1cy5yZW50ZXIge1xuICAgIGJhY2tncm91bmQ6ICM2MGE2ZTQ7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuLnN0YXR1cy5ub25lIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgIGNvbG9yOiBibGFjaztcbn1cblxuLnN0YXR1cy52aWV3IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjY3NTFmO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cbi5zdGF0dXMubm90aWZ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjY2Q3ZTFkO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cbi5zdGF0dXMuZmxlZXQge1xuICAgIGJhY2tncm91bmQ6ICNjZDQwMWQ7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuLnN0YXR1cy5jbG91ZF9jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kOiAjNTRjOWVjO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cbi5zdGF0dXMubGl2ZSB7XG4gICAgYmFja2dyb3VuZDogIzE5NWI5NjtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi5yb3cuc2FmZSB7fVxuLnJvdy5hdm9pZCB7XG4gICAgYmFja2dyb3VuZDogI2RiMGEwYTtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi5wYXJhbS5yYW5nZSB7XG4gICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICBjb2xvcjogYmxhY2s7XG59XG4ucGFyYW0ub3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgIGNvbG9yOiBibGFjaztcbn1cbi5wYXJhbSA+IC5zdWIgeyBjb2xvcjogIzg4ODsgfVxuXG4udW5zdXBwb3J0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi50aWxlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDE2cHg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnRpbGVzID4gLnNlY3Rpb24geyB3aWR0aDogMTAwJTsgfVxuLnJlc3BvbnNpdmUtdGFibGUtc2VjdGlvbiB7IGRpc3BsYXk6IG5vbmU7IH1cbi50aWxlcyA+IC50aWxlIHtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY4O1xuICAgIHBhZGRpbmc6IDEycHggMTJweCA4cHggMTJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi50aWxlcyA+IC50aWxlLmhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZDogI2Y2NzUxZjtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgLS1jb2xvcjogd2hpdGU7XG59XG4udGlsZXMgPiAudGlsZS5kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xufVxuLnRpbGVzID4gLnRpbGUgPiBzcGFuIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLnRpbGVzID4gLnRpbGUgPiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgbWF4LXdpZHRoOiAxMjhweDtcbn1cbi50aWxlcy5tZW51IHtcbiAgICBmbGV4OiAxO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udGlsZXMubWVudSA+IC50aWxlID4gaW1nIHsgZmlsdGVyOiBzYXR1cmF0ZSgwJSkgYnJpZ2h0bmVzcygxMjAlKTsgfVxuLnRpbGVzLm1lbnUgPiAudGlsZTpob3ZlciA+IGltZyB7IGZpbHRlcjogc2F0dXJhdGUoMCUpOyB9XG5cbi8qIE1pc3Npb24gUm91dGVzICYgUGxhbm5lciAqL1xuLmctbWlzc2lvbi1yb3V0ZXMge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLmhhbmRsZS1tYWluIGNpcmNsZSB7XG4gICAgdHJhbnNpdGlvbjogciAwLjE1cyBlYXNlLCBzdHJva2Utd2lkdGggMC4xNXMgZWFzZTtcbn1cbi5oYW5kbGUtYnJhbmNoIGNpcmNsZSB7XG4gICAgdHJhbnNpdGlvbjogciAwLjE1cyBlYXNlLCBzdHJva2Utd2lkdGggMC4xNXMgZWFzZTtcbn1cblxuLmhhbmRsZS1hbmNob3IgY2lyY2xlIHtcbiAgICB0cmFuc2l0aW9uOiByIDAuMTVzIGVhc2UsIHN0cm9rZS13aWR0aCAwLjE1cyBlYXNlO1xufVxuIiwgIi5tZWRpdW0ge1xuICAgICYgI2hvbWUgPiBhIHsgbWF4LXdpZHRoOiA5MHB4OyB9XG59XG5cbmh0bWwubWVkaXVtOm5vdCguc21hbGwpIHtcbiAgICAtLXNldHRpbmdzLXdpZHRoOiBjbGFtcCgzMDBweCwgMzR2dywgNDAwcHgpO1xuXG4gICAgJiAjc2V0dGluZ3Mge1xuICAgICAgICB3aWR0aDogdmFyKC0tc2V0dGluZ3Mtd2lkdGgpO1xuICAgIH1cblxuICAgICYgI3NldHRpbmdzICsgI21haW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tc2V0dGluZ3Mtd2lkdGgpO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogVGhlIHNldHRpbmdzIHJhaWwgbGVhdmVzIHRoZSBjb250ZW50IHRvb2xiYXIgbmFycm93ZXIgdGhhbiBpdHMgdGFicyBhdFxuICAgICAqIHRoZSBsb3dlciBlbmQgb2YgdGhlIHRhYmxldC1sYW5kc2NhcGUgcmFuZ2UuICBLZWVwIHRoZSB0YWIgc3RyaXAgYXQgaXRzXG4gICAgICogbmF0dXJhbCB3aWR0aCBzbyBGbGV4Ym94IG1vdmVzIHRoZSBhY3Rpb24gZ3JvdXAgb250byB0aGUgbmV4dCBsaW5lXG4gICAgICogaW5zdGVhZCBvZiBzaWxlbnRseSBjbGlwcGluZyB0aGUgbGFzdCB0YWIgYmVoaW5kIHRob3NlIGFjdGlvbnMuXG4gICAgICovXG4gICAgJiAjbWFpbiA+IC50YWJzZXQge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgJiAjbWFpbiA+IC50YWJzZXQgPiAudGFic2V0LXRhYnMge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxufVxuXG5odG1sLnNtYWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuLnNtYWxsIHtcbiAgICAtLW1vYmlsZS1uYXYtaGVpZ2h0OiBjYWxjKDY4cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KSk7XG5cbiAgICAmICNoZWFkZXIge1xuICAgICAgICBnYXA6IDRweDtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IDZweDtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbG9nbyxcbiAgICAmICNoZWFkZXJfdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgI2hlYWRlcl9tb2Qge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiA0cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJiAjaGVhZGVyX21vZCA+ICoge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJiAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1idG4ge1xuICAgICAgICBmbGV4OiAxIDEgNDIlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cblxuICAgICYgI2hlYWRlcl9tb2Q6aGFzKD4gOm50aC1jaGlsZCgyKSkgLmNvbXBhbnktc2VsZWN0b3ItYnRuIHtcbiAgICAgICAgZmxleDogMCAxIDM2JTtcbiAgICAgICAgbWF4LXdpZHRoOiAzNiU7XG4gICAgfVxuXG4gICAgJiAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1jcnVtYnMge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiA2cHggNHB4O1xuICAgICAgICBnYXA6IDJweDtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbW9kIC5jb21wYW55LXNlbGVjdG9yLWNydW1icyA+IC5saW5rLFxuICAgICYgI2hlYWRlcl9tb2QgLmNvbXBhbnktc2VsZWN0b3ItY3J1bWJzID4gLmNvbXBhbnktc2VsZWN0b3Itc2VwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbW9kIC5jb21wYW55LXNlbGVjdG9yLWN1cnJlbnQsXG4gICAgJiAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1jdXJyZW50ID4gLmZsZXgsXG4gICAgJiAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1jdXJyZW50ID4gLmZsZXggPiBzcGFuIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cblxuICAgICYgI2hlYWRlcl9tb2QgLmNvbXBhbnktc2VsZWN0b3ItY3VycmVudCA+IC5mbGV4IHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgJiAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1idG4gPiBidXR0b24ge1xuICAgICAgICBmbGV4OiAwIDAgMzhweDtcbiAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiA2cHg7XG4gICAgfVxuXG4gICAgJiAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1idG4gPiBidXR0b24gPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbW9kIC5jb21wYW55LXNlbGVjdG9yLWJ0bi5oZWFkZXItY29udGV4dC10cmlnZ2VyIHtcbiAgICAgICAgZmxleDogMCAwIDQwcHg7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgICAgIG1heC13aWR0aDogNDBweDtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbW9kIC5jb21wYW55LXNlbGVjdG9yLWJ0bi5oZWFkZXItY29udGV4dC10cmlnZ2VyIC5jb21wYW55LXNlbGVjdG9yLWNydW1icyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1idG4uaGVhZGVyLWNvbnRleHQtdHJpZ2dlciA+IGJ1dHRvbiB7XG4gICAgICAgIGZsZXg6IDAgMCA0MHB4O1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbW9kID4gc2VsZWN0LmhlYWRlci1wcmltYXJ5LXNlbGVjdCB7XG4gICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbW9kID4gc2VsZWN0LmhlYWRlci1wYXJlbnQtc2VsZWN0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmICNoZWFkZXJfbW9kIC5oZWFkZXItYWN0aW9ucyB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmIC5kZXZpY2UtY2xhc3MtdGFicyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAjaGVhZGVyX21vZCA+IHNlbGVjdCB7XG4gICAgICAgIGZsZXg6IDEgMSA2MCU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cblxuICAgICYgI2hlYWRlcl9pZCxcbiAgICAmICNoZWFkZXJfaWQuc21hbGwge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBnYXA6IDRweDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIH1cblxuICAgICYgI2hlYWRlcl9pZCA+IGJ1dHRvbiA+IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgI2hlYWRlcl9pZCA+IGJ1dHRvbiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgIH1cblxuICAgICYgI2hlYWRlcl9pZCA+IGJ1dHRvbiA+IGltZyB7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgJiAjbW9kZXMge1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogdmFyKC0tbW9iaWxlLW5hdi1oZWlnaHQpO1xuICAgICAgICBwYWRkaW5nOiAwIDRweCBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGdhcDogMnB4O1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWRlZGYwO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgIH1cblxuICAgICYgI21vZGVzID4gW2hpZGRlbl0sXG4gICAgJiAubW9kZS1vdmVyZmxvdy1tZW51W2hpZGRlbl0sXG4gICAgJiAubW9kZS1vdmVyZmxvdy1tZW51ID4gW2hpZGRlbl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiAjbW9kZXMgPiBhLFxuICAgICYgI21vZGVzID4gLm1vZGUtbW9yZSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDRweCAycHggMnB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICAgIGh5cGhlbnM6IGF1dG87XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1O1xuICAgIH1cblxuICAgICYgI21vZGVzID4gLm1vZGUtbW9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMnB4O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogI2MyYzJjMjtcbiAgICAgICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAmICNtb2RlcyA+IC5tb2RlLW1vcmUuY29udGFpbnMtYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICNjMmMyYzI7XG4gICAgfVxuXG4gICAgJiAjbW9kZXMgPiAubW9kZS1tb3JlLFxuICAgICYgI21vZGVzID4gLm1vZGUtbW9yZS5jb250YWlucy1hY3RpdmUge1xuICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAjbW9kZXMgPiBhOmxpbmssXG4gICAgJiAjbW9kZXMgPiBhOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogI2MyYzJjMjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICYgI21vZGVzID4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjYTFhMWExO1xuICAgIH1cblxuICAgICYgI21vZGVzID4gYS5hY3RpdmU6bGluayxcbiAgICAmICNtb2RlcyA+IGEuYWN0aXZlOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogIzY1YzE1MTtcbiAgICB9XG5cbiAgICAmIC5tb2RlLW1vcmUtaWNvbiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGZsZXg6IDAgMCAzMnB4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgJiAjbW9kZXMgPiBhID4gaW1nIHtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgZmxleDogMCAwIDMycHg7XG4gICAgfVxuXG4gICAgJiAubW9kZS1vdmVyZmxvdy1zY3JpbSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgaW5zZXQ6IDAgMCB2YXIoLS1tb2JpbGUtbmF2LWhlaWdodCk7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgfVxuXG4gICAgJiAubW9kZS1vdmVyZmxvdy1tZW51IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogOHB4O1xuICAgICAgICBib3R0b206IGNhbGModmFyKC0tbW9iaWxlLW5hdi1oZWlnaHQpICsgOHB4KTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IG1pbigzMjBweCwgY2FsYygxMDB2dyAtIDE2cHgpKTtcbiAgICAgICAgbWF4LWhlaWdodDogbWluKDYwZHZoLCA0MjBweCk7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiA0cHg7XG4gICAgICAgIG92ZXJmbG93LXg6IGNsaXA7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZjA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6ICMxNTE3MjUyNiAwIDEwcHggMjRweCwgIzE1MTcyNTIwIDAgMnB4IDhweDtcbiAgICAgICAgei1pbmRleDogMTAwMTtcbiAgICB9XG5cbiAgICAmIC5tb2RlLW92ZXJmbG93LW1lbnUgPiBhIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MHB4IG1pbm1heCgwLCAxZnIpO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgY29sb3I6ICM1MjU0NjE7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgIH1cblxuICAgICYgLm1vZGUtb3ZlcmZsb3ctbWVudSA+IGE6bGluayxcbiAgICAmIC5tb2RlLW92ZXJmbG93LW1lbnUgPiBhOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogIzUyNTQ2MTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICYgLm1vZGUtb3ZlcmZsb3ctbWVudSA+IGE6aG92ZXIsXG4gICAgJiAubW9kZS1vdmVyZmxvdy1tZW51ID4gYTpmb2N1cy12aXNpYmxlLFxuICAgICYgLm1vZGUtb3ZlcmZsb3ctbWVudSA+IGEuYWN0aXZlLFxuICAgICYgLm1vZGUtb3ZlcmZsb3ctbWVudSA+IGEuYWN0aXZlOmxpbmssXG4gICAgJiAubW9kZS1vdmVyZmxvdy1tZW51ID4gYS5hY3RpdmU6dmlzaXRlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogIzY1YzE1MTtcbiAgICB9XG5cbiAgICAmIC5tb2RlLW92ZXJmbG93LW1lbnUgPiBhID4gaW1nIHtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgZmlsdGVyOiBzYXR1cmF0ZSgwJSkgYnJpZ2h0bmVzcygxMjAlKTtcbiAgICB9XG5cbiAgICAmIC5tb2RlLW92ZXJmbG93LW1lbnUgPiBhOmhvdmVyID4gaW1nLFxuICAgICYgLm1vZGUtb3ZlcmZsb3ctbWVudSA+IGE6Zm9jdXMtdmlzaWJsZSA+IGltZyxcbiAgICAmIC5tb2RlLW92ZXJmbG93LW1lbnUgPiBhLmFjdGl2ZSA+IGltZyB7XG4gICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAmICNtb2RlcyAuc3RpY2t5LWJ0biB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDRweCAycHg7XG4gICAgfVxuXG4gICAgJiAjbW9kZXMgPiBkaXZbc3R5bGUqPVwiZmxleDogMVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiBib2R5LFxuICAgICYgI3BhZ2Uge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgICB9XG5cbiAgICAmICNwYWdlID4gbWFpbiB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDBkdmg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLW1vYmlsZS1uYXYtaGVpZ2h0KTtcbiAgICB9XG5cbiAgICAmICNtYWluIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gNTBweCAtIHZhcigtLW1vYmlsZS1uYXYtaGVpZ2h0KSAtIDIwcHgpO1xuICAgIH1cblxuICAgICYgI3BhZ2UgPiBtYWluOmhhcyguZmllbGQtd29ya3NwYWNlLXZpZXcpIHtcbiAgICAgICAgaGVpZ2h0OiAxMDBkdmg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmICNtYWluLmZpZWxkLXdvcmtzcGFjZS12aWV3IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJiAuZmllbGQtd29ya3NwYWNlLXZpZXcgLmZpZWxkLW1hcC10b29scyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmIC5maWVsZC13b3Jrc3BhY2Utc3RhZ2Uge1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtd29ya3NwYWNlLXRvb2xiYXIge1xuICAgICAgICBtaW4taGVpZ2h0OiA1MnB4O1xuICAgICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICAgIGdhcDogNnB4O1xuICAgIH1cblxuICAgICYgLmZpZWxkLXdvcmtzcGFjZS10aXRsZSB7XG4gICAgICAgIGdhcDogN3B4O1xuICAgICAgICBmb250LXNpemU6IDAuOTJlbTtcbiAgICB9XG5cbiAgICAmIC5maWVsZC13b3Jrc3BhY2UtbWFyayB7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGZsZXgtYmFzaXM6IDMycHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB9XG5cbiAgICAmIC5maWVsZC13b3Jrc3BhY2UtbWFyayA+IGltZyB7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtd29ya3NwYWNlLWFjdGlvbnMgeyBnYXA6IDRweDsgfVxuXG4gICAgJiAuZmllbGQtd29ya3NwYWNlLWFjdGlvbnMgPiA6aXMoYnV0dG9uLCBhKSB7XG4gICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM4cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB9XG5cbiAgICAmIC5maWVsZC13b3Jrc3BhY2UtYWN0aW9ucyA+IC5maWVsZC13b3Jrc3BhY2Utc2F2ZSB7XG4gICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICYgLmZpZWxkLXdvcmtzcGFjZS1hY3Rpb24tbGFiZWwgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAmIC5wb2ludC1lZGl0b3ItY2xvc2UtZGlhbG9nIC5mb290ZXIgPiBidXR0b24ge1xuICAgICAgICBtaW4taGVpZ2h0OiA0MnB4O1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB9XG5cbiAgICAmICNzZXR0aW5ncyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiBjYWxjKHZhcigtLWhwLWhlYWRlci1oZWlnaHQsIDQzcHgpICsgNThweCk7XG4gICAgICAgIGJvdHRvbTogdmFyKC0tbW9iaWxlLW5hdi1oZWlnaHQpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgICB6LWluZGV4OiA5O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBnYXA6IDFlbTtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cblxuICAgICYgI3NldHRpbmdzICsgI21haW4geyBtYXJnaW4tbGVmdDogMDsgfVxuICAgICYgI3NldHRpbmdzIHRhYmxlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYgI3NldHRpbmdzIHRoZWFkID4gdHIgPiB0aCB7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgJiAjc2V0dGluZ3MgPiAucGljdHVyZSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICYgI3BhZ2UgPiBtYWluOmhhcygubW9iaWxlLXNldHRpbmdzLWFjdGl2YXRpb24pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmICNwYWdlID4gbWFpbjpoYXMoLm1vYmlsZS1zZXR0aW5ncy1hY3RpdmF0aW9uKSA+ICNtYWluIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgb3JkZXI6IDA7XG4gICAgfVxuXG4gICAgJiAjcGFnZSA+IG1haW46aGFzKC5tb2JpbGUtc2V0dGluZ3MtYWN0aXZhdGlvbikgPiAjc2V0dGluZ3Mge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYgLnRhYnNldCB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGdhcDogNHB4O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQgPiAqIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIH1cblxuICAgICYgLnRhYnNldC10YWJzLFxuICAgICYgLnRhYnNldC1hY3Rpb25zIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogNnB4O1xuICAgIH1cblxuICAgICYgLnRhYnNldC10YWJzIHtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvci1pbmxpbmU6IGNvbnRhaW47XG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQtdGFiczppcyhcbiAgICAgICAgLmZpZWxkLXZpZXctdGFicyxcbiAgICAgICAgLm1pc3Npb24tdmlldy10YWJzLFxuICAgICAgICAuYWRtaW4tc2VjdGlvbi10YWJzLFxuICAgICAgICAudXNlci1kZXRhaWwtdGFicyxcbiAgICAgICAgLnJvYm90LWRldGFpbC10YWJzLFxuICAgICAgICAuaW1wbGVtZW50LWRldGFpbC10YWJzXG4gICAgKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJiAudGFic2V0LXRhYnMuZGV2aWNlLWNsYXNzLXRhYnMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgLnRhYnNldC1hY3Rpb25zIHtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMWYxZjM7XG4gICAgfVxuXG4gICAgJiAudGFic2V0ID4gLnRhYnNldC1wcmltYXJ5LWFjdGlvbnMge1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cblxuICAgICYgLnRhYnNldDpoYXMoPiAudGFic2V0LXByaW1hcnktYWN0aW9ucykgPiAudGFic2V0LXRhYnMge1xuICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQgPiBkaXY6bm90KC50YWIpOmVtcHR5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQgPiAudGFiLFxuICAgICYgLnRhYnNldC10YWJzID4gLnRhYiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgICYgLnRhYnNldC10YWJzOmlzKFxuICAgICAgICAuZmllbGQtdmlldy10YWJzLFxuICAgICAgICAubWlzc2lvbi12aWV3LXRhYnMsXG4gICAgICAgIC5hZG1pbi1zZWN0aW9uLXRhYnMsXG4gICAgICAgIC51c2VyLWRldGFpbC10YWJzLFxuICAgICAgICAucm9ib3QtZGV0YWlsLXRhYnMsXG4gICAgICAgIC5pbXBsZW1lbnQtZGV0YWlsLXRhYnNcbiAgICApID4gLnRhYjpub3QoLnRhYi1vdmVyZmxvdykge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB9XG5cbiAgICAmIC5jb21wYWN0LXRhYi1kaXJlY3QgPiAuY29tcGFjdC10YWItbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cblxuICAgICYgLnRhYnNldC10YWJzID4gYnV0dG9uLnRhYiB7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBmaWx0ZXI6IG5vbmU7XG4gICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgJiAudGFic2V0LXRhYnMgPiBidXR0b24udGFiOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmODtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJiAudGFic2V0LXRhYnMgPiBidXR0b24udGFiLmFjdGl2ZSxcbiAgICAmIC50YWJzZXQtdGFicyA+IGJ1dHRvbi50YWIuYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRmMDtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQtdGFicyA+IC50YWItb3ZlcmZsb3cge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIG1pbi13aWR0aDogNjRweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogNHB4O1xuICAgICAgICBjb2xvcjogIzUyNTQ2MTtcbiAgICB9XG5cbiAgICAmIC50YWItb3ZlcmZsb3ctc2NyaW0ge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGluc2V0OiAwIDAgdmFyKC0tbW9iaWxlLW5hdi1oZWlnaHQpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZDogIzE1MTcyNTIyO1xuICAgIH1cblxuICAgICYgLnRhYi1vdmVyZmxvdy1tZW51IHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDEwNHB4O1xuICAgICAgICByaWdodDogOHB4O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB3aWR0aDogbWluKDI4MHB4LCBjYWxjKDEwMHZ3IC0gMTZweCkpO1xuICAgICAgICBtYXgtaGVpZ2h0OiBtaW4oNjBkdmgsIDQyMHB4KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwO1xuICAgICAgICBwYWRkaW5nOiA2cHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkN2Q4ZGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6ICMxNTE3MjUyNiAwIDEycHggMjRweDtcbiAgICB9XG5cbiAgICAmIC50YWItb3ZlcmZsb3ctbWVudVtoaWRkZW5dLFxuICAgICYgLnRhYi1vdmVyZmxvdy1zY3JpbVtoaWRkZW5dLFxuICAgICYgLmNvbXBhY3QtdGFiLWRpcmVjdFtoaWRkZW5dLFxuICAgICYgLmNvbXBhY3QtdGFiLW1lbnUtaXRlbVtoaWRkZW5dLFxuICAgICYgLnRhYnNldC10YWJzID4gLnRhYi1vdmVyZmxvd1toaWRkZW5dIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYgLnRhYi1vdmVyZmxvdy1tZW51ID4gYnV0dG9uLnRhYiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICM1MjU0NjE7XG4gICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmIC50YWItb3ZlcmZsb3ctbWVudSAuY29tcGFjdC10YWItbGFiZWwge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgfVxuXG4gICAgJiAudGFiLW92ZXJmbG93LW1lbnUgPiBidXR0b24udGFiOmlzKDpob3ZlciwgOmZvY3VzLXZpc2libGUsIC5hY3RpdmUpIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjNjVjMTUxO1xuICAgIH1cblxuICAgICYgLnRhYnNldCA+IC50YWIgKyAudGFiLFxuICAgICYgLnRhYnNldC10YWJzID4gLnRhYiArIC50YWIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQgPiA6aXMoYnV0dG9uLCBsYWJlbCwgaW5wdXQsIHNlbGVjdCksXG4gICAgJiAudGFic2V0LXRhYnMgPiA6aXMoYnV0dG9uLCBsYWJlbCwgaW5wdXQsIHNlbGVjdCksXG4gICAgJiAudGFic2V0LWFjdGlvbnMgPiA6aXMoYnV0dG9uLCBsYWJlbCwgaW5wdXQsIHNlbGVjdCkge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQtYWN0aW9ucyA+IGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA1cHg7XG4gICAgfVxuXG4gICAgJiAudGFic2V0LWFjdGlvbnMgPiBsYWJlbCA+IGlucHV0IHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJiAudGFic2V0ID4gLnRhYi5hY3RpdmUsXG4gICAgJiAudGFic2V0LXRhYnMgPiAudGFiLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTRweDtcbiAgICB9XG5cbiAgICAmIC50YWJzZXQuY29uZmlndXJlID4gLnRhYnNldC10YWJzID4gLnRhYi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cblxuICAgICYgLnRhYnNldCA+IGltZy5waWN0dXJlLFxuICAgICYgLnRhYnNldC10YWJzID4gaW1nLnBpY3R1cmUgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAmIC52aWV3LXN3aXRjaCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXg6IDAgMCA0NHB4O1xuICAgICAgICBnYXA6IDA7XG4gICAgICAgIGNvbG9yOiAjNTI1NDYxO1xuICAgIH1cblxuICAgICYgLnZpZXctc3dpdGNoID4gLnZpZXctc3dpdGNoLWljb24ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU2Vnb2UgVUkgU3ltYm9sXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgJiAudmlldy1zd2l0Y2ggPiAudmlldy1zd2l0Y2gtbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiAudXNlci1uYW1lLWNlbGwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJiAudXNlci1uYW1lLWNlbGwgPiBpbWcge1xuICAgICAgICBmbGV4OiAwIDAgMjRweDtcbiAgICB9XG5cbiAgICAmIC51c2VyLW5hbWUtY2VsbCA+IC5hc3NpZ24ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICB9XG5cbiAgICAmIC51c2VyLW5hbWUtY2VsbCA+IC51c2VyLW5hbWUtdGV4dCB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgfVxuXG4gICAgJiAudXNlci10aWxlLW5hbWUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogNHB4O1xuICAgIH1cblxuICAgICYgLnVzZXItdGlsZS1uYW1lID4gLmFzc2lnbiB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICYgLnVzZXItdGlsZS1uYW1lID4gLnVzZXItbmFtZS10ZXh0IHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICB9XG5cbiAgICAmIC5maWVsZC12aWV3LXRhYnMgPiA6aXMoLmNvbXBhY3QtdGFiLWRpcmVjdCwgLnRhYi1vdmVyZmxvdykge1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmIC50YWItYWN0aW9uLWNyZWF0ZSB7XG4gICAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICB9XG5cbiAgICAmICNtYWluOm5vdCguZmllbGQtd29ya3NwYWNlLXZpZXcpID4gLnRhYnNldCB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogLTEwcHggLTEwcHggMDtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IDEwcHg7XG4gICAgfVxuXG4gICAgJiAjbWFpbiA+IC50YWJzZXQgKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAmIGZvcm0gPiAubWFpbiA+IC50YWJzZXQge1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB0b3A6IC0xNnB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJiAudGlsZXMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgJiAudGlsZXMubWVudSB7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICAgICAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gICAgfVxuXG4gICAgJiAudGlsZXMubWVudSA+IC50aWxlIHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgfVxuXG4gICAgJiAudGlsZXMgPiAuc2VjdGlvbiB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgfVxuXG4gICAgJiAudGlsZXMgPiAudGlsZSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggOHB4IDhweDtcbiAgICB9XG5cbiAgICAmIC50aWxlcyA+IC50aWxlID4gaW1nIHtcbiAgICAgICAgd2lkdGg6IG1pbig3MnB4LCAxMDAlKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIH1cblxuICAgICYgLnRpbGVzID4gLnRpbGUgPiBzcGFuIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmIC5mbGV4IHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIH1cblxuICAgICYgI2RldmljZSB7XG4gICAgICAgIGJvdHRvbTogdmFyKC0tbW9iaWxlLW5hdi1oZWlnaHQpO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAmICNzdmdtYXBfcm9vdDpub3QoLmZ1bGwtc2NyZWVuKSB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gODBweCAtIHZhcigtLW1vYmlsZS1uYXYtaGVpZ2h0KSk7XG4gICAgfVxuXG4gICAgJiAuZGV2aWNlcy10YWJsZS1zY3JvbGwsXG4gICAgJiAucm9ib3QtdXNlcnMtdGFibGUtc2Nyb2xsIHtcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtbWFpbixcbiAgICAmIC5taXNzaW9uLW1haW4ge1xuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMGR2aCAtIDUwcHggLSB2YXIoLS1tb2JpbGUtbmF2LWhlaWdodCkgLSAyMHB4KTtcbiAgICB9XG5cbiAgICAmIC5maWVsZC12aWV3LXRhYnMsXG4gICAgJiAubWlzc2lvbi12aWV3LXRhYnMsXG4gICAgJiAucm9ib3QtZGV0YWlsLXRhYnMge1xuICAgICAgICBzY3JvbGwtcGFkZGluZy1pbmxpbmU6IDEwcHg7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtbWFwLXZpZXcgLmZpZWxkLW1hcC10b29scyxcbiAgICAmIC5taXNzaW9uLW1hcC12aWV3IC5taXNzaW9uLW1hcC10b29scyB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICAgIGNvbnRhaW46IGlubGluZS1zaXplO1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwsXG4gICAgJiAubWlzc2lvbi1tYXAtdG9vbHMtc2Nyb2xsIHtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yLWlubGluZTogY29udGFpbjtcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIsXG4gICAgJiAubWlzc2lvbi1tYXAtdG9vbHMtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbCxcbiAgICAmIC5taXNzaW9uLW1hcC10b29scy1zY3JvbGwge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDZweDtcbiAgICAgICAgY29udGFpbjogaW5saW5lLXNpemU7XG4gICAgfVxuXG4gICAgJiA6aXMoLmZpZWxkLW1hcC1wcmltYXJ5LWFjdGlvbnMsIC5taXNzaW9uLW1hcC1wcmltYXJ5LWFjdGlvbnMpIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogNHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZWRlZGYwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogLTZweCAwIDhweCAjZmZmZmZmZDk7XG4gICAgfVxuXG4gICAgJiA6aXMoLmZpZWxkLW1hcC1wcmltYXJ5LWFjdGlvbnMsIC5taXNzaW9uLW1hcC1wcmltYXJ5LWFjdGlvbnMpID4gYnV0dG9uID4gc3Bhbjpub3QoLmJ1dHRvbi1pY29uKTpub3QoLmZpZWxkLWFwcGx5LWljb24pIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiAqLFxuICAgICYgLm1pc3Npb24tbWFwLXRvb2xzLXNjcm9sbCA+ICoge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gYnV0dG9uLFxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiA6aXMoLmNvdmVyYWdlLXRvZ2dsZSwgLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSksXG4gICAgJiAuZmllbGQtbWFwLXByaW1hcnktYWN0aW9ucyA+IGJ1dHRvbixcbiAgICAmIC5taXNzaW9uLW1hcC10b29scy1zY3JvbGwgPiBidXR0b24sXG4gICAgJiAubWlzc2lvbi1tYXAtdG9vbHMtc2Nyb2xsID4gOmlzKC5jb3ZlcmFnZS10b2dnbGUsIC5wYXRoLWFuaW1hdGlvbi10b2dnbGUpLFxuICAgICYgLm1pc3Npb24tbWFwLXByaW1hcnktYWN0aW9ucyA+IGJ1dHRvbixcbiAgICAmIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gOmlzKC5jb3ZlcmFnZS10b2dnbGUsIC5wYXRoLWFuaW1hdGlvbi10b2dnbGUpID4gYnV0dG9uIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICBmbGV4OiAwIDAgNDRweDtcbiAgICB9XG5cbiAgICAmIDppcyguZmllbGQtbWFwLXByaW1hcnktYWN0aW9ucywgLm1pc3Npb24tbWFwLXByaW1hcnktYWN0aW9ucykgPiBidXR0b24ge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgICAgbWF4LWhlaWdodDogNDBweDtcbiAgICAgICAgZmxleDogMCAwIDQwcHg7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbCA+IDppcyguY292ZXJhZ2UtdG9nZ2xlLCAucGF0aC1hbmltYXRpb24tdG9nZ2xlKSA+IGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA0NHB4O1xuICAgIH1cblxuICAgIC8qIFdyYXBwZXItYmFzZWQgdG9vbHMgbXVzdCB1c2UgdGhlIHNhbWUgdG91Y2ggYm94IGFuZCBpY29uIGNlbnRlcmluZyBhcyBkaXJlY3QgYnV0dG9ucy4gKi9cbiAgICAmIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gYnV0dG9uOm5vdCgudmlldy1zd2l0Y2gpLFxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiA6aXMoLmNvdmVyYWdlLXRvZ2dsZSwgLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSksXG4gICAgJiAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbCA+IDppcyguY292ZXJhZ2UtdG9nZ2xlLCAucGF0aC1hbmltYXRpb24tdG9nZ2xlKSA+IGJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmIC5maWVsZC1tYXAtdG9vbHMtc2Nyb2xsID4gYnV0dG9uOm5vdCgudmlldy1zd2l0Y2gpLFxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiA6aXMoLmNvdmVyYWdlLXRvZ2dsZSwgLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSksXG4gICAgJiAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbCA+IDppcyguY292ZXJhZ2UtdG9nZ2xlLCAucGF0aC1hbmltYXRpb24tdG9nZ2xlKSA+IGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICYgLmZpZWxkLW1hcC10b29scy1zY3JvbGwgPiBidXR0b246bm90KC52aWV3LXN3aXRjaCkgPiBpbWcsXG4gICAgJiAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbCA+IDppcyguY292ZXJhZ2UtdG9nZ2xlLCAucGF0aC1hbmltYXRpb24tdG9nZ2xlKSA+IGJ1dHRvbiA+IGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJiA6aXMoLmZpZWxkLW1hcC1wcmltYXJ5LWFjdGlvbnMsIC5taXNzaW9uLW1hcC1wcmltYXJ5LWFjdGlvbnMpID4gYnV0dG9uID4gLmZpZWxkLWFwcGx5LWljb24ge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgJiAuZmllbGQtbWFwLXRvb2xzLXNjcm9sbCA+IGRpdltzdHlsZSo9XCJmbGV4OiAxXCJdLFxuICAgICYgLm1pc3Npb24tbWFwLXRvb2xzLXNjcm9sbCA+IGRpdltzdHlsZSo9XCJmbGV4OiAxXCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5maWVsZC1wYW5lbC12aWV3IC5maWVsZC1tYXAtdG9vbHMsXG4gICAgJiAubWlzc2lvbi1wYW5lbC12aWV3IC5taXNzaW9uLW1hcC10b29scyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmIDppcyguZmllbGQtcGFuZWwtdmlldywgLm1pc3Npb24tcGFuZWwtdmlldykgPiAudGFic2V0LFxuICAgICYgLnRhYnNldDpoYXMoPiAudGFic2V0LXRhYnM6aXMoLnVzZXItZGV0YWlsLXRhYnMsIC5pbXBsZW1lbnQtZGV0YWlsLXRhYnMpKSxcbiAgICAmIC50YWJzZXQ6aGFzKD4gLnRhYnNldC10YWJzLnJvYm90LWRldGFpbC10YWJzKTpub3QoOmhhcygucm9ib3QtdXNlcnMtc2VhcmNoKSkge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmIDppcyguZmllbGQtcGFuZWwtdmlldywgLm1pc3Npb24tcGFuZWwtdmlldykgPiAudGFic2V0ID4gLnRhYnNldC10YWJzLFxuICAgICYgLnRhYnNldDpoYXMoPiAudGFic2V0LXRhYnM6aXMoLnVzZXItZGV0YWlsLXRhYnMsIC5pbXBsZW1lbnQtZGV0YWlsLXRhYnMpKSA+IC50YWJzZXQtdGFicyxcbiAgICAmIC50YWJzZXQ6aGFzKD4gLnRhYnNldC10YWJzLnJvYm90LWRldGFpbC10YWJzKTpub3QoOmhhcygucm9ib3QtdXNlcnMtc2VhcmNoKSkgPiAudGFic2V0LXRhYnMge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB9XG5cbiAgICAmIDppcyguZmllbGQtcGFuZWwtdmlldywgLm1pc3Npb24tcGFuZWwtdmlldykgPiAudGFic2V0ID4gLnRhYnNldC1hY3Rpb25zLFxuICAgICYgLnRhYnNldDpoYXMoPiAudGFic2V0LXRhYnM6aXMoLnVzZXItZGV0YWlsLXRhYnMsIC5pbXBsZW1lbnQtZGV0YWlsLXRhYnMpKSA+IC50YWJzZXQtYWN0aW9ucyxcbiAgICAmIC50YWJzZXQ6aGFzKD4gLnRhYnNldC10YWJzLnJvYm90LWRldGFpbC10YWJzKTpub3QoOmhhcygucm9ib3QtdXNlcnMtc2VhcmNoKSkgPiAudGFic2V0LWFjdGlvbnMge1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuXG4gICAgJiA6aXMoLmNvdmVyYWdlLXRvZ2dsZSwgLnBhdGgtYW5pbWF0aW9uLXRvZ2dsZSkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmIC5jb3ZlcmFnZS1kaWFsb2cge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHdpZHRoOiBtaW4oMzIwcHgsIGNhbGMoMTAwdncgLSAxNnB4KSk7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LWhlaWdodDogbWluKDYwZHZoLCA0MjBweCk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDEwMDI7XG4gICAgfVxuXG4gICAgJiAubW9iaWxlLWZpZWxkLXBhbmVsLFxuICAgICYgLm1vYmlsZS1taXNzaW9uLXBhbmVsIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDEycHg7XG4gICAgfVxuXG4gICAgJiAubW9iaWxlLWZpZWxkLXBhbmVsID4gKixcbiAgICAmIC5tb2JpbGUtbWlzc2lvbi1wYW5lbCA+ICoge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIDppcygubW9iaWxlLWZpZWxkLXBhbmVsLCAubW9iaWxlLW1pc3Npb24tcGFuZWwpIHRhYmxlIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJiAuZmllbGQtbWFwLXN0YWdlLFxuICAgICYgLm1pc3Npb24tbWFwLXN0YWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiBtYXgoNDIwcHgsIDY1ZHZoKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjZmNmY4O1xuICAgIH1cblxuICAgICYgOmlzKC5maWVsZC1tYXAtc3RhZ2UsIC5taXNzaW9uLW1hcC1zdGFnZSkgI3N2Z21hcF9yb290Om5vdCguZnVsbC1zY3JlZW4pIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICYgOmlzKC5maWVsZC1tYXAtc3RhZ2UsIC5taXNzaW9uLW1hcC1zdGFnZSkgPiBjYW52YXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmIDppcyguZmllbGQtbWFwLXN0YWdlLCAubWlzc2lvbi1tYXAtc3RhZ2UpICNtYXBfem9vbSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICByaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAmIDppcyguZmllbGQtbWFwLXN0YWdlLCAubWlzc2lvbi1tYXAtc3RhZ2UpICNtYXBfYXR0cmlidXRpb24ge1xuICAgICAgICByaWdodDogOHB4O1xuICAgICAgICBib3R0b206IDhweDtcbiAgICB9XG5cbiAgICAmIDppcyguZmllbGQtbWFwLXN0YWdlLCAubWlzc2lvbi1tYXAtc3RhZ2UpICNkZXZpY2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmIC5wYXRoLW5vLXNlbGVjdGlvbiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDEycHg7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAjY2ZkMWQ4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmIDppcygucGF0aC1wb2ludHMtc2Nyb2xsLCAuem9uZS1wb2ludHMtc2Nyb2xsKSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmIC5wYXRoLXBvaW50cy1zY3JvbGwudmlydHVhbGl6ZWQge1xuICAgICAgICBoZWlnaHQ6IG1pbig2MHZoLCA2NDBweCk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IG1pbigyNDBweCwgNjB2aCk7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiAucGF0aC1wb2ludHMtbGlzdC5ub2VkaXQgLmJ0YWcsXG4gICAgJiAucGF0aC1wb2ludHMtbGlzdC5ub2VkaXQgLm9mZnNldHMge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAmIDppcygucGF0aC1wb2ludHMtdGFibGUsIC56b25lLXBvaW50cy10YWJsZSwgLnpvbmUtbGlzdC10YWJsZSkge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgfVxuXG4gICAgJiA6aXMoLnBhdGgtcG9pbnRzLXRhYmxlLCAuem9uZS1wb2ludHMtdGFibGUsIC56b25lLWxpc3QtdGFibGUpIGNvbGdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmIDppcygucGF0aC1wb2ludHMtdGFibGUsIC56b25lLXBvaW50cy10YWJsZSwgLnpvbmUtbGlzdC10YWJsZSkgPiB0Ym9keSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJiA6aXMoLnBhdGgtcG9pbnRzLXRhYmxlLCAuem9uZS1wb2ludHMtdGFibGUpID4gdGJvZHkgPiB0ciB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI4cHggbWlubWF4KDAsIDFmcikgMzhweCBtaW5tYXgoNTJweCwgYXV0bykgbWlubWF4KDQycHgsIGF1dG8pO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRmMDtcbiAgICB9XG5cbiAgICAmIC56b25lLXBvaW50cy10YWJsZSA+IHRib2R5Lm5vZWRpdCA+IHRyIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBhdXRvIGF1dG87XG4gICAgfVxuXG4gICAgJiA6aXMoLnBhdGgtcG9pbnRzLXRhYmxlLCAuem9uZS1wb2ludHMtdGFibGUpID4gdGJvZHkgPiB0ci5wb2ludC1saXN0LWVtcHR5LXJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgIH1cblxuICAgICYgOmlzKC5wYXRoLXBvaW50cy10YWJsZSwgLnpvbmUtcG9pbnRzLXRhYmxlKSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiA1cHggM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgIH1cblxuICAgICYgOmlzKC5wYXRoLXBvaW50cy10YWJsZSwgLnpvbmUtcG9pbnRzLXRhYmxlKSAubm93cmFwIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgfVxuXG4gICAgJiA6aXMoLnBhdGgtcG9pbnRzLXRhYmxlLCAuem9uZS1wb2ludHMtdGFibGUpIGJ1dHRvbi5zbWFsbCB7XG4gICAgICAgIG1pbi13aWR0aDogMzZweDtcbiAgICAgICAgbWluLWhlaWdodDogMzZweDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICB9XG5cbiAgICAmIC56b25lLWxpc3QtdGFibGUgPiB0aGVhZCxcbiAgICAmIC56b25lLWxpc3QtdGFibGUgPiB0aGVhZCA+IHRyLFxuICAgICYgLnpvbmUtbGlzdC10YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgJiAuem9uZS1saXN0LXRhYmxlID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmIC56b25lLWxpc3QtdGFibGUgPiB0aGVhZCA+IHRyID4gdGggPiBkaXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICAgICAgZ2FwOiA1cHggMTJweDtcbiAgICB9XG5cbiAgICAmIC56b25lLWxpc3QtdGFibGUgPiB0aGVhZCA+IHRyID4gdGggYnV0dG9uIHtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiA0cHggMCAwIDRweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYgLnpvbmUtbGlzdC10YWJsZSA+IHRib2R5ID4gdHIge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogNTJweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBhdXRvIGF1dG8gYXV0bztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZGVkZjA7XG4gICAgfVxuXG4gICAgJiAuem9uZS1saXN0LXRhYmxlID4gdGJvZHkgPiB0cjpoYXMoaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzhweCBtaW5tYXgoMCwgMWZyKSBhdXRvIGF1dG87XG4gICAgfVxuXG4gICAgJiAuem9uZS1saXN0LXRhYmxlID4gdGJvZHkgPiB0cjpoYXMoPiB0ZFtjb2xzcGFuXSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG5cbiAgICAmIC56b25lLWxpc3QtdGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogN3B4IDRweCAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICB9XG5cbiAgICAmIC56b25lLWxpc3QtdGFibGUgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiAuYWRtaW4tc2VjdGlvbnMtdGFibGUtc2Nyb2xsLFxuICAgICYgLmFkbWluLXNlY3Rpb25zLXRhYmxlLFxuICAgICYgLnJvYm90LWRldmljZS10YWJsZSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG5cbiAgICAmIC5hZG1pbi1zZXR0aW5ncy1kZXRhaWxzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmIC5hZG1pbi1zZXR0aW5ncy1kZXRhaWxzID4gc3VtbWFyeSB7XG4gICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgY29sb3I6ICM1MjU0NjE7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgfVxuXG4gICAgJiAuYWRtaW4tc2V0dGluZ3MtbGlzdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgfVxuXG4gICAgJiAuYWRtaW4tc2VjdGlvbi1uYW1lID4gLnJlc3BvbnNpdmUtY2VsbC12YWx1ZSxcbiAgICAmIC5yb2JvdC1kZXZpY2UtY2FyZCAucmVzcG9uc2l2ZS1jZWxsLXZhbHVlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA2cHg7XG4gICAgfVxuXG4gICAgJiAucm9ib3QtZGV0YWlsLXBpY3R1cmUge1xuICAgICAgICBmbGV4OiAwIDAgMzRweDtcbiAgICAgICAgbWFyZ2luOiAwIDJweCA0cHggMDtcbiAgICB9XG5cbiAgICAmIC5yb2JvdC1kZXRhaWwtYWN0aW9ucyAucm9ib3QtdXNlcnMtc2VhcmNoIHtcbiAgICAgICAgZmxleDogMSAxIDE4MHB4O1xuICAgICAgICBtaW4td2lkdGg6IG1pbigxODBweCwgMTAwJSk7XG4gICAgfVxuXG4gICAgJiAucm9ib3QtZGV0YWlsLWFjdGlvbnMgLnJvYm90LXVzZXJzLXNlYXJjaCA+IGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgJiAucm9ib3QtZGV2aWNlLXRhYmxlLXNjcm9sbCArIC5yb2JvdC1kZXZpY2UtdGFibGUtc2Nyb2xsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICB9XG5cbiAgICAmIC5yb2JvdC1kZXZpY2UtY2FyZCA+IC5yb2JvdC1kZXZpY2UtYWN0aW9ucyBidXR0b24ge1xuICAgICAgICBtaW4taGVpZ2h0OiAzNnB4O1xuICAgIH1cblxuICAgICYgLnJvYm90LWRldmljZS1jYXJkIGJ1dHRvbi5yb2JvdC1kZXZpY2UtYWN0aW9uLWJ1dHRvbjpoYXMoPiBpbWc6b25seS1jaGlsZCkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICYgI3N2Z21hcF9yb290LmZ1bGwtc2NyZWVuIHsgdG9wOiAwOyB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0MXB4KSBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgaHRtbC5zbWFsbCAjaGVhZGVyX21vZCAuY29tcGFueS1zZWxlY3Rvci1idG4uaGVhZGVyLWNvbnRleHQtdHJpZ2dlciB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDIyMHB4O1xuICAgICAgICBmbGV4OiAwIDEgMjR2dztcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsICNoZWFkZXJfbW9kIC5jb21wYW55LXNlbGVjdG9yLWJ0bi5oZWFkZXItY29udGV4dC10cmlnZ2VyIC5jb21wYW55LXNlbGVjdG9yLWNydW1icyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIH1cblxuICAgIGh0bWwuc21hbGwgI2hlYWRlcl9tb2QgLmNvbXBhbnktc2VsZWN0b3ItYnRuLmhlYWRlci1jb250ZXh0LXRyaWdnZXIgPiBidXR0b24ge1xuICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgbWluLXdpZHRoOiAzOHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZsZXg6IDAgMCAzOHB4O1xuICAgICAgICBwYWRkaW5nLWlubGluZTogNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDZweCA2cHggMDtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM4MHB4KSB7XG4gICAgaHRtbC5zbWFsbCAudGlsZXMge1xuICAgICAgICBnYXA6IDhweDtcbiAgICB9XG5cbiAgICBodG1sLnNtYWxsIC50aWxlcyA+IC50aWxlID4gaW1nIHtcbiAgICAgICAgd2lkdGg6IG1pbig2NHB4LCAxMDAlKTtcbiAgICB9XG5cbn1cbiIsICIuYXgtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmaWxsOiAjNDQ0O1xufVxuLmF4LWNyb3NzaGFpciB7XG4gICAgc3Ryb2tlOiAjMWQxNTE1O1xuICAgIHN0cm9rZS13aWR0aDogMTtcbn1cbi5heC10aWNrIHtcbiAgICBzdHJva2U6ICMzMzM7XG4gICAgc3Ryb2tlLXdpZHRoOiAxO1xufVxuLmF4LWZhZGVkIHtcbiAgICBvcGFjaXR5OiAwLjM7XG59XG4uYXgtaGlnaGxpZ2h0IHtcbiAgICBvcGFjaXR5OiAxO1xufVxuLmF4LWRyYWctbGluZSB7XG4gICAgc3Ryb2tlOiByZWQ7XG4gICAgc3Ryb2tlLXdpZHRoOiAyO1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDQsMjtcbn1cbi5heC1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uYXgtZHJhZ2dpbmcge1xuICAgIG9wYWNpdHk6IDAuNTtcbn0iLCAiLnRlbXBsYXRlLWVkaXRvciA+IGZvcm0ge1xuICAgIHdpZHRoOiBtaW4oMTQyMHB4LCA5NnZ3KTtcbiAgICBtYXgtd2lkdGg6IDk2dnc7XG59XG5cbi50dXJuLXRlbXBsYXRlLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi50dXJuLXRlbXBsYXRlLWNvbnRlbnQge1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG4udHVybi1zaGFwZS1lZGl0b3IgPiBmb3JtIHtcbiAgICB3aWR0aDogbWluKDY0MHB4LCA5NnZ3KTtcbn1cblxuLnR1cm4tc2hhcGUtZWRpdG9yIGZvcm0gPiAudHVybi1zaGFwZS1lZGl0b3ItbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4udHVybi1zaGFwZS1lZGl0b3ItZmllbGRzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleDogMSAxIDMwMHB4O1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBnYXA6IDEwcHg7XG4gICAgcGFkZGluZzogMTJweCAxMnB4IDEycHggMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4udHVybi1zaGFwZS1lZGl0b3ItZmllbGRzID4gbGFiZWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIGdhcDogMTBweDtcbn1cblxuLnR1cm4tc2hhcGUtZWRpdG9yLWZpZWxkcyA+IGxhYmVsID4gOmlzKGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSksIHNlbGVjdCkge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG4udHVybi1wcmV2aWV3IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogOHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleDogMCAwIDE5MHB4O1xuICAgIHdpZHRoOiAxOTBweDtcbiAgICBoZWlnaHQ6IDE5MHB4O1xuICAgIG1hcmdpbjogMTJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTIwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnR1cm4tcHJldmlldy1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdG9wOiA2cHg7XG4gICAgcmlnaHQ6IDZweDtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbWluLWhlaWdodDogMjRweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS02MDApO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbn1cblxuLnR1cm4tcHJldmlldy1zdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTY0cHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi50dXJuLXByZXZpZXctcm93LXdpZHRoIHtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWdyYXktMjAwKTtcbiAgICBjb2xvcjogdmFyKC0tZ3JheS02MDApO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50dXJuLXByZXZpZXctcm93IHtcbiAgICBzdHJva2U6IHZhcigtLWdyYXktMzAwKTtcbiAgICBzdHJva2Utd2lkdGg6IDE7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNCAzO1xuICAgIHZlY3Rvci1lZmZlY3Q6IG5vbi1zY2FsaW5nLXN0cm9rZTtcbn1cblxuLnR1cm4tcHJldmlldy1wYXRoIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogYmx1ZTtcbiAgICBzdHJva2Utd2lkdGg6IDI7XG4gICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgdmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlO1xufVxuXG4udHVybi1wcmV2aWV3LXBvaW50cyB7XG4gICAgZmlsbDogYmx1ZTtcbiAgICBzdHJva2U6IG5vbmU7XG4gICAgc2hhcGUtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247XG4gICAgdmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udHVybi1wcmV2aWV3LXBvaW50cy5jdXJyZW50LXJvdyxcbi50dXJuLXByZXZpZXctcG9pbnRzLm5leHQtcm93IHtcbiAgICBmaWxsOiB3aGl0ZTtcbiAgICBzdHJva2U6IGJsdWU7XG4gICAgc3Ryb2tlLXdpZHRoOiAyO1xufVxuXG4udHVybi1wcmV2aWV3LXBvaW50cy5uZXh0LXJvdyB7XG4gICAgZmlsbDogI2M0ZDFlMjtcbn1cblxuLnR1cm4tcHJldmlldy1wb2ludHMuZW5kcG9pbnRzIHtcbiAgICBmaWxsOiBibHVlO1xuICAgIHN0cm9rZTogbm9uZTtcbn1cblxuLnR1cm4tcHJldmlldy1wb2ludHMuYWN0aXZlIHtcbiAgICBmaWxsOiB2YXIoLS1ncmVlbi01MDApO1xuICAgIHN0cm9rZTogYmx1ZTtcbiAgICBzdHJva2Utd2lkdGg6IDI7XG59XG5cbi50dXJuLXByZXZpZXctbWFya2VyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnR1cm4tcHJldmlldy1tYXJrZXIgPiBjaXJjbGUge1xuICAgIGZpbGw6ICMxMjYyZDg7XG4gICAgc3Ryb2tlOiAjZmZmO1xuICAgIHN0cm9rZS13aWR0aDogMjtcbiAgICB2ZWN0b3ItZWZmZWN0OiBub24tc2NhbGluZy1zdHJva2U7XG4gICAgdHJhbnNpdGlvbjogZmlsbCAxMjBtcyBlYXNlLCBzdHJva2UgMTIwbXMgZWFzZSwgc3Ryb2tlLXdpZHRoIDEyMG1zIGVhc2U7XG59XG5cbi50dXJuLXByZXZpZXctbWFya2VyID4gdGV4dCB7XG4gICAgZmlsbDogI2ZmZjtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHRleHQtYW5jaG9yOiBtaWRkbGU7XG4gICAgZG9taW5hbnQtYmFzZWxpbmU6IGNlbnRyYWw7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi50dXJuLXByZXZpZXctbWFya2VyLmN1cnJlbnQtcm93ID4gY2lyY2xlLFxuLnR1cm4tcHJldmlldy1tYXJrZXIubmV4dC1yb3cgPiBjaXJjbGUge1xuICAgIGZpbGw6IHdoaXRlO1xuICAgIHN0cm9rZTogYmx1ZTtcbn1cblxuLnR1cm4tcHJldmlldy1tYXJrZXIubmV4dC1yb3cgPiBjaXJjbGUge1xuICAgIGZpbGw6ICNjNGQxZTI7XG59XG5cbi50dXJuLXByZXZpZXctbWFya2VyLmN1cnJlbnQtcm93ID4gdGV4dCxcbi50dXJuLXByZXZpZXctbWFya2VyLm5leHQtcm93ID4gdGV4dCB7XG4gICAgZmlsbDogIzE3MzA0ZDtcbn1cblxuLnR1cm4tcHJldmlldy1tYXJrZXIuYWN0aXZlID4gY2lyY2xlIHtcbiAgICBmaWxsOiB2YXIoLS1ncmVlbi01MDApO1xuICAgIHN0cm9rZTogIzA4NzYzZDtcbiAgICBzdHJva2Utd2lkdGg6IDM7XG59XG5cbi50dXJuLXByZXZpZXctbWFya2VyLmFjdGl2ZSA+IHRleHQge1xuICAgIGZpbGw6ICNmZmY7XG59XG5cbi8qIFRoZSB0ZW1wbGF0ZSBoZWFkZXIgaXMgYSBsaWdodCBzdXJmYWNlIGluIHRoZSBtb2Rlcm4gZWRpdG9yLCBzbyBpdHMgbmF0aXZlXG4gKiBkYXJrIGRyYWcgZ2x5cGggbXVzdCBub3Qga2VlcCB0aGUgbGVnYWN5IHdoaXRlLWljb24gZmlsdGVyLiAqL1xuaHRtbC50aGVtZS1tb2Rlcm4gLnR1cm4tdGVtcGxhdGUtaGVhZCA+IC5ncmFiID4gaW1nIHtcbiAgICBvcGFjaXR5OiAuODI7XG4gICAgZmlsdGVyOiBub25lO1xufVxuXG4vKiBUaGUgdGVtcGxhdGUgbmF2aWdhdG9yIHVzZXMgdGhlIHNhbWUgZ2x5cGggb24gYSBkYXJrIHN1cmZhY2UuICovXG5odG1sLnRoZW1lLW1vZGVybiAudHVybi10ZW1wbGF0ZS1tYXN0ZXIgLnR1cm4tdGVtcGxhdGUtbWFzdGVyLWl0ZW0gPiAuZ3JhYiB7XG4gICAgb3BhY2l0eTogLjc4O1xufVxuXG5odG1sLnRoZW1lLW1vZGVybiAudHVybi10ZW1wbGF0ZS1tYXN0ZXItaXRlbSA+IC5ncmFiID4gaW1nIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG59XG5cbmh0bWwudGhlbWUtbW9kZXJuIC50dXJuLXRlbXBsYXRlLW1hc3RlciAudHVybi10ZW1wbGF0ZS1tYXN0ZXItaXRlbS5hY3RpdmUgPiAuZ3JhYiB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC50dXJuLXRlbXBsYXRlLWJvZHkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAudHVybi1wcmV2aWV3IHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogMTg2cHg7XG4gICAgICAgIG1hcmdpbjogMTJweCAyNHB4O1xuICAgIH1cblxuICAgIC50dXJuLXByZXZpZXctc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiAxNjBweDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2ODBweCkge1xuICAgIC50dXJuLXNoYXBlLWVkaXRvciBmb3JtID4gLnR1cm4tc2hhcGUtZWRpdG9yLW1haW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG4iLCAiLyogU2hhcmVkIGRpYWxvZy13aW5kb3cgY2hyb21lLiBUaGUgZHJhZy9tYXhpbWl6ZS9yZXNpemUgYmVoYXZpb3VyIGxpdmVzIGluXG4gKiBsaWIvdWkuanMgYW5kIGlzIGF2YWlsYWJsZSB0byBldmVyeSB0aGVtZS4gKi9cblxuLmRpYWxvZyA+IGZvcm0gPiAudGl0bGUge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uZGlhbG9nID4gZm9ybSA+IC50aXRsZSA+IC5kaWFsb2ctdGl0bGUtdGV4dCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kaWFsb2cgPiBmb3JtID4gLnRpdGxlID4gYnV0dG9uIHtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLmRpYWxvZyA+IGZvcm0uZGlhbG9nLXdpbmRvd2VkIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uZGlhbG9nID4gZm9ybS5kaWFsb2ctd2luZG93LWlzLXNpemVkIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLmRpYWxvZyA+IGZvcm0gPiAudGl0bGUgPiA6aXMoLmRpYWxvZy13aW5kb3ctbWF4aW1pemUsIC5kaWFsb2ctd2luZG93LWNsb3NlKSxcbi5kaWFsb2cgPiBmb3JtID4gLnRpdGxlID4gOmlzKC5kaWFsb2ctd2luZG93LW1heGltaXplLCAuZGlhbG9nLXdpbmRvdy1jbG9zZSk6bm90KDpkaXNhYmxlZCk6bm90KC5hY3RpdmUpOmhvdmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIG1pbi13aWR0aDogMzRweDtcbiAgICBtYXgtd2lkdGg6IDM0cHg7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIG1pbi1oZWlnaHQ6IDM0cHg7XG4gICAgbWF4LWhlaWdodDogMzRweDtcbiAgICBtYXJnaW46IDAgMCAwIDZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjZDBkNWRkKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogIzI0Mzg0ZjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5kaWFsb2cgPiBmb3JtID4gLnRpdGxlID4gLmRpYWxvZy13aW5kb3ctbWF4aW1pemUge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZGlhbG9nID4gZm9ybSA+IC50aXRsZSA+IDppcyguZGlhbG9nLXdpbmRvdy1tYXhpbWl6ZSwgLmRpYWxvZy13aW5kb3ctY2xvc2UpOm5vdCg6ZGlzYWJsZWQpOm5vdCguYWN0aXZlKTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWViY2M5O1xuICAgIGJhY2tncm91bmQ6ICNmMmY1Zjg7XG59XG5cbi5kaWFsb2cgPiBmb3JtID4gLnRpdGxlID4gLmRpYWxvZy13aW5kb3ctbWF4aW1pemUgKyAuZGlhbG9nLXdpbmRvdy1jbG9zZSxcbi5kaWFsb2cgPiBmb3JtID4gLnRpdGxlID4gLmRpYWxvZy13aW5kb3ctbWF4aW1pemUgKyAuZGlhbG9nLXdpbmRvdy1jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aG92ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xufVxuXG4uZGlhbG9nID4gLmRpYWxvZy13aW5kb3ctcmVzaXplLWhhbmRsZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwMDAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOlxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB0cmFuc3BhcmVudCAwIDQ2JSwgIzY1NzQ2YSA0NyUgNTMlLCB0cmFuc3BhcmVudCA1NCUpIDhweCA4cHggLyAxMHB4IDEwcHggbm8tcmVwZWF0LFxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB0cmFuc3BhcmVudCAwIDQ2JSwgIzk0YTE5OCA0NyUgNTMlLCB0cmFuc3BhcmVudCA1NCUpIDEycHggMTJweCAvIDZweCA2cHggbm8tcmVwZWF0O1xuICAgIGN1cnNvcjogbndzZS1yZXNpemU7XG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZGlhbG9nID4gLmRpYWxvZy13aW5kb3ctcmVzaXplLWhhbmRsZVtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGlhbG9nID4gZm9ybS5kaWFsb2ctaXMtcmVzaXppbmcge1xuICAgIGN1cnNvcjogbndzZS1yZXNpemUgIWltcG9ydGFudDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmRpYWxvZyA+IGZvcm0uZGlhbG9nLXdpbmRvdy1pcy1tYXhpbWl6ZWQgPiAudGl0bGUuZGlhbG9nLWRyYWctaGFuZGxlIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5kaWFsb2cgPiBmb3JtID4gLnRpdGxlLmRpYWxvZy1kcmFnLWhhbmRsZSB7XG4gICAgY3Vyc29yOiBncmFiO1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmRpYWxvZyA+IGZvcm0uZGlhbG9nLWlzLWRyYWdnaW5nID4gLnRpdGxlLmRpYWxvZy1kcmFnLWhhbmRsZSB7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLmRpYWxvZyA+IGZvcm0gPiAudGl0bGUuZGlhbG9nLWRyYWctaGFuZGxlIDppcyhidXR0b24sIGEsIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhLCBsYWJlbCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsICIudWktc2xpZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoODBweCwgMTIwcHgpIDMuNWVtO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA0cHg7XG59XG5cbi51aS1zbGlkZXIgPiBpbnB1dC51aS1zbGlkZXItaW5wdXQge1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBtaW4td2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS1zbGlkZXIgPiBpbnB1dC51aS1zbGlkZXItaW5wdXQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnVpLXNsaWRlciA+IGlucHV0LnVpLXNsaWRlci1pbnB1dDo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xufVxuXG4udWktc2xpZGVyID4gaW5wdXQudWktc2xpZGVyLWlucHV0OjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi51aS1zbGlkZXIgPiBpbnB1dC51aS1zbGlkZXItaW5wdXQ6Zm9jdXMtdmlzaWJsZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1ocC1icmFuZC0zMDAsICM3MmJkODgpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi51aS1zbGlkZXIgPiBpbnB1dC51aS1zbGlkZXItaW5wdXQ6Zm9jdXMtdmlzaWJsZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWhwLWJyYW5kLTMwMCwgIzcyYmQ4OCk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLnVpLXNsaWRlci12YWx1ZSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NjBweCkge1xuICAgIC5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIC51aS1zbGlkZXIge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg1NHB4LCAxZnIpIDMuNWVtO1xuICAgIH1cblxuICAgIC5maWVsZC1wYXRoLWFuaW1hdGlvbi10b29sYmFyIC51aS1zbGlkZXIgPiBpbnB1dC51aS1zbGlkZXItaW5wdXQge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgbWluLXdpZHRoOiA1NHB4O1xuICAgIH1cbn1cbiIsICIudXZiLXVpIGxhYmVsID4gc3BhbjpmaXJzdC1jaGlsZCB7XHJcbiAgICBmbGV4OiAxO1xyXG59XHJcbi51dmItdWkgaW5wdXQsXHJcbi51dmItdWkgc2VsZWN0IHtcclxuICAgIGZsZXg6IDAgIWltcG9ydGFudDtcclxufVxyXG4udXZiLXVpIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbn1cclxuLnV2Yi11aSBzZWxlY3Qge1xyXG4gICAgbWluLXdpZHRoOiAxMjBweDtcclxufVxyXG4udXZiLXVpIHN1YiB7XHJcbiAgICBtaW4td2lkdGg6IDFlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufSIsICIucnMtdWkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxMHB4O1xufVxuXG4ucnMtdWktc2V0dGluZ3MtdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkY2U2ZWY7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4ICMxNTM2NTAwOTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucnMtdWktc2V0dGluZ3MtdGFibGUgdGgge1xuICAgIHBhZGRpbmc6IDdweCA5cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDExMGRlZywgI2Y2ZjlmYywgI2VhZjFmNyk7XG4gICAgY29sb3I6IHZhcigtLWhwLXRleHQsICMxNzI0MWQpO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5ycy11aS1zZXR0aW5ncy10YWJsZSB0aC5ycy11aS1zZXR0aW5ncy1jb3VudCB7XG4gICAgY29sb3I6ICM2NDc0OGI7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnJzLXVpLXNldHRpbmdzLXRhYmxlIHRkIHtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgcGFkZGluZzogNXB4IDlweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U4ZWVmMztcbiAgICBmb250LXNpemU6IDExcHg7XG59XG5cbi5ycy11aS1zZXR0aW5ncy10YWJsZSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDU2JTtcbiAgICBjb2xvcjogIzMzNDE1NTtcbn1cblxuLnJzLXVpLXNldHRpbmdzLXRhYmxlIHRkOmxhc3QtY2hpbGQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ucnMtdWktc2V0dGluZ3MtdGFibGUgc2VsZWN0IHtcbiAgICBtaW4td2lkdGg6IDExOHB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogS2VlcCB2aXNpYmxlIHJvdy1zZWxlY3RvciBzZWxlY3RzIGNvbXBhY3Qgd2l0aG91dCBjaGFuZ2luZyBvdGhlciBmb3Jtcy4gKi9cbi5ycy11aSBzZWxlY3Q6bm90KC5ycy11aS1udGgtc2VsZWN0KTpub3QoLnJzLW1pbmktbnRoLXNlbGVjdCkge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLWhlaWdodDogMjZweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgcGFkZGluZzogMnB4IDIycHggMnB4IDZweDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xufVxuLnJzLXVpLW1vZGUtc2VsZWN0IHtcbiAgICB3aWR0aDogMTE2cHg7XG4gICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG59XG4ucnMtdWktZmVhdHVyZS1udGgsXG4ucnMtc3RlcC1vcC1ib2R5IHNlbGVjdCB7XG4gICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aSBsYWJlbCA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIGZsZXg6IDE7XG59XG4vKiBUaGUgbGVnYWN5IGZvcm0gcm93cyBhcmUgb25seSAyZW0gaGlnaCwgc21hbGxlciB0aGFuIHRvZGF5J3MgY29udHJvbHMuICovXG4ucnMtdWkgPiAqIHtcbiAgICBmbGV4LXNocmluazogMDtcbn1cbi5ycy11aSA+IGxhYmVsLFxuLnJzLXVpLXJvdy1zZXR0aW5ncyA+IGxhYmVsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMzhweDtcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgZ2FwOiA2cHg7XG59XG4ucnMtdWktdGFicyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBtaW4taGVpZ2h0OiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG59XG4ucnMtdWktdGFiIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEycyBlYXNlLCBjb2xvciAwLjEycyBlYXNlO1xufVxuLnJzLXVpLXRhYjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG59XG4ucnMtdWktdGFiOm5vdCg6ZGlzYWJsZWQpOm5vdCguYWN0aXZlKTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSB7XG4gICAgYmFja2dyb3VuZDogI2YxZjVmOTtcbiAgICBjb2xvcjogIzMzNDE1NTtcbn1cbi5ycy11aS10YWIuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMWU2YjNkO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4ucnMtdWktc3BsaXQtem9uZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogOHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDYwcHg7XG59XG4ucnMtdWktc3BsaXQtem9uZS1wYW5lbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogOHB4O1xufVxuLnJzLXVpLXNwbGl0LWJhZGdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDFweCA0cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbn1cbi5ycy11aS1zcGxpdC1iYWRnZS5pcy1zcGxpdC0xIHtcbiAgICBiYWNrZ3JvdW5kOiAjZTBmMmZlO1xuICAgIGNvbG9yOiAjMDM2OWExO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNiYWU2ZmQ7XG59XG4ucnMtdWktc3BsaXQtYmFkZ2UuaXMtc3BsaXQtMiB7XG4gICAgYmFja2dyb3VuZDogI2ZlZjNjNztcbiAgICBjb2xvcjogI2I0NTMwOTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmRlNjhhO1xufVxuLnJzLXVpLXNwbGl0LWRpdmlzaW9uLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xuICAgIGdhcDogOHB4O1xufVxuLnJzLXVpLXNwbGl0LWRpdmlzaW9uLWxhYmVsIHtcbiAgICBjb2xvcjogIzBmMTcyYTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5ycy11aS1zcGxpdC1kaXZpc2lvbi1oZWFkZXIuaXMtZWRpdGluZy1saW5lIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCk7XG4gICAgYmFja2dyb3VuZDogI2VkZjhmMDtcbn1cbi5ycy11aS1zcGxpdC1tb2RlLXRvZ2dsZSB7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1pbi1oZWlnaHQ6IDI0cHg7XG4gICAgcGFkZGluZzogMCA4cHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLnJzLXVpLXNwbGl0LWxpbmUtYWN0aW9ucyB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDRweDtcbn1cbi5ycy11aS1zcGxpdC1tb2RlLXRvZ2dsZS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWhwLWJyYW5kLTgwMCwgIzE1NGIzMCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4ucnMtdWktc3BsaXQtc2V0dGluZ3MtY2FyZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnJzLXVpLXNwbGl0LXNldHRpbmdzLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTJzIGVhc2U7XG59XG4ucnMtdWktc3BsaXQtc2V0dGluZ3MtaGVhZGVyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xufVxuLnJzLXVpLXNwbGl0LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNHB4O1xuICAgIGZsZXg6IDE7XG59XG4ucnMtdWktc3BsaXQtb3ZlcnJpZGUtc3RhdHVzIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gICAgcGFkZGluZzogMnB4IDZweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4ucnMtdWktc3BsaXQtb3ZlcnJpZGUtc3RhdHVzLmlzLWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQ6ICNmMWY1Zjk7XG4gICAgY29sb3I6ICM2NDc0OGI7XG59XG4ucnMtdWktc3BsaXQtb3ZlcnJpZGUtc3RhdHVzLmlzLW92ZXJyaWRkZW4ge1xuICAgIGJhY2tncm91bmQ6ICNkY2ZjZTc7XG4gICAgY29sb3I6ICMxNTgwM2Q7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5ycy11aS1zcGxpdC1zZXR0aW5ncy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA4cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2UyZThmMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYmZjO1xufVxuLnJzLXVpLXNwbGl0LW92ZXJyaWRlLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTRweDtcbn1cbi5ycy11aS1zcGxpdC1kZWZhdWx0LW5vdGljZSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBwYWRkaW5nOiAycHggMDtcbn1cbi5ycy11aS1zZWxlY3Qtb24tbWFwIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiB2YXIoLS1ycy1tYXAtdG9vbHMtdG9wLCAyNjBweCk7XG4gICAgbGVmdDogdmFyKC0tcnMtbWFwLXRvb2xzLWxlZnQsIDUwJSk7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogbWluKDMyMHB4LCBjYWxjKDEwMHZ3IC0gMjRweCkpO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiA2cHg7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNkOWUyZGMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZmYyO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggIzA3MWQxMzBkO1xufVxuLnJzLXVpLW1hcC10b29scy10aXRsZSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgY29sb3I6IHZhcigtLWhwLXRleHQsICMxNzI0MWQpO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5ycy11aS1tYXAtdG9vbHMtYWN0aW9ucyB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDZweDtcbn1cbi5ycy11aS1zZWxlY3Qtb24tbWFwW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5ycy11aS1zZWxlY3Qtb24tbWFwIHtcbiAgICAgICAgd2lkdGg6IG1pbigyNzJweCwgY2FsYygxMDB2dyAtIDE2cHgpKTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgIC5ycy11aS1zZWxlY3Qtb24tbWFwIHtcbiAgICAgICAgd2lkdGg6IG1pbigyNTZweCwgY2FsYygxMDB2dyAtIDE2cHgpKTtcbiAgICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1cbn1cbi5ycy11aS1tYXAtb3B0aW9ucyB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgNjBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZ2FwOiA0cHggMTJweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuLnJzLXVpLW1hcC1vcHRpb25zIHNlbGVjdCB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHdpZHRoOiA2MHB4O1xufVxuLnJzLXVpLW1hcC1vcHRpb25zID4gKiB7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuLnJzLXVpLW1hcC1vcHRpb25zIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG59XG4ucnMtdWktYWxsLXJvd3MsXG4ucnMtdWktc2VsZWN0ZWQtcm93cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICBnYXA6IDZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNkOWUyZGMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgI2ZmZjtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aSBmaWVsZHNldC5ycy11aS1hbGwtcm93cy5kaXNhYmxlZCxcbi5ycy11aSBmaWVsZHNldC5ycy11aS1zZWxlY3RlZC1yb3dzLmRpc2FibGVkLFxuLnJzLXVpIGZpZWxkc2V0LnJzLXVpLWFsbC1yb3dzLmlzLXJlYWQtb25seSxcbi5ycy11aSBmaWVsZHNldC5ycy11aS1zZWxlY3RlZC1yb3dzLmlzLXJlYWQtb25seSB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWkgZmllbGRzZXQuaXMtcmVhZC1vbmx5IC5ycy11aS1yb3ctYnRuIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucnMtdWktcm93LWJ0biB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAzNHB4O1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZzogM3B4IDdweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2JkN2NmO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjMzQ0NDNhO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbmJ1dHRvbi5ycy11aS1yb3ctYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguYWN0aXZlKTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODNiNThlO1xuICAgIGJhY2tncm91bmQ6ICNmM2ZhZjU7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG4ucnMtdWktaW5zZXJ0LWhpbnQge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuLnJzLXVpLXJvdy1idG4uc2VsZWN0ZWQge1xuICAgIGJvcmRlci1jb2xvcjogIzcwYWU3ZDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ocC1icmFuZC01MCwgI2VkZjhmMCk7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICNmZmY7XG59XG4vKiBTZWxlY3Rpb24gbXVzdCByZW1haW4gZGlzdGluZ3Vpc2hhYmxlIHdoZW4gdGhlIHBvaW50ZXIgaXMgb3ZlciB0aGUgY2hpcC4gKi9cbi5ycy11aSBidXR0b24ucnMtdWktcm93LWJ0bi5zZWxlY3RlZDpub3QoOmRpc2FibGVkKTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjc4NzQ2O1xuICAgIGJhY2tncm91bmQ6ICNkOWVmZGY7XG4gICAgY29sb3I6ICMxNTRiMzA7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1yb3ctYnJvd3Nlci10b29sYmFyLFxuLnJzLXVpLXJvdy1icm93c2VyLW1ldGEsXG4ucnMtdWktcm93LWdyaWQge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5ycy11aS1yb3ctYnJvd3Nlci10b29sYmFyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDEzMHB4LCAxZnIpIGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnJzLXVpLXJvdy1zZWFyY2gge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWluLWhlaWdodDogMjZweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA0KTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xMnMgZWFzZSwgYm94LXNoYWRvdyAwLjEycyBlYXNlO1xufVxuXG4ucnMtdWktcm93LXNlYXJjaDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODNiNThlO1xufVxuXG4ucnMtdWktcm93LXNlYXJjaDpmb2N1cy13aXRoaW4ge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taHAtYnJhbmQtNTAwLCAjMzlhOTU2KTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSg1NywgMTY5LCA4NiwgMC4xOCk7XG59XG5cbi5ycy11aS1yb3ctc2VhcmNoID4gaW1nIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsZXg6IDAgMCAxNHB4O1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWx0ZXI6IG5vbmU7XG59XG5cbi5ycy11aS1yb3ctc2VhcmNoID4gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6IHZhcigtLWhwLXRleHQsICMxNzI0MWQpO1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJzLXVpLXJvdy1zZWFyY2ggPiBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5NGEzYjg7XG59XG5cbi5ycy11aS1yb3ctc2VhcmNoID4gaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTJzIGVhc2U7XG59XG5cbi5ycy11aS1yb3ctc2VhcmNoID4gaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnJzLXVpLXJvdy1maWx0ZXJzIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtaW4taGVpZ2h0OiAyNnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA0KTtcbn1cblxuLnJzLXVpLXJvdy1maWx0ZXJzID4gYnV0dG9uIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDhweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xMnMgZWFzZTtcbn1cblxuLnJzLXVpLXJvdy1maWx0ZXJzID4gYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDtcbn1cblxuLnJzLXVpIC5ycy11aS1yb3ctZmlsdGVycyA+IGJ1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSkge1xuICAgIGJhY2tncm91bmQ6ICNmM2ZhZjUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0taHAtYnJhbmQtNzAwLCAjMWU2YjNkKSAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWkgLnJzLXVpLXJvdy1maWx0ZXJzID4gYnV0dG9uLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taHAtYnJhbmQtNTAsICNlZGY4ZjApICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCkgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWkgLnJzLXVpLXJvdy1maWx0ZXJzID4gYnV0dG9uLmFjdGl2ZTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSB7XG4gICAgYmFja2dyb3VuZDogI2Q5ZWZkZiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1ocC1icmFuZC04MDAsICMxNTRiMzApICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1yb3ctYnJvd3Nlci1tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiA4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMGU3ZTI7XG59XG5cbi5ycy11aS1yb3ctYnJvd3Nlci1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTJweDtcbn1cblxuLnJzLXVpIC5ycy11aS1yb3ctYnJvd3Nlci1hY3Rpb25zID4gYnV0dG9uLmxpbmssXG4ucnMtdWkgLnJzLXVpLXJvdy1icm93c2VyLWFjdGlvbnMgPiBidXR0b24ubGluazpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSkge1xuICAgIGNvbG9yOiB2YXIoLS1ocC1icmFuZC03MDAsICMxZTZiM2QpO1xuICAgIGZvbnQtc2l6ZTogLjc4cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3NTA7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1yb3ctZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg0NHB4LCAxZnIpKTtcbiAgICBnYXA6IDVweDtcbn1cblxuLnJzLXVpLXJvdy1ncmlkID4gLnJzLXVpLWVtcHR5LWNvbnRlbnQge1xuICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG59XG4ucnMtdWktc2VsZWN0ZWQtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogNnB4O1xufVxuLnJzLXVpIC5ycy11aS1zZWxlY3RlZC1yb3cuYWN0aXZlID4gYnV0dG9uLnJzLXVpLXJvdy1idG4sXG4ucnMtdWkgLnJzLXVpLXNlbGVjdGVkLXJvdy5hY3RpdmUgPiBidXR0b24ucnMtdWktcm93LWJ0bjpub3QoOmRpc2FibGVkKTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ocC1icmFuZC02MDAsICMyNzg3NDYpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWhwLWJyYW5kLTYwMCwgIzI3ODc0Nik7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuLnJzLXVpLXNlbGVjdGVkLXJvdy5hY3RpdmUge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGZjMjlhO1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0taHAtYnJhbmQtNTAwLCAjMzlhOTU2KTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiA4cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDdweCAxOHB4ICMwNzFkMTMwZDtcbn1cbi5ycy11aS1yb3ctc2V0dGluZ3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBnYXA6IDRweDtcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xufVxuLnJzLXVpLXJvdy1zZXR0aW5ncyBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIG1hcmdpbjogMDtcbn1cbi5ycy11aS1yb3ctc2V0dGluZ3MgbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgIGZsZXg6IDE7XG59XG4ucnMtdWktc2VsZWN0ZWQtcm93IHNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICBtaW4taGVpZ2h0OiAzMHB4O1xufVxuLnJzLXVpLWRlbGV0ZS1idG4ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgbWluLXdpZHRoOiAzNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDM2cHg7XG4gICAgcGFkZGluZzogMCA5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U2YjJhZDtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogI2JkM2QzMjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmJ1dHRvbi5ycy11aS1kZWxldGUtYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguYWN0aXZlKTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2Y0YjQwO1xuICAgIGJhY2tncm91bmQ6ICNmZmYxZWY7XG4gICAgY29sb3I6ICNhODJmMjc7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG4ucnMtdWktc2VsZWN0ZWQtcm93LmFjdGl2ZSA+IC5ycy11aS1yb3ctYnRuIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuLnJzLXVpIHNlbGVjdCB7XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbn1cbi5ycy11aSBpbnB1dCB7XG4gICAgZmxleDogMCAhaW1wb3J0YW50O1xufVxuLnJzLXVpLWNvbGxhcHNlLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xuICAgIHBhZGRpbmc6IDAgMTFweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2Q5ZTJkYyk7XG4gICAgYm9yZGVyLXJhZGl1czogMTFweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnJzLXVpLWNvbGxhcHNlLXJvdzpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYTljMmIwO1xuICAgIGJhY2tncm91bmQ6ICNmNGZhZjY7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCk7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG4ucnMtdWktY29sbGFwc2UtaWNvbiB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vLi4vYXNzZXRzL2ltZy9leHBhbmQud2VicCcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cbi5ycy11aS1jb2xsYXBzZS1pY29uLmNvbGxhcHNlZCB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cbi5ycy11aS1zaW1wbGUtaGVhZGxhbmQge1xuXHRtYXJnaW4tbGVmdDogMjRweDtcblx0bWF4LXdpZHRoOiAzNjBweDtcbn1cblxuLnJzLXVpLXNhZmV0eS1oZWFkbGFuZCB7XG5cdG1hcmdpbi1sZWZ0OiAyNHB4O1xufVxuXG4ucnMtdWktc2FmZXR5LWhlYWRsYW5kIC5ycy11aS1zaW1wbGUtaGVhZGxhbmQge1xuXHRtYXJnaW4tbGVmdDogMjRweDtcbn1cblxuLnJzLXVpLXNhZmV0eS1kZXRvdXItdG9nZ2xlID4gc3BhbjpudGgtY2hpbGQoMikge1xuXHRmbGV4OiAxO1xufVxuXG4ucnMtdWktc2FmZXR5LWRldG91ci10b2dnbGUuaXMtZGlzYWJsZWQge1xuXHRjdXJzb3I6IGRlZmF1bHQ7XG5cdG9wYWNpdHk6IDAuNjtcbn1cbi5ycy11aS1jbGVhci1idG4sXG5idXR0b24ucnMtdWktY2xlYXItYnRuIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDI2cHg7XG4gICAgcGFkZGluZzogMCA4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBjb2xvcjogdmFyKC0taHAtYnJhbmQtNzAwLCAjMWU2YjNkKTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA0KTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTJzIGVhc2U7XG59XG5cbmJ1dHRvbi5ycy11aS1jbGVhci1idG46bm90KDpkaXNhYmxlZCk6bm90KC5hY3RpdmUpOmhvdmVyLFxuLnJzLXVpLWNsZWFyLWJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogIzgzYjU4ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNmM2ZhZjUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0taHAtYnJhbmQtODAwLCAjMTU0YjMwKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLnJzLXVpLWNsZWFyLWJ0bjpkaXNhYmxlZCxcbi5ycy11aS1jbGVhci1idG46ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuMzUgIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5ycy11aSAuYnRuLXR1cm4tdGVtcGxhdGUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuLnJzLXVpLWljb24tYnRuIHtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgbWluLXdpZHRoOiAzNHB4O1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbn1cbi5ycy11aS1pY29uLWJ0biBpbWcge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbjogMDtcbn1cbmJ1dHRvbi5ycy11aS1pY29uLWJ0bjpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogIzgzYjU4ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICNmM2ZhZjUgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5ycy11aS1pbmxpbmUtY2hlY2tib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDRweDtcbn1cbi5ycy11aS1sZWdlbmQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbiAgICBtaW4taGVpZ2h0OiAzNHB4O1xuICAgIHBhZGRpbmc6IDJweCA5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NhZDhjZTtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgYmFja2dyb3VuZDogI2U4ZjBlYjtcbiAgICBjb2xvcjogIzJiM2EzMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucnMtdWktbGVnZW5kOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICM5NGI1OWM7XG4gICAgYmFja2dyb3VuZDogI2UxZWVlNTtcbiAgICBjb2xvcjogdmFyKC0taHAtYnJhbmQtNzAwLCAjMWU2YjNkKTtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5ycy11aS1jb2xsYXBzZWQtY29udGVudCxcbi5ycy11aS1lbXB0eS1jb250ZW50IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGNvbG9yOiB2YXIoLS1ncmF5LTUwMCk7XG59XG4ucnMtdWktc2VsZWN0aW9uLXJlY3Qge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ocC1icmFuZC01MDAsICMzOWE5NTYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjMzlhOTU2MjQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLnJzLXVpIHtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgfVxuXG4gICAgLnJzLXVpLWFsbC1yb3dzLFxuICAgIC5ycy11aS1zZWxlY3RlZC1yb3dzIHtcbiAgICAgICAgcGFkZGluZzogOXB4O1xuICAgICAgICBnYXA6IDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIH1cblxuICAgIC5ycy11aS1yb3ctYnRuIHtcbiAgICAgICAgbWluLXdpZHRoOiAzNnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAzNHB4O1xuICAgICAgICBwYWRkaW5nOiA0cHggNnB4O1xuICAgIH1cblxuICAgIC5ycy11aS1yb3ctYnJvd3Nlci10b29sYmFyIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbiAgICB9XG5cbiAgICAucnMtdWktcm93LWZpbHRlcnMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAucnMtdWktcm93LWZpbHRlcnMgPiBidXR0b24ge1xuICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICB9XG5cbiAgICAucnMtdWktcm93LWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg0MHB4LCAxZnIpKTtcbiAgICB9XG5cbiAgICAucnMtdWktc2VsZWN0ZWQtcm93LmFjdGl2ZSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICAucnMtdWktcm93LXNldHRpbmdzIHtcbiAgICAgICAgbWluLXdpZHRoOiBtaW4oMjIwcHgsIDEwMCUpO1xuICAgICAgICBmbGV4OiAxIDEgMTgwcHg7XG4gICAgfVxufVxuXG4vKiBEaWFsb2cgaG9yaXpvbnRhbCBvdmVyZmxvdyBwcm90ZWN0aW9uICovXG4ucnMtdWkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLmdlbmVyYXRlLXBhdGgtZGxnID4gOmlzKG1haW4sIC5tYWluKSB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktcm93LWJ0bi5pcy1hY3RpdmUtc3RlcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhYjMwOCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2ExNjIwNyAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnJzLXVpLXR1cm4tdGVtcGxhdGVzLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogOHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAzOHB4O1xufVxuXG4ucnMtdWktdHVybi10ZW1wbGF0ZXMtbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5ycy11aS10dXJuLXRlbXBsYXRlcy1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi5ycy11aSAuYnRuLXR1cm4tdGVtcGxhdGUgc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCk7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBTdGVwIG9wZXJhdGlvbiBjYXJkcyBmb3Igc2VsZWN0ZWQgcm93cyAqL1xuLnJzLXN0ZXAtb3AtY2FyZHMtd3JhcCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA4cHg7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xufVxuXG4ucnMtc3RlcC1vcC1jYXJkLmlzLXNoaWZ0ZWQge1xuICAgIGFuaW1hdGlvbjogcnNTaGlmdFB1bHNlIDAuMzVzIGVhc2Utb3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHJzU2hpZnRQdWxzZSB7XG4gICAgMCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg1NywgMTY5LCA4NiwgMC40NSksIDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAwNSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi5ycy1zdGVwLW9wLW11bHRpLWJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgcGFkZGluZzogM3B4IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5ycy1zdGVwLW9wLW11bHRpLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDZweDtcbn1cbi5ycy1zdGVwLW9wLW11bHRpLWFjdGlvbnMgLnJzLXN0ZXAtb3AtZGVsZXRlIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDQ4cHg7XG4gICAgcGFkZGluZzogMCA3cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnJzLXN0ZXAtb3AtY2FyZCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLWhwLWJyYW5kLTUwMCwgIzM5YTk1Nik7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEwcHg7XG4gICAgYW5pbWF0aW9uOiByc0NhcmRGYWRlSW4gMC4xNnMgZWFzZS1vdXQ7XG59XG5cbkBrZXlmcmFtZXMgcnNDYXJkRmFkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cbi5ycy1zdGVwLW9wLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YxZjVmOTtcbn1cblxuLnJzLXN0ZXAtb3AtdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbn1cblxuLnJzLXN0ZXAtb3AtYmFkZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMnB4IDhweDtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMWUyOTNiO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG59XG5cbi5ycy1zdGVwLW9wLWRvdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA3cHg7XG4gICAgaGVpZ2h0OiA3cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICNlYWIzMDg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5ycy1zdGVwLW9wLXJvd25hbWUge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMGYxNzJhO1xufVxuXG4ucnMtc3RlcC1vcC1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG59XG5cbi5ycy1zdGVwLW9wLWFjdGlvbnMgLnJzLXN0ZXAtb3AtYnRuIHtcbiAgICB3aWR0aDogMjZweDtcbiAgICBtaW4td2lkdGg6IDI2cHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDI2cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbi5ycy1zdGVwLW9wLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDRweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWluLWhlaWdodDogMjZweDtcbiAgICBwYWRkaW5nOiAwIDhweDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBjb2xvcjogIzFlMjkzYjtcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA0KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xMnMgZWFzZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ucnMtc3RlcC1vcC1zaGlmdCBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucnMtc3RlcC1vcC1idG46bm90KC5ycy1zdGVwLW9wLWRlbGV0ZSk6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgIGJhY2tncm91bmQ6ICNmM2ZhZjUgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICM4M2I1OGUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0taHAtYnJhbmQtNzAwLCAjMWU2YjNkKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJzLXN0ZXAtb3AtYnRuOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgYmFja2dyb3VuZDogI2YxZjVmOTtcbiAgICBib3JkZXItY29sb3I6ICNlMmU4ZjA7XG4gICAgY29sb3I6ICM5NGEzYjg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy1zdGVwLW9wLWRlbGV0ZSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjVmMztcbiAgICBib3JkZXItY29sb3I6ICNlZmM0YmU7XG4gICAgY29sb3I6IHZhcigtLWhwLWRhbmdlciwgI2M0MzgyNyk7XG4gICAgcGFkZGluZzogMCA2cHg7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgbWluLXdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtaW4taGVpZ2h0OiAyNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjEycyBlYXNlLCBiYWNrZ3JvdW5kIDAuMTJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjEycyBlYXNlO1xufVxuXG4ucnMtc3RlcC1vcC1kZWxldGU6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KC5pbnNpc3QpIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZlYmU3O1xuICAgIGJvcmRlci1jb2xvcjogI2UyOGE3ZDtcbiAgICBjb2xvcjogI2E3MjMxNDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJzLXN0ZXAtb3AtZGVsZXRlLmluc2lzdCB7XG4gICAgYmFja2dyb3VuZDogI2RjMjYyNiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2RjMjYyNiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtc3RlcC1vcC1kZWxldGUuaW5zaXN0OmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kOiAjYjkxYzFjICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjYjkxYzFjICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5ycy1zdGVwLW9wLWRlbGV0ZSA+IGltZyxcbi5ycy1zdGVwLW9wLWRlbGV0ZSBpbWcge1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmlsdGVyOiBub25lO1xufVxuXG5idXR0b24ucnMtc3RlcC1vcC1kZWxldGUuaW5zaXN0ID4gaW1nLFxuLnJzLXN0ZXAtb3AtZGVsZXRlLmluc2lzdCBpbWcge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSkgIWltcG9ydGFudDtcbn1cblxuLnJzLXN0ZXAtb3AtY291bnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5ycy1zdGVwLW9wLWNsb3NlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY29sb3I6ICM2NDc0OGI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgbWluLXdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtaW4taGVpZ2h0OiAyNnB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjEycyBlYXNlO1xufVxuXG4ucnMtc3RlcC1vcC1jbG9zZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2YxZjVmOTtcbiAgICBjb2xvcjogIzBmMTcyYTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy1zdGVwLW9wLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA4cHggMTZweDtcbiAgICBwYWRkaW5nLXRvcDogMnB4O1xufVxuXG4ucnMtc3RlcC1vcC1ib2R5IGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6ICMzMzQxNTU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnJzLXN0ZXAtb3AtYm9keSBsYWJlbCA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIGNvbG9yOiAjNDc1NTY5O1xufVxuXG4ucnMtc3RlcC1vcC1ib2R5IHNlbGVjdCxcbi5ycy1zdGVwLW9wLWJvZHkgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwYWRkaW5nOiAycHggNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6ICMxZTI5M2I7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLnJzLXVpLW1vZGUtc2VsZWN0LFxuLnJzLXVpLWZlYXR1cmUtbnRoLFxuLnJzLXN0ZXAtb3AtYm9keSBzZWxlY3Qge1xuICAgIG1pbi1oZWlnaHQ6IDI2cHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuLnJzLXN0ZXAtb3AtYm9keSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICB3aWR0aDogNjVweDtcbn1cblxuLnJzLXN0ZXAtb3AtYm9keSBzZWxlY3Q6Zm9jdXMsXG4ucnMtc3RlcC1vcC1ib2R5IGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taHAtYnJhbmQtNTAwLCAjMzlhOTU2KTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1ocC1icmFuZC01MDAsICMzOWE5NTYpO1xufVxuXG4ucnMtc3RlcC1vcC1ib2R5IC5ycy11aS1jb2xsYXBzZS1yb3cge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogIzFlMjkzYjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogUm93IFNlbGVjdG9yIE1pbmkgVmlldyAqL1xuLnJzLXVpLWxlZ2VuZC1hY3Rpb25zIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ucnMtdWktdmlldy10b2dnbGUsXG5idXR0b24ucnMtdWktdmlldy10b2dnbGUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWluLWhlaWdodDogMjZweDtcbiAgICBwYWRkaW5nOiAwIDhweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGNvbG9yOiB2YXIoLS1ocC10ZXh0LCAjMzM0MTU1KTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA0KTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTJzIGVhc2U7XG59XG5cbmJ1dHRvbi5ycy11aS12aWV3LXRvZ2dsZTpub3QoOmRpc2FibGVkKTpub3QoLmFjdGl2ZSk6aG92ZXIsXG4ucnMtdWktdmlldy10b2dnbGU6bm90KDpkaXNhYmxlZCk6bm90KC5hY3RpdmUpOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICM4M2I1OGUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjZjNmYWY1ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCkgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1hY3Rpb24tZ3JvdXAsXG4ucnMtbWluaS1hY3Rpb24tZ3JvdXAge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDI2cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjEycyBlYXNlO1xufVxuXG4ucnMtdWktYWN0aW9uLWdyb3VwOmhvdmVyLFxuLnJzLW1pbmktYWN0aW9uLWdyb3VwOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICM4M2I1OGU7XG59XG5cbi5ycy11aS1hY3Rpb24tYnRuLFxuLnJzLW1pbmktYWN0aW9uLWJ0biB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIG1pbi13aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICM2NDc0OGI7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTJzIGVhc2U7XG59XG5cbi5ycy11aS1hY3Rpb24tYnRuICsgLnJzLXVpLWFjdGlvbi1idG4sXG4ucnMtbWluaS1hY3Rpb24tYnRuICsgLnJzLW1pbmktYWN0aW9uLWJ0biB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xufVxuXG4ucnMtdWktYWN0aW9uLWJ0bjpub3QoLmFjdGl2ZSk6aG92ZXIsXG4ucnMtbWluaS1hY3Rpb24tYnRuOm5vdCguYWN0aXZlKTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2YzZmFmNSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1ocC1icmFuZC03MDAsICMxZTZiM2QpICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1hY3Rpb24tYnRuLmFjdGl2ZSxcbi5ycy1taW5pLWFjdGlvbi1idG4uYWN0aXZlIHtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJzLXVpLWFjdGlvbi1idG4uaXMtYWRkLmFjdGl2ZSxcbi5ycy1taW5pLWFjdGlvbi1idG4uaXMtYWRkLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taHAtYnJhbmQtNTAwLCAjMzlhOTU2KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taHAtYnJhbmQtNTAwLCAjMzlhOTU2KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1hY3Rpb24tYnRuLmlzLWFkZC5hY3RpdmU6aG92ZXIsXG4ucnMtbWluaS1hY3Rpb24tYnRuLmlzLWFkZC5hY3RpdmU6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWhwLWJyYW5kLTYwMCwgIzI3ODc0NikgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWhwLWJyYW5kLTYwMCwgIzI3ODc0NikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktYWN0aW9uLWJ0bi5pcy1yZW1vdmUuYWN0aXZlLFxuLnJzLW1pbmktYWN0aW9uLWJ0bi5pcy1yZW1vdmUuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ocC1kYW5nZXIsICNkYzI2MjYpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ocC1kYW5nZXIsICNkYzI2MjYpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJzLXVpLWFjdGlvbi1idG4uaXMtcmVtb3ZlLmFjdGl2ZTpob3Zlcixcbi5ycy1taW5pLWFjdGlvbi1idG4uaXMtcmVtb3ZlLmFjdGl2ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2I5MWMxYyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2I5MWMxYyAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1kdXBsaWNhdGUtdG9nZ2xlLFxuLnJzLW1pbmktZHVwLWJ0bixcbmJ1dHRvbi5ycy11aS1kdXBsaWNhdGUtdG9nZ2xlLFxuYnV0dG9uLnJzLW1pbmktZHVwLWJ0biB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIG1pbi13aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWluLWhlaWdodDogMjZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjEycyBlYXNlO1xufVxuXG4ucnMtdWktZHVwbGljYXRlLXRvZ2dsZSBpbWcsXG4ucnMtbWluaS1kdXAtYnRuIGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAwLjY1O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMnMgZWFzZTtcbn1cblxuLnJzLXVpLWR1cGxpY2F0ZS10b2dnbGU6bm90KC5hY3RpdmUpOmhvdmVyLFxuLnJzLW1pbmktZHVwLWJ0bjpub3QoLmFjdGl2ZSk6aG92ZXIsXG5idXR0b24ucnMtdWktZHVwbGljYXRlLXRvZ2dsZTpub3QoLmFjdGl2ZSk6aG92ZXIsXG5idXR0b24ucnMtbWluaS1kdXAtYnRuOm5vdCguYWN0aXZlKTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2YzZmFmNSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogIzgzYjU4ZSAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktZHVwbGljYXRlLXRvZ2dsZTpub3QoLmFjdGl2ZSk6aG92ZXIgaW1nLFxuLnJzLW1pbmktZHVwLWJ0bjpub3QoLmFjdGl2ZSk6aG92ZXIgaW1nIHtcbiAgICBvcGFjaXR5OiAwLjk1ICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1kdXBsaWNhdGUtdG9nZ2xlLmFjdGl2ZSxcbi5ycy1taW5pLWR1cC1idG4uYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ocC1icmFuZC01MDAsICMzOWE5NTYpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ocC1icmFuZC01MDAsICMzOWE5NTYpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktZHVwbGljYXRlLXRvZ2dsZS5hY3RpdmU6aG92ZXIsXG4ucnMtbWluaS1kdXAtYnRuLmFjdGl2ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taHAtYnJhbmQtNjAwLCAjMjc4NzQ2KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taHAtYnJhbmQtNjAwLCAjMjc4NzQ2KSAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktZHVwbGljYXRlLXRvZ2dsZS5hY3RpdmUgaW1nLFxuLnJzLW1pbmktZHVwLWJ0bi5hY3RpdmUgaW1nIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktZmVhdHVyZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogOHB4O1xuICAgIG1pbi13aWR0aDogMDtcbn1cbi5ycy11aS1mZWF0dXJlLXRhYmxlIHtcbiAgICBtYXJnaW46IDA7XG59XG4ucnMtdWktc2ltcGxlLWZlYXR1cmUgLnJzLXVpLXNldHRpbmctZ3JvdXAtaGVhZGluZyB0aCB7XG4gICAgcGFkZGluZzogN3B4IDEwcHggNHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZThlZWYzO1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnJzLXVpLXNpbXBsZS1mZWF0dXJlIC5ycy11aS1zZXR0aW5nLWdyb3VwOmZpcnN0LW9mLXR5cGUgLnJzLXVpLXNldHRpbmctZ3JvdXAtaGVhZGluZyB0aCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbn1cbi5ycy11aS1mZWF0dXJlLXRhYmxlIHRkLnJzLXVpLWZlYXR1cmUtY29udHJvbHMge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ucnMtdWktZmVhdHVyZS1jb250cm9scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgZ2FwOiA2cHg7XG59XG4ucnMtdWktZGlyZWN0aW9uLXN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA1cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuLnJzLXVpLXNldHRpbmctbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuLnJzLXVpLXNldHRpbmctaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleDogMCAwIDE2cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG4ucnMtdWktc2V0dGluZy1pY29uLmlzLWluYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAwLjQ7XG59XG4ucnMtdWktc2ltcGxlLWZlYXR1cmUgLnJzLXVpLWZlYXR1cmUtbnVtYmVyIHtcbiAgICB3aWR0aDogNzhweDtcbiAgICBtaW4td2lkdGg6IDc4cHg7XG59XG4ucnMtdWktc2ltcGxlLWhlYWRsYW5kLWVkaXRvciB7XG4gICAgbWluLXdpZHRoOiBtaW4oMzYwcHgsIDgwdncpO1xufVxuLnJzLXVpLXNpbXBsZS1oZWFkbGFuZC1lZGl0b3IgPiBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogMzJweDtcbn1cbi5ycy11aS1zaW1wbGUtaGVhZGxhbmQtZWRpdG9yIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4ucnMtdWktc2ltcGxlLW51bWJlci1lZGl0b3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTBlbTtcbiAgICBtaW4td2lkdGg6IDEwZW07XG4gICAgZmxleDogMCAwIDEwZW07XG59XG4ucnMtdWktc2ltcGxlLXJvdy1zdGFydC1lZGl0b3IgLnJzLXVpLWVkaXRvci10b2dnbGUge1xuICAgIG1pbi1oZWlnaHQ6IDMycHg7XG59XG4ucnMtdWktc2ltcGxlLW51bWJlci1lZGl0b3IgLnJzLXVpLW51bWJlci1lZGl0b3Itcm93IHtcbiAgICBtaW4taGVpZ2h0OiAzNHB4O1xufVxuLnJzLXVpLWZlYXR1cmUtbnRoIHtcbiAgICB3aWR0aDogNzJweDtcbiAgICBtaW4td2lkdGg6IDcycHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgcGFkZGluZzogMnB4IDRweDtcbiAgICBmb250LXNpemU6IDExcHg7XG59XG4ucnMtdWktZmVhdHVyZS1taW5pIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4ucnMtdWktc2V0dGluZy10b2dnbGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA1cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5ycy11aS1zZXR0aW5ncy1lZGl0b3Ige1xuICAgIG1pbi13aWR0aDogbWluKDQyMHB4LCA4MHZ3KTtcbiAgICBnYXA6IDhweDtcbn1cbi5ycy11aS1zZXR0aW5ncy1lZGl0b3IgbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDZweDtcbn1cbi5ycy11aS1zZXR0aW5ncy1lZGl0b3IgbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICBtaW4td2lkdGg6IDEwMHB4O1xufVxuLnJzLXVpLXNldHRpbmdzLWVkaXRvciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZmxleDogMSAxIDkwcHg7XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZGlhbG9nIC5ycy11aS1zZXR0aW5ncy1lZGl0b3Ige1xuICAgIHdpZHRoOiBtaW4oNTYwcHgsIGNhbGMoMTAwdncgLSAzMnB4KSk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMzJweCk7XG4gICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBnYXA6IDZweDtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3Ige1xuICAgIHBhZGRpbmc6IDJweCAwO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciBsYWJlbCB7XG4gICAgbWluLWhlaWdodDogMzJweDtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLWZlYXR1cmUtaW5wdXQtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktZmVhdHVyZS1pbnB1dC1yb3cgPiAucnMtdWktc2V0dGluZy10b2dnbGUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktZmVhdHVyZS1pbnB1dC1yb3cgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIHBhZGRpbmc6IDRweCA1cHg7XG4gICAgY29sb3I6ICMxNzI0MWQ7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLWZlYXR1cmUtaW5wdXQtcm93IGlucHV0W3R5cGU9XCJudW1iZXJcIl06ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgY29sb3I6ICM0NzU1Njk7XG4gICAgYmFja2dyb3VuZDogI2YxZjVmOTtcbiAgICBib3JkZXItY29sb3I6ICNjYmQ1ZTE7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktY29vcmRpbmF0ZS1pbnB1dCB7XG4gICAgd2lkdGg6IDEwZW0gIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDEwZW0gIWltcG9ydGFudDtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLW9mZnNldC1pbnB1dCB7XG4gICAgd2lkdGg6IDZlbSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogNmVtICFpbXBvcnRhbnQ7XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1iZWFyaW5nLWlucHV0IHtcbiAgICB3aWR0aDogMTBlbSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMTBlbSAhaW1wb3J0YW50O1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktZmVhdHVyZS1pbnB1dC1yb3cgPiAuc3ViLFxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktZmVhdHVyZS1pbnB1dC1yb3cgPiBzdWIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktZWRpdG9yLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLWVkaXRvci10b2dnbGUgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDI2cHg7XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1lZGl0b3ItdG9nZ2xlID4gc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktZWRpdG9yLXRvZ2dsZSA+IHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLWVkaXRvci10b2dnbGUgPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbjogMDtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLXBvaW50LXJvdyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1jb29yZGluYXRlLWdyb3VwLFxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktb2Zmc2V0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktY29vcmRpbmF0ZS1ncm91cCB7XG4gICAgZmxleDogMSAxIGF1dG87XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1jb29yZGluYXRlLWdyb3VwID4gc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgZmxleDogMCAwIGF1dG87XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1vZmZzZXQtZ3JvdXAge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktb2Zmc2V0LWdyb3VwIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgbWluLWhlaWdodDogMzJweDtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLWJlYXJpbmctcm93IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1iZWFyaW5nLXJvdyA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktYmVhcmluZy1yb3cgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgZmxleDogMCAwIGF1dG87XG59XG4ucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1mZWF0dXJlLWlucHV0LXJvdzpub3QoLnJzLXVpLXBvaW50LXJvdyk6bm90KC5ycy11aS1iZWFyaW5nLXJvdykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDZweDtcbn1cbi5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLWZlYXR1cmUtaW5wdXQtcm93Om5vdCgucnMtdWktcG9pbnQtcm93KTpub3QoLnJzLXVpLWJlYXJpbmctcm93KSA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLnJzLXVpLXJvd3NlbGVjdG9yLWVkaXRvciAucnMtdWktY29vcmRpbmF0ZS1ncm91cCxcbiAgICAucnMtdWktcm93c2VsZWN0b3ItZWRpdG9yIC5ycy11aS1vZmZzZXQtZ3JvdXAge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIC5ycy11aS1yb3dzZWxlY3Rvci1lZGl0b3IgLnJzLXVpLW9mZnNldC1ncm91cCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnJzLXVpLW50aC1idG4sXG4ucnMtbWluaS1udGgtYnRuIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtaW4taGVpZ2h0OiAyNnB4O1xuICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGdhcDogM3B4O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjEycyBlYXNlO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5ycy11aS1udGgtYnRuOm5vdCguYWN0aXZlKTpob3Zlcixcbi5ycy1taW5pLW50aC1idG46bm90KC5hY3RpdmUpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjNmYWY1ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjODNiNThlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCkgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJzLXVpLW50aC1idG46bm90KC5hY3RpdmUpOmhvdmVyIC5ycy11aS1udGgtYXJyb3csXG4ucnMtbWluaS1udGgtYnRuOm5vdCguYWN0aXZlKTpob3ZlciAucnMtbWluaS1udGgtYXJyb3cge1xuICAgIG9wYWNpdHk6IDAuOSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1ocC1icmFuZC03MDAsICMxZTZiM2QpICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1udGgtYnRuLmFjdGl2ZSxcbi5ycy1taW5pLW50aC1idG4uYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ocC1icmFuZC01MCwgI2VkZjhmMCkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWhwLWJyYW5kLTUwMCwgIzM5YTk1NikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0taHAtYnJhbmQtNzAwLCAjMWU2YjNkKSAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktbnRoLWJ0bi5hY3RpdmU6aG92ZXIsXG4ucnMtbWluaS1udGgtYnRuLmFjdGl2ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2UxZjJlNiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taHAtYnJhbmQtNjAwLCAjMjc4NzQ2KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS1ocC1icmFuZC04MDAsICMxNTRiMzApICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy11aS1udGgtYnRuLmFjdGl2ZSAucnMtdWktbnRoLWFycm93LFxuLnJzLW1pbmktbnRoLWJ0bi5hY3RpdmUgLnJzLW1pbmktbnRoLWFycm93IHtcbiAgICBvcGFjaXR5OiAwLjk1ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCkgIWltcG9ydGFudDtcbn1cblxuLnJzLXVpLW50aC10ZXh0LFxuLnJzLW1pbmktbnRoLXRleHQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjJweDtcbn1cblxuLnJzLXVpLW50aC1hcnJvdyxcbi5ycy1taW5pLW50aC1hcnJvdyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMC42NTtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLnJzLXVpLW50aC1zZWxlY3QsXG4ucnMtbWluaS1udGgtc2VsZWN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnJzLW1pbmktdmlldy1ob3N0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ycy1taW5pLXZpZXctaG9zdDpoYXMoLnJzLW1pbmktbWFnYm94W3N0eWxlKj1cImRpc3BsYXk6IGJsb2NrXCJdKSxcbi5ycy1taW5pLXZpZXctY29udGFpbmVyOmhhcygucnMtbWluaS1tYWdib3hbc3R5bGUqPVwiZGlzcGxheTogYmxvY2tcIl0pIHtcbiAgICB6LWluZGV4OiAxMDAwO1xufVxuXG4ucnMtbWluaS12aWV3LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA2cHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4ucnMtbWluaS1zdHJpcC13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhwLWJvcmRlciwgI2NiZDVlMSk7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY3Vyc29yOiBjcm9zc2hhaXI7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNik7XG59XG5cbi5ycy1taW5pLXN0cmlwLXdyYXAuaXMtdmlldy1vbmx5IHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5ycy1taW5pLXN0cmlwLXN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucnMtbWluaS1tYWdib3gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IGNhbGMoMTAwJSArIDRweCk7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjOTRhM2I4KTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICAgIHotaW5kZXg6IDEwMDE7XG4gICAgcGFkZGluZzogNnB4IDhweCA4cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5ycy1taW5pLW1hZ2JveDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ucnMtbWluaS1tYWdoZWFkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDZweDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzQ3NTU2OTtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgcGFkZGluZzogMCAycHg7XG59XG5cbi5ycy1taW5pLW1hZ2hlYWQtbGVmdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDZweDtcbn1cblxuLnJzLW1pbmktbmF2LWdyb3VwLFxuLnJzLW1pbmktem9vbS1ncm91cCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWluLWhlaWdodDogMjZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTJzIGVhc2U7XG59XG5cbi5ycy1taW5pLW5hdi1ncm91cDpob3Zlcixcbi5ycy1taW5pLXpvb20tZ3JvdXA6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogIzgzYjU4ZTtcbn1cblxuLnJzLW1pbmktbmF2LWJ0bixcbi5ycy1taW5pLXpvb20tYnRuIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgbWluLXdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogIzY0NzQ4YjtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTJzIGVhc2UsIGNvbG9yIDAuMTJzIGVhc2U7XG59XG5cbi5ycy1taW5pLW5hdi1idG4gKyAucnMtbWluaS1uYXYtYnRuLFxuLnJzLW1pbmktem9vbS1idG4gKyAucnMtbWluaS16b29tLWJ0biB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xufVxuXG4ucnMtbWluaS1uYXYtYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLFxuLnJzLW1pbmktem9vbS1idG46bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmM2ZhZjUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0taHAtYnJhbmQtNzAwLCAjMWU2YjNkKSAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtbWluaS1uYXYtYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyIHN2Zyxcbi5ycy1taW5pLXpvb20tYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyIHN2ZyB7XG4gICAgY29sb3I6IHZhcigtLWhwLWJyYW5kLTcwMCwgIzFlNmIzZCkgIWltcG9ydGFudDtcbn1cblxuLnJzLW1pbmktbmF2LWJ0bjpkaXNhYmxlZCxcbi5ycy1taW5pLW5hdi1idG4uZGlzYWJsZWQsXG4ucnMtbWluaS16b29tLWJ0bjpkaXNhYmxlZCxcbi5ycy1taW5pLXpvb20tYnRuLmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjM1ICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ycy1taW5pLW5hdi1idG4gc3ZnLFxuLnJzLW1pbmktem9vbS1idG4gc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnJzLW1pbmktbWFnaGVhZC1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDZweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnJzLW1pbmktY2xvc2UtYnRuLFxuYnV0dG9uLnJzLW1pbmktY2xvc2UtYnRuIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgbWluLXdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtaW4taGVpZ2h0OiAyNnB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taHAtYm9yZGVyLCAjY2JkNWUxKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjOTRhM2I4O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjEycyBlYXNlO1xufVxuXG5idXR0b24ucnMtbWluaS1jbG9zZS1idG46aG92ZXIsXG4ucnMtbWluaS1jbG9zZS1idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZWUyZTIgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICNmY2E1YTUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2RjMjYyNiAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJzLW1pbmktbWFncmFuZ2Uge1xuICAgIGNvbG9yOiB2YXIoLS1ibHVlLTUwMCwgIzAyODRjNyk7XG59XG5cbi5ycy1taW5pLW1hZy1zdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTE0cHg7XG4gICAgYmFja2dyb3VuZDogI2Y4ZmFmYztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJlOGYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5ycy1taW5pLWJhciB7XG4gICAgZmlsbDogIzk0YTNiODtcbiAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMDhzIGVhc2U7XG59XG5cbi5ycy1taW5pLWJhci5pcy1zZWxlY3RlZCB7XG4gICAgZmlsbDogdmFyKC0taHAtYnJhbmQtNTAwLCAjMzlhOTU2KTtcbn1cblxuLnJzLW1pbmktYmFyLmlzLWVtcHR5LXNsb3Qge1xuICAgIGZpbGw6ICNlMmU4ZjA7XG4gICAgc3Ryb2tlOiB2YXIoLS1ocC1ib3JkZXIsICNjYmQ1ZTEpO1xuICAgIHN0cm9rZS13aWR0aDogMC43NXB4O1xuICAgIG9wYWNpdHk6IDAuODtcbn1cblxuLnJzLW1pbmktYmFyLmlzLWFjdGl2ZSB7XG4gICAgZmlsbDogI2VhYjMwODtcbiAgICBzdHJva2U6ICNhMTYyMDc7XG4gICAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcbn1cblxuLnJzLW1pbmktYmFyLmlzLWhvdmVyZWQge1xuICAgIGZpbGw6ICMyNTYzZWI7XG59XG5cbi5ycy1taW5pLWJhci5pcy1zZWxlY3RlZC5pcy1ob3ZlcmVkIHtcbiAgICBmaWxsOiB2YXIoLS1ocC1icmFuZC02MDAsICMyNzg3NDYpO1xuICAgIHN0cm9rZTogIzg2ZWZhYztcbiAgICBzdHJva2Utd2lkdGg6IDFweDtcbn1cblxuLnJzLW1pbmktYmFyLmlzLWFjdGl2ZS5pcy1ob3ZlcmVkIHtcbiAgICBmaWxsOiAjZmFjYzE1O1xuICAgIHN0cm9rZTogIzc4MzUwZjtcbiAgICBzdHJva2Utd2lkdGg6IDJweDtcbn1cblxuLnJzLW1pbmktYmFyLmlzLXByZXZpZXctYWRkIHtcbiAgICBmaWxsOiAjNjBhNWZhO1xuICAgIHN0cm9rZTogIzI1NjNlYjtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAyIDI7XG59XG5cbi5ycy1taW5pLWJhci5pcy1wcmV2aWV3LXJlbW92ZSB7XG4gICAgZmlsbDogI2Y4NzE3MTtcbiAgICBzdHJva2U6ICNkYzI2MjY7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMiAyO1xufVxuXG4ucnMtbWluaS1kaW0tb3ZlcmxheSB7XG4gICAgZmlsbDogI2ZmZmZmZjtcbiAgICBvcGFjaXR5OiAwLjYyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ucnMtbWluaS16b29tLWxlbnMge1xuICAgIGZpbGw6ICMzYjgyZjY7XG4gICAgb3BhY2l0eTogMC4xODtcbiAgICBzdHJva2U6ICMyNTYzZWI7XG4gICAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnJzLW1pbmktaGl0LXRhcmdldCB7XG4gICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucnMtbWluaS1yb3ctbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBmaWxsOiAjNjQ3NDhiO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5ycy1taW5pLWVtcHR5LXRleHQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmaWxsOiAjOTRhM2I4O1xufVxuXG4vKiBTcGxpdCBab25lIE1hcCBEaXZpZGluZyBMaW5lIE92ZXJsYXkgKi9cbi5ycy1zcGxpdC16b25lLWxpbmUtb3ZlcmxheSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucnMtc3BsaXQtem9uZS1saW5lIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogI2Y1OWUwYjtcbiAgICBzdHJva2Utd2lkdGg6IDIuNXB4O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDggNjtcbiAgICB2ZWN0b3ItZWZmZWN0OiBub24tc2NhbGluZy1zdHJva2U7XG59XG4ucnMtc3BsaXQtem9uZS1saW5lLmlzLWVkaXRpbmcge1xuICAgIGZpbGw6IG5vbmU7XG4gICAgc3Ryb2tlOiAjM2I4MmY2O1xuICAgIHN0cm9rZS13aWR0aDogM3B4O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYgNDtcbn1cbi5ycy1zcGxpdC16b25lLWxpbmUtaGl0YXJlYSB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6IHRyYW5zcGFyZW50O1xuICAgIHN0cm9rZS13aWR0aDogMjZweDtcbiAgICB2ZWN0b3ItZWZmZWN0OiBub24tc2NhbGluZy1zdHJva2U7XG4gICAgcG9pbnRlci1ldmVudHM6IHN0cm9rZTtcbiAgICBjdXJzb3I6IGdyYWI7XG59XG4ucnMtc3BsaXQtem9uZS1saW5lLWhpdGFyZWE6YWN0aXZlIHtcbiAgICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuLnJzLXNwbGl0LXpvbmUtaGFuZGxlIHtcbiAgICBmaWxsOiAjZmZmZmZmO1xuICAgIHN0cm9rZTogIzNiODJmNjtcbiAgICBzdHJva2Utd2lkdGg6IDIuNXB4O1xuICAgIHZlY3Rvci1lZmZlY3Q6IG5vbi1zY2FsaW5nLXN0cm9rZTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIGN1cnNvcjogZ3JhYjtcbn1cbi5ycy1zcGxpdC16b25lLWhhbmRsZTpob3ZlciB7XG4gICAgZmlsbDogI2RiZWFmZTtcbiAgICBzdHJva2Utd2lkdGg6IDMuNXB4O1xufVxuLnJzLXNwbGl0LXpvbmUtaGFuZGxlOmFjdGl2ZSB7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbiAgICBmaWxsOiAjM2I4MmY2O1xufVxuLnJzLXNwbGl0LXpvbmUtaGFuZGxlLW1pZCB7XG4gICAgZmlsbDogI2Y1OWUwYjtcbiAgICBzdHJva2U6ICNmZmZmZmY7XG59XG4ucnMtc3BsaXQtem9uZS1oYW5kbGUtbWlkOmhvdmVyIHtcbiAgICBmaWxsOiAjZDk3NzA2O1xufVxuXG4vKiBWaXJ0dWFsIFNwbGl0IFpvbmVzIE92ZXJsYXkgaW4gU1ZHICovXG4ucnMtc3BsaXQtem9uZS12aXJ0dWFsLXpvbmVzIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUge1xuICAgIHZlY3Rvci1lZmZlY3Q6IG5vbi1zY2FsaW5nLXN0cm9rZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7XG59XG4ucnMtc3BsaXQtdmlydHVhbC16b25lLXMxLnJzLXNwbGl0LXZpcnR1YWwtem9uZS13b3JrIHtcbiAgICBmaWxsOiByZ2JhKDMwLCAxMDcsIDYxLCAwLjE2KTtcbiAgICBzdHJva2U6IHJnYmEoMzAsIDEwNywgNjEsIDAuNzUpO1xuICAgIHN0cm9rZS13aWR0aDogMS41cHg7XG59XG4ucnMtc3BsaXQtdmlydHVhbC16b25lLXMxLnJzLXNwbGl0LXZpcnR1YWwtem9uZS1zYWZldHkge1xuICAgIGZpbGw6IHJnYmEoMTYsIDE4NSwgMTI5LCAwLjE1KTtcbiAgICBzdHJva2U6IHJnYmEoMTYsIDE4NSwgMTI5LCAwLjgpO1xuICAgIHN0cm9rZS13aWR0aDogMS41cHg7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogNSAzO1xufVxuLnJzLXNwbGl0LXZpcnR1YWwtem9uZS1zMi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtd29yayB7XG4gICAgZmlsbDogcmdiYSgyMzQsIDg4LCAxMiwgMC4xNik7XG4gICAgc3Ryb2tlOiByZ2JhKDIzNCwgODgsIDEyLCAwLjc1KTtcbiAgICBzdHJva2Utd2lkdGg6IDEuNXB4O1xufVxuLnJzLXNwbGl0LXZpcnR1YWwtem9uZS1zMi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtc2FmZXR5IHtcbiAgICBmaWxsOiByZ2JhKDI0NSwgMTU4LCAxMSwgMC4xNSk7XG4gICAgc3Ryb2tlOiByZ2JhKDI0NSwgMTU4LCAxMSwgMC44KTtcbiAgICBzdHJva2Utd2lkdGg6IDEuNXB4O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDUgMztcbn1cbi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtczEucnMtc3BsaXQtdmlydHVhbC16b25lLWF2b2lkLFxuLnJzLXNwbGl0LXZpcnR1YWwtem9uZS1zMS5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtb2JzdGFjbGUsXG4ucnMtc3BsaXQtdmlydHVhbC16b25lLXMxLnJzLXNwbGl0LXZpcnR1YWwtem9uZS1ub25fd29yayxcbi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtczEucnMtc3BsaXQtdmlydHVhbC16b25lLXBhc3NfdGhyb3VnaCB7XG4gICAgZmlsbDogcmdiYSgyNTUsIDIzNSwgNTksIDAuMTgpO1xuICAgIHN0cm9rZTogcmdiYSgyMiwgMTYzLCA3NCwgMC44KTtcbiAgICBzdHJva2Utd2lkdGg6IDEuNXB4O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDUgMztcbn1cbi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtczIucnMtc3BsaXQtdmlydHVhbC16b25lLWF2b2lkLFxuLnJzLXNwbGl0LXZpcnR1YWwtem9uZS1zMi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtb2JzdGFjbGUsXG4ucnMtc3BsaXQtdmlydHVhbC16b25lLXMyLnJzLXNwbGl0LXZpcnR1YWwtem9uZS1ub25fd29yayxcbi5ycy1zcGxpdC12aXJ0dWFsLXpvbmUtczIucnMtc3BsaXQtdmlydHVhbC16b25lLXBhc3NfdGhyb3VnaCB7XG4gICAgZmlsbDogcmdiYSgyNTUsIDIzNSwgNTksIDAuMTgpO1xuICAgIHN0cm9rZTogcmdiYSgyMzQsIDg4LCAxMiwgMC44KTtcbiAgICBzdHJva2Utd2lkdGg6IDEuNXB4O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDUgMztcbn1cblxuLyogU3BsaXQgWm9uZSBhY3RpdmU6IGRpbSBvcmlnaW5hbCBmaWVsZCByb3dzIHRvIGZvY3VzIG9uIHNwbGl0IHJvd3MgKi9cbi5ycy11aS1zcGxpdC1hY3RpdmUtc3ZnIC5nLXJvd3MsXG4ucnMtdWktc3BsaXQtYWN0aXZlLXN2ZyAuZy1yb3ctaW5kZXhlcyB7XG4gICAgb3BhY2l0eTogMC4xNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbn1cblxuLyogU3BsaXQgUm93cyBvbiBTVkcgb3ZlcmxheSAqL1xuLnJzLXNwbGl0LXpvbmUtcm93cyB7XG4gICAgcG9pbnRlci1ldmVudHM6IHN0cm9rZTtcbn1cblxuLnJzLXNwbGl0LXJvdyB7XG4gICAgdmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlO1xuICAgIHN0cm9rZS13aWR0aDogMS41cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBzdHJva2U7XG4gICAgdHJhbnNpdGlvbjogc3Ryb2tlLXdpZHRoIDAuMXMgZWFzZSwgc3Ryb2tlIDAuMXMgZWFzZSwgb3BhY2l0eSAwLjFzIGVhc2U7XG59XG5cbi5ycy1zcGxpdC1yb3cucnMtc3BsaXQtcm93LXMxIHtcbiAgICBzdHJva2U6IHJnYmEoMjIsIDE2MywgNzQsIDAuNDUpO1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDMgMztcbiAgICBzdHJva2Utd2lkdGg6IDFweDtcbn1cblxuLnJzLXNwbGl0LXJvdy5ycy1zcGxpdC1yb3ctczIge1xuICAgIHN0cm9rZTogcmdiYSgyMzQsIDg4LCAxMiwgMC40NSk7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMyAzO1xuICAgIHN0cm9rZS13aWR0aDogMXB4O1xufVxuXG4ucnMtc3BsaXQtem9uZS1yb3dzLmlzLW1hcC10b29sLWFjdGl2ZSAucnMtc3BsaXQtcm93LnJzLXNwbGl0LXJvdy1zMSB7XG4gICAgc3Ryb2tlOiAjMTZhMzRhO1xufVxuXG4ucnMtc3BsaXQtem9uZS1yb3dzLmlzLW1hcC10b29sLWFjdGl2ZSAucnMtc3BsaXQtcm93LnJzLXNwbGl0LXJvdy1zMiB7XG4gICAgc3Ryb2tlOiAjZWE1ODBjO1xufVxuXG4ucnMtc3BsaXQtem9uZS1yb3dzLmlzLW1hcC10b29sLWFjdGl2ZSAucnMtc3BsaXQtcm93Om5vdCguc2VsZWN0ZWQpIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAzIDM7XG4gICAgc3Ryb2tlLXdpZHRoOiAxcHg7XG59XG5cbi5ycy1zcGxpdC1yb3cuc2tpcCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMiA0O1xuICAgIHN0cm9rZTogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnJzLXNwbGl0LXpvbmUtcm93cy5pcy1tYXAtdG9vbC1hY3RpdmUgLnJzLXNwbGl0LXJvdy5za2lwIHtcbiAgICBzdHJva2U6ICNkYzI2MjYgIWltcG9ydGFudDtcbn1cblxuLnJzLXNwbGl0LXJvdy5ycy1zcGxpdC1yb3ctczEuc2VsZWN0ZWQge1xuICAgIHN0cm9rZTogdHJhbnNwYXJlbnQ7XG4gICAgc3Ryb2tlLXdpZHRoOiAzcHg7XG4gICAgZmlsdGVyOiBub25lO1xufVxuXG4ucnMtc3BsaXQtcm93LnJzLXNwbGl0LXJvdy1zMi5zZWxlY3RlZCB7XG4gICAgc3Ryb2tlOiB0cmFuc3BhcmVudDtcbiAgICBzdHJva2Utd2lkdGg6IDNweDtcbiAgICBmaWx0ZXI6IG5vbmU7XG59XG5cbi8qIEhpZ2hsaWdodCBvbmx5IHZpYSB0aGUgLmhpZ2hsaWdodGVkIGNsYXNzIChvd25lZCBieSByb3dzZWxlY3Rvcl91aS5qcyk6XG4gICA6aG92ZXIgY2FuIHN0aWNrIHVuZGVyIHBvaW50ZXIgY2FwdHVyZSBhbmQgYWZ0ZXIgdG91Y2ggdGFwcy4gKi9cbi5ycy1zcGxpdC1yb3cuaGlnaGxpZ2h0ZWQge1xuICAgIHN0cm9rZTogI2ZiYmYyNCAhaW1wb3J0YW50O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICBzdHJva2Utd2lkdGg6IDJweCAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDJweCByZ2JhKDI1MSwgMTkxLCAzNiwgMC44KSk7XG59XG5cbi5ycy1zcGxpdC16b25lLXJvd3MuaXMtbWFwLXRvb2wtYWN0aXZlIC5ycy1zcGxpdC1yb3cuc2VsZWN0ZWQsXG4ucnMtc3BsaXQtem9uZS1yb3dzLmlzLW1hcC10b29sLWFjdGl2ZSAucnMtc3BsaXQtcm93LnNlbGVjdGVkLmhpZ2hsaWdodGVkIHtcbiAgICBzdHJva2U6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucnMtdWktY29tbW9uLXR1cm4tdGVtcGxhdGVzLWxhYmVsIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbjogOHB4IDA7XG59XG5cbi50dXJuLXRlbXBsYXRlLXJvdy10YXJnZXRzIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA4cHg7XG59XG5cbi50dXJuLXRlbXBsYXRlLXJvdy10YXJnZXQtZGV0YWlscyB7XG4gICAgbWluLXdpZHRoOiAyMTBweDtcbn1cblxuLnR1cm4tdGVtcGxhdGUtcm93LXRhcmdldC1kZXRhaWxzIHN1bW1hcnkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnR1cm4tdGVtcGxhdGUtcm93LXRhcmdldC1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogOHB4O1xuICAgIG1hcmdpbjogNnB4IDA7XG59XG5cbi50dXJuLXRlbXBsYXRlLXJvdy10YXJnZXQtbGlzdCB7XG4gICAgbWF4LWhlaWdodDogMTgwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi50dXJuLXRlbXBsYXRlLXJvdy10YXJnZXQtbGlzdCBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDZweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwgIi5oYi11aSBsYWJlbCA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIGZsZXg6IDE7XG59XG4uaGItdWkgaW5wdXQsXG4uaGItdWkgc2VsZWN0IHtcbiAgICBmbGV4OiAwICFpbXBvcnRhbnQ7XG59XG4uaGItdWkgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgd2lkdGg6IDUwcHg7XG59XG4uaGItdWkgc2VsZWN0IHtcbiAgICBtaW4td2lkdGg6IDEyMHB4O1xufVxuLmhiLXVpIHNlbGVjdC5oYi11aS1wYXNzZXMge1xuICAgIG1pbi13aWR0aDogNTBweDtcbn1cbi5oYi11aSBzdWIge1xuICAgIG1pbi13aWR0aDogMWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhiLXVpLWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICBjdXJzb3I6IHdhaXQ7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbn1cblxuLmhiLXVpLWxvYWRpbmctc3Bpbm5lciB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGJvcmRlcjogNHB4IHNvbGlkIGJsYWNrO1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2sgdHJhbnNwYXJlbnQgYmxhY2sgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGFuaW1hdGlvbjogYnVzeV9zcGluIDAuOHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG4iLCAiLm11bHRpLXNlbGVjdG9yIHtcclxuICAgIHBhZGRpbmc6IDRweCA1cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmF5LTMwMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIjtcclxufVxyXG4ubXVsdGktc2VsZWN0b3IuZWRpdGFibGUge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufSIsICIuZnAtdWkgbGFiZWwgPiBzcGFuOmZpcnN0LWNoaWxkIHtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuLmZwLXVpIGlucHV0LFxyXG4uZnAtdWkgc2VsZWN0IHtcclxuICAgIGZsZXg6IGluaGVyaXQgIWltcG9ydGFudDtcclxufVxyXG4uZnAtdWkgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XHJcbiAgICB3aWR0aDogNTBweDtcclxufVxyXG4uZnAtdWkgc3ViIHtcclxuICAgIG1pbi13aWR0aDogMWVtO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi5mcC11aSBsYWJlbFtuYW1lPVwiYXZvaWRfem9uZXNcIl0ge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcbi5mcC11aSBzZWxlY3Qge1xyXG4gICAgbWF4LXdpZHRoOiA3MCU7XHJcbn1cclxuLmZwLXVpLXNlbGVjdG9yIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZjA7XHJcbn0iLCAiLmRpYWxvZy5kZXZpY2UtcmVwb3J0LWltcG9ydC1kaWFsb2cge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgaW5zZXQ6IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDQ0cHggOHB4IDhweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5odG1sLnNtYWxsIC5kaWFsb2cuZGV2aWNlLXJlcG9ydC1pbXBvcnQtZGlhbG9nIHsgcGFkZGluZzogOHB4OyB9XG5cbi5kaWFsb2cgPiBmb3JtLmRldmljZS1yZXBvcnQtaW1wb3J0LWZvcm0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IG1pbigxMDQwcHgsIDEwMCUpO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZGV2aWNlLXJlcG9ydC1pbXBvcnQtZm9ybSA+IC5kZXZpY2UtcmVwb3J0LWltcG9ydC1tYWluIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGdhcDogMTJweDtcbn1cblxuLmRldmljZS1yZXBvcnQtaW1wb3J0LW1haW4gPiAqIHsgZmxleC1zaHJpbms6IDA7IH1cbi5kZXZpY2UtcmVwb3J0LWltcG9ydC1tYWluIHAgeyBtYXJnaW46IDA7IH1cbi5kZXZpY2UtcmVwb3J0LWltcG9ydC1tYWluIC5yZXBvcnQtaW1wb3J0LWZpbGUgeyBoZWlnaHQ6IGF1dG87IGZsZXgtd3JhcDogd3JhcDsgfVxuLmRldmljZS1yZXBvcnQtaW1wb3J0LW1haW4gLnJlcG9ydC1pbXBvcnQtZmlsZSA+IGlucHV0IHsgbWluLXdpZHRoOiAwOyBtYXgtd2lkdGg6IDEwMCU7IH1cbi5kZXZpY2UtcmVwb3J0LWltcG9ydC1tYWluIC5yZXBvcnQtaW1wb3J0LWpzb24geyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB3aWR0aDogMTAwJTsgbWluLWhlaWdodDogMjIwcHg7IHJlc2l6ZTogdmVydGljYWw7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IH1cbi5yZXBvcnQtaW1wb3J0LXN1bW1hcnkgeyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGZsZXgtd3JhcDogd3JhcDsgZ2FwOiA4cHg7IGZvbnQtd2VpZ2h0OiA2MDA7IH1cbi5yZXBvcnQtaW1wb3J0LWd1aWRhbmNlIHsgY29sb3I6IHZhcigtLWhwLXRleHQtbXV0ZWQsICM1NTUpOyBmb250LXNpemU6IC45ZW07IH1cbi5yZXBvcnQtaW1wb3J0LXdhcm5pbmcgeyBjb2xvcjogIzg3NTMwMDsgfVxuLnJlcG9ydC1pbXBvcnQtZXJyb3IgeyBwYWRkaW5nOiAxMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjZDMzNDEwOyBiYWNrZ3JvdW5kOiAjZmZmMGVjOyBjb2xvcjogIzlmMjYwYTsgfVxuLnJlcG9ydC1pbXBvcnQtZGV2aWNlIHsgbWluLXdpZHRoOiAwOyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ocC1ib3JkZXIsICNkMGQ1ZGQpOyBib3JkZXItcmFkaXVzOiA2cHg7IG92ZXJmbG93OiBoaWRkZW47IH1cbi5yZXBvcnQtaW1wb3J0LWRldmljZS1oZWFkaW5nIHsgZGlzcGxheTogZmxleDsgbWluLWhlaWdodDogMzhweDsgcGFkZGluZzogOHB4IDEycHg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgZ2FwOiAxMHB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1ocC1zdXJmYWNlLW11dGVkLCAjZjRmNWY2KTsgfVxuLnJlcG9ydC1pbXBvcnQtZGV2aWNlLWhlYWRpbmcgPiBsYWJlbCB7IGhlaWdodDogYXV0bzsgbWluLXdpZHRoOiAwOyBtYXJnaW46IDA7IH1cbi5yZXBvcnQtaW1wb3J0LWRldmljZS1oZWFkaW5nIHN0cm9uZyB7IG92ZXJmbG93LXdyYXA6IGFueXdoZXJlOyB9XG4ucmVwb3J0LWltcG9ydC1kZXZpY2UtaGVhZGluZyBpbnB1dCB7IGZsZXg6IG5vbmU7IH1cbi5yZXBvcnQtaW1wb3J0LXN0YXR1cyB7IGZsZXg6IG5vbmU7IG1heC13aWR0aDogNTAlOyB0ZXh0LWFsaWduOiByaWdodDsgZm9udC1zaXplOiAuODVlbTsgfVxuOmlzKC5yZXBvcnQtaW1wb3J0LW90aGVyX3JvYm90LCAucmVwb3J0LWltcG9ydC1hbWJpZ3VvdXMsIC5yZXBvcnQtaW1wb3J0LWNsYXNzX21pc3NpbmcsIC5yZXBvcnQtaW1wb3J0LWNsYXNzX2NvbmZsaWN0KSAucmVwb3J0LWltcG9ydC1zdGF0dXMgeyBjb2xvcjogIzlmMjYwYTsgfVxuOmlzKC5yZXBvcnQtaW1wb3J0LW5ldywgLnJlcG9ydC1pbXBvcnQtYXR0YWNoLCAucmVwb3J0LWltcG9ydC11cGRhdGUpIC5yZXBvcnQtaW1wb3J0LXN0YXR1cyB7IGNvbG9yOiAjMWU2YjNkOyB9XG4ucmVwb3J0LWltcG9ydC1zZWxlY3RvcnMgeyBkaXNwbGF5OiBncmlkOyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7IGdhcDogMTBweDsgcGFkZGluZzogMTJweDsgfVxuLnJlcG9ydC1pbXBvcnQtc2VsZWN0b3JzID4gbGFiZWwgeyBoZWlnaHQ6IGF1dG87IG1pbi13aWR0aDogMDsgZmxleC13cmFwOiB3cmFwOyB9XG4ucmVwb3J0LWltcG9ydC1zZWxlY3RvcnMgPiBsYWJlbCA+IHNwYW46Zmlyc3QtY2hpbGQgeyB3aWR0aDogYXV0bzsgZmxleC1iYXNpczogMTAwJTsgfVxuLnJlcG9ydC1pbXBvcnQtc2VsZWN0b3JzIHNlbGVjdCB7IHdpZHRoOiAxMDAlOyBtaW4td2lkdGg6IDA7IG1heC13aWR0aDogMTAwJTsgfVxuLnJlcG9ydC1pbXBvcnQtZmllbGRzID4gc3VtbWFyeSB7IHBhZGRpbmc6IDAgMTJweCAxMHB4OyBjdXJzb3I6IHBvaW50ZXI7IH1cbi5yZXBvcnQtaW1wb3J0LXRhYmxlLXNjcm9sbCB7IG92ZXJmbG93OiBhdXRvOyBtYXJnaW46IDAgMTJweCAxMnB4OyB9XG4ucmVwb3J0LWltcG9ydC10YWJsZS1zY3JvbGwgPiB0YWJsZSB7IHRhYmxlLWxheW91dDogZml4ZWQ7IHdpZHRoOiAxMDAlOyBtaW4td2lkdGg6IDY1MHB4OyB9XG4ucmVwb3J0LWltcG9ydC10YWJsZS1zY3JvbGwgdGggeyBmb250LXNpemU6IC43OGVtOyB9XG4ucmVwb3J0LWltcG9ydC10YWJsZS1zY3JvbGwgOmlzKHRoLCB0ZCkgeyBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTsgfVxuLnJlcG9ydC1pbXBvcnQtdGFibGUtc2Nyb2xsIHRoOm50aC1jaGlsZCgxKSB7IHdpZHRoOiAyNiU7IH1cbi5yZXBvcnQtaW1wb3J0LXRhYmxlLXNjcm9sbCB0aDpudGgtY2hpbGQoMikgeyB3aWR0aDogMjIlOyB9XG4ucmVwb3J0LWltcG9ydC10YWJsZS1zY3JvbGwgdGg6bnRoLWNoaWxkKDMpIHsgd2lkdGg6IDQyJTsgfVxuLnJlcG9ydC1pbXBvcnQtdGFibGUtc2Nyb2xsIHRoOm50aC1jaGlsZCg0KSB7IHdpZHRoOiA3MHB4OyBvdmVyZmxvdy13cmFwOiBub3JtYWw7IH1cbi5yZXBvcnQtaW1wb3J0LXRhYmxlLXNjcm9sbCB0ZDpsYXN0LWNoaWxkIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4ucmVwb3J0LWltcG9ydC10YWJsZS1zY3JvbGwgdGQgPiA6aXMoaW5wdXQ6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pLCBzZWxlY3QpIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgd2lkdGg6IDEwMCU7IG1pbi13aWR0aDogMDsgbWF4LXdpZHRoOiAxMDAlOyB9XG4ucmVwb3J0LWltcG9ydC10YWJsZS1zY3JvbGwgc21hbGwgeyBkaXNwbGF5OiBibG9jazsgbWFyZ2luLXRvcDogM3B4OyBmb250LXNpemU6IC43OGVtOyB9XG4uZGV2aWNlLXJlcG9ydC1pbXBvcnQtZm9ybSAucmVwb3J0LWZpZWxkLXJlcXVpcmVkIHsgYmFja2dyb3VuZDogI2ZmZjBlYzsgfVxuLmRldmljZS1yZXBvcnQtaW1wb3J0LWZvcm0gLnJlcG9ydC1maWVsZC1taXNzaW5nIHsgYmFja2dyb3VuZDogI2ZmZjllODsgfVxuLmRldmljZS1yZXBvcnQtaW1wb3J0LWZvcm0gLnJlcG9ydC1maWVsZC1jaGFuZ2VkIHsgYmFja2dyb3VuZDogI2YwZjhmMTsgfVxuLmRldmljZS1yZXBvcnQtaW1wb3J0LWZvcm0gLnJlcG9ydC1pbXBvcnQtdGFibGUtc2Nyb2xsIHRib2R5IHRyOmhvdmVyIHsgY29sb3I6IGluaGVyaXQ7IC0tY29sb3I6IGluaGVyaXQ7IGJhY2tncm91bmQ6ICNlZGYyZjU7IH1cbi5yZXBvcnQtaW1wb3J0LXVubWFwcGVkIHsgbWFyZ2luOiAwIDEycHggMTJweDsgY29sb3I6IHZhcigtLWhwLXRleHQtbXV0ZWQsICM1NTUpOyBmb250LXNpemU6IC44NWVtOyB9XG4ucmVwb3J0LWltcG9ydC11bm1hcHBlZCBzdW1tYXJ5IHsgY3Vyc29yOiBwb2ludGVyOyB9XG4ucmVwb3J0LWltcG9ydC11bm1hcHBlZCBkbCB7IGRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDAsIDFmcik7IGdhcDogNHB4IDEycHg7IH1cbi5yZXBvcnQtaW1wb3J0LXVubWFwcGVkIDppcyhkdCwgZGQpIHsgbWFyZ2luOiAwOyBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTsgfVxuLmRldmljZS1yZXBvcnQtaW1wb3J0LWZvcm0gPiAuZm9vdGVyIHsgZmxleDogbm9uZTsgZmxleC13cmFwOiB3cmFwOyB9XG4ucmVwb3J0LWltcG9ydC1mb290ZXItc3BhY2UgeyBmbGV4OiAxOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgIC5kZXZpY2UtcmVwb3J0LWltcG9ydC1mb3JtID4gLmRldmljZS1yZXBvcnQtaW1wb3J0LW1haW4geyBwYWRkaW5nOiAxMHB4OyB9XG4gICAgLnJlcG9ydC1pbXBvcnQtc2VsZWN0b3JzIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTsgfVxuICAgIGh0bWwuc21hbGwgLmRldmljZS1yZXBvcnQtaW1wb3J0LWZvcm0gLnJlcG9ydC1pbXBvcnQtdGFibGUtc2Nyb2xsID4gdGFibGUgeyBtaW4td2lkdGg6IDY1MHB4ICFpbXBvcnRhbnQ7IHdpZHRoOiA2NTBweCAhaW1wb3J0YW50OyBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5yZXBvcnQtaW1wb3J0LWRldmljZS1oZWFkaW5nIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5yZXBvcnQtaW1wb3J0LXN0YXR1cyB7IG1heC13aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5kZXZpY2UtcmVwb3J0LWltcG9ydC1mb3JtID4gLmZvb3RlciB7IHBhZGRpbmc6IDhweDsgZ2FwOiA2cHg7IH1cbiAgICAucmVwb3J0LWltcG9ydC1mb290ZXItc3BhY2UgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgLmRldmljZS1yZXBvcnQtaW1wb3J0LWZvcm0gPiAuZm9vdGVyID4gYnV0dG9uIHsgZmxleDogMSAxIGF1dG87IG1pbi13aWR0aDogMDsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBO0FBQ0UsZUFBYTtBQUNiLGNBQVk7QUFDWixlQUFhO0FBQ2IsZ0JBQWM7QUFDZDtBQUFBLElBQUssTUFBTSxvQkFBb0I7QUFBQSxJQUFFLE1BQU0sbUJBQW1CO0FBQUEsSUFDckQsbURBQXdDLE9BQU8sUUFBUTtBQUFBLElBQ3ZELGtEQUF1QyxPQUFPO0FBQ3JEO0FBR0E7QUFDRSxlQUFhO0FBQ2IsY0FBWTtBQUNaLGVBQWE7QUFDYixnQkFBYztBQUNkO0FBQUEsSUFBSyxNQUFNLG1CQUFtQjtBQUFBLElBQUUsTUFBTSxrQkFBa0I7QUFBQSxJQUNuRCxrREFBdUMsT0FBTyxRQUFRO0FBQUEsSUFDdEQsaURBQXNDLE9BQU87QUFDcEQ7QUFHQTtBQUNFLGVBQWE7QUFDYixjQUFZO0FBQ1osZUFBYTtBQUNiLGdCQUFjO0FBQ2Q7QUFBQSxJQUFLLE1BQU0saUJBQWlCO0FBQUEsSUFBRSxNQUFNLGdCQUFnQjtBQUFBLElBQy9DLGdEQUFxQyxPQUFPLFFBQVE7QUFBQSxJQUNwRCwrQ0FBb0MsT0FBTztBQUNsRDtBQUdBO0FBQ0UsZUFBYTtBQUNiLGNBQVk7QUFDWixlQUFhO0FBQ2IsZ0JBQWM7QUFDZDtBQUFBLElBQUssTUFBTSx3QkFBd0I7QUFBQSxJQUFFLE1BQU0sc0JBQXNCO0FBQUEsSUFDNUQsc0RBQTJDLE9BQU8sUUFBUTtBQUFBLElBQzFELHFEQUEwQyxPQUFPO0FBQ3hEOzs7QUMxQ0E7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 */
