/* ADD BELL FONTS */
@font-face {
  font-family: 'BellSlimMediumRegular';
  src: url("../../font/bell/bellslim_medium-webfont.eot");
  src: url("../../font/bell/bellslim_medium-webfont.eot?#iefix") format("embedded-opentype"), url("../../font/bell/bellslim_medium-webfont.woff") format("woff"), url("../../font/bell/bellslim_medium-webfont.ttf") format("truetype"), url("../../font/bell/bellslim_medium-webfont.svg#BellSlimMediumRegular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'BellSlimSemiBoldRegular';
  src: url("../../font/bell/bellslim_semibold-webfont.eot");
  src: url("../../font/bell/bellslim_semibold-webfont.eot?#iefix") format("embedded-opentype"), url("../../font/bell/bellslim_semibold-webfont.woff") format("woff"), url("../../font/bell/bellslim_semibold-webfont.ttf") format("truetype"), url("../../font/bell/bellslim_semibold-webfont.svg#BellSlimSemiBoldRegular") format("svg");
  font-weight: normal;
  font-style: normal; }

/* PRIMARY COLORS */
/* OTHER COLORS */
/* ALL GENERIC FONT VARIABLES MUST GO HERE */
/* The font sizes for h1-h6. */
/* The font sizes for h1-h6. */
/* MODAL */
/* Z-Index */
/* Dashtile variables */
/* Button specific styles */
/** Base Styles **/
/* BASE STYLES */
/* INNER MODAL WINDOW */
/* **** DEVICE ICONS **** */
.deviceIcon, .deviceIconSolid {
  width: 57px;
  height: 57px;
  background-position: center;
  background-repeat: no-repeat; }

.modemIcon {
  width: 57px;
  height: 57px;
  background-position: center;
  background-repeat: no-repeat; }

/* Device Images */
.deviceIcon.blackberry {
  background-image: url("../../images/bell/icons/icon-blackberryOutline.png");
  background-image: url("../../images/bell/icons/icon-blackberryOutline.svg"); }

.deviceIcon.blackberry.selected,
.deviceIconSolid.blackberry {
  background-image: url("../../images/bell/icons/icon-blackberry.png");
  background-image: url("../../images/bell/icons/icon-blackberry.svg"); }

[status="DISCONNECTED"] .deviceIcon.blackberry, [status="DISCONNECTED"] .deviceIconSolid.blackberry, [status="DISABLED"] .deviceIcon.blackberry, [status="DISABLED"] .deviceIconSolid.blackberry, .device.disabled .deviceIcon.blackberry, .device.disabled .deviceIconSolid.blackberry {
  background-image: url("../../images/bell/icons/icon-blackberry_grey.png");
  background-image: url("../../images/bell/icons/icon-blackberry_grey.svg"); }

.deviceIcon.cell-phone {
  background-image: url("../../images/bell/icons/icon-cell-phoneOutline.png");
  background-image: url("../../images/bell/icons/icon-cell-phoneOutline.svg"); }

.deviceIcon.cell-phone.selected,
.deviceIconSolid.cell-phone {
  background-image: url("../../images/bell/icons/icon-cell-phone.png");
  background-image: url("../../images/bell/icons/icon-cell-phone.svg"); }

[status="DISCONNECTED"] .deviceIcon.cell-phone, [status="DISCONNECTED"] .deviceIconSolid.cell-phone, [status="DISABLED"] .deviceIcon.cell-phone, [status="DISABLED"] .deviceIconSolid.cell-phone, .device.disabled .deviceIcon.cell-phone, .device.disabled .deviceIconSolid.cell-phone {
  background-image: url("../../images/bell/icons/icon-cell-phone_grey.png");
  background-image: url("../../images/bell/icons/icon-cell-phone_grey.svg"); }

.deviceIcon.dvd-bluray {
  background-image: url("../../images/bell/icons/icon-dvd-blurayOutline.png");
  background-image: url("../../images/bell/icons/icon-dvd-blurayOutline.svg"); }

.deviceIcon.dvd-bluray.selected,
.deviceIconSolid.dvd-bluray {
  background-image: url("../../images/bell/icons/icon-dvd-bluray.png");
  background-image: url("../../images/bell/icons/icon-dvd-bluray.svg"); }

[status="DISCONNECTED"] .deviceIcon.dvd-bluray, [status="DISCONNECTED"] .deviceIconSolid.dvd-bluray, [status="DISABLED"] .deviceIcon.dvd-bluray, [status="DISABLED"] .deviceIconSolid.dvd-bluray, .device.disabled .deviceIcon.dvd-bluray, .device.disabled .deviceIconSolid.dvd-bluray {
  background-image: url("../../images/bell/icons/icon-dvd-bluray_grey.png");
  background-image: url("../../images/bell/icons/icon-dvd-bluray_grey.svg"); }

.deviceIcon.game-console {
  background-image: url("../../images/bell/icons/icon-game-consoleOutline.png");
  background-image: url("../../images/bell/icons/icon-game-consoleOutline.svg"); }

.deviceIcon.game-console.selected,
.deviceIconSolid.game-console {
  background-image: url("../../images/bell/icons/icon-game-console.png");
  background-image: url("../../images/bell/icons/icon-game-console.svg"); }

[status="DISCONNECTED"] .deviceIcon.game-console, [status="DISCONNECTED"] .deviceIconSolid.game-console, [status="DISABLED"] .deviceIcon.game-console, [status="DISABLED"] .deviceIconSolid.game-console, .device.disabled .deviceIcon.game-console, .device.disabled .deviceIconSolid.game-console {
  background-image: url("../../images/bell/icons/icon-game-console_grey.png");
  background-image: url("../../images/bell/icons/icon-game-console_grey.svg"); }

.deviceIcon.guest-device {
  background-image: url("../../images/bell/icons/icon-guest-deviceOutline.png");
  background-image: url("../../images/bell/icons/icon-guest-deviceOutline.svg"); }

.deviceIcon.guest-device.selected,
.deviceIconSolid.guest-device {
  background-image: url("../../images/bell/icons/icon-guest-device.png");
  background-image: url("../../images/bell/icons/icon-guest-device.svg"); }

[status="DISCONNECTED"] .deviceIcon.guest-device, [status="DISCONNECTED"] .deviceIconSolid.guest-device, [status="DISABLED"] .deviceIcon.guest-device, [status="DISABLED"] .deviceIconSolid.guest-device, .device.disabled .deviceIcon.guest-device, .device.disabled .deviceIconSolid.guest-device {
  background-image: url("../../images/bell/icons/icon-guest-device_grey.png");
  background-image: url("../../images/bell/icons/icon-guest-device_grey.svg"); }

.deviceIcon.laptop {
  background-image: url("../../images/bell/icons/icon-laptopOutline.png");
  background-image: url("../../images/bell/icons/icon-laptopOutline.svg"); }

.deviceIcon.laptop.selected,
.deviceIconSolid.laptop {
  background-image: url("../../images/bell/icons/icon-laptop.png");
  background-image: url("../../images/bell/icons/icon-laptop.svg"); }

[status="DISCONNECTED"] .deviceIcon.laptop, [status="DISCONNECTED"] .deviceIconSolid.laptop, [status="DISABLED"] .deviceIcon.laptop, [status="DISABLED"] .deviceIconSolid.laptop, .device.disabled .deviceIcon.laptop, .device.disabled .deviceIconSolid.laptop {
  background-image: url("../../images/bell/icons/icon-laptop_grey.png");
  background-image: url("../../images/bell/icons/icon-laptop_grey.svg"); }

.deviceIcon.smartphone {
  background-image: url("../../images/bell/icons/icon-smartphoneOutline.png");
  background-image: url("../../images/bell/icons/icon-smartphoneOutline.svg"); }

.deviceIcon.smartphone.selected,
.deviceIconSolid.smartphone {
  background-image: url("../../images/bell/icons/icon-smartphone.png");
  background-image: url("../../images/bell/icons/icon-smartphone.svg"); }

[status="DISCONNECTED"] .deviceIcon.smartphone, [status="DISCONNECTED"] .deviceIconSolid.smartphone, [status="DISABLED"] .deviceIcon.smartphone, [status="DISABLED"] .deviceIconSolid.smartphone, .device.disabled .deviceIcon.smartphone, .device.disabled .deviceIconSolid.smartphone {
  background-image: url("../../images/bell/icons/icon-smartphone_grey.png");
  background-image: url("../../images/bell/icons/icon-smartphone_grey.svg"); }

.deviceIcon.printer {
  background-image: url("../../images/bell/icons/icon-printerOutline.png");
  background-image: url("../../images/bell/icons/icon-printerOutline.svg"); }

.deviceIcon.printer.selected,
.deviceIconSolid.printer {
  background-image: url("../../images/bell/icons/icon-printer.png");
  background-image: url("../../images/bell/icons/icon-printer.svg"); }

[status="DISCONNECTED"] .deviceIcon.printer, [status="DISCONNECTED"] .deviceIconSolid.printer, [status="DISABLED"] .deviceIcon.printer, [status="DISABLED"] .deviceIconSolid.printer, .device.disabled .deviceIcon.printer, .device.disabled .deviceIconSolid.printer {
  background-image: url("../../images/bell/icons/icon-printer_grey.png");
  background-image: url("../../images/bell/icons/icon-printer_grey.svg"); }

.deviceIcon.router {
  background-image: url("../../images/bell/icons/icon-routerOutline.png");
  background-image: url("../../images/bell/icons/icon-routerOutline.svg"); }

.deviceIcon.router.selected,
.deviceIconSolid.router {
  background-image: url("../../images/bell/icons/icon-router.png");
  background-image: url("../../images/bell/icons/icon-router.svg"); }

[status="DISCONNECTED"] .deviceIcon.router, [status="DISCONNECTED"] .deviceIconSolid.router, [status="DISABLED"] .deviceIcon.router, [status="DISABLED"] .deviceIconSolid.router, .device.disabled .deviceIcon.router, .device.disabled .deviceIconSolid.router {
  background-image: url("../../images/bell/icons/icon-router_grey.png");
  background-image: url("../../images/bell/icons/icon-router_grey.svg"); }

.deviceIcon.av-receiver {
  background-image: url("../../images/bell/icons/icon-av-receiverOutline.png");
  background-image: url("../../images/bell/icons/icon-av-receiverOutline.svg"); }

.deviceIcon.av-receiver.selected,
.deviceIconSolid.av-receiver {
  background-image: url("../../images/bell/icons/icon-av-receiver.png");
  background-image: url("../../images/bell/icons/icon-av-receiver.svg"); }

[status="DISCONNECTED"] .deviceIcon.av-receiver, [status="DISCONNECTED"] .deviceIconSolid.av-receiver, [status="DISABLED"] .deviceIcon.av-receiver, [status="DISABLED"] .deviceIconSolid.av-receiver, .device.disabled .deviceIcon.av-receiver, .device.disabled .deviceIconSolid.av-receiver {
  background-image: url("../../images/bell/icons/icon-av-receiver_grey.png");
  background-image: url("../../images/bell/icons/icon-av-receiver_grey.svg"); }

.deviceIcon.tablet {
  background-image: url("../../images/bell/icons/icon-tabletOutline.png");
  background-image: url("../../images/bell/icons/icon-tabletOutline.svg"); }

.deviceIcon.tablet.selected,
.deviceIconSolid.tablet {
  background-image: url("../../images/bell/icons/icon-tablet.png");
  background-image: url("../../images/bell/icons/icon-tablet.svg"); }

[status="DISCONNECTED"] .deviceIcon.tablet, [status="DISCONNECTED"] .deviceIconSolid.tablet, [status="DISABLED"] .deviceIcon.tablet, [status="DISABLED"] .deviceIconSolid.tablet, .device.disabled .deviceIcon.tablet, .device.disabled .deviceIconSolid.tablet {
  background-image: url("../../images/bell/icons/icon-tablet_grey.png");
  background-image: url("../../images/bell/icons/icon-tablet_grey.svg"); }

.deviceIcon.smart-tv {
  background-image: url("../../images/bell/icons/icon-smart-tvOutline.png");
  background-image: url("../../images/bell/icons/icon-smart-tvOutline.svg"); }

.deviceIcon.smart-tv.selected,
.deviceIconSolid.smart-tv {
  background-image: url("../../images/bell/icons/icon-smart-tv.png");
  background-image: url("../../images/bell/icons/icon-smart-tv.svg"); }

[status="DISCONNECTED"] .deviceIcon.smart-tv, [status="DISCONNECTED"] .deviceIconSolid.smart-tv, [status="DISABLED"] .deviceIcon.smart-tv, [status="DISABLED"] .deviceIconSolid.smart-tv, .device.disabled .deviceIcon.smart-tv, .device.disabled .deviceIconSolid.smart-tv {
  background-image: url("../../images/bell/icons/icon-smart-tv_grey.png");
  background-image: url("../../images/bell/icons/icon-smart-tv_grey.svg"); }

.deviceIcon.unknownDevice {
  background-image: url("../../images/bell/icons/icon-unknownDeviceOutline.png");
  background-image: url("../../images/bell/icons/icon-unknownDeviceOutline.svg"); }

.deviceIcon.unknownDevice.selected,
.deviceIconSolid.unknownDevice {
  background-image: url("../../images/bell/icons/icon-unknownDevice.png");
  background-image: url("../../images/bell/icons/icon-unknownDevice.svg"); }

[status="DISCONNECTED"] .deviceIcon.unknownDevice, [status="DISCONNECTED"] .deviceIconSolid.unknownDevice, [status="DISABLED"] .deviceIcon.unknownDevice, [status="DISABLED"] .deviceIconSolid.unknownDevice, .device.disabled .deviceIcon.unknownDevice, .device.disabled .deviceIconSolid.unknownDevice {
  background-image: url("../../images/bell/icons/icon-unknownDevice_grey.png");
  background-image: url("../../images/bell/icons/icon-unknownDevice_grey.svg"); }

.deviceIcon.usb {
  background-image: url("../../images/bell/icons/icon-usbOutline.png");
  background-image: url("../../images/bell/icons/icon-usbOutline.svg"); }

.deviceIcon.usb.selected,
.deviceIconSolid.usb {
  background-image: url("../../images/bell/icons/icon-usb.png");
  background-image: url("../../images/bell/icons/icon-usb.svg"); }

[status="DISCONNECTED"] .deviceIcon.usb, [status="DISCONNECTED"] .deviceIconSolid.usb, [status="DISABLED"] .deviceIcon.usb, [status="DISABLED"] .deviceIconSolid.usb, .device.disabled .deviceIcon.usb, .device.disabled .deviceIconSolid.usb {
  background-image: url("../../images/bell/icons/icon-usb_grey.png");
  background-image: url("../../images/bell/icons/icon-usb_grey.svg"); }

.deviceIcon.desktop-comp {
  background-image: url("../../images/bell/icons/icon-desktop-compOutline.png");
  background-image: url("../../images/bell/icons/icon-desktop-compOutline.svg"); }

.deviceIcon.desktop-comp.selected,
.deviceIconSolid.desktop-comp {
  background-image: url("../../images/bell/icons/icon-desktop-comp.png");
  background-image: url("../../images/bell/icons/icon-desktop-comp.svg"); }

[status="DISCONNECTED"] .deviceIcon.desktop-comp, [status="DISCONNECTED"] .deviceIconSolid.desktop-comp, [status="DISABLED"] .deviceIcon.desktop-comp, [status="DISABLED"] .deviceIconSolid.desktop-comp, .device.disabled .deviceIcon.desktop-comp, .device.disabled .deviceIconSolid.desktop-comp {
  background-image: url("../../images/bell/icons/icon-desktop-comp_grey.png");
  background-image: url("../../images/bell/icons/icon-desktop-comp_grey.svg"); }

.deviceIcon.vap-device {
  background-image: url("../../images/bell/icons/icon-vap-deviceOutline.png");
  background-image: url("../../images/bell/icons/icon-vap-deviceOutline.svg"); }

.deviceIcon.vap-device.selected,
.deviceIconSolid.vap-device {
  background-image: url("../../images/bell/icons/icon-vap-device.png");
  background-image: url("../../images/bell/icons/icon-vap-device.svg"); }

[status="DISCONNECTED"] .deviceIcon.vap-device, [status="DISCONNECTED"] .deviceIconSolid.vap-device, [status="DISABLED"] .deviceIcon.vap-device, [status="DISABLED"] .deviceIconSolid.vap-device, .device.disabled .deviceIcon.vap-device, .device.disabled .deviceIconSolid.vap-device {
  background-image: url("../../images/bell/icons/icon-vap-device_grey.png");
  background-image: url("../../images/bell/icons/icon-vap-device_grey.svg"); }

.deviceIcon.unconfigured-device {
  background-image: url("../../images/bell/icons/icon-unconfigured-deviceOutline.png");
  background-image: url("../../images/bell/icons/icon-unconfigured-deviceOutline.svg"); }

.deviceIcon.unconfigured-device.selected,
.deviceIconSolid.unconfigured-device {
  background-image: url("../../images/bell/icons/icon-unconfigured-device.png");
  background-image: url("../../images/bell/icons/icon-unconfigured-device.svg"); }

[status="DISCONNECTED"] .deviceIcon.unconfigured-device, [status="DISCONNECTED"] .deviceIconSolid.unconfigured-device, [status="DISABLED"] .deviceIcon.unconfigured-device, [status="DISABLED"] .deviceIconSolid.unconfigured-device, .device.disabled .deviceIcon.unconfigured-device, .device.disabled .deviceIconSolid.unconfigured-device {
  background-image: url("../../images/bell/icons/icon-unconfigured-device_grey.png");
  background-image: url("../../images/bell/icons/icon-unconfigured-device_grey.svg"); }

.deviceIcon.bell-set-box {
  background-image: url("../../images/bell/icons/icon-bell-set-boxOutline.png");
  background-image: url("../../images/bell/icons/icon-bell-set-boxOutline.svg"); }

.deviceIcon.bell-set-box.selected,
.deviceIconSolid.bell-set-box {
  background-image: url("../../images/bell/icons/icon-bell-set-box.png");
  background-image: url("../../images/bell/icons/icon-bell-set-box.svg"); }

[status="DISCONNECTED"] .deviceIcon.bell-set-box, [status="DISCONNECTED"] .deviceIconSolid.bell-set-box, [status="DISABLED"] .deviceIcon.bell-set-box, [status="DISABLED"] .deviceIconSolid.bell-set-box, .device.disabled .deviceIcon.bell-set-box, .device.disabled .deviceIconSolid.bell-set-box {
  background-image: url("../../images/bell/icons/icon-bell-set-box_grey.png");
  background-image: url("../../images/bell/icons/icon-bell-set-box_grey.svg"); }

.modemIcon.power {
  background-image: url("../../images/bell/icons/icon-modem-power.png"); }

.modemIcon.wanLink {
  background-image: url("../../images/bell/icons/icon-modem-wanLink.png"); }

.modemIcon.hpna {
  background-image: url("../../images/bell/icons/icon-modem-hpna.png"); }

.modemIcon.fibeInternet {
  background-image: url("../../images/bell/icons/icon-modem-fibeInternet.png"); }

.modemIcon.fibeTV {
  background-image: url("../../images/bell/icons/icon-modem-fibeTV.png"); }

.modemIcon.totalConnect {
  background-image: url("../../images/bell/icons/icon-modem-totalConnect.png"); }

.modemIcon.wifi {
  background-image: url("../../images/bell/icons/icon-modem-wifi.png"); }

.modemIcon.brightnessControl {
  background-image: url("../../images/bell/icons/icon-modem-brightnessControl.png"); }

.modemIcon.wps {
  background-image: url("../../images/bell/icons/icon-modem-wps.png"); }

.modemIcon.passwordRecovery {
  background-image: url("../../images/bell/icons/icon-modem-passwordRecovery.png"); }

.modemIcon.passwordRecovery2 {
  background-image: url("../../images/bell/icons/icon-modem-passwordRecovery2.png"); }

.modemIcon.info {
  background-image: url("../../images/bell/icons/icon-modem-info.png"); }

.modemIcon.wps2 {
  background-image: url("../../images/bell/icons/icon-modem-wps2.png"); }

/* *** RESET STYLES *** */
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 16px;
  font-family: Helvetica, Arial, sans-serif;
  min-width: 510px; }

body {
  font-size: 1em;
  line-height: 1em; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

h1 {
  font-family: BellSlimSemiBoldRegular, Helvetica, Arial, sans-serif;
  text-transform: none;
  line-height: 1.25em;
  padding-bottom: 15px; }

h2, h3, h4, h5, h6 {
  font-family: BellSlimSemiBoldRegular, Helvetica, Arial, sans-serif;
  line-height: 1.25em;
  padding-bottom: 15px;
  font-weight: none; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Address style set to `bolder` in Firefox 4+, Safari, and Chrome. */
b, strong {
  font-weight: bold; }

nav ul, nav ol {
  list-style: none;
  list-style-image: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td, th {
  padding: 0; }

/* *** FLOATS *** */
.float {
  float: left; }

.floatRight {
  float: right; }

.noFloat {
  float: none; }

.clearFloat {
  float: none;
  clear: both; }

.align-center {
  text-align: center; }

.floatChildren > * {
  float: left; }

.floatChildren:after {
  /*, *:last-child:after {*/
  content: '';
  display: block;
  visibility: hidden;
  height: 0;
  width: 0;
  clear: both; }

.clearChildren:after {
  content: '';
  display: block;
  visibility: hidden;
  height: 0;
  clear: both; }

.clearfix {
  width: 0;
  height: 0;
  border: 0;
  font-size: 0;
  clear: both; }

/* *** MULTI-ELEMENTS STYLES *** */
button, input, select, textarea, .dropDiv {
  color: inherit;
  font: inherit;
  padding: 0 1.5em; }

button, .dropDiv {
  border: 0;
  font-size: 0.9em;
  line-height: 1.2em;
  min-width: 115px;
  height: 32px;
  line-height: 32px; }

/* *** BUTTONS *** */
button {
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  border-radius: 15px;
  cursor: pointer; }
  button:focus {
    outline: 0; }
  button.center {
    margin-left: auto;
    margin-right: auto; }
  button.topSpace {
    margin-top: 25px; }

/* BUTTONS */
button {
  line-height: 29px;
  background-color: #013778;
  border: 2px solid #013778;
  color: #fff;
  white-space: nowrap; }

button.cancel, button.white, .smallDivButton.white {
  font-size: 0.9em;
  font-weight: normal;
  height: 32px;
  background-color: #013778;
  border: 2px solid #013778;
  color: #fff; }

button.grey {
  background-color: #e1e1e1;
  color: #686868;
  border: none; }

button.blueOutline {
  font-size: 0.9em;
  font-weight: normal;
  height: 32px;
  background-color: #fff;
  border: 1px solid #013778;
  color: #013778; }

button.blueOutline:disabled {
  background-color: #c1c1c1 !important;
  border-color: #e1e1e1 !important;
  color: #fff !important; }

button.whiteOutline {
  background-color: transparent;
  border: 2px solid #fff;
  color: #fff; }

button.whiteOutline:disabled {
  background-color: #c1c1c1 !important;
  border-color: #e1e1e1 !important;
  color: #fff !important; }

.boxHeader button {
  height: 31px;
  line-height: 31px; }

.brand-virgin #no {
  background-color: #013778;
  border: 2px solid #013778;
  color: #fff; }

.smallDivButton {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  padding: 2px 15px;
  font-size: 12.8px; }

.buttonContainer button:not(:last-child) {
  margin-right: 25px; }

.buttonContainer.onePerLine button {
  margin-right: 0; }

.buttonContainer.standalone {
  padding-top: 40px; }

.buttonContainer.centerButtons {
  text-align: center; }

/* *** LISTS *** */
ul {
  list-style-type: none; }

ul.inlineItems li {
  float: left; }

ul.bullets {
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 30px; }
  ul.bullets ul.bullets {
    list-style-type: circle; }

ul ul {
  margin-top: 5px; }

/* DEVICE ICONS LIST */
ul.deviceIcons li {
  cursor: pointer; }
  ul.deviceIcons li:not(.selected) {
    opacity: 0.5; }

ul.deviceIcons.inlineItems.wide {
  width: 420px; }

ul.deviceIcons.inlineItems.narrow {
  width: 355px; }

/* *** COMMON UI FEATURES *** */
.pageActionsContainer {
  position: absolute;
  bottom: 40px;
  left: 0;
  width: 100%;
  padding: 0 1.8018%; }

.onOffToggle {
  position: relative;
  width: 80px;
  height: 31px;
  font-size: 11.2px;
  background-color: #e1e1e1;
  -webkit-border-radius: 13px;
  -moz-border-radius: 13px;
  -ms-border-radius: 13px;
  border-radius: 13px;
  border: solid 2px #fff;
  display: inline-block;
  cursor: pointer;
  margin-top: -2px; }
  .onOffToggle .onOffSlider {
    position: absolute;
    width: 50%;
    height: 100%;
    background-color: #013778;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    -ms-border-radius: 15px;
    border-radius: 15px; }
  .onOffToggle[state="on"] .onOffSlider {
    left: 0; }
  .onOffToggle[state="off"] .onOffSlider {
    right: 0; }
  .onOffToggle span {
    position: absolute;
    color: #fff;
    display: inline-block;
    line-height: 27px; }
  .onOffToggle span.toggleOn {
    left: 0;
    width: 50%;
    text-align: center;
    user-select: none;
    /* CSS3 (little to no support) */
    -ms-user-select: none;
    /* IE 10+ */
    -moz-user-select: none;
    /* Gecko (Firefox) */
    -webkit-user-select: none;
    /* Webkit (Safari, Chrome) */ }
  .onOffToggle span.toggleOff {
    right: 0;
    width: 50%;
    text-align: center;
    user-select: none;
    /* CSS3 (little to no support) */
    -ms-user-select: none;
    /* IE 10+ */
    -moz-user-select: none;
    /* Gecko (Firefox) */
    -webkit-user-select: none;
    /* Webkit (Safari, Chrome) */ }
  .onOffToggle.onGreyBG {
    background-color: #fff;
    border-color: #fff; }
    .onOffToggle.onGreyBG .onOffSlider {
      background-color: #013778; }
    .onOffToggle.onGreyBG span {
      color: #e1e1e1; }
  .onOffToggle.onDarkBG {
    background-color: #e1e1e1;
    border-color: #e1e1e1; }
    .onOffToggle.onDarkBG .onOffSlider {
      background-color: #013778; }
    .onOffToggle.onDarkBG span {
      color: #fff; }

.dropDiv {
  position: relative; }

.dropDiv span {
  padding: 0 5px; }

.dropArrow {
  position: absolute;
  right: 10px;
  top: 10px;
  height: 15px;
  width: 15px;
  line-height: 15px; }

.caption {
  padding-top: 10px;
  width: 90%;
  font-size: 11.2px;
  font-style: italic;
  line-height: 1.25em;
  color: #686868; }
  .caption.tightFit {
    padding-top: 0;
    line-height: 1.12;
    width: auto; }
  .caption.checkboxIndent {
    padding-left: 34px; }

#emailAndSMS {
  border-top: 1px solid #e1e1e1;
  border-bottom: 1px solid #e1e1e1; }
  #emailAndSMS #editEmailAndSMSButton {
    margin-top: 5px;
    float: right;
    width: 40px;
    height: 40px;
    background: transparent url("../../images/bell/ui/editButton-sml.png") no-repeat center;
    cursor: pointer; }

.service .statusIcon, .dashTile .statusIcon, .security .statusIcon, .service.voipLine .statusIcon {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 25px;
  height: 25px;
  background-image: url("../../images/bell/ui/medStatusStates.png");
  background-repeat: no-repeat;
  background-position: 25px 0; }

.service[status="ok"] .statusIcon,
.service[status="UP"] .statusIcon,
.service[status="CONNECTED"] .statusIcon, .dashTile[status="ok"] .statusIcon,
.dashTile[status="UP"] .statusIcon,
.dashTile[status="CONNECTED"] .statusIcon, .security[status="ok"] .statusIcon,
.security[status="UP"] .statusIcon,
.security[status="CONNECTED"] .statusIcon, .service.voipLine[status="ok"] .statusIcon,
.service.voipLine[status="UP"] .statusIcon,
.service.voipLine[status="CONNECTED"] .statusIcon {
  background-position: 0 0; }

.service[status="DISCONNECTED"] .statusIcon,
.service[status="ERROR"] .statusIcon,
.service[status="QUIESCENT"] .statusIcon, .dashTile[status="DISCONNECTED"] .statusIcon,
.dashTile[status="ERROR"] .statusIcon,
.dashTile[status="QUIESCENT"] .statusIcon, .security[status="DISCONNECTED"] .statusIcon,
.security[status="ERROR"] .statusIcon,
.security[status="QUIESCENT"] .statusIcon, .service.voipLine[status="DISCONNECTED"] .statusIcon,
.service.voipLine[status="ERROR"] .statusIcon,
.service.voipLine[status="QUIESCENT"] .statusIcon {
  background-position: 0 -35px; }

.service[status="warning"] .statusIcon,
.service[status="TROUBLE"] .statusIcon, .dashTile[status="warning"] .statusIcon,
.dashTile[status="TROUBLE"] .statusIcon, .security[status="warning"] .statusIcon,
.security[status="TROUBLE"] .statusIcon, .service.voipLine[status="warning"] .statusIcon,
.service.voipLine[status="TROUBLE"] .statusIcon {
  background-position: 0 -105px; }

.service[status="info"] .statusIcon, .service[status="UNSUBSCRIBED"] .statusIcon, .dashTile[status="info"] .statusIcon, .dashTile[status="UNSUBSCRIBED"] .statusIcon, .security[status="info"] .statusIcon, .security[status="UNSUBSCRIBED"] .statusIcon, .service.voipLine[status="info"] .statusIcon, .service.voipLine[status="UNSUBSCRIBED"] .statusIcon {
  background-position: 0 -70px; }

.security .statusIcon {
  right: 15px;
  top: 20px; }

.slider {
  width: 240px;
  margin: 8px 25px 0 15px;
  /*&.noUi-handle {
    border: none;
    border-radius: 50%;
    background: #555555;
    cursor: pointer;
    box-shadow: none;
  }*/ }
  .slider.noUi-background {
    background: #00549a;
    box-shadow: none; }
  .slider.noUi-target {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    border-radius: 5px;
    border: none;
    box-shadow: none; }
  .slider.noUi-horizontal {
    height: 10px; }
    .slider.noUi-horizontal .noUi-handle {
      width: 26px;
      height: 26px;
      left: -13px;
      top: -8px;
      background: #555555; }
    .slider.noUi-horizontal .noUi-handle:after {
      background: white; }

.noUi-handle {
  border: none;
  border-radius: 50%;
  background: #555555;
  cursor: pointer;
  box-shadow: none; }
  .noUi-handle:before {
    display: none; }
  .noUi-handle:after {
    content: "";
    display: block;
    position: absolute;
    height: 16px;
    width: 16px;
    background: white;
    left: 5px;
    top: 5px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%; }

.noUi-origin {
  background: white; }

.sliderValue {
  font-size: 12.8px;
  line-height: 4.0625em;
  font-weight: bold;
  display: inline-block; }

.multiSelect > * {
  cursor: pointer;
  user-select: none;
  /* CSS3 (little to no support) */
  -ms-user-select: none;
  /* IE 10+ */
  -moz-user-select: none;
  /* Gecko (Firefox) */
  -webkit-user-select: none;
  /* Webkit (Safari, Chrome) */ }
  .multiSelect > *.selected {
    background-color: #e1e1e1; }
    .multiSelect > *.selected:after {
      content: '';
      position: absolute;
      top: 7px;
      right: 15px;
      width: 16px;
      height: 16px;
      background: transparent url("../../images/bell/ui/sml-WhiteCheckmark.png") no-repeat center; }
  .multiSelect > *.lastClicked {
    border: 1px dashed #4680b0; }

/* *** WIFI STRENGTH *** */
.wifiStrength {
  width: 26px;
  height: 20px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain; }
  .wifiStrength[level="0"] {
    background-image: url("../../images/bell/icons/icon-signalStrength-level-0.png");
    background-image: url("../../images/bell/icons/icon-signalStrength-level-0.svg"); }
  .wifiStrength[level="1"] {
    background-image: url("../../images/bell/icons/icon-signalStrength-level-1.png");
    background-image: url("../../images/bell/icons/icon-signalStrength-level-1.svg"); }
  .wifiStrength[level="2"] {
    background-image: url("../../images/bell/icons/icon-signalStrength-level-2.png");
    background-image: url("../../images/bell/icons/icon-signalStrength-level-2.svg"); }
  .wifiStrength[level="3"] {
    background-image: url("../../images/bell/icons/icon-signalStrength-level-3.png");
    background-image: url("../../images/bell/icons/icon-signalStrength-level-3.svg"); }
  .wifiStrength[level="4"] {
    background-image: url("../../images/bell/icons/icon-signalStrength-level-4.png");
    background-image: url("../../images/bell/icons/icon-signalStrength-level-4.svg"); }
  .wifiStrength[level="5"] {
    background-image: url("../../images/bell/icons/icon-signalStrength-level-5.png");
    background-image: url("../../images/bell/icons/icon-signalStrength-level-5.svg"); }
  .wifiStrength[level="-1"] {
    background-image: url("../../images/bell/icons/icon-plume-sml.png");
    background-size: contain; }
    [status="DISCONNECTED"] .wifiStrength[level="-1"] {
      background-image: url("../../images/bell/icons/icon-plume-sml-grey.png"); }

/* *** MISC STYLES *** */
.pageInstructions {
  margin: 0 auto 15px;
  padding: 7px 0;
  display: table; }

.fullWidth {
  width: 100%; }

.centeredContainer {
  margin-left: auto;
  margin-right: auto;
  display: block; }

p.bold {
  font-weight: bold; }

p.boldItalic {
  font-weight: bold;
  font-style: italic; }

.rightAlign {
  text-align: right; }

p.warning {
  color: #dd9700; }

.topBorder {
  border-top: 1px solid #e1e1e1; }

.bottomBorder {
  border-bottom: 1px solid #e1e1e1; }

.overlay {
  position: relative; }
  .overlay .disableMask {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: #fff;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    /* IE 8 */
    filter: alpha(opacity=50);
    /* IE 5-7 */
    -moz-opacity: 0.5;
    /* Netscape */
    -khtml-opacity: 0.5;
    /* Safari 1.x */
    opacity: 0.5;
    /* Good browsers */
    display: none; }
  .overlay.disabled label, .overlay.disabled input, .overlay.disabled select, .overlay.disabled span {
    color: #BABABA; }
  .overlay.disabled .disableMask {
    display: block; }

#testingSpinner {
  background-image: url("../../images/bell/Speedtest_Progress_Grey.png");
  width: 158px;
  height: 158px;
  margin: 40px auto; }

.lang-fr #testingSpinner {
  background-image: url("../../images/bell/Speedtest_Progress_Grey_fr.png"); }

.overflow-text-container {
  white-space: nowrap; }
  .overflow-text-container .overflow-text {
    overflow-x: hidden;
    text-overflow: ellipsis; }

.redText {
  color: #FF0000; }

.italic {
  font-style: italic; }

.modalCloseButton, .modalPage > #popup-overlay-message .header .close, .modalPage #confirmation-error-success-message .header .close, .modalPage #login-message .header .close, .modalPage .disabled-conf-wrap .header .close, .modalPage .empty-conf-wrap .header .close, .modalPage #inner-popup-overlay-message .header .close, .modalPage #notification-popup-overlay-message .header .close, .confirmation-error-success-modal > #popup-overlay-message .header .close, .confirmation-error-success-modal #confirmation-error-success-message .header .close, .confirmation-error-success-modal #login-message .header .close, .confirmation-error-success-modal .disabled-conf-wrap .header .close, .confirmation-error-success-modal .empty-conf-wrap .header .close, .confirmation-error-success-modal #inner-popup-overlay-message .header .close, .confirmation-error-success-modal #notification-popup-overlay-message .header .close, #loginContainer > #popup-overlay-message .header .close, #loginContainer #confirmation-error-success-message .header .close, #loginContainer #login-message .header .close, #loginContainer .disabled-conf-wrap .header .close, #loginContainer .empty-conf-wrap .header .close, #loginContainer #inner-popup-overlay-message .header .close, #loginContainer #notification-popup-overlay-message .header .close, #inner-popup-overlay > #popup-overlay-message .header .close, #inner-popup-overlay #confirmation-error-success-message .header .close, #inner-popup-overlay #login-message .header .close, #inner-popup-overlay .disabled-conf-wrap .header .close, #inner-popup-overlay .empty-conf-wrap .header .close, #inner-popup-overlay #inner-popup-overlay-message .header .close, #inner-popup-overlay #notification-popup-overlay-message .header .close, #notification-popup-overlay > #popup-overlay-message .header .close, #notification-popup-overlay #confirmation-error-success-message .header .close, #notification-popup-overlay #login-message .header .close, #notification-popup-overlay .disabled-conf-wrap .header .close, #notification-popup-overlay .empty-conf-wrap .header .close, #notification-popup-overlay #inner-popup-overlay-message .header .close, #notification-popup-overlay #notification-popup-overlay-message .header .close {
  background-image: url("../../images/bell/icons/ic_close.png");
  background-image: url("../../images/bell/icons/ic_close.svg");
  margin-right: -7px;
  margin-top: 5px;
  width: 20px;
  height: 20px;
  cursor: pointer; }

/* **** FORM STYLES **** */
/* DISCRETE FORM PIECES */
.formBlock {
  /*padding: 10px 0 0;*/ }
  .formBlock.topSpace {
    padding-top: 10px; }
  .formBlock.extraTopSpace {
    padding-top: 20px; }
  .formBlock.extraVertSpace {
    padding-top: 20px;
    padding-bottom: 20px; }
  .formBlock.sliderContainer label, .formBlock.sliderContainer .sliderValue {
    line-height: 2.0em; }
  .formBlock .textValue, .formBlock .textFieldValue {
    font-size: 12.8px;
    line-height: 4.0625em; }
  .formBlock .textValue:not(:last-child) {
    margin-right: 40px; }
  .formBlock .textFieldValue {
    margin-left: 4px;
    padding: 0 15px; }
  .formBlock .multiLine {
    padding-top: 20px; }
    .formBlock .multiLine.colorBG {
      margin-left: 4px;
      padding: 15px; }
    .formBlock .multiLine label, .formBlock .multiLine .textValue {
      line-height: 1.25em; }
  .formBlock.hasField + .hasField {
    margin-top: 10px; }
  .formBlock.hasSelect button {
    margin-top: 8px; }
  .formBlock button + button {
    margin-left: 15px; }
  .formBlock.verticalStack label, .formBlock .verticalStack label {
    display: block;
    line-height: 2.5em; }
  .formBlock .autoValue {
    color: #cccccc;
    font-size: 12px;
    font-style: italic; }

.oneThirdWidth {
  width: 33%;
  padding-left: 5px; }
  .oneThirdWidth:first-child {
    padding-left: 0; }

/* LABELS */
label {
  padding-right: 10px;
  font-size: 12.8px;
  line-height: 4.0625em;
  font-weight: bold;
  display: inline-block; }

label.bold {
  font-weight: bold !important; }

input[type="radio"] + label,
input[type="checkbox"] + label {
  font-weight: normal; }

label.stdShort {
  width: 45px; }

label.stdMedium {
  width: 85px; }

label.stdMediumLong {
  width: 105px; }

label.stdLong {
  width: 165px; }

label.noWrap {
  white-space: nowrap; }

/* FORM INPUTS */
input[type="text"], input[type="password"], input[type="number"], select {
  padding: 15px;
  width: 270px;
  font-size: 12.8px;
  color: #686868;
  border: 2px solid #e1e1e1; }
  input[type="text"].shorter, input[type="password"].shorter, input[type="number"].shorter, select.shorter {
    width: 200px; }
  input[type="text"].small, input[type="password"].small, input[type="number"].small, select.small {
    width: 86px; }
  input[type="text"].rightMargin, input[type="password"].rightMargin, input[type="number"].rightMargin, select.rightMargin {
    margin-right: 15px; }
  .password-wrapper input[type="text"], .password-wrapper input[type="password"], .password-wrapper input[type="number"], .password-wrapper select {
    padding-right: 80px; }

.password-wrapper, #login-container .password-wrapper {
  position: relative; }
  .password-wrapper button, #login-container .password-wrapper button {
    position: absolute;
    right: 15px;
    top: 50%;
    height: 24px;
    font-size: 0.8em;
    line-height: 24px;
    margin-top: -12px;
    background-color: #bbbec3;
    color: black;
    border: none;
    border-radius: 5px;
    width: 60px;
    text-align: center;
    min-width: auto;
    padding: 0;
    text-transform: uppercase; }

input[type="number"] {
  padding: 15px 2px 15px 15px; }

input[type="text"].empty {
  color: #e1e1e1; }

select {
  -moz-appearance: none;
  /* Firefox */
  -webkit-appearance: none;
  /* Safari and Chrome */
  appearance: none;
  background-image: url("../../images/bell/ui/DropdownArrows.png");
  background-repeat: no-repeat;
  background-position: 98% center;
  background-color: #fff; }
  select.small {
    background-position: 90% center; }
  select::-ms-expand {
    display: none; }

select + * {
  margin-left: 15px; }

input.ipSegment {
  width: 60px;
  text-align: center; }

input.ipSegment + .ipSeparator, select.ipSegment + .ipSeparator {
  width: 12px;
  font-size: 24px;
  text-align: center;
  line-height: 2.083em;
  display: inline-block; }

input[disabled], select[disabled] {
  border-color: #ebebeb;
  background-color: #f0f0f0; }

button:disabled {
  background-color: #c1c1c1 !important;
  border-color: #e1e1e1 !important;
  color: #fff !important; }

/* RADIO BUTTONS & CHECKBOXES */
input[type="radio"]:not(old),
input[type="checkbox"]:not(old) {
  width: 24px;
  height: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  cursor: pointer; }

input[type="radio"]:not(old) + label,
input[type="checkbox"]:not(old) + label {
  margin-left: -24px;
  margin-right: 8px;
  padding-left: 35px;
  cursor: pointer; }
  input[type="radio"]:not(old) + label.tightWidth,
  input[type="checkbox"]:not(old) + label.tightWidth {
    margin-right: 0; }

input[type="radio"]:not(old) + label {
  line-height: 25px;
  background: url("../../images/bell/radioButtonStates.png") no-repeat 0 0; }

input[type="radio"]:not(old):checked + label {
  background-position: 0 -34px; }

input[type="checkbox"]:not(old) + label {
  line-height: 25px;
  background: url("../../images/bell/ui/checkboxStates.png") no-repeat 0 0; }

input[type="checkbox"]:not(old) + label.onNonWhiteBG {
  line-height: 25px;
  background: url("../../images/bell/ui/checkboxStates_emptyWhite.png") no-repeat 0 0; }

input[type="checkbox"]:not(old):checked + label {
  background-position: 0 -35px; }

/* FOR WHEN YOU NEED MULTI-LINE LABELS FOR CHECKBOX OR RADIO */
.useSpanCheck input[type="radio"]:not(old) + label,
.useSpanCheck input[type="checkbox"]:not(old) + label {
  padding-left: 35px;
  cursor: pointer;
  display: block; }
  .useSpanCheck input[type="radio"]:not(old) + label.tightWidth,
  .useSpanCheck input[type="checkbox"]:not(old) + label.tightWidth {
    margin-right: 0; }

.useSpanCheck input[type="radio"]:not(old) + label {
  line-height: inherit;
  background: none; }
  .useSpanCheck input[type="radio"]:not(old) + label span.radio {
    margin-left: -35px;
    margin-right: 10px;
    width: 25px;
    height: 25px;
    line-height: 1.25em;
    background: url("../../images/bell/radioButtonStates.png") no-repeat 0 0;
    display: inline-block;
    vertical-align: middle; }
  .useSpanCheck input[type="radio"]:not(old) + label span.labelText {
    line-height: 1.25em;
    display: inline-block;
    vertical-align: middle; }

.useSpanCheck input[type="radio"]:not(old):checked + label {
  background-position: auto; }
  .useSpanCheck input[type="radio"]:not(old):checked + label span.radio {
    background-position: 0 -34px; }

.useSpanCheck input[type="checkbox"]:not(old) + label {
  line-height: inherit;
  background: none; }
  .useSpanCheck input[type="checkbox"]:not(old) + label span.checkbox {
    margin-left: -35px;
    margin-right: 10px;
    width: 25px;
    height: 25px;
    line-height: 1.25em;
    background: url("../../images/bell/ui/checkboxStates.png") no-repeat 0 0;
    display: inline-block;
    vertical-align: middle; }
  .useSpanCheck input[type="checkbox"]:not(old) + label span.labelText {
    line-height: 1.25em;
    display: inline-block;
    vertical-align: middle; }

.useSpanCheck input[type="checkbox"]:not(old):checked + label {
  background-position: auto; }
  .useSpanCheck input[type="checkbox"]:not(old):checked + label span.checkbox {
    background-position: 0 -35px; }

ul input[type="radio"]:not(old),
ul input[type="checkbox"]:not(old) {
  display: none; }

ul input[type="radio"]:not(old) + label,
ul input[type="checkbox"]:not(old) + label {
  margin-left: 0;
  margin-right: 0; }

/* VALIDATION MESSAGE */
form .formBlock[status="error"] label {
  color: #bd2025; }

form .formBlock[status="error"] input, form .formBlock[status="error"] textarea, form .formBlock[status="error"] select {
  border: 2px solid #bd2025 !important; }

.validation-msg {
  font-size: 13px; }
  .validation-msg.error, .validation-msg .error {
    color: #bd2025; }
  .validation-msg.success, .validation-msg .success {
    color: #009800; }

.validation-form-msg-wrap {
  color: #bd2025; }
  .validation-form-msg-wrap.success, .validation-form-msg-wrap .success {
    color: #009800; }

.reduceLineHeight .textValue, .reduceLineHeight label {
  line-height: 3.2em; }

.modalPage {
  margin-top: -360px;
  margin-left: -572.5px;
  width: 1145px;
  height: 720px;
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); }

.confirmation-error-success-modal.confirm {
  margin-top: -130px;
  margin-left: -375px;
  width: 750px;
  height: 260px;
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); }

.confirmation-error-success-modal.success-error {
  margin-top: -90px;
  margin-left: -295px;
  width: 590px;
  height: 180px;
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); }

.mobile .openedPopup .background-overlay:after {
  top: 0;
  bottom: -60px; }

.mobile .confirmation-error-success-modal.success-error {
  transform: translate(62%, -25%);
  width: 74%;
  height: 50%;
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  margin: 0;
  transform: translate(-50%, -50%) !important;
  position: fixed; }
  .mobile .confirmation-error-success-modal.success-error:after {
    top: 63px; }
  .mobile .confirmation-error-success-modal.success-error > #confirmation-error-success-message.success-error > .success-error-indicator {
    width: 100%;
    height: 100px; }
  .mobile .confirmation-error-success-modal.success-error > #confirmation-error-success-message.success-error > .content {
    padding: 15px;
    margin-left: 0; }
    .mobile .confirmation-error-success-modal.success-error > #confirmation-error-success-message.success-error > .content #messages {
      text-align: center;
      padding-top: 10px;
      padding-bottom: 10px; }
  .mobile .confirmation-error-success-modal.success-error > #confirmation-error-success-message.success-error > .clearFloat.pageActionsContainer.buttonContainer.centerButtons {
    bottom: 30px;
    left: 0;
    top: 195px; }

@media screen and (max-width: 359px) {
  .mobile .confirmation-error-success-modal.success-error {
    transform: translate(62%, -25%);
    width: 83%;
    height: 50%;
    -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
    -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
    box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); } }

@media screen and (min-width: 400px) and (max-width: 414px) {
  .mobile .confirmation-error-success-modal.success-error {
    transform: translate(62%, -25%);
    width: 65%;
    height: 40%;
    -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
    -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
    box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); } }

@media screen and (width: 384px) {
  .mobile .confirmation-error-success-modal.success-error {
    transform: translate(62%, -25%);
    width: 70%;
    height: 55%;
    -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
    -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
    box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); } }

@media screen and (orientation: landscape) {
  .mobile .confirmation-error-success-modal.success-error {
    height: 63%; }
    .mobile .confirmation-error-success-modal.success-error > #confirmation-error-success-message.success-error > .success-error-indicator {
      height: 78px; }
    .mobile .confirmation-error-success-modal.success-error > #confirmation-error-success-message.success-error > .clearFloat.pageActionsContainer.buttonContainer.centerButtons {
      top: 151px; } }

.mobile .confirmation-error-success-modal.success-error .buttonContainer button:not(:last-child) {
  margin-right: 5px; }

#inner-popup-overlay, #notification-popup-overlay {
  margin-top: -230px;
  margin-left: -350px;
  width: 700px;
  height: 460px;
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); }

.modalPage > #popup-overlay-message {
  display: flex;
  height: 100%;
  flex-flow: column;
  align-items: stretch; }
  .modalPage > #popup-overlay-message > .content {
    flex: 1;
    overflow: hidden; }

.modalPage, .confirmation-error-success-modal, #loginContainer, #inner-popup-overlay, #notification-popup-overlay {
  color: #686868;
  font-size: 12.8px;
  background-color: #fff;
  z-index: 7000;
  left: 50%;
  top: 50%;
  position: absolute; }
  .modalPage:before, .confirmation-error-success-modal:before, #loginContainer:before, #inner-popup-overlay:before, #notification-popup-overlay:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #FFF;
    z-index: -1; }
  .modalPage > #popup-overlay-message, .confirmation-error-success-modal > #popup-overlay-message, #loginContainer > #popup-overlay-message, #inner-popup-overlay > #popup-overlay-message, #notification-popup-overlay > #popup-overlay-message {
    height: 100%; }
  .modalPage > #popup-overlay-message .header, .modalPage #confirmation-error-success-message .header, .modalPage #login-message .header, .modalPage .disabled-conf-wrap .header, .modalPage .empty-conf-wrap .header, .modalPage #inner-popup-overlay-message .header, .modalPage #notification-popup-overlay-message .header, .confirmation-error-success-modal > #popup-overlay-message .header, .confirmation-error-success-modal #confirmation-error-success-message .header, .confirmation-error-success-modal #login-message .header, .confirmation-error-success-modal .disabled-conf-wrap .header, .confirmation-error-success-modal .empty-conf-wrap .header, .confirmation-error-success-modal #inner-popup-overlay-message .header, .confirmation-error-success-modal #notification-popup-overlay-message .header, #loginContainer > #popup-overlay-message .header, #loginContainer #confirmation-error-success-message .header, #loginContainer #login-message .header, #loginContainer .disabled-conf-wrap .header, #loginContainer .empty-conf-wrap .header, #loginContainer #inner-popup-overlay-message .header, #loginContainer #notification-popup-overlay-message .header, #inner-popup-overlay > #popup-overlay-message .header, #inner-popup-overlay #confirmation-error-success-message .header, #inner-popup-overlay #login-message .header, #inner-popup-overlay .disabled-conf-wrap .header, #inner-popup-overlay .empty-conf-wrap .header, #inner-popup-overlay #inner-popup-overlay-message .header, #inner-popup-overlay #notification-popup-overlay-message .header, #notification-popup-overlay > #popup-overlay-message .header, #notification-popup-overlay #confirmation-error-success-message .header, #notification-popup-overlay #login-message .header, #notification-popup-overlay .disabled-conf-wrap .header, #notification-popup-overlay .empty-conf-wrap .header, #notification-popup-overlay #inner-popup-overlay-message .header, #notification-popup-overlay #notification-popup-overlay-message .header {
    width: 100%;
    background-color: #e1e1e1;
    padding-top: 15px;
    padding-bottom: 3px;
    display: block;
    border-bottom: 1px solid #e1e1e1; }
    .modalPage > #popup-overlay-message .header div, .modalPage #confirmation-error-success-message .header div, .modalPage #login-message .header div, .modalPage .disabled-conf-wrap .header div, .modalPage .empty-conf-wrap .header div, .modalPage #inner-popup-overlay-message .header div, .modalPage #notification-popup-overlay-message .header div, .confirmation-error-success-modal > #popup-overlay-message .header div, .confirmation-error-success-modal #confirmation-error-success-message .header div, .confirmation-error-success-modal #login-message .header div, .confirmation-error-success-modal .disabled-conf-wrap .header div, .confirmation-error-success-modal .empty-conf-wrap .header div, .confirmation-error-success-modal #inner-popup-overlay-message .header div, .confirmation-error-success-modal #notification-popup-overlay-message .header div, #loginContainer > #popup-overlay-message .header div, #loginContainer #confirmation-error-success-message .header div, #loginContainer #login-message .header div, #loginContainer .disabled-conf-wrap .header div, #loginContainer .empty-conf-wrap .header div, #loginContainer #inner-popup-overlay-message .header div, #loginContainer #notification-popup-overlay-message .header div, #inner-popup-overlay > #popup-overlay-message .header div, #inner-popup-overlay #confirmation-error-success-message .header div, #inner-popup-overlay #login-message .header div, #inner-popup-overlay .disabled-conf-wrap .header div, #inner-popup-overlay .empty-conf-wrap .header div, #inner-popup-overlay #inner-popup-overlay-message .header div, #inner-popup-overlay #notification-popup-overlay-message .header div, #notification-popup-overlay > #popup-overlay-message .header div, #notification-popup-overlay #confirmation-error-success-message .header div, #notification-popup-overlay #login-message .header div, #notification-popup-overlay .disabled-conf-wrap .header div, #notification-popup-overlay .empty-conf-wrap .header div, #notification-popup-overlay #inner-popup-overlay-message .header div, #notification-popup-overlay #notification-popup-overlay-message .header div {
      display: inline-block; }
    .modalPage > #popup-overlay-message .header .title h1, .modalPage #confirmation-error-success-message .header .title h1, .modalPage #login-message .header .title h1, .modalPage .disabled-conf-wrap .header .title h1, .modalPage .empty-conf-wrap .header .title h1, .modalPage #inner-popup-overlay-message .header .title h1, .modalPage #notification-popup-overlay-message .header .title h1, .confirmation-error-success-modal > #popup-overlay-message .header .title h1, .confirmation-error-success-modal #confirmation-error-success-message .header .title h1, .confirmation-error-success-modal #login-message .header .title h1, .confirmation-error-success-modal .disabled-conf-wrap .header .title h1, .confirmation-error-success-modal .empty-conf-wrap .header .title h1, .confirmation-error-success-modal #inner-popup-overlay-message .header .title h1, .confirmation-error-success-modal #notification-popup-overlay-message .header .title h1, #loginContainer > #popup-overlay-message .header .title h1, #loginContainer #confirmation-error-success-message .header .title h1, #loginContainer #login-message .header .title h1, #loginContainer .disabled-conf-wrap .header .title h1, #loginContainer .empty-conf-wrap .header .title h1, #loginContainer #inner-popup-overlay-message .header .title h1, #loginContainer #notification-popup-overlay-message .header .title h1, #inner-popup-overlay > #popup-overlay-message .header .title h1, #inner-popup-overlay #confirmation-error-success-message .header .title h1, #inner-popup-overlay #login-message .header .title h1, #inner-popup-overlay .disabled-conf-wrap .header .title h1, #inner-popup-overlay .empty-conf-wrap .header .title h1, #inner-popup-overlay #inner-popup-overlay-message .header .title h1, #inner-popup-overlay #notification-popup-overlay-message .header .title h1, #notification-popup-overlay > #popup-overlay-message .header .title h1, #notification-popup-overlay #confirmation-error-success-message .header .title h1, #notification-popup-overlay #login-message .header .title h1, #notification-popup-overlay .disabled-conf-wrap .header .title h1, #notification-popup-overlay .empty-conf-wrap .header .title h1, #notification-popup-overlay #inner-popup-overlay-message .header .title h1, #notification-popup-overlay #notification-popup-overlay-message .header .title h1 {
      margin-left: 30px;
      color: #222222;
      font-weight: normal; }
    .modalPage > #popup-overlay-message .header .right-icons, .modalPage #confirmation-error-success-message .header .right-icons, .modalPage #login-message .header .right-icons, .modalPage .disabled-conf-wrap .header .right-icons, .modalPage .empty-conf-wrap .header .right-icons, .modalPage #inner-popup-overlay-message .header .right-icons, .modalPage #notification-popup-overlay-message .header .right-icons, .confirmation-error-success-modal > #popup-overlay-message .header .right-icons, .confirmation-error-success-modal #confirmation-error-success-message .header .right-icons, .confirmation-error-success-modal #login-message .header .right-icons, .confirmation-error-success-modal .disabled-conf-wrap .header .right-icons, .confirmation-error-success-modal .empty-conf-wrap .header .right-icons, .confirmation-error-success-modal #inner-popup-overlay-message .header .right-icons, .confirmation-error-success-modal #notification-popup-overlay-message .header .right-icons, #loginContainer > #popup-overlay-message .header .right-icons, #loginContainer #confirmation-error-success-message .header .right-icons, #loginContainer #login-message .header .right-icons, #loginContainer .disabled-conf-wrap .header .right-icons, #loginContainer .empty-conf-wrap .header .right-icons, #loginContainer #inner-popup-overlay-message .header .right-icons, #loginContainer #notification-popup-overlay-message .header .right-icons, #inner-popup-overlay > #popup-overlay-message .header .right-icons, #inner-popup-overlay #confirmation-error-success-message .header .right-icons, #inner-popup-overlay #login-message .header .right-icons, #inner-popup-overlay .disabled-conf-wrap .header .right-icons, #inner-popup-overlay .empty-conf-wrap .header .right-icons, #inner-popup-overlay #inner-popup-overlay-message .header .right-icons, #inner-popup-overlay #notification-popup-overlay-message .header .right-icons, #notification-popup-overlay > #popup-overlay-message .header .right-icons, #notification-popup-overlay #confirmation-error-success-message .header .right-icons, #notification-popup-overlay #login-message .header .right-icons, #notification-popup-overlay .disabled-conf-wrap .header .right-icons, #notification-popup-overlay .empty-conf-wrap .header .right-icons, #notification-popup-overlay #inner-popup-overlay-message .header .right-icons, #notification-popup-overlay #notification-popup-overlay-message .header .right-icons {
      float: right;
      margin-right: 25px; }
  .modalPage > #popup-overlay-message .content, .modalPage #confirmation-error-success-message .content, .modalPage #login-message .content, .modalPage .disabled-conf-wrap .content, .modalPage .empty-conf-wrap .content, .modalPage #inner-popup-overlay-message .content, .modalPage #notification-popup-overlay-message .content, .confirmation-error-success-modal > #popup-overlay-message .content, .confirmation-error-success-modal #confirmation-error-success-message .content, .confirmation-error-success-modal #login-message .content, .confirmation-error-success-modal .disabled-conf-wrap .content, .confirmation-error-success-modal .empty-conf-wrap .content, .confirmation-error-success-modal #inner-popup-overlay-message .content, .confirmation-error-success-modal #notification-popup-overlay-message .content, #loginContainer > #popup-overlay-message .content, #loginContainer #confirmation-error-success-message .content, #loginContainer #login-message .content, #loginContainer .disabled-conf-wrap .content, #loginContainer .empty-conf-wrap .content, #loginContainer #inner-popup-overlay-message .content, #loginContainer #notification-popup-overlay-message .content, #inner-popup-overlay > #popup-overlay-message .content, #inner-popup-overlay #confirmation-error-success-message .content, #inner-popup-overlay #login-message .content, #inner-popup-overlay .disabled-conf-wrap .content, #inner-popup-overlay .empty-conf-wrap .content, #inner-popup-overlay #inner-popup-overlay-message .content, #inner-popup-overlay #notification-popup-overlay-message .content, #notification-popup-overlay > #popup-overlay-message .content, #notification-popup-overlay #confirmation-error-success-message .content, #notification-popup-overlay #login-message .content, #notification-popup-overlay .disabled-conf-wrap .content, #notification-popup-overlay .empty-conf-wrap .content, #notification-popup-overlay #inner-popup-overlay-message .content, #notification-popup-overlay #notification-popup-overlay-message .content {
    padding: 40px; }
  .modalPage > #confirmation-error-success-message p, .confirmation-error-success-modal > #confirmation-error-success-message p, #loginContainer > #confirmation-error-success-message p, #inner-popup-overlay > #confirmation-error-success-message p, #notification-popup-overlay > #confirmation-error-success-message p {
    font-size: 13px; }
  .modalPage > #confirmation-error-success-message p:not(:first-child), .confirmation-error-success-modal > #confirmation-error-success-message p:not(:first-child), #loginContainer > #confirmation-error-success-message p:not(:first-child), #inner-popup-overlay > #confirmation-error-success-message p:not(:first-child), #notification-popup-overlay > #confirmation-error-success-message p:not(:first-child) {
    padding-top: 8px; }
  .modalPage > #confirmation-error-success-message.success-error > .success-error-indicator, .confirmation-error-success-modal > #confirmation-error-success-message.success-error > .success-error-indicator, #loginContainer > #confirmation-error-success-message.success-error > .success-error-indicator, #inner-popup-overlay > #confirmation-error-success-message.success-error > .success-error-indicator, #notification-popup-overlay > #confirmation-error-success-message.success-error > .success-error-indicator {
    width: 110px;
    height: 180px; }
  .modalPage > #confirmation-error-success-message.success-error > .content, .confirmation-error-success-modal > #confirmation-error-success-message.success-error > .content, #loginContainer > #confirmation-error-success-message.success-error > .content, #inner-popup-overlay > #confirmation-error-success-message.success-error > .content, #notification-popup-overlay > #confirmation-error-success-message.success-error > .content {
    margin-left: 110px;
    padding: 25px; }
    .modalPage > #confirmation-error-success-message.success-error > .content #messages, .confirmation-error-success-modal > #confirmation-error-success-message.success-error > .content #messages, #loginContainer > #confirmation-error-success-message.success-error > .content #messages, #inner-popup-overlay > #confirmation-error-success-message.success-error > .content #messages, #notification-popup-overlay > #confirmation-error-success-message.success-error > .content #messages {
      text-align: center;
      padding-top: 10px; }
  .modalPage > #confirmation-error-success-message.success-error > .clearFloat.pageActionsContainer.buttonContainer.centerButtons, .confirmation-error-success-modal > #confirmation-error-success-message.success-error > .clearFloat.pageActionsContainer.buttonContainer.centerButtons, #loginContainer > #confirmation-error-success-message.success-error > .clearFloat.pageActionsContainer.buttonContainer.centerButtons, #inner-popup-overlay > #confirmation-error-success-message.success-error > .clearFloat.pageActionsContainer.buttonContainer.centerButtons, #notification-popup-overlay > #confirmation-error-success-message.success-error > .clearFloat.pageActionsContainer.buttonContainer.centerButtons {
    left: 55px;
    bottom: 30px; }
  .modalPage > #confirmation-error-success-message[type="SUCCESS"] > .success-error-indicator, .confirmation-error-success-modal > #confirmation-error-success-message[type="SUCCESS"] > .success-error-indicator, #loginContainer > #confirmation-error-success-message[type="SUCCESS"] > .success-error-indicator, #inner-popup-overlay > #confirmation-error-success-message[type="SUCCESS"] > .success-error-indicator, #notification-popup-overlay > #confirmation-error-success-message[type="SUCCESS"] > .success-error-indicator {
    background: url("../../images/bell/icons/Success_Icon_lg.png") center center no-repeat #358a42; }
  .modalPage > #confirmation-error-success-message[type="ERROR"] > .success-error-indicator, .confirmation-error-success-modal > #confirmation-error-success-message[type="ERROR"] > .success-error-indicator, #loginContainer > #confirmation-error-success-message[type="ERROR"] > .success-error-indicator, #inner-popup-overlay > #confirmation-error-success-message[type="ERROR"] > .success-error-indicator, #notification-popup-overlay > #confirmation-error-success-message[type="ERROR"] > .success-error-indicator {
    background: url("../../images/bell/icons/Error_Icon.png") center center no-repeat #d0021b; }
  .modalPage > #confirmation-error-success-message[type="WARNING"] > .success-error-indicator, .confirmation-error-success-modal > #confirmation-error-success-message[type="WARNING"] > .success-error-indicator, #loginContainer > #confirmation-error-success-message[type="WARNING"] > .success-error-indicator, #inner-popup-overlay > #confirmation-error-success-message[type="WARNING"] > .success-error-indicator, #notification-popup-overlay > #confirmation-error-success-message[type="WARNING"] > .success-error-indicator {
    background: url("../../images/bell/icons/Warning_Icon.png") center center no-repeat #e3a824; }
  .modalPage > #login-message .loginContent, .modalPage .disabled-conf-wrap .loginContent, .modalPage .empty-conf-wrap .loginContent, .confirmation-error-success-modal > #login-message .loginContent, .confirmation-error-success-modal .disabled-conf-wrap .loginContent, .confirmation-error-success-modal .empty-conf-wrap .loginContent, #loginContainer > #login-message .loginContent, #loginContainer .disabled-conf-wrap .loginContent, #loginContainer .empty-conf-wrap .loginContent, #inner-popup-overlay > #login-message .loginContent, #inner-popup-overlay .disabled-conf-wrap .loginContent, #inner-popup-overlay .empty-conf-wrap .loginContent, #notification-popup-overlay > #login-message .loginContent, #notification-popup-overlay .disabled-conf-wrap .loginContent, #notification-popup-overlay .empty-conf-wrap .loginContent {
    height: 154px;
    margin-bottom: 20px;
    overflow-y: auto; }
    .modalPage > #login-message .loginContent p, .modalPage .disabled-conf-wrap .loginContent p, .modalPage .empty-conf-wrap .loginContent p, .confirmation-error-success-modal > #login-message .loginContent p, .confirmation-error-success-modal .disabled-conf-wrap .loginContent p, .confirmation-error-success-modal .empty-conf-wrap .loginContent p, #loginContainer > #login-message .loginContent p, #loginContainer .disabled-conf-wrap .loginContent p, #loginContainer .empty-conf-wrap .loginContent p, #inner-popup-overlay > #login-message .loginContent p, #inner-popup-overlay .disabled-conf-wrap .loginContent p, #inner-popup-overlay .empty-conf-wrap .loginContent p, #notification-popup-overlay > #login-message .loginContent p, #notification-popup-overlay .disabled-conf-wrap .loginContent p, #notification-popup-overlay .empty-conf-wrap .loginContent p {
      margin-bottom: 10px; }
    .modalPage > #login-message .loginContent ul, .modalPage .disabled-conf-wrap .loginContent ul, .modalPage .empty-conf-wrap .loginContent ul, .confirmation-error-success-modal > #login-message .loginContent ul, .confirmation-error-success-modal .disabled-conf-wrap .loginContent ul, .confirmation-error-success-modal .empty-conf-wrap .loginContent ul, #loginContainer > #login-message .loginContent ul, #loginContainer .disabled-conf-wrap .loginContent ul, #loginContainer .empty-conf-wrap .loginContent ul, #inner-popup-overlay > #login-message .loginContent ul, #inner-popup-overlay .disabled-conf-wrap .loginContent ul, #inner-popup-overlay .empty-conf-wrap .loginContent ul, #notification-popup-overlay > #login-message .loginContent ul, #notification-popup-overlay .disabled-conf-wrap .loginContent ul, #notification-popup-overlay .empty-conf-wrap .loginContent ul {
      margin-bottom: 10px;
      padding-left: 25px;
      list-style: disc;
      list-style: initial; }
    .modalPage > #login-message .loginContent .formBlock, .modalPage .disabled-conf-wrap .loginContent .formBlock, .modalPage .empty-conf-wrap .loginContent .formBlock, .confirmation-error-success-modal > #login-message .loginContent .formBlock, .confirmation-error-success-modal .disabled-conf-wrap .loginContent .formBlock, .confirmation-error-success-modal .empty-conf-wrap .loginContent .formBlock, #loginContainer > #login-message .loginContent .formBlock, #loginContainer .disabled-conf-wrap .loginContent .formBlock, #loginContainer .empty-conf-wrap .loginContent .formBlock, #inner-popup-overlay > #login-message .loginContent .formBlock, #inner-popup-overlay .disabled-conf-wrap .loginContent .formBlock, #inner-popup-overlay .empty-conf-wrap .loginContent .formBlock, #notification-popup-overlay > #login-message .loginContent .formBlock, #notification-popup-overlay .disabled-conf-wrap .loginContent .formBlock, #notification-popup-overlay .empty-conf-wrap .loginContent .formBlock {
      margin-top: 20px; }
      .modalPage > #login-message .loginContent .formBlock label, .modalPage .disabled-conf-wrap .loginContent .formBlock label, .modalPage .empty-conf-wrap .loginContent .formBlock label, .confirmation-error-success-modal > #login-message .loginContent .formBlock label, .confirmation-error-success-modal .disabled-conf-wrap .loginContent .formBlock label, .confirmation-error-success-modal .empty-conf-wrap .loginContent .formBlock label, #loginContainer > #login-message .loginContent .formBlock label, #loginContainer .disabled-conf-wrap .loginContent .formBlock label, #loginContainer .empty-conf-wrap .loginContent .formBlock label, #inner-popup-overlay > #login-message .loginContent .formBlock label, #inner-popup-overlay .disabled-conf-wrap .loginContent .formBlock label, #inner-popup-overlay .empty-conf-wrap .loginContent .formBlock label, #notification-popup-overlay > #login-message .loginContent .formBlock label, #notification-popup-overlay .disabled-conf-wrap .loginContent .formBlock label, #notification-popup-overlay .empty-conf-wrap .loginContent .formBlock label {
        float: left;
        margin-bottom: 20px; }
      .modalPage > #login-message .loginContent .formBlock .validation-msg-wrap, .modalPage .disabled-conf-wrap .loginContent .formBlock .validation-msg-wrap, .modalPage .empty-conf-wrap .loginContent .formBlock .validation-msg-wrap, .confirmation-error-success-modal > #login-message .loginContent .formBlock .validation-msg-wrap, .confirmation-error-success-modal .disabled-conf-wrap .loginContent .formBlock .validation-msg-wrap, .confirmation-error-success-modal .empty-conf-wrap .loginContent .formBlock .validation-msg-wrap, #loginContainer > #login-message .loginContent .formBlock .validation-msg-wrap, #loginContainer .disabled-conf-wrap .loginContent .formBlock .validation-msg-wrap, #loginContainer .empty-conf-wrap .loginContent .formBlock .validation-msg-wrap, #inner-popup-overlay > #login-message .loginContent .formBlock .validation-msg-wrap, #inner-popup-overlay .disabled-conf-wrap .loginContent .formBlock .validation-msg-wrap, #inner-popup-overlay .empty-conf-wrap .loginContent .formBlock .validation-msg-wrap, #notification-popup-overlay > #login-message .loginContent .formBlock .validation-msg-wrap, #notification-popup-overlay .disabled-conf-wrap .loginContent .formBlock .validation-msg-wrap, #notification-popup-overlay .empty-conf-wrap .loginContent .formBlock .validation-msg-wrap {
        margin-top: 5px; }
  .modalPage > #login-message .loginBottomContent, .modalPage .disabled-conf-wrap .loginBottomContent, .modalPage .empty-conf-wrap .loginBottomContent, .confirmation-error-success-modal > #login-message .loginBottomContent, .confirmation-error-success-modal .disabled-conf-wrap .loginBottomContent, .confirmation-error-success-modal .empty-conf-wrap .loginBottomContent, #loginContainer > #login-message .loginBottomContent, #loginContainer .disabled-conf-wrap .loginBottomContent, #loginContainer .empty-conf-wrap .loginBottomContent, #inner-popup-overlay > #login-message .loginBottomContent, #inner-popup-overlay .disabled-conf-wrap .loginBottomContent, #inner-popup-overlay .empty-conf-wrap .loginBottomContent, #notification-popup-overlay > #login-message .loginBottomContent, #notification-popup-overlay .disabled-conf-wrap .loginBottomContent, #notification-popup-overlay .empty-conf-wrap .loginBottomContent {
    position: relative; }
    .modalPage > #login-message .loginBottomContent .buttonContainer, .modalPage .disabled-conf-wrap .loginBottomContent .buttonContainer, .modalPage .empty-conf-wrap .loginBottomContent .buttonContainer, .confirmation-error-success-modal > #login-message .loginBottomContent .buttonContainer, .confirmation-error-success-modal .disabled-conf-wrap .loginBottomContent .buttonContainer, .confirmation-error-success-modal .empty-conf-wrap .loginBottomContent .buttonContainer, #loginContainer > #login-message .loginBottomContent .buttonContainer, #loginContainer .disabled-conf-wrap .loginBottomContent .buttonContainer, #loginContainer .empty-conf-wrap .loginBottomContent .buttonContainer, #inner-popup-overlay > #login-message .loginBottomContent .buttonContainer, #inner-popup-overlay .disabled-conf-wrap .loginBottomContent .buttonContainer, #inner-popup-overlay .empty-conf-wrap .loginBottomContent .buttonContainer, #notification-popup-overlay > #login-message .loginBottomContent .buttonContainer, #notification-popup-overlay .disabled-conf-wrap .loginBottomContent .buttonContainer, #notification-popup-overlay .empty-conf-wrap .loginBottomContent .buttonContainer {
      margin-right: 16px;
      margin-bottom: 20px; }
    .modalPage > #login-message .loginBottomContent .loginTipText, .modalPage .disabled-conf-wrap .loginBottomContent .loginTipText, .modalPage .empty-conf-wrap .loginBottomContent .loginTipText, .confirmation-error-success-modal > #login-message .loginBottomContent .loginTipText, .confirmation-error-success-modal .disabled-conf-wrap .loginBottomContent .loginTipText, .confirmation-error-success-modal .empty-conf-wrap .loginBottomContent .loginTipText, #loginContainer > #login-message .loginBottomContent .loginTipText, #loginContainer .disabled-conf-wrap .loginBottomContent .loginTipText, #loginContainer .empty-conf-wrap .loginBottomContent .loginTipText, #inner-popup-overlay > #login-message .loginBottomContent .loginTipText, #inner-popup-overlay .disabled-conf-wrap .loginBottomContent .loginTipText, #inner-popup-overlay .empty-conf-wrap .loginBottomContent .loginTipText, #notification-popup-overlay > #login-message .loginBottomContent .loginTipText, #notification-popup-overlay .disabled-conf-wrap .loginBottomContent .loginTipText, #notification-popup-overlay .empty-conf-wrap .loginBottomContent .loginTipText {
      background: url(../../images/bell/icons/icon-modem-passwordRecovery2.png) no-repeat right center;
      background-size: contain;
      padding-right: 42px; }
      .modalPage > #login-message .loginBottomContent .loginTipText .email, .modalPage .disabled-conf-wrap .loginBottomContent .loginTipText .email, .modalPage .empty-conf-wrap .loginBottomContent .loginTipText .email, .confirmation-error-success-modal > #login-message .loginBottomContent .loginTipText .email, .confirmation-error-success-modal .disabled-conf-wrap .loginBottomContent .loginTipText .email, .confirmation-error-success-modal .empty-conf-wrap .loginBottomContent .loginTipText .email, #loginContainer > #login-message .loginBottomContent .loginTipText .email, #loginContainer .disabled-conf-wrap .loginBottomContent .loginTipText .email, #loginContainer .empty-conf-wrap .loginBottomContent .loginTipText .email, #inner-popup-overlay > #login-message .loginBottomContent .loginTipText .email, #inner-popup-overlay .disabled-conf-wrap .loginBottomContent .loginTipText .email, #inner-popup-overlay .empty-conf-wrap .loginBottomContent .loginTipText .email, #notification-popup-overlay > #login-message .loginBottomContent .loginTipText .email, #notification-popup-overlay .disabled-conf-wrap .loginBottomContent .loginTipText .email, #notification-popup-overlay .empty-conf-wrap .loginBottomContent .loginTipText .email {
        color: #588fbc; }
    .modalPage > #login-message .loginBottomContent:after, .modalPage .disabled-conf-wrap .loginBottomContent:after, .modalPage .empty-conf-wrap .loginBottomContent:after, .confirmation-error-success-modal > #login-message .loginBottomContent:after, .confirmation-error-success-modal .disabled-conf-wrap .loginBottomContent:after, .confirmation-error-success-modal .empty-conf-wrap .loginBottomContent:after, #loginContainer > #login-message .loginBottomContent:after, #loginContainer .disabled-conf-wrap .loginBottomContent:after, #loginContainer .empty-conf-wrap .loginBottomContent:after, #inner-popup-overlay > #login-message .loginBottomContent:after, #inner-popup-overlay .disabled-conf-wrap .loginBottomContent:after, #inner-popup-overlay .empty-conf-wrap .loginBottomContent:after, #notification-popup-overlay > #login-message .loginBottomContent:after, #notification-popup-overlay .disabled-conf-wrap .loginBottomContent:after, #notification-popup-overlay .empty-conf-wrap .loginBottomContent:after {
      content: '';
      display: block;
      height: 0;
      line-height: 0;
      clear: both;
      float: none; }
  .modalPage > #login-message .dont-ask-again-wrap, .modalPage .disabled-conf-wrap .dont-ask-again-wrap, .modalPage .empty-conf-wrap .dont-ask-again-wrap, .confirmation-error-success-modal > #login-message .dont-ask-again-wrap, .confirmation-error-success-modal .disabled-conf-wrap .dont-ask-again-wrap, .confirmation-error-success-modal .empty-conf-wrap .dont-ask-again-wrap, #loginContainer > #login-message .dont-ask-again-wrap, #loginContainer .disabled-conf-wrap .dont-ask-again-wrap, #loginContainer .empty-conf-wrap .dont-ask-again-wrap, #inner-popup-overlay > #login-message .dont-ask-again-wrap, #inner-popup-overlay .disabled-conf-wrap .dont-ask-again-wrap, #inner-popup-overlay .empty-conf-wrap .dont-ask-again-wrap, #notification-popup-overlay > #login-message .dont-ask-again-wrap, #notification-popup-overlay .disabled-conf-wrap .dont-ask-again-wrap, #notification-popup-overlay .empty-conf-wrap .dont-ask-again-wrap {
    position: absolute;
    top: 0;
    right: 0; }
  .modalPage h1, .confirmation-error-success-modal h1, #loginContainer h1, #inner-popup-overlay h1, #notification-popup-overlay h1 {
    font-size: 24px; }
  .modalPage h2, .confirmation-error-success-modal h2, #loginContainer h2, #inner-popup-overlay h2, #notification-popup-overlay h2 {
    font-size: 18.72px;
    display: inline-block; }
  .modalPage h3, .confirmation-error-success-modal h3, #loginContainer h3, #inner-popup-overlay h3, #notification-popup-overlay h3 {
    font-size: 16px; }
  .modalPage .modalSectionContainer, .confirmation-error-success-modal .modalSectionContainer, #loginContainer .modalSectionContainer, #inner-popup-overlay .modalSectionContainer, #notification-popup-overlay .modalSectionContainer {
    margin-bottom: 40px;
    border: 1px solid #e1e1e1; }
  .modalPage .accordionContainer .modalHeader h2, .confirmation-error-success-modal .accordionContainer .modalHeader h2, #loginContainer .accordionContainer .modalHeader h2, #inner-popup-overlay .accordionContainer .modalHeader h2, #notification-popup-overlay .accordionContainer .modalHeader h2 {
    padding: 7px 0; }
  .modalPage .accordionContainer .accordionSectionContainer:last-child .accordionContent, .confirmation-error-success-modal .accordionContainer .accordionSectionContainer:last-child .accordionContent, #loginContainer .accordionContainer .accordionSectionContainer:last-child .accordionContent, #inner-popup-overlay .accordionContainer .accordionSectionContainer:last-child .accordionContent, #notification-popup-overlay .accordionContainer .accordionSectionContainer:last-child .accordionContent {
    border-bottom: 1px solid #e1e1e1; }
  .modalPage .accordionSectionContainer, .confirmation-error-success-modal .accordionSectionContainer, #loginContainer .accordionSectionContainer, #inner-popup-overlay .accordionSectionContainer, #notification-popup-overlay .accordionSectionContainer {
    margin: 5px 0; }
  .modalPage .boxHeader, .modalPage .accordionHeader, .confirmation-error-success-modal .boxHeader, .confirmation-error-success-modal .accordionHeader, #loginContainer .boxHeader, #loginContainer .accordionHeader, #inner-popup-overlay .boxHeader, #inner-popup-overlay .accordionHeader, #notification-popup-overlay .boxHeader, #notification-popup-overlay .accordionHeader {
    padding: 7px 10px;
    height: 45px;
    background-color: #00549a; }
    .modalPage .boxHeader h2, .modalPage .accordionHeader h2, .confirmation-error-success-modal .boxHeader h2, .confirmation-error-success-modal .accordionHeader h2, #loginContainer .boxHeader h2, #loginContainer .accordionHeader h2, #inner-popup-overlay .boxHeader h2, #inner-popup-overlay .accordionHeader h2, #notification-popup-overlay .boxHeader h2, #notification-popup-overlay .accordionHeader h2 {
      padding-bottom: 0;
      font-weight: normal;
      font-size: 16px;
      line-height: 31px;
      color: #fff; }
    .modalPage .boxHeader .floatRight, .modalPage .accordionHeader .floatRight, .confirmation-error-success-modal .boxHeader .floatRight, .confirmation-error-success-modal .accordionHeader .floatRight, #loginContainer .boxHeader .floatRight, #loginContainer .accordionHeader .floatRight, #inner-popup-overlay .boxHeader .floatRight, #inner-popup-overlay .accordionHeader .floatRight, #notification-popup-overlay .boxHeader .floatRight, #notification-popup-overlay .accordionHeader .floatRight {
      margin-left: 10px; }
    .modalPage .boxHeader button, .modalPage .accordionHeader button, .confirmation-error-success-modal .boxHeader button, .confirmation-error-success-modal .accordionHeader button, #loginContainer .boxHeader button, #loginContainer .accordionHeader button, #inner-popup-overlay .boxHeader button, #inner-popup-overlay .accordionHeader button, #notification-popup-overlay .boxHeader button, #notification-popup-overlay .accordionHeader button {
      min-width: 100px; }
  .modalPage .boxHeader, .confirmation-error-success-modal .boxHeader, #loginContainer .boxHeader, #inner-popup-overlay .boxHeader, #notification-popup-overlay .boxHeader {
    background-color: #00549a; }
  .modalPage .accordionHeader, .confirmation-error-success-modal .accordionHeader, #loginContainer .accordionHeader, #inner-popup-overlay .accordionHeader, #notification-popup-overlay .accordionHeader {
    background-color: #e1e1e1; }
    .modalPage .accordionHeader .accordionExpandToggle, .confirmation-error-success-modal .accordionHeader .accordionExpandToggle, #loginContainer .accordionHeader .accordionExpandToggle, #inner-popup-overlay .accordionHeader .accordionExpandToggle, #notification-popup-overlay .accordionHeader .accordionExpandToggle {
      margin-right: 10px;
      height: 30px;
      width: 24px;
      float: left;
      display: inline-block;
      cursor: pointer;
      background-color: transparent;
      background-repeat: no-repeat;
      background-position: center; }
    .modalPage .accordionHeader h3, .confirmation-error-success-modal .accordionHeader h3, #loginContainer .accordionHeader h3, #inner-popup-overlay .accordionHeader h3, #notification-popup-overlay .accordionHeader h3 {
      padding-bottom: 0;
      font-family: Helvetica, Arial, sans-serif;
      font-size: 16px;
      line-height: 31px;
      display: inline-block; }
  .modalPage .tableContainer .modalHeader h2, .confirmation-error-success-modal .tableContainer .modalHeader h2, #loginContainer .tableContainer .modalHeader h2, #inner-popup-overlay .tableContainer .modalHeader h2, #notification-popup-overlay .tableContainer .modalHeader h2 {
    padding: 7px 0; }
  .modalPage .column, .confirmation-error-success-modal .column, #loginContainer .column, #inner-popup-overlay .column, #notification-popup-overlay .column {
    float: left; }
  .modalPage .column.fullHeight, .confirmation-error-success-modal .column.fullHeight, #loginContainer .column.fullHeight, #inner-popup-overlay .column.fullHeight, #notification-popup-overlay .column.fullHeight {
    height: 525px;
    float: left; }
  .modalPage .quarterCol, .confirmation-error-success-modal .quarterCol, #loginContainer .quarterCol, #inner-popup-overlay .quarterCol, #notification-popup-overlay .quarterCol {
    width: 25%;
    /*float: left;*/ }
  .modalPage .halfCol, .confirmation-error-success-modal .halfCol, #loginContainer .halfCol, #inner-popup-overlay .halfCol, #notification-popup-overlay .halfCol {
    width: 50%;
    padding: 0 10px 0 15px;
    /*float: left;*/ }
    .modalPage .halfCol:first-child, .confirmation-error-success-modal .halfCol:first-child, #loginContainer .halfCol:first-child, #inner-popup-overlay .halfCol:first-child, #notification-popup-overlay .halfCol:first-child {
      border-right: 1px solid #e1e1e1; }
  .modalPage .threeQuarterCol, .confirmation-error-success-modal .threeQuarterCol, #loginContainer .threeQuarterCol, #inner-popup-overlay .threeQuarterCol, #notification-popup-overlay .threeQuarterCol {
    width: 75%; }
  .modalPage .colContentContainer, .confirmation-error-success-modal .colContentContainer, #loginContainer .colContentContainer, #inner-popup-overlay .colContentContainer, #notification-popup-overlay .colContentContainer {
    padding: 15px 0 0;
    color: #686868; }
  .modalPage .colContentContainer.topBorder, .confirmation-error-success-modal .colContentContainer.topBorder, #loginContainer .colContentContainer.topBorder, #inner-popup-overlay .colContentContainer.topBorder, #notification-popup-overlay .colContentContainer.topBorder {
    border-top: 1px solid #e1e1e1; }
  .modalPage .accordionSectionContainer .accordionContent, .confirmation-error-success-modal .accordionSectionContainer .accordionContent, #loginContainer .accordionSectionContainer .accordionContent, #inner-popup-overlay .accordionSectionContainer .accordionContent, #notification-popup-overlay .accordionSectionContainer .accordionContent {
    padding: 15px 0;
    display: none; }
  .modalPage .accordionSectionContainer[state="closed"] > .accordionHeader > .accordionExpandToggle, .confirmation-error-success-modal .accordionSectionContainer[state="closed"] > .accordionHeader > .accordionExpandToggle, #loginContainer .accordionSectionContainer[state="closed"] > .accordionHeader > .accordionExpandToggle, #inner-popup-overlay .accordionSectionContainer[state="closed"] > .accordionHeader > .accordionExpandToggle, #notification-popup-overlay .accordionSectionContainer[state="closed"] > .accordionHeader > .accordionExpandToggle {
    background-image: url("../../images/bell/icons/icon-Expand.png");
    background-image: url("../../images/bell/icons/icon-Expand.svg"); }
  .modalPage .accordionSectionContainer[state="open"] > .accordionHeader > .accordionExpandToggle, .confirmation-error-success-modal .accordionSectionContainer[state="open"] > .accordionHeader > .accordionExpandToggle, #loginContainer .accordionSectionContainer[state="open"] > .accordionHeader > .accordionExpandToggle, #inner-popup-overlay .accordionSectionContainer[state="open"] > .accordionHeader > .accordionExpandToggle, #notification-popup-overlay .accordionSectionContainer[state="open"] > .accordionHeader > .accordionExpandToggle {
    background-image: url("../../images/bell/icons/icon-Collapse.png");
    background-image: url("../../images/bell/icons/icon-Collapse.svg"); }
  .modalPage .accordionSectionContainer[state="open"] > .accordionContent, .confirmation-error-success-modal .accordionSectionContainer[state="open"] > .accordionContent, #loginContainer .accordionSectionContainer[state="open"] > .accordionContent, #inner-popup-overlay .accordionSectionContainer[state="open"] > .accordionContent, #notification-popup-overlay .accordionSectionContainer[state="open"] > .accordionContent {
    display: block; }
  .modalPage .accordionSectionContainer .halfCol, .confirmation-error-success-modal .accordionSectionContainer .halfCol, #loginContainer .accordionSectionContainer .halfCol, #inner-popup-overlay .accordionSectionContainer .halfCol, #notification-popup-overlay .accordionSectionContainer .halfCol {
    padding: 0 10px 0 5px; }
  .modalPage .accordionSectionContainer .halfCol + .halfCol, .confirmation-error-success-modal .accordionSectionContainer .halfCol + .halfCol, #loginContainer .accordionSectionContainer .halfCol + .halfCol, #inner-popup-overlay .accordionSectionContainer .halfCol + .halfCol, #notification-popup-overlay .accordionSectionContainer .halfCol + .halfCol {
    padding: 0 5px 0 10px; }
  .modalPage .accordionSectionContainer .colContentContainer, .confirmation-error-success-modal .accordionSectionContainer .colContentContainer, #loginContainer .accordionSectionContainer .colContentContainer, #inner-popup-overlay .accordionSectionContainer .colContentContainer, #notification-popup-overlay .accordionSectionContainer .colContentContainer {
    padding: 0; }
  .modalPage .modalTilesContainer, .confirmation-error-success-modal .modalTilesContainer, #loginContainer .modalTilesContainer, #inner-popup-overlay .modalTilesContainer, #notification-popup-overlay .modalTilesContainer {
    padding: 5px 0 3px; }
    .modalPage .modalTilesContainer .modalTile:not(:last-child), .confirmation-error-success-modal .modalTilesContainer .modalTile:not(:last-child), #loginContainer .modalTilesContainer .modalTile:not(:last-child), #inner-popup-overlay .modalTilesContainer .modalTile:not(:last-child), #notification-popup-overlay .modalTilesContainer .modalTile:not(:last-child) {
      border-right: 1px solid #e1e1e1; }
  .modalPage .modalTile, .confirmation-error-success-modal .modalTile, #loginContainer .modalTile, #inner-popup-overlay .modalTile, #notification-popup-overlay .modalTile {
    position: relative;
    padding: 12px;
    height: 165px; }
    .modalPage .modalTile .modalTileLabel, .confirmation-error-success-modal .modalTile .modalTileLabel, #loginContainer .modalTile .modalTileLabel, #inner-popup-overlay .modalTile .modalTileLabel, #notification-popup-overlay .modalTile .modalTileLabel {
      padding-bottom: 20px;
      font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
      font-size: 20px; }
    .modalPage .modalTile .modalTileTextContainer p, .confirmation-error-success-modal .modalTile .modalTileTextContainer p, #loginContainer .modalTile .modalTileTextContainer p, #inner-popup-overlay .modalTile .modalTileTextContainer p, #notification-popup-overlay .modalTile .modalTileTextContainer p {
      font-size: 13px;
      line-height: 1.5385em;
      display: block; }
    .modalPage .modalTile .modalTileTextContainer p span:first-child, .confirmation-error-success-modal .modalTile .modalTileTextContainer p span:first-child, #loginContainer .modalTile .modalTileTextContainer p span:first-child, #inner-popup-overlay .modalTile .modalTileTextContainer p span:first-child, #notification-popup-overlay .modalTile .modalTileTextContainer p span:first-child {
      font-weight: bold; }
    .modalPage .modalTile .modalTileTextContainer .ssidContainer span, .confirmation-error-success-modal .modalTile .modalTileTextContainer .ssidContainer span, #loginContainer .modalTile .modalTileTextContainer .ssidContainer span, #inner-popup-overlay .modalTile .modalTileTextContainer .ssidContainer span, #notification-popup-overlay .modalTile .modalTileTextContainer .ssidContainer span {
      display: inline-block; }
    .modalPage .modalTile .modalTileTextContainer .passwordContainer span, .confirmation-error-success-modal .modalTile .modalTileTextContainer .passwordContainer span, #loginContainer .modalTile .modalTileTextContainer .passwordContainer span, #inner-popup-overlay .modalTile .modalTileTextContainer .passwordContainer span, #notification-popup-overlay .modalTile .modalTileTextContainer .passwordContainer span {
      display: block; }
    .modalPage .modalTile .modalTileTextContainer span.label, .confirmation-error-success-modal .modalTile .modalTileTextContainer span.label, #loginContainer .modalTile .modalTileTextContainer span.label, #inner-popup-overlay .modalTile .modalTileTextContainer span.label, #notification-popup-overlay .modalTile .modalTileTextContainer span.label {
      padding-right: 15px; }
    .modalPage .modalTile.modalTile[status="inactive"] > *:not(.modalTileLabel):not(.onOffToggle), .confirmation-error-success-modal .modalTile.modalTile[status="inactive"] > *:not(.modalTileLabel):not(.onOffToggle), #loginContainer .modalTile.modalTile[status="inactive"] > *:not(.modalTileLabel):not(.onOffToggle), #inner-popup-overlay .modalTile.modalTile[status="inactive"] > *:not(.modalTileLabel):not(.onOffToggle), #notification-popup-overlay .modalTile.modalTile[status="inactive"] > *:not(.modalTileLabel):not(.onOffToggle) {
      color: #686868;
      opacity: 0.5; }
  .modalPage .modalHeader, .modalPage .modalHeading, .confirmation-error-success-modal .modalHeader, .confirmation-error-success-modal .modalHeading, #loginContainer .modalHeader, #loginContainer .modalHeading, #inner-popup-overlay .modalHeader, #inner-popup-overlay .modalHeading, #notification-popup-overlay .modalHeader, #notification-popup-overlay .modalHeading {
    display: block; }
  .modalPage .modalHeading, .confirmation-error-success-modal .modalHeading, #loginContainer .modalHeading, #inner-popup-overlay .modalHeading, #notification-popup-overlay .modalHeading {
    border-bottom: 1px solid #e1e1e1; }
  .modalPage .modalCardsContainer, .confirmation-error-success-modal .modalCardsContainer, #loginContainer .modalCardsContainer, #inner-popup-overlay .modalCardsContainer, #notification-popup-overlay .modalCardsContainer {
    margin: 0 auto 40px;
    width: 93.52113%; }
    .modalPage .modalCardsContainer .modalCard:not(:last-child), .confirmation-error-success-modal .modalCardsContainer .modalCard:not(:last-child), #loginContainer .modalCardsContainer .modalCard:not(:last-child), #inner-popup-overlay .modalCardsContainer .modalCard:not(:last-child), #notification-popup-overlay .modalCardsContainer .modalCard:not(:last-child) {
      margin-right: 3.31126%; }
  .modalPage .modalCard, .confirmation-error-success-modal .modalCard, #loginContainer .modalCard, #inner-popup-overlay .modalCard, #notification-popup-overlay .modalCard {
    width: 31.12583%;
    border: 1px solid #e1e1e1; }
    .modalPage .modalCard .modalCardContent, .confirmation-error-success-modal .modalCard .modalCardContent, #loginContainer .modalCard .modalCardContent, #inner-popup-overlay .modalCard .modalCardContent, #notification-popup-overlay .modalCard .modalCardContent {
      position: relative;
      padding: 12px;
      height: 160px; }
      .modalPage .modalCard .modalCardContent p, .confirmation-error-success-modal .modalCard .modalCardContent p, #loginContainer .modalCard .modalCardContent p, #inner-popup-overlay .modalCard .modalCardContent p, #notification-popup-overlay .modalCard .modalCardContent p {
        font-size: 13px; }
        .modalPage .modalCard .modalCardContent p.warning-text, .confirmation-error-success-modal .modalCard .modalCardContent p.warning-text, #loginContainer .modalCard .modalCardContent p.warning-text, #inner-popup-overlay .modalCard .modalCardContent p.warning-text, #notification-popup-overlay .modalCard .modalCardContent p.warning-text {
          color: #db9501; }
      .modalPage .modalCard .modalCardContent p:not(:first-child), .confirmation-error-success-modal .modalCard .modalCardContent p:not(:first-child), #loginContainer .modalCard .modalCardContent p:not(:first-child), #inner-popup-overlay .modalCard .modalCardContent p:not(:first-child), #notification-popup-overlay .modalCard .modalCardContent p:not(:first-child) {
        padding-top: 8px; }
      .modalPage .modalCard .modalCardContent .onOffToggle.pinned, .modalPage .modalCard .modalCardContent .pinnedGroup, .confirmation-error-success-modal .modalCard .modalCardContent .onOffToggle.pinned, .confirmation-error-success-modal .modalCard .modalCardContent .pinnedGroup, #loginContainer .modalCard .modalCardContent .onOffToggle.pinned, #loginContainer .modalCard .modalCardContent .pinnedGroup, #inner-popup-overlay .modalCard .modalCardContent .onOffToggle.pinned, #inner-popup-overlay .modalCard .modalCardContent .pinnedGroup, #notification-popup-overlay .modalCard .modalCardContent .onOffToggle.pinned, #notification-popup-overlay .modalCard .modalCardContent .pinnedGroup {
        position: absolute;
        bottom: 12px;
        left: 12px; }
      .modalPage .modalCard .modalCardContent .pinnedGroup, .confirmation-error-success-modal .modalCard .modalCardContent .pinnedGroup, #loginContainer .modalCard .modalCardContent .pinnedGroup, #inner-popup-overlay .modalCard .modalCardContent .pinnedGroup, #notification-popup-overlay .modalCard .modalCardContent .pinnedGroup {
        width: 75%; }
        .modalPage .modalCard .modalCardContent .pinnedGroup .caption, .confirmation-error-success-modal .modalCard .modalCardContent .pinnedGroup .caption, #loginContainer .modalCard .modalCardContent .pinnedGroup .caption, #inner-popup-overlay .modalCard .modalCardContent .pinnedGroup .caption, #notification-popup-overlay .modalCard .modalCardContent .pinnedGroup .caption {
          width: auto;
          font-style: normal;
          font-size: 12.8px; }
      .modalPage .modalCard .modalCardContent form, .confirmation-error-success-modal .modalCard .modalCardContent form, #loginContainer .modalCard .modalCardContent form, #inner-popup-overlay .modalCard .modalCardContent form, #notification-popup-overlay .modalCard .modalCardContent form {
        padding-top: 10px; }
      .modalPage .modalCard .modalCardContent .modalCardActionsContainer, .confirmation-error-success-modal .modalCard .modalCardContent .modalCardActionsContainer, #loginContainer .modalCard .modalCardContent .modalCardActionsContainer, #inner-popup-overlay .modalCard .modalCardContent .modalCardActionsContainer, #notification-popup-overlay .modalCard .modalCardContent .modalCardActionsContainer {
        position: absolute;
        bottom: 12px;
        left: 12px; }
      .modalPage .modalCard .modalCardContent a.modalCardHelpLink, .confirmation-error-success-modal .modalCard .modalCardContent a.modalCardHelpLink, #loginContainer .modalCard .modalCardContent a.modalCardHelpLink, #inner-popup-overlay .modalCard .modalCardContent a.modalCardHelpLink, #notification-popup-overlay .modalCard .modalCardContent a.modalCardHelpLink {
        position: absolute;
        bottom: 12px;
        right: 12px; }
        .modalPage .modalCard .modalCardContent a.modalCardHelpLink .helpIcon, .confirmation-error-success-modal .modalCard .modalCardContent a.modalCardHelpLink .helpIcon, #loginContainer .modalCard .modalCardContent a.modalCardHelpLink .helpIcon, #inner-popup-overlay .modalCard .modalCardContent a.modalCardHelpLink .helpIcon, #notification-popup-overlay .modalCard .modalCardContent a.modalCardHelpLink .helpIcon {
          width: 25px;
          height: 25px;
          background-image: url("../../images/bell/icons/icon-med-Help.png"); }
  .modalPage .rightHeaderSetting, .confirmation-error-success-modal .rightHeaderSetting, #loginContainer .rightHeaderSetting, #inner-popup-overlay .rightHeaderSetting, #notification-popup-overlay .rightHeaderSetting {
    float: right; }
  .modalPage .formCenter, .confirmation-error-success-modal .formCenter, #loginContainer .formCenter, #inner-popup-overlay .formCenter, #notification-popup-overlay .formCenter {
    margin: 30px auto;
    width: 450px; }
  .modalPage .onOffToggle.settingsPage, .confirmation-error-success-modal .onOffToggle.settingsPage, #loginContainer .onOffToggle.settingsPage, #inner-popup-overlay .onOffToggle.settingsPage, #notification-popup-overlay .onOffToggle.settingsPage {
    margin-left: 15px;
    top: 5px; }
  .modalPage ::-webkit-scrollbar, .confirmation-error-success-modal ::-webkit-scrollbar, #loginContainer ::-webkit-scrollbar, #inner-popup-overlay ::-webkit-scrollbar, #notification-popup-overlay ::-webkit-scrollbar {
    width: 20px;
    height: 18px; }
  .modalPage ::-webkit-scrollbar-thumb, .confirmation-error-success-modal ::-webkit-scrollbar-thumb, #loginContainer ::-webkit-scrollbar-thumb, #inner-popup-overlay ::-webkit-scrollbar-thumb, #notification-popup-overlay ::-webkit-scrollbar-thumb {
    height: 6px;
    border: 6px solid transparent;
    background-clip: padding-box;
    -webkit-border-radius: 10px;
    background-color: rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: inset -1px -1px 0 rgba(0, 0, 0, 0.05), inset 1px 1px 0 rgba(0, 0, 0, 0.05); }
  .modalPage ::-webkit-scrollbar-button, .confirmation-error-success-modal ::-webkit-scrollbar-button, #loginContainer ::-webkit-scrollbar-button, #inner-popup-overlay ::-webkit-scrollbar-button, #notification-popup-overlay ::-webkit-scrollbar-button {
    width: 0;
    height: 0;
    display: none; }
  .modalPage ::-webkit-scrollbar-corner, .confirmation-error-success-modal ::-webkit-scrollbar-corner, #loginContainer ::-webkit-scrollbar-corner, #inner-popup-overlay ::-webkit-scrollbar-corner, #notification-popup-overlay ::-webkit-scrollbar-corner {
    background-color: transparent; }
  .modalPage .bold, .confirmation-error-success-modal .bold, #loginContainer .bold, #inner-popup-overlay .bold, #notification-popup-overlay .bold {
    font-weight: bold; }

.confirmation-error-success-modal {
  z-index: 9000; }

#loginContainer {
  width: 700px;
  height: 350px;
  z-index: 9000;
  margin-top: -175px;
  margin-left: -350px; }

/* INNER MODAL WINDOW */
.innerModal {
  padding: 25px 20px 20px;
  /* Only use this element when also using .innerModalHeader */ }
  .innerModal.hasHeader {
    padding: 0; }
  .innerModal .innerModalHeader {
    padding: 0 25px;
    background-color: #e1e1e1; }
    .innerModal .innerModalHeader h1 {
      line-height: 2.25em;
      padding-bottom: 0; }
  .innerModal .innerModalContent {
    padding: 25px 20px 20px; }
  .innerModal .pageActionsContainer {
    bottom: 25px; }

.openedPopup .background-overlay:after, .openedPopup .forced-background-overlay:after, #alternative-confirmation-error-success-popup {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 6000; }

#alternative-confirmation-error-success-popup {
  display: none; }

.background-overlay.second:after, .forced-background-overlay.second:after {
  top: 0; }

.confirmation-error-success-modal.plume-confirm {
  margin-top: -130px;
  margin-left: -375px;
  width: 750px;
  height: 260px;
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4); }
  .confirmation-error-success-modal.plume-confirm > #confirmation-error-success-message.success-error > .success-error-indicator {
    height: 260px; }
  .confirmation-error-success-modal.plume-confirm strong {
    font-size: 1.5em; }

.modalPage .tableContainer {
  padding-top: 7px; }

.modalPage .emptyTable {
  display: none;
  position: relative;
  top: -290px;
  width: 100%;
  text-align: center;
  font-weight: bold;
  color: #000;
  font-style: italic;
  height: 0; }

.modalPage table {
  width: 100%;
  display: table;
  font-size: 12.8px;
  color: #686868;
  text-align: left;
  width: 100%; }
  .modalPage table thead {
    background-color: #d8d8d8;
    display: block;
    width: 100%;
    /*table-layout:fixed;*/ }
    .modalPage table thead tr {
      display: table;
      table-layout: fixed; }
    .modalPage table thead th {
      height: 45px;
      padding: 5px 10px;
      border-top: 1px solid #d8d8d8;
      border-right: 1px solid #d8d8d8;
      border-bottom: 1px solid #d8d8d8;
      border-left: 1px solid #d8d8d8; }
    .modalPage table thead th:not(:last-child) {
      border-right: 1px solid #e1e1e1 !important; }
  .modalPage table.shortHeader thead td {
    height: 25px; }
  .modalPage table tbody {
    display: block;
    /*height: ___px;*/
    width: 100%;
    overflow: auto; }
    .modalPage table tbody tr {
      background-color: #fff;
      /*height: __px;*/
      display: table;
      /*width: 100%;*/
      table-layout: fixed; }
    .modalPage table tbody td {
      display: table-cell;
      padding: 8px 5px 8px 8px;
      border-bottom: 1px solid #e1e1e1; }
    .modalPage table tbody td + td {
      border-left: 1px solid #e1e1e1; }
  .modalPage table.noBorders thead th, .modalPage table.noBorders tbody td {
    border: 0; }
  .modalPage table.rowBorders thead th, .modalPage table.rowBorders tbody td {
    border: 0; }
  .modalPage table.rowBorders tr:first-child {
    border-top: 1px solid #e1e1e1; }
  .modalPage table.rowBorders tr {
    border-bottom: 1px solid #e1e1e1; }
  .modalPage table tr {
    /*width: 798px;*/
    width: 100%; }
  .modalPage table span {
    display: inline-block; }

.modalPage .oldIEWrapper {
  /*height: ___px;*/
  overflow: auto; }
  .modalPage .oldIEWrapper .statsTable {
    /*width: ____px;*/ }
    .modalPage .oldIEWrapper .statsTable tbody {
      height: auto; }

/* MAXIMUM NUMBER OF TABS ON ANY PAGE IN THE SYSTEM */
.tabContainer .tabHeader {
  position: relative;
  width: 100%;
  height: 60px;
  margin-bottom: 1px; }
  .tabContainer .tabHeader .tab {
    position: absolute;
    bottom: 0;
    height: 60px;
    line-height: 60px;
    text-align: center;
    font-size: 12.8px;
    color: #fff;
    background-color: #013778;
    z-index: 0;
    cursor: pointer; }
    .brand-virgin .tabContainer .tabHeader .tab {
      color: #333333;
      background-color: #EEEEEE; }
    .tabContainer .tabHeader .tab:not(.current) + .tab:not(.current) {
      border-left: 1px solid #001d5a; }
      .brand-virgin .tabContainer .tabHeader .tab:not(.current) + .tab:not(.current) {
        border-left: 1px solid #d7d7d7; }
  .tabContainer .tabHeader .tab.current {
    height: 70px;
    line-height: 70px;
    background-color: #00549a;
    z-index: 1; }
    .brand-virgin .tabContainer .tabHeader .tab.current {
      height: 60px;
      line-height: 60px; }
    .brand-virgin .tabContainer .tabHeader .tab.current {
      color: #FFFFFF;
      background-color: #333333; }
  .tabContainer .tabHeader .tab.current:before, .tabContainer .tabHeader .tab.current:after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    width: 0;
    height: 0;
    border-style: solid;
    -moz-opacity: 0.4;
    -khtml-opacity: 0.4;
    opacity: 0.4; }
  .tabContainer .tabHeader .tab.current:before {
    left: -10px;
    border-color: transparent #001439 transparent transparent;
    border-width: 0 10px 59px 0;
    border-style: solid; }
    .brand-virgin .tabContainer .tabHeader .tab.current:before {
      border-color: transparent transparent transparent transparent; }
  .tabContainer .tabHeader .tab.current:after {
    right: -10px;
    border-color: transparent transparent transparent #001439;
    border-width: 0 0 59px 10px;
    border-style: solid; }
    .brand-virgin .tabContainer .tabHeader .tab.current:after {
      border-color: transparent transparent transparent transparent; }
  .tabContainer .tabHeader .tab.current:before {
    display: none; }

.tabContainer .tabBody .tabContent {
  display: none; }
  .tabContainer .tabBody .tabContent:first-child {
    display: block; }
  .tabContainer .tabBody .tabContent.padTop {
    padding-top: 25px; }
  .tabContainer .tabBody .tabContent.padded {
    padding: 25px; }

/** Pages **/
html {
  min-width: auto; }

body {
  background-color: #e1e1e1; }

.splashPage {
  display: none; }

.page {
  min-height: 100vh;
  min-width: 1251px;
  position: relative; }

.activity-overlay {
  background: rgba(0, 0, 0, 0.8) url("../../images/bell/init-activity-indicator.gif") center center no-repeat;
  z-index: 8000;
  /*TODO: Eliminate z-index (if possible), or use a better z-index (preferably one that's a variable) */ }

html.brand-virgin header #headerContents #BellTitleLogo {
  background: url("../../images/bell/ui/virgin_logo.png") no-repeat 0 0px;
  padding-left: 70px; }
  html.brand-virgin header #headerContents #BellTitleLogo #gatewayTitle {
    bottom: auto;
    font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
    font-size: 36px;
    line-height: 47px;
    font-weight: normal;
    margin-left: 49px;
    margin-top: 6px; }

header {
  background-color: #00549a;
  /* TYPEAHEAD SEARCH VARIABLES */
  /* This is the number of results to show *before scrolling* */
  /* The height of each result in the search results list */ }
  header #headerContents {
    position: relative;
    padding: 10px 15px;
    min-width: 1250px;
    max-width: 1350px;
    margin: auto; }
    header #headerContents #BellTitleLogo {
      margin: 10px auto 15px;
      width: 280px;
      height: 44px;
      background-color: transparent;
      background-repeat: no-repeat;
      background-image: url("../../images/bell/ui/BellLogo.png");
      background-position: top left; }
      header #headerContents #BellTitleLogo #gatewayTitle {
        font-size: 24px;
        text-transform: none;
        color: white;
        margin: 0 0 0 82px;
        position: relative;
        bottom: -12px;
        white-space: nowrap; }
    header #headerContents #headerNotificationsWrapper {
      cursor: pointer;
      margin: 15px auto;
      display: block;
      width: 150px; }
      header #headerContents #headerNotificationsWrapper #headerNotifications {
        background-color: #02215d;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        -ms-border-radius: 15px;
        border-radius: 15px;
        color: #fff;
        width: 150px; }
        header #headerContents #headerNotificationsWrapper #headerNotifications .dropArrow {
          cursor: pointer; }
      .brand-virgin header #headerContents #headerNotificationsWrapper #headerNotifications {
        width: 170px; }
    header #headerContents #headerActions {
      text-align: center;
      display: block;
      /* *** TYPEAHEAD STYLES *** */
      /* *** end of TYPEAHEAD STYLES *** */ }
      header #headerContents #headerActions > * + * {
        margin-left: 10px; }
      header #headerContents #headerActions #searchContainer {
        position: relative;
        margin-bottom: 15px;
        padding-top: 1px;
        width: 100%;
        display: inline-block;
        vertical-align: middle;
        display: none; }
        header #headerContents #headerActions #searchContainer #searchFieldBG {
          position: absolute;
          top: 0;
          left: 0;
          height: 32px;
          width: 100%;
          background-color: #fff;
          border: 1px solid #e1e1e1; }
        header #headerContents #headerActions #searchContainer #hideSearchFieldButton {
          position: absolute;
          top: 4px;
          right: 4px;
          width: 25px;
          height: 25px;
          background: transparent url("../../images/bell/ui/deleteButton_sml.png") no-repeat center;
          cursor: pointer; }
      header #headerContents #headerActions .twitter-typeahead {
        display: inline-block;
        vertical-align: middle;
        width: 100%;
        text-align: left; }
      header #headerContents #headerActions .typeahead,
      header #headerContents #headerActions .tt-query,
      header #headerContents #headerActions .tt-input,
      header #headerContents #headerActions .tt-hint {
        padding: 4px 0 4px 10px;
        width: 85%;
        height: 30px;
        font-size: 16px;
        border: none;
        background-color: transparent;
        -webkit-border-radius: 0px;
        -moz-border-radius: 0px;
        -ms-border-radius: 0px;
        border-radius: 0px; }
      header #headerContents #headerActions .tt-input {
        position: absolute;
        top: 0;
        left: 0; }
        header #headerContents #headerActions .tt-input:focus {
          outline: none; }
      header #headerContents #headerActions .tt-menu {
        padding-top: 30px;
        width: 100%;
        background-color: #00549a;
        z-index: 9999 !important; }
        header #headerContents #headerActions .tt-menu:after {
          content: "";
          position: absolute;
          top: 25px;
          left: 50%;
          margin-left: -8px;
          border-color: #00549a transparent transparent transparent;
          border-style: solid;
          border-width: 16px 16px 0 16px; }
      .brand-virgin header #headerContents #headerActions .tt-menu {
        padding-top: 0px;
        width: 100%;
        background-color: #00549a;
        z-index: 9999 !important; }
        .brand-virgin header #headerContents #headerActions .tt-menu:after {
          visibility: hidden; }
      header #headerContents #headerActions .tt-dataset {
        padding-top: 0;
        background-color: #fff;
        border: 1px solid #c1c1c1; }
      header #headerContents #headerActions .tt-suggestion {
        padding: 10px 10px;
        height: searchResultHeightpx;
        font-size: 14.4px;
        color: #686868; }
        header #headerContents #headerActions .tt-suggestion + .tt-suggestion {
          border-top: 1px solid #e1e1e1; }
        header #headerContents #headerActions .tt-suggestion:hover {
          background-color: #e1e1e1;
          color: #686868; }
        header #headerContents #headerActions .tt-suggestion.tt-cursor {
          background-color: #e1e1e1; }
      header #headerContents #headerActions #headerSearch {
        width: 32px;
        height: 37px;
        float: right;
        background-color: transparent;
        background-repeat: no-repeat;
        background-image: url("../../images/bell/icons/icon-Search.png");
        background-image: url("../../images/bell/icons/icon-Search.svg");
        display: inline-block;
        vertical-align: middle;
        cursor: pointer; }
      header #headerContents #headerActions .headerButton {
        color: #003071;
        background-color: #fff;
        font-size: 0.9em;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        -ms-border-radius: 15px;
        border-radius: 15px;
        width: 115px;
        line-height: 30px; }
      header #headerContents #headerActions #headerLogin,
      header #headerContents #headerActions #headerLogout {
        display: none;
        width: 175px; }
      header #headerContents #headerActions.authenticatedUser #headerLogin {
        display: none; }
      header #headerContents #headerActions.authenticatedUser #headerLogout {
        display: inline-block; }
      header #headerContents #headerActions.guestUser #headerLogin {
        display: inline-block; }
      header #headerContents #headerActions.guestUser #headerLogout {
        display: none; }
  @media all {
    header #headerContents #headerActions #searchContainer {
      margin-bottom: 0;
      float: right;
      width: 230px; }
    header #headerContents #headerActions .typeahead,
    header #headerContents #headerActions .tt-query,
    header #headerContents #headerActions .tt-input,
    header #headerContents #headerActions .tt-hint {
      width: 196px;
      /* 34px is the space for the #hideSearchFieldButton */ }
    header #headerContents #headerActions .headerButton {
      float: left; } }
  @media all {
    header #headerContents #BellTitleLogo {
      margin: 10px auto 25px; }
    header #headerContents #headerNotificationsWrapper {
      margin: 0;
      float: left;
      display: inline-block;
      vertical-align: middle; }
    header #headerContents #headerActions {
      float: right;
      display: inline-block; }
      header #headerContents #headerActions #searchContainer {
        float: none; }
      header #headerContents #headerActions #headerSearch {
        float: none; }
      header #headerContents #headerActions .headerButton {
        float: none; } }
  @media all {
    header #headerContents #BellTitleLogo {
      float: left;
      margin: 10px 0;
      display: inline-block;
      vertical-align: middle; }
    header #headerContents #headerNotificationsWrapper {
      margin-top: 20px;
      margin-left: 45px; }
    header #headerContents #headerActions {
      margin-top: 20px; } }
  @media all {
    header #headerContents #headerNotificationsWrapper {
      position: absolute;
      left: 50%;
      margin-left: -75px; } }

main {
  padding-bottom: 15px; }

#PromotionalBanner {
  padding: 10px;
  background: #fff;
  text-align: center; }
  #PromotionalBanner img {
    width: 51px;
    margin-right: 15px;
    vertical-align: middle; }
  #PromotionalBanner a {
    color: #00549a; }

#DashboardContent {
  margin: 0 auto;
  width: 1220px; }

#DashboardContent {
  /* *** OTHER TILES *** */ }
  #DashboardContent h1 {
    color: #000;
    font-weight: normal;
    font-size: 2em; }
  #DashboardContent .dashTile {
    position: relative;
    padding: 20px 25px 15px;
    height: 150px;
    color: white;
    background-color: #00549a;
    background-repeat: no-repeat;
    background-position: center 65px;
    border-top: 1px solid #e1e1e1;
    cursor: pointer; }
    #DashboardContent .dashTile:hover {
      background-color: #02215d;
      color: #c1c1c1; }
  #DashboardContent .dashTile.lrgTile {
    height: 300px;
    background-position: center 70px; }
  #DashboardContent #myServices .service {
    position: relative;
    padding: 20px 10px 20px 145px;
    padding-left: 145px;
    width: 100%;
    color: #000;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: 15px center;
    display: block;
    cursor: pointer; }
    #DashboardContent #myServices .service:hover {
      background-color: #c1c1c1;
      color: black; }
    #DashboardContent #myServices .service .serviceContentContainer {
      margin: 0 auto;
      width: 70%;
      height: 100%;
      min-width: 140px;
      display: table; }
      #DashboardContent #myServices .service .serviceContentContainer .serviceContent {
        display: table-cell;
        vertical-align: middle; }
        #DashboardContent #myServices .service .serviceContentContainer .serviceContent .serviceTitle {
          font-family: BellSlimSemiBoldRegular, Helvetica, Arial, sans-serif;
          font-size: 19.2px;
          line-height: 1.1em; }
        #DashboardContent #myServices .service .serviceContentContainer .serviceContent .statusLine {
          margin-top: 10px;
          padding: 3px 10px;
          font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
          font-size: 12.8px;
          text-transform: none;
          color: #fff;
          display: inline-block;
          white-space: nowrap;
          -webkit-border-radius: 5px;
          -moz-border-radius: 5px;
          -ms-border-radius: 5px;
          border-radius: 5px; }
    #DashboardContent #myServices .service[status="UP"] .statusLine {
      background-color: #009800; }
    #DashboardContent #myServices .service[status="TROUBLE"] .statusLine {
      background-color: #f59e0d; }
    #DashboardContent #myServices .service[status="DOWN"] .statusLine {
      background-color: #cc0001; }
    #DashboardContent #myServices .service[status="NOTSUBSCRIBED"] .statusLine {
      background-color: #999999; }
  #DashboardContent #myServices .service.internet {
    background-image: url("../../images/bell/service-Internet_grey.png"); }
  #DashboardContent #myServices .service.fibeTV {
    background-image: url("../../images/bell/service-FibeTV_grey.png"); }
  #DashboardContent #myServices .service.fibeVoice {
    background-image: url("../../images/bell/service-FibeVoice_wide_grey.png"); }
  .market-bbm #DashboardContent #myServices .service.fibeVoice {
    background-image: url("../../images/bell/service-FibeVoice_business_grey.png"); }
  #DashboardContent #myServices .service[status="UP"].internet, #DashboardContent #myServices .service[status="TROUBLE"].internet, #DashboardContent #myServices .service[status="DOWN"].internet {
    background-image: url("../../images/bell/service-Internet.png"); }
  #DashboardContent #myServices .service[status="UP"].fibeTV, #DashboardContent #myServices .service[status="TROUBLE"].fibeTV, #DashboardContent #myServices .service[status="DOWN"].fibeTV {
    background-image: url("../../images/bell/service-FibeTV.png"); }
  #DashboardContent #myServices .service[status="UP"].fibeVoice, #DashboardContent #myServices .service[status="TROUBLE"].fibeVoice, #DashboardContent #myServices .service[status="DOWN"].fibeVoice {
    background-image: url("../../images/bell/service-FibeVoice_wide.png"); }
  .market-bbm #DashboardContent #myServices .service[status="UP"].fibeVoice, .market-bbm #DashboardContent #myServices .service[status="TROUBLE"].fibeVoice, .market-bbm #DashboardContent #myServices .service[status="DOWN"].fibeVoice {
    background-image: url("../../images/bell/service-FibeVoice_business.png"); }
  #DashboardContent #manageWifiContainer {
    background-image: url("../../images/bell/icons/icon-med-WiFi.png");
    background-image: url("../../images/bell/icons/icon-med-WiFi.svg"); }
    #DashboardContent #manageWifiContainer.centerImage {
      background-position: center center; }
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.networkDisabled .SSIDContainer,
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.networkDisabled .WiFiPasswordContainer,
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.networkDisabled .notCommonPrimaryNetwork,
    #DashboardContent #manageWifiContainer #guestNetworkContainer.networkDisabled .SSIDContainer,
    #DashboardContent #manageWifiContainer #guestNetworkContainer.networkDisabled .WiFiPasswordContainer,
    #DashboardContent #manageWifiContainer #guestNetworkContainer.networkDisabled .notCommonPrimaryNetwork {
      display: none; }
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.networkDisabled .networkDisabledText,
    #DashboardContent #manageWifiContainer #guestNetworkContainer.networkDisabled .networkDisabledText {
      display: block;
      float: right;
      margin-right: 57px;
      margin-top: 0;
      font-size: 13px; }
    #DashboardContent #manageWifiContainer #primaryNetworkContainer .networkDisabledText,
    #DashboardContent #manageWifiContainer #guestNetworkContainer .networkDisabledText {
      display: none; }
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.notCommonNetwork .SSIDContainer,
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.notCommonNetwork .WiFiPasswordContainer {
      display: none; }
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.notCommonNetwork .notCommonPrimaryNetwork,
    #DashboardContent #manageWifiContainer #primaryNetworkContainer.notCommonNetwork .clickTitle {
      display: block; }
    #DashboardContent #manageWifiContainer #primaryNetworkContainer .notCommonPrimaryNetwork {
      display: none; }
    #DashboardContent #manageWifiContainer .WiFiPasswordContainer,
    #DashboardContent #manageWifiContainer .SSIDContainer {
      width: 240px; }
    #DashboardContent #manageWifiContainer .clickTitle,
    #DashboardContent #manageWifiContainer .networkDisabledText {
      display: none;
      font-weight: bold; }
    #DashboardContent #manageWifiContainer .showPassword,
    #DashboardContent #manageWifiContainer .showSSID {
      display: block; }
    #DashboardContent #manageWifiContainer .show {
      display: block; }
    #DashboardContent #manageWifiContainer .passwordContainer.wrapPassword .clickTitle,
    #DashboardContent #manageWifiContainer .SSID.wrapSSID .clickTitle {
      display: block; }
    #DashboardContent #manageWifiContainer .passwordContainer.wrapPassword .showPassword,
    #DashboardContent #manageWifiContainer .passwordContainer.wrapPassword .showSSID,
    #DashboardContent #manageWifiContainer .SSID.wrapSSID .showPassword,
    #DashboardContent #manageWifiContainer .SSID.wrapSSID .showSSID {
      display: none; }
  #DashboardContent #myNetworkContainer {
    background-image: url("../../images/bell/icons/icon-lrg-Network.png");
    background-image: url("../../images/bell/icons/icon-lrg-Network.svg"); }
  #DashboardContent #myUsageContainer {
    background-image: url("../../images/bell/icons/icon-BandwidthUsage.png");
    background-image: url("../../images/bell/icons/icon-BandwidthUsage.svg"); }
  #DashboardContent #speedTestContainer {
    background-image: url("../../images/bell/icons/icon-med-SpeedTest.png"); }
  #DashboardContent #batteryBackupContainer.criticalState #batteryBackup {
    background-color: #4a4a4a; }
    #DashboardContent #batteryBackupContainer.criticalState #batteryBackup:hover {
      background-color: #2A2A2A; }
    #DashboardContent #batteryBackupContainer.criticalState #batteryBackup .warningIcon {
      background-image: url("../../images/bell/icons/battery_warning_icon.png");
      float: right;
      width: 24px;
      height: 24px; }
    #DashboardContent #batteryBackupContainer.criticalState #batteryBackup .LabelSubInfo {
      color: #6f9ec5; }
  #DashboardContent #batteryBackupContainer #batteryBackup {
    background-image: url("../../images/bell/icons/icon-med-Battery.png");
    background-image: url("../../images/bell/icons/icon-med-Battery.svg"); }
    #DashboardContent #batteryBackupContainer #batteryBackup.batteryIsNotPresent {
      background-image: url("../../images/bell/icons/icon-med-Battery-warning.png");
      background-color: #4a4a4a; }
      #DashboardContent #batteryBackupContainer #batteryBackup.batteryIsNotPresent:hover {
        background-color: #2A2A2A; }
  .brand-virgin .gateway-type-sbig #DashboardContent #modemPreferencesContainer {
    background-image: url("../../images/bell/icons/ic-modem-steve.png");
    background-image: url("../../images/bell/icons/ic-modem-steve.svg"); }
  #DashboardContent #modemPreferencesContainer {
    background-image: url("../../images/bell/icons/icon-Modem.png"); }
    .brand-virgin .gateway-type-hh4000 #DashboardContent #modemPreferencesContainer {
      background-image: url("../../images/bell/icons/icon-Modem-vincent.png"); }
  #DashboardContent #advancedSettingsContainer {
    background-image: url("../../images/bell/icons/icon-Tools.png");
    background-image: url("../../images/bell/icons/icon-Tools.svg"); }
  #DashboardContent .tileInfoContainer {
    position: absolute;
    bottom: 35px;
    margin-left: -25px;
    width: 100%; }
    #DashboardContent .tileInfoContainer .tileInfoBlock {
      float: left;
      width: 50%; }
      #DashboardContent .tileInfoContainer .tileInfoBlock .tileInfoNum {
        margin-bottom: 4px;
        font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
        font-size: 2.1875em;
        line-height: 1em; }
      #DashboardContent .tileInfoContainer .tileInfoBlock .tileInfoLabel {
        word-spacing: 9999999px; }
    #DashboardContent .tileInfoContainer .tileInfoColLeft {
      padding: 0 25px 0 0;
      text-align: right;
      border-right: 1px solid #fff; }
    #DashboardContent .tileInfoContainer .tileInfoColRight {
      padding: 0 0 0 25px;
      text-align: left; }
  #DashboardContent .tileTextContainerWrapper {
    position: absolute;
    bottom: 20px;
    margin: 0 0 0 -25px;
    width: 100%; }
  #DashboardContent .tileTextContainer {
    float: left;
    margin-top: 15px;
    padding: 0 0 0 25px;
    width: 50%;
    min-width: 225px; }
    #DashboardContent .tileTextContainer > * {
      width: 200px;
      margin: 0 auto; }
    #DashboardContent .tileTextContainer p {
      font-size: 13px;
      line-height: 1.5385em;
      display: block; }
      #DashboardContent .tileTextContainer p span {
        display: inline-block; }
      #DashboardContent .tileTextContainer p span.label {
        width: 103px; }
      #DashboardContent .tileTextContainer p.title {
        font-size: 16px; }
  #DashboardContent a {
    color: #fff;
    text-decoration: none; }
  #DashboardContent .tileLabel {
    font-family: inherit;
    text-transform: none;
    position: relative;
    padding-bottom: 20px;
    font-size: 1.375em;
    line-height: 1em; }
    #DashboardContent .tileLabel .LabelSubInfo {
      position: absolute;
      top: 1.2em;
      font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
      font-size: 1.14em;
      /* Parent font size is 22px at this point */
      line-height: 1em; }
  #DashboardContent .tileLabel#manageMyWifiTileLabel {
    white-space: nowrap; }
  #DashboardContent .whiteBG a .tileLabel {
    color: #0069aa; }
  #DashboardContent > .dashColContainer {
    padding: 40px 0;
    float: left; }
  #DashboardContent > .dashColContainer.col2 .dashInnerColContainer {
    width: 290px;
    float: left;
    border-right: 1px solid #e1e1e1; }
  #DashboardContent > .dashColContainer.col2 .emptyItem {
    display: none; }
  #DashboardContent > .dashColContainer .dashInnerColContainer {
    width: 295px; }
  #DashboardContent > .dashColContainer.col1 {
    width: 320px; }
  #DashboardContent > .dashColContainer.col2 {
    width: 610px; }
  #DashboardContent > .dashColContainer.col3 {
    width: 290px; }

footer {
  margin: 0 auto;
  padding: 10px 30px;
  min-height: 60px;
  max-width: 1350px; }
  footer p {
    color: #686868;
    font-size: 0.75em; }
  footer p.copy {
    padding-bottom: 10px;
    font-size: 0.75em;
    text-align: center; }
  footer #FooterLinks {
    text-align: center; }
    footer #FooterLinks p.links {
      font-size: 0.8em; }
      footer #FooterLinks p.links span {
        display: inline-block;
        padding: 0 10px; }
      footer #FooterLinks p.links a {
        text-decoration: none; }
        footer #FooterLinks p.links a:hover {
          text-decoration: underline; }
  @media all {
    footer p {
      display: inline-block; }
    footer p.copy {
      float: left;
      padding-bottom: 0;
      text-align: left; }
    footer #FooterLinks {
      float: right;
      display: inline-block;
      text-align: right; } }

/* **** PAGE SPECIFIC STYLES **** */
.gateway-type-ubig #About-Card #modemDetails.column #modemImg {
  background: url("../../images/bell/Modem_UBIG.png") no-repeat center; }

.gateway-type-big #About-Card #modemDetails.column #modemImg {
  background: url("../../images/bell/Modem_BIG.png") no-repeat center; }

.gateway-type-sbig #About-Card #modemDetails.column #modemImg {
  background: url("../../images/bell/Modem_SBIG.png") no-repeat center; }

.gateway-type-hh4000 #About-Card #modemDetails.column #modemImg, .gateway-type-giga-hub #About-Card #modemDetails.column #modemImg {
  background: url("../../images/bell/HomeHub4K_front.png") no-repeat center; }

#About-Card {
  /* TABLE COLUMN WIDTHS */ }
  #About-Card.hide-modem-light-details {
    position: relative; }
    #About-Card.hide-modem-light-details #modemDetails.column {
      border: none;
      margin-right: 0;
      padding-right: 0;
      position: absolute;
      left: 50%;
      transform: translateX(-50%); }
  #About-Card #modemDetails.column {
    margin-right: 30px;
    padding-right: 30px;
    width: 33%;
    border-right: 1px solid #e1e1e1; }
    #About-Card #modemDetails.column #modemImg {
      height: 150px; }
    #About-Card #modemDetails.column #modemInfo {
      margin: 30px 0; }
      #About-Card #modemDetails.column #modemInfo td:first-child {
        width: 57%; }
  #About-Card #modemIcons.column {
    width: 64%;
    overflow: auto; }
    #About-Card #modemIcons.column .colContentContainer {
      padding: 0; }
    #About-Card #modemIcons.column #modemIconList tr {
      height: 76px; }
    #About-Card #modemIcons.column #modemIconList .colIcon {
      padding: 8px 5px 8px 0; }
    #About-Card #modemIcons.column #modemIconList .colName {
      color: #000;
      font-weight: bold; }
    #About-Card #modemIcons.column #modemIconList .colDescription .state {
      color: #000;
      font-weight: bold; }
  #About-Card #modemIconList .colIcon {
    width: 9.23077%; }
  #About-Card #modemIconList .colName {
    width: 17.69231%; }

body.accessDenied #headerContents {
  height: 74px; }

#AccessDenied-View.accessDenied {
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  width: 900px;
  color: #686868;
  font-size: 12.8px;
  background-color: #fff;
  padding: 40px 40px 0 40px;
  margin: 40px auto; }

#AccessDenied-View .modal-sub-header-wrap {
  margin-left: -40px;
  margin-top: -40px;
  background: #D8D8D8;
  padding: 40px 0;
  margin-bottom: 40px;
  width: 900px;
  color: black; }
  #AccessDenied-View .modal-sub-header-wrap .title h1 {
    margin-left: 30px;
    color: #686868;
    font-weight: normal; }

#AccessDenied-View .modal-sub-header-inner-wrap {
  width: 80%;
  margin: 10px auto 0; }
  #AccessDenied-View .modal-sub-header-inner-wrap .icon-error {
    background: url("../../images/bell/ui/lrg-fail.png") no-repeat;
    width: 48px;
    height: 48px;
    margin-right: 20px;
    float: left; }
  #AccessDenied-View .modal-sub-header-inner-wrap .modal-sub-header-description {
    height: 48px;
    line-height: 48px;
    float: left; }

/* **** PAGE SPECIFIC STYLES **** */
#BatteryBackup-View label {
  font-weight: normal; }

#BatteryBackup-View.disconnected #batteryStatusInfo.column {
  width: 100%; }
  #BatteryBackup-View.disconnected #batteryStatusInfo.column #batterStatusItemsContainer #criticalStateImage {
    display: block; }
  #BatteryBackup-View.disconnected #batteryStatusInfo.column #batterStatusItemsContainer #batteryMeterOuter {
    display: none; }
  #BatteryBackup-View.disconnected #batteryStatusInfo.column #batterStatusItemsContainer #batteryPercent {
    display: none; }

#BatteryBackup-View.disconnected #batteryNotifications {
  display: none; }

#BatteryBackup-View.disconnected #save {
  display: none; }

#BatteryBackup-View #batteryStatusInfo.column {
  margin-right: 30px;
  padding-right: 30px;
  width: 36%; }
  #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer {
    margin-top: 100px; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer.criticalState #batteryMeterOuter {
      display: none; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer.criticalState #criticalStateMessage, #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer.criticalState #criticalStateImage {
      display: block; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #criticalStateMessage, #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #criticalStateImage {
      display: none; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #criticalStateImage {
      width: 102px;
      height: 204px;
      margin: 35px auto 30px;
      background-image: url("../../images/bell/icons/battery_warning.png"); }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #criticalStateMessage {
      margin-top: 15px;
      text-align: center; }
      #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #criticalStateMessage p {
        margin-bottom: 3px; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #batteryPercent {
      font-family: BellSlimMediumRegular;
      color: #686868;
      font-size: 45px;
      text-align: center; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #batteryMeterOuter {
      position: relative;
      margin: 55px auto 30px;
      width: 95px;
      height: 172px;
      border: 2px solid #00549a;
      -webkit-border-radius: 10px;
      -moz-border-radius: 10px;
      -ms-border-radius: 10px;
      border-radius: 10px; }
      #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #batteryMeterOuter #batteryMeterTop {
        position: absolute;
        top: -17px;
        left: 50%;
        margin-left: -25px;
        width: 50px;
        height: 17px;
        border: 2px solid #00549a;
        -webkit-border-top-left-radius: 6px;
        -moz-border-radius-topleft: 6px;
        border-top-left-radius: 6px;
        -webkit-border-top-right-radius: 6px;
        -moz-border-radius-topright: 6px;
        border-top-right-radius: 6px; }
      #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #batteryMeterOuter #batteryLevelContainer {
        position: absolute;
        bottom: 4px;
        left: 2px;
        width: 87px;
        height: 160px; }
        #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #batteryMeterOuter #batteryLevelContainer #batteryLevel {
          position: absolute;
          bottom: 0;
          left: 0;
          width: 87px;
          height: 80%;
          background-color: #00549a; }
      #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #batteryMeterOuter #batteryMeterMask {
        position: absolute;
        top: 0;
        left: 0;
        width: 91px;
        height: 168px;
        border: 4px solid #fff;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        border-radius: 10px;
        background-color: transparent; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #timeRemaining {
      margin-bottom: 30px; }
    #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #batteryStatus, #BatteryBackup-View #batteryStatusInfo.column #batterStatusItemsContainer #timeRemaining {
      font-size: 16px;
      color: #686868;
      text-align: center;
      font-weight: bold; }

#BatteryBackup-View #batteryNotifications.column {
  width: 61%;
  overflow: auto; }
  #BatteryBackup-View #batteryNotifications.column .colContentContainer {
    padding: 0; }
  #BatteryBackup-View #batteryNotifications.column h2 {
    margin-top: 15px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e1e1e1;
    display: block; }
    #BatteryBackup-View #batteryNotifications.column h2:first-child {
      margin-top: 0; }
  #BatteryBackup-View #batteryNotifications.column p {
    margin-top: 15px;
    margin-bottom: 6px; }
  #BatteryBackup-View #batteryNotifications.column .formBlock {
    margin-top: 15px; }
  #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #batteryLifeNotification {
    margin-top: 15px; }
  #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #emailAndSMS {
    margin-top: 0;
    margin-left: 37px;
    border-top: none !important;
    border-bottom: none !important; }
    #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #emailAndSMS label, #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #emailAndSMS div.textValue {
      line-height: 2.0625em;
      width: 120px; }
    #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #emailAndSMS .defaultSMS {
      display: none; }
    #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #emailAndSMS .emptyCredentialSMS {
      visibility: hidden; }
      #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #emailAndSMS .emptyCredentialSMS .defaultSMS {
        display: block; }
    #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #emailAndSMS #editEmailAndSMSButton {
      margin-top: -15px; }
  #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #tripleBeepOption {
    border-bottom: 1px solid #e1e1e1;
    padding-bottom: 10px;
    margin-top: 0; }
  #BatteryBackup-View #batteryNotifications.column #batteryLifeNotificationContainer #receiveNotificationLowLevel .formBlock {
    margin-top: 10px; }

#ManageDevice .halfCol {
  padding: 0 25px; }

#ManageDevice .caption {
  padding-top: 5px; }

#ManageDevice #deviceIcons ul.deviceIcons.inlineItems {
  padding: 6px 5px 5px 6px;
  height: 115px;
  overflow: hidden; }
  #ManageDevice #deviceIcons ul.deviceIcons.inlineItems .deviceIcon, #ManageDevice #deviceIcons ul.deviceIcons.inlineItems .deviceIconSolid {
    width: 60px; }

#ManageDevice #deviceIcons .showLess {
  display: none; }

#ManageDevice #deviceIcons.expanded ul.deviceIcons.inlineItems {
  padding: 5px;
  border: 2px solid #e1e1e1;
  overflow-y: auto;
  margin: 10px 0 3px 4px; }

#ManageDevice #ipAssigned {
  display: none; }

#ManageDevice #DeviceName-Settings.usb {
  width: 100%; }

#ManageDevice .isUSB {
  float: left;
  width: 50%;
  height: 340px;
  padding: 0 33px; }
  #ManageDevice .isUSB.leftBorder {
    border-left: 1px solid #e1e1e1;
    padding: 0 10px 0 25px !important; }
  #ManageDevice .isUSB.usbSection label, #ManageDevice .isUSB.usbSection .textValue, #ManageDevice .isUSB.usbSection .textFieldValue {
    line-height: 2.9em; }

#ManageDevice .disconnected .isUSB label[for="usbType"],
#ManageDevice .disconnected .isUSB label[for="usbPort"],
#ManageDevice .disconnected .isUSB label[for="usbTotalSpace"],
#ManageDevice .disconnected .isUSB label[for="usbUsedSpace"],
#ManageDevice .disconnected .isUSB label[for="usbAvailableSpace"] {
  color: #cccccc; }

#ManageDevice #ipIsReserved {
  margin-top: 5px; }

#ManageDevice #currentRestrictionDisplay {
  border-top: 1px solid #e1e1e1;
  margin-top: 10px; }
  #ManageDevice #currentRestrictionDisplay .multiLine.colorBG.lightGreyBG {
    padding: 5px; }

#DHCPSettings-View input.ipSegment {
  width: 64px; }

#DHCPSettings-View #dhcpStatus {
  position: absolute;
  top: 40px;
  left: 40px; }
  #DHCPSettings-View #dhcpStatus label {
    padding-right: 15px;
    font-size: 16px;
    line-height: 1.6875em;
    font-weight: bold;
    display: inline-block; }

#DHCPSettings-View #showDHCPTableButton {
  position: absolute;
  top: 5px;
  right: 40px; }

.brand-virgin #DHCPSettings-View #showDHCPTableButton {
  color: #333333;
  background: #fff;
  border: 2px solid #333333;
  font-weight: bold; }

#DHCPSettings-View #dhcpContentContainer {
  margin: 50px auto 0;
  padding-top: 15px;
  height: 515px; }
  #DHCPSettings-View #dhcpContentContainer .halfCol:first-child {
    padding-right: 25px;
    border-right: none; }
  #DHCPSettings-View #dhcpContentContainer .halfCol + .halfCol {
    padding-left: 25px; }

#DHCPSettings-View #dhcpForm label {
  width: 195px; }

#DHCPSettings-View #dhcpForm .formBlock {
  padding-bottom: 15px; }

#DHCPSettings-View #dhcpForm .formBlock.bottomBorder {
  margin-bottom: 15px; }

#DHCPSettings-View #dhcpForm select.ipSegment {
  width: 64px;
  text-align: center; }

#DHCPSettings-View #dhcpForm select.ipSegment + .ipSeparator {
  width: 0;
  margin: 6px; }

#DHCPSettings-View #dhcpInstructionsColumn * + p, #DHCPSettings-View #dhcpInstructionsColumn * + ul {
  margin-top: 15px; }

#DHCPSettings-View #dhcpLeaseModal {
  margin-top: -225px;
  margin-left: -237.5px;
  width: 475px;
  height: 450px;
  -webkit-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  -moz-box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  box-shadow: 0px 2px 5px 2px rgba(50, 50, 50, 0.4);
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #fff;
  border: 1px solid #c1c1c1; }
  #DHCPSettings-View #dhcpLeaseModal .deviceList {
    margin: 20px auto 0;
    width: 325px;
    height: 280px;
    overflow: auto;
    border-bottom: 1px solid #efefef;
    border-top: 1px solid #efefef; }
    #DHCPSettings-View #dhcpLeaseModal .deviceList .device {
      padding: 6px 0 5px 15px;
      height: 85px;
      display: block; }
      #DHCPSettings-View #dhcpLeaseModal .deviceList .device:not(:first-child) {
        border-top: 1px solid #efefef; }
      #DHCPSettings-View #dhcpLeaseModal .deviceList .device > div {
        display: inline-block;
        vertical-align: middle; }
      #DHCPSettings-View #dhcpLeaseModal .deviceList .device .deviceName {
        font-weight: bold; }
      #DHCPSettings-View #dhcpLeaseModal .deviceList .device .deviceInfo {
        margin: 4px 0 0 15px;
        width: 185px; }

#DiagnosticsViewContainer #interface-results .quarterCol {
  padding-left: 0;
  padding: 0 10px 0 0;
  border-right: 1px solid #e1e1e1; }

#DiagnosticsViewContainer #interface-results .halfCol {
  width: 73%; }

#DiagnosticsViewContainer #generalStatus {
  margin: -15px auto 15px;
  width: 115px; }

#DiagnosticsViewContainer .modalHeader h2 {
  padding-bottom: 5px; }

#DiagnosticsViewContainer .topBorder {
  padding-top: 0;
  height: 475px;
  overflow-x: auto;
  border-bottom: 1px solid #e1e1e1; }

#DiagnosticsViewContainer h3 {
  font-size: 15px;
  font-weight: bold;
  color: #222222;
  display: inline-block;
  padding-bottom: 5px; }

#DiagnosticsViewContainer .resultsMainGroup {
  margin-top: 10px; }
  #DiagnosticsViewContainer .resultsMainGroup ul {
    margin-left: 5px; }
    #DiagnosticsViewContainer .resultsMainGroup ul li {
      padding-left: 15px; }
      #DiagnosticsViewContainer .resultsMainGroup ul li .diagnosticItem {
        height: 40px; }
        #DiagnosticsViewContainer .resultsMainGroup ul li .diagnosticItem label {
          color: #222222;
          line-height: 40px; }
        #DiagnosticsViewContainer .resultsMainGroup ul li .diagnosticItem .statusMsg {
          width: 25px;
          height: 25px;
          margin-top: 9px;
          margin-right: 9px; }
      #DiagnosticsViewContainer .resultsMainGroup ul li.FAIL::before, #DiagnosticsViewContainer .resultsMainGroup ul li.CHECK_CONNECTIVITY::before, #DiagnosticsViewContainer .resultsMainGroup ul li.DISABLED::before {
        content: "\00a0";
        float: left;
        height: 40px;
        margin-left: -22px;
        width: 7px; }
      #DiagnosticsViewContainer .resultsMainGroup ul li.FAIL.CHECK_CONNECTIVITY::before, #DiagnosticsViewContainer .resultsMainGroup ul li.FAIL.DISABLED::before, #DiagnosticsViewContainer .resultsMainGroup ul li.CHECK_CONNECTIVITY.CHECK_CONNECTIVITY::before, #DiagnosticsViewContainer .resultsMainGroup ul li.CHECK_CONNECTIVITY.DISABLED::before, #DiagnosticsViewContainer .resultsMainGroup ul li.DISABLED.CHECK_CONNECTIVITY::before, #DiagnosticsViewContainer .resultsMainGroup ul li.DISABLED.DISABLED::before {
        background-color: #dd9700; }
      #DiagnosticsViewContainer .resultsMainGroup ul li.FAIL.FAIL::before, #DiagnosticsViewContainer .resultsMainGroup ul li.CHECK_CONNECTIVITY.FAIL::before, #DiagnosticsViewContainer .resultsMainGroup ul li.DISABLED.FAIL::before {
        background-color: #FF0000; }
    #DiagnosticsViewContainer .resultsMainGroup ul li:not(:last-child) {
      border-bottom: 1px solid #e1e1e1; }
  #DiagnosticsViewContainer .resultsMainGroup:not(:last-child) {
    border-bottom: 1px solid #e1e1e1; }

#DiagnosticsViewContainer .statusMsg {
  padding-right: 45px;
  text-align: right;
  line-height: 41px;
  font-size: 14.4px;
  font-weight: bold;
  background-repeat: no-repeat;
  background-position: right center; }
  #DiagnosticsViewContainer .statusMsg.PASS {
    background-image: url("../../images/bell/ui/med-checkmark_whiteBG.png"); }
  #DiagnosticsViewContainer .statusMsg.FAIL {
    background-image: url("../../images/bell/ui/med-fail.png"); }
  #DiagnosticsViewContainer .statusMsg.CHECK_CONNECTIVITY, #DiagnosticsViewContainer .statusMsg.DISABLED {
    background-image: url("../../images/bell/ui/med-warning_yellow.png"); }

#DiagnosticsViewContainer .issues.PASS .issue#pass {
  display: block; }

#DiagnosticsViewContainer .issues .issue {
  margin-right: 10px; }
  #DiagnosticsViewContainer .issues .issue:not(:last-child) {
    border-bottom: 1px solid #e1e1e1; }
  #DiagnosticsViewContainer .issues .issue#pass {
    display: none; }
  #DiagnosticsViewContainer .issues .issue .issueTitle {
    margin-top: 10px; }
  #DiagnosticsViewContainer .issues .issue .statusMsg {
    height: 25px;
    line-height: 25px;
    font-weight: normal; }
    #DiagnosticsViewContainer .issues .issue .statusMsg.CHECK_CONNECTIVITY, #DiagnosticsViewContainer .issues .issue .statusMsg.DISABLED {
      color: #dd9700; }
    #DiagnosticsViewContainer .issues .issue .statusMsg.FAIL {
      color: #FF0000; }
  #DiagnosticsViewContainer .issues .issue .issueContainer {
    margin-bottom: 15px;
    margin-left: 15px;
    margin-right: 35px; }
    #DiagnosticsViewContainer .issues .issue .issueContainer * + p, #DiagnosticsViewContainer .issues .issue .issueContainer li {
      margin-top: 15px; }
    #DiagnosticsViewContainer .issues .issue .issueContainer ul {
      margin-left: 30px;
      list-style-type: disc;
      list-style-type: initial; }
    #DiagnosticsViewContainer .issues .issue .issueContainer ol {
      margin-left: 30px; }

#DiagnosticsViewContainer .accordionContainer .accordionSectionContainer .accordionContent {
  position: relative;
  padding: 20px;
  color: #fff;
  font-size: 12.8px;
  background-color: #4a4a4a;
  display: none; }
  #DiagnosticsViewContainer .accordionContainer .accordionSectionContainer .accordionContent label.customLong {
    width: 145px; }
  #DiagnosticsViewContainer .accordionContainer .accordionSectionContainer .accordionContent button.toggleAdvanced span {
    display: none; }

#DMZ-Settings #dmzStatus {
  position: absolute;
  top: 40px;
  left: 40px; }
  #DMZ-Settings #dmzStatus label {
    padding-right: 15px;
    font-size: 16px;
    line-height: 1.6875em;
    font-weight: bold;
    display: inline-block; }

#DMZ-Settings #deviceListsContainer {
  position: absolute;
  left: 240px;
  margin: 0 auto;
  width: 658px; }
  #DMZ-Settings #deviceListsContainer.supportsDMZ .devicesColumn {
    height: 400px; }
  #DMZ-Settings #deviceListsContainer.supportsDMZ #allDevices .deviceList {
    height: 168px; }
  #DMZ-Settings #deviceListsContainer.supportsDMZ #allDevices #addManually {
    height: 178px; }
  #DMZ-Settings #deviceListsContainer .devicesColumn {
    width: 325px;
    height: 484px; }
    #DMZ-Settings #deviceListsContainer .devicesColumn:first-child {
      margin-right: 5px; }
  #DMZ-Settings #deviceListsContainer .deviceList {
    width: 100%;
    overflow: auto; }
    #DMZ-Settings #deviceListsContainer .deviceList .deviceListInnerContainer {
      display: block; }
    #DMZ-Settings #deviceListsContainer .deviceList .device {
      cursor: pointer;
      padding: 6px 0 5px 15px;
      height: 70px;
      display: block; }
      #DMZ-Settings #deviceListsContainer .deviceList .device > div {
        display: inline-block;
        vertical-align: middle; }
      #DMZ-Settings #deviceListsContainer .deviceList .device .deviceName {
        font-weight: bold; }
      #DMZ-Settings #deviceListsContainer .deviceList .device .deviceInfo {
        margin: 4px 0 0 12px;
        width: 176px; }
        #DMZ-Settings #deviceListsContainer .deviceList .device .deviceInfo ul li {
          font-weight: bold; }
        #DMZ-Settings #deviceListsContainer .deviceList .device .deviceInfo li.deviceName {
          white-space: pre; }
      #DMZ-Settings #deviceListsContainer .deviceList .device.selected .transferArrow {
        background: transparent url("../../images/bell/ui/sml-WhiteCheckmark.png") no-repeat center; }
      #DMZ-Settings #deviceListsContainer .deviceList .device .transferArrow {
        width: 39px;
        height: 59px;
        background: transparent url("../../images/bell/ui/transferArrow.png") no-repeat center;
        cursor: pointer; }
      #DMZ-Settings #deviceListsContainer .deviceList .device .removeXButton {
        width: 45px;
        height: 59px;
        background: transparent url("../../images/bell/ui/removeXButton.png") no-repeat center;
        cursor: pointer; }
  #DMZ-Settings #deviceListsContainer #allDevices {
    background-color: #00549a;
    color: #fff; }
    #DMZ-Settings #deviceListsContainer #allDevices #listHeader {
      border-bottom: 1px solid #4680b0;
      padding: 15px 17px 15px; }
      #DMZ-Settings #deviceListsContainer #allDevices #listHeader h2 {
        padding-bottom: 0px; }
    #DMZ-Settings #deviceListsContainer #allDevices .deviceList {
      height: 267px; }
      #DMZ-Settings #deviceListsContainer #allDevices .deviceList .device {
        cursor: pointer;
        border-bottom: 1px solid #4680b0; }
        #DMZ-Settings #deviceListsContainer #allDevices .deviceList .device.selected {
          background-color: #3377ae; }
    #DMZ-Settings #deviceListsContainer #allDevices .deviceIcon {
      background-color: #fff;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      border-radius: 50%; }
    #DMZ-Settings #deviceListsContainer #allDevices #addManually {
      height: 162px;
      padding: 10px;
      background-color: #013778; }
      #DMZ-Settings #deviceListsContainer #allDevices #addManually.showMacSection #ipAddressSection {
        display: none; }
      #DMZ-Settings #deviceListsContainer #allDevices #addManually.showMacSection #macAddressSection {
        display: block; }
      #DMZ-Settings #deviceListsContainer #allDevices #addManually #macAddressSection {
        display: none; }
      #DMZ-Settings #deviceListsContainer #allDevices #addManually p {
        font-size: 16px; }
      #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice {
        margin: 0 auto;
        width: 275px; }
        #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice label {
          line-height: 2.0em;
          display: block; }
        #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice input.ipSegment {
          padding: 10px;
          width: 52px; }
        #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice input.ipSegment + .ipSeparator {
          line-height: 1.5em; }
        #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice .caption {
          padding-top: 8px;
          line-height: 1.0em;
          color: #cccccc; }
        #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice button {
          margin-top: 8px;
          width: 270px; }
        .brand-virgin #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice button {
          color: #003071;
          background: #fff;
          border: 1px solid #c1c1c1; }
          .brand-virgin #DMZ-Settings #deviceListsContainer #allDevices #addManually #addDevice button :disabled {
            color: #fff !important;
            background: #C8C8C8 !important;
            border: #C8C8C8 !important; }
  #DMZ-Settings #deviceListsContainer #dmzDeviceColumn {
    position: relative;
    background-color: #e1e1e1; }
    #DMZ-Settings #deviceListsContainer #dmzDeviceColumn #activeDeviceHeader {
      border-bottom: 1px solid #f0f0f0;
      padding: 15px 17px 15px; }
      #DMZ-Settings #deviceListsContainer #dmzDeviceColumn #activeDeviceHeader h2 {
        padding-bottom: 0px; }
      #DMZ-Settings #deviceListsContainer #dmzDeviceColumn #activeDeviceHeader p {
        margin: 10px 0px; }
  #DMZ-Settings #deviceListsContainer #dmzDevice {
    margin-top: 15px;
    width: 325px; }
    #DMZ-Settings #deviceListsContainer #dmzDevice .deviceList {
      width: 100%;
      height: 70px; }
      #DMZ-Settings #deviceListsContainer #dmzDevice .deviceList .device {
        cursor: pointer; }
        #DMZ-Settings #deviceListsContainer #dmzDevice .deviceList .device .emptyDevice {
          background-image: url("../../images/bell/icons/icon-empty-blue.png"); }

#DMZ-Settings #enableAdvancedDMZSection {
  margin-top: 15px; }
  #DMZ-Settings #enableAdvancedDMZSection #enableAdvancedDMZLabel {
    font-size: 16px;
    margin-bottom: 5px; }

.brand-virgin #DMZ-Settings #enableAdvancedDMZSection {
  margin-top: 10px; }

#DNSSettings-View {
  /* TABLE COLUMN WIDTHS */ }
  #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm {
    position: relative;
    border-bottom: 1px solid #e1e1e1;
    padding-bottom: 15px; }
    #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm .formBlock label:first-child {
      line-height: 40px; }
    #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm #featureFilterControl {
      /*border-bottom: 1px solid $bell-light-grey;*/ }
    #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm #features.formBlock {
      padding: 10px 0;
      border-top: 1px solid #e1e1e1;
      display: none; }
      #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm #features.formBlock label {
        width: 133px;
        height: 30px;
        font-size: 12px; }
    #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm input[type="radio"]:not(old) + label, #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm input[type="checkbox"]:not(old) + label {
      margin-right: 60px; }
    #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm:before, #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm:after {
      content: '';
      position: absolute;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 15px 15px 0 15px;
      display: none; }
    #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm:before {
      bottom: -15px;
      border-color: #e1e1e1 transparent transparent transparent; }
    #DNSSettings-View #dnsSettingsPageContainer #dnsAssignmentSelectionForm:after {
      bottom: -14px;
      border-color: #fff transparent transparent transparent; }
  #DNSSettings-View #dnsSettingsPageContainer.auto #dnsAssignmentSelectionForm:before,
  #DNSSettings-View #dnsSettingsPageContainer.auto #dnsAssignmentSelectionForm:after {
    left: 125px;
    display: block; }
  #DNSSettings-View #dnsSettingsPageContainer.manual #dnsAssignmentSelectionForm:before,
  #DNSSettings-View #dnsSettingsPageContainer.manual #dnsAssignmentSelectionForm:after {
    left: 445px;
    display: block; }
  #DNSSettings-View #dnsSettingsPageContainer .radioPage {
    margin-top: 20px;
    display: none; }
  #DNSSettings-View #dnsSettingsPageContainer.auto #automaticDNSDisplay {
    display: block; }
  #DNSSettings-View #dnsSettingsPageContainer.manual #manualDNSDisplay {
    display: block; }
  #DNSSettings-View * + p {
    margin-top: 10px; }
  #DNSSettings-View * + form,
  #DNSSettings-View * + .formBlock {
    margin-top: 8px; }
  #DNSSettings-View #automaticDNSDisplay #autoDNSInfo {
    margin: 100px auto 0;
    padding: 30px 0;
    width: 250px;
    text-align: center;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: block; }
    #DNSSettings-View #automaticDNSDisplay #autoDNSInfo label {
      line-height: 1.0em; }
  #DNSSettings-View #manualDNSDisplay #manualContentContainer {
    margin: 50px auto;
    width: 900px; }
    #DNSSettings-View #manualDNSDisplay #manualContentContainer #manualDNSFormContainer {
      margin-left: auto;
      margin-right: auto;
      width: 450px; }
      #DNSSettings-View #manualDNSDisplay #manualContentContainer #manualDNSFormContainer #manualDNSForm label {
        width: 150px; }
      #DNSSettings-View #manualDNSDisplay #manualContentContainer #manualDNSFormContainer #manualDNSForm #hostName {
        width: 221px; }
      #DNSSettings-View #manualDNSDisplay #manualContentContainer #manualDNSFormContainer #manualDNSForm .buttonContainer {
        padding-top: 20px;
        padding-left: 130px; }
    #DNSSettings-View #manualDNSDisplay #manualContentContainer.editing #manualDNSFormContainer #changeDNSInfoButton {
      display: none; }
  #DNSSettings-View .oldIEWrapper {
    height: 341px; }
    #DNSSettings-View .oldIEWrapper table {
      width: 1065px; }
  #DNSSettings-View #systemLogTable {
    /*
		.colDateTime { width: ( 244 / $table-design-width )  * 100%; }
		.colLevel { width: ( 150 / $table-design-width )  * 100%; }
		.colModule { width: ( 150 / $table-design-width )  * 100%; }
		.colMessage { width: ( 460 / $table-design-width )  * 100%; }*/
    /*display: none;*/ }
    #DNSSettings-View #systemLogTable .colDateTime {
      width: 259px; }
    #DNSSettings-View #systemLogTable .colLevel {
      width: 158px; }
    #DNSSettings-View #systemLogTable .colModule {
      width: 158px; }
    #DNSSettings-View #systemLogTable thead .colMessage {
      width: 490px; }
    #DNSSettings-View #systemLogTable tbody {
      height: 296px; }
      #DNSSettings-View #systemLogTable tbody tr {
        height: 37px; }

#EthernetViewContainer form #ethernet-form-content {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -121px;
  margin-left: -257px;
  width: 514px;
  height: 242px; }
  #EthernetViewContainer form #ethernet-form-content.ten-g {
    margin-left: -321px;
    width: 642px; }

#EthernetViewContainer form #ethernet-blocks {
  border-left: 2px solid #F7F7F7; }

#EthernetViewContainer form .ethernet-lan {
  display: inline-block;
  padding-left: 20px;
  padding-right: 20px;
  border-right: 2px solid #F7F7F7; }

#MACFiltering-Settings #macFilteringStatus {
  position: absolute;
  top: 40px;
  left: 40px; }
  #MACFiltering-Settings #macFilteringStatus label {
    padding-right: 15px;
    font-size: 16px;
    line-height: 1.6875em;
    font-weight: bold;
    display: inline-block; }

.brand-virgin .lang-fr #MACFiltering-Settings .pageInstructions {
  width: 500px;
  margin-top: -55px;
  margin-left: 330px; }

#MACFiltering-Settings .pageInstructions {
  margin-top: -45px;
  margin-left: 250px; }

#MACFiltering-Settings #deviceListsContainer {
  width: 677px;
  margin: 0 auto; }
  #MACFiltering-Settings #deviceListsContainer .devicesColumn {
    width: 336px;
    height: 467px; }
    #MACFiltering-Settings #deviceListsContainer .devicesColumn h3 {
      padding: 0 15px;
      line-height: 45px; }
    #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList {
      width: 100%;
      overflow: auto; }
      #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList .deviceListInnerContainer {
        display: block; }
      #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList .device {
        cursor: pointer;
        padding: 6px 0 5px 15px;
        height: 70px;
        display: block; }
        #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList .device > div {
          display: inline-block;
          vertical-align: middle; }
        #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList .device .deviceName {
          font-weight: bold;
          white-space: pre; }
        #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList .device .deviceInfo {
          margin: 4px 0 0 12px;
          width: 177px; }
        #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList .device .transferArrow {
          width: 39px;
          height: 59px;
          background: transparent url("../../images/bell/ui/transferArrow.png") no-repeat center;
          cursor: pointer; }
        #MACFiltering-Settings #deviceListsContainer .devicesColumn .deviceList .device .removeXButton {
          width: 45px;
          height: 59px;
          background: transparent url("../../images/bell/ui/removeXButton.png") no-repeat center;
          cursor: pointer; }
  #MACFiltering-Settings #deviceListsContainer #allDevices {
    background-color: #00549a;
    color: #fff;
    margin-right: 5px; }
    #MACFiltering-Settings #deviceListsContainer #allDevices h3 {
      border-bottom: 1px solid #4680b0; }
    #MACFiltering-Settings #deviceListsContainer #allDevices .deviceList {
      height: 235px; }
      #MACFiltering-Settings #deviceListsContainer #allDevices .deviceList .device {
        cursor: pointer;
        border-bottom: 1px solid #4680b0; }
    #MACFiltering-Settings #deviceListsContainer #allDevices .deviceIcon {
      background-color: #fff;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      border-radius: 50%; }
    #MACFiltering-Settings #deviceListsContainer #allDevices #addManually {
      height: 186px;
      padding: 10px;
      background-color: #013778; }
      #MACFiltering-Settings #deviceListsContainer #allDevices #addManually p {
        font-size: 16px; }
      #MACFiltering-Settings #deviceListsContainer #allDevices #addManually #addDevice {
        margin: 0 auto;
        width: 275px; }
        #MACFiltering-Settings #deviceListsContainer #allDevices #addManually #addDevice label {
          line-height: 2.0em;
          display: block; }
        #MACFiltering-Settings #deviceListsContainer #allDevices #addManually #addDevice button {
          margin-top: 10px;
          width: 270px; }
        .brand-virgin #MACFiltering-Settings #deviceListsContainer #allDevices #addManually #addDevice button {
          color: #003071;
          background: #fff;
          border: 1px solid #c1c1c1; }
          .brand-virgin #MACFiltering-Settings #deviceListsContainer #allDevices #addManually #addDevice button :disabled {
            color: #fff !important;
            background: #C8C8C8 !important;
            border: #C8C8C8 !important; }
  #MACFiltering-Settings #deviceListsContainer #allowedDevices {
    background-color: #e1e1e1; }
    #MACFiltering-Settings #deviceListsContainer #allowedDevices h3 {
      border-bottom: 1px solid #efefef; }
    #MACFiltering-Settings #deviceListsContainer #allowedDevices .deviceList {
      height: 420px; }
      #MACFiltering-Settings #deviceListsContainer #allowedDevices .deviceList .device {
        cursor: pointer;
        border-bottom: 1px solid #efefef; }

#MACFiltering-Settings #hideDevice {
  display: none; }

.modalPage #wirelessSettingsContainer {
  width: 93.52113%; }
  .modalPage #wirelessSettingsContainer .modalTile {
    width: 25%; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(1):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(1):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 1065px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(1):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(1):first-child ~ *:nth-child(1) {
    left: 0px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(2):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 532.5px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(2):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(2):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ *:nth-child(2) {
    left: 532.5px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 355px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(2) {
    left: 355px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(3) {
    left: 710px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 266.25px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(2) {
    left: 266.25px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(3) {
    left: 532.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(4),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(4) {
    left: 798.75px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 213px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(2) {
    left: 213px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(3) {
    left: 426px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(4),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(4) {
    left: 639px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(5),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(5) {
    left: 852px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 177.5px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(2) {
    left: 177.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(3) {
    left: 355px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(4),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(4) {
    left: 532.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(5),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(5) {
    left: 710px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(6),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(6) {
    left: 887.5px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 152.14286px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(2) {
    left: 152.14286px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(3) {
    left: 304.28571px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(4),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(4) {
    left: 456.42857px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(5),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(5) {
    left: 608.57143px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(6),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(6) {
    left: 760.71429px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(7),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(7) {
    left: 912.85714px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 133.125px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(2) {
    left: 133.125px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(3) {
    left: 266.25px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(4),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(4) {
    left: 399.375px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(5),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(5) {
    left: 532.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(6),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(6) {
    left: 665.625px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(7),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(7) {
    left: 798.75px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(8),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(8) {
    left: 931.875px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 118.33333px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(2) {
    left: 118.33333px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(3) {
    left: 236.66667px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(4),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(4) {
    left: 355px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(5),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(5) {
    left: 473.33333px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(6),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(6) {
    left: 591.66667px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(7),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(7) {
    left: 710px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(8),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(8) {
    left: 828.33333px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(9),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(9) {
    left: 946.66667px; }

.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child,
.modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ * {
  /*width: (100 / $numOfTabs) * 1%;*/
  width: 106.5px;
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/
  /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(1),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(1) {
    left: 0px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(2),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(2) {
    left: 106.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(3),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(3) {
    left: 213px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(4),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(4) {
    left: 319.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(5),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(5) {
    left: 426px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(6),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(6) {
    left: 532.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(7),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(7) {
    left: 639px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(8),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(8) {
    left: 745.5px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(9),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(9) {
    left: 852px; }
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(10),
  .modalPage #WPS-Settings .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(10) {
    left: 958.5px; }

.modalPage #WPS-Settings .wpsText {
  width: auto;
  margin-left: 10px; }

.modalPage #WPS-Settings .wpsSettingsMessage {
  text-align: center;
  margin-top: 10px;
  font-weight: bold; }

.modalPage #WPS-Settings div.pinForm, .modalPage #WPS-Settings div.wpsButtonForm, .modalPage #WPS-Settings div#requiredResourceDisabled label, .modalPage #WPS-Settings div#requiredResourceDisabled {
  display: none; }

.modalPage #WPS-Settings div#requiredResourceDisabled {
  border-bottom: 1px solid #e1e1e1;
  border-top: 1px solid #e1e1e1;
  padding: 10px; }
  .modalPage #WPS-Settings div#requiredResourceDisabled label.wps-error-label {
    line-height: 1.875em; }
  .modalPage #WPS-Settings div#requiredResourceDisabled > div label {
    color: #bd2025; }

.modalPage #WPS-Settings div.wpsButtonForm #timer {
  background: url("../../images/bell/WPS_countdown_timer.png") no-repeat center center;
  height: 228px;
  width: 191px;
  margin: 0 auto;
  cursor: pointer; }
  .modalPage #WPS-Settings div.wpsButtonForm #timer canvas {
    margin-left: -1px;
    margin-top: -6px; }
  .modalPage #WPS-Settings div.wpsButtonForm #timer div {
    font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
    font-size: 45px;
    font-weight: normal;
    margin-top: -100px;
    padding-left: 15px;
    text-align: center;
    width: 180px;
    color: #686868; }

.modalPage #WPS-Settings div.wpsButtonForm .wpsButtonInformativeText {
  text-align: center;
  margin-top: -15px; }
  .modalPage #WPS-Settings div.wpsButtonForm .wpsButtonInformativeText label {
    font-weight: normal;
    line-height: 1.5em;
    margin-top: 20px; }

.modalPage #WPS-Settings .colContentContainer.formCenter[mode="PushButton"] div.wpsButtonForm {
  display: block; }

.modalPage #WPS-Settings .colContentContainer.formCenter[mode="PIN"] div.pinForm {
  display: block; }

.modalPage #WPS-Settings .colContentContainer .pinFormInput {
  width: 200px; }

.modalPage #WPS-Settings .colContentContainer.formCenter {
  width: 360px; }
  .modalPage #WPS-Settings .colContentContainer.formCenter button {
    margin-left: 15px;
    margin-top: 7px;
    width: 142px; }
  .brand-virgin .modalPage #WPS-Settings .colContentContainer.formCenter button {
    margin-left: 10px;
    width: 148px; }

.modalPage #guestWirelessSettings .modalHeader > p {
  z-index: 1;
  position: relative; }

#Notifications-View .messages-modal-inner-wrap {
  height: 350px;
  overflow-y: auto;
  margin-top: -30px; }

#Notifications-View .message-wrap {
  padding: 25px 0;
  border-top: solid 1px #cccccc;
  margin-right: 10px; }

#Notifications-View .message-wrap:first-child {
  border-top: none; }

#Notifications-View .message-heading {
  font-size: 1.3em;
  font-weight: bold;
  color: black;
  margin-bottom: 5px; }

#Notifications-View .message-date {
  font-size: 1em;
  color: #c1c1c1;
  margin-bottom: 5px; }

#Notifications-View .message-exerpt {
  font-size: 1em;
  color: #4a4a4a;
  margin-bottom: 15px; }

#Notifications-View .message-details-link-wrap {
  height: 20px;
  line-height: 20px;
  font-size: 1em;
  color: #00549a;
  cursor: pointer; }
  #Notifications-View .message-details-link-wrap .icon-arrow {
    background: url("../../images/bell/ui/blue-outline-arrow-circle-right.png") no-repeat;
    width: 20px;
    height: 20px;
    display: inline-block;
    margin-bottom: -5px; }

#networkMap {
  margin-top: -30px; }
  #networkMap .modalHeader {
    width: 800px; }
  #networkMap #pod-legend {
    background: url("../../images/bell/icons/icon-plume-sml.png") no-repeat left center;
    padding-left: 32px; }
  #networkMap #disconnectedDevicesButton button#forgetDevices {
    margin-right: 15px; }
  #networkMap #currentDevicesType {
    position: relative;
    margin-right: 10px;
    float: left;
    width: 76px;
    height: 76px;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center; }
    #networkMap #currentDevicesType .numDevices {
      position: absolute;
      bottom: 8px;
      width: 100%;
      text-align: center;
      font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
      font-size: 17.6px;
      color: #fff;
      display: block; }
  #networkMap #hideDevices {
    display: none; }
  #networkMap h2 {
    line-height: 76px; }
    #networkMap h2 span {
      display: none; }

.tableDivContainer.empty .emptyTable {
  display: block; }

.primaryWireless #currentDevicesType, .guestWireless #currentDevicesType {
  background-image: url("../../images/bell/icons/icon-wirelessDevices_title.png"); }

.primaryWireless .modalHeader h2 .primaryWireless {
  display: inline !important; }

.guestWireless .modalHeader h2 .guestWireless {
  display: inline !important; }

.USB #currentDevicesType {
  background-image: url("../../images/bell/icons/icon-USB_title.png"); }

.USB .modalHeader h2 .USB {
  display: inline !important; }

.fibeTV #currentDevicesType {
  background-image: url("../../images/bell/icons/icon-fibeTV_title.png"); }
  .fibeTV #currentDevicesType .numDevices {
    display: none; }

.fibeTV .modalHeader h2 .fibeTV {
  display: inline !important; }

.ethernet #currentDevicesType {
  background-image: url("../../images/bell/icons/icon-ethernet_title.png"); }

.ethernet .modalHeader h2 .ethernet {
  display: inline !important; }

#deviceTableContainer {
  height: 472px; }

table {
  width: 100%;
  display: table; }

.deviceTable {
  font-size: 12.8px;
  color: #686868;
  text-align: left;
  width: 798px; }
  .deviceTable thead {
    background-color: #d8d8d8;
    display: block;
    width: 100%; }
    .deviceTable thead tr {
      display: table;
      table-layout: fixed; }
    .deviceTable thead th {
      height: 25px;
      padding: 5px 10px;
      border: 1px solid #d8d8d8; }
      .deviceTable thead th .displayControl {
        position: absolute;
        bottom: 77%;
        margin-left: -448px;
        width: 100px;
        height: 25px;
        color: #fff;
        font-weight: normal;
        font-size: 12px;
        text-align: center;
        white-space: nowrap;
        background-color: #c1c1c1;
        cursor: pointer; }
        .deviceTable thead th .displayControl span {
          display: inline-block;
          vertical-align: middle; }
        .deviceTable thead th .displayControl .toggleIcon {
          margin-right: 2px;
          width: 16px;
          height: 24px;
          background-repeat: no-repeat;
          background-position: center; }
        .deviceTable thead th .displayControl.showCols {
          left: 100%;
          display: none; }
          .deviceTable thead th .displayControl.showCols .toggleIcon {
            background-image: url("../../images/bell/ui/icon-showCols.png"); }
          .deviceTable thead th .displayControl.showCols:before {
            content: '';
            position: absolute;
            top: 25px;
            left: 50%;
            margin-left: -6px;
            width: 12px;
            height: 27px;
            background-color: #c1c1c1; }
          .deviceTable thead th .displayControl.showCols:after {
            content: '';
            position: absolute;
            top: 52px;
            left: 50%;
            margin-left: -6px;
            width: 0;
            height: 0;
            border-style: solid;
            border-color: #c1c1c1 transparent transparent transparent;
            border-width: 8px 6px 0 6px; }
        .deviceTable thead th .displayControl.hideCols {
          left: 85%;
          display: none; }
          .deviceTable thead th .displayControl.hideCols .toggleIcon {
            background-image: url("../../images/bell/ui/icon-hideCols.png"); }
          .deviceTable thead th .displayControl.hideCols.singleCol {
            left: 50%; }
    .deviceTable thead .sortIcon {
      width: 8px;
      height: 16px;
      float: right;
      background-repeat: no-repeat;
      background-position: center;
      background-image: url("../../images/bell/ui/DropdownArrows.png");
      background-image: url("../../images/bell/ui/DropdownArrows.svg");
      cursor: pointer; }
  .deviceTable.basic thead th .showCols {
    display: block; }
  .deviceTable.advanced thead th .hideCols {
    display: block; }
  .deviceTable tbody {
    display: block;
    height: 444px;
    width: 100%;
    overflow: auto; }
    .deviceTable tbody tr {
      background-color: #fff;
      height: 74px;
      display: table;
      table-layout: fixed; }
      .deviceTable tbody tr[status="LOCKED"], .deviceTable tbody tr[status="LOCKED_ALWAYS"] {
        background-color: #f4f4f4; }
      .deviceTable tbody tr:hover {
        background-color: #C8DCEC; }
      .deviceTable tbody tr[status="DISCONNECTED"] .ejectIcon {
        cursor: default;
        background-image: url("../../images/bell/icons/icon-Eject_disabled.png"); }
    .deviceTable tbody td {
      display: table-cell;
      padding: 8px 5px 8px 8px;
      border-bottom: 1px solid #e1e1e1; }
    .deviceTable tbody td:not(:last-child) {
      border-right: 1px solid #e1e1e1; }
    .deviceTable tbody td .wifiStrength {
      margin-right: 10px;
      float: right;
      margin-top: -20px; }
    .deviceTable tbody .editSettingsIcon {
      margin: 0 auto;
      width: 31px;
      height: 30px;
      cursor: pointer;
      background-repeat: no-repeat;
      background-position: center;
      background-image: url("../../images/bell/icons/icon-Edit.png");
      background-image: url("../../images/bell/icons/icon-Edit.svg"); }
    .deviceTable tbody .ejectIcon {
      margin: 0 auto;
      width: 24px;
      height: 24px;
      cursor: pointer;
      background-repeat: no-repeat;
      background-position: center;
      background-image: url("../../images/bell/icons/icon-Eject.png");
      background-image: url("../../images/bell/icons/icon-Eject.svg"); }
  .deviceTable tr {
    width: 100%; }
  .deviceTable span {
    display: inline-block; }
  .deviceTable .deviceTypeAndStatus {
    position: relative;
    margin-right: 10px;
    float: left; }
  .deviceTable tr[status="LOCKED"] .deviceTypeAndStatus:after,
  .deviceTable tr[status="LOCKED_ALWAYS"] .deviceTypeAndStatus:after {
    content: "";
    position: absolute;
    top: 0;
    right: -5px;
    width: 25px;
    height: 23px;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("../../images/bell/icons/icon-sml-Lock.png");
    background-image: url("../../images/bell/icons/icon-sml-Lock.svg");
    display: block; }
  .deviceTable .deviceName {
    line-height: 57px;
    font-weight: bold; }

tr[status="DISCONNECTED"] td:not(.colParentalControls) {
  color: #cccccc; }

tr[status="DISCONNECTED"] .parentalControlsMsgContainer .parentalControlsMsg, tr[status="DISCONNECTED"] .parentalControlsMsgContainer .controlStatus {
  line-height: 24px;
  display: inline-block;
  float: left; }

tr[status="DISCONNECTED"] .parentalControlsMsgContainer .forget {
  margin-left: 10px;
  -webkit-border-radius: 11px;
  -moz-border-radius: 11px;
  -ms-border-radius: 11px;
  border-radius: 11px;
  padding: 2px 20px;
  height: 24px;
  font-size: 12.8px;
  cursor: pointer;
  background-color: #00549a;
  border: 2px solid #4680b0;
  color: #fff;
  display: inline-block;
  float: left; }

.oldIEWrapper {
  height: 472px;
  overflow: auto; }
  .oldIEWrapper .deviceTable {
    width: 780px; }
    .oldIEWrapper .deviceTable tbody {
      height: auto; }

/* TABLE COLUMN WIDTHS */
#deviceTable-guestWireless,
#deviceTable-primaryWireless {
  display: none; }
  #deviceTable-guestWireless table thead .colNetwork,
  #deviceTable-primaryWireless table thead .colNetwork {
    background-color: #c1c1c1; }
  #deviceTable-guestWireless table thead .colAddress,
  #deviceTable-primaryWireless table thead .colAddress {
    background-color: #c1c1c1; }
  #deviceTable-guestWireless table thead .colSettings,
  #deviceTable-primaryWireless table thead .colSettings {
    width: 90px; }
  #deviceTable-guestWireless table .colNetwork,
  #deviceTable-primaryWireless table .colNetwork {
    width: 99px; }
  #deviceTable-guestWireless table .colAddress,
  #deviceTable-primaryWireless table .colAddress {
    width: 170px; }
  #deviceTable-guestWireless table .colDeviceName,
  #deviceTable-primaryWireless table .colDeviceName {
    width: 216px; }
    #deviceTable-guestWireless table .colDeviceName .deviceName,
    #deviceTable-primaryWireless table .colDeviceName .deviceName {
      white-space: nowrap; }
  #deviceTable-guestWireless table.basic .colNetwork, #deviceTable-guestWireless table.basic .colAddress,
  #deviceTable-primaryWireless table.basic .colNetwork,
  #deviceTable-primaryWireless table.basic .colAddress {
    display: none; }
  #deviceTable-guestWireless table.basic .colParentalControls,
  #deviceTable-primaryWireless table.basic .colParentalControls {
    width: 491.5px; }
  #deviceTable-guestWireless table.advanced .colParentalControls,
  #deviceTable-primaryWireless table.advanced .colParentalControls {
    width: 170px; }
  #deviceTable-guestWireless table.advanced .colAddress,
  #deviceTable-primaryWireless table.advanced .colAddress {
    width: 222px; }

div.primaryWireless #deviceTable-primaryWireless {
  display: block; }
  div.primaryWireless #deviceTable-primaryWireless table {
    display: table; }

#deviceTableContainer .deviceTable tbody {
  height: 400px; }

div.guestWireless #deviceTable-guestWireless {
  display: block; }
  div.guestWireless #deviceTable-guestWireless table {
    display: table; }

#deviceTable-ethernet {
  display: none; }
  #deviceTable-ethernet table thead .colAddress {
    background-color: #c1c1c1; }
  #deviceTable-ethernet table thead .colSettings {
    width: 90px; }
  #deviceTable-ethernet table .colAddress {
    width: 170px; }
  #deviceTable-ethernet table .colDeviceName {
    width: 266px; }
    #deviceTable-ethernet table .colDeviceName .deviceName {
      width: 180px;
      white-space: nowrap; }
  #deviceTable-ethernet table.basic .colNetwork, #deviceTable-ethernet table.basic .colAddress {
    display: none; }
  #deviceTable-ethernet table.basic .colParentalControls {
    width: 441px; }
  #deviceTable-ethernet table.advanced .colParentalControls {
    width: 271px; }

div.ethernet #deviceTable-ethernet {
  display: table; }

#deviceTable-USB {
  display: none; }
  #deviceTable-USB .colDeviceName {
    width: 450px; }
  #deviceTable-USB .colPort {
    width: 86px; }
  #deviceTable-USB .colType {
    width: 86px; }
  #deviceTable-USB .colPort, #deviceTable-USB .colType, #deviceTable-USB .colEject, #deviceTable-USB .colSettings {
    text-align: center; }
  #deviceTable-USB .colEject div {
    display: inline-block; }
    #deviceTable-USB .colEject div.ejectIcon {
      margin-right: 10px; }

div.USB #deviceTable-USB {
  display: table; }

#deviceTable-fibeTV {
  display: none; }
  #deviceTable-fibeTV table thead .colNetwork {
    background-color: #c1c1c1; }
  #deviceTable-fibeTV table thead .colAddress {
    background-color: #c1c1c1; }
  #deviceTable-fibeTV table .wifiStrength {
    margin-top: 50px; }
  #deviceTable-fibeTV table .colNetwork {
    width: 155px; }
  #deviceTable-fibeTV table .colAddress {
    width: 170px; }
  #deviceTable-fibeTV table.basic .colNetwork, #deviceTable-fibeTV table.basic .colAddress {
    display: none; }
  #deviceTable-fibeTV table.basic .colDeviceName {
    width: 708.75px; }
    #deviceTable-fibeTV table.basic .colDeviceName .deviceName {
      width: 61.881188118811881188118811881188%; }
  #deviceTable-fibeTV table.advanced .colDeviceName {
    width: 375px; }
    #deviceTable-fibeTV table.advanced .colDeviceName .deviceName {
      width: 61.881188118811881188118811881188%; }

div.fibeTV #deviceTable-fibeTV {
  display: table; }

#primaryWirelessCircle.mapItemCircle {
  background-image: url("../../images/bell/icons/icon-wireless-map-sml.png");
  /*background-image: url('../../images/bell/icons/icon-wireless-map-sml.svg');*/ }
  #primaryWirelessCircle.mapItemCircle.current, #primaryWirelessCircle.mapItemCircle:hover {
    background-image: url("../../images/bell/icons/icon-wireless-map-lrg.png");
    /*background-image: url('../../images/bell/icons/icon-wireless-map-lrg.svg');*/ }
  #primaryWirelessCircle.mapItemCircle[numDevices="0"] {
    background-image: url("../../images/bell/icons/icon-wireless-map-sml_fade.png");
    /*background-image: url('../../images/bell/icons/icon-wireless-map-sml_fade.svg');*/ }

#guestWirelessCircle.mapItemCircle {
  background-image: url("../../images/bell/icons/icon-wireless-map-sml.png");
  /*background-image: url('../../images/bell/icons/icon-wireless-map-sml.svg');*/ }
  #guestWirelessCircle.mapItemCircle.current, #guestWirelessCircle.mapItemCircle:hover {
    background-image: url("../../images/bell/icons/icon-wireless-map-lrg.png");
    /*background-image: url('../../images/bell/icons/icon-wireless-map-lrg.svg');*/ }
  #guestWirelessCircle.mapItemCircle[numDevices="0"] {
    background-image: url("../../images/bell/icons/icon-wireless-map-sml_fade.png");
    /*background-image: url('../../images/bell/icons/icon-wireless-map-sml_fade.svg');*/ }

#fibeTVCircle.mapItemCircle {
  background-image: url("../../images/bell/icons/icon-fibeTV-map-sml.png");
  /*background-image: url('../../images/bell/icons/icon-fibeTV-map-sml.svg');*/ }
  #fibeTVCircle.mapItemCircle.current, #fibeTVCircle.mapItemCircle:hover {
    background-image: url("../../images/bell/icons/icon-fibeTV-map-lrg.png");
    /*background-image: url('../../images/bell/icons/icon-fibeTV-map-lrg.svg');*/ }
  #fibeTVCircle.mapItemCircle[numDevices="0"] {
    background-image: url("../../images/bell/icons/icon-fibeTV-map-sml_fade.png");
    /*background-image: url('../../images/bell/icons/icon-fibeTV-map-sml_fade.svg');*/ }

#usbCircle.mapItemCircle {
  background-image: url("../../images/bell/icons/icon-usb-map-sml.png");
  /*background-image: url('../../images/bell/icons/icon-usb-map-sml.svg');*/ }
  #usbCircle.mapItemCircle.current, #usbCircle.mapItemCircle:hover {
    background-image: url("../../images/bell/icons/icon-usb-map-lrg.png");
    /*background-image: url('../../images/bell/icons/icon-usb-map-lrg.svg');*/ }
  #usbCircle.mapItemCircle[numDevices="0"] {
    background-image: url("../../images/bell/icons/icon-usb-map-sml_fade.png");
    /*background-image: url('../../images/bell/icons/icon-usb-map-sml_fade.svg');*/ }

#ethernetCircle.mapItemCircle {
  background-image: url("../../images/bell/icons/icon-ethernet-map-sml.png");
  /*background-image: url('../../images/bell/icons/icon-ethernet-map-sml.svg');*/ }
  #ethernetCircle.mapItemCircle.current, #ethernetCircle.mapItemCircle:hover {
    background-image: url("../../images/bell/icons/icon-ethernet-map-lrg.png");
    /*background-image: url('../../images/bell/icons/icon-ethernet-map-lrg.svg');*/ }
  #ethernetCircle.mapItemCircle[numDevices="0"] {
    background-image: url("../../images/bell/icons/icon-ethernet-map-sml_fade.png");
    /*background-image: url('../../images/bell/icons/icon-ethernet-map-sml_fade.svg');*/ }

#networkMapOuterContainer {
  position: relative;
  height: 435px;
  width: 250px;
  float: left;
  /*background-image: url('../../images/bell/images/networkMapGuide.png');
		background-repeat: no-repeat;
		background-position: 0 0;*/ }
  #networkMapOuterContainer #mapInstructions {
    position: absolute;
    top: -30px;
    padding: 0 20px;
    width: 100%;
    text-align: center; }
  #networkMapOuterContainer #networkMapContainer {
    position: absolute;
    top: 120px;
    left: 100px;
    width: 140px;
    height: 280px; }
    #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] {
      width: 140px;
      height: 280px;
      -webkit-border-top-right-radius: 140px;
      -moz-border-radius-topright: 140px;
      border-top-right-radius: 140px;
      -webkit-border-bottom-right-radius: 140px;
      -moz-border-radius-bottomright: 140px;
      border-bottom-right-radius: 140px; }
      #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] > .mapItemCircle {
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        width: 87px;
        height: 87px;
        margin: -43.5px; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] > .mapItemCircle:nth-of-type(1) {
          transform: rotate(270deg) translate(140px) rotate(-270deg); }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] > .mapItemCircle:nth-of-type(2) {
          transform: rotate(315deg) translate(140px) rotate(-315deg); }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] > .mapItemCircle:nth-of-type(3) {
          transform: rotate(360deg) translate(140px) rotate(-360deg); }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] > .mapItemCircle:nth-of-type(4) {
          transform: rotate(405deg) translate(140px) rotate(-405deg); }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] > .mapItemCircle:nth-of-type(5) {
          transform: rotate(450deg) translate(140px) rotate(-450deg); }
      #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] #connectingLinesContainer .connectingLine {
        position: absolute;
        bottom: 50%;
        left: 0;
        width: 1px;
        height: 140px;
        border-left: 1px solid #b8b8b8; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] #connectingLinesContainer .connectingLine:nth-of-type(1) {
          transform: rotate(0deg);
          display: block; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] #connectingLinesContainer .connectingLine:nth-of-type(2) {
          transform: rotate(45deg);
          display: block; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] #connectingLinesContainer .connectingLine:nth-of-type(3) {
          transform: rotate(90deg);
          display: block; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] #connectingLinesContainer .connectingLine:nth-of-type(4) {
          transform: rotate(135deg);
          display: block; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="TRUE"] #connectingLinesContainer .connectingLine:nth-of-type(5) {
          transform: rotate(180deg);
          display: block; }
    #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] {
      width: 140px;
      height: 280px;
      -webkit-border-top-right-radius: 140px;
      -moz-border-radius-topright: 140px;
      border-top-right-radius: 140px;
      -webkit-border-bottom-right-radius: 140px;
      -moz-border-radius-bottomright: 140px;
      border-bottom-right-radius: 140px; }
      #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] > .mapItemCircle {
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        width: 87px;
        height: 87px;
        margin: -43.5px; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] > .mapItemCircle:nth-of-type(1) {
          transform: rotate(270deg) translate(140px) rotate(-270deg); }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] > .mapItemCircle:nth-of-type(2) {
          transform: rotate(330deg) translate(140px) rotate(-330deg); }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] > .mapItemCircle:nth-of-type(3) {
          transform: rotate(390deg) translate(140px) rotate(-390deg); }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] > .mapItemCircle:nth-of-type(4) {
          transform: rotate(450deg) translate(140px) rotate(-450deg); }
      #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] #connectingLinesContainer .connectingLine {
        position: absolute;
        bottom: 50%;
        left: 0;
        width: 1px;
        height: 140px;
        border-left: 1px solid #b8b8b8; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] #connectingLinesContainer .connectingLine:nth-of-type(1) {
          transform: rotate(0deg);
          display: block; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] #connectingLinesContainer .connectingLine:nth-of-type(2) {
          transform: rotate(60deg);
          display: block; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] #connectingLinesContainer .connectingLine:nth-of-type(3) {
          transform: rotate(120deg);
          display: block; }
        #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] #connectingLinesContainer .connectingLine:nth-of-type(4) {
          transform: rotate(180deg);
          display: block; }
    #networkMapOuterContainer #networkMapContainer #semiCircleMapBackground {
      position: absolute;
      top: 0;
      left: 0;
      height: 280px;
      width: 140px;
      -webkit-border-top-right-radius: 140px;
      -moz-border-radius-topright: 140px;
      border-top-right-radius: 140px;
      -webkit-border-bottom-right-radius: 140px;
      -moz-border-radius-bottomright: 140px;
      border-bottom-right-radius: 140px;
      background-color: #f1f1f1; }
    #networkMapOuterContainer #networkMapContainer #connectingLinesContainer {
      position: absolute;
      width: 140px;
      height: 280px; }
      #networkMapOuterContainer #networkMapContainer #connectingLinesContainer .connectingLine {
        display: none;
        -ms-transform-origin: left bottom;
        /* IE 9 */
        -webkit-transform-origin: left bottom;
        /* Chrome, Safari, Opera */
        transform-origin: left bottom; }
    #networkMapOuterContainer #networkMapContainer #modemCircle {
      position: absolute;
      top: 76px;
      left: -64px;
      width: 128px;
      height: 128px;
      border: 1px solid #00549a;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      border-radius: 50%;
      background: #fff no-repeat center; }
    #networkMapOuterContainer #networkMapContainer .mapItemCircle {
      background-repeat: no-repeat;
      background-position: center;
      color: #fff;
      cursor: pointer; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle.noIntText {
        background-position: center;
        background-size: auto; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle .numDevices {
        position: absolute;
        bottom: 18px;
        width: 100%;
        text-align: center;
        font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
        font-size: 14.4px;
        color: #fff; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle .devicesTypeLabel {
        position: absolute;
        width: 100%;
        text-align: center;
        color: #686868;
        word-spacing: 9999999px;
        font-size: 12.8px;
        display: block; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="primaryWireless"] .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="guestWireless"] .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="fibeTV"] .devicesTypeLabel {
        bottom: 75px; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="primaryWireless"].current:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="primaryWireless"]:hover:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="guestWireless"].current:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="guestWireless"]:hover:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="fibeTV"].current:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="fibeTV"]:hover:not([numDevices="0"]) .devicesTypeLabel {
        bottom: 87px; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="USB"] .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="ethernet"] .devicesTypeLabel {
        top: 78px; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="USB"].current:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="USB"]:hover:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="ethernet"].current:not([numDevices="0"]) .devicesTypeLabel, #networkMapOuterContainer #networkMapContainer .mapItemCircle[devicesType="ethernet"]:hover:not([numDevices="0"]) .devicesTypeLabel {
        top: 85px; }
      #networkMapOuterContainer #networkMapContainer .mapItemCircle.current:not([numDevices="0"]) .numDevices, #networkMapOuterContainer #networkMapContainer .mapItemCircle:hover:not([numDevices="0"]) .numDevices {
        bottom: 16px;
        font-size: 17.6px; }
    #networkMapOuterContainer #networkMapContainer[hasFibeTV="FALSE"] .mapItemCircle[devicesType="fibeTV"] {
      display: none; }

.gateway-type-ubig #networkMapOuterContainer #networkMapContainer #modemCircle {
  background-image: url("../../images/bell/modem_ubig-sml.png"); }

.gateway-type-hh4000 #networkMapOuterContainer #networkMapContainer #modemCircle, .gateway-type-giga-hub #networkMapOuterContainer #networkMapContainer #modemCircle {
  background-image: url("../../images/bell/HomeHub4K_front_sml.png"); }

.gateway-type-sbig #networkMapOuterContainer #networkMapContainer #modemCircle {
  background-image: url("../../images/bell/modem_sbig-sml.png"); }

.gateway-type-big #networkMapOuterContainer #networkMapContainer #modemCircle {
  background-image: url("../../images/bell/modem_big-sml.png"); }

/* IE Fixes */
.ua-ie-9 #deviceTable-primaryWireless .deviceTable thead th .displayControl,
.ua-ie-9 #deviceTable-guestWireless .deviceTable thead th .displayControl,
.ua-ie-9 #deviceTable-ethernet .deviceTable thead th .displayControl {
  margin-left: -465px; }

#MyUsage-View {
  /* TABLE COLUMN WIDTHS */ }
  #MyUsage-View * + p {
    margin-top: 15px; }
  #MyUsage-View .column.fullHeight {
    height: 527px; }
  #MyUsage-View #dateAndDesc.column .colContentContainer {
    padding: 0; }
  #MyUsage-View #dateAndDesc.column #usageDescription {
    padding: 15px 10px 0 0; }
  #MyUsage-View #periodContainer {
    color: #fff;
    background-color: #00549a; }
    #MyUsage-View #periodContainer #periodProfileSelection {
      padding: 6px 10px;
      height: 65px; }
      #MyUsage-View #periodContainer #periodProfileSelection #choosePeriodProfile {
        padding: 10px;
        width: 170px; }
    #MyUsage-View #periodContainer #customPeriodSection {
      border-top: 1px solid #4680b0;
      padding: 10px 10px 15px;
      display: none; }
      #MyUsage-View #periodContainer #customPeriodSection select, #MyUsage-View #periodContainer #customPeriodSection input[type="number"], #MyUsage-View #periodContainer #customPeriodSection input[type="text"] {
        padding: 10px 5px;
        width: 60px;
        background-position: 90% center; }
      #MyUsage-View #periodContainer #customPeriodSection .formBlock {
        margin-top: 10px; }
      #MyUsage-View #periodContainer #customPeriodSection select {
        float: left; }
      #MyUsage-View #periodContainer #customPeriodSection select + * {
        margin-left: 10px; }
      #MyUsage-View #periodContainer #customPeriodSection .datePickerTrigger {
        float: right;
        margin-top: 8px;
        margin-left: 5px;
        width: 27px;
        height: 26px;
        background: transparent url("../../images/bell/ui/icon-Calendar.png") no-repeat center;
        display: block;
        cursor: pointer; }
      #MyUsage-View #periodContainer #customPeriodSection .buttonContainer.standalone {
        padding-top: 15px; }
    #MyUsage-View #periodContainer[profile="Custom"] #customPeriodSection {
      display: block; }
  #MyUsage-View #deviceUsage.column {
    width: 75%;
    border-left: 1px solid #e1e1e1; }
    #MyUsage-View #deviceUsage.column .colContentContainer {
      padding: 0; }
    #MyUsage-View #deviceUsage.column #deviceUsageHeader {
      position: relative;
      padding: 0 30px;
      height: 65px;
      font-size: 1.5em;
      line-height: 64px;
      font-weight: bold;
      background-color: #e1e1e1; }
      #MyUsage-View #deviceUsage.column #deviceUsageHeader .date {
        padding: 0 10px; }
      #MyUsage-View #deviceUsage.column #deviceUsageHeader:after {
        content: '';
        position: absolute;
        top: 50%;
        left: -1px;
        margin-top: -15px;
        border-color: transparent transparent transparent #00549a;
        border-style: solid;
        border-width: 15px 0 15px 20px; }
      #MyUsage-View #deviceUsage.column #deviceUsageHeader #btn-clearBandwidthUsage {
        background: transparent;
        float: right;
        color: #969696;
        border-color: #969696;
        margin: 17px 0 0 0;
        font-weight: normal; }
      .brand-virgin #MyUsage-View #deviceUsage.column #deviceUsageHeader #btn-clearBandwidthUsage {
        font-size: 0.9em; }
    #MyUsage-View #deviceUsage.column .tableContainer {
      margin-top: 5px;
      height: 457px;
      overflow-y: auto; }
    #MyUsage-View #deviceUsage.column #deviceUsageRecords tr {
      height: 75px; }
    #MyUsage-View #deviceUsage.column #deviceUsageRecords.rowBorders tr:last-child {
      border-bottom: none; }
    #MyUsage-View #deviceUsage.column #deviceUsageRecords .colIcon {
      padding: 8px 5px 8px 15px; }
    #MyUsage-View #deviceUsage.column #deviceUsageRecords .colName {
      font-weight: bold;
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis; }
    #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter {
      padding: 8px 0; }
      #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter .meterContainer {
        width: 400px;
        border-bottom: 1px solid #e1e1e1; }
        #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter .meterContainer .meterBG {
          position: relative;
          width: 400px;
          height: 35px;
          background-color: #e1e1e1;
          overflow: hidden; }
        #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter .meterContainer .meterFG {
          position: absolute;
          top: 0;
          height: 100%; }
        #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter .meterContainer .meterUploadFG {
          left: 0;
          background-color: #013778; }
        #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter .meterContainer .meterDownloadFG {
          /*left: Will be set to % value of .meterUploadFG width;*/
          background-color: #00549a; }
        #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter .meterContainer .usageInfo {
          padding: 2px;
          text-align: center;
          font-size: 11px; }
          #MyUsage-View #deviceUsage.column #deviceUsageRecords .colMeter .meterContainer .usageInfo > span {
            padding: 0 5px; }
    #MyUsage-View #deviceUsage.column #deviceUsageRecords .colPercentage {
      font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
      color: #00549a;
      font-weight: bold;
      font-size: 1.5em;
      text-align: center; }
  #MyUsage-View #deviceUsageRecords {
    /*
		.colIcon { width: ( 75 / $table-design-width )  * 100%; }
		.colName { width: ( 165 / $table-design-width )  * 100%; }
		.colMeter { width: ( 450 / $table-design-width )  * 100%; }*/
    /*.colPercentage { width: ( 150 / $table-design-width )  * 100%; }*/
    /*display: none;*/
    /*.colPercentage { width: auto; }*/ }
    #MyUsage-View #deviceUsageRecords .colIcon {
      width: 85px; }
    #MyUsage-View #deviceUsageRecords .colName {
      width: 200px; }
    #MyUsage-View #deviceUsageRecords .colMeter {
      width: 405px; }

.modalPage #DDNS-Card #ddnsStatus, .modalPage #DDNS-Settings #ddnsStatus {
  font-weight: bold; }
  .modalPage #DDNS-Card #ddnsStatus span, .modalPage #DDNS-Settings #ddnsStatus span {
    display: none; }
  .modalPage #DDNS-Card #ddnsStatus #ddnsSynchronizing, .modalPage #DDNS-Settings #ddnsStatus #ddnsSynchronizing {
    color: #000; }
  .modalPage #DDNS-Card #ddnsStatus #ddnsSynchronized, .modalPage #DDNS-Settings #ddnsStatus #ddnsSynchronized {
    color: #009f00; }
  .modalPage #DDNS-Card #ddnsStatus #ddnsDisabled, .modalPage #DDNS-Card #ddnsStatus #ddnsError, .modalPage #DDNS-Settings #ddnsStatus #ddnsDisabled, .modalPage #DDNS-Settings #ddnsStatus #ddnsError {
    color: #FF0000; }

.modalPage #DDNS-Card.synchronizing #ddnsStatus #ddnsSynchronizing, .modalPage #DDNS-Settings.synchronizing #ddnsStatus #ddnsSynchronizing {
  display: inline; }

.modalPage #DDNS-Card.synchronized #ddnsStatus #ddnsSynchronized, .modalPage #DDNS-Settings.synchronized #ddnsStatus #ddnsSynchronized {
  display: inline; }

.modalPage #DDNS-Card.error #ddnsStatus #ddnsError, .modalPage #DDNS-Settings.error #ddnsStatus #ddnsError {
  display: inline; }

.modalPage #DDNS-Card.disabled #ddnsStatus #ddnsDisabled, .modalPage #DDNS-Settings.disabled #ddnsStatus #ddnsDisabled {
  display: inline; }

.modalPage #DDNS-Settings .formCenter {
  width: 515px;
  margin-top: 35px; }

.modalPage #DDNS-Settings select, .modalPage #DDNS-Settings input {
  width: 320px;
  height: 50px; }

.modalPage #DDNS-Settings #current-status {
  border-bottom: 1px solid #e1e1e1;
  margin-bottom: 30px;
  padding-bottom: 15px; }

.modalPage #DDNS-Settings #currentStatus {
  border: 1px solid #e1e1e1;
  text-align: center;
  width: 285px;
  line-height: 3.5em; }

.modalPage #DDNS-Settings .formBlock {
  margin-bottom: 10px; }

#PortForwarding-Settings {
  /* TABLE COLUMN WIDTHS */ }
  #PortForwarding-Settings .ipv6Notice {
    margin: 10px 0;
    text-align: center; }
  #PortForwarding-Settings #outerTableContainer {
    height: 461px; }
    #PortForwarding-Settings #outerTableContainer #innerTableContainer {
      position: relative;
      height: 100%; }
  #PortForwarding-Settings #portForwardingRulesTable .validation-msg.error {
    font-size: 12px;
    font-style: italic;
    background: #E1E1E1;
    padding: 2px 5px;
    margin-top: 7px; }
  #PortForwarding-Settings #portForwardingRulesTable #header .cell {
    height: 45px; }
  #PortForwarding-Settings #portForwardingRulesTable #createNewRuleHeader {
    display: block;
    background-color: #013778;
    cursor: pointer; }
    #PortForwarding-Settings #portForwardingRulesTable #createNewRuleHeader .cell {
      padding: 0 15px;
      height: 45px;
      line-height: 45px;
      font-weight: bold;
      color: #fff; }
    #PortForwarding-Settings #portForwardingRulesTable #createNewRuleHeader .expandToggle {
      margin-right: 10px;
      width: 25px;
      height: 42px;
      vertical-align: middle;
      background-position: center;
      background-repeat: no-repeat;
      display: inline-block; }
    #PortForwarding-Settings #portForwardingRulesTable #createNewRuleHeader[status="open"] .expandToggle {
      background-image: url("../../images/bell/ui/icon-PF_Collapse.png"); }
    #PortForwarding-Settings #portForwardingRulesTable #createNewRuleHeader[status="closed"] .expandToggle {
      background-image: url("../../images/bell/ui/icon-PF_Expand.png"); }
  #PortForwarding-Settings #portForwardingRulesTable #createNewRule {
    background-color: #013778;
    display: none; }
    #PortForwarding-Settings #portForwardingRulesTable #createNewRule #hideRuleContainer {
      display: none; }
    #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell {
      height: 125px; }
      #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table {
        color: #fff; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table tr {
          background-color: transparent;
          height: 125px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table td {
          padding: 0 10px 5px;
          vertical-align: top;
          border-bottom: 0; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table td + td {
          border-left: 1px solid #4680b0; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table input[type="text"], #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table input[type="number"] {
          width: auto;
          padding: 5px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table select {
          padding: 4px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table #ruleName {
          width: 150px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table #chooseProtocol {
          width: 81px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table input.port, #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table input.ipField {
          width: 52px;
          display: inline-block; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table .portDivider {
          display: inline-block;
          width: 15px;
          text-align: center; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table #chooseDeviceName {
          width: 226px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table label {
          margin: 5px 0 2px 0;
          font-size: 12px;
          line-height: 2.0em;
          display: block; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table input.ipField + input.ipField {
          margin-left: 5px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table .caption {
          color: #fff;
          width: 100%; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table button {
          width: 140px; }
        .brand-virgin #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table button {
          width: 155px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table button + button {
          margin-top: 15px; }
        #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table button.white {
          color: #003071;
          background: #fff;
          border: 1px solid #c1c1c1; }
        .brand-virgin #PortForwarding-Settings #portForwardingRulesTable #createNewRule .cell table button.white:disabled {
          color: #fff !important;
          background: #C8C8C8 !important;
          border: #C8C8C8 !important; }
  #PortForwarding-Settings #portForwardingRulesTable #rulesList table tbody tr {
    height: 49px; }
    #PortForwarding-Settings #portForwardingRulesTable #rulesList table tbody tr.disabled td {
      color: #BABABA; }
  #PortForwarding-Settings #portForwardingRulesTable #rulesList table tbody td {
    padding: 0 5px 0 8px; }
  #PortForwarding-Settings #portForwardingRulesTable #rulesList .colStatus {
    padding: 5px 2px 0; }
    #PortForwarding-Settings #portForwardingRulesTable #rulesList .colStatus .onOffToggle {
      width: 60px;
      font-size: 9px;
      -webkit-border-radius: 0px;
      -moz-border-radius: 0px;
      -ms-border-radius: 0px;
      border-radius: 0px; }
      #PortForwarding-Settings #portForwardingRulesTable #rulesList .colStatus .onOffToggle .onOffSlider {
        -webkit-border-radius: 0px;
        -moz-border-radius: 0px;
        -ms-border-radius: 0px;
        border-radius: 0px; }
      #PortForwarding-Settings #portForwardingRulesTable #rulesList .colStatus .onOffToggle span.toggleOn {
        padding: 0 8px; }
      #PortForwarding-Settings #portForwardingRulesTable #rulesList .colStatus .onOffToggle span.toggleOff {
        padding: 0 6px; }
  #PortForwarding-Settings #portForwardingRulesTable #rulesList .colAction {
    padding: 0; }
    #PortForwarding-Settings #portForwardingRulesTable #rulesList .colAction span {
      width: 40px;
      height: 30px;
      display: inline-block;
      vertical-align: middle; }
    #PortForwarding-Settings #portForwardingRulesTable #rulesList .colAction .removeXButton {
      background: transparent url("../../images/bell/ui/removeXButton-sml.png") no-repeat center;
      cursor: pointer; }
    #PortForwarding-Settings #portForwardingRulesTable #rulesList .colAction .editButton {
      background: transparent url("../../images/bell/ui/editButton-sml.png") no-repeat center;
      cursor: pointer; }
  #PortForwarding-Settings #test1 {
    position: absolute;
    top: 0;
    width: 100%;
    height: 55px;
    border: 1px solid blue; }
  #PortForwarding-Settings #test2 {
    position: absolute;
    bottom: 0;
    width: 100%;
    overflow: auto;
    border: 1px solid green; }
    #PortForwarding-Settings #test2 #test2Content {
      width: 100%;
      height: 400px;
      border: 1px solid red; }
  #PortForwarding-Settings .fluidRowsTable {
    display: table;
    table-layout: fixed;
    height: 100%;
    width: 100%;
    max-height: 100%; }
    #PortForwarding-Settings .fluidRowsTable .row {
      display: table-row; }
    #PortForwarding-Settings .fluidRowsTable .cell {
      display: table-cell; }
  #PortForwarding-Settings #rules #list {
    height: 230px;
    overflow-y: auto; }
  #PortForwarding-Settings #rules.panelClosed #list {
    height: 377px; }
  #PortForwarding-Settings .oldIEWrapper {
    height: 341px; }
    #PortForwarding-Settings .oldIEWrapper table {
      width: 1065px; }
  #PortForwarding-Settings .portForwardingRulesTable .colName {
    width: 170px; }
  #PortForwarding-Settings .portForwardingRulesTable .colStatus {
    width: 65px; }
  #PortForwarding-Settings .portForwardingRulesTable .colProtocol {
    width: 100px; }
  #PortForwarding-Settings .portForwardingRulesTable .colInternalPort {
    width: 140px; }
  #PortForwarding-Settings .portForwardingRulesTable .colExternalPort {
    width: 140px; }
  #PortForwarding-Settings .portForwardingRulesTable .colLocalAddress {
    width: 250px; }

#MyServices-View {
  /* TABLE COLUMN WIDTHS */ }
  #MyServices-View .colContentContainer {
    padding: 30px 0; }
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(3) .column,
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(3) ~ .service-details .column {
    width: 33%; }
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(3) #internetErrorInstructions,
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(3) ~ .service-details #internetErrorInstructions {
    width: 206% !important;
    padding: 100px !important; }
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(1) .column,
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(2) .column,
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(2) ~ .service-details .column {
    width: 50%; }
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(1) #internetErrorInstructions,
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(2) #internetErrorInstructions,
  #MyServices-View[page="services"] .service-details:first-child:nth-last-child(2) ~ .service-details #internetErrorInstructions {
    width: 100% !important;
    padding: 100px 30px !important; }
  #MyServices-View[page="services"] .column {
    position: relative;
    padding: 0 25px;
    height: 545px; }
    #MyServices-View[page="services"] .column h2 {
      line-height: 1.25em; }
    #MyServices-View[page="services"] .column#fibeInternet {
      padding-left: 0;
      border-right: 1px solid #e1e1e1; }
    #MyServices-View[page="services"] .column#voiceColumn {
      border-right: 0;
      border-left: 1px solid #e1e1e1;
      padding-right: 0; }
    #MyServices-View[page="services"] .column h2 {
      position: relative;
      padding-bottom: 8px;
      border-bottom: 1px solid #e1e1e1;
      display: block; }
    #MyServices-View[page="services"] .column.service .statusIcon {
      top: 0;
      right: 0; }
    #MyServices-View[page="services"] .column .serviceStatus, #MyServices-View[page="services"] .column .serviceIP {
      font-weight: bold; }
      #MyServices-View[page="services"] .column .serviceStatus .status, #MyServices-View[page="services"] .column .serviceIP .status {
        margin-left: 10px; }
      #MyServices-View[page="services"] .column .serviceStatus .ip, #MyServices-View[page="services"] .column .serviceStatus .ipv6, #MyServices-View[page="services"] .column .serviceIP .ip, #MyServices-View[page="services"] .column .serviceIP .ipv6 {
        font-weight: normal; }
    #MyServices-View[page="services"] .column[status="CONNECTED"] .serviceStatus .status {
      color: #009f00; }
    #MyServices-View[page="services"] .column[status="DISCONNECTED"] .serviceStatus .status {
      color: #cc0001; }
    #MyServices-View[page="services"] .column[status="TROUBLE"] .serviceStatus .status {
      color: #dd9700; }
    #MyServices-View[page="services"] .column p + p {
      margin-top: 10px; }
    #MyServices-View[page="services"] .column label {
      width: 120px; }
    #MyServices-View[page="services"] .column input[type="text"], #MyServices-View[page="services"] .column input[type="password"] {
      width: 240px; }
  #MyServices-View .serviceMsgBox {
    position: relative;
    margin-top: 15px;
    padding: 10px 15px 15px;
    background-color: #e1e1e1;
    overflow: auto;
    max-height: 150px; }
    #MyServices-View .serviceMsgBox#internetMsgBox.error .error p {
      height: 14px; }
    #MyServices-View .serviceMsgBox.instructions {
      overflow: visible;
      max-height: none; }
    #MyServices-View .serviceMsgBox .instructions, #MyServices-View .serviceMsgBox .serviceMessages, #MyServices-View .serviceMsgBox .error {
      display: none; }
    #MyServices-View .serviceMsgBox.instructions .instructions, #MyServices-View .serviceMsgBox.message .serviceMessages, #MyServices-View .serviceMsgBox.error .error {
      display: block; }
    #MyServices-View .serviceMsgBox.instructions .serviceMessages, #MyServices-View .serviceMsgBox.instructions .error {
      display: none; }
    #MyServices-View .serviceMsgBox #errorArrow {
      content: '';
      position: absolute;
      top: 50%;
      right: 0;
      margin-top: -20px;
      width: 0;
      height: 0;
      border-color: transparent transparent transparent #e1e1e1;
      border-style: solid;
      border-width: 20px 0 20px 20px;
      z-index: 100;
      display: none; }
    #MyServices-View .serviceMsgBox .serviceMessages .serviceMessage {
      margin-top: 8px; }
      #MyServices-View .serviceMsgBox .serviceMessages .serviceMessage:before {
        content: '';
        display: block;
        width: 50px;
        margin: 0 auto 8px;
        border-top: 1px solid #cccccc;
        height: 0; }
      #MyServices-View .serviceMsgBox .serviceMessages .serviceMessage:first-child:before {
        display: none; }
      #MyServices-View .serviceMsgBox .serviceMessages .serviceMessage:first-child {
        margin-top: 0; }
      #MyServices-View .serviceMsgBox .serviceMessages .serviceMessage .errorCode {
        font-weight: bold;
        margin-bottom: 4px; }
      #MyServices-View .serviceMsgBox .serviceMessages .serviceMessage .messageContent p {
        margin: 4px 0 0 0; }
        #MyServices-View .serviceMsgBox .serviceMessages .serviceMessage .messageContent p:first-child {
          margin-top: 0; }
  #MyServices-View #internetErrorInstructions {
    position: absolute;
    top: 0;
    left: 103%;
    height: 98%;
    background-color: #fff;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=95)";
    /* IE 8 */
    filter: alpha(opacity=95);
    /* IE 5-7 */
    -moz-opacity: 0.95;
    /* Netscape */
    -khtml-opacity: 0.95;
    /* Safari 1.x */
    opacity: 0.95;
    /* Good browsers */
    z-index: 90;
    display: none; }
    #MyServices-View #internetErrorInstructions #errorText {
      width: 505px; }
    #MyServices-View #internetErrorInstructions .serviceMessages .serviceMessage {
      margin-top: 16px; }
      #MyServices-View #internetErrorInstructions .serviceMessages .serviceMessage:before {
        content: '';
        display: block;
        width: 50px;
        margin: 0 auto 16px;
        border-top: 1px solid #cccccc;
        height: 0; }
      #MyServices-View #internetErrorInstructions .serviceMessages .serviceMessage:first-child:before {
        display: none; }
      #MyServices-View #internetErrorInstructions .serviceMessages .serviceMessage:first-child {
        margin-top: 0; }
      #MyServices-View #internetErrorInstructions .serviceMessages .serviceMessage .errorCode {
        font-weight: bold;
        margin-bottom: 8px; }
      #MyServices-View #internetErrorInstructions .serviceMessages .serviceMessage .messageContent p {
        margin: 8px 0 0 0; }
        #MyServices-View #internetErrorInstructions .serviceMessages .serviceMessage .messageContent p:first-child {
          margin-top: 0; }
  #MyServices-View .lowerLayerDown .serviceMsgBox {
    overflow: visible;
    max-height: none;
    margin-right: -25px;
    padding-right: 40px; }
    #MyServices-View .lowerLayerDown .serviceMsgBox #errorArrow {
      right: -20px;
      display: block; }
  #MyServices-View .lowerLayerDown #internetErrorInstructions {
    display: block; }
  #MyServices-View #internetLoginForm {
    margin-top: 15px; }
    #MyServices-View #internetLoginForm #internetLoginFields label {
      width: 130px; }
    #MyServices-View #internetLoginForm #internetLoginFields input[type="text"],
    #MyServices-View #internetLoginForm #internetLoginFields input[type="password"] {
      width: 195px; }
    #MyServices-View #internetLoginForm #connectInternetButton, #MyServices-View #internetLoginForm #cancelConnectInternetButton {
      display: none; }
    #MyServices-View #internetLoginForm #cancelConnectInternetButton {
      margin-right: 10px; }
    #MyServices-View #internetLoginForm #changeLoginInfoButton {
      display: inline-block; }
    #MyServices-View #internetLoginForm.changing #connectInternetButton, #MyServices-View #internetLoginForm.changing #cancelConnectInternetButton {
      display: inline-block; }
    #MyServices-View #internetLoginForm.changing #changeLoginInfoButton {
      display: none; }
  #MyServices-View #phoneLinesTable th, #MyServices-View #phoneLinesTable td {
    text-align: center;
    border-left: 0; }
  #MyServices-View #phoneLinesTable td {
    height: 45px; }
  #MyServices-View #phoneLinesTable .statusIcon {
    position: relative;
    top: auto;
    right: auto; }
  #MyServices-View #phoneLinesTable #line1, #MyServices-View #phoneLinesTable #line2 {
    display: none; }
  #MyServices-View #phoneLinesTable.line-1-enabled #line1 {
    display: table-row; }
  #MyServices-View #phoneLinesTable.line-2-enabled #line2 {
    display: table-row; }
  #MyServices-View #phoneLinesTable tr.line-none {
    display: table; }
  #MyServices-View #phoneLinesTable.line-1-enabled tr.line-none, #MyServices-View #phoneLinesTable.line-2-enabled tr.line-none {
    display: none; }
  #MyServices-View .service.column .subscribedToService {
    display: none; }
  #MyServices-View .service.column .notSubscribedToService {
    display: none; }
  #MyServices-View .service.column[status="CONNECTED"] .subscribedToService, #MyServices-View .service.column[status="TROUBLE"] .subscribedToService, #MyServices-View .service.column[status="DISCONNECTED"] .subscribedToService {
    display: block; }
  #MyServices-View .service.column[status="UNSUBSCRIBED"] .notSubscribedToService {
    display: block; }
  #MyServices-View .service.column#voiceColumn #voipButtons button:not(:last-child) {
    margin-right: 0; }
  #MyServices-View .service.column#voiceColumn #voipConfigure {
    display: none; }
  #MyServices-View .service.column#voiceColumn[status="CONNECTED"] #voipButtons, #MyServices-View .service.column#voiceColumn[status="TROUBLE"] #voipButtons, #MyServices-View .service.column#voiceColumn[status="DISCONNECTED"] #voipButtons {
    display: none; }
  .market-bbm #MyServices-View .service.column#voiceColumn #voipButtons {
    display: block; }
  .market-bbm #MyServices-View .service.column#voiceColumn #voipConfigure {
    display: inline-block; }
  .market-bbm #MyServices-View .service.column#voiceColumn #voipInfo {
    display: none; }
  .market-bbm .gateway-type-big #MyServices-View .service.column#voiceColumn #voipConfigure {
    display: none; }
  .market-bbm .gateway-type-big #MyServices-View .service.column#voiceColumn #voipInfo {
    display: inline-block; }
  #MyServices-View .notSubscribedToService .buttonContainer {
    width: 325px; }
  #MyServices-View #phoneLinesTable .colLine {
    width: 50px; }
  #MyServices-View #phoneLinesTable .colPhoneNum {
    width: 101px; }
  #MyServices-View #phoneLinesTable .colStatus {
    width: 63px; }
  #MyServices-View #phoneLinesTable .colCallStatus {
    width: 111px; }

#siteMap .colContentContainer {
  padding: 0; }

#siteMap .modalHeader h2 {
  font-family: BellSlimSemiBoldRegular, Helvetica, Arial, sans-serif;
  color: #686868;
  text-transform: normal;
  line-height: 1.25em; }

#siteMap #siteMap .modalHeader h2 {
  font-family: BellSlimSemiBoldRegular, Helvetica, Arial, sans-serif;
  color: #686868;
  text-transform: normal;
  line-height: 1.25em; }

#siteMap #siteMap .column {
  padding: 0 25px; }
  #siteMap #siteMap .column:first-child {
    padding-left: 0; }
  #siteMap #siteMap .column:last-child {
    padding-right: 0; }

#siteMap #settingsNavColumn {
  width: 45%; }

#siteMap #servicesNavColumn {
  padding-right: 10px;
  padding-left: 10px; }

#siteMap ul.navList li {
  font-size: 14.4px; }

#siteMap ul.navList > li:not(:last-child) {
  border-bottom: 1px solid #e1e1e1; }

#siteMap ul.navList li div {
  position: relative;
  background-repeat: no-repeat;
  background-position: left center;
  cursor: pointer; }

#siteMap ul.navList > li div {
  height: 60px;
  width: 100%;
  padding: 0 0 0 63px;
  font-weight: bold;
  line-height: 20px;
  color: #000;
  display: table-cell;
  vertical-align: middle; }
  #siteMap ul.navList > li div.internet {
    background-image: url("../../images/bell/icons/icon-internet-sitemap.png"); }
  #siteMap ul.navList > li div.fibeTV {
    background-image: url("../../images/bell/icons/icon-fibeTV-sitemap.png"); }
  #siteMap ul.navList > li div.fibeVoice {
    background-image: url("../../images/bell/icons/icon-fibeVoice-sitemap.png"); }
    #siteMap ul.navList > li div.fibeVoice.bbm {
      background-image: url("../../images/bell/icons/icon-fibeVoice_business-sitemap.png"); }
  #siteMap ul.navList > li div.myNetwork {
    background-image: url("../../images/bell/icons/icon-myNetwork-sitemap.png"); }
  #siteMap ul.navList > li div.modemPerformance {
    background-image: url("../../images/bell/icons/icon-modemPerformance-sitemap.png");
    background-position: 5px 12px; }
  #siteMap ul.navList > li div.wifiSettings {
    background-image: url("../../images/bell/icons/icon-wifi-sitemap.png"); }
  #siteMap ul.navList > li div.batteryBackup {
    background-image: url("../../images/bell/icons/icon-batteryBackup-sitemap.png");
    background-position: 18px; }
  #siteMap ul.navList > li div.myUsage {
    background-image: url("../../images/bell/icons/icon-myUsage-sitemap.png");
    background-position: 0px; }
  #siteMap ul.navList > li div.speedTest {
    background-image: url("../../images/bell/icons/icon-speedtest-sitemap.png");
    background-position: 9px center; }
  #siteMap ul.navList > li div.modemPreferences {
    background-image: url("../../images/bell/icons/icon-modemPreferences-sitemap.png");
    width: 240px;
    background-position: 10px 17px; }
  #siteMap ul.navList > li div.advancedTools {
    background-position: 8px center;
    background-image: url("../../images/bell/icons/icon-advancedTools-sitemap.png"); }

#siteMap ul.navList {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  height: 550px; }
  #siteMap ul.navList#settingsNavItems > li {
    width: 245px;
    padding-bottom: 10px; }
  #siteMap ul.navList .subNavList {
    display: block;
    float: none;
    font-weight: normal;
    color: #686868;
    margin-top: -5px; }
    #siteMap ul.navList .subNavList li {
      position: relative;
      height: 24px;
      line-height: 24px;
      width: 245px;
      margin-left: 10%;
      padding: 0 0 0 56px;
      cursor: pointer; }
      #siteMap ul.navList .subNavList li:before, #siteMap ul.navList .subNavList li:after {
        content: '';
        display: block;
        position: absolute; }
      #siteMap ul.navList .subNavList li:before {
        font-size: 22px;
        padding-left: 20px;
        color: #e1e1e1;
        top: 0;
        left: 0;
        height: 12px;
        width: 20px;
        border-bottom: 1px solid #e1e1e1; }
      #siteMap ul.navList .subNavList li:after {
        top: 7px;
        left: 38px;
        width: 10px;
        height: 10px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        border-radius: 50%;
        background-color: #e1e1e1; }
    #siteMap ul.navList .subNavList li:not(:last-child) {
      border-left: 1px solid #e1e1e1; }
    #siteMap ul.navList .subNavList li:last-child:before {
      border-left: 1px solid #e1e1e1; }

#SpeedTest-View {
  /* TABLE COLUMN WIDTHS */ }
  #SpeedTest-View .modalHeader h2 {
    line-height: 1.25em; }
  #SpeedTest-View #speedTestPopupContainer {
    margin: 0 auto 25px;
    width: 851px; }
    #SpeedTest-View #speedTestPopupContainer #speedTestSpinner {
      display: none; }
    #SpeedTest-View #speedTestPopupContainer.running #speedTestSpinner {
      display: block; }
    #SpeedTest-View #speedTestPopupContainer.running #speedTestControlsContainer {
      display: none; }
    #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner {
      width: 625px;
      border-top: 1px solid #e1e1e1;
      border-right: 1px solid #fff; }
      #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer #runSpeedTest, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner #runSpeedTest {
        padding: 25px 120px 0;
        height: 159px;
        text-align: center; }
        #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer #runSpeedTest #startTestButton, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner #runSpeedTest #startTestButton {
          margin: 25px auto;
          width: 200px;
          display: block; }
      #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer #speedTestOptions, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner #speedTestOptions {
        padding: 20px 25px 0;
        height: 80px;
        background-color: #e1e1e1; }
        #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer #speedTestOptions label, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner #speedTestOptions label {
          color: #000; }
        #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer #speedTestOptions span, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner #speedTestOptions span {
          display: inline-block;
          vertical-align: middle; }
        #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer #speedTestOptions span + span, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner #speedTestOptions span + span {
          margin-left: 30px; }
        #SpeedTest-View #speedTestPopupContainer #speedTestControlsContainer #speedTestOptions .caption, #SpeedTest-View #speedTestPopupContainer #speedTestSpinner #speedTestOptions .caption {
          padding: 0;
          font-style: normal; }
    #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer {
      width: 226px; }
      #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult {
        height: 80px;
        color: #fff; }
        #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult + .speedResult {
          border-top: 1px solid #4680b0; }
        #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult#downloadSpeed, #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult#uploadSpeed {
          padding: 10px 25px 0 90px;
          background-color: #00549a;
          background-position: 25px center;
          background-repeat: no-repeat; }
        #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult#downloadSpeed {
          background-image: url("../../images/bell/ui/icon-Download.png");
          background-image: url("../../images/bell/ui/icon-Download.svg"); }
        #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult#uploadSpeed {
          background-image: url("../../images/bell/ui/icon-Upload.png");
          background-image: url("../../images/bell/ui/icon-Upload.svg"); }
        #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult#latency {
          padding: 10px 25px 0;
          background-color: #013778; }
        #SpeedTest-View #speedTestPopupContainer #speedTestResultsContainer .speedResult .speed {
          font-family: BellSlimMediumRegular, Helvetica, Arial, sans-serif;
          font-size: 28px;
          line-height: 30px; }
  #SpeedTest-View .oldIEWrapper {
    height: 231px; }
    #SpeedTest-View .oldIEWrapper .statsTable {
      width: 852px; }
  #SpeedTest-View #speedTestHistoryTableContainer {
    margin: 0 auto;
    width: 851px; }
  #SpeedTest-View #clearHistoryButton {
    width: 165px; }
  .brand-virgin #SpeedTest-View #clearHistoryButton {
    width: 180px; }
  #SpeedTest-View .tableContainer .modalHeader {
    padding-bottom: 10px; }
  #SpeedTest-View #speedTestHistoryTable thead th {
    height: 45px; }
  #SpeedTest-View #speedTestHistoryTable tbody {
    height: 185px; }
    #SpeedTest-View #speedTestHistoryTable tbody tr {
      height: 37px; }
    #SpeedTest-View #speedTestHistoryTable tbody td {
      padding: 0 8px; }
    #SpeedTest-View #speedTestHistoryTable tbody .colDateTime span {
      display: inline-block; }
      #SpeedTest-View #speedTestHistoryTable tbody .colDateTime span + span {
        margin-left: 15px; }
    #SpeedTest-View #speedTestHistoryTable tbody .colAction .deleteButton {
      margin: 0 auto;
      width: 30px;
      height: 30px;
      cursor: pointer;
      background-position: center;
      background-repeat: no-repeat;
      background-image: url("../../images/bell/ui/deleteButton_sml.png");
      background-image: url("../../images/bell/ui/deleteButton_sml.svg"); }
  #SpeedTest-View #speedTestHistoryTable th, #SpeedTest-View #speedTestHistoryTable td {
    text-align: center; }
  #SpeedTest-View #speedTestHistoryTable {
    /*
    .colDateTime { width: ( 244 / $table-design-width )  * 100%; }
    .colBlockTraffic { width: ( 150 / $table-design-width )  * 100%; }
    .colLatency { width: ( 150 / $table-design-width )  * 100%; }
    .colDLSpeed { width: ( 150 / $table-design-width )  * 100%; }
    .colULSpeed { width: ( 150 / $table-design-width )  * 100%; }
    .colAction { width: ( 150 / $table-design-width )  * 100%; }*/
    /*display: none;*/ }
    #SpeedTest-View #speedTestHistoryTable .colDateTime {
      width: 220px; }
    #SpeedTest-View #speedTestHistoryTable .colBlockTraffic {
      width: 116px; }
    #SpeedTest-View #speedTestHistoryTable .colLatency {
      width: 180px; }
    #SpeedTest-View #speedTestHistoryTable .colDLSpeed {
      width: 135px; }
    #SpeedTest-View #speedTestHistoryTable .colULSpeed {
      width: 135px; }
    #SpeedTest-View #speedTestHistoryTable thead .colAction {
      width: 65px; }

#statisticsPage {
  /* TABLE COLUMN WIDTHS */ }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(1):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(1):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 1065px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(1):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(1):first-child ~ *:nth-child(1) {
      left: 0px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(2):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 532.5px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(2):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(2):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ *:nth-child(2) {
      left: 532.5px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 355px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(2) {
      left: 355px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(3) {
      left: 710px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 266.25px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(2) {
      left: 266.25px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(3) {
      left: 532.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(4),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(4) {
      left: 798.75px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 213px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(2) {
      left: 213px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(3) {
      left: 426px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(4),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(4) {
      left: 639px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(5),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(5) {
      left: 852px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 177.5px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(2) {
      left: 177.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(3) {
      left: 355px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(4),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(4) {
      left: 532.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(5),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(5) {
      left: 710px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(6),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(6) {
      left: 887.5px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 152.14286px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(2) {
      left: 152.14286px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(3) {
      left: 304.28571px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(4),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(4) {
      left: 456.42857px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(5),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(5) {
      left: 608.57143px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(6),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(6) {
      left: 760.71429px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(7),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(7) {
      left: 912.85714px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 133.125px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(2) {
      left: 133.125px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(3) {
      left: 266.25px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(4),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(4) {
      left: 399.375px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(5),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(5) {
      left: 532.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(6),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(6) {
      left: 665.625px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(7),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(7) {
      left: 798.75px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(8),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(8) {
      left: 931.875px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 118.33333px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(2) {
      left: 118.33333px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(3) {
      left: 236.66667px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(4),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(4) {
      left: 355px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(5),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(5) {
      left: 473.33333px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(6),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(6) {
      left: 591.66667px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(7),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(7) {
      left: 710px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(8),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(8) {
      left: 828.33333px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(9),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(9) {
      left: 946.66667px; }
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child,
  #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 106.5px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(1),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(1) {
      left: 0px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(2),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(2) {
      left: 106.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(3),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(3) {
      left: 213px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(4),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(4) {
      left: 319.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(5),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(5) {
      left: 426px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(6),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(6) {
      left: 532.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(7),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(7) {
      left: 639px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(8),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(8) {
      left: 745.5px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(9),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(9) {
      left: 852px; }
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(10),
    #statisticsPage .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(10) {
      left: 958.5px; }
  #statisticsPage .tabContainer .tabHeader .tab.current::before {
    border: none; }
  #statisticsPage .tabContainer .tabHeader .tab.current:last-child:after {
    display: block; }
  #statisticsPage .statsTable thead th {
    height: 45px; }
  #statisticsPage .statsTable tbody {
    height: 407px; }
    #statisticsPage .statsTable tbody tr {
      height: 37px; }
  #statisticsPage .oldIEWrapper {
    height: 452px; }
    #statisticsPage .oldIEWrapper .statsTable {
      width: 1065px; }
  #statisticsPage #statsTable-Ethernet .colName {
    width: auto; }
  #statisticsPage #statsTable-Ethernet .colLAN1 {
    width: 12.20657%; }
  #statisticsPage #statsTable-Ethernet .colLAN2 {
    width: 12.20657%; }
  #statisticsPage #statsTable-Ethernet .colLAN3 {
    width: 12.20657%; }
  #statisticsPage #statsTable-Ethernet .colLAN4 {
    width: 12.20657%; }
  #statisticsPage #statsTable-Ethernet .colWAN {
    width: 12.20657%; }
  #statisticsPage #statsTable-Ethernet .colSFP {
    width: 12.20657%; }
  #statisticsPage #statsTable-HPNA .colName {
    width: auto; }
  #statisticsPage #statsTable-HPNA .colHPNA {
    width: 50%; }
  #statisticsPage #statsTable-WiFi .colName {
    width: 264px; }
  #statisticsPage #statsTable-WiFi .colPrimary {
    width: 267px; }
  #statisticsPage #statsTable-WiFi.primary-3 .colName {
    width: 200px; }
  #statisticsPage #statsTable-WiFi.primary-3 .colPrimary {
    width: 215px; }
  #statisticsPage #statsTable-WiFi td.colGuest span {
    display: inline; }
  #statisticsPage #statsTable-IGMP tbody {
    height: 225px; }
  #statisticsPage #statsTable-IGMP-streams .colInternal {
    width: 133px; }
  #statisticsPage #statsTable-IGMP-streams .colConnected {
    width: 134px; }
  #statisticsPage #statsTable-IGMP-streams .colDateFirst {
    width: 133px; }
  #statisticsPage #statsTable-IGMP-streams tbody {
    height: 150px; }

#logsPage {
  /* TABLE COLUMN WIDTHS */ }
  #logsPage form[name="system-logs-settings"] {
    border-bottom: 1px solid #e1e1e1;
    margin-bottom: 10px; }
    #logsPage form[name="system-logs-settings"] .formBlock label:first-child {
      line-height: 40px; }
    #logsPage form[name="system-logs-settings"] #featureFilterControl {
      /*border-bottom: 1px solid $bell-light-grey;*/ }
    #logsPage form[name="system-logs-settings"] #features.formBlock {
      padding: 10px 0;
      border-top: 1px solid #e1e1e1;
      display: none; }
      #logsPage form[name="system-logs-settings"] #features.formBlock label {
        width: 168px;
        height: 30px;
        font-size: 12px; }
  #logsPage .oldIEWrapper {
    height: 341px; }
    #logsPage .oldIEWrapper table {
      width: 1065px; }
  #logsPage #systemLogTable .colDateTime {
    width: 170px; }
  #logsPage #systemLogTable .colLevel {
    width: 75px; }
  #logsPage #systemLogTable .colModule {
    width: 75px; }
  #logsPage #systemLogTable thead .colMessage {
    width: 770px; }
  #logsPage #systemLogTable tbody {
    height: 286px; }
    #logsPage #systemLogTable tbody tr {
      height: 37px; }

#utilitiesPage-View {
  /* TABLE COLUMN WIDTHS */ }
  #utilitiesPage-View .error {
    color: red; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(1):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(1):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 1065px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(1):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(1):first-child ~ *:nth-child(1) {
      left: 0px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(2):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 532.5px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(2):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(2):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(2):first-child ~ *:nth-child(2) {
      left: 532.5px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 355px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(2) {
      left: 355px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(3):first-child ~ *:nth-child(3) {
      left: 710px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 266.25px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(2) {
      left: 266.25px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(3) {
      left: 532.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child:nth-child(4),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(4):first-child ~ *:nth-child(4) {
      left: 798.75px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 213px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(2) {
      left: 213px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(3) {
      left: 426px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(4),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(4) {
      left: 639px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child:nth-child(5),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(5):first-child ~ *:nth-child(5) {
      left: 852px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 177.5px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(2) {
      left: 177.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(3) {
      left: 355px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(4),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(4) {
      left: 532.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(5),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(5) {
      left: 710px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child:nth-child(6),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(6):first-child ~ *:nth-child(6) {
      left: 887.5px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 152.14286px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(2) {
      left: 152.14286px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(3) {
      left: 304.28571px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(4),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(4) {
      left: 456.42857px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(5),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(5) {
      left: 608.57143px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(6),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(6) {
      left: 760.71429px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child:nth-child(7),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(7):first-child ~ *:nth-child(7) {
      left: 912.85714px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 133.125px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(2) {
      left: 133.125px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(3) {
      left: 266.25px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(4),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(4) {
      left: 399.375px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(5),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(5) {
      left: 532.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(6),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(6) {
      left: 665.625px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(7),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(7) {
      left: 798.75px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child:nth-child(8),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(8):first-child ~ *:nth-child(8) {
      left: 931.875px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 118.33333px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(2) {
      left: 118.33333px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(3) {
      left: 236.66667px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(4),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(4) {
      left: 355px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(5),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(5) {
      left: 473.33333px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(6),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(6) {
      left: 591.66667px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(7),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(7) {
      left: 710px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(8),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(8) {
      left: 828.33333px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child:nth-child(9),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(9):first-child ~ *:nth-child(9) {
      left: 946.66667px; }
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child,
  #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ * {
    /*width: (100 / $numOfTabs) * 1%;*/
    width: 106.5px;
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/
    /*$leftPos: $leftPos + (100 / $numOfTabs);*/ }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(1),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(1) {
      left: 0px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(2),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(2) {
      left: 106.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(3),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(3) {
      left: 213px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(4),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(4) {
      left: 319.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(5),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(5) {
      left: 426px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(6),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(6) {
      left: 532.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(7),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(7) {
      left: 639px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(8),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(8) {
      left: 745.5px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(9),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(9) {
      left: 852px; }
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child:nth-child(10),
    #utilitiesPage-View .tabContainer .tabHeader .tab:nth-last-child(10):first-child ~ *:nth-child(10) {
      left: 958.5px; }
  #utilitiesPage-View form[name="utilities-netPer-form"], #utilitiesPage-View form[name="utilities-netinf-form"], #utilitiesPage-View form[name="utilities-nslookup-form"], #utilitiesPage-View form[name="utilities-traceroute-form"], #utilitiesPage-View form[name="utilities-ping-form"] {
    border-bottom: 1px solid #e1e1e1; }
    #utilitiesPage-View form[name="utilities-netPer-form"] .formBlock, #utilitiesPage-View form[name="utilities-netinf-form"] .formBlock, #utilitiesPage-View form[name="utilities-nslookup-form"] .formBlock, #utilitiesPage-View form[name="utilities-traceroute-form"] .formBlock, #utilitiesPage-View form[name="utilities-ping-form"] .formBlock {
      margin: 0 auto;
      display: table; }
  #utilitiesPage-View form[name="utilities-ping-form"] {
    height: 130px; }
  #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div {
    display: inline-block; }
    #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock {
      width: 34%; }
      #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock#previousTestSection {
        width: 40%;
        vertical-align: 2px; }
      #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock#saveAsHtmlNetinf {
        width: 12%;
        vertical-align: 12px; }
      #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock:first-child {
        margin-left: 75px;
        vertical-align: 0; }
      #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock #numberOfPackets-field[status="error"] {
        vertical-align: -33px; }
        #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock #numberOfPackets-field[status="error"] input {
          border: 2px solid #bd2025 !important; }
        #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock #numberOfPackets-field[status="error"] label {
          color: #bd2025; }
    #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div #numberPackets {
      width: 80px; }
    #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div #netinfTest {
      margin-left: 15px; }
  #utilitiesPage-View #NetInfTabContent #netinf-result-container .status {
    border-bottom: 1px solid #e1e1e1;
    text-align: center; }
    #utilitiesPage-View #NetInfTabContent #netinf-result-container .status h3 {
      padding: 25px; }
      #utilitiesPage-View #NetInfTabContent #netinf-result-container .status h3 .passed {
        color: #009f00; }
      #utilitiesPage-View #NetInfTabContent #netinf-result-container .status h3 .failed {
        color: #FF0000; }
  #utilitiesPage-View #NetInfTabContent #netinf-result-container .utilsTableContainer {
    height: 228px;
    overflow: auto; }
    #utilitiesPage-View #NetInfTabContent #netinf-result-container .utilsTableContainer .section {
      margin-top: 25px; }
      #utilitiesPage-View #NetInfTabContent #netinf-result-container .utilsTableContainer .section.left {
        float: left; }
      #utilitiesPage-View #NetInfTabContent #netinf-result-container .utilsTableContainer .section.right {
        float: left;
        margin-left: 120px; }
      #utilitiesPage-View #NetInfTabContent #netinf-result-container .utilsTableContainer .section table.utilsTable {
        width: 450px; }
        #utilitiesPage-View #NetInfTabContent #netinf-result-container .utilsTableContainer .section table.utilsTable tbody {
          height: 225px; }
  #utilitiesPage-View #netPerTabContent .utilsTableContainer.pastResults table tbody {
    height: 90px;
    overflow: auto; }
  #utilitiesPage-View form[name="utilities-nslookup-form"], #utilitiesPage-View form[name="utilities-traceroute-form"] {
    padding-bottom: 43px; }
    #utilitiesPage-View form[name="utilities-nslookup-form"] .formBlock, #utilitiesPage-View form[name="utilities-traceroute-form"] .formBlock {
      display: inline-block;
      margin-right: 20px; }
  #utilitiesPage-View form[name="utilities-nslookup-form"] button#tracerouteTest, #utilitiesPage-View form[name="utilities-nslookup-form"] button#pingTest, #utilitiesPage-View form[name="utilities-traceroute-form"] button#tracerouteTest, #utilitiesPage-View form[name="utilities-traceroute-form"] button#pingTest, #utilitiesPage-View form[name="utilities-ping-form"] button#tracerouteTest, #utilitiesPage-View form[name="utilities-ping-form"] button#pingTest {
    position: relative;
    top: -10px; }
  #utilitiesPage-View form[name="utilities-nslookup-form"] .formBlock, #utilitiesPage-View form[name="utilities-traceroute-form"] .formBlock, #utilitiesPage-View form[name="utilities-ping-form"] .formBlock {
    margin-top: 30px; }
    #utilitiesPage-View form[name="utilities-nslookup-form"] .formBlock#nsLookupHostField, #utilitiesPage-View form[name="utilities-traceroute-form"] .formBlock#nsLookupHostField, #utilitiesPage-View form[name="utilities-ping-form"] .formBlock#nsLookupHostField {
      width: 475px; }
    #utilitiesPage-View form[name="utilities-nslookup-form"] .formBlock button#nslookupTest, #utilitiesPage-View form[name="utilities-nslookup-form"] .formBlock button#tracerouteTest, #utilitiesPage-View form[name="utilities-traceroute-form"] .formBlock button#nslookupTest, #utilitiesPage-View form[name="utilities-traceroute-form"] .formBlock button#tracerouteTest, #utilitiesPage-View form[name="utilities-ping-form"] .formBlock button#nslookupTest, #utilitiesPage-View form[name="utilities-ping-form"] .formBlock button#tracerouteTest {
      margin-left: 15px; }
  #utilitiesPage-View form[name="utilities-nslookup-form"] #nsLookup-field-button .validation-msg-wrap, #utilitiesPage-View form[name="utilities-traceroute-form"] #nsLookup-field-button .validation-msg-wrap, #utilitiesPage-View form[name="utilities-ping-form"] #nsLookup-field-button .validation-msg-wrap {
    float: none !important;
    clear: both;
    margin-left: 45px; }
  #utilitiesPage-View form[name="utilities-nslookup-form"] #traceroute-field-button .validation-msg-wrap, #utilitiesPage-View form[name="utilities-traceroute-form"] #traceroute-field-button .validation-msg-wrap, #utilitiesPage-View form[name="utilities-ping-form"] #traceroute-field-button .validation-msg-wrap {
    float: none !important;
    clear: both;
    margin-left: 45px; }
  #utilitiesPage-View form[name="utilities-nslookup-form"] #ping-field-button, #utilitiesPage-View form[name="utilities-traceroute-form"] #ping-field-button, #utilitiesPage-View form[name="utilities-ping-form"] #ping-field-button {
    margin: 0 auto; }
    #utilitiesPage-View form[name="utilities-nslookup-form"] #ping-field-button div, #utilitiesPage-View form[name="utilities-traceroute-form"] #ping-field-button div, #utilitiesPage-View form[name="utilities-ping-form"] #ping-field-button div {
      display: inline-block;
      width: 350px; }
      #utilitiesPage-View form[name="utilities-nslookup-form"] #ping-field-button div.pingNumberSection, #utilitiesPage-View form[name="utilities-traceroute-form"] #ping-field-button div.pingNumberSection, #utilitiesPage-View form[name="utilities-ping-form"] #ping-field-button div.pingNumberSection {
        margin-right: 15px;
        width: 220px; }
      #utilitiesPage-View form[name="utilities-nslookup-form"] #ping-field-button div[status="error"], #utilitiesPage-View form[name="utilities-traceroute-form"] #ping-field-button div[status="error"], #utilitiesPage-View form[name="utilities-ping-form"] #ping-field-button div[status="error"] {
        vertical-align: -16px; }
      #utilitiesPage-View form[name="utilities-nslookup-form"] #ping-field-button div.ping-button, #utilitiesPage-View form[name="utilities-traceroute-form"] #ping-field-button div.ping-button, #utilitiesPage-View form[name="utilities-ping-form"] #ping-field-button div.ping-button {
        line-height: 35px;
        width: 120px; }
    #utilitiesPage-View form[name="utilities-nslookup-form"] #ping-field-button #numberPing, #utilitiesPage-View form[name="utilities-traceroute-form"] #ping-field-button #numberPing, #utilitiesPage-View form[name="utilities-ping-form"] #ping-field-button #numberPing {
      width: 80px; }
    #utilitiesPage-View form[name="utilities-nslookup-form"] #ping-field-button button#pingTest, #utilitiesPage-View form[name="utilities-traceroute-form"] #ping-field-button button#pingTest, #utilitiesPage-View form[name="utilities-ping-form"] #ping-field-button button#pingTest {
      margin-left: 15px; }
  #utilitiesPage-View .utilsTable thead th {
    height: 45px; }
  #utilitiesPage-View .utilsTable tbody {
    height: 74px; }
    #utilitiesPage-View .utilsTable tbody tr {
      height: 37px; }
  #utilitiesPage-View .oldIEWrapper {
    height: 119px; }
    #utilitiesPage-View .oldIEWrapper .statsTable {
      width: 1065px; }
  #utilitiesPage-View div#netPerTabContent, #utilitiesPage-View div#NSLookupTabContent, #utilitiesPage-View div#TraceRouteTabContent, #utilitiesPage-View div#PingTabContent, #utilitiesPage-View div#NetInfTabContent {
    height: 472px; }
    #utilitiesPage-View div#netPerTabContent h2, #utilitiesPage-View div#NSLookupTabContent h2, #utilitiesPage-View div#TraceRouteTabContent h2, #utilitiesPage-View div#PingTabContent h2, #utilitiesPage-View div#NetInfTabContent h2 {
      line-height: 2.25em; }
  #utilitiesPage-View .traceroute-result-container {
    height: 300px;
    overflow-y: scroll; }
  #utilitiesPage-View #utilitiesTable-NetPerCurrentTest,
  #utilitiesPage-View #utilitiesTable-NetPerPreviousTests {
    /*
		.colTime { width: ( 244 / $table-design-width )  * 100%; }
		.colTx { width: ( 150 / $table-design-width )  * 100%; }
		.colRx { width: ( 150 / $table-design-width )  * 100%; }
		.colCRC { width: ( 150 / $table-design-width )  * 100%; }
		.colDropped { width: ( 150 / $table-design-width )  * 100%; }
		.colLoss { width: ( 150 / $table-design-width )  * 100%; }*/
    /*display: none;*/ }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest .colTime,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests .colTime {
      width: 264px; }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest .colTx,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests .colTx {
      width: 160px; }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest .colRx,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests .colRx {
      width: 160px; }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest .colCRC,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests .colCRC {
      width: 160px; }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest .colDropped,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests .colDropped {
      width: 160px; }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest thead .colLoss,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests thead .colLoss {
      width: 160px; }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest tbody,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests tbody {
      height: auto; }
    #utilitiesPage-View #utilitiesTable-NetPerCurrentTest .total,
    #utilitiesPage-View #utilitiesTable-NetPerPreviousTests .total {
      font-weight: bold; }
  #utilitiesPage-View #phoneLinesContainer {
    margin: 40px auto 0;
    display: table; }
    #utilitiesPage-View #phoneLinesContainer .phoneLine {
      width: 360px;
      border: 1px solid #e1e1e1; }
      #utilitiesPage-View #phoneLinesContainer .phoneLine .phoneLineHeader {
        padding: 0 15px;
        height: 45px;
        line-height: 45px;
        background-color: #e1e1e1;
        color: #686868;
        font-weight: bold;
        font-size: 12.8px; }
      #utilitiesPage-View #phoneLinesContainer .phoneLine .phoneNumber {
        float: left;
        width: 65%;
        font-size: 19.2px;
        line-height: 50px;
        color: #686868;
        text-align: center; }
      #utilitiesPage-View #phoneLinesContainer .phoneLine .testLine button {
        float: left;
        width: 35%;
        font-size: 12.8px;
        line-height: 50px;
        color: #fff;
        text-align: center;
        height: 53px;
        border-radius: 0;
        background-color: #013778; }
    #utilitiesPage-View #phoneLinesContainer .phoneLine + .phoneLine {
      margin-left: 35px; }

body.lang-fr #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock#previousTestSection {
  width: 45%;
  vertical-align: 2px; }

body.lang-fr #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock#saveAsHtmlNetinf {
  width: 14%;
  vertical-align: 12px;
  margin-left: 10px; }

body.lang-fr #utilitiesPage-View form[name="utilities-netinf-form"] #utilities-netinf-fields div.formBlock:first-child {
  margin-left: 41px;
  vertical-align: 0; }

/* INNER MODAL WINDOW */
.flex-tab-container .flex-tab-header {
  display: flex;
  height: 70px;
  align-items: flex-end; }
  .flex-tab-container .flex-tab-header > .flex-tab-button {
    flex: 100px 1 1;
    line-height: 60px;
    text-align: center;
    font-size: 12.8px;
    color: #fff;
    background-color: #013778;
    cursor: pointer;
    position: relative; }
    .brand-virgin .flex-tab-container .flex-tab-header > .flex-tab-button {
      color: #333333;
      background-color: #EEEEEE; }
    .flex-tab-container .flex-tab-header > .flex-tab-button:not(.current) + .tab:not(.current) {
      border-left: 1px solid #001d5a; }
      .brand-virgin .flex-tab-container .flex-tab-header > .flex-tab-button:not(.current) + .tab:not(.current) {
        border-left: 1px solid #d7d7d7; }
    .flex-tab-container .flex-tab-header > .flex-tab-button.current {
      line-height: 70px;
      background-color: #00549a; }
      .brand-virgin .flex-tab-container .flex-tab-header > .flex-tab-button.current {
        height: 60px;
        line-height: 60px; }
      .brand-virgin .flex-tab-container .flex-tab-header > .flex-tab-button.current {
        color: #FFFFFF;
        background-color: #333333; }
      .flex-tab-container .flex-tab-header > .flex-tab-button.current::after {
        position: absolute;
        top: 10px;
        right: -10px;
        content: '';
        z-index: 1;
        display: block;
        -moz-opacity: 0.4;
        -khtml-opacity: 0.4;
        opacity: 0.4;
        border-color: transparent transparent transparent #001439;
        border-width: 0 0 59px 10px;
        border-style: solid; }
        .brand-virgin .flex-tab-container .flex-tab-header > .flex-tab-button.current::after {
          border-color: transparent transparent transparent transparent; }

.flex-tab-container .flex-tab-content:not(.current) {
  display: none !important; }

#wireless-settings {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch; }
  #wireless-settings .wireless-panel-row {
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-flow: row; }
  #wireless-settings .wireless-panel {
    flex: 0 0 33.33%;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    overflow: hidden; }
    #wireless-settings .wireless-panel > .wireless-panel-header {
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      align-items: center; }
    #wireless-settings .wireless-panel > .wireless-panel-content {
      flex: 1;
      overflow-y: auto;
      overflow-x: hidden; }
  #wireless-settings > * {
    margin-top: 15px; }
    #wireless-settings > *:first-child {
      margin-top: 0; }
  #wireless-settings .caption {
    width: 100%; }
  #wireless-settings input[type="text"], #wireless-settings select {
    width: 100%; }
  #wireless-settings input[type="checkbox"]:not(old) {
    position: absolute; }
  #wireless-settings input[type="checkbox"]:not(old) + label {
    margin: 0;
    padding: 0 0 0 22px;
    background: url(../../images/bell/ui/miniCheckbox-off.png) no-repeat left center;
    line-height: 17px; }
  #wireless-settings input[type="checkbox"]:not(old):checked + label {
    background: url(../../images/bell/ui/miniCheckbox-on.png) no-repeat left center; }
  #wireless-settings.advanced label {
    line-height: 17px;
    margin-bottom: 4px; }
  #wireless-settings.advanced input[type="text"], #wireless-settings.advanced select {
    padding: 10px 15px; }
  #wireless-settings.advanced .wireless-panel-content > * {
    margin: 6px 0; }
    #wireless-settings.advanced .wireless-panel-content > * > * {
      margin: 6px 0; }
  #wireless-settings.advanced .ssid :first-child {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center; }
  #wireless-settings.advanced .caption {
    padding: 0;
    margin: 4px 0 8px; }
  #wireless-settings.advanced .network-channel {
    display: flex;
    flex-direction: row; }
    #wireless-settings.advanced .network-channel > * {
      flex: 1 1 50%; }
  #wireless-settings.advanced .has-auto {
    display: flex;
    flex-direction: row;
    align-items: center; }
    #wireless-settings.advanced .has-auto > select {
      flex: 1; }
    #wireless-settings.advanced .has-auto > .auto {
      font-style: italic;
      margin-left: 5px;
      margin-right: 25px;
      color: #cccccc;
      width: 32px; }
  #wireless-settings .sliderRow {
    display: flex;
    flex-direction: row;
    align-items: center; }
    #wireless-settings .sliderRow > :first-child {
      flex: 1; }
    #wireless-settings .sliderRow > :last-child {
      padding-right: 8px; }
    #wireless-settings .sliderRow .slider {
      width: auto;
      margin: 8px 20px; }
  #wireless-settings .validation-msg-wrap {
    margin-top: 2px;
    padding: 0 5px;
    font-size: 0.85em;
    font-style: italic;
    color: #bd2025; }
  #wireless-settings .onOffToggle > input {
    position: absolute;
    right: 100%; }

#wireless-settings-header {
  display: flex;
  flex-flow: row;
  align-items: center;
  border-bottom: 1px solid #e1e1e1; }
  #wireless-settings-header > .flex-tab-header {
    flex: 0 0 50%; }
  #wireless-settings-header #plume-container {
    flex: 1; }

.with-overlay {
  position: relative; }
  .with-overlay::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    opacity: 0.5;
    z-index: 1; }
  .with-overlay > .with-overlay::after {
    display: none; }

#plume-container {
  margin-left: 50px;
  display: flex;
  align-items: center; }
  #plume-container > :first-child {
    flex: 1;
    margin-right: 10px; }
  #plume-container h3 {
    padding-bottom: 0;
    margin-bottom: 2px; }

#advanced-button-wrapper {
  margin-bottom: 20px; }
  #advanced-button-wrapper #advanced-settings {
    width: 200px; }

.wireless-panel-header {
  display: flex;
  flex-direction: row;
  flex: 0 0 35px;
  align-items: center; }
  .wireless-panel-header > :first-child {
    flex: 1; }

.wireless-panel {
  border-left: 1px solid #e1e1e1;
  padding: 0 10px; }
  .wireless-panel:first-child {
    border: none; }

#keep-common-container {
  margin-left: 50px; }

#wirelessSettingsPanels {
  position: relative;
  /**
   * Had to move the two_frequencies class up to the panels, so that it could be used to style the plume section of
   * the form. Ideally would have moved it up to the form itself (like plumeSupported and plumeEnabled), but this
   * would have broken the advanced settings form.
   */ }
  #wirelessSettingsPanels .mainMasterOverlay, #wirelessSettingsPanels .wifiNetworkContainer {
    position: relative; }
    #wirelessSettingsPanels .mainMasterOverlay.disabled:after, #wirelessSettingsPanels .wifiNetworkContainer.disabled:after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background-color: #fff;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
      /* IE 8 */
      filter: alpha(opacity=50);
      /* IE 5-7 */
      -moz-opacity: 0.5;
      /* Netscape */
      -khtml-opacity: 0.5;
      /* Safari 1.x */
      opacity: 0.5;
      /* Good browsers */
      display: block; }
    .disabled #wirelessSettingsPanels .mainMasterOverlay.disabled:after, .disabled #wirelessSettingsPanels .wifiNetworkContainer.disabled:after {
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      /* IE 8 */
      filter: alpha(opacity=0);
      /* IE 5-7 */
      -moz-opacity: 0;
      /* Netscape */
      -khtml-opacity: 0;
      /* Safari 1.x */
      opacity: 0;
      /* Good browsers */ }
  #wirelessSettingsPanels .modalHeader {
    height: 75px;
    overflow: visible; }
  #wirelessSettingsPanels #wirelessSettingsHeader {
    margin: -10px 0 10px 0;
    border-bottom: solid #e1e1e1 1px; }
    #wirelessSettingsPanels #wirelessSettingsHeader p {
      border-bottom: 1px solid #e1e1e1;
      padding-bottom: 20px;
      padding-top: 10px; }
  #wirelessSettingsPanels .wifiNetworkContainer h3.panelTitle {
    margin-top: 10px;
    padding-bottom: 0; }
  #wirelessSettingsPanels .wifiNetworkContainer .panelHeader {
    display: none; }
  #wirelessSettingsPanels #primaryWirelessSettings {
    display: block;
    float: left;
    max-width: 50%;
    border-right: 1px solid #e1e1e1;
    margin-right: 20px;
    padding-right: 10px; }
    #wirelessSettingsPanels #primaryWirelessSettings #masterToggle {
      margin-right: 15px; }
    #wirelessSettingsPanels #primaryWirelessSettings .panelSectionContainer {
      display: block;
      float: left;
      width: 100%; }
  #wirelessSettingsPanels #guestWirelessSettings .modalHeader h2 {
    display: block;
    padding-right: 90px; }
  #wirelessSettingsPanels #guestWirelessSettings h3.panelTitle {
    visibility: hidden; }
  #wirelessSettingsPanels #guestWirelessSettings .panelSectionContainer {
    width: 100%; }
  #wirelessSettingsPanels.two_frequencies .wifiNetworkContainer .panelHeader {
    display: block; }
  #wirelessSettingsPanels.two_frequencies .panelContent .colContentContainer {
    padding-top: 5px; }
  #wirelessSettingsPanels.two_frequencies #primaryWirelessSettings {
    min-width: 66%;
    padding-right: 0; }
    #wirelessSettingsPanels.two_frequencies #primaryWirelessSettings .panelSectionContainer {
      width: 49%; }
      #wirelessSettingsPanels.two_frequencies #primaryWirelessSettings .panelSectionContainer[data-frequency="2"] {
        border-left: 1px solid #e1e1e1;
        padding-left: 19px;
        margin-left: -4px;
        width: 50%; }
  #wirelessSettingsPanels.two_frequencies #guestWirelessSettings {
    max-width: 31%; }
  #wirelessSettingsPanels .securityType {
    display: none; }
  #wirelessSettingsPanels #guestWirelessSettings {
    display: block;
    float: left;
    width: 48%; }
    #wirelessSettingsPanels #guestWirelessSettings #guestToggle {
      position: absolute;
      right: 0; }
  #wirelessSettingsPanels #wirelessMasterOverlay {
    height: 339px;
    padding-top: 5px; }
  #wirelessSettingsPanels .modalHeader h2 {
    line-height: 27px; }
  #wirelessSettingsPanels .broadcast-ssid {
    display: none; }
  #wirelessSettingsPanels .panelContent label {
    line-height: 3.0625em; }
    #wirelessSettingsPanels .panelContent label.customLong {
      display: block; }
  #wirelessSettingsPanels .panelContent button.toggleAdvanced span {
    display: none; }
  #wirelessSettingsPanels .panelContent .advancedSettingsForm {
    display: none; }
  #wirelessSettingsPanels .panelContent[level="advanced"] button.toggleAdvanced span.hideAdvanced {
    display: inline; }
  #wirelessSettingsPanels .panelContent[level="advanced"] .advancedSettingsForm {
    display: block; }
  #wirelessSettingsPanels .panelContent[level="basic"] button.toggleAdvanced span.showAdvanced {
    display: inline; }
  #wirelessSettingsPanels input[type="text"], #wirelessSettingsPanels input[type="password"], #wirelessSettingsPanels input[type="number"], #wirelessSettingsPanels select {
    width: 260px; }

/**
 * Note that the plumeSupported and plumeEnabled classes are assigned to the form, because they affect more than just
 * the panels; for this reason they don't really fit in the panel block.
 */
.plumeSupported #wirelessSettingsPanels {
  /**
     * Override header height to accommodate the plume toggle. Ideally we wouldn't even have a fixed height header.
     */
  /**
     * French text wraps when we only have 50% of the screen, need to adjust the header.
     */ }
  .plumeSupported #wirelessSettingsPanels #wirelessSettingsHeader {
    height: 95px; }
  .lang-fr .plumeSupported #wirelessSettingsPanels:not(.two_frequencies) #wirelessSettingsHeader {
    height: 115px; }

#plumeContainer {
  border-top: 1px solid #e1e1e1;
  padding-top: 10px;
  /**
   * Adjust the heading to bring the description text in tighter requiring less vertical space.
   */ }
  #plumeContainer h3 {
    padding-bottom: 0;
    margin-bottom: 2px; }

.plumeEnabled {
  /**
   * Used to identify elements which disappear when plume is enabled.
   */ }
  .plumeEnabled .hideWhenPlumeEnabled {
    display: none; }

#advancedSettingsPanels {
  height: 525px;
  display: flex;
  flex-flow: row;
  flex-wrap: nowrap;
  align-items: stretch;
  margin: 0;
  margin-bottom: 0; }
  #advancedSettingsPanels > * {
    padding-left: 10px;
    margin-left: 10px;
    height: 100%;
    overflow: hidden;
    border-left: 1px solid #e1e1e1; }
  #advancedSettingsPanels > *:first-child {
    padding-left: 0;
    margin-left: 0;
    border-left: none; }
  #advancedSettingsPanels > #primaryWirelessSettings {
    flex: 1 1 66%; }
  #advancedSettingsPanels > #guestWirelessSettings {
    flex: 1 1 33%; }
  #advancedSettingsPanels .formBlock {
    margin: 0; }
    #advancedSettingsPanels .formBlock * {
      margin: 0; }
    #advancedSettingsPanels .formBlock label {
      line-height: 1.2em; }
  #advancedSettingsPanels input[type="checkbox"]:not(old) {
    position: absolute; }
  #advancedSettingsPanels input[type="checkbox"]:not(old) + label {
    margin: 0;
    padding: 0 0 0 22px;
    background: url(../../images/bell/ui/miniCheckbox-off.png) no-repeat left center;
    line-height: 17px; }
  #advancedSettingsPanels input[type="checkbox"]:not(old):checked + label {
    background: url(../../images/bell/ui/miniCheckbox-on.png) no-repeat left center; }
  #advancedSettingsPanels .onOffToggle {
    flex-grow: 0;
    flex-shrink: 0;
    position: relative; }
    #advancedSettingsPanels .onOffToggle.disabled:after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background-color: #fff;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
      /* IE 8 */
      filter: alpha(opacity=50);
      /* IE 5-7 */
      -moz-opacity: 0.5;
      /* Netscape */
      -khtml-opacity: 0.5;
      /* Safari 1.x */
      opacity: 0.5;
      /* Good browsers */
      display: block; }
    .disabled #advancedSettingsPanels .onOffToggle.disabled:after {
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      /* IE 8 */
      filter: alpha(opacity=0);
      /* IE 5-7 */
      -moz-opacity: 0;
      /* Netscape */
      -khtml-opacity: 0;
      /* Safari 1.x */
      opacity: 0;
      /* Good browsers */ }
  #advancedSettingsPanels .modalHeader, #advancedSettingsPanels .panelHeader {
    display: flex;
    flex-flow: row;
    flex-wrap: nowrap;
    align-items: center;
    margin-bottom: 6px; }
    #advancedSettingsPanels .modalHeader h2, #advancedSettingsPanels .modalHeader h3, #advancedSettingsPanels .panelHeader h2, #advancedSettingsPanels .panelHeader h3 {
      white-space: nowrap;
      flex: 1 0 auto;
      margin: 0;
      padding: 0; }
  #advancedSettingsPanels .modalHeader {
    height: 40px; }
  #advancedSettingsPanels .panelHeader {
    height: 30px; }
  #advancedSettingsPanels #primaryWirelessSettings, #advancedSettingsPanels #guestWirelessSettings {
    display: flex;
    flex-flow: column;
    flex-wrap: nowrap; }
    #advancedSettingsPanels #primaryWirelessSettings > *:first-child, #advancedSettingsPanels #guestWirelessSettings > *:first-child {
      flex: 0 0 auto; }
    #advancedSettingsPanels #primaryWirelessSettings > *:last-child, #advancedSettingsPanels #guestWirelessSettings > *:last-child {
      flex: 1 1 auto;
      overflow: hidden; }
    #advancedSettingsPanels #primaryWirelessSettings .modalHeader > *:last-child, #advancedSettingsPanels #guestWirelessSettings .modalHeader > *:last-child {
      margin-left: 50px; }
  #advancedSettingsPanels #primarySettingsPanels {
    display: flex;
    flex-flow: row;
    flex-wrap: nowrap;
    align-items: stretch; }
    #advancedSettingsPanels #primarySettingsPanels > * {
      flex: 1 1 50%;
      padding-left: 10px;
      margin-left: 10px;
      border-left: 1px solid #e1e1e1; }
    #advancedSettingsPanels #primarySettingsPanels > *:first-child {
      padding-left: 0;
      margin-left: 0;
      border-left: none; }
  #advancedSettingsPanels .panelSectionContainer {
    display: flex;
    flex-flow: column;
    flex-wrap: nowrap; }
    #advancedSettingsPanels .panelSectionContainer > *:first-child {
      flex: 0 0 auto; }
    #advancedSettingsPanels .panelSectionContainer > *:last-child {
      overflow-y: auto;
      flex: 1 1 100%; }
    #advancedSettingsPanels .panelSectionContainer .panelContentWrapper {
      overflow-y: auto; }
      #advancedSettingsPanels .panelSectionContainer .panelContentWrapper .panelContent {
        position: relative; }
        #advancedSettingsPanels .panelSectionContainer .panelContentWrapper .panelContent.disabled:after {
          content: '';
          position: absolute;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          background-color: #fff;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
          /* IE 8 */
          filter: alpha(opacity=50);
          /* IE 5-7 */
          -moz-opacity: 0.5;
          /* Netscape */
          -khtml-opacity: 0.5;
          /* Safari 1.x */
          opacity: 0.5;
          /* Good browsers */
          display: block; }
        .disabled #advancedSettingsPanels .panelSectionContainer .panelContentWrapper .panelContent.disabled:after {
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          /* IE 8 */
          filter: alpha(opacity=0);
          /* IE 5-7 */
          -moz-opacity: 0;
          /* Netscape */
          -khtml-opacity: 0;
          /* Safari 1.x */
          opacity: 0;
          /* Good browsers */ }
        #advancedSettingsPanels .panelSectionContainer .panelContentWrapper .panelContent.disabled:after {
          z-index: 2; }
    #advancedSettingsPanels .panelSectionContainer .formBlock {
      margin-bottom: 6px;
      position: relative; }
      #advancedSettingsPanels .panelSectionContainer .formBlock > * {
        margin-bottom: 5px; }
      #advancedSettingsPanels .panelSectionContainer .formBlock label {
        display: block; }
      #advancedSettingsPanels .panelSectionContainer .formBlock input, #advancedSettingsPanels .panelSectionContainer .formBlock select {
        width: 100%;
        padding: 13px; }
      #advancedSettingsPanels .panelSectionContainer .formBlock.broadcastSSID {
        position: absolute;
        right: 0; }
    #advancedSettingsPanels .panelSectionContainer .caption {
      padding: 0; }
    #advancedSettingsPanels .panelSectionContainer .radioDropdowns {
      display: flex;
      flex-flow: row;
      flex-wrap: nowrap; }
      #advancedSettingsPanels .panelSectionContainer .radioDropdowns > * {
        flex: 1 1 50%; }
      #advancedSettingsPanels .panelSectionContainer .radioDropdowns input[data-property="networkChannel"], #advancedSettingsPanels .panelSectionContainer .radioDropdowns select[data-property="networkChannel"] {
        width: 60%; }
      #advancedSettingsPanels .panelSectionContainer .radioDropdowns input[data-property="networkChannelBandwidth"], #advancedSettingsPanels .panelSectionContainer .radioDropdowns select[data-property="networkChannelBandwidth"] {
        width: 100%; }
      #advancedSettingsPanels .panelSectionContainer .radioDropdowns .autoValue {
        padding-left: 5px; }
    #advancedSettingsPanels .panelSectionContainer .sliderWrapper {
      overflow: visible;
      display: flex;
      flex-flow: row;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: center;
      margin-top: 10px; }
      #advancedSettingsPanels .panelSectionContainer .sliderWrapper > * {
        flex-grow: 0;
        flex-shrink: 0; }
      #advancedSettingsPanels .panelSectionContainer .sliderWrapper .sliderValue {
        text-align: right;
        width: 30px;
        margin-left: 20px; }
  #advancedSettingsPanels .network-settings {
    position: relative; }
    #advancedSettingsPanels .network-settings.disabled:after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background-color: #fff;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
      /* IE 8 */
      filter: alpha(opacity=50);
      /* IE 5-7 */
      -moz-opacity: 0.5;
      /* Netscape */
      -khtml-opacity: 0.5;
      /* Safari 1.x */
      opacity: 0.5;
      /* Good browsers */
      display: block; }
    .disabled #advancedSettingsPanels .network-settings.disabled:after {
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      /* IE 8 */
      filter: alpha(opacity=0);
      /* IE 5-7 */
      -moz-opacity: 0;
      /* Netscape */
      -khtml-opacity: 0;
      /* Safari 1.x */
      opacity: 0;
      /* Good browsers */ }
  #advancedSettingsPanels .disabled .network-settings.disabled:after {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    /* IE 8 */
    filter: alpha(opacity=0);
    /* IE 5-7 */
    -moz-opacity: 0;
    /* Netscape */
    -khtml-opacity: 0;
    /* Safari 1.x */
    opacity: 0;
    /* Good browsers */ }
  #advancedSettingsPanels.one-frequency #keepCommonOption {
    display: none; }
  #advancedSettingsPanels.one-frequency #5-0_1GHzSettings {
    display: none !important; }
  #advancedSettingsPanels.one-frequency > #primaryWirelessSettings {
    flex: 1 1 50%; }
  #advancedSettingsPanels.one-frequency > #guestWirelessSettings {
    flex: 1 1 50%; }

#wirelessSettingsRedirectButtons {
  clear: both;
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 108px; }
  #wirelessSettingsRedirectButtons button {
    width: 200px; }

.hidden {
  display: none !important; }

.brand-bellaliant #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) .resetText .redWarningIcon {
  margin-top: -3px; }

div#advancedTools-View {
  padding: 0 40px; }
  div#advancedTools-View div.intro {
    margin-bottom: 45px; }
    div#advancedTools-View div.intro p {
      color: #222222; }
  div#advancedTools-View .column.quarterCol {
    width: 22%; }
    div#advancedTools-View .column.quarterCol:not(:last-child) {
      margin-right: 35px; }
    div#advancedTools-View .column.quarterCol ul.navList li {
      border-bottom: 1px solid #e1e1e1;
      padding: 15px 15px 15px 5px; }
      div#advancedTools-View .column.quarterCol ul.navList li a {
        text-decoration: none;
        color: #686868; }
      div#advancedTools-View .column.quarterCol ul.navList li .arrow {
        width: 11px;
        height: 22px;
        float: right;
        background: transparent url("../../images/bell/ui/transferArrowBlue.png") no-repeat center;
        cursor: pointer; }
      div#advancedTools-View .column.quarterCol ul.navList li .onOffToggle {
        float: right;
        margin-right: -10px;
        margin-top: -6px; }

#Resets-Settings .resetSettings {
  margin-top: 100px; }
  #Resets-Settings .resetSettings .action {
    margin: 0 auto;
    width: 145px; }
  #Resets-Settings .resetSettings .subColumn {
    height: 92px; }
    #Resets-Settings .resetSettings .subColumn label {
      min-height: 32px; }
  #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) {
    height: 260px; }
    #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) .resetText {
      height: 120px;
      margin-top: 10px; }
      #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) .resetText .redWarningIcon {
        background-image: url("../../images/bell/ui/red_info.png");
        float: left;
        height: 37px;
        margin-left: 2px;
        margin-right: 12px;
        margin-top: 13px;
        width: 37px; }
      #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) .resetText p:not(.note) {
        font-size: 14px;
        padding-bottom: 15px; }
      #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) .resetText p.note {
        font-style: italic; }
        #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) .resetText p.note span {
          font-weight: bold; }
    #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) button {
      width: 145px;
      margin-top: 35px; }
      #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) button#resetSettings {
        width: 184px;
        margin-left: -24px; }
      #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) button#factoryReset {
        width: 165px;
        margin-left: -10px; }
    .brand-virgin #Resets-Settings .resetSettings .column.halfCol:not(.subColumn) button#resetSettings {
      width: 211px;
      margin-left: -43px; }

/* INNER MODAL WINDOW */
#Monitoring-View .tableContainer.diagnosticsTableContainer {
  padding: 0 25px;
  height: 470px;
  overflow-x: auto; }

#Monitoring-View #aligned-results {
  height: 170px;
  width: 100%; }
  #Monitoring-View #aligned-results .section {
    display: inline-block;
    float: left; }
    #Monitoring-View #aligned-results .section.memory {
      width: 370px;
      margin-right: 30px; }
      #Monitoring-View #aligned-results .section.memory .left {
        width: 50%;
        margin-top: 5px; }
        #Monitoring-View #aligned-results .section.memory .left:first-child {
          border-right: 1px solid #e1e1e1; }
        #Monitoring-View #aligned-results .section.memory .left .memory-inner-result p:first-child {
          margin-top: 5px; }
        #Monitoring-View #aligned-results .section.memory .left .memory-inner-result p {
          margin-left: 15px; }
    #Monitoring-View #aligned-results .section.average {
      width: 260px; }
    #Monitoring-View #aligned-results .section.remote-management {
      margin-left: 30px;
      width: 300px; }

#Monitoring-View .section {
  height: 160px; }
  #Monitoring-View .section label {
    font-weight: normal; }
  #Monitoring-View .section p, #Monitoring-View .section label {
    color: #222222; }
  #Monitoring-View .section .section-header {
    border-bottom: 1px solid #e1e1e1;
    display: block;
    padding: 10px 0; }
  #Monitoring-View .section .body .left {
    float: left; }
  #Monitoring-View .section .body .left:last-child p {
    padding: 0 20px; }
  #Monitoring-View .section .body p {
    padding: 0 3px; }
  #Monitoring-View .section .body .subtitle {
    font-weight: bold; }
  #Monitoring-View .section .body #remoteManagementSubtitle {
    margin-bottom: -10px;
    white-space: nowrap; }
  #Monitoring-View .section.memory p:first-child, #Monitoring-View .section.average p:first-child, #Monitoring-View .section.crash-history p:first-child {
    margin-top: 15px; }
  #Monitoring-View .section.memory p label, #Monitoring-View .section.average p label, #Monitoring-View .section.crash-history p label {
    line-height: 1.7em; }
  #Monitoring-View .section.cpu {
    width: 1000px;
    height: 120px; }
    #Monitoring-View .section.cpu .cpu-section {
      margin: 10px auto;
      width: 750px; }
      #Monitoring-View .section.cpu .cpu-section div, #Monitoring-View .section.cpu .cpu-section label {
        display: inline-block; }
    #Monitoring-View .section.cpu .cpu-progress {
      height: 22px;
      background: #e1e1e1 repeat scroll 0 0;
      border-radius: 10px;
      margin-left: 10px;
      margin-right: 20px;
      overflow: hidden;
      vertical-align: -5px;
      width: 585px; }
      #Monitoring-View .section.cpu .cpu-progress .cpu-current-progress {
        border-radius: 10px 0 0 10px;
        background: transparent linear-gradient(to bottom, #013778 0%, #013778 100%, #013778 100%) repeat scroll 0 0;
        height: 22px; }

#Monitoring-View #monitoringButtonContainer {
  margin: 0 auto 30px;
  width: 235px;
  /* BELLSBIG-2666 - Specific Mozilla Firefox override because of letter kerning and font rendering differences */ }
  #Monitoring-View #monitoringButtonContainer #startMonitoring {
    margin-left: 15px; }
  #Monitoring-View #monitoringButtonContainer button {
    width: 175px; }

@-moz-document url-prefix() {
  #Monitoring-View #monitoringButtonContainer button {
    width: 195px; } }
  .brand-virgin #Monitoring-View #monitoringButtonContainer button {
    width: 220px; }

#Monitoring-View #monitoring-process-table {
  margin-top: 10px; }
  #Monitoring-View #monitoring-process-table .section {
    height: 300px;
    width: 1000px; }
    #Monitoring-View #monitoring-process-table .section .body {
      margin-top: 5px; }
      #Monitoring-View #monitoring-process-table .section .body .processName {
        width: 378px; }
      #Monitoring-View #monitoring-process-table .section .body .processId {
        width: 100px; }
      #Monitoring-View #monitoring-process-table .section .body .processSize, #Monitoring-View #monitoring-process-table .section .body .processCPU, #Monitoring-View #monitoring-process-table .section .body .processPriority {
        width: 122px; }
      #Monitoring-View #monitoring-process-table .section .body .processState {
        width: 155px; }
      #Monitoring-View #monitoring-process-table .section .body table tbody {
        height: 200px; }
        #Monitoring-View #monitoring-process-table .section .body table tbody td.processState {
          width: 136px; }

#Monitoring-View #monitoring-crash-history {
  margin-top: 10px; }
  #Monitoring-View #monitoring-crash-history .section.crash-history {
    width: 1000px; }

#Monitoring-View #monitoring-ssh-enablement p {
  padding: 0; }

#Monitoring-View #monitoring-ssh-enablement #enable-ssh {
  margin-top: 15px; }
  #Monitoring-View #monitoring-ssh-enablement #enable-ssh > * {
    margin-top: 10px; }

#Monitoring-View #monitoring-ssh-enablement .sshFormRow {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: start;
  align-items: center; }
  #Monitoring-View #monitoring-ssh-enablement .sshFormRow > * {
    flex: 50% 1 1;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: start;
    align-items: center; }
  #Monitoring-View #monitoring-ssh-enablement .sshFormRow #sshEnabledBlock {
    position: relative; }
    #Monitoring-View #monitoring-ssh-enablement .sshFormRow #sshEnabledBlock.disabled:after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background-color: #fff;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
      /* IE 8 */
      filter: alpha(opacity=50);
      /* IE 5-7 */
      -moz-opacity: 0.5;
      /* Netscape */
      -khtml-opacity: 0.5;
      /* Safari 1.x */
      opacity: 0.5;
      /* Good browsers */
      display: block; }
    .disabled #Monitoring-View #monitoring-ssh-enablement .sshFormRow #sshEnabledBlock.disabled:after {
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      /* IE 8 */
      filter: alpha(opacity=0);
      /* IE 5-7 */
      -moz-opacity: 0;
      /* Netscape */
      -khtml-opacity: 0;
      /* Safari 1.x */
      opacity: 0;
      /* Good browsers */ }

#Monitoring-View #monitoring-ssh-enablement #confirmKeyStatus {
  display: inline-block;
  width: 30px;
  height: 30px;
  background: transparent url("../../images/bell/ui/checkmark_med.png") no-repeat center;
  visibility: hidden; }
  #Monitoring-View #monitoring-ssh-enablement #confirmKeyStatus.visible {
    visibility: visible; }

#Monitoring-View #monitoring-ssh-enablement label {
  font-weight: bold; }

#modemPrefereces-View {
  padding: 0 20px;
  margin-top: -10px;
  height: 545px;
  overflox-x: auto; }
  #modemPrefereces-View .column.halfCol {
    overflow-y: auto;
    height: 530px; }
  #modemPrefereces-View .column.halfCol:nth-child(1) {
    padding-right: 20px; }
  #modemPrefereces-View .column.halfCol:nth-child(2) {
    padding-left: 20px; }
  #modemPrefereces-View p.hint, #modemPrefereces-View .notificationSection p {
    margin-top: 10px; }
  #modemPrefereces-View form label {
    width: 220px; }
  #modemPrefereces-View #emailAndSMSForm input[type="text"] {
    width: 223px; }
  #modemPrefereces-View #emailAndSMSForm .extraInformation {
    font-style: italic;
    font-size: 10.4px;
    font-weight: normal;
    line-height: 1.75em;
    margin-top: 7px; }
  #modemPrefereces-View #adminCredentials label {
    width: 185px; }
  #modemPrefereces-View #adminCredentials input[type="password"] {
    width: 250px; }
  #modemPrefereces-View #adminCredentials, #modemPrefereces-View #passwordRecovery {
    margin-bottom: 15px; }
  #modemPrefereces-View #passwordRecovery {
    height: 282px; }
    #modemPrefereces-View #passwordRecovery .colContentContainer {
      padding: 15px; }
      #modemPrefereces-View #passwordRecovery .colContentContainer .notificationSection {
        margin-top: 30px; }
      #modemPrefereces-View #passwordRecovery .colContentContainer h3 {
        font-size: 15px;
        font-weight: bold;
        line-height: 0.8em;
        display: inline-block; }
      #modemPrefereces-View #passwordRecovery .colContentContainer .onOffToggle {
        margin-top: -7px; }
      #modemPrefereces-View #passwordRecovery .colContentContainer .topBorder {
        margin-bottom: 15px; }
  #modemPrefereces-View #timeZone {
    display: none; }
    #modemPrefereces-View #timeZone .formBlock {
      margin-top: -4px;
      margin-bottom: 34px; }
    #modemPrefereces-View #timeZone #currentTimeZone {
      width: 189px; }
  #modemPrefereces-View #led .colContentContainer {
    padding: 15px 0 15px; }
    #modemPrefereces-View #led .colContentContainer .formBlock {
      margin: 0 auto;
      width: 260px; }
      #modemPrefereces-View #led .colContentContainer .formBlock label {
        margin: 0;
        width: 105px; }
  #modemPrefereces-View #led .topBorder {
    border-bottom: 1px solid #e1e1e1; }

#WAN-Settings p.warning-text {
  border-bottom: 1px solid #e1e1e1;
  margin-bottom: 30px;
  padding-bottom: 15px;
  color: #db9501; }

#WAN-Settings .formCenter {
  margin: 165px auto;
  width: 483px; }
  #WAN-Settings .formCenter .hint {
    padding-left: 0;
    font-size: 12.8px;
    line-height: 4.0625em;
    color: #9b9b9b; }
  #WAN-Settings .formCenter #wanMode {
    width: 200px; }

body.splash {
  background-color: #00549a; }
  body.splash .splashPage {
    display: table; }
  body.splash .page {
    display: none; }

html.ua-desktop body.splash .splashPage {
  height: 100%;
  width: 100%; }

html.ua-desktop body.splash #splash-page-inner-inner-container {
  width: 500px; }

html.ua-mobile body.splash .splashPage {
  height: 100%;
  width: 100%; }

html.ua-mobile body.splash #splash-page-inner-inner-container {
  width: 50%; }

/* **** PAGE SPECIFIC STYLES **** */
.splashPage {
  /* These 3 lines center the inner inner container vertically in the viewport */
  display: table;
  position: absolute; }
  .splashPage #splash-page-inner-container {
    display: table-cell;
    vertical-align: middle; }
  .splashPage #splash-page-inner-inner-container {
    margin-left: auto;
    margin-right: auto; }
  .splashPage #modem-icon {
    background: url("../../images/bell/modem-icon-splash.png") no-repeat center;
    height: 183px; }
  .splashPage #modem-name, .splashPage .error-message {
    font-weight: normal;
    text-transform: none;
    color: white;
    text-align: center;
    margin: 20px auto; }
  .splashPage .activity-indicator {
    background: url("../../images/bell/init-activity-indicator.gif") no-repeat;
    width: 32px;
    height: 32px;
    margin: 30px auto; }
  .splashPage #bell-logo {
    width: 56px;
    height: 37px;
    margin: 130px auto 0 auto;
    background: url("../../images/bell/bell_logo.png") no-repeat; }

html.brand-virgin #bell-logo {
  background: url("../../images/bell/virgin_logo.png") no-repeat;
  width: 56px;
  height: 37px; }

html.brand-virgin #virgin-hh4k {
  background: url("../../images/bell/modem-icon-splash-hh4k.png") no-repeat center;
  height: 183px; }

html.brand-virgin #virgin-ubig {
  background: url("../../images/bell/modem-icon-splash-ubig.png") no-repeat center;
  height: 183px; }

html.brand-virgin #virgin-sbig {
  background: url("../../images/bell/modem-icon-splash-sbig.png") no-repeat center;
  height: 183px; }

#init-log {
  border: 2px solid black;
  display: none;
  left: 32px;
  position: absolute;
  right: 32px;
  top: 32px;
  z-index: 100; }
  #init-log div.header {
    background-color: black;
    color: white;
    font-size: 2em;
    height: 32px;
    padding: 0 8px; }
    #init-log div.header span.close {
      float: right; }
    #init-log div.header .title {
      color: white;
      font-size: 23px; }
  #init-log div.content {
    background-color: white;
    padding: 8px; }
    #init-log div.content table {
      width: 100%; }

#modem-name .hidden {
  visibility: hidden; }

/** Override */
/* *** OVERRIDES *** */
.clearBG {
  background-color: transparent !important; }

.whiteBG {
  background-color: #fff !important;
  color: #0069aa; }

.lightBlueBG {
  background-color: #00549a !important;
  color: #fff; }

.mediumBlueBG {
  background-color: #02215d !important;
  color: #fff; }

.darkBlueBG {
  background-color: #001439 !important;
  color: #fff; }

.greyBG {
  background-color: #c1c1c1 !important; }

.lightGreyBG {
  background-color: #e1e1e1 !important; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiX2JlbGwtdGhlbWUvYmVsbC1kZXNrdG9wLmNzcyIsInNvdXJjZXMiOlsiX2JlbGwtdGhlbWUvYmVsbC1kZXNrdG9wLnNjc3MiLCJfYmVsbC10aGVtZS9fdmFyaWFibGVzLnNjc3MiLCJfYmVsbC10aGVtZS9fZm9udHMuc2NzcyIsIi4uL2Rlc2t0b3AvZGVza3RvcC5zY3NzIiwiLi4vcGFydGlhbHMvX2Jhc2VTdHlsZXMuc2NzcyIsIi4uL3BhcnRpYWxzL19mbGV4Ym94TWl4aW5zLnNjc3MiLCIuLi9wYXJ0aWFscy9fb3RoZXJDU1MzTWl4aW5zLnNjc3MiLCIuLi9wYXJ0aWFscy9fZGV2aWNlSWNvbnMuc2NzcyIsIi4uL3BhcnRpYWxzL19yZXNldC5zY3NzIiwiLi4vcGFydGlhbHMvX2NvbW1vblN0eWxlcy5zY3NzIiwiLi4vcGFydGlhbHMvX2Zvcm1TdHlsZXMuc2NzcyIsIi4uL3BhcnRpYWxzL19tb2RhbFN0eWxlcy5zY3NzIiwiLi4vcGFydGlhbHMvX3RhYmxlU3R5bGVzLnNjc3MiLCIuLi9wYXJ0aWFscy9fdGFiU3R5bGVzLnNjc3MiLCIuLi9kZXNrdG9wL19kYXNoYm9hcmQuc2NzcyIsIi4uL2Rlc2t0b3AvX2Fib3V0LnNjc3MiLCIuLi9kZXNrdG9wL19hY2Nlc3NEZW5pZWQuc2NzcyIsIi4uL2Rlc2t0b3AvX2JhdHRlcnlCYWNrdXAuc2NzcyIsIi4uL2Rlc2t0b3AvX2RldmljZU5hbWUuc2NzcyIsIi4uL2Rlc2t0b3AvX2RoY3BTZXR0aW5ncy5zY3NzIiwiLi4vZGVza3RvcC9fZGlhZ25vc3RpY3Muc2NzcyIsIi4uL2Rlc2t0b3AvX2Rtei5zY3NzIiwiLi4vZGVza3RvcC9fZG5zU2V0dGluZ3Muc2NzcyIsIi4uL2Rlc2t0b3AvX2V0aGVybmV0LnNjc3MiLCIuLi9kZXNrdG9wL19tYWNGaWx0ZXJpbmcuc2NzcyIsIi4uL2Rlc2t0b3AvX21hbmFnZVdpRmkuc2NzcyIsIi4uL2Rlc2t0b3AvX21lc3NhZ2VzLnNjc3MiLCIuLi9kZXNrdG9wL19teU5ldHdvcmsuc2NzcyIsIi4uL2Rlc2t0b3AvX215VXNhZ2Uuc2NzcyIsIi4uL2Rlc2t0b3AvX25ldHdvcmtTZXR0aW5ncy5zY3NzIiwiLi4vZGVza3RvcC9fcG9ydEZvcndhcmRpbmcuc2NzcyIsIi4uL2Rlc2t0b3AvX3NlcnZpY2VzLnNjc3MiLCIuLi9wYXJ0aWFscy9fc2VydmljZXNNaXhpbnMuc2NzcyIsIi4uL2Rlc2t0b3AvX3NpdGVNYXAuc2NzcyIsIi4uL2Rlc2t0b3AvX3NwZWVkVGVzdC5zY3NzIiwiLi4vZGVza3RvcC9fc3RhdGlzdGljcy5zY3NzIiwiLi4vZGVza3RvcC9fc3lzdGVtTG9ncy5zY3NzIiwiLi4vZGVza3RvcC9fdXRpbGl0aWVzLnNjc3MiLCIuLi9kZXNrdG9wL193aXJlbGVzc1NldHRpbmdzLnNjc3MiLCIuLi9wYXJ0aWFscy9fbWl4aW5zLnNjc3MiLCIuLi9kZXNrdG9wL19hZHZhbmNlZFRvb2xzLnNjc3MiLCIuLi9kZXNrdG9wL19tb25pdG9yaW5nLnNjc3MiLCIuLi9kZXNrdG9wL19tb2RlbVByZWZlcmVuY2VzLnNjc3MiLCIuLi9kZXNrdG9wL193YW4uc2NzcyIsIi4uL3BhcnRpYWxzL19zcGxhc2guc2NzcyIsIi4uL3BhcnRpYWxzL19zdHlsZU92ZXJyaWRlcy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi8uLi9kZXNrdG9wL2Rlc2t0b3BcIjsiLCJAaW1wb3J0IFwiZm9udHNcIjtcblxuJGFzc2V0UGF0aDogXCIuLi8uLi9pbWFnZXMvYmVsbFwiO1xuXG4vKiBQUklNQVJZIENPTE9SUyAqL1xuJGJlbGwtbGlnaHQtYmx1ZTogIzAwNTQ5YTtcbiRiZWxsLW1lZGl1bS1saWdodC1ibHVlOiAjMDEzNzc4O1xuJGJlbGwtbWVkaXVtLWJsdWU6ICMwMjIxNWQ7XG4kYmVsbC1kYXJrLWJsdWU6ICMwMDE0Mzk7XG4kYmVsbC1saWdodGJsdWUtdGV4dDogIzAwNjlhYTtcbiRiZWxsLWRhcmtibHVlLXRleHQ6ICMwMDMwNzE7XG4kYmVsbC1kYXJrZ3JleS10ZXh0OiAjNjg2ODY4O1xuJGJlbGwtbWVkZ3JleS10ZXh0OiAjOTY5Njk2O1xuXG4kYmVsbC1ncmV5OiAjYzFjMWMxO1xuJGJlbGwtbGlnaHQtZ3JleTogI2UxZTFlMTtcbiRiZWxsLW1vZGFsLWhlYWRlci1kYXJrOiAjMjIyMjIyO1xuJGJlbGwtZGlzYWJsZWQtdGlsZS1ncmV5OiAjMkEyQTJBO1xuJGJlbGwtbGlnaHRncmV5LXRleHQ6ICNjY2NjY2M7XG4kYmVsbC1oZWFkZXItbGlnaHQtZ3JleTogI0Q4RDhEODtcblxuJG92ZXJyaWRlcy13aGl0ZUJHLWZvcmVncm91bmQ6ICRiZWxsLWxpZ2h0Ymx1ZS10ZXh0O1xuJG92ZXJyaWRlcy1saWdodEJsdWVCRy1mb3JlZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJG92ZXJyaWRlcy1tZWRpdW1CbHVlQkctZm9yZWdyb3VuZDogJGJlbGwtbWVkaXVtLWJsdWU7XG4kb3ZlcnJpZGVzLWRhcmtCbHVlQkctZm9yZWdyb3VuZDogJGJlbGwtZGFyay1ibHVlO1xuXG4kZGlzYWJsZWQtdGV4dDogI0JBQkFCQTtcbiRncmVlbi10ZXh0OiAjMDA5ZjAwO1xuJHJlZC10ZXh0OiAjRkYwMDAwO1xuJHllbGxvdy10ZXh0OiAjZGQ5NzAwO1xuXG4vKiBPVEhFUiBDT0xPUlMgKi9cblxuJG9yYW5nZTogI2Y1OWUwZDtcbiR3YXJuaW5nVGV4dDogI2RiOTUwMTtcbiRncmVlbjogIzc0ZDAxMDtcbiRkYXJrLWdyZXk6ICM0YTRhNGE7XG4kcG93ZGVyLWJsdWU6ICM0NjgwYjA7XG4kbGlnaHRlci1ncmV5OiAjZWZlZmVmO1xuJHNlbGVjdGVkLWhpZ2hsaWdodDogI0M4RENFQztcbiRsaWdodC1wb3dkZXItYmx1ZTogI0I2Q0ZFMztcbiRkYXJrLWdyZWVuOiAjMDA5ODAwO1xuJHJlZDogI2NjMDAwMTtcbiRtZWRpdW0tZ3JleTogIzk5OTk5OTtcbiRzdWNjZXNzX2ljb25fYmFja2dyb3VuZDogIzM1OGE0MjtcbiRlcnJvcl9pY29uX2JhY2tncm91bmQ6ICNkMDAyMWI7XG4kd2FybmluZ19pY29uX2JhY2tncm91bmQ6ICNlM2E4MjQ7XG4kZm9ybS1lcnJvcjogI2JkMjAyNTtcbiRmb3JtLXN1Y2Nlc3M6ICRkYXJrLWdyZWVuO1xuXG4vKiBBTEwgR0VORVJJQyBGT05UIFZBUklBQkxFUyBNVVNUIEdPIEhFUkUgKi9cblxuJGJhc2UtZm9udC1zaXplOiAxNnB4O1xuJGJhc2UtZm9udC1mYWNlOiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJhc2Utbm9ybWFsLWZvbnQtdHlwZTogQmVsbFNsaW1NZWRpdW1SZWd1bGFyLCAkYmFzZS1mb250LWZhY2U7XG4kYmFzZS1hbHQtZm9udC10eXBlOiBCZWxsU2xpbVNlbWlCb2xkUmVndWxhciwgJGJhc2UtZm9udC1mYWNlO1xuXG4kYmVsbC10aXRsZS10ZXh0LWZhbWlseTogJGJhc2Utbm9ybWFsLWZvbnQtdHlwZTtcblxuLyogVGhlIGZvbnQgc2l6ZXMgZm9yIGgxLWg2LiAqL1xuJGgxLWZvbnQtc2l6ZTogMiAgICAqICRiYXNlLWZvbnQtc2l6ZTtcbiRoMi1mb250LXNpemU6IDEuNSAgKiAkYmFzZS1mb250LXNpemU7XG4kaDMtZm9udC1zaXplOiAxLjE3ICogJGJhc2UtZm9udC1zaXplO1xuJGg0LWZvbnQtc2l6ZTogMSAgICAqICRiYXNlLWZvbnQtc2l6ZTtcbiRoNS1mb250LXNpemU6IDAuODMgKiAkYmFzZS1mb250LXNpemU7XG4kaDYtZm9udC1zaXplOiAwLjY3ICogJGJhc2UtZm9udC1zaXplO1xuLyogVGhlIGZvbnQgc2l6ZXMgZm9yIGgxLWg2LiAqL1xuJG1vZGFsLWgxLWZvbnQtc2l6ZTogMS41ICAgKiAkYmFzZS1mb250LXNpemU7XG4kbW9kYWwtaDItZm9udC1zaXplOiAxLjE3ICAqICRiYXNlLWZvbnQtc2l6ZTtcbiRtb2RhbC1oMy1mb250LXNpemU6IDEgICAgICogJGJhc2UtZm9udC1zaXplO1xuXG4vKiBNT0RBTCAqL1xuJGRlc2lnbk1vZGFsV2lkdGg6IDExNDU7XG4kZGVzaWduTW9kYWxIZWlnaHQ6IDcyMDtcbiRkZXNpZ25Db25maXJtTW9kYWxXaWR0aDogNzUwO1xuJGRlc2lnbkNvbmZpcm1Nb2RhbEhlaWdodDogMjYwO1xuJGRlc2lnblBsdW1lQ29uZmlybU1vZGFsSGVpZ2h0OiAyNjA7XG4kZGVzaWduU3VjY2Vzc0Vycm9yTW9kYWxXaWR0aDogNTkwO1xuJGRlc2lnblN1Y2Nlc3NFcnJvck1vZGFsSGVpZ2h0OiAxODA7XG4kbG9naW5Nb2RhbFdpZHRoOiA3MDA7XG4kbG9naW5Nb2RhbEhlaWdodDogMzUwO1xuJG1vZGFsLWNsb3NlLWljb24tZm9yZWdyb3VuZDogJGJlbGwtbGlnaHQtYmx1ZTtcbiRtb2RhbC1jbG9zZS1pY29uLWZvbnQ6IDQwcHg7XG4kbW9kYWwtY2xvc2UtaWNvbi1tYXJnaW4tcmlnaHQ6IC03cHg7XG4kbW9kYWwtY2xvc2UtaWNvbi1tYXJnaW4tdG9wOiA1cHg7XG4kbW9kYWwtY2xvc2UtaWNvbi13aWR0aDogMjBweDtcbiRtb2RhbC1jbG9zZS1pY29uLWhlaWdodDogMjBweDtcbiRtb2RhbC1jbG9zZS1pY29uLXBvaW50ZXI6IHBvaW50ZXI7XG4kbW9kYWxTdHlsZXMtaDMtcGFkZGluZy1ib3R0b206IDA7XG4kbW9kYWxTdHlsZXMtaDMtZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAxO1xuJG1vZGFsU3R5bGVzLWgzLWxpbmUtaGVpZ2h0OiAzMXB4O1xuJG1vZGFsU3R5bGVzLW1vZGFsVGlsZUxhYmVsLXBhZGRpbmctYm90dG9tOiAyMHB4O1xuJG1vZGFsU3R5bGVzLW1vZGFsVGlsZUxhYmVsLWZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMS4yNTtcblxuLyogWi1JbmRleCAqL1xuJG1vZGFsTGF5ZXJEZXB0aDogMTAwMDtcbiRtb2RhbExheWVyRmlyc3RQcmlvcml0eTogOTtcbiRtb2RhbExheWVyU2Vjb25kUHJpb3JpdHk6IDg7XG4kbW9kYWxMYXllclRoaXJkUHJpb3JpdHk6IDc7XG4kbW9kYWxMYXllckZvcnRoUHJpb3JpdHk6IDY7XG5cbiR0b3BQcmlvcml0eTogOTk5OTtcbiRjb21wb25lbnRCYXNlUHJpb3JpdHk6IDEwO1xuJGNvbXBvbmVudEZpcnN0UHJpb3JpdHk6IDEwO1xuJGNvbXBvbmVudFNlY29uZFByaW9yaXR5OiA5O1xuXG4vKiBEYXNodGlsZSB2YXJpYWJsZXMgKi9cbiRkYXNoYm9hcmQtYmFja2dyb3VuZDogJGJlbGwtbGlnaHQtZ3JleTtcbiRkYXNodGlsZS1mb3JlZ3JvdW5kOiB3aGl0ZTtcbiRkYXNodGlsZS1iYWNrZ3JvdW5kLWRlZmF1bHQ6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kZGFzaHRpbGUtYmFja2dyb3VuZC1pbmFjdGl2ZTogJGRhcmstZ3JleTtcbiRkYXNodGlsZS1iYWNrZ3JvdW5kLWFsZXJ0OiAkZGFyay1ncmV5O1xuJGRhc2h0aWxlLWJvcmRlci1kZWZhdWx0OiAkYmVsbC1saWdodC1ncmV5O1xuJGRhc2h0aWxlLWNvbDItYm9yZGVyOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiRkYXNodGlsZS1ob3Zlci1kZWZhdWx0OiAgJGJlbGwtbWVkaXVtLWJsdWU7XG4kZGFzaHRpbGUtaG92ZXItZm9yZWdyb3VuZC1kZWZhdWx0OiAkYmVsbC1ncmV5O1xuJGRhc2h0aWxlLWhvdmVyLWluYWN0aXZlOiAkYmVsbC1kaXNhYmxlZC10aWxlLWdyZXk7XG4kZGFzaHRpbGUtaG92ZXItYWxlcnQ6ICRiZWxsLWRpc2FibGVkLXRpbGUtZ3JleTtcbiRkYXNodGlsZS1zZXJ2aWNlLWhvdmVyLWJhY2tncm91bmQ6ICRiZWxsLWdyZXk7XG4kZGFzaHRpbGUtc2VydmljZS1ob3Zlci1mb3JlZ3JvdW5kOiBibGFjaztcbiRkYXNoYm9hcmQtd2hpdGVCRy10aWxlTGFiZWwtZm9yZWdyb3VuZDogJGJlbGwtbGlnaHRibHVlLXRleHQ7XG4kZGFzaGJvYXJkLXRpbGUtdGV4dC1wLWxpbmUtaGVpZ2h0OiAxLjUzODVlbTtcbiRkYXNoYm9hcmQtdGlsZS1sYWJlbC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRkYXNoYm9hcmQtdGlsZS1sYWJlbC10ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiRkYXNoYm9hcmQtaDEtZm9udC1zaXplOiAyZW07XG4kZGFzaGJvYXJkLXNlcnZpY2UtdGl0bGUtZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAxLjI7XG4kZGFzaGJvYXJkLXNlcnZpY2UtdGl0bGUtbGluZS1oZWlnaHQ6IDEuMWVtO1xuJGRhc2hib2FyZC1zdGF0dXNMaW5lLXRleHQtdHJhbnNmb3JtOiBub25lO1xuJGRhc2hib2FyZC1zdGF0dXNMaW5lLWZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuJGRhc2hib2FyZC10aWxlSW5mb051bS1mb250LXNpemU6IDIuMTg3NWVtO1xuJGRhc2hib2FyZC10aWxlLWxhYmVsLWZvbnQtc2l6ZTogMS4zNzVlbTtcbiRkYXNoYm9hcmQtdGlsZUluZm9OdW0tbGluZS1oZWlnaHQ6IDEuMGVtO1xuJGRhc2hib2FyZC10aWxlLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjBlbTtcbiRkYXNoYm9hcmQtTGFiZWxTdWJJbmZvLWZvbnQtc2l6ZTogMS4xNGVtO1xuJGRhc2hib2FyZC1MYWJlbFN1YkluZm8tbGluZS1oZWlnaHQ6IDEuMGVtO1xuXG4vKiBCdXR0b24gc3BlY2lmaWMgc3R5bGVzICovXG4kYnV0dG9uLWJvcmRlci1yYWRpdXM6IDE1cHg7XG4kYnV0dG9uLW1vYmlsZS1ib3JkZXItcmFkaXVzOiAyMHB4O1xuJGJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQ6ICRiZWxsLW1lZGl1bS1saWdodC1ibHVlO1xuJGJ1dHRvbi1kZWZhdWx0LWZvcmVncm91bmQ6ICNmZmY7XG4kYnV0dG9uLWRlZmF1bHQtYm9yZGVyOiAycHggc29saWQgJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kYnV0dG9uLWNhbmNlbC1iYWNrZ3JvdW5kOiAkYmVsbC1tZWRpdW0tbGlnaHQtYmx1ZTtcbiRidXR0b24tY2FuY2VsLWZvcmVncm91bmQ6ICNmZmY7XG4kYnV0dG9uLWNhbmNlbC1ib3JkZXI6IDJweCBzb2xpZCAkYmVsbC1tZWRpdW0tbGlnaHQtYmx1ZTtcbiRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogJGJlbGwtZ3JleTtcbiRidXR0b24tZGlzYWJsZWQtYm9yZGVyOiAkYmVsbC1saWdodC1ncmV5O1xuJGJ1dHRvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kOiAjZmZmO1xuJGJ1dHRvbi1ibHVlLW91dGxpbmUtZm9yZWdyb3VuZDogJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kYnV0dG9uLWJsdWUtb3V0bGluZS1iYWNrZ3JvdW5kOiAjZmZmO1xuJGJ1dHRvbi1ibHVlLW91dGxpbmUtYm9yZGVyOiAxcHggc29saWQgJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kYnV0dG9uLXdoaXRlLW91dGxpbmUtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4kYnV0dG9uLXdoaXRlLW91dGxpbmUtYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiRidXR0b24td2hpdGUtb3V0bGluZS1mb3JlZ3JvdW5kOiAjZmZmO1xuJGJ1dHRvbi13aGl0ZS1vdXRsaW5lLWRpc2FibGVkLWJhY2tncm91bmQ6ICRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDtcbiRidXR0b24td2hpdGUtb3V0bGluZS1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRidXR0b24tZGlzYWJsZWQtYm9yZGVyO1xuJGJ1dHRvbi13aGl0ZS1vdXRsaW5lLWRpc2FibGVkLWZvcmVncm91bmQ6ICRidXR0b24tZGlzYWJsZWQtZm9yZWdyb3VuZDtcbiRidXR0b24taGVhZGVyLWZvcmVncm91bmQ6ICRiZWxsLWRhcmtibHVlLXRleHQ7XG4kYnV0dG9uLWhlYWRlci1iYWNrZ3JvdW5kOiAjZmZmO1xuJGJ1dHRvbi1oZWFkZXItYm9yZGVyOiBudWxsO1xuJGJ1dHRvbi1oZWFkZXItZm9udC1zaXplOiAwLjllbTtcbiRidXR0b24taGVhZGVyLWhlaWdodDogbnVsbDtcbiRidXR0b24taGVhZGVyLWxvZ2luLXdpZHRoOiAxNzVweDtcbiRidXR0b24tZm9udC1zaXplOiAwLjllbTtcbiRidXR0b24tZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiRidXR0b24taGVpZ2h0OiAzMnB4O1xuJGJ1dHRvbi1tb2JpbGUtaGVpZ2h0OiA0MHB4O1xuJGJ1dHRvbi1tb2JpbGUtZm9udC1zaXplOiAxZW07XG4kYnV0dG9uLW1vYmlsZS1saW5lLWhlaWdodDogMzhweDtcbiRzZWFyY2gtc3VibWl0LWJ1dHRvbi1iYWNrZ3JvdW5kOiAkYmVsbC1kYXJrYmx1ZS10ZXh0O1xuXG4kc2xpZGVyLWJhY2tncm91bmQtZGVmYXVsdDogJGJlbGwtbGlnaHQtYmx1ZTtcbiRzbGlkZXItYmFja2dyb3VuZC1vcmlnaW4tZGVmYXVsdDogd2hpdGU7XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kLWRlZmF1bHQ6ICM1NTU1NTU7XG4kc2xpZGVyLWhhbmRsZS1hZnRlci1iYWNrZ3JvdW5kLWRlZmF1bHQ6IHdoaXRlO1xuXG4kc2lnbmFsLXN0cmVuZ3RoLWljb24td2lkdGg6IDI2cHg7XG4kc2lnbmFsLXN0cmVuZ3RoLWljb24taGVpZ2h0OiAyMHB4O1xuJHNpZ25hbC1zdHJlbmd0aC1iYWNrZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJHNpZ25hbC1zdHJlbmd0aC1mb3JlZ3JvdW5kOiAjZmZmO1xuJHNpZ25hbC1tZXRlci1iYWNrZ3JvdW5kOiAkYmVsbC1tZWRpdW0tYmx1ZTtcblxuLy8gVGhlIG9ubi9vZmYgdG9nZ2xlcyBhcmUgYSBiaXQgb2YgYSBuaWdodG1hcmUsIHRoZSB2aXJnaW4gc3R5bGluZyBhZGRlZCBhIHBoeXNpY2FsIGJvcmRlciBvbnRvIHRoZSB0b2dnbGVzIHdoaWNoXG4vLyBkaWQgbm90IGV4aXN0IGluIHRoZSBvcmlnaW5hbCB0b2dnbGUgKGV2ZW4gd2hlbiB0aGUgdG9nZ2xlIHdhcyBvbiBhIGRhcmtlciBiYWNrZ3JvdW5kIGFuZCB3YXMgZ2l2ZW4gdGhlIGFwcGVhcmFuY2Vcbi8vIG9mIGEgYm9yZGVyLiBBZGRpdGlvbmFsbHkgdmFyaW91cyBwb3NpdGlvbmluZyBmdWRnZSBmYWN0b3JzIHdlcmUgYWRkZWQgdG8gcG9zaXRpb25pbmcgb2YgdGhlIG9uL29mZiB0b2dnbGVzIHdoZW5cbi8vIHRoZXkgd2VyZSBmbG9hdGluZyB0byB0aGUgcmlnaHQgb2YgdmFyaW91cyBlbGVtZW50cy4gQmV0d2VlbiB0aGF0IGFuZCBtb3ZpbmcgdG8gdGhpcyB2YXJpYWJsZSBjb25maWd1cmF0aW9uIGZvclxuLy8gdGhlIHRvZ2dsZXMgaGFzIG1hZGUgcXVpdGUgYSBtZXNzLlxuLy8gTm90ZSBvbmUgY29tcHJvbWlzZSBtYWRlIGhlcmUgZm9yIHRoZSBCZWxsIFVJIHdhcyB0byBhY3R1YWxseSBhZGQgYSBwaHlzaWNhbCBib3JkZXIgdG8gKmFsbCogaW5jYXJuYXRpb25zIG9mXG4vLyB0aGUgdG9nZ2xlIHNvIHRoYXQgdGhlIGxheW91dCBpcyBjb25zaXN0ZW50IHJlZ2FyZGxlc3Mgb2YgYmFja2dyb3VuZCBjb2xvciwgYW5kIGNvbnNpc3RlbnQgd2l0aCB0aGUgbmV3IG9uL29mZlxuLy8gdG9nZ2xlIGRlZmluaXRpb24gd2hpY2ggdXNlcyBhbiBhY3R1YWwgYm9yZGVyIChhcyBvcHBvc2VkIHRvIHBvc2l0aW9uaW5nIG9mZnNldHMpIHRvIGFkZCBzZXBhcmF0aW9uIGJldHdlZW4gdGhlXG4vLyB0b2dnbGUgYW5kIHRoZSBiYWNrZ3JvdW5kIHdoZW4gbmVjZXNzYXJ5LlxuJG9uT2ZmVG9nZ2xlLWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWdyZXk7XG4kb25PZmZUb2dnbGUtZm9yZWdyb3VuZDogJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kb25PZmZUb2dnbGUtYm9yZGVyLWNvbG91cjogI2ZmZjtcbiRvbk9mZlRvZ2dsZS10ZXh0LWNvbG91cjogI2ZmZjtcbiRvbk9mZlRvZ2dsZS1ib3JkZXItcmFkaXVzOiAxM3B4O1xuJG9uT2ZmVG9nZ2xlLWJvcmRlci13aWR0aDogMnB4O1xuJG9uT2ZmVG9nZ2xlLWJvcmRlci1zdHlsZTogc29saWQgJG9uT2ZmVG9nZ2xlLWJvcmRlci13aWR0aCAkb25PZmZUb2dnbGUtYm9yZGVyLWNvbG91cjtcbiRvbk9mZlRvZ2dsZS1zbGlkZXItYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1ib3JkZXItcmFkaXVzO1xuJG9uT2ZmVG9nZ2xlLWhlaWdodDogMzFweDtcbiRvbk9mZlRvZ2dsZS1saW5lLWhlaWdodDogJG9uT2ZmVG9nZ2xlLWhlaWdodCAtIDIgKiAkb25PZmZUb2dnbGUtYm9yZGVyLXdpZHRoO1xuLy8gT24gR3JleSBCYWNrZ3JvdW5kXG4kb25PZmZUb2dnbGUtb25HcmV5LWJhY2tncm91bmQ6ICNmZmY7XG4kb25PZmZUb2dnbGUtb25HcmV5LWZvcmVncm91bmQ6ICRiZWxsLW1lZGl1bS1saWdodC1ibHVlO1xuJG9uT2ZmVG9nZ2xlLW9uR3JleS1ib3JkZXItY29sb3VyOiAkb25PZmZUb2dnbGUtb25HcmV5LWJhY2tncm91bmQ7XG4kb25PZmZUb2dnbGUtb25HcmV5LXRleHQtY29sb3VyOiAkYmVsbC1saWdodC1ncmV5O1xuLy8gT24gRGFyayBCYWNrZ3JvdW5kXG4kb25PZmZUb2dnbGUtb25EYXJrLWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWdyZXk7XG4kb25PZmZUb2dnbGUtb25EYXJrLWZvcmVncm91bmQ6ICRiZWxsLW1lZGl1bS1saWdodC1ibHVlO1xuJG9uT2ZmVG9nZ2xlLW9uRGFyay1ib3JkZXItY29sb3VyOiAkb25PZmZUb2dnbGUtb25EYXJrLWJhY2tncm91bmQ7XG4kb25PZmZUb2dnbGUtb25EYXJrLXRleHQtY29sb3VyOiAjZmZmO1xuLy8gVE9ETzogVGhpcyBzaG91bGQgYmUgY29uc2lzdGVudCBmb3IgYWxsIHRoZW1lcyAoc2tpbnMpLiBOb3RlIHRoYXQgYmVjYXVzZSB0aGUgdG9nZ2xlIHVzZXMgdGhlIGJvcmRlci1ib3ggbW9kZWwsIHRoZSB0b3RhbCBoZWlnaHQgaXMgdGhlIGNvbnRhaW5lciBoZWlnaHQuXG4kb25PZmZUb2dnbGUtbGVnYWN5LWhlaWdodDogMjdweDtcbiRvbk9mZlRvZ2dsZS1kZWx0YS1oZWlnaHQ6ICRvbk9mZlRvZ2dsZS1sZWdhY3ktaGVpZ2h0IC0gJG9uT2ZmVG9nZ2xlLWhlaWdodDtcblxuJHNwbGFzaC1iYWNrZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJHNwbGFzaC1tb2RlbS1pY29uLWhlaWdodDogMTgzcHg7XG4kc3BsYXNoLWRlZmF1bHQtbG9nby13aWR0aDogNTZweDtcbiRzcGxhc2gtZGVmYXVsdC1sb2dvLWhlaWdodDogMzdweDtcbiRzcGxhc2gtZGVmYXVsdC1sb2dvLWJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS9iZWxsX2xvZ28ucG5nJykgbm8tcmVwZWF0O1xuJGhlYWRlci1iYWNrZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJGhlYWRlci1ub3RpZmljYXRpb25zLWJhY2tncm91bmQ6ICRiZWxsLW1lZGl1bS1ibHVlO1xuJHR0LW1lbnUtYmFja2dyb3VuZDogJGJlbGwtbGlnaHQtYmx1ZTtcbiR0dC1tZW51LWFmdGVyLWJvcmRlci1jb2xvcjogJGJlbGwtbGlnaHQtYmx1ZTtcbiRoZWFkZXItbG9nby1oZWlnaHQ6IDQ0cHg7XG4kaGVhZGVyLWxvZ28tbWFyZ2luOiAxMHB4IDA7XG4kaGVhZGVyLWxvZ2luLWZvcmVncm91bmQ6ICRiZWxsLWRhcmtibHVlLXRleHQ7XG5cbiRtZXRlci11cGxvYWQtZm9yZWdyb3VuZDogJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kbWV0ZXItZG93bmxvYWQtZm9yZWdyb3VuZDogJGJlbGwtbGlnaHQtYmx1ZTtcbiRwZXJpb2QtY29udGFpbmVyLWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kdXNhZ2UtcGVyY2VudGFnZS1jb2xvcjogJGJlbGwtbGlnaHQtYmx1ZTtcbiRkZXZpY2UtdXNhZ2UtaGVhZGVyLWFmdGVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGJlbGwtbGlnaHQtYmx1ZTtcbiRteXVzYWdlLWN1c3RvbS1wZXJpb2QtYm9yZGVyLXRvcDogJHBvd2Rlci1ibHVlO1xuJGRldmljZS1kZXRhaWxzLWxvY2tlZC1mb3JlZ3JvdW5kOiAkYmVsbC1saWdodGJsdWUtdGV4dDtcbiRkZXZpY2UtZGV0YWlscy11bmxvY2tlZC1mb3JlZ3JvdW5kOiAkYmVsbC1saWdodGJsdWUtdGV4dDtcblxuJGNhbGVuZGFyLWNvbGhlYWQtZm9yZWdyb3VuZDogIzAwNTQ5YTtcbiRlZGl0LWV2ZW50LXRpdGxlLWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kZWRpdC1ldmVudC10aXRsZS1mb3JlZ3JvdW5kOiAjZmZmO1xuJGVkaXQtZXZlbnQtdGl0bGUtYm9yZGVyOiAkYmVsbC1saWdodC1ibHVlO1xuXG4kbmV0d29yay10eXBlLXNlY3Rpb24tYmFja2dyb3VuZDogJHBvd2Rlci1ibHVlO1xuJHNpZ25hbC1zdHJlbmd0aC1zZWN0aW9uLWJhY2tncm91bmQ6ICM2MTkwYjc7XG4kd2lmaS1oZWFsdGgtc3RhdHVzLWZvcmVncm91bmQ6ICRiZWxsLWxpZ2h0Ymx1ZS10ZXh0O1xuJG5ldHdvcmstbW9kZW0tY2lyY2xlLWJvcmRlcjogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWJsdWU7XG4kbmV0d29yay1vdmVycmlkZS1wYXJlbnQtY29udHJvbHMtZm9yZWdyb3VuZDogJGJlbGwtbGlnaHRibHVlLXRleHQ7XG4kbmV0d29yay1kaXNjb25uZWN0ZWQtZm9yZ2V0LWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kbmV0d29yay1kaXNjb25uZWN0ZWQtZm9yZ2V0LWJvcmRlcjogMnB4IHNvbGlkICRwb3dkZXItYmx1ZTtcbiRuZXR3b3JrLWRpc2Nvbm5lY3RlZC1mb3JnZXQtYm9yZGVyLXJhZGl1czogMTFweDtcbiRuZXR3b3JrLXNob3ctaGlkZS1iYWNrZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJG15TmV0d29yay1jdXJyZW50RGV2aWNlcy1mb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDEuMTtcbiRteU5ldHdvcmstbWFwSXRlbUNpcmNsZS1mb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuOTtcbiRteU5ldHdvcmstZGV2aWNlc1R5cGVMYWJlbC1mb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuODtcblxuJGFjY29yZGlvbi1zZWN0aW9uLWhlYWRlci1iYWNrZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJGFjY29yZGlvbi1ib3gtaGVhZGVyLWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kYWNjb3JkaW9uLXNlY3Rpb24tY29udGFpbmVyLWJvcmRlcjogc29saWQgMXB4ICRiZWxsLWRhcmstYmx1ZTtcblxuJG1hYy1maWx0ZXJpbmctYWxsLWRldmljZXMtYmFja2dyb3VuZDogJGJlbGwtbGlnaHQtYmx1ZTtcbiRtYWMtZmlsdGVyaW5nLWFkZC1tYW51YWxseS1iYWNrZ3JvdW5kOiAkYmVsbC1tZWRpdW0tbGlnaHQtYmx1ZTtcbiRtYWMtZmlsdGVyaW5nLWRldmljZS1ib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBvd2Rlci1ibHVlO1xuXG4kZG16LWFsbC1kZXZpY2VzLWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kZG16LWFsbC1kZXZpY2VzLWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgJHBvd2Rlci1ibHVlO1xuJGRtei1hbGwtZGV2aWNlcy1zZWxlY3RlZC1iYWNrZ3JvdW5kIDojMzM3N2FlO1xuJGRtei1tYWMtYWRkcmVzcy1iYWNrZ3JvdW5kOiAkYmVsbC1tZWRpdW0tbGlnaHQtYmx1ZTtcblxuJHBvcnQtZm9yd2FyZGluZy1oZWFkZXItYmFja2dyb3VuZDogJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kcG9ydC1mb3J3YXJkaW5nLXJ1bGUtYmFja2dyb3VuZDogJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kcG9ydC1mb3J3YXJkaW5nLXJ1bGUtYm9yZGVyOiAxcHggc29saWQgJHBvd2Rlci1ibHVlO1xuJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1mb3JlZ3JvdW5kOiAkYmVsbC1kYXJrYmx1ZS10ZXh0O1xuJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1iYWNrZ3JvdW5kOiAjZmZmO1xuJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1ib3JkZXI6IDFweCBzb2xpZCAkYmVsbC1ncmV5O1xuXG4kdXRpbGl0aWVzLXRlc3QtYnV0dG9uLWJhY2tncm91bmQ6ICRiZWxsLW1lZGl1bS1saWdodC1ibHVlO1xuXG4kY3B1LWN1cnJlbnQtcHJvZ3Jlc3MtYmFja2dyb3VuZDogJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG5cbiRiYXR0ZXJ5LW1ldGVyLW91dGVyLWJvcmRlcjogJGJlbGwtbGlnaHQtYmx1ZTtcbiRiYXR0ZXJ5LW1ldGVyLXRvcC1ib3JkZXI6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kYmF0dGVyeS1sZXZlbC1jb250YWluZXItYmFja2dyb3VuZDogJGJlbGwtbGlnaHQtYmx1ZTtcbiRiYXR0ZXJ5LWZvbnQtc2l6ZTogNDVweDtcbiRiYXR0ZXJ5LXRleHQtYWxpZ246IGNlbnRlcjtcblxuJHJlc2V0LWZvbnQtZmFtaWx5OiAkYmFzZS1hbHQtZm9udC10eXBlO1xuJHJlc2V0LXRleHQtZm9ybTogbm9uZTtcbiRyZXNldC1saW5lLWhlaWdodDogMS4yNWVtO1xuJHJlc2V0LXBhZGRpbmctYm90dG9tOiAxNXB4O1xuJHJlc2V0LWgyLWxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4kcmVzZXQtaDItcGFkZGluZy1ib3R0b206IDE1cHg7XG4kcmVzZXQtaDItZm9udC13ZWlnaHQ6IG5vbmU7XG4kcmVzZXQtYmFja2dyb3VuZDogJGJlbGwtbGlnaHQtYmx1ZSBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuJHJlc2V0LXJlZC13YXJuaW5nLWljb24tbWFyZ2luLXRvcDogMTNweDtcblxuJG1hbmFnZVdpZmktZm9udC1zaXplOiA0NXB4O1xuJG1hbmFnZVdpZmktZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiRtYW5hZ2VXaWZpLWZvbnQtZm9yZWdyb3VuZDogJGJlbGwtZGFya2dyZXktdGV4dDtcblxuJG1hbmFnZVVzYWdlLWZvbnQtd2VpZ2h0OiBib2xkO1xuJG1hbmFnZVVzYWdlLWZvbnQtc2l6ZTogMS41ZW07XG4kbWFuYWdlVXNhZ2UtdGV4dC1hbGlnbjogY2VudGVyO1xuXG4kc3BlZWRUZXN0LWZvbnQtc2l6ZTogMjhweDtcbiRzcGVlZFRlc3QtZm9udC1mYW1pbHk6ICRiYXNlLW5vcm1hbC1mb250LXR5cGU7XG4kc3BlZWRUZXN0LWxpbmUtaGVpZ2h0OiAzMHB4O1xuJHNwZWVkLXRlc3QtcmVzdWx0LWJvcmRlcjogMXB4IHNvbGlkICRwb3dkZXItYmx1ZTtcbiRzcGVlZC10ZXN0LXJlc3VsdC1kb3dubG9hZC1iYWNrZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJHNwZWVkLXRlc3QtcmVzdWx0LWxhdGVuY3ktYmFja2dyb3VuZDogJGJlbGwtbWVkaXVtLWxpZ2h0LWJsdWU7XG4kc3BlZWQtdGVzdC1zcGVlZC1mb3JlZ3JvdW5kOiAkYmVsbC1saWdodGJsdWUtdGV4dDtcbiRzcGVlZC10ZXN0LXNwZWVkLWxhYmVsLWZvcmVncm91bmQ6ICMwMDA7XG4kc3BlZWQtdGVzdC1jbGVhci1oaXN0b3J5LWJvcmRlci1yYWRpdXM6ICRidXR0b24tbW9iaWxlLWJvcmRlci1yYWRpdXM7XG5cbiRzaXRlbWFwLWZvbnQtd2VpZ2h0OiBib2xkO1xuJHNpdGVtYXAtaDItZm9udC1mYW1pbHk6ICRiYXNlLWFsdC1mb250LXR5cGU7XG4kc2l0ZW1hcC1oMi1saW5lLWhlaWdodDogMS4yNWVtO1xuJHNpdGVtYXAtaDItZm9yZWdyb3VuZDogJGJlbGwtZGFya2dyZXktdGV4dDtcbiRzaXRlbWFwLWgyLXRyYW5zZm9ybTogbm9ybWFsO1xuJHNpdGVtYXAtbXlVc2FnZS1wb3NpdGlvbjogMHB4O1xuXG4kc2Nyb2xsYmFyLWZvcmVncm91bmQ6IHJnYmEoMCwwLDAsMC4xNSk7XG4kc2Nyb2xsYmFyLWJhY2tncm91bmQ6ICNmZmY7XG4kc2Nyb2xsYmFyLWJvcmRlcjogc29saWQgI0NDQyAxcHg7XG5cbiRub3RpZmljYXRpb25zLW1lc3NhZ2UtZGV0YWlscy1mb3JlZ3JvdW5kOiAkYmVsbC1saWdodC1ibHVlO1xuJG1lc3NhZ2VzLWhpZGUtYnV0dG9uLWZvcmVncm91bmQ6ICRiZWxsLWRhcmtibHVlLXRleHQ7XG4kbWVzc2FnZXMtaGlkZS1idXR0b24tYm9yZGVyOiBzb2xpZCAycHggJGJlbGwtZGFya2JsdWUtdGV4dDtcblxuJGxvZ2luLWZvb3QtYmFja2dyb3VuZDogJGJlbGwtbGlnaHQtYmx1ZSBub25lIHJlcGVhdCBzY3JvbGwgMCAwO1xuJGZvb3Rlci1saW5rcy1mb3JlZ3JvdW5kOiBudWxsO1xuJGZvb3Rlci1saW5rcy1zcGFuLWZvcmVncm91bmQ6ICRiZWxsLWxpZ2h0Ymx1ZS10ZXh0O1xuJGZvb3Rlci1kYXJrQmx1ZS1iYWNrZ3JvdW5kOiAkYmVsbC1kYXJrLWJsdWU7XG5cbiR3aXJlbGVzcy1ib2R5LWJhY2tncm91bmQ6ICRiZWxsLWRhcmstYmx1ZTtcbiR3aXJlbGVzcy1zZWxlY3Rpb24tY29udGFpbmVyLWJhY2tncm91bmQ6ICRiZWxsLWxpZ2h0LWJsdWU7XG4kd2lyZWxlc3Mtc2VsZWN0aW9uLWNvbnRhaW5lci1zZWxlY3RlZC1iYWNrZ3JvdW5kOiAkYmVsbC1tZWRpdW0tYmx1ZTtcblxuJGhpZGVfc2VhcmNoX2ZpZWxkX2J1dHRvbl9zaXplOiAyNXB4O1xuJGhpZGVfc2VhcmNoX2ZpZWxkX2J1dHRvbl9tYXJnaW46IDRweDtcbiIsIi8qIEFERCBCRUxMIEZPTlRTICovXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdCZWxsU2xpbU1lZGl1bVJlZ3VsYXInO1xuXHRzcmM6IHVybCgnLi4vLi4vZm9udC9iZWxsL2JlbGxzbGltX21lZGl1bS13ZWJmb250LmVvdCcpO1xuXHRzcmM6IHVybCgnLi4vLi4vZm9udC9iZWxsL2JlbGxzbGltX21lZGl1bS13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG5cdFx0IHVybCgnLi4vLi4vZm9udC9iZWxsL2JlbGxzbGltX21lZGl1bS13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcblx0XHQgdXJsKCcuLi8uLi9mb250L2JlbGwvYmVsbHNsaW1fbWVkaXVtLXdlYmZvbnQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuXHRcdCB1cmwoJy4uLy4uL2ZvbnQvYmVsbC9iZWxsc2xpbV9tZWRpdW0td2ViZm9udC5zdmcjQmVsbFNsaW1NZWRpdW1SZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdCZWxsU2xpbVNlbWlCb2xkUmVndWxhcic7XG5cdHNyYzogdXJsKCcuLi8uLi9mb250L2JlbGwvYmVsbHNsaW1fc2VtaWJvbGQtd2ViZm9udC5lb3QnKTtcblx0c3JjOiB1cmwoJy4uLy4uL2ZvbnQvYmVsbC9iZWxsc2xpbV9zZW1pYm9sZC13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG5cdFx0IHVybCgnLi4vLi4vZm9udC9iZWxsL2JlbGxzbGltX3NlbWlib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLFxuXHRcdCB1cmwoJy4uLy4uL2ZvbnQvYmVsbC9iZWxsc2xpbV9zZW1pYm9sZC13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcblx0XHQgdXJsKCcuLi8uLi9mb250L2JlbGwvYmVsbHNsaW1fc2VtaWJvbGQtd2ViZm9udC5zdmcjQmVsbFNsaW1TZW1pQm9sZFJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59IiwiLy8gQ3VycmVudGx5LCBkb2luZyBhIHNjc3Mtc3R5bGUgaW1wb3J0IGNhdXNlcyBhIGZldyBwcm9ibGVtcyB3aXRoIGltYWdlIHBhdGhzLCBldGMgKHNpbmNlIHRoZSBpbmNsdWRlZCBmaWxlIGlzXG4vLyBzaW1wbHkgbWVyZ2VkIGludG8gdGhlIG91dHB1dCBDU1MgZmlsZSwgYW5kIHRoZSByZWxhdGl2ZSBVUkxzIGJyZWFrLi4uIG5vdCBzdXJlIEkgc2F3IHRoaXMgYmVoYXZpb3Igd2l0aCBMRVNTKS5cbi8vIE5vdGUgdGhhdCB3ZSBoYXZlIG5vdCByZWFsbHkgb3B0aW1pemVkIHRoZSBTQ1NTIGZpbGVzIGluIGFueSB3YXksIHdlIHZdanVzdCByZW5hbWVkIHRoZSBDU1MgZmlsZXMgd2l0aCB0aGUgU0NTU1xuLy8gZXh0ZW5zaW9uLlxuXG4vKiogQmFzZSBTdHlsZXMgKiovXG5AaW1wb3J0ICcuLi9wYXJ0aWFscy9iYXNlU3R5bGVzJztcblxuLyoqIFBhZ2VzICoqL1xuQGltcG9ydCAnZGFzaGJvYXJkJztcbkBpbXBvcnQgJ2Fib3V0JztcbkBpbXBvcnQgJ2FjY2Vzc0RlbmllZCc7XG5AaW1wb3J0ICdiYXR0ZXJ5QmFja3VwJztcbkBpbXBvcnQgJ2RldmljZU5hbWUnO1xuQGltcG9ydCAnZGhjcFNldHRpbmdzJztcbkBpbXBvcnQgJ2RpYWdub3N0aWNzJztcbkBpbXBvcnQgJ2Rteic7XG5AaW1wb3J0ICdkbnNTZXR0aW5ncyc7XG5AaW1wb3J0ICdldGhlcm5ldCc7XG5AaW1wb3J0ICdtYWNGaWx0ZXJpbmcnO1xuQGltcG9ydCAnbWFuYWdlV2lGaSc7XG5AaW1wb3J0ICdtZXNzYWdlcyc7XG5AaW1wb3J0ICdteU5ldHdvcmsnO1xuQGltcG9ydCAnbXlVc2FnZSc7XG5AaW1wb3J0ICduZXR3b3JrU2V0dGluZ3MnO1xuQGltcG9ydCAncG9ydEZvcndhcmRpbmcnO1xuQGltcG9ydCAnc2VydmljZXMnO1xuQGltcG9ydCAnc2l0ZU1hcCc7XG5AaW1wb3J0ICdzcGVlZFRlc3QnO1xuQGltcG9ydCAnc3RhdGlzdGljcyc7XG5AaW1wb3J0ICdzeXN0ZW1Mb2dzJztcbkBpbXBvcnQgJ3V0aWxpdGllcyc7XG5AaW1wb3J0ICd3aXJlbGVzc1NldHRpbmdzJztcbkBpbXBvcnQgJ2FkdmFuY2VkVG9vbHMnO1xuQGltcG9ydCAnbW9uaXRvcmluZyc7XG5AaW1wb3J0ICdtb2RlbVByZWZlcmVuY2VzJztcbkBpbXBvcnQgJ3dhbic7XG5AaW1wb3J0ICcuLi9wYXJ0aWFscy9zcGxhc2gnO1xuXG4vKiogT3ZlcnJpZGUgKi9cbkBpbXBvcnQgJy4uL3BhcnRpYWxzL3N0eWxlT3ZlcnJpZGVzJztcbiIsIi8qIEJBU0UgU1RZTEVTICovXG5cbkBpbXBvcnQgJ19mbGV4Ym94TWl4aW5zJztcbkBpbXBvcnQgJ19vdGhlckNTUzNNaXhpbnMnO1xuQGltcG9ydCAnX2RldmljZUljb25zJztcbkBpbXBvcnQgJ19yZXNldCc7XG5AaW1wb3J0ICdfY29tbW9uU3R5bGVzJztcbkBpbXBvcnQgJ19mb3JtU3R5bGVzJztcbkBpbXBvcnQgJ19tb2RhbFN0eWxlcyc7XG5AaW1wb3J0ICdfdGFibGVTdHlsZXMnO1xuQGltcG9ydCAnX3RhYlN0eWxlcyc7XG4iLCIvLyAvKiAqKioqKiBTVEFSVCBGTEVYQk9YIE1JWElOUyAqKioqKiAqL1xuXG4vLyAvKiBGTEVYIENPTlRBSU5FUiAqL1xuXG5AbWl4aW4gbWFrZS1mbGV4Ym94LWNvbnRhaW5lcigkdHlwZTogZmxleCkge1xuXG5cdEBpZiAkdHlwZSA9PSBpbmxpbmUge1xuXHRcdGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcblx0XHRkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4O1xuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHR9IEBlbHNlIHtcblx0XHRkaXNwbGF5OiAtd2Via2l0LWJveDsgICAgICAvKiBPTEQgLSBpT1MgNi0sIFNhZmFyaSAzLjEtNiAqL1xuXHRcdGRpc3BsYXk6IC1tb3otYm94OyAgICAgICAgIC8qIE9MRCAtIEZpcmVmb3ggMTktIChidWdneSBidXQgbW9zdGx5IHdvcmtzKSAqL1xuXHRcdGRpc3BsYXk6IC1tcy1mbGV4Ym94OyAgICAgIC8qIFRXRUVORVIgLSBJRSAxMCAqL1xuXHRcdGRpc3BsYXk6IC13ZWJraXQtZmxleDsgICAgIC8qIE5FVyAtIENocm9tZSAqL1xuXHRcdGRpc3BsYXk6IGZsZXg7ICAgICAgICAgICAgIC8qIE5FVywgU3BlYyAtIE9wZXJhIDEyLjEsIEZpcmVmb3ggMjArICovXG5cdH1cblx0XG59XG5cbkBtaXhpbiBzZXQtZmxleGJveC1vcmRlcigkdmFsdWUpIHtcblx0LXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJHZhbHVlOyAgIC8qIE9MRCAtIGlPUyA2LSwgU2FmYXJpIDMuMS02ICovXG5cdC1tb3otYm94LW9yZGluYWwtZ3JvdXA6ICR2YWx1ZTsgICAgICAvKiBPTEQgLSBGaXJlZm94IDE5LSAqL1xuXHQtbXMtZmxleC1vcmRlcjogJHZhbHVlOyAgICAgICAgICAgICAgLyogVFdFRU5FUiAtIElFIDEwICovXG5cdC13ZWJraXQtb3JkZXI6ICR2YWx1ZTsgICAgICAgICAgICAgICAvKiBORVcgLSBDaHJvbWUgKi9cblx0b3JkZXI6ICR2YWx1ZTsgICAgICAgICAgICAgICAgICAgICAgIC8qIE5FVywgU3BlYyAtIE9wZXJhIDEyLjEsIEZpcmVmb3ggMjArICovXG59XG5cbi8vIC8qICR0eXBlID0gcm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZSAqL1xuQG1peGluIHNldC1mbGV4Ym94LWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG5cdC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG5cdC1tb3otZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG5cdC1tcy1mbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcblx0ZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5cbi8vIC8qICR0eXBlID0gd3JhcCB8IG5vd3JhcCB8IHdyYXAtcmV2ZXJzZSAqL1xuQG1peGluIHNldC1mbGV4Ym94LXdyYXAoJHR5cGUpIHtcblx0LXdlYmtpdC1mbGV4LXdyYXA6ICR0eXBlO1xuXHQtbW96LWZsZXgtd3JhcDogJHR5cGU7XG5cdC1tcy1mbGV4LXdyYXA6ICR0eXBlO1xuXHRmbGV4LXdyYXA6ICR0eXBlO1xufVxuXG4vLyAvKiAkdHlwZSA9IHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCAqL1xuQG1peGluIHNldC1mbGV4Ym94LWp1c3RpZnkoJHR5cGUpIHtcblx0XG5cdEBpZiAoJHR5cGUgPT0gc3RhcnQpIG9yICgkdHlwZSA9PSBlbmQpIHtcblx0XHQtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC0rJHR5cGU7XG5cdFx0LW1zLWZsZXgtcGFjazogJHR5cGU7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LSskdHlwZTtcblx0fSBAZWxzZSBpZiAkdHlwZSA9PSBjZW50ZXIge1xuXHRcdC13ZWJraXQtanVzdGlmeS1jb250ZW50OiAkdHlwZTtcblx0XHQtbXMtZmxleC1wYWNrOiAkdHlwZTtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6ICR0eXBlO1xuXHR9IEBlbHNlIGlmICR0eXBlID09IHNwYWNlLWJldHdlZW4ge1xuXHRcdC13ZWJraXQtanVzdGlmeS1jb250ZW50OiAkdHlwZTtcblx0XHQtbXMtZmxleC1wYWNrOiBqdXN0aWZpZWQ7XG5cdFx0anVzdGlmeS1jb250ZW50OiAkdHlwZTtcblx0fSBAZWxzZSBpZiAkdHlwZSA9PSBzcGFjZS1hcm91bmQge1xuXHRcdC13ZWJraXQtanVzdGlmeS1jb250ZW50OiAkdHlwZTtcblx0XHQtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlO1xuXHRcdGp1c3RpZnktY29udGVudDogJHR5cGU7XG5cdH1cbn1cblxuLy8gLyogJHR5cGUgPSBzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaCAqL1xuQG1peGluIHNldC1mbGV4Ym94LWFsaWduKCR0eXBlKSB7XG5cblx0QGlmICgkdHlwZSA9PSBzdGFydCkgb3IgKCR0eXBlID09IGVuZCkge1xuXHRcdC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtKyR0eXBlO1xuXHRcdC1tcy1mbGV4LWFsaWduOiAkdHlwZTtcblx0XHRhbGlnbi1pdGVtczogZmxleC0rJHR5cGU7XG5cdH0gQGVsc2Uge1xuXHRcdC13ZWJraXQtYWxpZ24taXRlbXM6ICR0eXBlO1xuXHRcdC1tcy1mbGV4LWFsaWduOiAkdHlwZTtcblx0XHRhbGlnbi1pdGVtczogJHR5cGU7XG5cdH1cblxufVxuXG4vLyAvKiAkdHlwZSA9IHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwgc3BhY2UtYmV0d2VlbiB8IHNwYWNlLWFyb3VuZCB8IHN0cmV0Y2ggKi9cbkBtaXhpbiBzZXQtZmxleGJveC1hbGlnbi1jb250ZW50KCR0eXBlKSB7XG5cblx0QGlmICgkdHlwZSA9PSBzdGFydCkgb3IgKCR0eXBlID09IGVuZCkge1xuXHRcdC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC0rJHR5cGU7XG5cdFx0LW1zLWZsZXgtbGluZS1wYWNrOiAkdHlwZTtcblx0XHRhbGlnbi1jb250ZW50OiBmbGV4LSskdHlwZTtcblx0fSBAZWxzZSBpZiAoJHR5cGUgPT0gY2VudGVyKSBvciAoJHR5cGUgPT0gc3RyZXRjaCkge1xuXHRcdC13ZWJraXQtYWxpZ24tY29udGVudDogJHR5cGU7XG5cdFx0LW1zLWZsZXgtbGluZS1wYWNrOiAkdHlwZTtcblx0XHRhbGlnbi1jb250ZW50OiAkdHlwZTtcblx0fSBAZWxzZSBpZiAkdHlwZSA9PSBzcGFjZS1iZXR3ZWVuIHtcblx0XHQtd2Via2l0LWFsaWduLWNvbnRlbnQ6ICR0eXBlO1xuXHRcdC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeTtcblx0XHRhbGlnbi1jb250ZW50OiAkdHlwZTtcblx0fSBAZWxzZSBpZiAkdHlwZSA9PSBzcGFjZS1hcm91bmQge1xuXHRcdC13ZWJraXQtYWxpZ24tY29udGVudDogJHR5cGU7XG5cdFx0LW1zLWZsZXgtbGluZS1wYWNrOiBkaXN0cmlidXRlO1xuXHRcdGFsaWduLWNvbnRlbnQ6ICR0eXBlO1xuXHR9XG5cbn1cblxuLy8gLyogRkxFWCBJVEVNUyAqL1xuXG4vLyAgLyogJHdpZHRoUGVyY2VudCA9IHdpZHRoIHBlcmNlbnRhZ2UgZm9yIG9sZGVyIGJyb3dzZXJzLCAkdmFsdWVzID0gZmxleC1ncm93IGZsZXgtc2hyaW5rIGZsZXgtYmFzaXMgKi9cbkBtaXhpbiBzZXQtZmxleGl0ZW0tZmxleC13aXRoLXdpZHRoKCR3aWR0aFBlcmNlbnQsICR2YWx1ZXMuLi4pIHtcblx0XG5cdEBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMCB7XG5cdFx0JHZhbHVlczogMCAxIGF1dG87XG5cdH1cblx0XG5cdC13ZWJraXQtYm94LWZsZXg6ICR2YWx1ZXM7XHRcdFx0LyogT0xEIC0gaU9TIDYtLCBTYWZhcmkgMy4xLTYgKi9cblx0LW1vei1ib3gtZmxleDogJHZhbHVlcztcdFx0XHQvKiBPTEQgLSBGaXJlZm94IDE5LSAqL1xuXHR3aWR0aDogJHdpZHRoUGVyY2VudDtcdFx0XHRcdC8qIEZvciBvbGQgc3ludGF4LCBvdGhlcndpc2UgY29sbGFwc2VzLiAqL1xuXHQtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XHRcdFx0LyogQ2hyb21lICovXG5cdC1tcy1mbGV4OiAkdmFsdWVzO1x0XHRcdFx0LyogSUUgMTAgKi9cblx0ZmxleDogJHZhbHVlcztcdFx0XHRcdFx0LyogTkVXLCBTcGVjIC0gT3BlcmEgMTIuMSwgRmlyZWZveCAyMCsgKi9cblx0XG59XG5cbi8vIC8qICR2YWx1ZXMgPSBmbGV4LWdyb3cgZmxleC1zaHJpbmsgZmxleC1iYXNpcyAqL1xuQG1peGluIHNldC1mbGV4aXRlbS1mbGV4KCR2YWx1ZXMuLi4pIHtcblx0XG5cdEBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMCB7XG5cdFx0JHZhbHVlczogMCAxIGF1dG87XG5cdH1cblx0XG5cdC13ZWJraXQtYm94LWZsZXg6ICR2YWx1ZXM7XHRcdFx0LyogT0xEIC0gaU9TIDYtLCBTYWZhcmkgMy4xLTYgKi9cblx0LW1vei1ib3gtZmxleDogJHZhbHVlcztcdFx0XHQvKiBPTEQgLSBGaXJlZm94IDE5LSAqL1xuXHQtd2Via2l0LWZsZXg6ICR2YWx1ZXM7XHRcdFx0LyogQ2hyb21lICovXG5cdC1tcy1mbGV4OiAkdmFsdWVzO1x0XHRcdFx0LyogSUUgMTAgKi9cblx0ZmxleDogJHZhbHVlcztcdFx0XHRcdFx0LyogTkVXLCBTcGVjIC0gT3BlcmEgMTIuMSwgRmlyZWZveCAyMCsgKi9cbn1cblxuLy8gLyogJHR5cGUgPSBhdXRvIHwgc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2ggKi9cbkBtaXhpbiBzZXQtZmxleGl0ZW0tYWxpZ24tc2VsZigkdHlwZSkge1xuXHRcblx0QGlmICgkdHlwZSA9PSBzdGFydCkgb3IgKCR0eXBlID09IGVuZCkge1xuXHRcdC13ZWJraXQtYWxpZ24tc2VsZjogZmxleC0rJHR5cGU7XG5cdFx0LW1zLWZsZXgtaXRlbS1hbGlnbjogJHR5cGU7XG5cdFx0YWxpZ24tc2VsZjogZmxleC0rJHR5cGU7XG5cdH0gQGVsc2Uge1xuXHRcdC13ZWJraXQtYWxpZ24tc2VsZjogJHR5cGU7XG5cdFx0LW1zLWZsZXgtaXRlbS1hbGlnbjogJHR5cGU7XG5cdFx0YWxpZ24tc2VsZjogJHR5cGU7XG5cdH1cblx0XG59XG5cbi8vIC8qICoqKioqIEVORCBGTEVYQk9YIE1JWElOUyAqKioqKiAqLyIsIi8vIC8qKiogQ1JPU1MtQlJPV1NFUiBDU1MzIFNUWUxFUyAqKiovXG5cbi8vIC8qIEJPWC1TSVpJTkcgKi9cbkBtaXhpbiBib3gtc2l6aW5nKCR0eXBlKSB7XG5cdC13ZWJraXQtYm94LXNpemluZzogJHR5cGU7XG5cdC1tb3otYm94LXNpemluZzogJHR5cGU7XG5cdGJveC1zaXppbmc6ICR0eXBlO1xufVxuXG4vLyAvKiBCT1JERVItUkFESVVTICovXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzKSB7XG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblx0LW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXHQtbXMtYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblx0Ym9yZGVyLXJhZGl1czogJHJhZGl1cztcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMtdG9wLWxlZnQoJHJhZGl1cykge1xuXHQtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG5cdC1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiAkcmFkaXVzO1xuXHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cy10b3AtcmlnaHQoJHJhZGl1cykge1xuXHQtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuXHQtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6ICRyYWRpdXM7XG5cdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cy1ib3R0b20tbGVmdCgkcmFkaXVzKSB7XG5cdC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcblx0LW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6ICRyYWRpdXM7XG5cdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzLWJvdHRvbS1yaWdodCgkcmFkaXVzKSB7XG5cdC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG5cdC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDogJHJhZGl1cztcblx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5cbi8vIC8qIFVTRVItU0VMRUNUICovXG5AbWl4aW4gdXNlci1zZWxlY3QoJHZhbHVlKSB7XG4gIHVzZXItc2VsZWN0OiAkdmFsdWU7IC8qIENTUzMgKGxpdHRsZSB0byBubyBzdXBwb3J0KSAqL1xuICAtbXMtdXNlci1zZWxlY3Q6ICR2YWx1ZTsgLyogSUUgMTArICovXG4gIC1tb3otdXNlci1zZWxlY3Q6ICR2YWx1ZTsgLyogR2Vja28gKEZpcmVmb3gpICovXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICR2YWx1ZTsgLyogV2Via2l0IChTYWZhcmksIENocm9tZSkgKi9cbn1cbi8vIC8qIG9wdGlvbnM6IG5vbmUsIHRleHQsIGFsbCAqL1xuXG4vLyAvKiBPUEFDSVRZICovXG5AbWl4aW4gb3BhY2l0eSgkZGVjaW1hbFZhbHVlLCAkcGVyY2VudFZhbHVlKSB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9I3skcGVyY2VudFZhbHVlfSlcIjsgLyogSUUgOCAqL1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9I3skcGVyY2VudFZhbHVlfSk7IC8qIElFIDUtNyAqL1xuICAtbW96LW9wYWNpdHk6ICRkZWNpbWFsVmFsdWU7IC8qIE5ldHNjYXBlICovXG4gIC1raHRtbC1vcGFjaXR5OiAkZGVjaW1hbFZhbHVlOyAvKiBTYWZhcmkgMS54ICovXG4gIG9wYWNpdHk6ICRkZWNpbWFsVmFsdWU7IC8qIEdvb2QgYnJvd3NlcnMgKi9cbn1cblxuLy8gLyogQk9YIFNIQURPVyAqL1xuQG1peGluIGJveC1zaGFkb3coJHhkaXN0LCAkeWRpc3QsICRibHVyLCAkc3ByZWFkLCAkcmNvbCwgJGdjb2wsICRiY29sLCAkb3BhY2l0eSkge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICR4ZGlzdCAkeWRpc3QgJGJsdXIgJHNwcmVhZCByZ2JhKCRyY29sLCAkZ2NvbCwgJGJjb2wsICRvcGFjaXR5KTtcbiAgLW1vei1ib3gtc2hhZG93OiAgICAkeGRpc3QgJHlkaXN0ICRibHVyICRzcHJlYWQgcmdiYSgkcmNvbCwgJGdjb2wsICRiY29sLCAkb3BhY2l0eSk7XG4gIGJveC1zaGFkb3c6ICAgICAgICAgJHhkaXN0ICR5ZGlzdCAkYmx1ciAkc3ByZWFkIHJnYmEoJHJjb2wsICRnY29sLCAkYmNvbCwgJG9wYWNpdHkpO1xufVxuXG4vKiBJTk5FUiBNT0RBTCBXSU5ET1cgKi9cbkBtaXhpbiBpbm5lck1vZGFsKCR3aWR0aCwgJGhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoKCRoZWlnaHQgLyAyKSAqIC0xKStweDtcbiAgbWFyZ2luLWxlZnQ6ICgoJHdpZHRoIC8gMikgKiAtMSkrcHg7XG4gIHdpZHRoOiAjeyR3aWR0aH1weDtcbiAgaGVpZ2h0OiAjeyRoZWlnaHR9cHg7XG4gIC8vIFRPRE86IE5vdCBzdXJlIGlmIGl0J3Mgc2FmZSB0byBhZGp1c3QgdGhlIGhlaWdodCBvZiB0aGUgc3VjY2Vzcy1lcnJvci1pbmRpY2F0b3IgaGVyZSAocHJpbWFyaWx5IGJlY2F1c2Ugb2YgbW9iaWxlKSwgYnV0IGN1cnJlbnRseSBpdCBpcyBub3QgYmVpbmcgbWFkZSB0byBtYXRjaCB0aGUgaGVpZ2h0IG9mIHRoZSBkaWFsb2cuXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMHB4LCAycHgsIDVweCwgMnB4LCA1MCwgNTAsIDUwLCAwLjQpO1xufVxuXG5AbWl4aW4gaW5uZXJNb2RhbFBlcmNlbnRhZ2UoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDYyJSwgLTI1JSk7XG4gIHdpZHRoOiBwZXJjZW50YWdlKCR3aWR0aCk7XG4gIGhlaWdodDogcGVyY2VudGFnZSgkaGVpZ2h0KTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwcHgsIDJweCwgNXB4LCAycHgsIDUwLCA1MCwgNTAsIDAuNCk7XG59XG5cbiIsIi8qICoqKiogREVWSUNFIElDT05TICoqKiogKi9cblxuLmRldmljZUljb24sIC5kZXZpY2VJY29uU29saWQge1xuXHR3aWR0aDogNTdweDtcblx0aGVpZ2h0OiA1N3B4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi5tb2RlbUljb24ge1xuICB3aWR0aDogNTdweDtcbiAgaGVpZ2h0OiA1N3B4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi8qIERldmljZSBJbWFnZXMgKi9cbkBtaXhpbiBhc3NpZ24tZGV2aWNlLWltYWdlcygkZGV2aWNlKSB7XG5cbiAgXG4gIC5kZXZpY2VJY29uLiN7JGRldmljZX0ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLSN7JGRldmljZX1PdXRsaW5lLnBuZycpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLSN7JGRldmljZX1PdXRsaW5lLnN2ZycpO1xuICB9XG4gIC5kZXZpY2VJY29uLiN7JGRldmljZX0uc2VsZWN0ZWQsXG4gIC5kZXZpY2VJY29uU29saWQuI3skZGV2aWNlfSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tI3skZGV2aWNlfS5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi0jeyRkZXZpY2V9LnN2ZycpO1xuICB9XG4gIFxuICBbc3RhdHVzPVwiRElTQ09OTkVDVEVEXCJdLCBbc3RhdHVzPVwiRElTQUJMRURcIl0sIC5kZXZpY2UuZGlzYWJsZWQge1xuXG4gICAgLmRldmljZUljb24uI3skZGV2aWNlfSwgLmRldmljZUljb25Tb2xpZC4jeyRkZXZpY2V9IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLSN7JGRldmljZX1fZ3JleS5wbmcnKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLSN7JGRldmljZX1fZ3JleS5zdmcnKTtcbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gYXNzaWduLW1vZGVtLWljb25zKCRpY29uVHlwZSkge1xuXG4gIFxuICAubW9kZW1JY29uLiN7JGljb25UeXBlfSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tbW9kZW0tI3skaWNvblR5cGV9LnBuZycpO1xuICB9XG5cbn1cblxuXG5cbkBpbmNsdWRlIGFzc2lnbi1kZXZpY2UtaW1hZ2VzKGJsYWNrYmVycnkpO1xuQGluY2x1ZGUgYXNzaWduLWRldmljZS1pbWFnZXMoY2VsbC1waG9uZSk7XG5AaW5jbHVkZSBhc3NpZ24tZGV2aWNlLWltYWdlcyhkdmQtYmx1cmF5KTtcbkBpbmNsdWRlIGFzc2lnbi1kZXZpY2UtaW1hZ2VzKGdhbWUtY29uc29sZSk7XG5AaW5jbHVkZSBhc3NpZ24tZGV2aWNlLWltYWdlcyhndWVzdC1kZXZpY2UpO1xuQGluY2x1ZGUgYXNzaWduLWRldmljZS1pbWFnZXMobGFwdG9wKTtcbkBpbmNsdWRlIGFzc2lnbi1kZXZpY2UtaW1hZ2VzKHNtYXJ0cGhvbmUpO1xuQGluY2x1ZGUgYXNzaWduLWRldmljZS1pbWFnZXMocHJpbnRlcik7XG5AaW5jbHVkZSBhc3NpZ24tZGV2aWNlLWltYWdlcyhyb3V0ZXIpO1xuQGluY2x1ZGUgYXNzaWduLWRldmljZS1pbWFnZXMoYXYtcmVjZWl2ZXIpO1xuQGluY2x1ZGUgYXNzaWduLWRldmljZS1pbWFnZXModGFibGV0KTtcbkBpbmNsdWRlIGFzc2lnbi1kZXZpY2UtaW1hZ2VzKHNtYXJ0LXR2KTtcbkBpbmNsdWRlIGFzc2lnbi1kZXZpY2UtaW1hZ2VzKHVua25vd25EZXZpY2UpO1xuQGluY2x1ZGUgYXNzaWduLWRldmljZS1pbWFnZXModXNiKTtcbkBpbmNsdWRlIGFzc2lnbi1kZXZpY2UtaW1hZ2VzKGRlc2t0b3AtY29tcCk7XG5AaW5jbHVkZSBhc3NpZ24tZGV2aWNlLWltYWdlcyh2YXAtZGV2aWNlKTtcbkBpbmNsdWRlIGFzc2lnbi1kZXZpY2UtaW1hZ2VzKHVuY29uZmlndXJlZC1kZXZpY2UpO1xuQGluY2x1ZGUgYXNzaWduLWRldmljZS1pbWFnZXMoYmVsbC1zZXQtYm94KTtcblxuXG5AaW5jbHVkZSBhc3NpZ24tbW9kZW0taWNvbnMocG93ZXIpO1xuQGluY2x1ZGUgYXNzaWduLW1vZGVtLWljb25zKHdhbkxpbmspO1xuQGluY2x1ZGUgYXNzaWduLW1vZGVtLWljb25zKGhwbmEpO1xuQGluY2x1ZGUgYXNzaWduLW1vZGVtLWljb25zKGZpYmVJbnRlcm5ldCk7XG5AaW5jbHVkZSBhc3NpZ24tbW9kZW0taWNvbnMoZmliZVRWKTtcbkBpbmNsdWRlIGFzc2lnbi1tb2RlbS1pY29ucyh0b3RhbENvbm5lY3QpO1xuQGluY2x1ZGUgYXNzaWduLW1vZGVtLWljb25zKHdpZmkpO1xuQGluY2x1ZGUgYXNzaWduLW1vZGVtLWljb25zKGJyaWdodG5lc3NDb250cm9sKTtcbkBpbmNsdWRlIGFzc2lnbi1tb2RlbS1pY29ucyh3cHMpO1xuQGluY2x1ZGUgYXNzaWduLW1vZGVtLWljb25zKHBhc3N3b3JkUmVjb3ZlcnkpO1xuQGluY2x1ZGUgYXNzaWduLW1vZGVtLWljb25zKHBhc3N3b3JkUmVjb3ZlcnkyKTtcbkBpbmNsdWRlIGFzc2lnbi1tb2RlbS1pY29ucyhpbmZvKTtcbkBpbmNsdWRlIGFzc2lnbi1tb2RlbS1pY29ucyh3cHMyKTtcbiIsIi8qICoqKiBSRVNFVCBTVFlMRVMgKioqICovXG5cbioge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG59XG5cbmh0bWwge1xuXHRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcblx0Zm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFjZTtcblx0Ly8gTm90IHN1cmUgaWYgdGhpcyBpcyBzdGlsbCBuZWVkZWQsIGFuZCBpdCdzIHRlY2huaWNhbGx5IGluYXBwcm9wcmlhdGUgdG8gYmUgaW4gYSByZXNldCBDU1MgZmlsZS4gT24gbW9iaWxlIHRoaXNcblx0Ly8gbXVzdCBiZSBvdmVycmlkZGVuIHRvIHByZXZlbnQgdGhlIEdVSSBmcm9tIGJlaW5nIHVubmVjZXNzYXJpbHkgc3RyZXRjaGVkLlxuXHRtaW4td2lkdGg6IDUxMHB4O1xufVxuXG5ib2R5IHtcblx0Zm9udC1zaXplOiAxZW07XG5cdGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cblx0YXJ0aWNsZSxcblx0YXNpZGUsXG5cdGRldGFpbHMsXG5cdGZpZ2NhcHRpb24sXG5cdGZpZ3VyZSxcblx0Zm9vdGVyLFxuXHRoZWFkZXIsXG5cdGhncm91cCxcblx0bWFpbixcblx0bWVudSxcblx0bmF2LFxuXHRzZWN0aW9uLFxuXHRzdW1tYXJ5IHtcblx0ICBkaXNwbGF5OiBibG9jaztcblx0fVxuXG5oMSB7ICRmb250LXNpemU6ICRoMS1mb250LXNpemU7IH1cbmgyIHsgJGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTsgfVxuaDMgeyAkZm9udC1zaXplOiAkaDMtZm9udC1zaXplOyB9XG5oNCB7ICRmb250LXNpemU6ICRoNC1mb250LXNpemU7IH1cbmg1IHsgJGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxuaDYgeyAkZm9udC1zaXplOiAkaDYtZm9udC1zaXplOyB9XG5cbmgxIHtcblx0Zm9udC1mYW1pbHk6ICRyZXNldC1mb250LWZhbWlseTtcblx0dGV4dC10cmFuc2Zvcm06ICRyZXNldC10ZXh0LWZvcm07XG5cdGxpbmUtaGVpZ2h0OiAkcmVzZXQtbGluZS1oZWlnaHQ7XG5cdHBhZGRpbmctYm90dG9tOiAkcmVzZXQtcGFkZGluZy1ib3R0b207XG59XG5cbmgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdGZvbnQtZmFtaWx5OiAkYmFzZS1hbHQtZm9udC10eXBlO1xuXHRsaW5lLWhlaWdodDogJHJlc2V0LWgyLWxpbmUtaGVpZ2h0O1xuXHRwYWRkaW5nLWJvdHRvbTogJHJlc2V0LWgyLXBhZGRpbmctYm90dG9tO1xuXHRmb250LXdlaWdodDogJHJlc2V0LWgyLWZvbnQtd2VpZ2h0O1xufVxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuICovXG5cbmIsIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5uYXYgdWwsIG5hdiBvbCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuICB9XG4gIFxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCwgdGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiLyogKioqIEZMT0FUUyAqKiogKi9cblxuLmZsb2F0IHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG4uZmxvYXRSaWdodCB7XG5cdGZsb2F0OiByaWdodDtcbn1cbi5ub0Zsb2F0IHtcblx0ZmxvYXQ6IG5vbmU7XG59XG4uY2xlYXJGbG9hdCB7XG5cdGZsb2F0OiBub25lO1xuXHRjbGVhcjogYm90aDtcbn1cbi5hbGlnbi1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4uZmxvYXRDaGlsZHJlbiB7XG5cblx0PiAqIHtcblx0XHRmbG9hdDogbGVmdDtcblx0fVxuXG5cdCY6YWZ0ZXIgey8qLCAqOmxhc3QtY2hpbGQ6YWZ0ZXIgeyovXG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdGhlaWdodDogMDtcblx0XHR3aWR0aDogMDtcblx0XHRjbGVhcjogYm90aDtcblx0fVxufVxuLmNsZWFyQ2hpbGRyZW46YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRoZWlnaHQ6IDA7XG5cdFx0Y2xlYXI6IGJvdGg7XG59XG5cbi5jbGVhcmZpeCB7XG5cdHdpZHRoOiAwO1xuXHRoZWlnaHQ6IDA7XG5cdGJvcmRlcjogMDtcblx0Zm9udC1zaXplOiAwO1xuXHRjbGVhcjogYm90aDtcbn1cblxuXG4vKiAqKiogTVVMVEktRUxFTUVOVFMgU1RZTEVTICoqKiAqL1xuXG5idXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhLCAuZHJvcERpdiB7XG5cdGNvbG9yOiBpbmhlcml0O1xuXHRmb250OiBpbmhlcml0O1xuXHRwYWRkaW5nOiAwIDEuNWVtO1xufVxuXG5idXR0b24sIC5kcm9wRGl2IHtcblx0Ym9yZGVyOiAwO1xuXHRmb250LXNpemU6ICRidXR0b24tZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcblx0bWluLXdpZHRoOiAxMTVweDtcblx0aGVpZ2h0OiAzMnB4O1xuXHRsaW5lLWhlaWdodDogMzJweDtcbn1cblxuXG4vKiAqKiogQlVUVE9OUyAqKiogKi9cblxuYnV0dG9uIHtcblx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnV0dG9uLWJvcmRlci1yYWRpdXMpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdCY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAmLmNlbnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJi50b3BTcGFjZSB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxuXG59XG5cbi8qIEJVVFRPTlMgKi9cbmJ1dHRvbiB7XG4gIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRlZmF1bHQtYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkYnV0dG9uLWRlZmF1bHQtYm9yZGVyO1xuICBjb2xvcjogJGJ1dHRvbi1kZWZhdWx0LWZvcmVncm91bmQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5idXR0b24uY2FuY2VsLCBidXR0b24ud2hpdGUsIC5zbWFsbERpdkJ1dHRvbi53aGl0ZSAge1xuICAvLyBUT0RPOiBBbGwgY29tbW9uIGJhc2Ugc3R5bGVzIHNob3VsZCBiZSBwYXJ0IG9mIGJ1dHRvbiAoZS5nLiBmb250LXNpemUsIGZvbnQtd2VpZ2h0LCBoZWlnaHQpXG4gIGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICBoZWlnaHQ6ICRidXR0b24taGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNhbmNlbC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRidXR0b24tY2FuY2VsLWJvcmRlcjtcbiAgY29sb3I6ICRidXR0b24tY2FuY2VsLWZvcmVncm91bmQ7XG5cbn1cbmJ1dHRvbi5ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcbiAgY29sb3I6ICRiZWxsLWRhcmtncmV5LXRleHQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cbmJ1dHRvbi5ibHVlT3V0bGluZSB7XG4gIC8vIFRPRE86IEFsbCBjb21tb24gYmFzZSBzdHlsZXMgc2hvdWxkIGJlIHBhcnQgb2YgYnV0dG9uIChlLmcuIGZvbnQtc2l6ZSwgZm9udC13ZWlnaHQsIGhlaWdodClcbiAgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XG4gIGhlaWdodDogJGJ1dHRvbi1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYmx1ZS1vdXRsaW5lLWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGJ1dHRvbi1ibHVlLW91dGxpbmUtYm9yZGVyO1xuICBjb2xvcjogJGJ1dHRvbi1ibHVlLW91dGxpbmUtZm9yZWdyb3VuZDtcbn1cbmJ1dHRvbi5ibHVlT3V0bGluZTpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24td2hpdGUtb3V0bGluZS1kaXNhYmxlZC1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogJGJ1dHRvbi13aGl0ZS1vdXRsaW5lLWRpc2FibGVkLWJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICBjb2xvciA6ICRidXR0b24td2hpdGUtb3V0bGluZS1kaXNhYmxlZC1mb3JlZ3JvdW5kICFpbXBvcnRhbnQ7XG59XG5idXR0b24ud2hpdGVPdXRsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi13aGl0ZS1vdXRsaW5lLWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGJ1dHRvbi13aGl0ZS1vdXRsaW5lLWJvcmRlcjtcbiAgY29sb3I6ICRidXR0b24td2hpdGUtb3V0bGluZS1mb3JlZ3JvdW5kO1xufVxuYnV0dG9uLndoaXRlT3V0bGluZTpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24td2hpdGUtb3V0bGluZS1kaXNhYmxlZC1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogJGJ1dHRvbi13aGl0ZS1vdXRsaW5lLWRpc2FibGVkLWJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICBjb2xvciA6ICRidXR0b24td2hpdGUtb3V0bGluZS1kaXNhYmxlZC1mb3JlZ3JvdW5kICFpbXBvcnRhbnQ7XG59XG4uYm94SGVhZGVyIGJ1dHRvbiB7XG4gIGhlaWdodDogMzFweDtcbiAgbGluZS1oZWlnaHQ6IDMxcHg7XG59XG4uYnJhbmQtdmlyZ2luICYgI25vIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNhbmNlbC1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogJGJ1dHRvbi1jYW5jZWwtYm9yZGVyO1xuICAgIGNvbG9yOiAkYnV0dG9uLWNhbmNlbC1mb3JlZ3JvdW5kO1xufVxuXG5cbi5zbWFsbERpdkJ1dHRvbiB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgcGFkZGluZzogMnB4IDE1cHg7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xufVxuXG4uYnV0dG9uQ29udGFpbmVyIHtcblx0YnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdG1hcmdpbi1yaWdodDogMjVweDtcblx0fVxufVxuLmJ1dHRvbkNvbnRhaW5lci5vbmVQZXJMaW5lIHtcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbi5idXR0b25Db250YWluZXIuc3RhbmRhbG9uZSB7XG5cdHBhZGRpbmctdG9wOiA0MHB4O1xufVxuLmJ1dHRvbkNvbnRhaW5lci5jZW50ZXJCdXR0b25zIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cbi8qICoqKiBMSVNUUyAqKiogKi9cblxudWwge1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gfVxudWwuaW5saW5lSXRlbXMge1xuXG5cdGxpIHtcblx0XHRmbG9hdDogbGVmdDtcblx0fVxuXG59XG5cbnVsLmJ1bGxldHMge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcblxuICB1bC5idWxsZXRzIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTtcbiAgfVxuXG59XG5cbnVsIHVsIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vKiBERVZJQ0UgSUNPTlMgTElTVCAqL1xuXG51bC5kZXZpY2VJY29ucyBsaSB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHQmOm5vdCguc2VsZWN0ZWQpIHtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdH1cbn1cbnVsLmRldmljZUljb25zLmlubGluZUl0ZW1zLndpZGUge1xuXHR3aWR0aDogNDIwcHg7XG59XG51bC5kZXZpY2VJY29ucy5pbmxpbmVJdGVtcy5uYXJyb3cge1xuXHR3aWR0aDogMzU1cHg7XG59XG5cblxuXG4vKiAqKiogQ09NTU9OIFVJIEZFQVRVUkVTICoqKiAqL1xuXG4vLyBUaGlzIGlzIHRoZSBiYXIgYXQgdGhlIGJvdHRvbSBvZiB0aGUgbW9kYWwgd2luZG93IHRoYXQgaG9sZHMgdGhlIHBhZ2UgYnV0dG9uc1xuLnBhZ2VBY3Rpb25zQ29udGFpbmVyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDQwcHg7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAwIDEuODAxOCU7XG59XG5cbi5vbk9mZlRvZ2dsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGhlaWdodDogJG9uT2ZmVG9nZ2xlLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuNztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb25PZmZUb2dnbGUtYmFja2dyb3VuZDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRvbk9mZlRvZ2dsZS1ib3JkZXItcmFkaXVzKTtcbiAgICBib3JkZXI6ICRvbk9mZlRvZ2dsZS1ib3JkZXItc3R5bGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAkb25PZmZUb2dnbGUtZGVsdGEtaGVpZ2h0IC8gMjtcblxuICAgIC5vbk9mZlNsaWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb25PZmZUb2dnbGUtZm9yZWdyb3VuZDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkb25PZmZUb2dnbGUtc2xpZGVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgICZbc3RhdGU9XCJvblwiXSAub25PZmZTbGlkZXIge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICAmW3N0YXRlPVwib2ZmXCJdIC5vbk9mZlNsaWRlciB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbG9yOiAkb25PZmZUb2dnbGUtdGV4dC1jb2xvdXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRvbk9mZlRvZ2dsZS1saW5lLWhlaWdodDtcbiAgICB9XG4gICAgc3Bhbi50b2dnbGVPbiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG4gICAgfVxuICAgIHNwYW4udG9nZ2xlT2ZmIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG4gICAgfVxuXG4gICAgJi5vbkdyZXlCRyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvbk9mZlRvZ2dsZS1vbkdyZXktYmFja2dyb3VuZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkb25PZmZUb2dnbGUtb25HcmV5LWJvcmRlci1jb2xvdXI7XG5cbiAgICAgICAgLm9uT2ZmU2xpZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvbk9mZlRvZ2dsZS1vbkdyZXktZm9yZWdyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRvbk9mZlRvZ2dsZS1vbkdyZXktdGV4dC1jb2xvdXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9uRGFya0JHIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9uT2ZmVG9nZ2xlLW9uRGFyay1iYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXItY29sb3I6ICRvbk9mZlRvZ2dsZS1vbkRhcmstYm9yZGVyLWNvbG91cjtcblxuICAgICAgICAub25PZmZTbGlkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9uT2ZmVG9nZ2xlLW9uRGFyay1mb3JlZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJG9uT2ZmVG9nZ2xlLW9uRGFyay10ZXh0LWNvbG91cjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRyb3BEaXYge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wRGl2IHNwYW4ge1xuXHRwYWRkaW5nOiAwIDVweDtcbn1cblxuLmRyb3BBcnJvdyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IDEwcHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xufVxuXG4uY2FwdGlvbiB7XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xuXHR3aWR0aDogOTAlO1xuXHRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuNztcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRsaW5lLWhlaWdodDogMS4yNWVtO1xuXHRjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcblxuXHQmLnRpZ2h0Rml0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBsaW5lLWhlaWdodDogMS4xMjtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gICYuY2hlY2tib3hJbmRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMzRweDtcbiAgfVxuXG59XG5cbiNlbWFpbEFuZFNNUyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcblxuICAjZWRpdEVtYWlsQW5kU01TQnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvZWRpdEJ1dHRvbi1zbWwucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxufVxuXG4uc2VydmljZSwgLmRhc2hUaWxlLCAuc2VjdXJpdHksIC5zZXJ2aWNlLnZvaXBMaW5lIHtcblxuXHQuc3RhdHVzSWNvbiB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNnB4O1xuXHRcdHJpZ2h0OiA2cHg7XG5cdFx0d2lkdGg6IDI1cHg7XG5cdFx0aGVpZ2h0OiAyNXB4O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS91aS9tZWRTdGF0dXNTdGF0ZXMucG5nJyk7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyNXB4IDA7XG5cdH1cblxuXHQmW3N0YXR1cz1cIm9rXCJdIC5zdGF0dXNJY29uLFxuICAgICZbc3RhdHVzPVwiVVBcIl0gLnN0YXR1c0ljb24sXG5cdCZbc3RhdHVzPVwiQ09OTkVDVEVEXCJdIC5zdGF0dXNJY29uIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG5cdH1cblx0JltzdGF0dXM9XCJESVNDT05ORUNURURcIl0gLnN0YXR1c0ljb24sXG5cdCZbc3RhdHVzPVwiRVJST1JcIl0gLnN0YXR1c0ljb24sXG4gICZbc3RhdHVzPVwiUVVJRVNDRU5UXCJdIC5zdGF0dXNJY29uIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zNXB4O1xuXHR9XG4gICZbc3RhdHVzPVwid2FybmluZ1wiXSAuc3RhdHVzSWNvbixcbiAgJltzdGF0dXM9XCJUUk9VQkxFXCJdIC5zdGF0dXNJY29uIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMDVweDtcbiAgfVxuXHQmW3N0YXR1cz1cImluZm9cIl0gLnN0YXR1c0ljb24sICZbc3RhdHVzPVwiVU5TVUJTQ1JJQkVEXCJdIC5zdGF0dXNJY29uIHtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03MHB4O1xuXHR9XG5cblxufVxuXG4uc2VjdXJpdHkge1xuICAuc3RhdHVzSWNvbiB7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgdG9wOiAyMHB4O1xuICB9XG59XG5cbi5zbGlkZXIge1xuICB3aWR0aDogMjQwcHg7XG4gIG1hcmdpbjogOHB4IDI1cHggMCAxNXB4O1xuXG4gICYubm9VaS1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGVyLWJhY2tncm91bmQtZGVmYXVsdDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gICYubm9VaS10YXJnZXQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNXB4KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAmLm5vVWktaG9yaXpvbnRhbCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgLm5vVWktaGFuZGxlIHtcbiAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgaGVpZ2h0OiAyNnB4O1xuICAgICAgbGVmdDogLTEzcHg7XG4gICAgICB0b3A6IC04cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kLWRlZmF1bHQ7XG4gICAgfVxuICAgIC5ub1VpLWhhbmRsZTphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzbGlkZXItaGFuZGxlLWFmdGVyLWJhY2tncm91bmQtZGVmYXVsdDtcbiAgICB9XG4gIH1cbiAgLyomLm5vVWktaGFuZGxlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICM1NTU1NTU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH0qL1xuXG59XG5cbi5ub1VpLWhhbmRsZSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kLWRlZmF1bHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogbm9uZTtcblxuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiAkc2xpZGVyLWhhbmRsZS1hZnRlci1iYWNrZ3JvdW5kLWRlZmF1bHQ7XG4gICAgbGVmdDogNXB4O1xuICAgIHRvcDogNXB4O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgfVxuXG59XG5cbi5ub1VpLW9yaWdpbiB7XG4gICAgYmFja2dyb3VuZDogJHNsaWRlci1iYWNrZ3JvdW5kLW9yaWdpbi1kZWZhdWx0O1xuICB9XG5cbi5zbGlkZXJWYWx1ZSB7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuICBsaW5lLWhlaWdodDogNC4wNjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tdWx0aVNlbGVjdCB7XG5cbiAgPiAqIHtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSB1c2VyLXNlbGVjdChub25lKTtcblxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogN3B4O1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcjeyRhc3NldFBhdGh9L3VpL3NtbC1XaGl0ZUNoZWNrbWFyay5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5sYXN0Q2xpY2tlZCB7XG4gICAgICBib3JkZXI6IDFweCBkYXNoZWQgJHBvd2Rlci1ibHVlO1xuICAgIH1cblxuICB9XG5cbn1cblxuLyogKioqIFdJRkkgU1RSRU5HVEggKioqICovXG5cbi53aWZpU3RyZW5ndGgge1xuXG4gIHdpZHRoOiAkc2lnbmFsLXN0cmVuZ3RoLWljb24td2lkdGg7XG4gIGhlaWdodDogJHNpZ25hbC1zdHJlbmd0aC1pY29uLWhlaWdodDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cbiAgQG1peGluIGFzc2lnbi1zaWduYWwtbGV2ZWwoJGxldmVsKSB7XG5cbiAgICAmW2xldmVsPVwiI3skbGV2ZWx9XCJdIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLXNpZ25hbFN0cmVuZ3RoLWxldmVsLSN7JGxldmVsfS5wbmcnKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLXNpZ25hbFN0cmVuZ3RoLWxldmVsLSN7JGxldmVsfS5zdmcnKTtcbiAgICB9XG5cbiAgfVxuXG4gIEBpbmNsdWRlIGFzc2lnbi1zaWduYWwtbGV2ZWwoMCk7XG4gIEBpbmNsdWRlIGFzc2lnbi1zaWduYWwtbGV2ZWwoMSk7XG4gIEBpbmNsdWRlIGFzc2lnbi1zaWduYWwtbGV2ZWwoMik7XG4gIEBpbmNsdWRlIGFzc2lnbi1zaWduYWwtbGV2ZWwoMyk7XG4gIEBpbmNsdWRlIGFzc2lnbi1zaWduYWwtbGV2ZWwoNCk7XG4gIEBpbmNsdWRlIGFzc2lnbi1zaWduYWwtbGV2ZWwoNSk7XG5cbiAgJltsZXZlbD1cIi0xXCJdIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1wbHVtZS1zbWwucG5nJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgW3N0YXR1cz1cIkRJU0NPTk5FQ1RFRFwiXSAmIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1wbHVtZS1zbWwtZ3JleS5wbmcnKTtcbiAgICAgIH1cbiAgfVxuXG59XG5cblxuLyogKioqIE1JU0MgU1RZTEVTICoqKiAqL1xuLnBhZ2VJbnN0cnVjdGlvbnMge1xuICBtYXJnaW46IDAgYXV0byAxNXB4O1xuICBwYWRkaW5nOiA3cHggMDtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5mdWxsV2lkdGgge1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLmNlbnRlcmVkQ29udGFpbmVyIHtcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbnAuYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxucC5ib2xkSXRhbGljIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5yaWdodEFsaWduIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbnAud2FybmluZyB7XG4gIGNvbG9yOiAkeWVsbG93LXRleHQ7XG59XG5cbi50b3BCb3JkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbn1cblxuLmJvdHRvbUJvcmRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xufVxuXG4ub3ZlcmxheXtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmRpc2FibGVNYXNre1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNTAsIDUwKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQge1xuXG4gICAgbGFiZWwsIGlucHV0LCBzZWxlY3QsIHNwYW4ge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC10ZXh0O1xuICAgIH1cblxuICAgIC5kaXNhYmxlTWFzayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuI3Rlc3RpbmdTcGlubmVye1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vU3BlZWR0ZXN0X1Byb2dyZXNzX0dyZXkucG5nJyk7XG4gIHdpZHRoOiAxNThweDtcbiAgaGVpZ2h0OiAxNThweDtcbiAgbWFyZ2luOiA0MHB4IGF1dG87XG59XG5cbi5sYW5nLWZyICN0ZXN0aW5nU3Bpbm5lcntcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L1NwZWVkdGVzdF9Qcm9ncmVzc19HcmV5X2ZyLnBuZycpO1xufVxuXG4ub3ZlcmZsb3ctdGV4dC1jb250YWluZXIge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAub3ZlcmZsb3ctdGV4dCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG59XG5cbi5yZWRUZXh0IHtcbiAgY29sb3I6ICRyZWQtdGV4dDtcbn1cblxuLml0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLm1vZGFsQ2xvc2VCdXR0b24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNfY2xvc2UucG5nXCIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNfY2xvc2Uuc3ZnXCIpO1xuICAgIG1hcmdpbi1yaWdodDogJG1vZGFsLWNsb3NlLWljb24tbWFyZ2luLXJpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICRtb2RhbC1jbG9zZS1pY29uLW1hcmdpbi10b3A7XG4gICAgd2lkdGg6ICRtb2RhbC1jbG9zZS1pY29uLXdpZHRoO1xuICAgIGhlaWdodDogJG1vZGFsLWNsb3NlLWljb24taGVpZ2h0O1xuICAgIGN1cnNvcjogJG1vZGFsLWNsb3NlLWljb24tcG9pbnRlcjtcbn0iLCIvKiAqKioqIEZPUk0gU1RZTEVTICoqKiogKi9cblxuLyogRElTQ1JFVEUgRk9STSBQSUVDRVMgKi9cblxuLmZvcm1CbG9jayB7XG5cdFxuXHQvKnBhZGRpbmc6IDEwcHggMCAwOyovXG5cdFxuXHQmLnRvcFNwYWNlIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgfVxuICBcblx0Ji5leHRyYVRvcFNwYWNlIHtcblx0XHRwYWRkaW5nLXRvcDogMjBweFxuXHR9XG5cdFxuXHQmLmV4dHJhVmVydFNwYWNlIHtcblx0XHRwYWRkaW5nLXRvcDogMjBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0fVxuXHRcblx0Ji5zbGlkZXJDb250YWluZXIge1xuICBcbiAgICBsYWJlbCwgLnNsaWRlclZhbHVlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjBlbTtcbiAgICB9XG4gIH1cblx0XG5cdC50ZXh0VmFsdWUsIC50ZXh0RmllbGRWYWx1ZSB7XG5cdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjg7XG5cdFx0bGluZS1oZWlnaHQ6IDQuMDYyNWVtO1xuXHR9XG5cdC50ZXh0VmFsdWU6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiA0MHB4O1xuXHR9XG5cdC50ZXh0RmllbGRWYWx1ZSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDRweDtcblx0XHRwYWRkaW5nOiAwIDE1cHg7XG5cdH1cblx0XG5cdC5tdWx0aUxpbmUge1xuXHRcdFxuXHRcdHBhZGRpbmctdG9wOiAyMHB4O1xuXHRcdFxuXHRcdCYuY29sb3JCRyB7XG5cdFx0XHRtYXJnaW4tbGVmdDogNHB4O1xuXHRcdFx0cGFkZGluZzogMTVweDtcblx0XHR9XG5cdFx0XG5cdFx0bGFiZWwsIC50ZXh0VmFsdWUge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjVlbTtcblx0XHR9XG5cdFxuXHR9XG5cdFxuXHQmLmhhc0ZpZWxkICsgLmhhc0ZpZWxkIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIFxuICAmLmhhc1NlbGVjdCB7XG4gIFxuICAgIGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgfVxuICBcbiAgfVxuICBcbiAgYnV0dG9uICsgYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgfVxuICBcbiAgJi52ZXJ0aWNhbFN0YWNrLCAudmVydGljYWxTdGFjayB7XG4gIFxuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuNWVtO1xuICAgIH1cbiAgXG4gIH1cbiAgXG4gIC5hdXRvVmFsdWUge1xuICAgIGNvbG9yOiAkYmVsbC1saWdodGdyZXktdGV4dDtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuNzU7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG59XG5cbi5vbmVUaGlyZFdpZHRoIHtcbiAgd2lkdGg6IDMzJTtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIFxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLyogTEFCRUxTICovXG5cbmxhYmVsIHtcblx0cGFkZGluZy1yaWdodDogMTBweDtcblx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjg7XG5cdGxpbmUtaGVpZ2h0OiA0LjA2MjVlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbmxhYmVsLmJvbGQge1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbmxhYmVsLnN0ZFNob3J0IHtcblx0d2lkdGg6IDQ1cHg7XG59XG5sYWJlbC5zdGRNZWRpdW0ge1xuXHR3aWR0aDogODVweDtcbn1cbmxhYmVsLnN0ZE1lZGl1bUxvbmcge1xuXHR3aWR0aDogMTA1cHg7XG59XG5sYWJlbC5zdGRMb25nIHtcblx0d2lkdGg6IDE2NXB4O1xufVxubGFiZWwubm9XcmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuXG4vKiBGT1JNIElOUFVUUyAqL1xuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBzZWxlY3Qge1xuXHRwYWRkaW5nOiAxNXB4O1xuXHR3aWR0aDogMjcwcHg7XG5cdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuXHRjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcblx0Ym9yZGVyOiAycHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcblx0XG5cdCYuc2hvcnRlciB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG4gIFxuICAmLnNtYWxsIHtcbiAgICB3aWR0aDogODZweDtcbiAgfVxuICBcbiAgJi5yaWdodE1hcmdpbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB9XG5cbiAgLnBhc3N3b3JkLXdyYXBwZXIgJiB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuXG4ucGFzc3dvcmQtd3JhcHBlciwgI2xvZ2luLWNvbnRhaW5lciAucGFzc3dvcmQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBidXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTVweDtcbiAgICB0b3A6IDUwJTtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmJiZWMzO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICBwYWRkaW5nOiAxNXB4IDJweCAxNXB4IDE1cHg7XG59XG5pbnB1dFt0eXBlPVwidGV4dFwiXS5lbXB0eSB7XG4gIGNvbG9yOiAkYmVsbC1saWdodC1ncmV5O1xufVxuXG5zZWxlY3Qge1xuXHQtbW96LWFwcGVhcmFuY2U6bm9uZTsgLyogRmlyZWZveCAqL1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTsgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cblx0YXBwZWFyYW5jZTpub25lO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvRHJvcGRvd25BcnJvd3MucG5nJyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDk4JSBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIFxuICAmLnNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgY2VudGVyO1xuICB9XG4gICY6Oi1tcy1leHBhbmQgeyBkaXNwbGF5OiBub25lOyB9XG59XG5cbnNlbGVjdCArICoge1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cblxuaW5wdXQuaXBTZWdtZW50IHtcblx0d2lkdGg6IDYwcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmlucHV0LmlwU2VnbWVudCArIC5pcFNlcGFyYXRvciwgc2VsZWN0LmlwU2VnbWVudCArIC5pcFNlcGFyYXRvciB7XG5cdHdpZHRoOiAxMnB4O1xuXHRmb250LXNpemU6IDI0cHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bGluZS1oZWlnaHQ6IDIuMDgzZW07XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuaW5wdXRbZGlzYWJsZWRdLCBzZWxlY3RbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiAjZWJlYmViO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xufVxuXG5idXR0b246ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWJvcmRlciAhaW1wb3J0YW50O1xuICBjb2xvciA6ICRidXR0b24tZGlzYWJsZWQtZm9yZWdyb3VuZCAhaW1wb3J0YW50O1xufVxuXG4vKiBSQURJTyBCVVRUT05TICYgQ0hFQ0tCT1hFUyAqL1xuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KG9sZCksXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KG9sZCkge1xuXHR3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAwO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdG9wYWNpdHk6IDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3Qob2xkKSArIGxhYmVsLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdChvbGQpICsgbGFiZWwge1xuXHRtYXJnaW4tbGVmdDogLTI0cHg7XG5cdG1hcmdpbi1yaWdodDogOHB4O1xuXHRwYWRkaW5nLWxlZnQ6IDM1cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0XG5cdCYudGlnaHRXaWR0aCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3Qob2xkKSArIGxhYmVsIHtcblx0bGluZS1oZWlnaHQ6IDI1cHg7XG5cdGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS9yYWRpb0J1dHRvblN0YXRlcy5wbmcnKSBuby1yZXBlYXQgMCAwO1xufVxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdChvbGQpOmNoZWNrZWQgKyBsYWJlbCB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM0cHg7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3Qob2xkKSArIGxhYmVsIHtcblx0bGluZS1oZWlnaHQ6IDI1cHg7XG5cdGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS91aS9jaGVja2JveFN0YXRlcy5wbmcnKSBuby1yZXBlYXQgMCAwO1xufVxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdChvbGQpICsgbGFiZWwub25Ob25XaGl0ZUJHIHtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS91aS9jaGVja2JveFN0YXRlc19lbXB0eVdoaXRlLnBuZycpIG5vLXJlcGVhdCAwIDA7XG59XG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KG9sZCk6Y2hlY2tlZCArIGxhYmVsIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzVweDtcbn1cblxuLyogRk9SIFdIRU4gWU9VIE5FRUQgTVVMVEktTElORSBMQUJFTFMgRk9SIENIRUNLQk9YIE9SIFJBRElPICovXG4udXNlU3BhbkNoZWNrIHtcbiAgXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3Qob2xkKSArIGxhYmVsLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KG9sZCkgKyBsYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICYudGlnaHRXaWR0aCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICBcbiAgfVxuICBcbiAgXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3Qob2xkKSArIGxhYmVsIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIFxuICAgIHNwYW4ucmFkaW8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0zNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcjeyRhc3NldFBhdGh9L3JhZGlvQnV0dG9uU3RhdGVzLnBuZycpIG5vLXJlcGVhdCAwIDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICBcbiAgICBzcGFuLmxhYmVsVGV4dCB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gICAgXG4gIH1cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdChvbGQpOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYXV0bztcbiAgICBcbiAgICBzcGFuLnJhZGlvIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM0cHg7XG4gICAgfVxuICAgIFxuICB9XG5cbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdChvbGQpICsgbGFiZWwge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgXG4gICAgc3Bhbi5jaGVja2JveCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTM1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvY2hlY2tib3hTdGF0ZXMucG5nJykgbm8tcmVwZWF0IDAgMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICAgIFxuICAgIHNwYW4ubGFiZWxUZXh0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICBcbiAgfVxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KG9sZCk6Y2hlY2tlZCArIGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBhdXRvO1xuICAgIFxuICAgIHNwYW4uY2hlY2tib3gge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzVweDtcbiAgICB9XG4gICAgXG4gIH1cbn1cblxudWwge1xuICBpbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KG9sZCksXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3Qob2xkKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdChvbGQpICsgbGFiZWwsXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3Qob2xkKSArIGxhYmVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLyogVkFMSURBVElPTiBNRVNTQUdFICovXG5mb3JtIHtcbiAgXG4gIC5mb3JtQmxvY2tbc3RhdHVzPVwiZXJyb3JcIl17XG4gICAgICBsYWJlbHtcbiAgICAgICAgY29sb3I6ICRmb3JtLWVycm9yO1xuICAgICAgfVxuICAgICAgXG4gICAgICBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGZvcm0tZXJyb3IgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgfVxufVxuXG4udmFsaWRhdGlvbi1tc2cge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAmLmVycm9yLCAuZXJyb3Ige1xuICAgICAgICBjb2xvcjogJGZvcm0tZXJyb3I7XG4gICAgfVxuICAgICYuc3VjY2VzcywgLnN1Y2Nlc3Mge1xuICAgICAgICBjb2xvcjogJGZvcm0tc3VjY2VzcztcbiAgICB9XG59XG5cbi52YWxpZGF0aW9uLWZvcm0tbXNnLXdyYXAge1xuICAgIGNvbG9yOiAkZm9ybS1lcnJvcjtcbiAgICAmLnN1Y2Nlc3MsIC5zdWNjZXNzIHtcbiAgICAgICAgY29sb3I6ICRmb3JtLXN1Y2Nlc3M7XG4gICAgfVxufVxuXG4ucmVkdWNlTGluZUhlaWdodHtcbiAgLnRleHRWYWx1ZSwgbGFiZWx7XG4gICAgbGluZS1oZWlnaHQ6My4yZW07XG4gIH1cbn0iLCJcbi5tb2RhbFBhZ2V7XG4gIEBpbmNsdWRlIGlubmVyTW9kYWwoJGRlc2lnbk1vZGFsV2lkdGgsICRkZXNpZ25Nb2RhbEhlaWdodCk7XG59XG5cbi5jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tb2RhbC5jb25maXJte1xuICBAaW5jbHVkZSBpbm5lck1vZGFsKCRkZXNpZ25Db25maXJtTW9kYWxXaWR0aCwgJGRlc2lnbkNvbmZpcm1Nb2RhbEhlaWdodCk7XG59XG5cbi5jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tb2RhbC5zdWNjZXNzLWVycm9ye1xuICBAaW5jbHVkZSBpbm5lck1vZGFsKCRkZXNpZ25TdWNjZXNzRXJyb3JNb2RhbFdpZHRoLCAkZGVzaWduU3VjY2Vzc0Vycm9yTW9kYWxIZWlnaHQpO1xufVxuXG4ubW9iaWxlIHtcbiAgLm9wZW5lZFBvcHVwIC5iYWNrZ3JvdW5kLW92ZXJsYXk6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IC02MHB4O1xuICB9XG5cbiAgLmNvbmZpcm1hdGlvbi1lcnJvci1zdWNjZXNzLW1vZGFsLnN1Y2Nlc3MtZXJyb3J7XG4gICAgQGluY2x1ZGUgaW5uZXJNb2RhbFBlcmNlbnRhZ2UoMC43NCwgMC41MCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuXG4gICAgICY6YWZ0ZXJ7XG4gICAgICAgIHRvcDogNjNweDtcbiAgICAgfVxuXG4gICAgID4gI2NvbmZpcm1hdGlvbi1lcnJvci1zdWNjZXNzLW1lc3NhZ2V7XG5cbiAgICAgICAgJi5zdWNjZXNzLWVycm9yIHtcbiAgICAgICAgICA+IC5zdWNjZXNzLWVycm9yLWluZGljYXRvcntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgID4gLmNvbnRlbnQge1xuICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAjbWVzc2FnZXMge1xuICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY2xlYXJGbG9hdC5wYWdlQWN0aW9uc0NvbnRhaW5lci5idXR0b25Db250YWluZXIuY2VudGVyQnV0dG9ucyB7XG4gICAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdG9wOiAxOTVweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM1OXB4KSB7XG4gIC5tb2JpbGUge1xuICAgIC5jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tb2RhbC5zdWNjZXNzLWVycm9ye1xuICAgICAgQGluY2x1ZGUgaW5uZXJNb2RhbFBlcmNlbnRhZ2UoMC44MywgMC41MCk7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwMHB4KSBhbmQgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgLm1vYmlsZSB7XG4gICAgLmNvbmZpcm1hdGlvbi1lcnJvci1zdWNjZXNzLW1vZGFsLnN1Y2Nlc3MtZXJyb3J7XG4gICAgICBAaW5jbHVkZSBpbm5lck1vZGFsUGVyY2VudGFnZSgwLjY1LCAwLjQwKTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKHdpZHRoOiAzODRweCkge1xuICAubW9iaWxlIHtcbiAgICAuY29uZmlybWF0aW9uLWVycm9yLXN1Y2Nlc3MtbW9kYWwuc3VjY2Vzcy1lcnJvcntcbiAgICAgIEBpbmNsdWRlIGlubmVyTW9kYWxQZXJjZW50YWdlKDAuNzAsIDAuNTUpO1xuICAgIH1cbiAgfVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5tb2JpbGUge1xuICAgIC5jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tb2RhbC5zdWNjZXNzLWVycm9ye1xuICAgICAgaGVpZ2h0OiA2MyU7XG5cbiAgICAgID4gI2NvbmZpcm1hdGlvbi1lcnJvci1zdWNjZXNzLW1lc3NhZ2Uuc3VjY2Vzcy1lcnJvciB7XG4gICAgICAgID4gLnN1Y2Nlc3MtZXJyb3ItaW5kaWNhdG9yIHtcbiAgICAgICAgICBoZWlnaHQ6IDc4cHg7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jbGVhckZsb2F0LnBhZ2VBY3Rpb25zQ29udGFpbmVyLmJ1dHRvbkNvbnRhaW5lci5jZW50ZXJCdXR0b25zICB7XG4gICAgICAgICAgdG9wOiAxNTFweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG59XG5cbi5tb2JpbGUge1xuICAuY29uZmlybWF0aW9uLWVycm9yLXN1Y2Nlc3MtbW9kYWwuc3VjY2Vzcy1lcnJvcntcbiAgICAuYnV0dG9uQ29udGFpbmVyIHtcbiAgICAgIGJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuI2lubmVyLXBvcHVwLW92ZXJsYXksICNub3RpZmljYXRpb24tcG9wdXAtb3ZlcmxheSB7XG4gIEBpbmNsdWRlIGlubmVyTW9kYWwoNzAwLCA0NjApO1xufVxuXG4ubW9kYWxQYWdlIHtcbiAgPiAjcG9wdXAtb3ZlcmxheS1tZXNzYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgID4gLmNvbnRlbnQge1xuICAgICAgZmxleDogMTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG59XG5cbi5tb2RhbFBhZ2UsIC5jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tb2RhbCwgI2xvZ2luQ29udGFpbmVyLCAjaW5uZXItcG9wdXAtb3ZlcmxheSwgI25vdGlmaWNhdGlvbi1wb3B1cC1vdmVybGF5IHtcblxuICBjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiAkbW9kYWxMYXllckRlcHRoICogJG1vZGFsTGF5ZXJUaGlyZFByaW9yaXR5O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgJjpiZWZvcmV7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICA+ICNwb3B1cC1vdmVybGF5LW1lc3NhZ2Uge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gID4gI3BvcHVwLW92ZXJsYXktbWVzc2FnZSwgI2NvbmZpcm1hdGlvbi1lcnJvci1zdWNjZXNzLW1lc3NhZ2UsICNsb2dpbi1tZXNzYWdlLCAuZGlzYWJsZWQtY29uZi13cmFwLCAuZW1wdHktY29uZi13cmFwLCAjaW5uZXItcG9wdXAtb3ZlcmxheS1tZXNzYWdlLCAjbm90aWZpY2F0aW9uLXBvcHVwLW92ZXJsYXktbWVzc2FnZSB7XG5cbiAgICAgLmhlYWRlcntcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cbiAgICAgICAgZGl2e1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgQGV4dGVuZCAubW9kYWxDbG9zZUJ1dHRvbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSBoMSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgY29sb3I6ICRiZWxsLW1vZGFsLWhlYWRlci1kYXJrO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICAucmlnaHQtaWNvbnMge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgfVxuXG4gICAgIC5jb250ZW50e1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICB9XG4gIH1cblxuICA+ICNjb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tZXNzYWdle1xuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44MTI1O1xuICAgICAgfVxuICAgICAgcDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgICB9XG5cbiAgICAgICYuc3VjY2Vzcy1lcnJvciB7XG4gICAgICAgID4gLnN1Y2Nlc3MtZXJyb3ItaW5kaWNhdG9ye1xuICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICBoZWlnaHQ6ICRkZXNpZ25TdWNjZXNzRXJyb3JNb2RhbEhlaWdodCtweDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRlbnQge1xuICAgICAgICAgICBtYXJnaW4tbGVmdDogMTEwcHg7XG4gICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XG5cbiAgICAgICAgICAgI21lc3NhZ2VzIHtcbiAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNsZWFyRmxvYXQucGFnZUFjdGlvbnNDb250YWluZXIuYnV0dG9uQ29udGFpbmVyLmNlbnRlckJ1dHRvbnMge1xuICAgICAgICAgIGxlZnQ6IDU1cHg7XG4gICAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gIH1cblxuICAgPiAjY29uZmlybWF0aW9uLWVycm9yLXN1Y2Nlc3MtbWVzc2FnZVt0eXBlPVwiU1VDQ0VTU1wiXXtcbiAgICAgPiAuc3VjY2Vzcy1lcnJvci1pbmRpY2F0b3J7XG4gICAgICAgYmFja2dyb3VuZDogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL1N1Y2Nlc3NfSWNvbl9sZy5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdCAkc3VjY2Vzc19pY29uX2JhY2tncm91bmQ7XG4gICAgIH1cbiAgIH1cblxuICAgPiAjY29uZmlybWF0aW9uLWVycm9yLXN1Y2Nlc3MtbWVzc2FnZVt0eXBlPVwiRVJST1JcIl17XG4gICAgID4gLnN1Y2Nlc3MtZXJyb3ItaW5kaWNhdG9ye1xuICAgICAgIGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9FcnJvcl9JY29uLnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0ICRlcnJvcl9pY29uX2JhY2tncm91bmQ7XG4gICAgIH1cbiAgIH1cblxuICAgPiAjY29uZmlybWF0aW9uLWVycm9yLXN1Y2Nlc3MtbWVzc2FnZVt0eXBlPVwiV0FSTklOR1wiXXtcbiAgICAgPiAuc3VjY2Vzcy1lcnJvci1pbmRpY2F0b3J7XG4gICAgICAgYmFja2dyb3VuZDogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL1dhcm5pbmdfSWNvbi5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdCAkd2FybmluZ19pY29uX2JhY2tncm91bmQ7XG4gICAgIH1cbiAgIH1cblxuICA+ICNsb2dpbi1tZXNzYWdlLCAuZGlzYWJsZWQtY29uZi13cmFwLCAuZW1wdHktY29uZi13cmFwIHtcbiAgICAvLyBCZWNhdXNlIG9mIGhvdyB0aGUgaGVhZGVyIGlzIHN0eWxlZCwgaXQgaXMgbmVhcmx5IGltcG9zc2libGUgdG8gYXNzaWduIGFuIGV4YWN0IGhlaWdodCB0byB0aGUgY29udGVudCBhcmVhIGFuZFxuICAgIC8vIHN0aWxsIGxlYXZlIGFuIGFwcHJvcHJpYXRlIGFtb3VudCBvZiBzcGFjZSBmb3IgdGhlIGJ1dHRvbiBjb250YWluZXIuIFRoZSB3YXkgdGhlIGJ1dHRvbiBjb250YWluZXIgaXMgc3R5bGVkXG4gICAgLy8gYWxzbyBwb3NlcyBwcm9ibGVtcyBiZWNhdXNlIHRoZSBjb250ZW50IGFjdHVhbGx5IGZsb3dzIG91dHNpZGUgaXRzIGNvbnRhaW5lciBBTkQgdGhlIGFjdHVhbCBjb250ZW50IGNvbnRhaW5lci5cbiAgICAvLyBUaGUgaGVpZ2h0IHNob3VsZCBiZSBhYm91dDpcbiAgICAvL1xuICAgIC8vICAgKGRpYWxvZyBoZWlnaHQpIC0gKGhlYWRpbmcgaGVpZ2h0KSAtIChwYWRkaW5nKSAtIChib3R0b20gY29udGVudCBoZWlnaHQpXG4gICAgLy8gICAzNTAgLSA2NCAtIDQwICogMiAtIDMyID0gMTc0XG4gICAgLy9cbiAgICAvLyBXZSB3YW50IHRvIGZpeCB0aGUgaGVpZ2h0IG9mIHRoZSBjb250ZW50IHpvbmUgc28gd2UgY2FuIHNjcm9sbCBpZiBuZWNlc3NhcnksIGFuZCBzbyB0aGUgYnV0dG9uIGJhciBhbHdheXMgYXBwZWFyc1xuICAgIC8vIGluIHRoZSBjb3JyZWN0IHBvc2l0aW9uICh3aXRob3V0IHJld3JpdGluZyBodWdlIGNodW5rcyBvZiB0aGUgbW9kYWwgQ1NTLCB3aGljaCBsaWtlbHkgbmVlZHMgc29tZSBzaW1wbGlmaWNhdGlvbilcbiAgICAubG9naW5Db250ZW50e1xuICAgICAgaGVpZ2h0OiAxNTRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7IC8vIEludGVybmV0IEV4cGxvcmVyXG4gICAgICAgIGxpc3Qtc3R5bGU6IGluaXRpYWw7IC8vIFJlYWwgYnJvd3NlcnNcbiAgICAgIH1cblxuICAgICAgLmZvcm1CbG9jayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIC8vIFRoaXMgbWFyZ2luIGJvdHRvbSBpcyB1c2VkIHRvIGtlZXAgdGhlIHZhbGlkYXRpb24gbWVzc2FnZSBhbGlnbmVkIHdpdGggdGhlIGlucHV0IChub3QgaWRlYWwsIGJ1dCBmdW5jdGlvbmFsKS5cbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZhbGlkYXRpb24tbXNnLXdyYXAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dpbkJvdHRvbUNvbnRlbnR7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC5idXR0b25Db250YWluZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgIC8vIFRoaXMgbWFyZ2luIGJvdHRvbSBpcyB1c2VkIHRvIGtlZXAgdGhlIG92ZXJmbG93IG9uIHRoZSB0aXAgdGV4dCBpbiBsaW5lIChub3QgdGhlIGdyZWF0ZXN0IHNvbHV0aW9uLCBidXRcbiAgICAgICAgLy8gZnVuY3Rpb25hbCkuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIC5sb2dpblRpcFRleHR7XG4gICAgICAgIC5lbWFpbHtcbiAgICAgICAgICBjb2xvcjogIzU4OGZiYztcbiAgICAgICAgfVxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoI3skYXNzZXRQYXRofS9pY29ucy9pY29uLW1vZGVtLXBhc3N3b3JkUmVjb3ZlcnkyLnBuZykgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MnB4O1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgLy8gVE9ETzogQ3JlYXRlIGEgbWl4aW4gZm9yIGNsZWFyaW5nIGEgZmxvYXQ7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kb250LWFzay1hZ2Fpbi13cmFwe1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMS41O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAxLjE3O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDE7XG4gICAgfVxuXG5cbiAgICAubW9kYWxTZWN0aW9uQ29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uQ29udGFpbmVyIHtcblxuICAgIC5tb2RhbEhlYWRlciBoMiB7XG4gICAgICBwYWRkaW5nOiA3cHggMDtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uU2VjdGlvbkNvbnRhaW5lcjpsYXN0LWNoaWxkIC5hY2NvcmRpb25Db250ZW50IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgIH1cblxuICB9XG5cbiAgLmFjY29yZGlvblNlY3Rpb25Db250YWluZXIge1xuICAgIG1hcmdpbjogNXB4IDA7XG4gIH1cblxuXHQuYm94SGVhZGVyLCAgLmFjY29yZGlvbkhlYWRlciB7XG5cblx0XHRwYWRkaW5nOiA3cHggMTBweDtcblx0XHRoZWlnaHQ6IDQ1cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1zZWN0aW9uLWhlYWRlci1iYWNrZ3JvdW5kO1xuXG5cdFx0aDIge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAxO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDMxcHg7XG5cdFx0XHRjb2xvcjogI2ZmZlxuXHRcdH1cblxuXHRcdC5mbG9hdFJpZ2h0IHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdH1cblxuXHRcdGJ1dHRvbiB7XG5cdFx0XHRtaW4td2lkdGg6IDEwMHB4O1xuXHRcdH1cblxuXHR9XG5cblx0LmJveEhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1ib3gtaGVhZGVyLWJhY2tncm91bmQ7XG4gIH1cbiAgLmFjY29yZGlvbkhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcblxuICAgIC5hY2NvcmRpb25FeHBhbmRUb2dnbGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkbW9kYWxTdHlsZXMtaDMtcGFkZGluZy1ib3R0b207XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYWNlO1xuICAgICAgZm9udC1zaXplOiAkbW9kYWxTdHlsZXMtaDMtZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRtb2RhbFN0eWxlcy1oMy1saW5lLWhlaWdodDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgfVxuXG4gIC50YWJsZUNvbnRhaW5lciB7XG5cbiAgICAubW9kYWxIZWFkZXIgaDIge1xuICAgICAgcGFkZGluZzogN3B4IDA7XG4gICAgfVxuXG4gIH1cblxuICAuY29sdW1uIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuY29sdW1uLmZ1bGxIZWlnaHQge1xuICAgIGhlaWdodDogNTI1cHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnF1YXJ0ZXJDb2wge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgLypmbG9hdDogbGVmdDsqL1xuICAgfVxuICAuaGFsZkNvbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAwIDEwcHggMCAxNXB4O1xuICAgIC8qZmxvYXQ6IGxlZnQ7Ki9cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgICB9XG5cbiAgfVxuXG4gIC50aHJlZVF1YXJ0ZXJDb2wge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cblxuICAuY29sQ29udGVudENvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMTVweCAwIDA7XG4gICAgY29sb3I6ICRiZWxsLWRhcmtncmV5LXRleHQ7XG4gIH1cbiAgLmNvbENvbnRlbnRDb250YWluZXIudG9wQm9yZGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgfVxuXG5cbiAgLmFjY29yZGlvblNlY3Rpb25Db250YWluZXIge1xuXG4gICAgLmFjY29yZGlvbkNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmW3N0YXRlPVwiY2xvc2VkXCJdIHtcblxuICAgICAgICA+LmFjY29yZGlvbkhlYWRlciB7XG5cbiAgICAgICAgICA+IC5hY2NvcmRpb25FeHBhbmRUb2dnbGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tRXhwYW5kLnBuZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tRXhwYW5kLnN2ZycpO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJltzdGF0ZT1cIm9wZW5cIl0ge1xuXG4gICAgICA+LmFjY29yZGlvbkhlYWRlciB7XG5cbiAgICAgICAgPi5hY2NvcmRpb25FeHBhbmRUb2dnbGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLUNvbGxhcHNlLnBuZycpO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLUNvbGxhcHNlLnN2ZycpO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgICAgPi5hY2NvcmRpb25Db250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuaGFsZkNvbCB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHggMCA1cHg7XG4gICAgfVxuICAgIC5oYWxmQ29sICsgLmhhbGZDb2wge1xuICAgICAgcGFkZGluZzogMCA1cHggMCAxMHB4O1xuICAgIH1cblxuICAgIC5jb2xDb250ZW50Q29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG5cbiAgfVxuXG5cdC5tb2RhbFRpbGVzQ29udGFpbmVyIHtcblxuXHRcdHBhZGRpbmc6IDVweCAwIDNweDtcblxuXHRcdC5tb2RhbFRpbGU6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdH1cblxuXG5cdH1cblxuXHQubW9kYWxUaWxlIHtcblxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiAxMnB4O1xuXHRcdGhlaWdodDogMTY1cHg7XG5cblx0XHQubW9kYWxUaWxlTGFiZWwge1xuXHRcdFx0cGFkZGluZy1ib3R0b206ICRtb2RhbFN0eWxlcy1tb2RhbFRpbGVMYWJlbC1wYWRkaW5nLWJvdHRvbTtcblx0XHRcdGZvbnQtZmFtaWx5OiAkYmFzZS1ub3JtYWwtZm9udC10eXBlO1xuXHRcdFx0Zm9udC1zaXplOiAkbW9kYWxTdHlsZXMtbW9kYWxUaWxlTGFiZWwtZm9udC1zaXplO1xuXHRcdH1cblxuXHRcdC5tb2RhbFRpbGVUZXh0Q29udGFpbmVyIHtcblxuXHRcdFx0cCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44MTI1O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS41Mzg1ZW07XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXG5cdFx0XHRwIHNwYW46Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdH1cblxuXHRcdFx0LnNzaWRDb250YWluZXIgc3BhbiB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdH1cblx0XHRcdC5wYXNzd29yZENvbnRhaW5lciBzcGFuIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cblx0XHRcdHNwYW4ubGFiZWwge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0Ji5tb2RhbFRpbGVbc3RhdHVzPVwiaW5hY3RpdmVcIl0ge1xuXG5cdFx0XHQ+ICo6bm90KC5tb2RhbFRpbGVMYWJlbCk6bm90KC5vbk9mZlRvZ2dsZSkge1xuXHRcdFx0XHRjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcblx0XHRcdFx0b3BhY2l0eTogMC41XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG4gIC5tb2RhbEhlYWRlciwgLm1vZGFsSGVhZGluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAubW9kYWxIZWFkaW5nIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgfVxuXG4gICAgLm1vZGFsQ2FyZHNDb250YWluZXIge1xuXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDQwcHg7XG4gICAgICAgIHdpZHRoOiAoOTk2IC8gKCRkZXNpZ25Nb2RhbFdpZHRoIC0gODApKSAqIDEwMCU7XG5cbiAgICAgICAgLm1vZGFsQ2FyZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogKDMwIC8gOTA2KSAqIDEwMCU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICAgICAubW9kYWxDYXJkIHtcblxuICAgICAgICAgICAgd2lkdGg6ICgyODIgLyA5MDYpICogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cbiAgICAgICAgICAgIC5tb2RhbENhcmRDb250ZW50e1xuXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNjBweDtcblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuODEyNTtcblxuICAgICAgICAgICAgICAgICAgICAmLndhcm5pbmctdGV4dHtcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdhcm5pbmdUZXh0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm9uT2ZmVG9nZ2xlLnBpbm5lZCwgLnBpbm5lZEdyb3VwICB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMTJweDtcbiAgICAgICAgICBsZWZ0OiAxMnB4O1xuICAgICAgICB9XG4gICAgICAgIC5waW5uZWRHcm91cCB7XG4gICAgICAgICAgICB3aWR0aDogNzUlO1xuXG4gICAgICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHRcdFx0Zm9ybSB7XG5cdFx0XHRcdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQubW9kYWxDYXJkQWN0aW9uc0NvbnRhaW5lciB7XG5cblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOiAxMnB4O1xuXHRcdFx0XHRcdGxlZnQ6IDEycHg7XG5cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGEubW9kYWxDYXJkSGVscExpbmsge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRib3R0b206IDEycHg7XG5cdFx0XHRcdFx0cmlnaHQ6IDEycHg7XG5cblx0XHRcdFx0XHQuaGVscEljb24ge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDI1cHg7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDI1cHg7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1tZWQtSGVscC5wbmcnKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHR9XG5cblxuICAucmlnaHRIZWFkZXJTZXR0aW5nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuIC5mb3JtQ2VudGVye1xuICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICAgIHdpZHRoOiA0NTBweDtcbiAgfVxuXG4gIC5vbk9mZlRvZ2dsZS5zZXR0aW5nc1BhZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIHRvcDogNXB4O1xuICB9XG5cblx0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICB9XG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJvcmRlcjogNnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNjcm9sbGJhci1mb3JlZ3JvdW5kO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgLTFweCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KSwgaW5zZXQgMXB4IDFweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIH1cbiAgOjotd2Via2l0LXNjcm9sbGJhci1idXR0b24ge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICAgLmJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbi5jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tb2RhbCB7XG4gIHotaW5kZXg6ICRtb2RhbExheWVyRGVwdGggKiAkbW9kYWxMYXllckZpcnN0UHJpb3JpdHk7XG59XG5cbiNsb2dpbkNvbnRhaW5lcntcbiAgd2lkdGg6ICRsb2dpbk1vZGFsV2lkdGgrcHg7XG4gIGhlaWdodDogJGxvZ2luTW9kYWxIZWlnaHQrcHg7XG4gIHotaW5kZXg6ICRtb2RhbExheWVyRGVwdGggKiAkbW9kYWxMYXllckZpcnN0UHJpb3JpdHk7XG5cbiAgbWFyZ2luLXRvcDogKCgkbG9naW5Nb2RhbEhlaWdodCAvIDIpICogLTEpK3B4OyAvLy0xNzVweDtcbiAgbWFyZ2luLWxlZnQ6ICgoJGxvZ2luTW9kYWxXaWR0aCAvIDIpICogLTEpK3B4OyAvLy0zNTBweDtcbn1cblxuLyogSU5ORVIgTU9EQUwgV0lORE9XICovXG5cbi5pbm5lck1vZGFsIHtcblxuICBwYWRkaW5nOiAyNXB4IDIwcHggMjBweDtcblxuICAmLmhhc0hlYWRlciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5pbm5lck1vZGFsSGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcblxuICAgIGgxIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjI1ZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgfVxuXG4gIC8qIE9ubHkgdXNlIHRoaXMgZWxlbWVudCB3aGVuIGFsc28gdXNpbmcgLmlubmVyTW9kYWxIZWFkZXIgKi9cbiAgLmlubmVyTW9kYWxDb250ZW50IHtcbiAgICBwYWRkaW5nOiAyNXB4IDIwcHggMjBweDtcbiAgfVxuXG4gIC5wYWdlQWN0aW9uc0NvbnRhaW5lciB7XG4gICAgYm90dG9tOiAyNXB4O1xuICB9XG59XG5cbi5vcGVuZWRQb3B1cCAuYmFja2dyb3VuZC1vdmVybGF5OmFmdGVyLCAub3BlbmVkUG9wdXAgLmZvcmNlZC1iYWNrZ3JvdW5kLW92ZXJsYXk6YWZ0ZXIsICNhbHRlcm5hdGl2ZS1jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1wb3B1cCB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMyk7XG4gICAgei1pbmRleDogJG1vZGFsTGF5ZXJEZXB0aCAqICRtb2RhbExheWVyRm9ydGhQcmlvcml0eTtcbn1cblxuI2FsdGVybmF0aXZlLWNvbmZpcm1hdGlvbi1lcnJvci1zdWNjZXNzLXBvcHVwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJhY2tncm91bmQtb3ZlcmxheS5zZWNvbmQ6YWZ0ZXIsIC5mb3JjZWQtYmFja2dyb3VuZC1vdmVybGF5LnNlY29uZDphZnRlcntcbiAgICB0b3A6IDA7XG59XG5cbi8vIE5vdGU6IFRoaXMgc3R5bGUgaGFkIHRvIGJlIGFkZGVkIGhlcmUsIHJhdGhlciB0aGFuIGF0IHRoZSB0b3AgKHdoZXJlIGFsbCBvZiB0aGUgb3RoZXIgbW9kYWxzIGFyZSBjcmVhdGVkKSwgYmVjYXVzZVxuLy8gdGhlIGhlaWdodCBvZiB0aGUgc3VjY2Vzcy1lcnJvci1pbmRpY2F0b3Igd291bGQgYmUgb3ZlcnJpZGRlbiBieSB0aGUgYmFzZSBzdHlsZS5cbi5jb25maXJtYXRpb24tZXJyb3Itc3VjY2Vzcy1tb2RhbC5wbHVtZS1jb25maXJte1xuICAgIEBpbmNsdWRlIGlubmVyTW9kYWwoJGRlc2lnbkNvbmZpcm1Nb2RhbFdpZHRoLCAkZGVzaWduUGx1bWVDb25maXJtTW9kYWxIZWlnaHQpO1xuICAgIC8vIFRPRE86IFRoZSBzdWNjZXNzLWVycm9yLWluZGljYXRvciBoZWlnaHQgc2hvdWxkIGxpa2VseSBiZSBoYW5kbGVkIGJ5IHRoZSBpbm5lck1vZGFsIHBhcnRpYWwsIGJ1dCBpdCBtYXkgbm90IGJlIHNhZmUgdG8gZG8gc28gdGhlcmUgKGJlY2F1c2Ugb2YgbW9iaWxlKS4gQWxzbyBub3RlIHRoYXQgdGhlIGJhc2Ugc3R5bGluZyBmb3IgdGhlIHN1Y2Nlc3MtZXJyb3ItaW5kaWNhdG9yIGlzIGEgYml0IGhlYXZ5IGhhbmRlZFxuICAgICYgPiAjY29uZmlybWF0aW9uLWVycm9yLXN1Y2Nlc3MtbWVzc2FnZS5zdWNjZXNzLWVycm9yIHtcbiAgICAgICAgJiA+IC5zdWNjZXNzLWVycm9yLWluZGljYXRvciB7XG4gICAgICAgICAgICBoZWlnaHQ6ICN7JGRlc2lnblBsdW1lQ29uZmlybU1vZGFsSGVpZ2h0fXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICB9XG59IiwiLm1vZGFsUGFnZSB7XG5cbiAgLnRhYmxlQ29udGFpbmVyIHtcblxuICAgIHBhZGRpbmctdG9wOiA3cHg7XG5cbiAgfVxuXG4gIFxuICAuZW1wdHlUYWJsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMjkwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICAgIGhlaWdodDogMDtcbiAgfVxuXG4gIFxuICB0YWJsZSB7XG4gIFx0XG4gIFx0d2lkdGg6IDEwMCU7XG4gIFx0ZGlzcGxheTogdGFibGU7XG4gIFxuICBcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuICBcdGNvbG9yOiAkYmVsbC1kYXJrZ3JleS10ZXh0O1xuICBcdHRleHQtYWxpZ246IGxlZnQ7XG4gIFx0d2lkdGg6IDEwMCU7XG4gIFx0XHRcbiAgXHRcdFxuICBcdHRoZWFkIHtcbiAgXHRcdFxuICBcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Q4ZDhkODtcbiAgXHRcdGRpc3BsYXk6YmxvY2s7XG4gIFx0XHR3aWR0aDoxMDAlO1xuICBcdFx0Lyp0YWJsZS1sYXlvdXQ6Zml4ZWQ7Ki9cbiAgXHRcdFxuICBcdFx0dHIge1xuICBcdFx0XHRkaXNwbGF5OiB0YWJsZTtcbiAgXHRcdFx0dGFibGUtbGF5b3V0OmZpeGVkO1xuICBcdFx0fVxuICBcdFx0XG4gIFx0XHR0aCB7XG4gIFx0XHRcdGhlaWdodDogNDVweDtcbiAgXHRcdFx0cGFkZGluZzogNXB4IDEwcHg7XG4gIFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDhkOGQ4O1xuICBcdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDhkOGQ4O1xuICBcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q4ZDhkODtcbiAgXHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDhkOGQ4O1xuICBcdFx0fVxuICBcdFx0dGg6bm90KDpsYXN0LWNoaWxkKSB7XG4gIFx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXkgIWltcG9ydGFudDtcbiAgXHRcdH1cbiAgXHRcdFxuICBcdH1cbiAgXHRcbiAgXHQmLnNob3J0SGVhZGVyIHRoZWFkIHRkIHtcbiAgXHRcdGhlaWdodDogMjVweDtcbiAgXHR9XG4gIFx0XG4gIFx0XHRcbiAgXHR0Ym9keSB7XG4gIFx0XG4gIFx0XHRkaXNwbGF5OiBibG9jaztcbiAgXHRcdC8qaGVpZ2h0OiBfX19weDsqL1xuICBcdFx0d2lkdGg6IDEwMCU7XG4gIFx0XHRvdmVyZmxvdzogYXV0bztcbiAgXHRcdFxuICBcdFx0dHIge1xuICBcdFx0XHRcbiAgXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgXHRcdFx0LypoZWlnaHQ6IF9fcHg7Ki9cbiAgXHRcdFx0ZGlzcGxheTp0YWJsZTtcbiAgXHRcdFx0Lyp3aWR0aDogMTAwJTsqL1xuICBcdFx0XHR0YWJsZS1sYXlvdXQ6Zml4ZWQ7XG4gIFx0XHRcdFxuICBcdFx0XHRcbiAgXHRcdH1cbiAgXHRcdFxuICBcdFx0dGQge1xuICBcdFx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBcdFx0XHRwYWRkaW5nOiA4cHggNXB4IDhweCA4cHg7XG4gIFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICBcdFx0fVxuICBcdFx0dGQgKyB0ZCB7XG4gIFx0XHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgXHRcdH1cbiAgXHRcdFxuICBcdH1cbiAgXHRcbiAgXHQmLm5vQm9yZGVycyB7XG4gIFx0XG4gIFx0XHR0aGVhZCB0aCwgdGJvZHkgdGQge1xuICBcdFx0XHRib3JkZXI6IDA7XG4gIFx0XHR9XG4gIFx0XG4gIFx0fVxuICBcdCYucm93Qm9yZGVycyB7XG4gIFx0XG4gIFx0XHR0aGVhZCB0aCwgdGJvZHkgdGQge1xuICBcdFx0XHRib3JkZXI6IDA7XG4gIFx0XHR9XG4gIFx0XHR0cjpmaXJzdC1jaGlsZCB7XG4gIFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICBcdFx0fVxuICBcdFx0dHIge1xuICBcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgXHRcdH1cbiAgXHRcbiAgXHR9XG4gIFx0XHRcbiAgXHRcdFxuICBcdHRyIHtcbiAgXHRcdC8qd2lkdGg6IDc5OHB4OyovXG4gIFx0XHR3aWR0aDogMTAwJTtcbiAgXHR9XG4gIFx0XG4gIFx0XG4gIFx0c3BhbiB7XG4gIFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIFx0fVxuICBcdFx0XG4gIH1cbiAgXG4gIC5vbGRJRVdyYXBwZXIge1xuICBcdFxuICBcdC8qaGVpZ2h0OiBfX19weDsqL1xuICBcdG92ZXJmbG93OiBhdXRvO1xuICBcdFxuICBcdC5zdGF0c1RhYmxlIHtcbiAgXHRcdFxuICBcdFx0Lyp3aWR0aDogX19fX3B4OyovXG4gIFx0XHRcbiAgXHRcdHRib2R5IHtcbiAgXHRcdFx0aGVpZ2h0OiBhdXRvO1xuICBcdFx0fVxuICBcdFx0XG4gIFx0fVxuICBcdFxuICB9XG59IiwiLyogTUFYSU1VTSBOVU1CRVIgT0YgVEFCUyBPTiBBTlkgUEFHRSBJTiBUSEUgU1lTVEVNICovXG4kbWF4VGFiczogMTA7XG5cblxuQG1peGluIHNldHVwVGFic0ZvcldpZHRoKCRoZWFkZXJXaWR0aCkge1xuXG4gIEBmb3IgJHQgZnJvbSAxIHRvICRtYXhUYWJzKzEge1xuXG4gICAgQGluY2x1ZGUgY3JlYXRlRHluYW1pY1RhYlJ1bGVzKCR0LCAkaGVhZGVyV2lkdGgpO1xuXG4gIH1cblxufVxuXG5cbiAgQG1peGluIGNyZWF0ZUR5bmFtaWNUYWJSdWxlcygkdGFiTnVtLCAkdG90YWxQeFdpZHRoKSB7XG5cbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JHRhYk51bX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skdGFiTnVtfSk6Zmlyc3QtY2hpbGQgfiAqIHtcblxuICAgICAgQGluY2x1ZGUgc2V0dXBUYWJzKCR0YWJOdW0sICR0b3RhbFB4V2lkdGgpO1xuXG4gICAgfVxuXG4gIH1cblxuXG4gICAgQG1peGluIHNldHVwVGFicygkbnVtT2ZUYWJzLCAkdG90YWxQeFdpZHRoKSB7XG5cbiAgICAgIC8qd2lkdGg6ICgxMDAgLyAkbnVtT2ZUYWJzKSAqIDElOyovXG4gICAgICAkd2lkdGg6ICgkdG90YWxQeFdpZHRoIC8gJG51bU9mVGFicyk7XG5cbiAgICAgIHdpZHRoOiAjeyR3aWR0aH1weDtcblxuICAgICAgJGxlZnRQb3M6IDA7XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRvICRudW1PZlRhYnMrMSB7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoI3skaX0pIHtcblxuICAgICAgICAgIGxlZnQ6ICN7JGxlZnRQb3N9cHg7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8qJGxlZnRQb3M6ICRsZWZ0UG9zICsgKDEwMCAvICRudW1PZlRhYnMpOyovXG4gICAgICAgICRsZWZ0UG9zOiAkbGVmdFBvcyArICR3aWR0aDtcblxuICAgICAgfVxuXG4gICAgfVxuXG4vLyBUT0RPOiBSZWNvbmNpbGUgY29tbW9uIHBvcnRpb25zIG9mIHRoaXMgKHRoZSBsZWdhY3kgdGFiIGltcGxlbWVudGF0aW9uKSBhbmQgdGhlIGZsZXggdGFiIGltcGxlbWVudGF0aW9uLlxuLnRhYkNvbnRhaW5lciB7XG4gIC50YWJIZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuXG4gICAgLnRhYiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDEzNzc4O1xuICAgICAgLmJyYW5kLXZpcmdpbiAmIHtcbiAgICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUVFRUU7XG4gICAgICB9XG4gICAgICB6LWluZGV4OiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOm5vdCguY3VycmVudCkgKyAudGFiOm5vdCguY3VycmVudCkge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMwMDFkNWE7XG4gICAgICAgIC5icmFuZC12aXJnaW4gJiB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDdkN2Q3O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYi5jdXJyZW50IHtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgLmJyYW5kLXZpcmdpbiAmIHtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWE7XG4gICAgICAuYnJhbmQtdmlyZ2luICYge1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgICAgIH1cbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLnRhYi5jdXJyZW50IHtcbiAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgLW1vei1vcGFjaXR5OiAwLjQ7XG4gICAgICAgIC1raHRtbC1vcGFjaXR5OiAwLjQ7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDAxNDM5IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAuYnJhbmQtdmlyZ2luICYge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDEwcHggNTlweCAwO1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDE0Mzk7XG4gICAgICAgIC5icmFuZC12aXJnaW4gJiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgICBib3JkZXItd2lkdGg6IDAgMCA1OXB4IDEwcHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYi5jdXJyZW50IHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFiQm9keSB7XG4gICAgLnRhYkNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmLnBhZFRvcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgfVxuICAgICAgJi5wYWRkZWQge1xuICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsImh0bWwge1xuICBtaW4td2lkdGg6IGF1dG87XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFzaGJvYXJkLWJhY2tncm91bmQ7XG59XG5cbi5zcGxhc2hQYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2Uge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWluLXdpZHRoOiAxMjUxcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmFjdGl2aXR5LW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCkgdXJsKFwiI3skYXNzZXRQYXRofS9pbml0LWFjdGl2aXR5LWluZGljYXRvci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gIHotaW5kZXg6ICRtb2RhbExheWVyRGVwdGggKiAkbW9kYWxMYXllclNlY29uZFByaW9yaXR5OyAvKlRPRE86IEVsaW1pbmF0ZSB6LWluZGV4IChpZiBwb3NzaWJsZSksIG9yIHVzZSBhIGJldHRlciB6LWluZGV4IChwcmVmZXJhYmx5IG9uZSB0aGF0J3MgYSB2YXJpYWJsZSkgKi9cbn1cblxuaHRtbC5icmFuZC12aXJnaW4ge1xuICBoZWFkZXIge1xuICAgICNoZWFkZXJDb250ZW50cyB7XG4gICAgICAjQmVsbFRpdGxlTG9nbyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLyN7JGFzc2V0UGF0aH0vdWkvdmlyZ2luX2xvZ28ucG5nXCIpIG5vLXJlcGVhdCAwIDBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuXG4gICAgICAgICNnYXRld2F5VGl0bGUge1xuICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICBmb250LWZhbWlseTogJGJhc2Utbm9ybWFsLWZvbnQtdHlwZTtcbiAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQ3cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNDlweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlci1iYWNrZ3JvdW5kO1xuXG4gIC8qIFRZUEVBSEVBRCBTRUFSQ0ggVkFSSUFCTEVTICovXG4gICR0eXBlYWhlYWRXaWR0aDogMjMwO1xuICAkcmVzdWx0c1RvU2hvdzogNTsgLyogVGhpcyBpcyB0aGUgbnVtYmVyIG9mIHJlc3VsdHMgdG8gc2hvdyAqYmVmb3JlIHNjcm9sbGluZyogKi9cbiAgJHNlYXJjaFJlc3VsdEhlaWdodDogMzA7IC8qIFRoZSBoZWlnaHQgb2YgZWFjaCByZXN1bHQgaW4gdGhlIHNlYXJjaCByZXN1bHRzIGxpc3QgKi9cblxuICAjaGVhZGVyQ29udGVudHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgbWluLXdpZHRoOiAxMjUwcHg7XG4gICAgbWF4LXdpZHRoOiAxMzUwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgI0JlbGxUaXRsZUxvZ28ge1xuICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMTVweDtcbiAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgIGhlaWdodDogJGhlYWRlci1sb2dvLWhlaWdodDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vdWkvQmVsbExvZ28ucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQ7XG5cbiAgICAgICNnYXRld2F5VGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgODJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IC0xMnB4O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgfVxuICAgIH1cblxuICAgICNoZWFkZXJOb3RpZmljYXRpb25zV3JhcHBlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBtYXJnaW46IDE1cHggYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDE1MHB4O1xuXG4gICAgICAjaGVhZGVyTm90aWZpY2F0aW9ucyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItbm90aWZpY2F0aW9ucy1iYWNrZ3JvdW5kO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRidXR0b24tYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB3aWR0aDogMTUwcHg7XG5cbiAgICAgICAgLmRyb3BBcnJvdyB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5icmFuZC12aXJnaW4gJiAjaGVhZGVyTm90aWZpY2F0aW9ucyB7XG4gICAgICAgIHdpZHRoOiAxNzBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjaGVhZGVyQWN0aW9ucyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgPiAqICsgKiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuXG4gICAgICAvKiAqKiogVFlQRUFIRUFEIFNUWUxFUyAqKiogKi9cblxuICAgICAgI3NlYXJjaENvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDFweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAjc2VhcmNoRmllbGRCRyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgICAgIH1cblxuICAgICAgICAjaGlkZVNlYXJjaEZpZWxkQnV0dG9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAkaGlkZV9zZWFyY2hfZmllbGRfYnV0dG9uX21hcmdpbjtcbiAgICAgICAgICByaWdodDogJGhpZGVfc2VhcmNoX2ZpZWxkX2J1dHRvbl9tYXJnaW47XG4gICAgICAgICAgd2lkdGg6ICRoaWRlX3NlYXJjaF9maWVsZF9idXR0b25fc2l6ZTtcbiAgICAgICAgICBoZWlnaHQ6ICRoaWRlX3NlYXJjaF9maWVsZF9idXR0b25fc2l6ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIjeyRhc3NldFBhdGh9L3VpL2RlbGV0ZUJ1dHRvbl9zbWwucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50d2l0dGVyLXR5cGVhaGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG5cbiAgICAgIC50eXBlYWhlYWQsXG4gICAgICAudHQtcXVlcnksXG4gICAgICAudHQtaW5wdXQsXG4gICAgICAudHQtaGludCB7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwIDRweCAxMHB4O1xuICAgICAgICB3aWR0aDogODUlO1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwcHgpO1xuICAgICAgfVxuXG4gICAgICAudHQtaW5wdXQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50dC1tZW51IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHQtbWVudS1iYWNrZ3JvdW5kO1xuICAgICAgICB6LWluZGV4OiAkdG9wUHJpb3JpdHkgIWltcG9ydGFudDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHR0LW1lbnUtYWZ0ZXItYm9yZGVyLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAxNnB4IDE2cHggMCAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5icmFuZC12aXJnaW4gJiAudHQtbWVudSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHQtbWVudS1iYWNrZ3JvdW5kO1xuICAgICAgICB6LWluZGV4OiAkdG9wUHJpb3JpdHkgIWltcG9ydGFudDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnR0LWRhdGFzZXQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJlbGwtZ3JleTtcbiAgICAgIH1cblxuICAgICAgLnR0LXN1Z2dlc3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgICAgIGhlaWdodDogI3tzZWFyY2hSZXN1bHRIZWlnaHR9cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC45O1xuICAgICAgICBjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcblxuICAgICAgICAmICsgLnR0LXN1Z2dlc3Rpb24ge1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcbiAgICAgICAgICBjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcbiAgICAgICAgfVxuXG4gICAgICAgICYudHQtY3Vyc29yIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvKiAqKiogZW5kIG9mIFRZUEVBSEVBRCBTVFlMRVMgKioqICovXG5cbiAgICAgICNoZWFkZXJTZWFyY2gge1xuICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzN3B4O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tU2VhcmNoLnBuZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9pY29ucy9pY29uLVNlYXJjaC5zdmdcIik7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5oZWFkZXJCdXR0b24ge1xuICAgICAgICBjb2xvcjogJGJ1dHRvbi1oZWFkZXItZm9yZWdyb3VuZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1oZWFkZXItYmFja2dyb3VuZDtcbiAgICAgICAgZm9udC1zaXplOiAkYnV0dG9uLWhlYWRlci1mb250LXNpemU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgd2lkdGg6IDExNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAkYnV0dG9uLWhlYWRlci1oZWlnaHQ7XG4gICAgICAgIGJvcmRlcjogJGJ1dHRvbi1oZWFkZXItYm9yZGVyO1xuICAgICAgfVxuXG4gICAgICAjaGVhZGVyTG9naW4sXG4gICAgICAjaGVhZGVyTG9nb3V0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgd2lkdGg6ICRidXR0b24taGVhZGVyLWxvZ2luLXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAmLmF1dGhlbnRpY2F0ZWRVc2VyIHtcbiAgICAgICAgI2hlYWRlckxvZ2luIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgI2hlYWRlckxvZ291dCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZ3Vlc3RVc2VyIHtcbiAgICAgICAgI2hlYWRlckxvZ2luIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAjaGVhZGVyTG9nb3V0IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIGFsbCB7XG4gICAgI2hlYWRlckNvbnRlbnRzIHtcbiAgICAgICNoZWFkZXJBY3Rpb25zIHtcbiAgICAgICAgI3NlYXJjaENvbnRhaW5lciB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6ICN7JHR5cGVhaGVhZFdpZHRofXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnR5cGVhaGVhZCxcbiAgICAgICAgLnR0LXF1ZXJ5LFxuICAgICAgICAudHQtaW5wdXQsXG4gICAgICAgIC50dC1oaW50IHtcbiAgICAgICAgICB3aWR0aDogKCR0eXBlYWhlYWRXaWR0aCAtIDM0KSArIHB4OyAvKiAzNHB4IGlzIHRoZSBzcGFjZSBmb3IgdGhlICNoaWRlU2VhcmNoRmllbGRCdXR0b24gKi9cbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXJCdXR0b24ge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIGFsbCB7XG4gICAgI2hlYWRlckNvbnRlbnRzIHtcbiAgICAgICNCZWxsVGl0bGVMb2dvIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMjVweDtcbiAgICAgIH1cblxuICAgICAgI2hlYWRlck5vdGlmaWNhdGlvbnNXcmFwcGVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuXG4gICAgICAjaGVhZGVyQWN0aW9ucyB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICNzZWFyY2hDb250YWluZXIge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgI2hlYWRlclNlYXJjaCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyQnV0dG9uIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBhbGwge1xuICAgICNoZWFkZXJDb250ZW50cyB7XG4gICAgICAjQmVsbFRpdGxlTG9nbyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46ICRoZWFkZXItbG9nby1tYXJnaW47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgI2hlYWRlck5vdGlmaWNhdGlvbnNXcmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gICAgICB9XG5cbiAgICAgICNoZWFkZXJBY3Rpb25zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgYWxsIHtcbiAgICAjaGVhZGVyQ29udGVudHMge1xuICAgICAgI2hlYWRlck5vdGlmaWNhdGlvbnNXcmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNzVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxubWFpbiB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuXG4kY29sV3JhcHBlck1pbldpZHRoOiAyODA7XG4kZGFzaENvbFdyYXBNaW5XaWR0aDogJGNvbFdyYXBwZXJNaW5XaWR0aCArIDIwO1xuXG4jUHJvbW90aW9uYWxCYW5uZXIge1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGltZyB7XG4gICAgd2lkdGg6IDUxcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICRiZWxsLWxpZ2h0LWJsdWU7XG4gIH1cbn1cblxuI0Rhc2hib2FyZENvbnRlbnQge1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEyMjBweDtcbn1cblxuI0Rhc2hib2FyZENvbnRlbnQge1xuICBoMSB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6ICRkYXNoYm9hcmQtaDEtZm9udC1zaXplO1xuICB9XG5cbiAgLmRhc2hUaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMjBweCAyNXB4IDE1cHg7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgICBjb2xvcjogJGRhc2h0aWxlLWZvcmVncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhc2h0aWxlLWJhY2tncm91bmQtZGVmYXVsdDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA2NXB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFzaHRpbGUtYm9yZGVyLWRlZmF1bHQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFzaHRpbGUtaG92ZXItZGVmYXVsdDtcbiAgICAgIGNvbG9yOiAkZGFzaHRpbGUtaG92ZXItZm9yZWdyb3VuZC1kZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gIC5kYXNoVGlsZS5scmdUaWxlIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA3MHB4O1xuICB9XG5cbiAgI215U2VydmljZXMge1xuICAgIC5zZXJ2aWNlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDIwcHggMTBweCAyMHB4IDE0NXB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNDVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDE1cHggY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFzaHRpbGUtc2VydmljZS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGRhc2h0aWxlLXNlcnZpY2UtaG92ZXItZm9yZWdyb3VuZDtcbiAgICAgIH1cblxuICAgICAgLnNlcnZpY2VDb250ZW50Q29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAxNDBweDtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG5cbiAgICAgICAgLnNlcnZpY2VDb250ZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAuc2VydmljZVRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1hbHQtZm9udC10eXBlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGFzaGJvYXJkLXNlcnZpY2UtdGl0bGUtZm9udC1zaXplO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zdGF0dXNMaW5lIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1ub3JtYWwtZm9udC10eXBlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGFzaGJvYXJkLXN0YXR1c0xpbmUtZm9udC1zaXplO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06ICRkYXNoYm9hcmQtc3RhdHVzTGluZS10ZXh0LXRyYW5zZm9ybTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJltzdGF0dXM9XCJVUFwiXSAuc3RhdHVzTGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZWVuO1xuICAgICAgfVxuICAgICAgJltzdGF0dXM9XCJUUk9VQkxFXCJdIC5zdGF0dXNMaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgICAgIH1cbiAgICAgICZbc3RhdHVzPVwiRE9XTlwiXSAuc3RhdHVzTGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICB9XG4gICAgICAmW3N0YXR1cz1cIk5PVFNVQlNDUklCRURcIl0gLnN0YXR1c0xpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyZXk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlcnZpY2UgKyAuc2VydmljZSB7XG4gICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgIH1cblxuICAgIC5zZXJ2aWNlIHtcbiAgICAgICYuaW50ZXJuZXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L3NlcnZpY2UtSW50ZXJuZXRfZ3JleS5wbmdcIik7XG4gICAgICB9XG4gICAgICAmLmZpYmVUViB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vc2VydmljZS1GaWJlVFZfZ3JleS5wbmdcIik7XG4gICAgICB9XG4gICAgICAmLmZpYmVWb2ljZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vc2VydmljZS1GaWJlVm9pY2Vfd2lkZV9ncmV5LnBuZ1wiKTtcbiAgICAgIH1cbiAgICAgIC5tYXJrZXQtYmJtICYuZmliZVZvaWNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9zZXJ2aWNlLUZpYmVWb2ljZV9idXNpbmVzc19ncmV5LnBuZ1wiKTtcbiAgICAgIH1cbiAgICAgICZbc3RhdHVzPVwiVVBcIl0sXG4gICAgICAmW3N0YXR1cz1cIlRST1VCTEVcIl0sXG4gICAgICAmW3N0YXR1cz1cIkRPV05cIl0ge1xuICAgICAgICAmLmludGVybmV0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L3NlcnZpY2UtSW50ZXJuZXQucG5nXCIpO1xuICAgICAgICB9XG4gICAgICAgICYuZmliZVRWIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L3NlcnZpY2UtRmliZVRWLnBuZ1wiKTtcbiAgICAgICAgfVxuICAgICAgICAmLmZpYmVWb2ljZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9zZXJ2aWNlLUZpYmVWb2ljZV93aWRlLnBuZ1wiKTtcbiAgICAgICAgfVxuICAgICAgICAubWFya2V0LWJibSAmLmZpYmVWb2ljZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9zZXJ2aWNlLUZpYmVWb2ljZV9idXNpbmVzcy5wbmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiAqKiogT1RIRVIgVElMRVMgKioqICovXG4gICNtYW5hZ2VXaWZpQ29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tbWVkLVdpRmkucG5nXCIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1tZWQtV2lGaS5zdmdcIik7XG4gICAgJi5jZW50ZXJJbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIH1cblxuICAgICNwcmltYXJ5TmV0d29ya0NvbnRhaW5lcixcbiAgICAjZ3Vlc3ROZXR3b3JrQ29udGFpbmVyIHtcbiAgICAgICYubmV0d29ya0Rpc2FibGVkIHtcbiAgICAgICAgLlNTSURDb250YWluZXIsXG4gICAgICAgIC5XaUZpUGFzc3dvcmRDb250YWluZXIsXG4gICAgICAgIC5ub3RDb21tb25QcmltYXJ5TmV0d29yayB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXR3b3JrRGlzYWJsZWRUZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1N3B4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjgxMjU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm5ldHdvcmtEaXNhYmxlZFRleHQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICNwcmltYXJ5TmV0d29ya0NvbnRhaW5lciB7XG4gICAgICAmLm5vdENvbW1vbk5ldHdvcmsge1xuICAgICAgICAuU1NJRENvbnRhaW5lcixcbiAgICAgICAgLldpRmlQYXNzd29yZENvbnRhaW5lciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ub3RDb21tb25QcmltYXJ5TmV0d29yayxcbiAgICAgICAgLmNsaWNrVGl0bGUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ub3RDb21tb25QcmltYXJ5TmV0d29yayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLldpRmlQYXNzd29yZENvbnRhaW5lcixcbiAgICAuU1NJRENvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMjQwcHg7XG4gICAgfVxuXG4gICAgLmNsaWNrVGl0bGUsXG4gICAgLm5ldHdvcmtEaXNhYmxlZFRleHQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5zaG93UGFzc3dvcmQsXG4gICAgLnNob3dTU0lEIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zaG93IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5wYXNzd29yZENvbnRhaW5lci53cmFwUGFzc3dvcmQsXG4gICAgLlNTSUQud3JhcFNTSUQge1xuICAgICAgLmNsaWNrVGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgLnNob3dQYXNzd29yZCxcbiAgICAgIC5zaG93U1NJRCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI215TmV0d29ya0NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9pY29ucy9pY29uLWxyZy1OZXR3b3JrLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tbHJnLU5ldHdvcmsuc3ZnXCIpO1xuICB9XG5cbiAgI215VXNhZ2VDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1CYW5kd2lkdGhVc2FnZS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9pY29ucy9pY29uLUJhbmR3aWR0aFVzYWdlLnN2Z1wiKTtcbiAgfVxuXG4gICNzcGVlZFRlc3RDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1tZWQtU3BlZWRUZXN0LnBuZ1wiKTtcbiAgfVxuXG4gICNiYXR0ZXJ5QmFja3VwQ29udGFpbmVyIHtcbiAgICAmLmNyaXRpY2FsU3RhdGUge1xuICAgICAgI2JhdHRlcnlCYWNrdXAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFzaHRpbGUtYmFja2dyb3VuZC1hbGVydDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFzaHRpbGUtaG92ZXItYWxlcnQ7XG4gICAgICAgIH1cblxuICAgICAgICAud2FybmluZ0ljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvYmF0dGVyeV93YXJuaW5nX2ljb24ucG5nXCIpO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuTGFiZWxTdWJJbmZvIHtcbiAgICAgICAgICBjb2xvcjogIzZmOWVjNTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICNiYXR0ZXJ5QmFja3VwIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1tZWQtQmF0dGVyeS5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tbWVkLUJhdHRlcnkuc3ZnXCIpO1xuXG4gICAgICAmLmJhdHRlcnlJc05vdFByZXNlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tbWVkLUJhdHRlcnktd2FybmluZy5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXNodGlsZS1iYWNrZ3JvdW5kLWFsZXJ0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXNodGlsZS1ob3Zlci1hbGVydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5icmFuZC12aXJnaW4gLmdhdGV3YXktdHlwZS1zYmlnICYgI21vZGVtUHJlZmVyZW5jZXNDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWMtbW9kZW0tc3RldmUucG5nXCIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWMtbW9kZW0tc3RldmUuc3ZnXCIpO1xuICB9XG5cbiAgI21vZGVtUHJlZmVyZW5jZXNDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1Nb2RlbS5wbmdcIik7XG5cbiAgICAuYnJhbmQtdmlyZ2luIC5nYXRld2F5LXR5cGUtaGg0MDAwICYge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9pY29ucy9pY29uLU1vZGVtLXZpbmNlbnQucG5nXCIpO1xuICAgIH1cbiAgfVxuXG4gICNhZHZhbmNlZFNldHRpbmdzQ29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tVG9vbHMucG5nXCIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1Ub29scy5zdmdcIik7XG4gIH1cblxuICAudGlsZUluZm9Db250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDM1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLnRpbGVJbmZvQmxvY2sge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAudGlsZUluZm9OdW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1ub3JtYWwtZm9udC10eXBlO1xuICAgICAgICBmb250LXNpemU6ICRkYXNoYm9hcmQtdGlsZUluZm9OdW0tZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGRhc2hib2FyZC10aWxlSW5mb051bS1saW5lLWhlaWdodDtcbiAgICAgIH1cblxuICAgICAgLnRpbGVJbmZvTGFiZWwge1xuICAgICAgICB3b3JkLXNwYWNpbmc6IDk5OTk5OTlweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGlsZUluZm9Db2xMZWZ0IHtcbiAgICAgIHBhZGRpbmc6IDAgMjVweCAwIDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7XG4gICAgfVxuICAgIC50aWxlSW5mb0NvbFJpZ2h0IHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC50aWxlVGV4dENvbnRhaW5lcldyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDIwcHg7XG4gICAgbWFyZ2luOiAwIDAgMCAtMjVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC50aWxlVGV4dENvbnRhaW5lciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBwYWRkaW5nOiAwIDAgMCAyNXB4O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWluLXdpZHRoOiAyMjVweDtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44MTI1O1xuICAgICAgbGluZS1oZWlnaHQ6ICRkYXNoYm9hcmQtdGlsZS10ZXh0LXAtbGluZS1oZWlnaHQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIHNwYW4ubGFiZWwge1xuICAgICAgICB3aWR0aDogMTAzcHg7XG4gICAgICB9XG5cbiAgICAgICYudGl0bGUge1xuICAgICAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAudGlsZUxhYmVsIHtcbiAgICBmb250LWZhbWlseTogJGRhc2hib2FyZC10aWxlLWxhYmVsLWZvbnQtZmFtaWx5O1xuICAgIHRleHQtdHJhbnNmb3JtOiAkZGFzaGJvYXJkLXRpbGUtbGFiZWwtdGV4dC10cmFuc2Zvcm07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogJGRhc2hib2FyZC10aWxlLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGRhc2hib2FyZC10aWxlLWxhYmVsLWxpbmUtaGVpZ2h0O1xuXG4gICAgLkxhYmVsU3ViSW5mbyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEuMmVtO1xuICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLW5vcm1hbC1mb250LXR5cGU7XG4gICAgICBmb250LXNpemU6ICRkYXNoYm9hcmQtTGFiZWxTdWJJbmZvLWZvbnQtc2l6ZTsgLyogUGFyZW50IGZvbnQgc2l6ZSBpcyAyMnB4IGF0IHRoaXMgcG9pbnQgKi9cbiAgICAgIGxpbmUtaGVpZ2h0OiAkZGFzaGJvYXJkLUxhYmVsU3ViSW5mby1saW5lLWhlaWdodDtcbiAgICB9XG4gIH1cblxuICAudGlsZUxhYmVsI21hbmFnZU15V2lmaVRpbGVMYWJlbCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC53aGl0ZUJHIGEgLnRpbGVMYWJlbCB7XG4gICAgY29sb3I6ICRkYXNoYm9hcmQtd2hpdGVCRy10aWxlTGFiZWwtZm9yZWdyb3VuZDtcbiAgfVxuXG4gID4gLmRhc2hDb2xDb250YWluZXIge1xuICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gID4gLmRhc2hDb2xDb250YWluZXIuY29sMiB7XG4gICAgLmRhc2hJbm5lckNvbENvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMjkwcHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGJvcmRlci1yaWdodDogJGRhc2h0aWxlLWNvbDItYm9yZGVyO1xuICAgIH1cblxuICAgIC5lbXB0eUl0ZW0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5kYXNoQ29sQ29udGFpbmVyIHtcbiAgICAuZGFzaElubmVyQ29sQ29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAyOTVweDtcbiAgICB9XG4gIH1cblxuICA+IC5kYXNoQ29sQ29udGFpbmVyLmNvbDEge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgfVxuXG4gID4gLmRhc2hDb2xDb250YWluZXIuY29sMiB7XG4gICAgd2lkdGg6IDYxMHB4O1xuICB9XG5cbiAgPiAuZGFzaENvbENvbnRhaW5lci5jb2wzIHtcbiAgICB3aWR0aDogMjkwcHg7XG4gIH1cbn1cblxuZm9vdGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgbWluLWhlaWdodDogNjBweDtcbiAgbWF4LXdpZHRoOiAxMzUwcHg7XG5cbiAgcCB7XG4gICAgY29sb3I6ICRiZWxsLWRhcmtncmV5LXRleHQ7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07XG4gIH1cblxuICBwLmNvcHkge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICNGb290ZXJMaW5rcyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgcC5saW5rcyB7XG4gICAgICBmb250LXNpemU6IDAuOGVtO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGZvb3Rlci1saW5rcy1mb3JlZ3JvdW5kO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgYWxsIHtcbiAgICBwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICBwLmNvcHkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgI0Zvb3RlckxpbmtzIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLyogKioqKiBQQUdFIFNQRUNJRklDIFNUWUxFUyAqKioqICovXG5cbi5nYXRld2F5LXR5cGUtdWJpZyB7XG4gICNBYm91dC1DYXJkIHtcbiAgICAgICNtb2RlbURldGFpbHMuY29sdW1uIHtcbiAgICAgICAgI21vZGVtSW1nIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGFzc2V0UGF0aH0vTW9kZW1fVUJJRy5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICB9XG59XG5cbi5nYXRld2F5LXR5cGUtYmlnIHtcbiAgI0Fib3V0LUNhcmQge1xuICAgICAgI21vZGVtRGV0YWlscy5jb2x1bW4ge1xuICAgICAgICAjbW9kZW1JbWcge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS9Nb2RlbV9CSUcucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgfVxufVxuXG4uZ2F0ZXdheS10eXBlLXNiaWcge1xuICAjQWJvdXQtQ2FyZCB7XG4gICAgICAjbW9kZW1EZXRhaWxzLmNvbHVtbiB7XG4gICAgICAgICNtb2RlbUltZyB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcjeyRhc3NldFBhdGh9L01vZGVtX1NCSUcucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgfVxufVxuXG4uZ2F0ZXdheS10eXBlLWhoNDAwMCwgLmdhdGV3YXktdHlwZS1naWdhLWh1YiB7XG4gICNBYm91dC1DYXJkIHtcbiAgICAjbW9kZW1EZXRhaWxzLmNvbHVtbiB7XG4gICAgICAjbW9kZW1JbWcge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGFzc2V0UGF0aH0vSG9tZUh1YjRLX2Zyb250LnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNBYm91dC1DYXJkIHtcblxuXHQmLmhpZGUtbW9kZW0tbGlnaHQtZGV0YWlscyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0I21vZGVtRGV0YWlscy5jb2x1bW4ge1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHR9XG5cdH1cblxuXHQjbW9kZW1EZXRhaWxzLmNvbHVtbiB7XG5cblx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMzBweDtcblx0XHR3aWR0aDogMzMlO1xuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cblx0XHQjbW9kZW1JbWcge1xuXHRcdFx0aGVpZ2h0OiAxNTBweDtcblx0XHR9XG5cblx0XHQjbW9kZW1JbmZvIHtcblx0XHRcdG1hcmdpbjogMzBweCAwO1xuXG5cdFx0XHR0ZDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdHdpZHRoOiA1NyU7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG5cdCNtb2RlbUljb25zLmNvbHVtbiB7XG5cblx0XHR3aWR0aDogNjQlO1xuXHRcdG92ZXJmbG93OiBhdXRvO1xuXG5cdFx0LmNvbENvbnRlbnRDb250YWluZXIge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cblx0XHQjbW9kZW1JY29uTGlzdCB7XG5cblx0XHRcdHRyIHtcblx0XHRcdFx0aGVpZ2h0OiA3NnB4O1xuXHRcdFx0fVxuXG5cdFx0XHQuY29sSWNvbiB7XG5cdFx0XHRcdHBhZGRpbmc6IDhweCA1cHggOHB4IDA7XG5cdFx0XHR9XG5cblx0XHRcdC5jb2xOYW1lIHtcblx0XHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0fVxuXG5cdFx0XHQuY29sRGVzY3JpcHRpb24ge1xuXG5cdFx0XHRcdC5zdGF0ZSB7XG5cdFx0XHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxuXG5cblx0LyogVEFCTEUgQ09MVU1OIFdJRFRIUyAqL1xuXG5cdCR0YWJsZS1kZXNpZ24td2lkdGg6IDY1MDtcblxuXHQjbW9kZW1JY29uTGlzdCB7XG5cblx0XHQuY29sSWNvbiB7IHdpZHRoOiAoIDYwIC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH1cblx0XHQuY29sTmFtZSB7IHdpZHRoOiAoIDExNSAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9XG5cblx0fVxuXG5cbn1cbiIsImJvZHkuYWNjZXNzRGVuaWVkIHsgXG4gICAgI2hlYWRlckNvbnRlbnRze1xuICAgICAgICBoZWlnaHQ6IDc0cHg7XG4gICAgfVxuICB9XG4gIFxuICAjQWNjZXNzRGVuaWVkLVZpZXcge1xuICAgIFxuICAgICYuYWNjZXNzRGVuaWVke1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDBweCwgMnB4LCA1cHgsIDJweCwgNTAsIDUwLCA1MCwgMC40KTtcbiAgICAgICAgd2lkdGg6IDkwMHB4O1xuICAgICAgICBjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcbiAgICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggNDBweCAwIDQwcHg7XG4gICAgICAgIG1hcmdpbjogNDBweCBhdXRvO1xuICAgIH1cbiAgXG4gICAgICAubW9kYWwtc3ViLWhlYWRlci13cmFwe1xuICAgICAgICAgIG1hcmdpbi1sZWZ0Oi00MHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6LTQwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDokYmVsbC1oZWFkZXItbGlnaHQtZ3JleTtcbiAgICAgICAgICBwYWRkaW5nOjQwcHggMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjQwcHg7XG4gICAgICAgICAgd2lkdGg6IDkwMHB4O1xuICAgICAgICAgIGNvbG9yOmJsYWNrO1xuICAgICAgICAgIFxuICAgICAgICAgIC50aXRsZSBoMSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICBjb2xvcjogJGJlbGwtZGFya2dyZXktdGV4dDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICB9XG4gICAgICB9XG4gIFxuICAgICAgLm1vZGFsLXN1Yi1oZWFkZXItaW5uZXItd3JhcHtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvIDA7XG4gIFxuICAgICAgICAgIC5pY29uLWVycm9ye1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvbHJnLWZhaWwucG5nJykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICB3aWR0aDogNDhweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MjBweDtcbiAgICAgICAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLm1vZGFsLXN1Yi1oZWFkZXItZGVzY3JpcHRpb257XG4gICAgICAgICAgICAgIGhlaWdodDo0OHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDo0OHB4O1xuICAgICAgICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgfVxuICAiLCIvKiAqKioqIFBBR0UgU1BFQ0lGSUMgU1RZTEVTICoqKiogKi9cblxuI0JhdHRlcnlCYWNrdXAtVmlldyB7XG5cdFxuICAgIGxhYmVsIHtcbiAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAmLmRpc2Nvbm5lY3RlZCB7XG4gICAgI2JhdHRlcnlTdGF0dXNJbmZvLmNvbHVtbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIFxuICAgICAgI2JhdHRlclN0YXR1c0l0ZW1zQ29udGFpbmVyIHtcbiAgICAgICAgI2NyaXRpY2FsU3RhdGVJbWFnZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICNiYXR0ZXJ5TWV0ZXJPdXRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICBcbiAgICAgICAgI2JhdHRlcnlQZXJjZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgIH1cbiAgICAgXG4gICAgICNiYXR0ZXJ5Tm90aWZpY2F0aW9ucyB7XG4gICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgfVxuICAgICBcbiAgICAgI3NhdmUge1xuICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgIH1cbiAgfVxuICBcblx0I2JhdHRlcnlTdGF0dXNJbmZvLmNvbHVtbiB7XG5cdFxuXHRcdG1hcmdpbi1yaWdodDogMzBweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuXHRcdHdpZHRoOiAzNiU7XG5cblx0XHQjYmF0dGVyU3RhdHVzSXRlbXNDb250YWluZXIge1xuXHRcdFx0bWFyZ2luLXRvcDogMTAwcHg7XG5cdFx0XHRcblx0XHRcdCYuY3JpdGljYWxTdGF0ZSB7XG5cdFx0XHQgICNiYXR0ZXJ5TWV0ZXJPdXRlciB7XG5cdFx0XHQgICAgZGlzcGxheTogbm9uZTtcblx0XHRcdCAgfVxuXHRcdFx0ICBcblx0XHRcdCAgI2NyaXRpY2FsU3RhdGVNZXNzYWdlLCAjY3JpdGljYWxTdGF0ZUltYWdlIHtcblx0XHRcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdCAgfVxuXHRcdFx0ICBcblx0XHRcdH1cblxuICAgICAgI2NyaXRpY2FsU3RhdGVNZXNzYWdlLCAjY3JpdGljYWxTdGF0ZUltYWdlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgI2NyaXRpY2FsU3RhdGVJbWFnZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMnB4O1xuICAgICAgICAgIGhlaWdodDogMjA0cHg7XG4gICAgICAgICAgbWFyZ2luOiAzNXB4IGF1dG8gMzBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L2ljb25zL2JhdHRlcnlfd2FybmluZy5wbmdcIik7XG4gICAgICB9XG4gICAgICBcbiAgICAgICNjcml0aWNhbFN0YXRlTWVzc2FnZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICB9XG4gICAgICB9XG5cdFx0XHRcblx0XHRcdCNiYXR0ZXJ5UGVyY2VudCB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiBCZWxsU2xpbU1lZGl1bVJlZ3VsYXI7XG5cdFx0XHRcdGNvbG9yOiAkYmVsbC1kYXJrZ3JleS10ZXh0O1xuXHRcdFx0XHRmb250LXNpemU6ICRiYXR0ZXJ5LWZvbnQtc2l6ZTtcblx0XHRcdFx0dGV4dC1hbGlnbjogJGJhdHRlcnktdGV4dC1hbGlnbjtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0I2JhdHRlcnlNZXRlck91dGVyIHtcblx0XHRcdFx0XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0bWFyZ2luOiA1NXB4IGF1dG8gMzBweDtcblx0XHRcdFx0d2lkdGg6IDk1cHg7XG5cdFx0XHRcdGhlaWdodDogMTcycHg7XG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRiYXR0ZXJ5LW1ldGVyLW91dGVyLWJvcmRlcjtcblx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMHB4KTtcblx0XHRcdFx0XG5cdFx0XHRcdCNiYXR0ZXJ5TWV0ZXJUb3Age1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IC0xN3B4O1xuXHRcdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTI1cHg7XG5cdFx0XHRcdFx0d2lkdGg6IDUwcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxN3B4O1xuXHRcdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRiYXR0ZXJ5LW1ldGVyLXRvcC1ib3JkZXI7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cy10b3AtbGVmdCg2cHgpO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMtdG9wLXJpZ2h0KDZweCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCNiYXR0ZXJ5TGV2ZWxDb250YWluZXIge1xuXHRcdFx0XHRcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOiA0cHg7XG5cdFx0XHRcdFx0bGVmdDogMnB4O1xuXHRcdFx0XHRcdHdpZHRoOiA4N3B4O1xuXHRcdFx0XHRcdGhlaWdodDogMTYwcHg7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0I2JhdHRlcnlMZXZlbCB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDg3cHg7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDgwJTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRiYXR0ZXJ5LWxldmVsLWNvbnRhaW5lci1iYWNrZ3JvdW5kO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCNiYXR0ZXJ5TWV0ZXJNYXNrIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0d2lkdGg6IDkxcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxNjhweDtcblx0XHRcdFx0XHRib3JkZXI6IDRweCBzb2xpZCAjZmZmO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMTBweCk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQjdGltZVJlbWFpbmluZyB7XG5cdFx0XHQgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCNiYXR0ZXJ5U3RhdHVzLCAjdGltZVJlbWFpbmluZyB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMTtcblx0XHRcdFx0Y29sb3I6ICRiZWxsLWRhcmtncmV5LXRleHQ7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFxuXHR9XG5cdFxuXHQjYmF0dGVyeU5vdGlmaWNhdGlvbnMuY29sdW1uIHtcblx0XHRcblx0XHR3aWR0aDogNjElO1xuXHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdFxuXHRcdC5jb2xDb250ZW50Q29udGFpbmVyIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHRcdFxuXHRcdGgyIHtcblx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogOHB4O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFxuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdHAge1xuXHRcdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDZweDtcblx0XHR9XG5cdFx0XG5cdFx0LmZvcm1CbG9jayB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuXHRcdH1cblx0XHRcblx0XHQjYmF0dGVyeUxpZmVOb3RpZmljYXRpb25Db250YWluZXJ7XG5cblx0XHQgICNiYXR0ZXJ5TGlmZU5vdGlmaWNhdGlvbntcblx0XHQgICAgbWFyZ2luLXRvcDogMTVweDtcblx0XHQgIH1cblxuXHRcdCAgI2VtYWlsQW5kU01Te1xuXHRcdCAgICBtYXJnaW4tdG9wOiAwO1xuXHRcdCAgICBtYXJnaW4tbGVmdDogMzdweDtcblx0XHQgICAgYm9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdCAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0ICAgIFxuXHRcdCAgICBsYWJlbCwgZGl2LnRleHRWYWx1ZSB7XG5cdFx0ICAgICAgbGluZS1oZWlnaHQ6IDIuMDYyNWVtO1xuXHRcdCAgICAgIHdpZHRoOiAxMjBweDtcblx0XHQgICAgfVxuXHRcdCAgICBcblx0XHQgICAgLmRlZmF1bHRTTVMge1xuXHRcdCAgICAgIGRpc3BsYXk6IG5vbmU7XG5cdFx0ICAgIH1cblx0XHQgICAgXG5cdFx0ICAgIC5lbXB0eUNyZWRlbnRpYWxTTVMge1xuXHRcdFx0ICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0XHQgIFxuXHRcdFx0XHQuZGVmYXVsdFNNUyB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdH1cblx0XHQgICAgfVxuXHRcdCAgICBcblx0XHQgICAgI2VkaXRFbWFpbEFuZFNNU0J1dHRvbntcblx0XHQgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcblx0XHQgICAgfVxuXHRcdCAgfVxuXHRcdCAgXG5cdFx0ICAjdHJpcGxlQmVlcE9wdGlvbiB7XG5cdFx0ICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdCAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XHQgICAgbWFyZ2luLXRvcDogMDtcblx0XHQgIH1cblx0XHQgIFxuXHRcdCAgI3JlY2VpdmVOb3RpZmljYXRpb25Mb3dMZXZlbHtcblx0XHQgICAgICAuZm9ybUJsb2NrIHtcblx0XHQgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0ICAgICAgfVxuXHRcdCAgfVxuXHRcdH1cblx0XHRcblx0fVxuXHRcbn1cdFxuIiwiI01hbmFnZURldmljZSB7XG5cbiAgLmhhbGZDb2wge1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgfVxuXG4gIC5jYXB0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICB9XG5cbiAgI2RldmljZUljb25zIHtcbiAgXG4gICAgdWwuZGV2aWNlSWNvbnMuaW5saW5lSXRlbXMge1xuICAgICAgXG4gICAgICBwYWRkaW5nOiA2cHggNXB4IDVweCA2cHg7XG4gICAgICBoZWlnaHQ6IDExNXB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIFxuICAgICAgLmRldmljZUljb24sIC5kZXZpY2VJY29uU29saWQge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgIH1cbiAgICBcbiAgICB9XG4gICAgXG4gICAgLnNob3dMZXNzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgICYuZXhwYW5kZWQge1xuICAgIFxuICAgICAgdWwuZGV2aWNlSWNvbnMuaW5saW5lSXRlbXMge1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDNweCA0cHg7XG4gICAgICB9XG4gICAgfVxuICBcbiAgfSAgXG4gIFxuICAjaXBBc3NpZ25lZHtcbiAgICBkaXNwbGF5IDogbm9uZTtcbiAgfVxuICBcbiAgI0RldmljZU5hbWUtU2V0dGluZ3MudXNie1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIFxuICAuaXNVU0J7XG4gICAgIGZsb2F0OiBsZWZ0O1xuICAgICB3aWR0aDogNTAlO1xuICAgICBoZWlnaHQ6IDM0MHB4O1xuICAgICBwYWRkaW5nOiAwIDMzcHg7XG4gICAgIFxuICAgICAmLmxlZnRCb3JkZXJ7XG4gICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTFlMWUxO1xuICAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDI1cHggIWltcG9ydGFudDtcbiAgICAgfVxuICAgICBcbiAgICAgJi51c2JTZWN0aW9uIHtcbiAgICAgICBsYWJlbCwgLnRleHRWYWx1ZSwgLnRleHRGaWVsZFZhbHVle1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjllbTtcbiAgICAgICB9XG4gICAgIH1cbiAgfVxuXG4gIC5kaXNjb25uZWN0ZWQgLmlzVVNCe1xuICAgIGxhYmVsW2Zvcj1cInVzYlR5cGVcIl0sXG4gICAgbGFiZWxbZm9yPVwidXNiUG9ydFwiXSxcbiAgICBsYWJlbFtmb3I9XCJ1c2JUb3RhbFNwYWNlXCJdLFxuICAgIGxhYmVsW2Zvcj1cInVzYlVzZWRTcGFjZVwiXSxcbiAgICBsYWJlbFtmb3I9XCJ1c2JBdmFpbGFibGVTcGFjZVwiXVxuICAgIHtcbiAgICAgIGNvbG9yOiRiZWxsLWxpZ2h0Z3JleS10ZXh0O1xuICAgIH1cbiAgfVxuICBcbiAgI2lwSXNSZXNlcnZlZCB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG5cbiAgI2N1cnJlbnRSZXN0cmljdGlvbkRpc3BsYXkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTFlMWUxO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAubXVsdGlMaW5lLmNvbG9yQkcubGlnaHRHcmV5Qkcge1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgIH1cbiAgfVxufSIsIiNESENQU2V0dGluZ3MtVmlldyB7XG5cdFxuXHRcblx0aW5wdXQuaXBTZWdtZW50IHtcblx0ICB3aWR0aDogNjRweDtcblx0fVxuXHRcblx0I2RoY3BTdGF0dXMge1xuXHRcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA0MHB4O1xuXHRcdGxlZnQ6IDQwcHg7XG5cdFx0XG5cdFx0bGFiZWwge1xuXHRcdFx0cGFkZGluZy1yaWdodDogMTVweDtcblx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjY4NzVlbTtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblx0XG5cdH1cblx0XG5cdCNzaG93REhDUFRhYmxlQnV0dG9uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1cHg7XG5cdFx0cmlnaHQ6IDQwcHg7XG5cdH1cblxuICAgIC5icmFuZC12aXJnaW4gJiAjc2hvd0RIQ1BUYWJsZUJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMzMzMzMzO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cdFxuXHRcblx0I2RoY3BDb250ZW50Q29udGFpbmVyIHtcblx0XG5cdFx0Ly93aWR0aDogNjU1cHg7XG5cdFx0bWFyZ2luOiA1MHB4IGF1dG8gMDtcblx0XHRwYWRkaW5nLXRvcDogMTVweDtcblx0XHRoZWlnaHQ6ICAgNTE1cHg7XG5cdFx0XG5cdFx0LmhhbGZDb2w6Zmlyc3QtY2hpbGQge1xuXHRcdFx0cGFkZGluZy1yaWdodDogMjVweDtcblx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHR9XG5cdFx0LmhhbGZDb2wgKyAuaGFsZkNvbCB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cdFx0fVxuXHRcdFxuXHR9XG5cdFxuXHRcblx0XG5cdCNkaGNwRm9ybSB7XG5cdFxuXHRcdGxhYmVsIHtcblx0XHRcdHdpZHRoOiAxOTVweDtcblx0XHR9XG5cdFx0XG5cdFx0LmZvcm1CbG9jayB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTVweDtcblx0XHR9XG5cdFx0LmZvcm1CbG9jay5ib3R0b21Cb3JkZXIge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0XHR9XG5cdFxuXHQgICBzZWxlY3QuaXBTZWdtZW50e1xuXHQgICAgIHdpZHRoOiA2NHB4O1xuXHQgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0ICAgfVxuXHQgICBcblx0ICAgc2VsZWN0LmlwU2VnbWVudCArIC5pcFNlcGFyYXRvcntcblx0ICAgICB3aWR0aDogMDtcblx0ICAgICBtYXJnaW46IDZweDtcblx0ICAgfVxuXHR9XG5cdFxuXHRcblx0I2RoY3BJbnN0cnVjdGlvbnNDb2x1bW4ge1xuXHRcblx0XHQqICsgcCwgKiArIHVsIHtcblx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0fVxuXHRcblx0fVxuXHRcblx0XG5cdCNkaGNwTGVhc2VNb2RhbCB7XG5cdFx0QGluY2x1ZGUgaW5uZXJNb2RhbCg0NzUsIDQ1MCk7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJlbGwtZ3JleTtcblx0XHRcblx0XHQuZGV2aWNlTGlzdCB7XG5cdFx0XG5cdFx0XHRtYXJnaW46IDIwcHggYXV0byAwO1xuXHRcdFx0d2lkdGg6IDMyNXB4O1xuXHRcdFx0aGVpZ2h0OiAyODBweDtcblx0XHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodGVyLWdyZXk7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0ZXItZ3JleTtcblx0XHRcdFxuXHRcdFx0LmRldmljZSB7XG5cdFx0XHRcblx0XHRcdFx0cGFkZGluZzogNnB4IDAgNXB4IDE1cHg7XG5cdFx0XHRcdGhlaWdodDogODVweDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFxuXHRcdFx0XHQmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0ZXItZ3JleTtcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0PiBkaXYge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdFx0LmRldmljZU5hbWUge1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQuZGV2aWNlSW5mbyB7XG5cdFx0XHRcdFx0bWFyZ2luOiA0cHggMCAwIDE1cHg7XG5cdFx0XHRcdFx0d2lkdGg6IDE4NXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFxuXHR9XG5cdFxuXHRcblx0XG5cdFxufVxuXG5cblxuXG4iLCIjRGlhZ25vc3RpY3NWaWV3Q29udGFpbmVyIHtcblx0XG5cdCNpbnRlcmZhY2UtcmVzdWx0cyB7XG5cdCAgLnF1YXJ0ZXJDb2wge1xuICBcdFx0cGFkZGluZy1sZWZ0OiAwO1xuICBcdFx0cGFkZGluZzogMCAxMHB4IDAgMDtcbiAgXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gIFx0fVxuICBcdFxuICBcdC5oYWxmQ29sIHtcbiAgXHQgIHdpZHRoOiA3MyU7XG4gIFx0fVxuXHR9XG5cdFxuICAgI2dlbmVyYWxTdGF0dXMge1xuICBcdCBtYXJnaW46IC0xNXB4IGF1dG8gMTVweDtcbiAgICAgd2lkdGg6IDExNXB4OyAgXHRcdFxuICAgfVxuXHRcblx0Lm1vZGFsSGVhZGVye1xuICAgIGgyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgfVx0ICBcblx0fVxuXHRcblx0LnRvcEJvcmRlciB7XG5cdCAgcGFkZGluZy10b3A6IDA7XG4gICAgaGVpZ2h0OiA0NzVweDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHR9XG5cdFxuICBoMyB7XG4gICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgIGNvbG9yOiAkYmVsbC1tb2RhbC1oZWFkZXItZGFyaztcbiAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICB9XG4gIFxuICBcbiAgLnJlc3VsdHNNYWluR3JvdXAge1xuICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIFxuICAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgIC5kaWFnbm9zdGljSXRlbSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG5cbiAgICAgICAgICAgIGxhYmVse1xuICAgICAgICAgICAgICAgY29sb3I6ICRiZWxsLW1vZGFsLWhlYWRlci1kYXJrO1xuICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5zdGF0dXNNc2cge1xuICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA5cHg7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICAmLkZBSUwsICYuQ0hFQ0tfQ09OTkVDVElWSVRZLCAmLkRJU0FCTEVEIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcXDAwYTBcIjtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMnB4O1xuICAgICAgICAgICAgICB3aWR0aDogN3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLkNIRUNLX0NPTk5FQ1RJVklUWSwgJi5ESVNBQkxFRCB7XG4gICAgICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93LXRleHQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi5GQUlMIHtcbiAgICAgICAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQtdGV4dDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAgXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBsaTpub3QoOmxhc3QtY2hpbGQpe1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICB9XG4gICAgIH1cbiAgICAgXG4gICAgICY6bm90KDpsYXN0LWNoaWxkKXtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgIH1cblxuICB9XG5cbiAgLnN0YXR1c01zZyB7XG4gICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBsaW5lLWhlaWdodDogNDFweDtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuOTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcblxuICAgICYuUEFTUyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS91aS9tZWQtY2hlY2ttYXJrX3doaXRlQkcucG5nJyk7XG4gICAgfVxuICAgIFxuICAgICYuRkFJTCB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS91aS9tZWQtZmFpbC5wbmcnKTtcbiAgICB9XG4gICAgXG4gICAgJi5DSEVDS19DT05ORUNUSVZJVFksICYuRElTQUJMRUR7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS91aS9tZWQtd2FybmluZ195ZWxsb3cucG5nJyk7XG4gICAgfVxuICB9XG5cbiAgLmlzc3VlcyB7XG4gICAgXG4gICAgJi5QQVNTIHtcbiAgICAgIC5pc3N1ZSNwYXNze1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuaXNzdWUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgfVxuICAgICAgXG4gICAgICAmI3Bhc3N7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmlzc3VlVGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgfVxuICAgICAgICAgIFxuICAgICAgLnN0YXR1c01zZyB7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIFxuICAgICAgICAmLkNIRUNLX0NPTk5FQ1RJVklUWSwgJi5ESVNBQkxFRHtcbiAgICAgICAgICBjb2xvcjogJHllbGxvdy10ZXh0O1xuICAgICAgICB9XG4gIFxuICAgICAgICAmLkZBSUwge1xuICAgICAgICAgIGNvbG9yOiAkcmVkLXRleHQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICB9XG4gICAgICBcbiAgICAgIC5pc3N1ZUNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDM1cHg7IFxuICAgICAgICAgICBcbiAgICAgICAgKiArIHAsIGxpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyAvLyBJbnRlcm5ldCBFeHBsb3JlclxuICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogaW5pdGlhbDsgLy8gUmVhbCBicm93c2Vyc1xuICAgICAgICB9XG4gICAgICAgIG9sIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cdC5hY2NvcmRpb25Db250YWluZXIge1xuXHRcblx0XHQuYWNjb3JkaW9uU2VjdGlvbkNvbnRhaW5lciB7XG5cdFx0XHRcblx0XHRcdFxuXHRcdFx0LmFjY29yZGlvbkNvbnRlbnQge1xuXHRcdFx0XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmV5O1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Ji5jdXN0b21Mb25nIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAxNDVweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdFx0YnV0dG9uLnRvZ2dsZUFkdmFuY2VkIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0XHRcblx0fVxufVxuXG5cblxuXG4iLCIjRE1aLVNldHRpbmdzIHtcblx0XG5cdFxuXHQjZG16U3RhdHVzIHtcblx0XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNDBweDtcblx0XHRsZWZ0OiA0MHB4O1xuXHRcdFxuXHRcdGxhYmVsIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cdFx0XHRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDE7XG5cdFx0XHRsaW5lLWhlaWdodDogMS42ODc1ZW07XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cdFxuXHR9XG5cdFxuXHRcblx0I2RldmljZUxpc3RzQ29udGFpbmVyIHtcblx0XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDI0MHB4O1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdHdpZHRoOiA2NThweDtcblx0XHRcblx0XHQmLnN1cHBvcnRzRE1aIHtcbiAgICAgIC5kZXZpY2VzQ29sdW1uIHtcbiAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgXHQgIH1cdCAgXG5cbiAgICAgICNhbGxEZXZpY2VzIHtcbiAgICAgICAgLmRldmljZUxpc3Qge1xuICAgICAgICAgICAgaGVpZ2h0OiAxNjhweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgI2FkZE1hbnVhbGx5IHtcbiAgICAgICAgICAgaGVpZ2h0OiAxNzhweFxuICAgICAgICB9XG4gICAgICB9XG5cdFx0fVxuXHRcdFxuXHRcdC5kZXZpY2VzQ29sdW1uIHtcblx0XHRcblx0XHRcdHdpZHRoOiAzMjVweDtcbiAgICAgIGhlaWdodDogNDg0cHg7XHRcblx0XHRcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0XHRcblx0XHQuZGV2aWNlTGlzdCB7XG5cdFx0XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdFx0XG5cdFx0XHRcblx0XHRcdC5kZXZpY2VMaXN0SW5uZXJDb250YWluZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmRldmljZSB7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0cGFkZGluZzogNnB4IDAgNXB4IDE1cHg7XG5cdFx0XHRcdGhlaWdodDogNzBweDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFxuXHRcdFx0XHQ+IGRpdiB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFxuXHRcdFx0XHQuZGV2aWNlTmFtZSB7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdC5kZXZpY2VJbmZvIHtcblx0XHRcdFx0XHRtYXJnaW46IDRweCAwIDAgMTJweDtcblx0XHRcdFx0XHR3aWR0aDogMTc2cHg7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0dWwgbGl7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRsaS5kZXZpY2VOYW1le1xuXHRcdFx0XHRcdFx0d2hpdGUtc3BhY2U6cHJlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdCYuc2VsZWN0ZWR7XG4gICAgICAgICAgLnRyYW5zZmVyQXJyb3cge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvc21sLVdoaXRlQ2hlY2ttYXJrLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG5cdCAgICAgICAgIH1cdFx0XHQgIFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQudHJhbnNmZXJBcnJvdyB7XG5cdFx0XHRcdFx0d2lkdGg6IDM5cHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiA1OXB4O1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnI3skYXNzZXRQYXRofS91aS90cmFuc2ZlckFycm93LnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQucmVtb3ZlWEJ1dHRvbiB7XG5cdFx0XHRcdFx0d2lkdGg6IDQ1cHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiA1OXB4O1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnI3skYXNzZXRQYXRofS91aS9yZW1vdmVYQnV0dG9uLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0XG5cdFx0I2FsbERldmljZXMge1xuXHRcdFx0XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG16LWFsbC1kZXZpY2VzLWJhY2tncm91bmQ7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdFxuXHRcdFx0I2xpc3RIZWFkZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAkZG16LWFsbC1kZXZpY2VzLWJvcmRlci1ib3R0b207XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTdweCAxNXB4O1xuXHRcdFx0ICBoMiB7XG5cdFx0XHQgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG5cdFx0XHQgIH1cblx0XHRcdH1cblxuXHRcdFx0LmRldmljZUxpc3Qge1xuXHRcdFx0XG5cdFx0XHRcdGhlaWdodDogMjY3cHg7XG5cdFx0XHRcblx0XHRcdFx0LmRldmljZSB7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206ICRkbXotYWxsLWRldmljZXMtYm9yZGVyLWJvdHRvbTtcblx0XHRcdFx0XG5cdFx0XHRcdCAgJi5zZWxlY3RlZHtcblx0XHRcdFx0ICAgIGJhY2tncm91bmQtY29sb3I6ICRkbXotYWxsLWRldmljZXMtc2VsZWN0ZWQtYmFja2dyb3VuZDtcblx0XHRcdFx0ICB9XG5cdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmRldmljZUljb24ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCNhZGRNYW51YWxseSB7XG5cdFx0XHQgIGhlaWdodDogMTYycHg7XG5cdFx0XHQgXG5cdFx0XHQgICYuc2hvd01hY1NlY3Rpb24ge1xuXHRcdFx0ICAgICAjaXBBZGRyZXNzU2VjdGlvbiB7XG5cdFx0XHQgICAgICAgZGlzcGxheTogbm9uZTtcblx0XHRcdCAgICAgfSAgXG5cbiAgICAgICAgICAjbWFjQWRkcmVzc1NlY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuXHRcdFx0ICB9XG5cdFx0XHQgIFxuXHRcdFx0ICAjbWFjQWRkcmVzc1NlY3Rpb24ge1xuXHRcdFx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cdFx0XHQgIH1cblx0XHRcdFxuXHRcdFx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZG16LW1hYy1hZGRyZXNzLWJhY2tncm91bmQ7XG5cdFx0XHRcdFxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0I2FkZERldmljZSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHRcdHdpZHRoOiAyNzVweDtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMi4wZW07XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0aW5wdXQuaXBTZWdtZW50IHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0XHRcdFx0XHR3aWR0aDogNTJweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aW5wdXQuaXBTZWdtZW50ICsgLmlwU2VwYXJhdG9yIHtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjVlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0LmNhcHRpb24ge1xuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDhweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjBlbTtcblx0XHRcdFx0XHRcdGNvbG9yOiAkYmVsbC1saWdodGdyZXktdGV4dDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0YnV0dG9uIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDhweDtcblx0XHRcdFx0XHRcdHdpZHRoOiAyNzBweDtcblx0XHRcdFx0XHR9XG5cbiAgICAgICAgICAgICAgICAgICAgLmJyYW5kLXZpcmdpbiAmIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1mb3JlZ3JvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAkcG9ydC1mb3J3YXJkaW5nLXJ1bGUtYnV0dG9uLXdoaXRlLWJvcmRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgOmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNDOEM4QzggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6ICNDOEM4QzggIWltcG9ydGFudDsgXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG4gICAgICAjZG16RGV2aWNlQ29sdW1uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICBcbiAgICAgICAgI2FjdGl2ZURldmljZUhlYWRlciB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAxN3B4IDE1cHg7XG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICB9XHRcdCAgXG5cdFx0ICBcbiAgXHRcdCNkbXpEZXZpY2Uge1xuICBcdFx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuICBcdFx0XHR3aWR0aDogMzI1cHg7XG4gIFx0XHRcdFxuICBcdFx0XHQuZGV2aWNlTGlzdCB7XG4gIFx0XHRcdFx0XG4gIFx0XHRcdFx0d2lkdGg6IDEwMCU7XG4gIFx0XHRcdFx0aGVpZ2h0OiA3MHB4O1xuICBcdFx0XHRcbiAgXHRcdFx0XHQuZGV2aWNlIHtcbiAgXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcbiAgXHRcdFx0XHRcdFxuICBcdFx0XHRcdFx0LmVtcHR5RGV2aWNlIHtcblx0XHRcdFx0XHQgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1lbXB0eS1ibHVlLnBuZycpO1xuICBcdFx0XHRcdFx0fVxuICBcdFx0XHRcdFx0XG4gIFx0XHRcdFx0fVxuICBcdFx0XHRcbiAgXHRcdFx0fVxuXHRcdFxuXHRcdH1cblx0XG5cdH1cblx0XG4gICNlbmFibGVBZHZhbmNlZERNWlNlY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgXG4gICAgI2VuYWJsZUFkdmFuY2VkRE1aTGFiZWwge1xuICAgICAgZm9udC1zaXplOiAkaDQtZm9udC1zaXplO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgfVx0XG5cbiAgLmJyYW5kLXZpcmdpbiAmICNlbmFibGVBZHZhbmNlZERNWlNlY3Rpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuIiwiI0ROU1NldHRpbmdzLVZpZXcge1xuXG5cblx0I2Ruc1NldHRpbmdzUGFnZUNvbnRhaW5lciB7XG5cblx0XHQjZG5zQXNzaWdubWVudFNlbGVjdGlvbkZvcm0ge1xuXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXG5cblx0XHRcdC5mb3JtQmxvY2sgbGFiZWw6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRsaW5lLWhlaWdodDogNDBweDtcblx0XHRcdH1cblxuXHRcdFx0I2ZlYXR1cmVGaWx0ZXJDb250cm9sIHtcblx0XHRcdFx0Lypib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTsqL1xuXHRcdFx0fVxuXG5cdFx0XHQjZmVhdHVyZXMuZm9ybUJsb2NrIHtcblxuXHRcdFx0XHRwYWRkaW5nOiAxMHB4IDA7XG5cdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0XHRcdGxhYmVsIHtcblx0XHRcdFx0XHR3aWR0aDogMTMzcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC43NTtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHRcdGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3Qob2xkKSArIGxhYmVsLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KG9sZCkgKyBsYWJlbCB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogNjBweDtcblx0XHRcdH1cblxuXG5cdFx0XHQmOmJlZm9yZSwgJjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHdpZHRoOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0XHRcdGJvcmRlci13aWR0aDogMTVweCAxNXB4IDAgMTVweDtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Ym90dG9tOiAtMTVweDtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkYmVsbC1saWdodC1ncmV5IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJvdHRvbTogLTE0cHg7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcblx0XHRcdH1cblxuXG5cdFx0fVxuXG5cdFx0Ji5hdXRvICNkbnNBc3NpZ25tZW50U2VsZWN0aW9uRm9ybTpiZWZvcmUsXG5cdFx0Ji5hdXRvICNkbnNBc3NpZ25tZW50U2VsZWN0aW9uRm9ybTphZnRlciB7XG5cdFx0XHRsZWZ0OiAxMjVweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0XHQmLm1hbnVhbCAjZG5zQXNzaWdubWVudFNlbGVjdGlvbkZvcm06YmVmb3JlLFxuXHRcdCYubWFudWFsICNkbnNBc3NpZ25tZW50U2VsZWN0aW9uRm9ybTphZnRlciB7XG5cdFx0XHRsZWZ0OiA0NDVweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblxuXG5cdFx0LnJhZGlvUGFnZSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQmLmF1dG8gI2F1dG9tYXRpY0ROU0Rpc3BsYXkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cdFx0Ji5tYW51YWwgI21hbnVhbEROU0Rpc3BsYXkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cblx0fVxuXG5cdCogKyBwIHtcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHR9XG5cblx0KiArIGZvcm0sXG5cdCogKyAuZm9ybUJsb2NrIHtcblx0XHRtYXJnaW4tdG9wOiA4cHg7XG5cdH1cblxuXHQjYXV0b21hdGljRE5TRGlzcGxheSB7XG5cblx0XHQjYXV0b0ROU0luZm8ge1xuXHRcdFx0bWFyZ2luOiAxMDBweCBhdXRvIDA7XG5cdFx0XHRwYWRkaW5nOiAzMHB4IDA7XG5cdFx0XHR3aWR0aDogMjUwcHg7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRcdGxhYmVsIHtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMGVtO1xuXHRcdFx0fVxuXG5cblxuXHRcdH1cblxuXHR9XG5cblxuXG5cblx0I21hbnVhbEROU0Rpc3BsYXkge1xuXG5cblx0XHQjbWFudWFsQ29udGVudENvbnRhaW5lciB7XG5cblx0XHRcdG1hcmdpbjogNTBweCBhdXRvO1xuXHRcdFx0d2lkdGg6IDkwMHB4O1xuXG5cdFx0XHQjbWFudWFsRE5TRm9ybUNvbnRhaW5lciB7XG5cblx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdFx0d2lkdGg6IDQ1MHB4O1xuXG5cdFx0XHRcdCNtYW51YWxETlNGb3JtIHtcblxuXHRcdFx0XHRcdGxhYmVsIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAxNTBweDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQjaG9zdE5hbWUge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDIyMXB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5idXR0b25Db250YWluZXIge1xuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDIwcHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDEzMHB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXG5cdFx0XHQmLmVkaXRpbmcge1xuXG5cdFx0XHRcdCNtYW51YWxETlNGb3JtQ29udGFpbmVyIHtcblxuXHRcdFx0XHRcdCNjaGFuZ2VETlNJbmZvQnV0dG9uIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cblx0XHR9XG5cblx0fVxuXG5cblx0Lm9sZElFV3JhcHBlciB7XG5cblx0XHRoZWlnaHQ6IDM0MXB4O1xuXG5cdFx0dGFibGUge1xuXG5cdFx0XHR3aWR0aDogMTA2NXB4O1xuXG5cdFx0fVxuXG5cdH1cblxuXHQvKiBUQUJMRSBDT0xVTU4gV0lEVEhTICovXG5cblx0JHRhYmxlLWRlc2lnbi13aWR0aDogMTAwNDtcblxuXHQjc3lzdGVtTG9nVGFibGUge1xuXG5cdFx0Lypcblx0XHQuY29sRGF0ZVRpbWUgeyB3aWR0aDogKCAyNDQgLyAkdGFibGUtZGVzaWduLXdpZHRoICkgICogMTAwJTsgfVxuXHRcdC5jb2xMZXZlbCB7IHdpZHRoOiAoIDE1MCAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9XG5cdFx0LmNvbE1vZHVsZSB7IHdpZHRoOiAoIDE1MCAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9XG5cdFx0LmNvbE1lc3NhZ2UgeyB3aWR0aDogKCA0NjAgLyAkdGFibGUtZGVzaWduLXdpZHRoICkgICogMTAwJTsgfSovXG5cblx0XHQvKmRpc3BsYXk6IG5vbmU7Ki9cblxuXHRcdC5jb2xEYXRlVGltZSB7IHdpZHRoOiAyNTlweDsgfVxuXHRcdC5jb2xMZXZlbCB7IHdpZHRoOiAxNThweDsgfVxuXHRcdC5jb2xNb2R1bGUgeyB3aWR0aDogMTU4cHg7IH1cblxuXHRcdHRoZWFkIHtcblx0XHRcdC5jb2xNZXNzYWdlIHsgd2lkdGg6IDQ5MHB4OyB9XG5cdFx0fVxuXG5cdFx0dGJvZHkge1xuXG5cdFx0XHRoZWlnaHQ6IDI5NnB4O1xuXG5cdFx0XHR0ciB7XG5cdFx0XHRcdGhlaWdodDogMzdweDtcblx0XHRcdH1cblxuXHRcdH1cblxuXHR9XG5cblxuXG5cblxufVxuIiwiI0V0aGVybmV0Vmlld0NvbnRhaW5lciB7XG5cbiAgZm9ybSB7XG4gICAgI2V0aGVybmV0LWZvcm0tY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xMjFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjU3cHg7XG4gICAgICB3aWR0aDogNTE0cHg7XG4gICAgICBoZWlnaHQ6IDI0MnB4O1xuXG4gICAgICAmLnRlbi1nIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMjFweDtcbiAgICAgICAgd2lkdGg6IDY0MnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICNldGhlcm5ldC1ibG9ja3Mge1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjRjdGN0Y3O1xuICAgIH1cblxuICAgIC5ldGhlcm5ldC1sYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNGN0Y3Rjc7XG4gICAgfVxuICB9XG5cbn1cbiIsIiNNQUNGaWx0ZXJpbmctU2V0dGluZ3Mge1xuXHRcblx0I21hY0ZpbHRlcmluZ1N0YXR1cyB7XG5cdFxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDQwcHg7XG5cdFx0bGVmdDogNDBweDtcblx0XHRcblx0XHRsYWJlbCB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXHRcdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAxO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNjg3NWVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0fVxuXHRcblx0fVxuXG5cdC5icmFuZC12aXJnaW4gLmxhbmctZnIgJiAucGFnZUluc3RydWN0aW9ucyB7XG5cdFx0d2lkdGg6IDUwMHB4O1xuXHRcdG1hcmdpbi10b3A6IC01NXB4O1xuXHRcdG1hcmdpbi1sZWZ0OiAzMzBweDtcblx0fVxuXHRcblx0LnBhZ2VJbnN0cnVjdGlvbnN7XG5cdCAgIG1hcmdpbi10b3A6IC00NXB4O1xuXHQgICBtYXJnaW4tbGVmdDogMjUwcHg7XG5cdH1cblx0XG5cdFxuXHQjZGV2aWNlTGlzdHNDb250YWluZXIge1xuXHRcblx0XHR3aWR0aDogNjc3cHg7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XG5cdFx0LmRldmljZXNDb2x1bW4ge1xuXHRcdFxuXHRcdFx0d2lkdGg6IDMzNnB4O1xuXHRcdFx0aGVpZ2h0OiA0NjdweDtcblx0XHRcdFxuXHRcdFx0aDMge1xuXHRcdFx0XHRwYWRkaW5nOiAwIDE1cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0NXB4O1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuZGV2aWNlTGlzdCB7XG5cdFx0XHRcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdC5kZXZpY2VMaXN0SW5uZXJDb250YWluZXIge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQuZGV2aWNlIHtcblx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0cGFkZGluZzogNnB4IDAgNXB4IDE1cHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiA3MHB4O1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdD4gZGl2IHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdC5kZXZpY2VOYW1lIHtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRcdFx0d2hpdGUtc3BhY2U6cHJlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQuZGV2aWNlSW5mbyB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDRweCAwIDAgMTJweDtcblx0XHRcdFx0XHRcdHdpZHRoOiAxNzdweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0LnRyYW5zZmVyQXJyb3cge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDM5cHg7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDU5cHg7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvdHJhbnNmZXJBcnJvdy5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuXHRcdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQucmVtb3ZlWEJ1dHRvbiB7XG5cdFx0XHRcdFx0XHR3aWR0aDogNDVweDtcblx0XHRcdFx0XHRcdGhlaWdodDogNTlweDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnI3skYXNzZXRQYXRofS91aS9yZW1vdmVYQnV0dG9uLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG5cdFx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuXHRcdFxuXHRcdCNhbGxEZXZpY2VzIHtcblx0XHRcdFxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG1hYy1maWx0ZXJpbmctYWxsLWRldmljZXMtYmFja2dyb3VuZDtcblx0XHRcdGNvbG9yOiAjZmZmO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cblx0XHRcdGgzIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogJG1hYy1maWx0ZXJpbmctZGV2aWNlLWJvcmRlci1ib3R0b207XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5kZXZpY2VMaXN0IHtcblx0XHRcdFxuXHRcdFx0XHRoZWlnaHQ6IDIzNXB4O1xuXHRcdFx0XG5cdFx0XHRcdC5kZXZpY2Uge1xuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAkbWFjLWZpbHRlcmluZy1kZXZpY2UtYm9yZGVyLWJvdHRvbTtcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuZGV2aWNlSWNvbiB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0I2FkZE1hbnVhbGx5IHtcblx0XHRcdCAgaGVpZ2h0OiAxODZweDtcblx0XHRcdFxuXHRcdFx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWFjLWZpbHRlcmluZy1hZGQtbWFudWFsbHktYmFja2dyb3VuZDtcblx0XHRcdFx0XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQjYWRkRGV2aWNlIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdFx0d2lkdGg6IDI3NXB4O1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGxhYmVsIHtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyLjBlbTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRidXR0b24ge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRcdFx0XHRcdHdpZHRoOiAyNzBweDtcblx0XHRcdFx0XHR9XG5cbiAgICAgICAgICAgICAgICAgICAgLmJyYW5kLXZpcmdpbiAmIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1mb3JlZ3JvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAkcG9ydC1mb3J3YXJkaW5nLXJ1bGUtYnV0dG9uLXdoaXRlLWJvcmRlcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgOmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNDOEM4QzggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6ICNDOEM4QzggIWltcG9ydGFudDsgXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHRcdCNhbGxvd2VkRGV2aWNlcyB7XG5cdFx0XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmVsbC1saWdodC1ncmV5O1xuXHRcdFx0XG5cdFx0XHRoMyB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHRlci1ncmV5O1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuZGV2aWNlTGlzdCB7XG5cdFx0XHRcdFxuXHRcdFx0XHRoZWlnaHQ6IDQyMHB4O1xuXHRcdFx0XG5cdFx0XHRcdC5kZXZpY2Uge1xuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0ZXItZ3JleTtcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcdFxuXHRcdH1cblx0XG5cdH1cblx0XG5cdCNoaWRlRGV2aWNle1xuXHQgIGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuXG5cblxuIiwiLm1vZGFsUGFnZSB7XG5cblxuICAgICN3aXJlbGVzc1NldHRpbmdzQ29udGFpbmVyIHtcblxuICAgICAgICB3aWR0aDogKDk5NiAvICgkZGVzaWduTW9kYWxXaWR0aCAtIDgwKSkgKiAxMDAlO1xuXG4gICAgICAgIC5tb2RhbFRpbGUge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgI1dQUy1TZXR0aW5nc3tcblxuICAgICAgICAudGFiQ29udGFpbmVyIHtcbiAgICAgICAgICAgIC50YWJIZWFkZXIge1xuICAgICAgICAgICAgICAgIC50YWIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzZXR1cFRhYnNGb3JXaWR0aCgxMDY1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWJCb2R5IHtcbiAgICAgICAgICAgICAgICAudGFiQ29udGVudCB7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndwc1RleHR7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAud3BzU2V0dGluZ3NNZXNzYWdlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgZGl2LnBpbkZvcm0sIGRpdi53cHNCdXR0b25Gb3JtLCBkaXYjcmVxdWlyZWRSZXNvdXJjZURpc2FibGVkIGxhYmVsLCBkaXYjcmVxdWlyZWRSZXNvdXJjZURpc2FibGVke1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpdiNyZXF1aXJlZFJlc291cmNlRGlzYWJsZWR7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAgICAgbGFiZWwud3BzLWVycm9yLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS44NzVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBkaXYgbGFiZWx7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNiZDIwMjU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBkaXYud3BzQnV0dG9uRm9ybXtcbiAgICAgICAgICAgICN0aW1lcntcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJyN7JGFzc2V0UGF0aH0vV1BTX2NvdW50ZG93bl90aW1lci5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIyOHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOTFweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICBjYW52YXMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBkaXZ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1ub3JtYWwtZm9udC10eXBlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRtYW5hZ2VXaWZpLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRtYW5hZ2VXaWZpLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWFuYWdlV2lmaS1mb250LWZvcmVncm91bmQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud3BzQnV0dG9uSW5mb3JtYXRpdmVUZXh0e1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcblxuICAgICAgICAgICAgICAgIGxhYmVse1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbENvbnRlbnRDb250YWluZXJ7XG4gICAgICAgICAgICAmLmZvcm1DZW50ZXJbbW9kZT1cIlB1c2hCdXR0b25cIl17XG4gICAgICAgICAgICAgICAgZGl2Lndwc0J1dHRvbkZvcm17XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mb3JtQ2VudGVyW21vZGU9XCJQSU5cIl17XG4gICAgICAgICAgICAgICAgZGl2LnBpbkZvcm17XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBpbkZvcm1JbnB1dHtcbiAgICAgICAgICAgICAgICB3aWR0aCA6IDIwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZvcm1DZW50ZXJ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM2MHB4O1xuXG4gICAgICAgICAgICAgICAgYnV0dG9ue1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTQycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJyYW5kLXZpcmdpbiAmIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTQ4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2d1ZXN0V2lyZWxlc3NTZXR0aW5ncyAubW9kYWxIZWFkZXIgPiBwIHtcbiAgICAgICAgLy8gUGFyYWdyYXBoIG92ZXJmbG93cyBpbnRvIHRoZSBuZXR3b3JrIGNvbnRhaW5lciB3aXRoIGRpc2FibGVkIG92ZXJsYXkuLi4gdGhpcyB3aWxsIHByZXZlbnQgdGhlIG92ZXJsYXkgZnJvbSBjb3ZlcmluZyBpdFxuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxufSIsIiNOb3RpZmljYXRpb25zLVZpZXcge1xuXHQubWVzc2FnZXMtbW9kYWwtaW5uZXItd3JhcHtcblx0XHRoZWlnaHQ6MzUwcHg7XG5cdFx0b3ZlcmZsb3cteTphdXRvO1xuXHRcdG1hcmdpbi10b3A6IC0zMHB4O1xuXHR9XG5cdFxuXHQubWVzc2FnZS13cmFwe1xuXHRcdHBhZGRpbmc6MjVweCAwO1xuXHRcdGJvcmRlci10b3A6c29saWQgMXB4ICRiZWxsLWxpZ2h0Z3JleS10ZXh0O1xuXHRcdG1hcmdpbi1yaWdodDoxMHB4O1xuXHR9XG5cdC5tZXNzYWdlLXdyYXA6Zmlyc3QtY2hpbGR7XG5cdFx0Ym9yZGVyLXRvcDpub25lO1xuXHR9XG5cdFxuXHQubWVzc2FnZS1oZWFkaW5ne1xuXHRcdGZvbnQtc2l6ZToxLjNlbTtcblx0XHRmb250LXdlaWdodDpib2xkO1xuXHRcdGNvbG9yOmJsYWNrO1xuXHRcdG1hcmdpbi1ib3R0b206NXB4O1xuXHR9XG5cdC5tZXNzYWdlLWRhdGV7XG5cdFx0Zm9udC1zaXplOjFlbTtcblx0XHRjb2xvcjokYmVsbC1ncmV5O1xuXHRcdG1hcmdpbi1ib3R0b206NXB4O1xuXHR9XG5cdC5tZXNzYWdlLWV4ZXJwdHtcblx0XHRmb250LXNpemU6MWVtO1xuXHRcdGNvbG9yOiRkYXJrLWdyZXk7XG5cdFx0bWFyZ2luLWJvdHRvbToxNXB4O1xuXHR9XG5cdC5tZXNzYWdlLWRldGFpbHMtbGluay13cmFwe1xuXHRcdGhlaWdodDoyMHB4O1xuXHRcdGxpbmUtaGVpZ2h0OjIwcHg7XG5cdFx0Zm9udC1zaXplOjFlbTtcblx0XHRjb2xvcjogJG5vdGlmaWNhdGlvbnMtbWVzc2FnZS1kZXRhaWxzLWZvcmVncm91bmQ7XG5cdFx0XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFxuXHRcdC5pY29uLWFycm93e1xuXHRcdFx0YmFja2dyb3VuZDp1cmwoJyN7JGFzc2V0UGF0aH0vdWkvYmx1ZS1vdXRsaW5lLWFycm93LWNpcmNsZS1yaWdodC5wbmcnKSBuby1yZXBlYXQ7XG5cdFx0XHR3aWR0aDoyMHB4O1xuXHRcdFx0aGVpZ2h0OjIwcHg7XG5cdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbi1ib3R0b206LTVweDtcblx0XHR9XG5cdH1cblx0XG59XG5cblxuXG5cbiIsIiNuZXR3b3JrTWFwIHtcblx0IFxuXHQgbWFyZ2luLXRvcDogLTMwcHg7XG4gIFxuICAubW9kYWxIZWFkZXIge1xuICAgIHdpZHRoOiA4MDBweDtcbiAgfVxuXHRcblx0I3BvZC1sZWdlbmQge1xuXHRcdC8vIFRPRE86IFdoZW4gbWVyZ2luZyB3aXRoIFZpcmdpbiA0LjUuMCB3aWxsIG5lZWQgdG8gdXNlIGJhc2UgcGF0aCB2YXJpYWJsZVxuXHRcdGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLXBsdW1lLXNtbC5wbmcnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG5cdFx0Ly8gUGFkZGluZyB3aWR0aCBzaG91bGQgYmUgdGhlIGltYWdlIHdpZHRoICsgYSBzbWFsbCBidWZmZXJcblx0XHRwYWRkaW5nLWxlZnQ6IDIycHggKyAxMHB4O1xuXHR9XG5cdCBcblx0ICNkaXNjb25uZWN0ZWREZXZpY2VzQnV0dG9uIGJ1dHRvbiNmb3JnZXREZXZpY2VzIHtcbiAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHQgfVxuXHRcblx0XHQjY3VycmVudERldmljZXNUeXBlIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0d2lkdGg6IDc2cHg7XG5cdFx0XHRoZWlnaHQ6IDc2cHg7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XG5cdFx0XHQubnVtRGV2aWNlcyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiA4cHg7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkYmFzZS1ub3JtYWwtZm9udC10eXBlO1xuXHRcdFx0XHRmb250LXNpemU6ICRteU5ldHdvcmstY3VycmVudERldmljZXMtZm9udC1zaXplO1xuXHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cbiAgICAjaGlkZURldmljZXMge1xuICAgICAgZGlzcGxheSA6IG5vbmU7XG4gICAgfVxuXHRcdFxuXHRcdGgyIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiA3NnB4O1xuXHRcdFx0XG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0XG5cdH1cblxuICAgLnRhYmxlRGl2Q29udGFpbmVyLmVtcHR5IHtcbiAgICAgIC5lbXB0eVRhYmxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICB9XG5cblx0Ji5wcmltYXJ5V2lyZWxlc3MsICYuZ3Vlc3RXaXJlbGVzcyB7XG5cdFx0I2N1cnJlbnREZXZpY2VzVHlwZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi13aXJlbGVzc0RldmljZXNfdGl0bGUucG5nJyk7XG5cdFx0fVxuXHR9XG5cblx0Ji5wcmltYXJ5V2lyZWxlc3MgLm1vZGFsSGVhZGVyIGgyIC5wcmltYXJ5V2lyZWxlc3Mge1xuXHRcdGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuXHR9XG5cdCYuZ3Vlc3RXaXJlbGVzcyAubW9kYWxIZWFkZXIgaDIgLmd1ZXN0V2lyZWxlc3Mge1xuXHRcdGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHQmLlVTQiB7XG5cdFx0I2N1cnJlbnREZXZpY2VzVHlwZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1VU0JfdGl0bGUucG5nJyk7XG5cdFx0fVxuXHRcdC5tb2RhbEhlYWRlciBoMiAuVVNCIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdCYuZmliZVRWIHtcblx0XHQjY3VycmVudERldmljZXNUeXBlIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLWZpYmVUVl90aXRsZS5wbmcnKTtcblx0XHRcblx0XHRcdC5udW1EZXZpY2VzIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHRcblx0XHR9XG5cdFx0Lm1vZGFsSGVhZGVyIGgyIC5maWJlVFYge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdCYuZXRoZXJuZXQge1xuXHRcdCNjdXJyZW50RGV2aWNlc1R5cGUge1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tZXRoZXJuZXRfdGl0bGUucG5nJyk7XG5cdFx0fVxuXHRcdC5tb2RhbEhlYWRlciBoMiAuZXRoZXJuZXQge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cdFxuXHRcblx0I2RldmljZVRhYmxlQ29udGFpbmVyIHtcblx0XHRoZWlnaHQ6IDQ3MnB4O1xuXHR9XG5cdFxuXHR0YWJsZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdH1cblx0XG5cdC5kZXZpY2VUYWJsZSB7XG5cdFxuXHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuXHRcdGNvbG9yOiAkYmVsbC1kYXJrZ3JleS10ZXh0O1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0d2lkdGg6IDc5OHB4O1xuXHRcdFxuXHRcdHRoZWFkIHtcblx0XHRcdFxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Q4ZDhkODtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XG5cdFx0XHR0ciB7XG5cdFx0XHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdFx0XHR0YWJsZS1sYXlvdXQ6Zml4ZWQ7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdHRoIHtcblx0XHRcdFx0aGVpZ2h0OiAyNXB4O1xuXHRcdFx0XHRwYWRkaW5nOiA1cHggMTBweDtcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgI2Q4ZDhkODtcblx0XHRcdFx0XG5cdFx0XHRcdFxuXHQgICAgICAgIC5kaXNwbGF5Q29udHJvbCB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgYm90dG9tOiA3NyU7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDQ4cHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjc1O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXk7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC50b2dnbGVJY29uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICYuc2hvd0NvbHMge1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnRvZ2dsZUljb24ge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L3VpL2ljb24tc2hvd0NvbHMucG5nJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC02cHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMjdweDtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICB0b3A6IDUycHg7XG4gICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTZweDtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJlbGwtZ3JleSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogOHB4IDZweCAwIDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAmLmhpZGVDb2xzIHtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgbGVmdDogODUlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLnRvZ2dsZUljb24ge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L3VpL2ljb24taGlkZUNvbHMucG5nJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICYuc2luZ2xlQ29sIHtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LnNvcnRJY29uIHtcblx0XHRcdFx0d2lkdGg6IDhweDtcblx0XHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L3VpL0Ryb3Bkb3duQXJyb3dzLnBuZycpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvRHJvcGRvd25BcnJvd3Muc3ZnJyk7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0XHRcbiAgICAmLmJhc2ljIHRoZWFkIHRoIC5zaG93Q29scyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5hZHZhbmNlZCB0aGVhZCB0aCAuaGlkZUNvbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG5cdFx0dGJvZHkge1xuXHRcdFxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRoZWlnaHQ6IDQ0NHB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIFxuXHRcdFx0dHIge1xuXHRcdFx0XHRcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRcdFx0aGVpZ2h0OiA3NHB4O1xuXHRcdFx0XHRkaXNwbGF5OnRhYmxlO1xuXHRcdFx0XHR0YWJsZS1sYXlvdXQ6Zml4ZWQ7XG5cdFx0XHRcdFxuXHRcdFx0XHQmW3N0YXR1cz1cIkxPQ0tFRFwiXSwgJltzdGF0dXM9XCJMT0NLRURfQUxXQVlTXCJdIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3RlZC1oaWdobGlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmW3N0YXR1cz1cIkRJU0NPTk5FQ1RFRFwiXXtcbiAgICAgICAgICAuZWplY3RJY29uIHtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tRWplY3RfZGlzYWJsZWQucG5nJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0dGQge1xuXHRcdFx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXHRcdFx0XHRwYWRkaW5nOiA4cHggNXB4IDhweCA4cHg7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdFx0fVxuXHRcdFx0dGQ6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0XHR9XG5cdFx0XHRcbiAgICAgIHRkIC53aWZpU3RyZW5ndGgge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICB9XG5cblx0XHRcdC5lZGl0U2V0dGluZ3NJY29uIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdHdpZHRoOiAzMXB4O1xuXHRcdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1FZGl0LnBuZycpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1FZGl0LnN2ZycpO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuZWplY3RJY29uIHtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdHdpZHRoOiAyNHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1FamVjdC5wbmcnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tRWplY3Quc3ZnJyk7XG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuICAgICAgICBcblx0XHR0ciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0c3BhbiB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0fVxuXHRcdFxuXHRcdC5kZXZpY2VUeXBlQW5kU3RhdHVzIHtcblx0XHRcdFxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0dHJbc3RhdHVzPVwiTE9DS0VEXCJdIC5kZXZpY2VUeXBlQW5kU3RhdHVzOmFmdGVyLFxuXHRcdHRyW3N0YXR1cz1cIkxPQ0tFRF9BTFdBWVNcIl0gLmRldmljZVR5cGVBbmRTdGF0dXM6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAtNXB4O1xuXHRcdFx0d2lkdGg6IDI1cHg7XG5cdFx0XHRoZWlnaHQ6IDIzcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tc21sLUxvY2sucG5nJyk7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1zbWwtTG9jay5zdmcnKTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0XHRcblx0XHQuZGV2aWNlTmFtZSB7XG5cdFx0XHRsaW5lLWhlaWdodDogNTdweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0dHJbc3RhdHVzPVwiRElTQ09OTkVDVEVEXCJdIHRkOm5vdCguY29sUGFyZW50YWxDb250cm9scykge1xuXHRcdFx0Y29sb3I6ICRiZWxsLWxpZ2h0Z3JleS10ZXh0O1xuXHRcdH1cblx0XHRcblx0XHR0cltzdGF0dXM9XCJESVNDT05ORUNURURcIl0gLnBhcmVudGFsQ29udHJvbHNNc2dDb250YWluZXIge1xuXHRcdFx0XG5cdFx0XHQucGFyZW50YWxDb250cm9sc01zZywgLmNvbnRyb2xTdGF0dXMge1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmZvcmdldCB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuZXR3b3JrLWRpc2Nvbm5lY3RlZC1mb3JnZXQtYm9yZGVyLXJhZGl1cyk7XG5cdFx0XHRcdHBhZGRpbmc6IDJweCAyMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuZXR3b3JrLWRpc2Nvbm5lY3RlZC1mb3JnZXQtYmFja2dyb3VuZDtcblx0XHRcdFx0Ym9yZGVyOiAkbmV0d29yay1kaXNjb25uZWN0ZWQtZm9yZ2V0LWJvcmRlcjtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHRcblx0XG5cdFxuXHQub2xkSUVXcmFwcGVyIHtcblx0XHRcblx0XHRoZWlnaHQ6IDQ3MnB4O1xuXHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdFxuXHRcdC5kZXZpY2VUYWJsZSB7XG5cdFx0XHRcblx0XHRcdHdpZHRoOiA3ODBweDtcblx0XHRcdFxuXHRcdFx0dGJvZHkge1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdH1cblx0XG5cdC8qIFRBQkxFIENPTFVNTiBXSURUSFMgKi9cblx0XG5cdCR0YWJsZS1kZXNpZ24td2lkdGg6IDc3Mjtcblx0XG5cdCNkZXZpY2VUYWJsZS1ndWVzdFdpcmVsZXNzLFxuXHQjZGV2aWNlVGFibGUtcHJpbWFyeVdpcmVsZXNzIHtcblx0XG4gICAgJGNvbERldmljZU5hbWVXaWR0aDogMjE2O1xuICAgICRjb2xOZXR3b3JrV2lkdGg6IDk5O1xuICAgICRjb2xBZGRyZXNzV2lkdGg6IDE3MDtcbiAgICAkY29sU2V0dGluZ3NXaWR0aDogOTA7XG4gICAgXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBcbiAgICB0YWJsZSB7XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAuY29sTmV0d29yayB7IGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXk7IH1cbiAgICAgICAgICAuY29sQWRkcmVzcyB7IGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXk7IH1cbiAgICAgICAgICAuY29sU2V0dGluZ3MgeyB3aWR0aDogI3skY29sU2V0dGluZ3NXaWR0aH1weDsgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY29sTmV0d29yayB7IHdpZHRoOiAjeyRjb2xOZXR3b3JrV2lkdGh9cHg7IH1cbiAgICAgICAgLmNvbEFkZHJlc3MgeyB3aWR0aDogI3skY29sQWRkcmVzc1dpZHRofXB4OyB9XG4gICAgICAgIC5jb2xEZXZpY2VOYW1lIHtcbiAgICAgICAgICAgIHdpZHRoOiAjeyRjb2xEZXZpY2VOYW1lV2lkdGh9cHg7IFxuICAgICAgICAgICAgLmRldmljZU5hbWUge1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTpub3dyYXA7XG4gICAgICAgICAgIH1cbiAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYmFzaWMge1xuICAgICAgICAgIC5jb2xOZXR3b3JrLCAuY29sQWRkcmVzcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICAuY29sUGFyZW50YWxDb250cm9scyB7IHdpZHRoOiA0OTEuNXB4OyB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYWR2YW5jZWQge1xuXHRcdFx0LmNvbFBhcmVudGFsQ29udHJvbHMgeyB3aWR0aDogMTcwcHg7IH1cblx0XHRcdC5jb2xBZGRyZXNzIHsgd2lkdGg6IDIyMnB4OyB9XG4gICAgICAgIH1cbiAgICB9XG5cdFx0XG5cdH1cblx0XG5cdGRpdi5wcmltYXJ5V2lyZWxlc3MgI2RldmljZVRhYmxlLXByaW1hcnlXaXJlbGVzcyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XG5cdFx0dGFibGUge1xuICAgICAgZGlzcGxheTogdGFibGU7XG5cdFx0fVxuXHR9XG5cbiAgI2RldmljZVRhYmxlQ29udGFpbmVyIHtcbiAgICAuZGV2aWNlVGFibGUge1xuICAgICAgdGJvZHkge1xuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRpdi5ndWVzdFdpcmVsZXNzICNkZXZpY2VUYWJsZS1ndWVzdFdpcmVsZXNzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIHRhYmxlIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cbiAgfVxuXHRcblx0I2RldmljZVRhYmxlLWV0aGVybmV0IHtcblx0XG4gICAgJGNvbERldmljZU5hbWVXaWR0aDogMjM0O1xuICAgICRjb2xQYXJlbnRhbENvbnRyb2xzV2lkdGg6IDMwMztcbiAgICAkY29sQWRkcmVzc1dpZHRoOiAxNzA7XG4gICAgJGNvbFNldHRpbmdzV2lkdGg6IDkwO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBcbiAgICB0YWJsZSB7XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAuY29sQWRkcmVzcyB7IGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXk7IH1cbiAgICAgICAgICAuY29sU2V0dGluZ3MgeyB3aWR0aDogI3skY29sU2V0dGluZ3NXaWR0aH1weDsgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuY29sQWRkcmVzcyB7IHdpZHRoOiAjeyRjb2xBZGRyZXNzV2lkdGh9cHg7IH1cblxuICAgICAgICAgIC5jb2xEZXZpY2VOYW1lIHtcbiAgICAgICAgICBcbiAgICAgICAgICAgIHdpZHRoOjI2NnB4O1xuICAgICAgICAgIFxuICAgICAgICAgICAgLmRldmljZU5hbWUge1xuICAgICAgICAgICAgICB3aWR0aDoxODBweDtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6bm93cmFwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYmFzaWMge1xuICAgICAgICBcbiAgICAgICAgICAuY29sTmV0d29yaywgLmNvbEFkZHJlc3Mge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLmNvbFBhcmVudGFsQ29udHJvbHMgeyB3aWR0aDogNDQxcHg7IH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5hZHZhbmNlZCB7XG4gICAgICAgICAgLmNvbFBhcmVudGFsQ29udHJvbHMgeyBcbiAgICAgICAgICBcdHdpZHRoOjI3MXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgfVxuICAgIH1cblx0XG5cdH1cblx0XG5cdGRpdi5ldGhlcm5ldCAjZGV2aWNlVGFibGUtZXRoZXJuZXQge1xuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXHR9XG5cdFxuXHRcblx0I2RldmljZVRhYmxlLVVTQiB7XG5cdFxuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XG5cdFx0LmNvbERldmljZU5hbWUgeyB3aWR0aDogNDUwcHg7IH1cblx0XHQuY29sUG9ydCB7IHdpZHRoOiA4NnB4OyB9XG5cdFx0LmNvbFR5cGUgeyB3aWR0aDogODZweDsgfVxuXHRcblx0XHQuY29sUG9ydCwgLmNvbFR5cGUsIC5jb2xFamVjdCwgLmNvbFNldHRpbmdzIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdFx0XG5cdFx0LmNvbEVqZWN0IGRpdntcblx0XHQgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHQgIFxuXHRcdCAgJi5lamVjdEljb24ge1xuXHRcdCAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0ICB9XG5cdFx0fVxuXHR9XG5cblx0ZGl2LlVTQiAjZGV2aWNlVGFibGUtVVNCIHtcblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0fVxuXHRcbiAgI2RldmljZVRhYmxlLWZpYmVUViB7XG4gIFxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgXG4gICAgJGNvbERldmljZU5hbWVXaWR0aDogMzc1O1xuICAgICRjb2xOZXR3b3JrV2lkdGg6IDE1NTtcbiAgICAkY29sQWRkcmVzc1dpZHRoOiAxNzA7XG5cbiAgICBcbiAgICB0YWJsZSB7XG4gICAgICAgIHRoZWFkIHtcbiAgICAgICAgICAuY29sTmV0d29yayB7IGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXk7IH1cbiAgICAgICAgICAuY29sQWRkcmVzcyB7IGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXk7IH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgIC53aWZpU3RyZW5ndGgge1xuICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICAgfVxuXG4gICAgICAgIC5jb2xOZXR3b3JrIHsgd2lkdGg6ICN7JGNvbE5ldHdvcmtXaWR0aH1weDsgfVxuICAgICAgICAuY29sQWRkcmVzcyB7IHdpZHRoOiAjeyRjb2xBZGRyZXNzV2lkdGh9cHg7IH1cblxuICAgIFxuICAgICAgICAmLmJhc2ljIHtcbiAgICAgICAgXG4gICAgICAgICAgLmNvbE5ldHdvcmssIC5jb2xBZGRyZXNzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC5jb2xEZXZpY2VOYW1lIHtcbiAgICAgICAgICBcbiAgICAgICAgICAgIHdpZHRoOiAoJGNvbERldmljZU5hbWVXaWR0aCAqIDEuODkpICsgcHg7IFxuICAgICAgICAgIFxuICAgICAgICAgICAgLmRldmljZU5hbWUge1xuICAgICAgICAgICAgICB3aWR0aDogNjEuODgxMTg4MTE4ODExODgxMTg4MTE4ODExODgxMTg4JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYuYWR2YW5jZWQge1xuICAgICAgICBcbiAgICAgICAgICAuY29sRGV2aWNlTmFtZSB7XG4gICAgICAgICAgXG4gICAgICAgICAgICB3aWR0aDogI3skY29sRGV2aWNlTmFtZVdpZHRofXB4OyBcbiAgICAgICAgICBcbiAgICAgICAgICAgIC5kZXZpY2VOYW1lIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDYxLjg4MTE4ODExODgxMTg4MTE4ODExODgxMTg4MTE4OCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICBcbiAgICB9XG4gICAgXG4gIH1cbiAgZGl2LmZpYmVUViAjZGV2aWNlVGFibGUtZmliZVRWIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXHRcblx0XG5cdEBtaXhpbiBhc3NpZ24tbmV0bWFwLWltYWdlcygkZGV2aWNlKSB7XG5cblx0XHQkZGV2aWNlSW1nOiAkZGV2aWNlO1xuXHRcdFxuXHRcdEBpZiAoJGRldmljZSA9PSBwcmltYXJ5V2lyZWxlc3MpIG9yICgkZGV2aWNlID09IGd1ZXN0V2lyZWxlc3MpIHtcblx0XHRcblx0XHRcdCRkZXZpY2VJbWc6IHdpcmVsZXNzO1xuXHRcdFxuXHRcdH1cblx0XHRcblx0XHQjI3skZGV2aWNlfUNpcmNsZS5tYXBJdGVtQ2lyY2xlIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLSN7JGRldmljZUltZ30tbWFwLXNtbC5wbmcnKTtcblx0XHRcdC8qYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tI3skZGV2aWNlSW1nfS1tYXAtc21sLnN2ZycpOyovXG5cdFx0XG5cdFx0XHQmLmN1cnJlbnQsICY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi0jeyRkZXZpY2VJbWd9LW1hcC1scmcucG5nJyk7XG5cdFx0XHRcdC8qYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tI3skZGV2aWNlSW1nfS1tYXAtbHJnLnN2ZycpOyovXG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCZbbnVtRGV2aWNlcz1cIjBcIl0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi0jeyRkZXZpY2VJbWd9LW1hcC1zbWxfZmFkZS5wbmcnKTtcblx0XHRcdFx0LypiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi0jeyRkZXZpY2VJbWd9LW1hcC1zbWxfZmFkZS5zdmcnKTsqL1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHR9XG5cblx0QGluY2x1ZGUgYXNzaWduLW5ldG1hcC1pbWFnZXMocHJpbWFyeVdpcmVsZXNzKTtcblx0QGluY2x1ZGUgYXNzaWduLW5ldG1hcC1pbWFnZXMoZ3Vlc3RXaXJlbGVzcyk7XG5cdEBpbmNsdWRlIGFzc2lnbi1uZXRtYXAtaW1hZ2VzKGZpYmVUVik7XG5cdEBpbmNsdWRlIGFzc2lnbi1uZXRtYXAtaW1hZ2VzKHVzYik7XG5cdEBpbmNsdWRlIGFzc2lnbi1uZXRtYXAtaW1hZ2VzKGV0aGVybmV0KTtcblx0XG5cdFxuXHRcblx0XG5cdEBtaXhpblx0cHV0T25TZW1pQ2lyY2xlKFxuXHRcdFx0XHQkbmItaXRlbXMsIC8vTnVtYmVyIG9mIGl0ZW1zXG5cdFx0XHRcdCRjaXJjbGUtc2l6ZSwgLy9QYXJlbnQgc2l6ZVxuXHRcdFx0XHQkaXRlbS1zaXplIC8vSXRlbSBzaXplXG5cdFx0XHQpIHtcblx0XHRcdFxuXHRcdFx0XHQkaGFsZi1pdGVtOlx0XHQkaXRlbS1zaXplIC8gMjtcblx0XHRcdFx0JGhhbGYtcGFyZW50Olx0JGNpcmNsZS1zaXplIC8gMjtcblx0XHRcdFx0XG5cdFx0XHRcdHdpZHRoOiAkaGFsZi1wYXJlbnQrcHg7XG5cdFx0XHRcdGhlaWdodDogJGNpcmNsZS1zaXplK3B4O1xuXHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzLXRvcC1yaWdodCgkaGFsZi1wYXJlbnQrcHgpO1xuXHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzLWJvdHRvbS1yaWdodCgkaGFsZi1wYXJlbnQrcHgpO1xuXHRcdFx0XHQ+IC5tYXBJdGVtQ2lyY2xlIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0dG9wOiAgNTAlOyBcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdHdpZHRoOiAgI3skaXRlbS1zaXplfXB4O1xuXHRcdFx0XHRcdGhlaWdodDogI3skaXRlbS1zaXplfXB4O1xuXHRcdFx0XHRcdG1hcmdpbjogLSN7JGhhbGYtaXRlbX1weDtcblx0XHRcdFx0XHQvL0BpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQkYW5nbGU6IDE4MCAvICgkbmItaXRlbXMgLSAxKTtcblx0XHRcdFx0XHQkcm90OiAyNzA7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGZvciAkaSBmcm9tIDEgdG8gJG5iLWl0ZW1zKzEge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0JjpudGgtb2YtdHlwZSgjeyRpfSkge1xuXHRcdFx0XHRcdFx0IFxuXHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IFxuXHRcdFx0XHRcdFx0XHRcdHJvdGF0ZSgjeyRyb3R9ZGVnKSBcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2xhdGUoI3skaGFsZi1wYXJlbnR9cHgpIFxuXHRcdFx0XHRcdFx0XHRcdHJvdGF0ZSgtI3skcm90fWRlZyk7XG5cdFx0XHRcdFx0XHQgXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQgXG5cdFx0XHRcdFx0XHQkcm90OiAkcm90ICsgJGFuZ2xlO1xuXHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCNjb25uZWN0aW5nTGluZXNDb250YWluZXIgLmNvbm5lY3RpbmdMaW5lIHtcblx0XHRcdFx0XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGJvdHRvbTogNTAlO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0d2lkdGg6IDFweDtcblx0XHRcdFx0XHRoZWlnaHQ6ICN7JGhhbGYtcGFyZW50fXB4O1xuXHRcdFx0XHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2I4YjhiODtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQkYW5nbGU6IDE4MCAvICgkbmItaXRlbXMgLSAxKTtcblx0XHRcdFx0XHQkcm90OiAwO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBmb3IgJGkgZnJvbSAxIHRvICRuYi1pdGVtcysxIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdCY6bnRoLW9mLXR5cGUoI3skaX0pIHtcblx0XHRcdFx0XHRcdCBcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiBcblx0XHRcdFx0XHRcdFx0XHRyb3RhdGUoI3skcm90fWRlZyk7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0IFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0IFxuXHRcdFx0XHRcdFx0JHJvdDogJHJvdCArICRhbmdsZTtcblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFxuXHRcdFx0fVxuXHRcblx0I25ldHdvcmtNYXBPdXRlckNvbnRhaW5lciB7XG5cdFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDQzNXB4O1xuXHRcdHdpZHRoOiAyNTBweDtcblx0XHRmbG9hdDogbGVmdDtcblx0XHQvKmJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pbWFnZXMvbmV0d29ya01hcEd1aWRlLnBuZycpO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyovXG5cdFxuXHQgICAjbWFwSW5zdHJ1Y3Rpb25zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTMwcHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cdFxuXHRcdCNuZXR3b3JrTWFwQ29udGFpbmVyIHtcblx0XHRcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMTIwcHg7XG5cdFx0XHRsZWZ0OiAxMDBweDtcblx0XHRcdHdpZHRoOiAxNDBweDtcblx0XHRcdGhlaWdodDogMjgwcHg7XG5cdFx0XHRcblx0XHRcdCZbaGFzRmliZVRWPVwiVFJVRVwiXSB7XG5cdFx0XHRcdEBpbmNsdWRlIHB1dE9uU2VtaUNpcmNsZSg1LCAyODAsIDg3KTtcblx0XHRcdH1cblx0XHRcdCZbaGFzRmliZVRWPVwiRkFMU0VcIl0ge1xuXHRcdFx0XHRAaW5jbHVkZSBwdXRPblNlbWlDaXJjbGUoNCwgMjgwLCA4Nyk7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcblx0XHRcdCNzZW1pQ2lyY2xlTWFwQmFja2dyb3VuZCB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDI4MHB4O1xuXHRcdFx0XHR3aWR0aDogMTQwcHg7XG5cdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMtdG9wLXJpZ2h0KDE0MHB4KTtcblx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cy1ib3R0b20tcmlnaHQoMTQwcHgpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuXHRcdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0I2Nvbm5lY3RpbmdMaW5lc0NvbnRhaW5lciB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0d2lkdGg6IDE0MHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDI4MHB4O1xuXHRcdFx0XG5cdFx0XHRcdC5jb25uZWN0aW5nTGluZSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHQtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207IC8qIElFIDkgKi9cblx0XHRcdFx0XHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tOyAvKiBDaHJvbWUsIFNhZmFyaSwgT3BlcmEgKi9cblx0XHRcdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHQjbW9kZW1DaXJjbGUge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogNzZweDtcblx0XHRcdFx0bGVmdDogLTY0cHg7XG5cdFx0XHRcdHdpZHRoOiAxMjhweDtcblx0XHRcdFx0aGVpZ2h0OiAxMjhweDtcblx0XHRcdFx0Ym9yZGVyOiAkbmV0d29yay1tb2RlbS1jaXJjbGUtYm9yZGVyO1xuXHRcdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgbm8tcmVwZWF0IGNlbnRlcjtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRAbWl4aW4gcG9zaXRpb24tb24tY2lyY2xlKCRkZWdyZWVzLCAkZGlzdGFuY2UpIHtcblx0XHRcdFxuXHRcdFx0XHR0cmFuc2Zvcm06IFxuXHRcdFx0XHRcdFx0cm90YXRlKCRkZWdyZWVzK2RlZykgXG5cdFx0XHRcdFx0XHR0cmFuc2xhdGUoJGRpc3RhbmNlK3B4KSBcblx0XHRcdFx0XHRcdHJvdGF0ZSgoJGRlZ3JlZXMqLTEpK2RlZyk7XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdC5tYXBJdGVtQ2lyY2xlIHtcblx0XHRcdFxuXHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdFxuXHRcdFx0XHQmLm5vSW50VGV4dCB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0Lm51bURldmljZXMge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRib3R0b206IDE4cHg7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkYmFzZS1ub3JtYWwtZm9udC10eXBlO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogJG15TmV0d29yay1tYXBJdGVtQ2lyY2xlLWZvbnQtc2l6ZTtcblx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0LmRldmljZXNUeXBlTGFiZWwge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0Y29sb3I6ICRiZWxsLWRhcmtncmV5LXRleHQ7XG5cdFx0XHRcdFx0d29yZC1zcGFjaW5nOiA5OTk5OTk5cHg7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAkbXlOZXR3b3JrLWRldmljZXNUeXBlTGFiZWwtZm9udC1zaXplO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmW2RldmljZXNUeXBlPVwicHJpbWFyeVdpcmVsZXNzXCJdLFxuXHRcdFx0XHQmW2RldmljZXNUeXBlPVwiZ3Vlc3RXaXJlbGVzc1wiXSxcblx0XHRcdFx0JltkZXZpY2VzVHlwZT1cImZpYmVUVlwiXSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0LmRldmljZXNUeXBlTGFiZWwge1xuXHRcdFx0XHRcdFx0Ym90dG9tOiA3NXB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmLmN1cnJlbnQ6bm90KFtudW1EZXZpY2VzPVwiMFwiXSksICY6aG92ZXI6bm90KFtudW1EZXZpY2VzPVwiMFwiXSkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0LmRldmljZXNUeXBlTGFiZWwge1xuXHRcdFx0XHRcdFx0XHRib3R0b206IDg3cHg7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmW2RldmljZXNUeXBlPVwiVVNCXCJdLFxuXHRcdFx0XHQmW2RldmljZXNUeXBlPVwiZXRoZXJuZXRcIl0ge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdC5kZXZpY2VzVHlwZUxhYmVsIHtcblx0XHRcdFx0XHRcdHRvcDogNzhweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Ji5jdXJyZW50Om5vdChbbnVtRGV2aWNlcz1cIjBcIl0pLCAmOmhvdmVyOm5vdChbbnVtRGV2aWNlcz1cIjBcIl0pIHtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdC5kZXZpY2VzVHlwZUxhYmVsIHtcblx0XHRcdFx0XHRcdFx0dG9wOiA4NXB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHRcdCYuY3VycmVudDpub3QoW251bURldmljZXM9XCIwXCJdKSwgJjpob3Zlcjpub3QoW251bURldmljZXM9XCIwXCJdKSB7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Lm51bURldmljZXMge1xuXHRcdFx0XHRcdFx0Ym90dG9tOiAxNnB4O1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAxLjE7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0JltoYXNGaWJlVFY9XCJGQUxTRVwiXSAubWFwSXRlbUNpcmNsZVtkZXZpY2VzVHlwZT1cImZpYmVUVlwiXSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG59XG5cblxuLmdhdGV3YXktdHlwZS11YmlnIHtcbiAgI25ldHdvcmtNYXBPdXRlckNvbnRhaW5lciAjbmV0d29ya01hcENvbnRhaW5lciAjbW9kZW1DaXJjbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoXCIjeyRhc3NldFBhdGh9L21vZGVtX3ViaWctc21sLnBuZ1wiKTtcbiAgfVxufVxuXG4uZ2F0ZXdheS10eXBlLWhoNDAwMCwgLmdhdGV3YXktdHlwZS1naWdhLWh1YiB7XG4gICNuZXR3b3JrTWFwT3V0ZXJDb250YWluZXIgI25ldHdvcmtNYXBDb250YWluZXIgI21vZGVtQ2lyY2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlIDogdXJsKFwiI3skYXNzZXRQYXRofS9Ib21lSHViNEtfZnJvbnRfc21sLnBuZ1wiKTtcbiAgfVxufVxuXG4uZ2F0ZXdheS10eXBlLXNiaWcge1xuICAjbmV0d29ya01hcE91dGVyQ29udGFpbmVyICNuZXR3b3JrTWFwQ29udGFpbmVyICNtb2RlbUNpcmNsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9tb2RlbV9zYmlnLXNtbC5wbmdcIik7XG4gIH1cbn1cblxuLmdhdGV3YXktdHlwZS1iaWcge1xuICAjbmV0d29ya01hcE91dGVyQ29udGFpbmVyICNuZXR3b3JrTWFwQ29udGFpbmVyICNtb2RlbUNpcmNsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skYXNzZXRQYXRofS9tb2RlbV9iaWctc21sLnBuZ1wiKTtcbiAgfVxufVxuXG4vKiBJRSBGaXhlcyAqL1xuLnVhLWllLTkgI2RldmljZVRhYmxlLXByaW1hcnlXaXJlbGVzcyAuZGV2aWNlVGFibGUgdGhlYWQgdGggLmRpc3BsYXlDb250cm9sLFxuLnVhLWllLTkgI2RldmljZVRhYmxlLWd1ZXN0V2lyZWxlc3MgLmRldmljZVRhYmxlIHRoZWFkIHRoIC5kaXNwbGF5Q29udHJvbCxcbi51YS1pZS05ICNkZXZpY2VUYWJsZS1ldGhlcm5ldCAuZGV2aWNlVGFibGUgdGhlYWQgdGggLmRpc3BsYXlDb250cm9sXG57XG5cdG1hcmdpbi1sZWZ0Oi00NjVweDtcbn1cbiIsIiNNeVVzYWdlLVZpZXcge1xuXHRcblx0XG5cdCogKyBwIHtcblx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuXHR9XG5cdFxuXHQuY29sdW1uLmZ1bGxIZWlnaHQge1xuXHRcdGhlaWdodDogNTI3cHg7XG5cdH1cblx0XG5cdCNkYXRlQW5kRGVzYy5jb2x1bW4ge1xuXHRcblx0XHQuY29sQ29udGVudENvbnRhaW5lciB7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblx0XHRcblx0XHQjdXNhZ2VEZXNjcmlwdGlvbiB7XG5cdFx0XHRwYWRkaW5nOiAxNXB4IDEwcHggMCAwO1xuXHRcdH1cblx0XG5cdH1cblx0XG5cdFxuXHQjcGVyaW9kQ29udGFpbmVyIHtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGVyaW9kLWNvbnRhaW5lci1iYWNrZ3JvdW5kO1xuXHRcdFxuXHRcdFxuXHRcdCNwZXJpb2RQcm9maWxlU2VsZWN0aW9ue1xuXHRcdFx0cGFkZGluZzogNnB4IDEwcHg7XG5cdFx0XHRoZWlnaHQ6IDY1cHg7XG5cdFx0XG5cdFx0XHQjY2hvb3NlUGVyaW9kUHJvZmlsZSB7XG5cdFx0XHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0XHRcdHdpZHRoOiAxNzBweDtcblx0XHRcdH1cblx0XHRcblx0XHR9XG5cdFx0XG5cdFx0I2N1c3RvbVBlcmlvZFNlY3Rpb24ge1xuXHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRteXVzYWdlLWN1c3RvbS1wZXJpb2QtYm9yZGVyLXRvcDtcblx0XHRcdHBhZGRpbmc6IDEwcHggMTBweCAxNXB4O1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFxuXHRcdFx0c2VsZWN0LCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRcdHBhZGRpbmc6IDEwcHggNXB4O1xuXHRcdFx0XHR3aWR0aDogNjBweDtcblx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogOTAlIGNlbnRlcjtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmZvcm1CbG9jayB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdHNlbGVjdCB7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRzZWxlY3QgKyAqIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5kYXRlUGlja2VyVHJpZ2dlciB7XG5cdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0bWFyZ2luLXRvcDogOHB4O1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogNXB4O1xuXHRcdFx0XHR3aWR0aDogMjdweDtcblx0XHRcdFx0aGVpZ2h0OiAyNnB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvaWNvbi1DYWxlbmRhci5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuXHRcdFx0XHQvL2Rpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmJ1dHRvbkNvbnRhaW5lci5zdGFuZGFsb25lIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDE1cHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0Jltwcm9maWxlPVwiQ3VzdG9tXCJdICNjdXN0b21QZXJpb2RTZWN0aW9uIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0I2RldmljZVVzYWdlLmNvbHVtbiB7XG5cdFx0XG5cdFx0d2lkdGg6IDc1JTtcblx0XHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0XG5cdFx0LmNvbENvbnRlbnRDb250YWluZXIge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdFx0XG5cdFx0I2RldmljZVVzYWdlSGVhZGVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHBhZGRpbmc6IDAgMzBweDtcblx0XHRcdGhlaWdodDogNjVweDtcblx0XHRcdGZvbnQtc2l6ZTogMS41ZW07XG5cdFx0XHRsaW5lLWhlaWdodDogNjRweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcblx0XHRcdFxuXHRcdFx0LmRhdGUge1xuXHRcdFx0XHRwYWRkaW5nOiAwIDEwcHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0bGVmdDogLTFweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogLTE1cHg7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJGRldmljZS11c2FnZS1oZWFkZXItYWZ0ZXItYm9yZGVyLWNvbG9yO1xuXHRcdFx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdFx0XHRib3JkZXItd2lkdGg6IDE1cHggMCAxNXB4IDIwcHg7XG5cdFx0XHR9XG5cblx0XHRcdCNidG4tY2xlYXJCYW5kd2lkdGhVc2FnZXtcblx0XHRcdFx0YmFja2dyb3VuZDp0cmFuc3BhcmVudDtcblx0XHRcdFx0ZmxvYXQ6cmlnaHQ7XG5cdFx0XHRcdGNvbG9yOiRiZWxsLW1lZGdyZXktdGV4dDtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiRiZWxsLW1lZGdyZXktdGV4dDtcblx0XHRcdFx0bWFyZ2luOjE3cHggMCAwIDA7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0Om5vcm1hbDtcblx0XHRcdH1cblxuICAgICAgICAgICAgLmJyYW5kLXZpcmdpbiAmICNidG4tY2xlYXJCYW5kd2lkdGhVc2FnZXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgICAgICAgfVxuXHRcdH1cblx0XHRcblx0XHQudGFibGVDb250YWluZXIge1xuXHRcdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdFx0aGVpZ2h0OiA0NTdweDtcblx0XHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdFx0fVxuXHRcdFxuXHRcdCNkZXZpY2VVc2FnZVJlY29yZHMge1xuXHRcdFx0XG5cdFx0XHR0ciB7XG5cdFx0XHRcdGhlaWdodDogNzVweDtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0Ji5yb3dCb3JkZXJzIHRyOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuY29sSWNvbiB7XG5cdFx0XHRcdHBhZGRpbmc6IDhweCA1cHggOHB4IDE1cHg7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5jb2xOYW1lIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQuY29sTWV0ZXIge1xuXHRcdFx0XHRwYWRkaW5nOiA4cHggMDtcblx0XHRcdFx0XG5cdFx0XHRcdC5tZXRlckNvbnRhaW5lciB7XG5cdFx0XHRcdFx0d2lkdGg6IDQwMHB4O1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdC5tZXRlckJHIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdHdpZHRoOiA0MDBweDtcblx0XHRcdFx0XHRcdGhlaWdodDogMzVweDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQubWV0ZXJGRyB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5tZXRlclVwbG9hZEZHIHtcblx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWV0ZXItdXBsb2FkLWZvcmVncm91bmQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5tZXRlckRvd25sb2FkRkcge1xuXHRcdFx0XHRcdFx0LypsZWZ0OiBXaWxsIGJlIHNldCB0byAlIHZhbHVlIG9mIC5tZXRlclVwbG9hZEZHIHdpZHRoOyovXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWV0ZXItZG93bmxvYWQtZm9yZWdyb3VuZDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0LnVzYWdlSW5mbyB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAycHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDExcHg7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdD4gc3BhbiB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDAgNXB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5jb2xQZXJjZW50YWdlIHtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRiYXNlLW5vcm1hbC1mb250LXR5cGU7XG5cdFx0XHRcdGNvbG9yOiAkdXNhZ2UtcGVyY2VudGFnZS1jb2xvcjtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRtYW5hZ2VVc2FnZS1mb250LXdlaWdodDtcblx0XHRcdFx0Zm9udC1zaXplOiAkbWFuYWdlVXNhZ2UtZm9udC1zaXplO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiAkbWFuYWdlVXNhZ2UtdGV4dC1hbGlnbjtcblx0XHRcdH1cblx0XHRcdFxuXHRcdH1cblx0XG5cdH1cblx0XG5cdFxuXHRcblx0LyogVEFCTEUgQ09MVU1OIFdJRFRIUyAqL1xuXHRcblx0JHRhYmxlLWRlc2lnbi13aWR0aDogNzY2O1xuXHRcblx0I2RldmljZVVzYWdlUmVjb3JkcyB7XG5cdFxuXHRcdC8qXG5cdFx0LmNvbEljb24geyB3aWR0aDogKCA3NSAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9XG5cdFx0LmNvbE5hbWUgeyB3aWR0aDogKCAxNjUgLyAkdGFibGUtZGVzaWduLXdpZHRoICkgICogMTAwJTsgfVxuXHRcdC5jb2xNZXRlciB7IHdpZHRoOiAoIDQ1MCAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9Ki9cblx0XHQvKi5jb2xQZXJjZW50YWdlIHsgd2lkdGg6ICggMTUwIC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH0qL1xuXHRcdFxuXHRcdC8qZGlzcGxheTogbm9uZTsqL1xuXHRcdFxuXHRcdC5jb2xJY29uIHsgd2lkdGg6IDg1cHg7IH1cblx0XHQuY29sTmFtZSB7IHdpZHRoOiAyMDBweDsgfVxuXHRcdC5jb2xNZXRlciB7IHdpZHRoOiA0MDVweDsgfVxuXHRcdC8qLmNvbFBlcmNlbnRhZ2UgeyB3aWR0aDogYXV0bzsgfSovXG5cdFx0XG5cdH1cblx0XG5cdFxufVxuXG5cblxuXG4iLCIubW9kYWxQYWdlIHtcblx0XG5cdFxuXHQjREROUy1DYXJkLCAjREROUy1TZXR0aW5ncyB7XG5cdFxuXHRcdCNkZG5zU3RhdHVzIHtcblx0XHRcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0I2RkbnNTeW5jaHJvbml6aW5nIHtcblx0XHRcdFx0Y29sb3I6ICMwMDA7XG5cdFx0XHR9XG5cdFx0XHQjZGRuc1N5bmNocm9uaXplZCB7XG5cdFx0XHRcdGNvbG9yOiAkZ3JlZW4tdGV4dDtcblx0XHRcdH1cblx0XHRcdCNkZG5zRGlzYWJsZWQsICNkZG5zRXJyb3Ige1xuXHRcdFx0XHRjb2xvcjogJHJlZC10ZXh0O1xuXHRcdFx0fVxuXHRcdFxuXHRcdH1cblx0XHRcblx0XHQmLnN5bmNocm9uaXppbmcgI2RkbnNTdGF0dXMge1xuXHRcdFx0I2RkbnNTeW5jaHJvbml6aW5nIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQmLnN5bmNocm9uaXplZCAjZGRuc1N0YXR1cyB7XG5cdFx0XHQjZGRuc1N5bmNocm9uaXplZCB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5lcnJvciAjZGRuc1N0YXR1cyB7XG5cdFx0XHQjZGRuc0Vycm9yIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLmRpc2FibGVkICNkZG5zU3RhdHVzIHtcblx0XHRcdCNkZG5zRGlzYWJsZWQge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFxuXHQjREROUy1TZXR0aW5ncyB7XG5cdCAgXG5cdCAgLmZvcm1DZW50ZXJ7XG5cdCAgICB3aWR0aDogNTE1cHg7XG5cdCAgICBtYXJnaW4tdG9wOiAzNXB4O1xuXHQgIH1cblx0ICBcblx0ICBzZWxlY3QsIGlucHV0IHtcblx0ICAgIHdpZHRoOiAzMjBweDtcblx0ICAgIGhlaWdodDogNTBweDtcblx0ICB9XG5cdCAgXG5cdCAgI2N1cnJlbnQtc3RhdHVze1xuXHQgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlMWUxZTE7XG5cdCAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG5cdCAgfVxuXHQgIFxuXHQgICNjdXJyZW50U3RhdHVzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMjg1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMy41ZW07XG5cdCAgfVxuXHQgIFxuXHQgIC5mb3JtQmxvY2sge1xuXHQgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblx0ICAgIFxuXHQgIH1cblx0fVxufVxuXG5cblxuXG4iLCIjUG9ydEZvcndhcmRpbmctU2V0dGluZ3Mge1xuXHRcblx0LmlwdjZOb3RpY2Uge1xuXHRcdG1hcmdpbjogMTBweCAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXHRcblx0I291dGVyVGFibGVDb250YWluZXIge1xuXHRcdGhlaWdodDogNDYxcHg7XG5cdFxuXHRcdCNpbm5lclRhYmxlQ29udGFpbmVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cdFxuXHR9XG5cdFxuXHQjcG9ydEZvcndhcmRpbmdSdWxlc1RhYmxlIHtcblxuXHQgIC52YWxpZGF0aW9uLW1zZy5lcnJvcntcblx0XHQgICBmb250LXNpemU6IDEycHg7XG5cdFx0ICAgZm9udC1zdHlsZTppdGFsaWM7XG5cdFx0ICAgYmFja2dyb3VuZDojRTFFMUUxO1xuXHRcdCAgIHBhZGRpbmc6IDJweCA1cHg7XG5cdCAgICAgICBtYXJnaW4tdG9wOiA3cHg7XG5cdCAgfVxuXHQgIFxuXHRcdCNoZWFkZXIgLmNlbGwge1xuXHRcdFx0aGVpZ2h0OiA0NXB4O1xuXHRcdH1cblx0XHRcblx0XHQjY3JlYXRlTmV3UnVsZUhlYWRlciB7XG5cdFx0ICBkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwb3J0LWZvcndhcmRpbmctaGVhZGVyLWJhY2tncm91bmQ7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcblx0XHRcdC5jZWxsIHtcblx0XHRcdFx0cGFkZGluZzogMCAxNXB4O1xuXHRcdFx0XHRoZWlnaHQ6IDQ1cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiA0NXB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5leHBhbmRUb2dnbGUge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0XHRcdHdpZHRoOiAyNXB4O1xuXHRcdFx0XHRoZWlnaHQ6IDQycHg7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXHRcdFx0JltzdGF0dXM9XCJvcGVuXCJdIC5leHBhbmRUb2dnbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvaWNvbi1QRl9Db2xsYXBzZS5wbmcnKTtcblx0XHRcdH1cblx0XHRcdCZbc3RhdHVzPVwiY2xvc2VkXCJdIC5leHBhbmRUb2dnbGUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvaWNvbi1QRl9FeHBhbmQucG5nJyk7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0I2NyZWF0ZU5ld1J1bGUge1xuXHRcdFxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJhY2tncm91bmQ7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XG5cdFx0XHQjaGlkZVJ1bGVDb250YWluZXJ7XG5cdFx0XHQgIGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5jZWxsIHtcblx0XHRcdFx0XG5cdFx0XHRcdGhlaWdodDogMTI1cHg7XG5cdFx0XHRcdFxuXHRcdFx0XHR0YWJsZSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdHRyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMjVweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0dGQge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMCAxMHB4IDVweDtcblx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHR0ZCArIHRkIHtcblx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OiAkcG9ydC1mb3J3YXJkaW5nLXJ1bGUtYm9yZGVyO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdFx0aW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuXHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiA1cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHNlbGVjdCB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiA0cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCNydWxlTmFtZSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTUwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCNjaG9vc2VQcm90b2NvbCB7XG5cdFx0XHRcdFx0XHR3aWR0aDogODFweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0aW5wdXQucG9ydCwgaW5wdXQuaXBGaWVsZCB7XG5cdFx0XHRcdFx0XHR3aWR0aDogNTJweDtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LnBvcnREaXZpZGVyIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdHdpZHRoOiAxNXB4O1xuICAgIFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdCNjaG9vc2VEZXZpY2VOYW1lIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAyMjZweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0bGFiZWwge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiA1cHggMCAycHggMDtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC43NTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyLjBlbTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGlucHV0LmlwRmllbGQgKyBpbnB1dC5pcEZpZWxkIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdC5jYXB0aW9uIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTQwcHg7XG5cdFx0XHRcdFx0fVxuXG4gICAgICAgICAgICAgICAgICAgIC5icmFuZC12aXJnaW4gJiBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE1NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cdFx0XHRcdFx0YnV0dG9uICsgYnV0dG9uIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGJ1dHRvbi53aGl0ZSB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1mb3JlZ3JvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHBvcnQtZm9yd2FyZGluZy1ydWxlLWJ1dHRvbi13aGl0ZS1iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAkcG9ydC1mb3J3YXJkaW5nLXJ1bGUtYnV0dG9uLXdoaXRlLWJvcmRlcjtcblx0XHRcdFx0XHR9XG5cbiAgICAgICAgICAgICAgICAgICAgLmJyYW5kLXZpcmdpbiAmIGJ1dHRvbi53aGl0ZTpkaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0M4QzhDOCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAjQzhDOEM4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0XHRcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XG5cdFx0fVxuXHRcdFxuXHRcdCNydWxlc0xpc3Qge1xuXHRcdFxuXHRcdFx0dGFibGUgdGJvZHkge1xuXHRcdFx0XHRcblx0XHRcdFx0dHIge1xuXHRcdFx0XHRcdGhlaWdodDogNDlweDtcblx0XHRcdFx0XHRcbiAgICAgICAgICYuZGlzYWJsZWR7XG4gICAgICAgICAgICB0ZHtcbiAgICAgICAgICAgICAgY29sb3I6ICRkaXNhYmxlZC10ZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgXG5cdFx0XHRcdH1cblx0XHRcdFx0dGQge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgNXB4IDAgOHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0LmNvbFN0YXR1cyB7XG5cdFx0XHRcdHBhZGRpbmc6IDVweCAycHggMDtcblx0XHRcdFxuXHRcdFx0XG5cdFx0XHRcdC5vbk9mZlRvZ2dsZSB7XG5cdFx0XHRcdFxuXHRcdFx0XHRcdHdpZHRoOiA2MHB4O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogOXB4O1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMHB4KTtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQub25PZmZTbGlkZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwcHgpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRzcGFuLnRvZ2dsZU9uIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDAgOHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRzcGFuLnRvZ2dsZU9mZiB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwIDZweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdC5jb2xBY3Rpb24ge1xuXHRcdFx0XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdFxuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHR3aWR0aDogNDBweDtcblx0XHRcdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdC5yZW1vdmVYQnV0dG9uIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIjeyRhc3NldFBhdGh9L3VpL3JlbW92ZVhCdXR0b24tc21sLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyO1xuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0LmVkaXRCdXR0b24ge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIiN7JGFzc2V0UGF0aH0vdWkvZWRpdEJ1dHRvbi1zbWwucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXI7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHR9XG5cdFx0XHRcblx0XHRcdH1cblx0XHRcblx0XHR9XG5cdFx0XG5cdH1cblx0XG5cdCN0ZXN0MSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDU1cHg7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgYmx1ZTtcblx0fVxuXHRcblx0I3Rlc3QyIHtcblx0XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRvdmVyZmxvdzogYXV0bztcblx0XHRib3JkZXI6IDFweCBzb2xpZCBncmVlbjtcblx0XG5cdFx0I3Rlc3QyQ29udGVudCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogNDAwcHg7XG5cdFx0XHRib3JkZXI6MXB4IHNvbGlkIHJlZDtcblx0XHR9XG5cdFxuXHR9XG5cdFxuXHQuZmx1aWRSb3dzVGFibGUge1xuXHRcdFxuXHRcdGRpc3BsYXk6dGFibGU7XG5cdFx0dGFibGUtbGF5b3V0OmZpeGVkO1xuXHRcdGhlaWdodDoxMDAlO1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0bWF4LWhlaWdodDoxMDAlO1xuXHRcblx0XHQucm93IHtcblx0XHRcdGRpc3BsYXk6dGFibGUtcm93O1xuXHRcdH1cblx0XHQuY2VsbCB7XG5cdFx0XHRkaXNwbGF5OnRhYmxlLWNlbGw7XG5cdFx0fVxuXHRcdFxuXHRcblx0fVxuXHRcblx0I3J1bGVzIHtcbiAgICAgICNsaXN0IHtcbiAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIH1cbiAgICAgIFxuICBcdCAmLnBhbmVsQ2xvc2VkIHtcbiAgICAgICAgI2xpc3Qge1xuICAgICAgICAgIGhlaWdodDogMzc3cHg7XG4gICAgICAgIH1cblx0ICB9IFxuXHR9XG5cdFxuXHQub2xkSUVXcmFwcGVyIHtcblx0XHRcblx0XHRoZWlnaHQ6IDM0MXB4O1xuXHRcdFxuXHRcdHRhYmxlIHtcblx0XHRcdFxuXHRcdFx0d2lkdGg6IDEwNjVweDtcblx0XHRcdFxuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0LyogVEFCTEUgQ09MVU1OIFdJRFRIUyAqL1xuXHRcblx0JHRhYmxlLWRlc2lnbi13aWR0aDogMTAwNDtcblx0XG5cdC5wb3J0Rm9yd2FyZGluZ1J1bGVzVGFibGUge1xuICBcblx0XHQuY29sTmFtZSB7IHdpZHRoOiAxNzBweDsgfVxuXHRcdC5jb2xTdGF0dXMgeyB3aWR0aDogNjVweDsgfVxuXHRcdC5jb2xQcm90b2NvbCB7IHdpZHRoOiAxMDBweDsgfVxuXHRcdC5jb2xJbnRlcm5hbFBvcnQgeyB3aWR0aDogMTQwcHg7IH1cblx0XHQuY29sRXh0ZXJuYWxQb3J0IHsgd2lkdGg6IDE0MHB4OyB9XG5cdFx0LmNvbExvY2FsQWRkcmVzcyB7IHdpZHRoOiAyNTBweDsgfVxuXHRcdFxuXHR9XG5cdFxuXHRcblx0XG5cdFxuXHRcbn1cblxuXG5cblxuIiwiQGltcG9ydCBcIi4uL3BhcnRpYWxzL19zZXJ2aWNlc01peGluc1wiO1xuXG4jTXlTZXJ2aWNlcy1WaWV3IHtcblxuXG5cdC5jb2xDb250ZW50Q29udGFpbmVyIHtcblx0XHRwYWRkaW5nOiAzMHB4IDA7XG5cdH1cblxuXHQmW3BhZ2U9XCJzZXJ2aWNlc1wiXSAuc2VydmljZS1kZXRhaWxzOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLFxuXHQmW3BhZ2U9XCJzZXJ2aWNlc1wiXSAuc2VydmljZS1kZXRhaWxzOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gLnNlcnZpY2UtZGV0YWlscyB7XG5cdFx0LmNvbHVtbiB7XG5cdFx0XHR3aWR0aDogMzMlO1xuXHRcdH1cblxuXHRcdCNpbnRlcm5ldEVycm9ySW5zdHJ1Y3Rpb25zIHtcblx0XHRcdHdpZHRoOiAyMDYlICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nOiAxMDBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdCZbcGFnZT1cInNlcnZpY2VzXCJdIC5zZXJ2aWNlLWRldGFpbHM6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMSksXG5cdCZbcGFnZT1cInNlcnZpY2VzXCJdIC5zZXJ2aWNlLWRldGFpbHM6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksXG5cdCZbcGFnZT1cInNlcnZpY2VzXCJdIC5zZXJ2aWNlLWRldGFpbHM6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuc2VydmljZS1kZXRhaWxze1xuXHRcdC5jb2x1bW4ge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHQjaW50ZXJuZXRFcnJvckluc3RydWN0aW9ucyB7XG5cdFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzogMTAwcHggMzBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxuXG5cdCZbcGFnZT1cInNlcnZpY2VzXCJdIC5jb2x1bW4ge1xuXG5cdFx0aDJ7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yNWVtO1xuXHRcdH1cblxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiAwIDI1cHg7XG5cdFx0aGVpZ2h0OiA1NDVweDtcblxuXHRcdCYjZmliZUludGVybmV0IHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0fVxuXG5cdFx0JiN2b2ljZUNvbHVtbiB7XG5cdFx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0XHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXG5cdFx0fVxuXG5cdFx0aDIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDhweDtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cdFx0Ji5zZXJ2aWNlIC5zdGF0dXNJY29uIHtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXG5cdFx0fVxuXG5cdFx0LnNlcnZpY2VTdGF0dXMsIC5zZXJ2aWNlSVAge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHRcdC5zdGF0dXMge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcblx0XHRcdH1cblxuXHRcdFx0LmlwLCAuaXB2NiB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQmW3N0YXR1cz1cIkNPTk5FQ1RFRFwiXSAuc2VydmljZVN0YXR1cyAuc3RhdHVzIHtcblx0XHRcdGNvbG9yOiAkZ3JlZW4tdGV4dDtcblx0XHR9XG5cdFx0JltzdGF0dXM9XCJESVNDT05ORUNURURcIl0gLnNlcnZpY2VTdGF0dXMgLnN0YXR1cyB7XG5cdFx0XHRjb2xvcjogJHJlZDtcblx0XHR9XG5cdFx0JltzdGF0dXM9XCJUUk9VQkxFXCJdIC5zZXJ2aWNlU3RhdHVzIC5zdGF0dXMge1xuXHRcdFx0Y29sb3I6ICR5ZWxsb3ctdGV4dDtcblx0XHR9XG5cblx0XHRwICsgcCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcdH1cblxuXHRcdGxhYmVsIHtcblx0XHRcdHdpZHRoOiAxMjBweDtcblx0XHR9XG5cblx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcblx0XHRcdHdpZHRoOiAyNDBweDtcblx0XHR9XG5cblxuXG5cdH1cblxuXG5cdC5zZXJ2aWNlTXNnQm94IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHRwYWRkaW5nOiAxMHB4IDE1cHggMTVweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmVsbC1saWdodC1ncmV5O1xuXHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdG1heC1oZWlnaHQ6IDE1MHB4O1xuXG4gICAgJiNpbnRlcm5ldE1zZ0JveC5lcnJvciAuZXJyb3IgcHtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICB9XG5cblx0XHQmLmluc3RydWN0aW9ucyB7XG5cdFx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0XHRcdG1heC1oZWlnaHQ6IG5vbmU7XG5cdFx0fVxuXG5cdFx0Lmluc3RydWN0aW9ucywgLnNlcnZpY2VNZXNzYWdlcywgLmVycm9yIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0Ji5pbnN0cnVjdGlvbnMgLmluc3RydWN0aW9ucywgJi5tZXNzYWdlIC5zZXJ2aWNlTWVzc2FnZXMsICYuZXJyb3IgLmVycm9yIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblxuXHRcdCYuaW5zdHJ1Y3Rpb25zIC5zZXJ2aWNlTWVzc2FnZXMsICYuaW5zdHJ1Y3Rpb25zIC5lcnJvciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdCNlcnJvckFycm93IHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdG1hcmdpbi10b3A6IC0yMHB4O1xuXHRcdFx0d2lkdGg6IDA7XG5cdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdFx0Ym9yZGVyLXdpZHRoOiAyMHB4IDAgMjBweCAyMHB4O1xuXHRcdFx0ei1pbmRleDogJGNvbXBvbmVudEJhc2VQcmlvcml0eSAqICRjb21wb25lbnRGaXJzdFByaW9yaXR5O1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBzZXJ2aWNlLW1lc3NhZ2VzKDhweCk7XG5cdH1cblxuXHQjaW50ZXJuZXRFcnJvckluc3RydWN0aW9ucyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAxMDMlO1xuXHRcdGhlaWdodDogOTglO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdFx0QGluY2x1ZGUgb3BhY2l0eSgwLjk1LCA5NSk7XG5cdFx0ei1pbmRleDogJGNvbXBvbmVudEJhc2VQcmlvcml0eSAqICRjb21wb25lbnRTZWNvbmRQcmlvcml0eTtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0I2Vycm9yVGV4dCB7XG5cdFx0XHR3aWR0aDogNTA1cHg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgc2VydmljZS1tZXNzYWdlcygxNnB4KTtcblx0fVxuXG5cdC5sb3dlckxheWVyRG93biB7XG5cdFx0LnNlcnZpY2VNc2dCb3gge1xuXHRcdFx0Ly8gTm90ZSB0aGF0IGlmIHRoZSBpbnRlcm5ldEVycm9ySW5zdHJ1Y3Rpb25zIGFyZSB2aXNpYmxlLCB0aGUgb3ZlcmZsb3cgZG9lcyBub3QgZGlzcGxheSB3ZWxsIGJlY2F1c2UgdGhlXG5cdFx0XHQvLyBtZXNzYWdlIGJveCBuZWVkcyB0byBibGVlZCBvdmVyIHRvIHRoZSBlZGdlIG9mIHRoZSBjb2x1bW4gKHJlc3VsdGluZyBpbiBlaXRoZXIgYSBob3Jpem9udGFsIHNjcm9sbCBiYXJcblx0XHRcdC8vIG9yIGFuIHVubmVjZXNzYXJ5IHZlcnRpY2FsIHNjcm9sbCBiYXIgZGVwZW5kaW5nIG9uIGhvdyB0aGUgb3ZlcmZsb3cgaXMgY29uZmlndXJlZCkuIEZvciB0aGlzIHJlYXNvblxuXHRcdFx0Ly8gd2Ugb25seSBpbnRyb2R1Y2UgdGhlIHNjcm9sbCBiYXIgaWYgdGhlIHNlcnZpY2UgbWVzc2FnZSBhcmUgdmlzaWJsZS5cblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdFx0bWF4LWhlaWdodDogbm9uZTtcblx0XHRcdG1hcmdpbi1yaWdodDogLTI1cHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXG5cdFx0XHQjZXJyb3JBcnJvdyB7XG5cdFx0XHRcdHJpZ2h0OiAtMjBweDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0I2ludGVybmV0RXJyb3JJbnN0cnVjdGlvbnMge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG5cblxuXG5cblx0I2ludGVybmV0TG9naW5Gb3JtIHtcblx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgI2ludGVybmV0TG9naW5GaWVsZHMge1xuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogMTMwcHg7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICAgICAgd2lkdGg6IDE5NXB4O1xuICAgICAgfVxuXG4gICAgfVxuXG5cblx0XHQjY29ubmVjdEludGVybmV0QnV0dG9uLCAjY2FuY2VsQ29ubmVjdEludGVybmV0QnV0dG9uIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0I2NhbmNlbENvbm5lY3RJbnRlcm5ldEJ1dHRvbiB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdFx0fVxuXG5cdFx0I2NoYW5nZUxvZ2luSW5mb0J1dHRvbntcblx0XHRcdGRpc3BsYXkgOiBpbmxpbmUtYmxvY2s7XG5cdFx0fVxuXG5cdFx0Ji5jaGFuZ2luZyB7XG5cdFx0XHQjY29ubmVjdEludGVybmV0QnV0dG9uLCAjY2FuY2VsQ29ubmVjdEludGVybmV0QnV0dG9uIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXHRcdFx0I2NoYW5nZUxvZ2luSW5mb0J1dHRvbntcblx0XHRcdFx0ZGlzcGxheSA6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxuXG5cblx0I3Bob25lTGluZXNUYWJsZSB7XG5cblx0XHR0aCwgdGQge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0fVxuXG5cdFx0dGQge1xuXHRcdFx0aGVpZ2h0OiA0NXB4O1xuXHRcdH1cblxuXHRcdC5zdGF0dXNJY29uIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogYXV0bztcblx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdH1cblxuXHRcdCNsaW5lMSwgI2xpbmUye1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQmLmxpbmUtMS1lbmFibGVkICNsaW5lMXtcblx0XHRcdGRpc3BsYXk6IHRhYmxlLXJvdztcblx0XHR9XG5cblxuXHRcdCYubGluZS0yLWVuYWJsZWQgI2xpbmUye1xuXHRcdFx0ZGlzcGxheTogdGFibGUtcm93O1xuXHRcdH1cblxuXHRcdHRyLmxpbmUtbm9uZXtcblx0XHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdH1cblxuXHRcdCYubGluZS0xLWVuYWJsZWQsICYubGluZS0yLWVuYWJsZWQge1xuXHRcdFx0dHIubGluZS1ub25le1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zZXJ2aWNlLmNvbHVtbiB7XG5cdFx0LnN1YnNjcmliZWRUb1NlcnZpY2Uge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQubm90U3Vic2NyaWJlZFRvU2VydmljZSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdCZbc3RhdHVzPVwiQ09OTkVDVEVEXCJdLCAmW3N0YXR1cz1cIlRST1VCTEVcIl0sICZbc3RhdHVzPVwiRElTQ09OTkVDVEVEXCJdIHtcblx0XHRcdC5zdWJzY3JpYmVkVG9TZXJ2aWNlIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCZbc3RhdHVzPVwiVU5TVUJTQ1JJQkVEXCJdIHtcblx0XHRcdC5ub3RTdWJzY3JpYmVkVG9TZXJ2aWNlIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gVm9JUCBidXR0b24gYmVoYXZpb3VyLi4uIE5vdGUgdGhhdCBwcmV2aW91c2x5IHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBpbmZvIGJ1dHRvbiB3YXMgZ2VuZXJpY2FsbHkgY29udHJvbGxlZCBieVxuXHQvLyB0aGUgLm5vdFN1YnNjcmliZWRUb1NlcnZpY2UgY29udGFpbmVyIChmb3IgYm90aCBJUFRWIGFuZCBWb0lQKS4gVW5mb3J0dW5hdGVseSwgYXMgcGFydCBvZiBCRUxMU0JJRy0yNTk5IHRoZVxuXHQvLyBjb25maWd1cmUgYnV0dG9uIGhhZCB0byBiZSByZWluc3RhdGVkIGZvciB0aGUgQkJNIG1hcmtldC5cblx0Ly9cblx0Ly8gU2luY2UgdGhlIGNvbmZpZ3VyZSBidXR0b24gbXVzdCByZXBsYWNlIHRoZSBpbmZvIGJ1dHRvbiBmb3IgU0JJRyBhbmQgVUJJRywgYW5kIHRoZSBjb25maWd1cmUgYnV0dG9uIG11c3QgYWxzb1xuXHQvLyBiZSB2aXNpYmxlIHdoZW4gdGhlIHNlcnZpY2UgaXMgc3Vic2NyaWJlZCwgdGhlIGJ1dHRvbiBjb250YWluZXIgbmVlZGVkIHRvIGJlIG1vdmVkIGFuZCB0aGUgdmlzaWJpbGl0eSBvZiB0aGVcblx0Ly8gYnV0dG9ucyBoYWQgdG8gYmUgY29udHJvbGxlZCBpbnN0ZWFkIG9mIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBjb250YWluZXIuXG5cdC8vXG5cdC8vIE5vdGU6IExpZmUgd291bGQgYmUgZWFzaWVyIGlmIHdlIGNvdWxkIHVzZSB0aGUgOm5vdCgpIHNlbGVjdG9yLCBidXQgdGhpcyB3b3VsZCBsaWtlbHkgY2F1c2UgcHJvYmxlbXMgd2l0aCBJRTgsXG5cdC8vIGFuZCBzZXJ2aWNlIGNvbmZpZ3VyYXRpb24gaXMgb25lIG9mIHRoZSBmZXcgdGhpbmdzIHRoYXQgc2hvdWxkIHdvcmsgaW4gbGVnYWN5IGJyb3dzZXJzLlxuXHQuc2VydmljZS5jb2x1bW4jdm9pY2VDb2x1bW4ge1xuXHRcdC8vIFJlc2V0IHRoZSBtYXJnaW4gb24gdGhlIGJ1dHRvbnMgYXMgb25seSBvbmUgd2lsbCBldmVyIGJlIHNob3dpbmdcblx0XHQjdm9pcEJ1dHRvbnMgYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdC8vIFRoZSBcIlNldCB1cCBub3dcIiBidXR0b24gb25seSBleGlzdHMgZm9yIEJCTSwgaGlkZSBpdCBmb3IgYWxsIG90aGVyIG1hcmtldHNcblx0XHQjdm9pcENvbmZpZ3VyZSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC8vIEhpZGUgdGhlIFZvSVAgYnV0dG9uIGNvbnRhaW5lciBlbnRpcmVseSBpZiB0aGUgVm9JUCBzZXJ2aWNlIGlzIGNvbmZpZ3VyZWQsIGFzIHRoZXJlIHdpbGwgYmUgbm8gYnV0dG9uc1xuXHRcdC8vIHNob3cuXG5cdFx0JltzdGF0dXM9XCJDT05ORUNURURcIl0sICZbc3RhdHVzPVwiVFJPVUJMRVwiXSwgJltzdGF0dXM9XCJESVNDT05ORUNURURcIl0ge1xuXHRcdFx0I3ZvaXBCdXR0b25zIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBGb3IgQkJNIHdlIGhhdmUgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiBtb2RlbXMgdGhhdCBzdXBwb3J0IFZvSVAgKFNCSUcgYW5kIFVCSUcpIGFuZCBtb2RlbXMgdGhhdCBkbyBub3QgKEJJRyksXG5cdFx0Ly8gdW5mb3J0dW5hdGVseSB3ZSBoYXZlIG5vdCBhZGRlZCBmZWF0dXJlIENTUyBjbGFzc2VzIHRvIHRoZSBkb2N1bWVudCwgYW5kIGRvaW5nIHNvIGhlcmUgaXMgYSBiaXQgb3ZlcmtpbGwuXG5cdFx0Ly8gVW5mb3J0dW5hdGVseSB3ZSBoYXZlIGFsc28gYWRkZWQgdGhlIG1vZGVtIENTUyBjbGFzc2VzIHRvIHRoZSBib2R5IHRhZyBhbmQgdGhlIG1hcmtldCBDU1MgY2xhc3NlcyB0byB0aGVcblx0XHQvLyBodG1sIHRhZywgc28gd2UgaGF2ZSBhIGJpdCBvZiBhIG1lc3MgaGVyZS5cblx0XHQubWFya2V0LWJibSAmIHtcblx0XHRcdCN2b2lwQnV0dG9ucyB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXG5cdFx0XHQjdm9pcENvbmZpZ3VyZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdH1cblxuXHRcdFx0I3ZvaXBJbmZvIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQubWFya2V0LWJibSAuZ2F0ZXdheS10eXBlLWJpZyAmIHtcblx0XHRcdCN2b2lwQ29uZmlndXJlIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0I3ZvaXBJbmZvIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5ub3RTdWJzY3JpYmVkVG9TZXJ2aWNlIC5idXR0b25Db250YWluZXIge1xuXHRcdHdpZHRoOiAzMjVweDtcblx0fVxuXG5cdC8qIFRBQkxFIENPTFVNTiBXSURUSFMgKi9cblxuXHQkdGFibGUtZGVzaWduLXdpZHRoOiAzMDc7XG5cblx0I3Bob25lTGluZXNUYWJsZSB7XG5cblx0XHQuY29sTGluZSB7IHdpZHRoOiA1MHB4OyB9XG5cdFx0LmNvbFBob25lTnVtIHsgd2lkdGg6IDEwMXB4OyB9XG5cdFx0LmNvbFN0YXR1cyB7IHdpZHRoOiA2M3B4OyB9XG5cdFx0LmNvbENhbGxTdGF0dXMgeyB3aWR0aDogMTExcHg7IH1cblxuXHR9XG5cblxufSIsIkBtaXhpbiBzZXJ2aWNlLW1lc3NhZ2VzKCRzZXBhcmF0aW9uKSB7XG4gIC5zZXJ2aWNlTWVzc2FnZXMge1xuICAgIC5zZXJ2aWNlTWVzc2FnZSB7XG4gICAgICBtYXJnaW4tdG9wOiAkc2VwYXJhdGlvbjtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAkc2VwYXJhdGlvbjtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0Z3JleS10ZXh0O1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIC5lcnJvckNvZGUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNlcGFyYXRpb24gLyAyO1xuICAgICAgfVxuXG4gICAgICAubWVzc2FnZUNvbnRlbnQgcCB7XG4gICAgICAgIG1hcmdpbjogJHNlcGFyYXRpb24gLyAyIDAgMCAwO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIjc2l0ZU1hcCB7XG4gIFxuICBcbiAgLmNvbENvbnRlbnRDb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLm1vZGFsSGVhZGVyIGgye1xuICAgIGZvbnQtZmFtaWx5OiAkc2l0ZW1hcC1oMi1mb250LWZhbWlseTtcbiAgICBjb2xvcjogJHNpdGVtYXAtaDItZm9yZWdyb3VuZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJHNpdGVtYXAtaDItdHJhbnNmb3JtO1xuICAgIGxpbmUtaGVpZ2h0OiAkc2l0ZW1hcC1oMi1saW5lLWhlaWdodDtcbiAgfVxuXG4gICNzaXRlTWFwIHtcbiAgICAubW9kYWxIZWFkZXIgaDJ7XG4gICAgICBmb250LWZhbWlseTogJHNpdGVtYXAtaDItZm9udC1mYW1pbHk7XG4gICAgICBjb2xvcjogJHNpdGVtYXAtaDItZm9yZWdyb3VuZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiAkc2l0ZW1hcC1oMi10cmFuc2Zvcm07XG4gICAgICBsaW5lLWhlaWdodDogJHNpdGVtYXAtaDItbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgIFxuICAgIC5jb2x1bW4ge1xuICAgICAgcGFkZGluZzogMCAyNXB4O1xuICAgICAgXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgI3NldHRpbmdzTmF2Q29sdW1uIHtcbiAgICB3aWR0aDogNDUlO1xuICB9XG4gIFxuICAjc2VydmljZXNOYXZDb2x1bW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIFxuICB1bC5uYXZMaXN0IHtcbiAgXG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjk7XG4gICAgfVxuICAgIFxuICAgID4gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UxZTFlMTtcbiAgICB9XG4gICAgXG4gICAgbGkgZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgXG4gICAgPiBsaSBkaXYge1xuICAgICAgXG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDYzcHg7XG4gICAgICBmb250LXdlaWdodDogJHNpdGVtYXAtZm9udC13ZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBcbiAgICAgICYuaW50ZXJuZXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1pbnRlcm5ldC1zaXRlbWFwLnBuZycpO1xuICAgICAgfVxuICAgICAgJi5maWJlVFYge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1maWJlVFYtc2l0ZW1hcC5wbmcnKTtcbiAgICAgIH1cbiAgICAgICYuZmliZVZvaWNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tZmliZVZvaWNlLXNpdGVtYXAucG5nJyk7XG4gICAgICAgICYuYmJtIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1maWJlVm9pY2VfYnVzaW5lc3Mtc2l0ZW1hcC5wbmcnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy9UT0RPOiBDb21lIHVwIHdpdGggYSBiZXR0ZXIgd2F5IHRvIGFsaWduIGljb24gdGhlbiBqdXN0IG1vdmluZyB0aGVtIG1hbnVhbGx5XG4gICAgICAmLm15TmV0d29ya3tcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tbXlOZXR3b3JrLXNpdGVtYXAucG5nJyk7XG4gICAgICB9XG4gICAgICAmLm1vZGVtUGVyZm9ybWFuY2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1tb2RlbVBlcmZvcm1hbmNlLXNpdGVtYXAucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDVweCAxMnB4O1xuICAgICAgfVxuICAgICAgJi53aWZpU2V0dGluZ3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi13aWZpLXNpdGVtYXAucG5nJyk7XG4gICAgICB9XG4gICAgICAmLmJhdHRlcnlCYWNrdXAge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vaWNvbnMvaWNvbi1iYXR0ZXJ5QmFja3VwLXNpdGVtYXAucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246MThweDtcbiAgICAgIH1cbiAgICAgICYubXlVc2FnZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLW15VXNhZ2Utc2l0ZW1hcC5wbmcnKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHNpdGVtYXAtbXlVc2FnZS1wb3NpdGlvbjtcbiAgICAgIH1cbiAgICAgICYuc3BlZWRUZXN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L2ljb25zL2ljb24tc3BlZWR0ZXN0LXNpdGVtYXAucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDlweCBjZW50ZXI7XG4gICAgICB9XG4gICAgICAmLm1vZGVtUHJlZmVyZW5jZXN7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLW1vZGVtUHJlZmVyZW5jZXMtc2l0ZW1hcC5wbmcnKTtcbiAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDE3cHg7XG4gICAgICB9XG4gICAgICAmLmFkdmFuY2VkVG9vbHN7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDhweCBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS9pY29ucy9pY29uLWFkdmFuY2VkVG9vbHMtc2l0ZW1hcC5wbmcnKTtcbiAgICAgIH1cbiAgICB9XG4gIFxuICB9XG4gIHVsLm5hdkxpc3Qge1xuICAgICAgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBoZWlnaHQ6IDU1MHB4O1xuICBcbiAgICAmI3NldHRpbmdzTmF2SXRlbXMgPiBsaSB7ICAgIFxuICAgICAgd2lkdGg6IDI0NXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgICAgXG4gICAgLnN1Yk5hdkxpc3Qge1xuICAgICAgXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6ICRiZWxsLWRhcmtncmV5LXRleHQ7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgIFxuICAgICAgICBsaSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICB3aWR0aDogMjQ1cHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCA1NnB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyBcbiAgICAgICAgICAgIGNvbG9yOiAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4OyBcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICAgICAgbGVmdDogMzhweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICBcbiAgICAgICAgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgICAgIFxuICAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIFxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgIFxuICAgICAgfVxuICAgIFxuICBcbiAgfVxuICBcbiAgXG59XG5cblxuIiwiI1NwZWVkVGVzdC1WaWV3IHtcblxuICAubW9kYWxIZWFkZXIge1xuICAgIGgyIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gICAgfVxuICB9XG5cbiAgI3NwZWVkVGVzdFBvcHVwQ29udGFpbmVyIHtcblxuICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7XG4gICAgd2lkdGg6IDg1MXB4O1xuXG4gICAgI3NwZWVkVGVzdFNwaW5uZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLnJ1bm5pbmcge1xuICAgICAgI3NwZWVkVGVzdFNwaW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgI3NwZWVkVGVzdENvbnRyb2xzQ29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAjc3BlZWRUZXN0Q29udHJvbHNDb250YWluZXIsICNzcGVlZFRlc3RTcGlubmVyIHtcblxuICAgICAgd2lkdGg6IDYyNXB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZmZmO1xuXG4gICAgICAjcnVuU3BlZWRUZXN0IHtcblxuICAgICAgICBwYWRkaW5nOiAyNXB4IDEyMHB4IDA7XG4gICAgICAgIGhlaWdodDogMTU5cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAjc3RhcnRUZXN0QnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW46IDI1cHggYXV0bztcbiAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAjc3BlZWRUZXN0T3B0aW9ucyB7XG5cbiAgICAgICAgcGFkZGluZzogMjBweCAyNXB4IDA7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleTtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgICAgICBzcGFuICsgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgI3NwZWVkVGVzdFJlc3VsdHNDb250YWluZXIge1xuXG4gICAgICB3aWR0aDogMjI2cHg7XG5cbiAgICAgIC5zcGVlZFJlc3VsdCB7XG5cbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAmICsgLnNwZWVkUmVzdWx0IHtcbiAgICAgICAgICBib3JkZXItdG9wOiAkc3BlZWQtdGVzdC1yZXN1bHQtYm9yZGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJiNkb3dubG9hZFNwZWVkLCAmI3VwbG9hZFNwZWVkIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDI1cHggMCA5MHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzcGVlZC10ZXN0LXJlc3VsdC1kb3dubG9hZC1iYWNrZ3JvdW5kO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDI1cHggY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgICAgJiNkb3dubG9hZFNwZWVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvaWNvbi1Eb3dubG9hZC5wbmcnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvaWNvbi1Eb3dubG9hZC5zdmcnKTtcbiAgICAgICAgfVxuICAgICAgICAmI3VwbG9hZFNwZWVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvaWNvbi1VcGxvYWQucG5nJyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcjeyRhc3NldFBhdGh9L3VpL2ljb24tVXBsb2FkLnN2ZycpO1xuICAgICAgICB9XG5cbiAgICAgICAgJiNsYXRlbmN5IHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDI1cHggMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3BlZWQtdGVzdC1yZXN1bHQtbGF0ZW5jeS1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNwZWVkIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJHNwZWVkVGVzdC1mb250LWZhbWlseTtcbiAgICAgICAgICBmb250LXNpemU6ICRzcGVlZFRlc3QtZm9udC1zaXplO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkc3BlZWRUZXN0LWxpbmUtaGVpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgLm9sZElFV3JhcHBlciB7XG5cbiAgICBoZWlnaHQ6IDIzMXB4O1xuXG4gICAgLnN0YXRzVGFibGUge1xuXG4gICAgICB3aWR0aDogODUycHg7XG5cbiAgICB9XG5cbiAgfVxuXG4gICNzcGVlZFRlc3RIaXN0b3J5VGFibGVDb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiA4NTFweDtcbiAgfVxuXG4gICNjbGVhckhpc3RvcnlCdXR0b24ge1xuICAgIHdpZHRoOiAxNjVweDtcbiAgfVxuXG4gIC5icmFuZC12aXJnaW4gJiAjY2xlYXJIaXN0b3J5QnV0dG9uIHtcbiAgICB3aWR0aDogMTgwcHg7XG4gIH1cblxuICAudGFibGVDb250YWluZXIgLm1vZGFsSGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gICNzcGVlZFRlc3RIaXN0b3J5VGFibGUge1xuXG4gICAgdGhlYWQge1xuXG4gICAgICB0aCB7XG4gICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHRib2R5IHtcblxuICAgICAgaGVpZ2h0OiAxODVweDtcblxuICAgICAgdHIge1xuXG4gICAgICAgIGhlaWdodDogMzdweDtcblxuICAgICAgfVxuXG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgICAgfVxuXG4gICAgICAuY29sRGF0ZVRpbWUgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAmICsgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAuY29sQWN0aW9uIC5kZWxldGVCdXR0b24ge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnI3skYXNzZXRQYXRofS91aS9kZWxldGVCdXR0b25fc21sLnBuZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvZGVsZXRlQnV0dG9uX3NtbC5zdmcnKTtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHRoLCB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gIH1cblxuICAvKiBUQUJMRSBDT0xVTU4gV0lEVEhTICovXG5cbiAgJHRhYmxlLWRlc2lnbi13aWR0aDogMTAwNDtcblxuICAjc3BlZWRUZXN0SGlzdG9yeVRhYmxlIHtcblxuICAgIC8qXG4gICAgLmNvbERhdGVUaW1lIHsgd2lkdGg6ICggMjQ0IC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH1cbiAgICAuY29sQmxvY2tUcmFmZmljIHsgd2lkdGg6ICggMTUwIC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH1cbiAgICAuY29sTGF0ZW5jeSB7IHdpZHRoOiAoIDE1MCAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9XG4gICAgLmNvbERMU3BlZWQgeyB3aWR0aDogKCAxNTAgLyAkdGFibGUtZGVzaWduLXdpZHRoICkgICogMTAwJTsgfVxuICAgIC5jb2xVTFNwZWVkIHsgd2lkdGg6ICggMTUwIC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH1cbiAgICAuY29sQWN0aW9uIHsgd2lkdGg6ICggMTUwIC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH0qL1xuXG4gICAgLypkaXNwbGF5OiBub25lOyovXG5cbiAgICAuY29sRGF0ZVRpbWUge1xuICAgICAgd2lkdGg6IDIyMHB4O1xuICAgIH1cbiAgICAuY29sQmxvY2tUcmFmZmljIHtcbiAgICAgIHdpZHRoOiAxMTZweDtcbiAgICB9XG4gICAgLmNvbExhdGVuY3kge1xuICAgICAgd2lkdGg6IDE4MHB4O1xuICAgIH1cbiAgICAuY29sRExTcGVlZCB7XG4gICAgICB3aWR0aDogMTM1cHg7XG4gICAgfVxuICAgIC5jb2xVTFNwZWVkIHtcbiAgICAgIHdpZHRoOiAxMzVweDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICAuY29sQWN0aW9uIHtcbiAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxufVxuXG5cblxuIiwiI3N0YXRpc3RpY3NQYWdlIHtcblxuXG4gIC50YWJDb250YWluZXIge1xuXG4gICAgLnRhYkhlYWRlciB7XG5cbiAgICAgIC50YWIge1xuICAgICAgICBAaW5jbHVkZSBzZXR1cFRhYnNGb3JXaWR0aCgxMDY1KTtcblxuICAgICAgICAmLmN1cnJlbnQ6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jdXJyZW50Omxhc3QtY2hpbGR7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC50YWJCb2R5IHtcblxuICAgICAgLnRhYkNvbnRlbnQge1xuXG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cblxuXG4gIC5zdGF0c1RhYmxlQ29udGFpbmVyIHtcblxuICB9XG5cbiAgLnN0YXRzVGFibGUge1xuXG4gICAgdGhlYWQge1xuXG4gICAgICB0aCB7XG4gICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIHRib2R5IHtcblxuICAgICAgaGVpZ2h0OiA0MDdweDtcblxuICAgICAgdHIge1xuXG4gICAgICAgIGhlaWdodDogMzdweDtcblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAub2xkSUVXcmFwcGVyIHtcblxuICAgIGhlaWdodDogNDUycHg7XG5cbiAgICAuc3RhdHNUYWJsZSB7XG5cbiAgICAgIHdpZHRoOiAxMDY1cHg7XG5cbiAgICB9XG5cbiAgfVxuXG4gIC8qIFRBQkxFIENPTFVNTiBXSURUSFMgKi9cblxuICAkdGFibGUtZGVzaWduLXdpZHRoOiAxMDA0O1xuXG4gICNzdGF0c1RhYmxlLUV0aGVybmV0IHtcbiAgICAgICAgJGRhdGEtY29sLXdpZHRoOiAxMi4yMDY1NzI3Njk5NTMwNSU7XG5cbiAgICAuY29sTmFtZSB7IHdpZHRoOiBhdXRvOyB9XG4gICAgLmNvbExBTjEgeyB3aWR0aDogJGRhdGEtY29sLXdpZHRoOyB9XG4gICAgLmNvbExBTjIgeyB3aWR0aDogJGRhdGEtY29sLXdpZHRoOyB9XG4gICAgLmNvbExBTjMgeyB3aWR0aDogJGRhdGEtY29sLXdpZHRoOyB9XG4gICAgLmNvbExBTjQgeyB3aWR0aDogJGRhdGEtY29sLXdpZHRoOyB9XG4gICAgICAgIC5jb2xXQU4geyB3aWR0aDogJGRhdGEtY29sLXdpZHRoOyB9XG4gICAgICAgIC5jb2xTRlAgeyB3aWR0aDogJGRhdGEtY29sLXdpZHRoOyB9XG5cbiAgfVxuXG4gICAgI3N0YXRzVGFibGUtSFBOQSB7XG4gICAgLmNvbE5hbWUgeyB3aWR0aDogYXV0bzsgfVxuICAgIC5jb2xIUE5BIHsgd2lkdGg6IDUwJTsgfVxuICAgIH1cblxuICAjc3RhdHNUYWJsZS1XaUZpIHtcbiAgICAuY29sTmFtZSB7IHdpZHRoOiAyNjRweDsgfVxuICAgIC5jb2xQcmltYXJ5IHt3aWR0aDogMjY3cHg7IH1cbiAgICAvLyBOb3RlOiAuY29sR3Vlc3QgdGFrZXMgdXAgcmVtYWluZGVyIGR1ZSB0byBvcHRpb25hbCBwcmVzZW5jZSBvZiBzY3JvbGwgYmFyXG5cbiAgICAmLnByaW1hcnktMyB7XG4gICAgICAuY29sTmFtZSB7IHdpZHRoOiAyMDBweDsgfVxuICAgICAgLmNvbFByaW1hcnkge3dpZHRoOiAyMTVweDsgfVxuICAgIH1cblxuICAgIHRkLmNvbEd1ZXN0IHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3N0YXRzVGFibGUtSUdNUCB0Ym9keSB7XG4gICAgaGVpZ2h0OiAyMjVweDtcbiAgfVxuXG4gICNzdGF0c1RhYmxlLUlHTVAtc3RyZWFtcyB7XG4gICAgICAgIC5jb2xJbnRlcm5hbCB7IHdpZHRoOiAxMzNweDsgfVxuICAgICAgICAuY29sQ29ubmVjdGVkIHsgd2lkdGg6IDEzNHB4OyB9XG4gICAgICAgIC5jb2xEYXRlRmlyc3QgeyB3aWR0aDogMTMzcHg7IH1cblxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cblxuIiwiI2xvZ3NQYWdlIHtcblx0XG5cdFxuXHRmb3JtW25hbWU9XCJzeXN0ZW0tbG9ncy1zZXR0aW5nc1wiXSB7XG5cdFxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0XG5cdFx0LmZvcm1CbG9jayBsYWJlbDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRsaW5lLWhlaWdodDogNDBweDtcblx0XHR9XG5cdFx0XG5cdFx0I2ZlYXR1cmVGaWx0ZXJDb250cm9sIHtcblx0XHRcdC8qYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7Ki9cblx0XHR9XG5cdFx0XG5cdFx0I2ZlYXR1cmVzLmZvcm1CbG9jayB7XG5cdFx0XG5cdFx0XHRwYWRkaW5nOiAxMHB4IDA7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcblx0XHRcdGxhYmVsIHtcblx0XHRcdFx0d2lkdGg6IDE2OHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDMwcHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC43NTtcblx0XHRcdH1cblx0XHRcblx0XHR9XG5cdFx0XG5cdFxuXHR9XG5cdFxuXHRcblx0XG5cdC5vbGRJRVdyYXBwZXIge1xuXHRcdFxuXHRcdGhlaWdodDogMzQxcHg7XG5cdFx0XG5cdFx0dGFibGUge1xuXHRcdFx0XG5cdFx0XHR3aWR0aDogMTA2NXB4O1xuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHR9XG5cdFxuXHQvKiBUQUJMRSBDT0xVTU4gV0lEVEhTICovXG5cdFxuXHQkdGFibGUtZGVzaWduLXdpZHRoOiAxMDA0O1xuXHRcblx0I3N5c3RlbUxvZ1RhYmxlIHtcblx0XG5cdFx0LmNvbERhdGVUaW1lIHsgd2lkdGg6IDE3MHB4OyB9XG5cdFx0LmNvbExldmVsIHsgd2lkdGg6IDc1cHg7IH1cblx0XHQuY29sTW9kdWxlIHsgd2lkdGg6IDc1cHg7IH1cblx0XHRcblx0XHR0aGVhZCB7XG5cdFx0XHQuY29sTWVzc2FnZSB7IHdpZHRoOiA3NzBweDsgfVxuXHRcdH1cblx0XHRcblx0XHR0Ym9keSB7XG5cdFx0XG5cdFx0XHRoZWlnaHQ6IDI4NnB4O1xuXHRcdFx0XG5cdFx0XHR0ciB7XG5cdFx0XHRcdGhlaWdodDogMzdweDtcblx0XHRcdH1cblx0XHRcblx0XHR9XG5cdFx0XG5cdH1cblx0XG5cdFxuXHRcblx0XG5cdFxufVxuXG5cblxuIiwiI3V0aWxpdGllc1BhZ2UtVmlldyB7XG5cblx0LmVycm9ye1xuXHRcdGNvbG9yOnJlZDtcblx0fVxuXG5cblx0LnRhYkNvbnRhaW5lciB7XG5cblx0XHQudGFiSGVhZGVyIHtcblxuXHRcdFx0LnRhYiB7XG5cdFx0XHRcdEBpbmNsdWRlIHNldHVwVGFic0ZvcldpZHRoKDEwNjUpO1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0LnRhYkJvZHkge1xuXG5cdFx0XHQudGFiQ29udGVudCB7XG5cblxuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxuXG5cblx0Zm9ybVtuYW1lPVwidXRpbGl0aWVzLW5ldFBlci1mb3JtXCJdLCBmb3JtW25hbWU9XCJ1dGlsaXRpZXMtbmV0aW5mLWZvcm1cIl0sIGZvcm1bbmFtZT1cInV0aWxpdGllcy1uc2xvb2t1cC1mb3JtXCJdLCBmb3JtW25hbWU9XCJ1dGlsaXRpZXMtdHJhY2Vyb3V0ZS1mb3JtXCJdLCBmb3JtW25hbWU9XCJ1dGlsaXRpZXMtcGluZy1mb3JtXCJdIHtcblxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXG5cdFx0LmZvcm1CbG9jayB7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdGRpc3BsYXk6IHRhYmxlO1xuXHRcdH1cblxuXHR9XG5cblx0Zm9ybVtuYW1lPVwidXRpbGl0aWVzLXBpbmctZm9ybVwiXXtcblx0ICBoZWlnaHQ6IDEzMHB4O1xuXHR9XG5cblx0Zm9ybVtuYW1lPVwidXRpbGl0aWVzLW5ldGluZi1mb3JtXCJdIHtcblx0ICAgI3V0aWxpdGllcy1uZXRpbmYtZmllbGRze1xuICAgICAgIGRpdntcbiAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICYuZm9ybUJsb2Nre1xuICAgICAgICAgICAgd2lkdGg6IDM0JTtcblxuICAgICAgICAgICAgJiNwcmV2aW91c1Rlc3RTZWN0aW9uIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IDJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiNzYXZlQXNIdG1sTmV0aW5mIHtcbiAgICAgICAgICAgICAgIHdpZHRoOiAxMiU7XG4gICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogMTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDc1cHg7XG4gICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjbnVtYmVyT2ZQYWNrZXRzLWZpZWxke1xuXG4gICAgICAgICAgICAgICZbc3RhdHVzPVwiZXJyb3JcIl17XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IC0zM3B4O1xuXG4gICAgICAgICAgICAgICAgaW5wdXR7XG4gICAgICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2JkMjAyNSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjYmQyMDI1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgICNudW1iZXJQYWNrZXRze1xuICAgICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgfVxuXG4gICAgICAgICAgICNuZXRpbmZUZXN0e1xuICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICB9XG5cbiAgICAgICB9XG5cblx0ICAgfVxuXHR9XG5cblx0I05ldEluZlRhYkNvbnRlbnR7XG5cdCAgI25ldGluZi1yZXN1bHQtY29udGFpbmVye1xuXG4gICAgICAgLnN0YXR1c3tcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBoM3tcbiAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4O1xuXG4gICAgICAgICAgICAgLnBhc3NlZHtcbiAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW4tdGV4dDtcbiAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAuZmFpbGVke1xuICAgICAgICAgICAgICAgY29sb3I6ICRyZWQtdGV4dDtcbiAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgIH1cblxuICAgICAgLnV0aWxzVGFibGVDb250YWluZXJ7XG4gICAgICAgICAgaGVpZ2h0OiAyMjhweDtcbiAgICAgICAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICAgICAuc2VjdGlvbntcbiAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuXG4gICAgICAgICAgICAmLmxlZnR7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnJpZ2h0e1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0YWJsZS51dGlsc1RhYmxle1xuICAgICAgICAgICAgICB3aWR0aDogNDUwcHg7XG5cbiAgICAgICAgICAgICAgdGJvZHl7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMjVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cdCAgICB9XG5cdCAgfVxuXHR9XG5cblx0I25ldFBlclRhYkNvbnRlbnR7XG4gICAgICAudXRpbHNUYWJsZUNvbnRhaW5lci5wYXN0UmVzdWx0cyB0YWJsZSB0Ym9keXtcbiAgICAgICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICB9XG5cdH1cblxuXHRmb3JtW25hbWU9XCJ1dGlsaXRpZXMtbnNsb29rdXAtZm9ybVwiXSwgZm9ybVtuYW1lPVwidXRpbGl0aWVzLXRyYWNlcm91dGUtZm9ybVwiXSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDQzcHg7XG5cblx0XHQuZm9ybUJsb2NrIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHR9XG5cdH1cblxuXHRmb3JtW25hbWU9XCJ1dGlsaXRpZXMtbnNsb29rdXAtZm9ybVwiXSwgZm9ybVtuYW1lPVwidXRpbGl0aWVzLXRyYWNlcm91dGUtZm9ybVwiXSwgZm9ybVtuYW1lPVwidXRpbGl0aWVzLXBpbmctZm9ybVwiXXtcblx0XHRidXR0b24jdHJhY2Vyb3V0ZVRlc3QsIGJ1dHRvbiNwaW5nVGVzdCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0b3A6IC0xMHB4O1xuXHRcdH1cblxuICAgIC5mb3JtQmxvY2sge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgICYjbnNMb29rdXBIb3N0RmllbGQge1xuICAgICAgICAgIHdpZHRoOiA0NzVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiNuc2xvb2t1cFRlc3QsIGJ1dHRvbiN0cmFjZXJvdXRlVGVzdHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcblx0XHRcdFx0fVxuICAgIH1cblxuXHQjbnNMb29rdXAtZmllbGQtYnV0dG9uIHtcblx0XHQudmFsaWRhdGlvbi1tc2ctd3JhcCB7XG5cdFx0XHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0XHRtYXJnaW4tbGVmdDogNDVweDtcblx0XHR9XG5cdH1cblxuXHQjdHJhY2Vyb3V0ZS1maWVsZC1idXR0b24ge1xuXHRcdC52YWxpZGF0aW9uLW1zZy13cmFwIHtcblx0XHRcdGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdG1hcmdpbi1sZWZ0OiA0NXB4O1xuXHRcdH1cblx0fVxuXG4gICAgI3BpbmctZmllbGQtYnV0dG9uIHtcbiAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgZGl2e1xuICAgICAgICBkaXNwbGF5IDogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMzUwcHg7XG5cbiAgICAgICAgJi5waW5nTnVtYmVyU2VjdGlvbntcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJltzdGF0dXM9XCJlcnJvclwiXXtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogLTE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLnBpbmctYnV0dG9ue1xuICAgICAgICAgIGxpbmUtaGVpZ2h0IDogMzVweDtcbiAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgI251bWJlclBpbmd7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgfVxuXG4gICAgICBidXR0b24jcGluZ1Rlc3R7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgfVxuXG4gICAgfVxuXHR9XG5cblx0LnV0aWxzVGFibGVDb250YWluZXIge1xuXG5cdH1cblxuXHQudXRpbHNUYWJsZSB7XG5cblx0XHR0aGVhZCB7XG5cblx0XHRcdHRoIHtcblx0XHRcdFx0aGVpZ2h0OiA0NXB4O1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdFx0dGJvZHkge1xuXG5cdFx0XHRoZWlnaHQ6IDc0cHg7XG5cblx0XHRcdHRyIHtcblxuXHRcdFx0XHRoZWlnaHQ6IDM3cHg7XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHR9XG5cblx0Lm9sZElFV3JhcHBlciB7XG5cblx0XHRoZWlnaHQ6IDExOXB4O1xuXG5cdFx0LnN0YXRzVGFibGUge1xuXG5cdFx0XHR3aWR0aDogMTA2NXB4O1xuXG5cdFx0fVxuXG5cdH1cblxuICBkaXYjbmV0UGVyVGFiQ29udGVudCwgZGl2I05TTG9va3VwVGFiQ29udGVudCwgZGl2I1RyYWNlUm91dGVUYWJDb250ZW50LCBkaXYjUGluZ1RhYkNvbnRlbnQsIGRpdiNOZXRJbmZUYWJDb250ZW50IHtcbiAgICAgIGhlaWdodDogNDcycHg7XG5cbiAgICAgIGgye1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yNWVtO1xuICAgICAgfVxuICB9XG5cbiAgLnRyYWNlcm91dGUtcmVzdWx0LWNvbnRhaW5lcntcbiAgICBcdGhlaWdodDogMzAwcHg7XG4gICAgXHRvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgfVxuXG5cdC8qIFRBQkxFIENPTFVNTiBXSURUSFMgKi9cblxuXHQkdGFibGUtZGVzaWduLXdpZHRoOiAxMDA0O1xuXG5cdCN1dGlsaXRpZXNUYWJsZS1OZXRQZXJDdXJyZW50VGVzdCxcblx0I3V0aWxpdGllc1RhYmxlLU5ldFBlclByZXZpb3VzVGVzdHMge1xuXG5cdFx0Lypcblx0XHQuY29sVGltZSB7IHdpZHRoOiAoIDI0NCAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9XG5cdFx0LmNvbFR4IHsgd2lkdGg6ICggMTUwIC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH1cblx0XHQuY29sUnggeyB3aWR0aDogKCAxNTAgLyAkdGFibGUtZGVzaWduLXdpZHRoICkgICogMTAwJTsgfVxuXHRcdC5jb2xDUkMgeyB3aWR0aDogKCAxNTAgLyAkdGFibGUtZGVzaWduLXdpZHRoICkgICogMTAwJTsgfVxuXHRcdC5jb2xEcm9wcGVkIHsgd2lkdGg6ICggMTUwIC8gJHRhYmxlLWRlc2lnbi13aWR0aCApICAqIDEwMCU7IH1cblx0XHQuY29sTG9zcyB7IHdpZHRoOiAoIDE1MCAvICR0YWJsZS1kZXNpZ24td2lkdGggKSAgKiAxMDAlOyB9Ki9cblxuXHRcdC8qZGlzcGxheTogbm9uZTsqL1xuXG5cdFx0LmNvbFRpbWUgeyB3aWR0aDogMjY0cHg7IH1cblx0XHQuY29sVHggeyB3aWR0aDogMTYwcHg7IH1cblx0XHQuY29sUnggeyB3aWR0aDogMTYwcHg7IH1cblx0XHQuY29sQ1JDIHsgd2lkdGg6IDE2MHB4OyB9XG5cdFx0LmNvbERyb3BwZWQgeyB3aWR0aDogMTYwcHg7IH1cblxuXHRcdHRoZWFkIHtcblx0XHRcdC5jb2xMb3NzIHsgd2lkdGg6IDE2MHB4OyB9XG5cdFx0fVxuXG5cdFx0dGJvZHkge1xuXHRcdCAgaGVpZ2h0IDogYXV0bztcblx0XHR9XG5cblx0XHQudG90YWx7XG5cdFx0ICBmb250LXdlaWdodDogYm9sZDtcblx0XHR9XG5cblx0fVxuXG5cblx0I3Bob25lTGluZXNDb250YWluZXIge1xuXG5cdFx0bWFyZ2luOiA0MHB4IGF1dG8gMDtcblx0XHRkaXNwbGF5OiB0YWJsZTtcblxuXHRcdC5waG9uZUxpbmUge1xuXG5cdFx0XHR3aWR0aDogMzYwcHg7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXG5cdFx0XHQucGhvbmVMaW5lSGVhZGVyIHtcblxuXHRcdFx0XHRwYWRkaW5nOiAwIDE1cHg7XG5cdFx0XHRcdGhlaWdodDogNDVweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDQ1cHg7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWxpZ2h0LWdyZXk7XG5cdFx0XHRcdGNvbG9yOiAkYmVsbC1kYXJrZ3JleS10ZXh0O1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAwLjg7XG5cblx0XHRcdH1cblxuXHRcdFx0LnBob25lTnVtYmVyIHtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdHdpZHRoOiA2NSU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMS4yO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogNTBweDtcblx0XHRcdFx0Y29sb3I6ICRiZWxsLWRhcmtncmV5LXRleHQ7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblxuXHRcdFx0LnRlc3RMaW5lIGJ1dHRvbntcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdHdpZHRoOiAzNSU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogNTBweDtcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0aGVpZ2h0OiA1M3B4O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkdXRpbGl0aWVzLXRlc3QtYnV0dG9uLWJhY2tncm91bmQ7XG5cblx0XHRcdH1cblxuXHRcdH1cblx0XHQucGhvbmVMaW5lICsgLnBob25lTGluZSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMzVweDtcblx0XHR9XG5cblx0fVxuXG5cblxufVxuXG5ib2R5LmxhbmctZnIgI3V0aWxpdGllc1BhZ2UtVmlldyB7XG4gICAgICAgZm9ybVtuYW1lPVwidXRpbGl0aWVzLW5ldGluZi1mb3JtXCJdIHtcbiAgICAgICAgICAjdXRpbGl0aWVzLW5ldGluZi1maWVsZHN7XG4gICAgICAgICAgICAgIGRpdntcbiAgICAgICAgICAgICAgICAgJi5mb3JtQmxvY2t7XG4gICAgICAgICAgICAgICAgICAgJiNwcmV2aW91c1Rlc3RTZWN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogMnB4O1xuICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICYjc2F2ZUFzSHRtbE5ldGluZiB7XG4gICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0JTtcbiAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQxcHg7XG4gICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG5cdCAgIH1cbiAgICAgICB9XG59XG4iLCJAaW1wb3J0ICcuLi9wYXJ0aWFscy9fbWl4aW5zJztcblxuQG1peGluIGlucHV0LXNpemUoJHdpZHRoKSB7XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sIHNlbGVjdCB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gbWluaS1jaGVja2JveCgpIHtcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdChvbGQpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KG9sZCkgKyBsYWJlbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDIycHg7XG4gICAgYmFja2dyb3VuZDogdXJsKCN7JGFzc2V0UGF0aH0vdWkvbWluaUNoZWNrYm94LW9mZi5wbmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3Qob2xkKTpjaGVja2VkICsgbGFiZWwge1xuICAgIGJhY2tncm91bmQ6IHVybCgjeyRhc3NldFBhdGh9L3VpL21pbmlDaGVja2JveC1vbi5wbmcpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgfVxufVxuXG4vLyBUT0RPOiBNb3ZlIHRvIG93biBmaWxlXG4vLyBUT0RPOiBSZWNvbmNpbGUgY29tbW9uIHBvcnRpb25zIG9mIHRoaXMgKHRoZSBmbGV4IHRhYiBpbXBsZW1lbnRhdGlvbikgYW5kIHRoZSBsZWdhY3kgdGFiIGltcGxlbWVudGF0aW9uLlxuLmZsZXgtdGFiLWNvbnRhaW5lciB7XG4gIC5mbGV4LXRhYi1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuICAgID4gLmZsZXgtdGFiLWJ1dHRvbiB7XG4gICAgICBmbGV4OiAxMDBweCAxIDE7XG4gICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMTIuOHB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDEzNzc4O1xuICAgICAgLmJyYW5kLXZpcmdpbiAmIHtcbiAgICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUVFRUU7XG4gICAgICB9XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6bm90KC5jdXJyZW50KSsudGFiOm5vdCguY3VycmVudCkge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMwMDFkNWE7XG5cbiAgICAgICAgLmJyYW5kLXZpcmdpbiAmIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkN2Q3ZDc7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7XG4gICAgICAgIC5icmFuZC12aXJnaW4gJiB7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0OWE7XG4gICAgICAgIC5icmFuZC12aXJnaW4gJiB7XG4gICAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIC1tb3otb3BhY2l0eTogMC40O1xuICAgICAgICAgIC1raHRtbC1vcGFjaXR5OiAwLjQ7XG4gICAgICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMTQzOTtcbiAgICAgICAgICAuYnJhbmQtdmlyZ2luICYge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgNTlweCAxMHB4O1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmxleC10YWItY29udGVudDpub3QoLmN1cnJlbnQpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuI3dpcmVsZXNzLXNldHRpbmdzIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAud2lyZWxlc3MtcGFuZWwtcm93IHtcbiAgICBmbGV4OiAxO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgfVxuXG4gIC53aXJlbGVzcy1wYW5lbCB7XG4gICAgZmxleDogMCAwIDMzLjMzJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICA+IC53aXJlbGVzcy1wYW5lbC1oZWFkZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgID4gLndpcmVsZXNzLXBhbmVsLWNvbnRlbnQge1xuICAgICAgZmxleDogMTtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgPiAqIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jYXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQGluY2x1ZGUgbWluaS1jaGVja2JveCgpO1xuXG4gICYuYWR2YW5jZWQge1xuICAgIGxhYmVsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBzZWxlY3Qge1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIH1cblxuICAgIC53aXJlbGVzcy1wYW5lbC1jb250ZW50IHtcbiAgICAgID4gKiB7XG4gICAgICAgIG1hcmdpbjogNnB4IDA7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBtYXJnaW46IDZweCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNzaWQge1xuICAgICAgOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXB0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDRweCAwIDhweDtcbiAgICB9XG5cbiAgICAubmV0d29yay1jaGFubmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+ICoge1xuICAgICAgICBmbGV4OiAxIDEgNTAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oYXMtYXV0byB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgID4gc2VsZWN0IHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cblxuICAgICAgPiAuYXV0byB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgICBjb2xvcjogI2NjY2NjYztcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNsaWRlclJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBmbGV4OiAxO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgIH1cblxuICAgIC5zbGlkZXIge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW46IDhweCAyMHB4O1xuICAgIH1cbiAgfVxuXG4gIC52YWxpZGF0aW9uLW1zZy13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgZm9udC1zaXplOiAwLjg1ZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGNvbG9yOiAjYmQyMDI1O1xuICB9XG5cbiAgLm9uT2ZmVG9nZ2xlIHtcbiAgICA+IGlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4jd2lyZWxlc3Mtc2V0dGluZ3MtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuXG4gID4gLmZsZXgtdGFiLWhlYWRlciB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgfVxuXG4gICNwbHVtZS1jb250YWluZXIge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cblxuLndpdGgtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICAvLyBTYWRseSB3ZSBuZWVkIGEgei1pbmRleCBoZXJlIGJlY2F1c2Ugb2YgdGhlIHotaW5kZXggZm9yIC5ub1VpLWJhc2UgKGluIG5vdWlzbGlkZXIuY3NzKVxuICAgIC8vIGFuZCBpdCdzIGJlc3Qgbm90IHRvIHBsYXkgd2l0aCB0aGF0IENTUyB0b28gbXVjaC5cbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgPiAud2l0aC1vdmVybGF5IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4jcGx1bWUtY29udGFpbmVyIHtcbiAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGZsZXg6IDE7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgaDMge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxufVxuXG4jYWR2YW5jZWQtYnV0dG9uLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICNhZHZhbmNlZC1zZXR0aW5ncyB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG59XG5cbi53aXJlbGVzcy1wYW5lbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4OiAwIDAgMzVweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuXG4ud2lyZWxlc3MtcGFuZWwge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gIHBhZGRpbmc6IDAgMTBweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuI2tlZXAtY29tbW9uLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiA1MHB4O1xufVxuXG4vLyAtLS0tIFByZS0yMDIyIC0tLS0+XG5cbiN3aXJlbGVzc1NldHRpbmdzUGFuZWxzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5tYWluTWFzdGVyT3ZlcmxheSwgLndpZmlOZXR3b3JrQ29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlZC1jb250YWluZXIoKTtcbiAgfVxuXG4gIC5tb2RhbEhlYWRlciB7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgI3dpcmVsZXNzU2V0dGluZ3NIZWFkZXIge1xuICAgIG1hcmdpbjogLTEwcHggMCAxMHB4IDA7XG4gICAgYm9yZGVyLWJvdHRvbTpzb2xpZCAkYmVsbC1saWdodC1ncmV5IDFweDtcblxuICAgIHAge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxuXG5cblxuICAud2lmaU5ldHdvcmtDb250YWluZXIgIHtcbiAgICBoMy5wYW5lbFRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAucGFuZWxIZWFkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjcHJpbWFyeVdpcmVsZXNzU2V0dGluZ3Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cbiAgICAjbWFzdGVyVG9nZ2xlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG5cbiAgICAucGFuZWxTZWN0aW9uQ29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAjZ3Vlc3RXaXJlbGVzc1NldHRpbmdzIHtcbiAgICAubW9kYWxIZWFkZXIgaDIge1xuICAgICAgLy8gRW5zdXJlIHRpdGxlIGNhbiB3cmFwIChmb3IgRnJlbmNoIGxhbmd1YWdlKSBhbmQgd2lsbCBsZWF2ZSBzcGFjZSBmb3IgdGhlIG9uL29mZiB0b2dnbGVcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1yaWdodDogODBweCArIDEwcHg7XG4gICAgfVxuXG4gICAgaDMucGFuZWxUaXRsZSB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnBhbmVsU2VjdGlvbkNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSGFkIHRvIG1vdmUgdGhlIHR3b19mcmVxdWVuY2llcyBjbGFzcyB1cCB0byB0aGUgcGFuZWxzLCBzbyB0aGF0IGl0IGNvdWxkIGJlIHVzZWQgdG8gc3R5bGUgdGhlIHBsdW1lIHNlY3Rpb24gb2ZcbiAgICogdGhlIGZvcm0uIElkZWFsbHkgd291bGQgaGF2ZSBtb3ZlZCBpdCB1cCB0byB0aGUgZm9ybSBpdHNlbGYgKGxpa2UgcGx1bWVTdXBwb3J0ZWQgYW5kIHBsdW1lRW5hYmxlZCksIGJ1dCB0aGlzXG4gICAqIHdvdWxkIGhhdmUgYnJva2VuIHRoZSBhZHZhbmNlZCBzZXR0aW5ncyBmb3JtLlxuICAgKi9cbiAgJi50d29fZnJlcXVlbmNpZXMge1xuICAgIC53aWZpTmV0d29ya0NvbnRhaW5lciAge1xuICAgICAgLnBhbmVsSGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5wYW5lbENvbnRlbnQgLmNvbENvbnRlbnRDb250YWluZXIge1xuICAgICAgLy8gUmVkdWNlIHRoZSBwYWRkaW5nIGJldHdlZW4gdGhlIGhlYWRpbmdzIGFuZCB0aGUgZm9ybSBhcyBpdCBkb2Vzbid0IGxvb2sgcXVpdGUgcmlnaHRcbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgfVxuXG4gICAgI3ByaW1hcnlXaXJlbGVzc1NldHRpbmdzIHtcbiAgICAgIG1pbi13aWR0aDogNjYlO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgLnBhbmVsU2VjdGlvbkNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA0OSU7XG5cbiAgICAgICAgJltkYXRhLWZyZXF1ZW5jeT1cIjJcIl0ge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE5cHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgI2d1ZXN0V2lyZWxlc3NTZXR0aW5ncyB7XG4gICAgICBtYXgtd2lkdGg6IDMxJTtcbiAgICB9XG4gIH1cblxuXG4gIC5zZWN1cml0eVR5cGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAjZ3Vlc3RXaXJlbGVzc1NldHRpbmdzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNDglO1xuXG4gICAgI2d1ZXN0VG9nZ2xlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gICN3aXJlbGVzc01hc3Rlck92ZXJsYXkge1xuICAgIGhlaWdodDogMzM5cHg7XG4gICAgcGFkZGluZy10b3A6IDVweDtcbiAgfVxuXG4gIC5tb2RhbEhlYWRlciB7XG4gICAgaDIge1xuICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgfVxuICB9XG5cbiAgLmJyb2FkY2FzdC1zc2lkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnBhbmVsQ29udGVudCB7XG5cbiAgICBsYWJlbCB7XG4gICAgICBsaW5lLWhlaWdodDogMy4wNjI1ZW07XG5cbiAgICAgICYuY3VzdG9tTG9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgYnV0dG9uLnRvZ2dsZUFkdmFuY2VkIHtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYWR2YW5jZWRTZXR0aW5nc0Zvcm0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmW2xldmVsPVwiYWR2YW5jZWRcIl0ge1xuXG4gICAgICBidXR0b24udG9nZ2xlQWR2YW5jZWQgc3Bhbi5oaWRlQWR2YW5jZWQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB9XG5cbiAgICAgIC5hZHZhbmNlZFNldHRpbmdzRm9ybSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgfVxuICAgICZbbGV2ZWw9XCJiYXNpY1wiXSB7XG5cbiAgICAgIGJ1dHRvbi50b2dnbGVBZHZhbmNlZCBzcGFuLnNob3dBZHZhbmNlZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQGluY2x1ZGUgaW5wdXQtc2l6ZSgyNjBweCk7XG59XG5cbi8qKlxuICogTm90ZSB0aGF0IHRoZSBwbHVtZVN1cHBvcnRlZCBhbmQgcGx1bWVFbmFibGVkIGNsYXNzZXMgYXJlIGFzc2lnbmVkIHRvIHRoZSBmb3JtLCBiZWNhdXNlIHRoZXkgYWZmZWN0IG1vcmUgdGhhbiBqdXN0XG4gKiB0aGUgcGFuZWxzOyBmb3IgdGhpcyByZWFzb24gdGhleSBkb24ndCByZWFsbHkgZml0IGluIHRoZSBwYW5lbCBibG9jay5cbiAqL1xuLnBsdW1lU3VwcG9ydGVkIHtcbiAgI3dpcmVsZXNzU2V0dGluZ3NQYW5lbHMge1xuICAgIC8qKlxuICAgICAqIE92ZXJyaWRlIGhlYWRlciBoZWlnaHQgdG8gYWNjb21tb2RhdGUgdGhlIHBsdW1lIHRvZ2dsZS4gSWRlYWxseSB3ZSB3b3VsZG4ndCBldmVuIGhhdmUgYSBmaXhlZCBoZWlnaHQgaGVhZGVyLlxuICAgICAqL1xuICAgICN3aXJlbGVzc1NldHRpbmdzSGVhZGVyIHtcbiAgICAgIGhlaWdodDogOTVweDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGcmVuY2ggdGV4dCB3cmFwcyB3aGVuIHdlIG9ubHkgaGF2ZSA1MCUgb2YgdGhlIHNjcmVlbiwgbmVlZCB0byBhZGp1c3QgdGhlIGhlYWRlci5cbiAgICAgKi9cbiAgICAubGFuZy1mciAmOm5vdCgudHdvX2ZyZXF1ZW5jaWVzKSAjd2lyZWxlc3NTZXR0aW5nc0hlYWRlciB7XG4gICAgICBoZWlnaHQ6IDExNXB4O1xuICAgIH1cbiAgfVxufVxuXG4jcGx1bWVDb250YWluZXIge1xuICAvLyBUT0RPOiBWaXJnaW4gQ1NTIHVwZGF0ZXMgbWF5IGV4cGVjdCBhIGRpZmZlcmVudCB2YXJpYWJsZSBoZXJlLCBhbmQgYWRkIGEgYm9yZGVyIHRoaWNrbmVzcyB2YXJpYWJsZSAqL1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgLyoqXG4gICAqIEFkanVzdCB0aGUgaGVhZGluZyB0byBicmluZyB0aGUgZGVzY3JpcHRpb24gdGV4dCBpbiB0aWdodGVyIHJlcXVpcmluZyBsZXNzIHZlcnRpY2FsIHNwYWNlLlxuICAgKi9cbiAgaDMge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxufVxuXG5cbi5wbHVtZUVuYWJsZWQge1xuICAvKipcbiAgICogVXNlZCB0byBpZGVudGlmeSBlbGVtZW50cyB3aGljaCBkaXNhcHBlYXIgd2hlbiBwbHVtZSBpcyBlbmFibGVkLlxuICAgKi9cbiAgLmhpZGVXaGVuUGx1bWVFbmFibGVkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbiNhZHZhbmNlZFNldHRpbmdzUGFuZWxzIHtcbiAgQG1peGluIG15LWZsZXgtY29sdW1uKCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICBAbWl4aW4gbXktZmxleC1yb3coKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuXG4gICRjb2x1bW5Jbm5lck1hcmdpbjogMTBweDtcbiAgJG1hcmdpbkJvdHRvbU1ham9yOiA2cHg7XG4gICRtYXJnaW5Cb3R0b21NaW5vcjogNnB4O1xuICAkbWFyZ2luQm90dG9tVHJpdmlhbDogNXB4O1xuICAvLyBUT0RPOiBUaGUgbW9kYWwgZGlhbG9ncyBzaG91bGQgYmUgZWFzaWVyIHRvIHRhaWxvciBjb250ZW50IHRvIGZpdCBpbnNpZGVcbiAgJG1vZGFsSGVhZGVySGVpZ2h0QXBwcm94OiA0NHB4ICsgMTVweCArIDNweCArIDFweDtcbiAgJG1vZGFsUGFkZGluZ0hlaWdodEFwcHJveDogNDBweCAqIDI7XG4gICRtb2RhbEJ1dHRvblJvd0hlaWdodEFwcHJveDogMzJweDtcbiAgJG1vZGFsQnV0dG9uVG9wTWFyZ2luOiAyMHB4O1xuICAkbWFyZ2luQWRqdXN0OiAwO1xuXG4gIGhlaWdodDogJGRlc2lnbk1vZGFsSGVpZ2h0IC0gJG1vZGFsSGVhZGVySGVpZ2h0QXBwcm94IC0gJG1vZGFsUGFkZGluZ0hlaWdodEFwcHJveCAtJG1vZGFsQnV0dG9uUm93SGVpZ2h0QXBwcm94IC0gJG1vZGFsQnV0dG9uVG9wTWFyZ2luICsgJG1hcmdpbkFkanVzdDtcbiAgQGluY2x1ZGUgbXktZmxleC1yb3coKTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG1hcmdpbjogLSRtYXJnaW5BZGp1c3Q7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgPiAqIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb2x1bW5Jbm5lck1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJGNvbHVtbklubmVyTWFyZ2luO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgfVxuXG4gID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICB9XG5cbiAgPiAjcHJpbWFyeVdpcmVsZXNzU2V0dGluZ3Mge1xuICAgIGZsZXg6IDEgMSA2NiU7XG4gIH1cblxuICA+ICNndWVzdFdpcmVsZXNzU2V0dGluZ3Mge1xuICAgIGZsZXg6IDEgMSAzMyU7XG4gIH1cblxuICAuZm9ybUJsb2NrIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAqIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBsYWJlbCB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWluaS1jaGVja2JveCgpO1xuXG4gIC5vbk9mZlRvZ2dsZSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIEBpbmNsdWRlIGRpc2FibGVkLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLm1vZGFsSGVhZGVyLCAucGFuZWxIZWFkZXIge1xuICAgIEBpbmNsdWRlIG15LWZsZXgtcm93KCk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luQm90dG9tTWFqb3I7XG5cbiAgICBoMiwgaDMge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAubW9kYWxIZWFkZXIge1xuICAgIGhlaWdodDogNDBweDtcbiAgfVxuXG4gIC5wYW5lbEhlYWRlciB7XG4gICAgLy8gTmVlZHMgdG8gYmUgc3VmZmljaWVudCBmb3IgYSB0b2dnbGUgKH4yN3B4KVxuICAgIGhlaWdodDogMzBweDtcbiAgfVxuXG4gICNwcmltYXJ5V2lyZWxlc3NTZXR0aW5ncywgI2d1ZXN0V2lyZWxlc3NTZXR0aW5ncyB7XG4gICAgQGluY2x1ZGUgbXktZmxleC1jb2x1bW4oKTtcblxuICAgID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLm1vZGFsSGVhZGVyID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICAgIH1cbiAgfVxuXG4gICNwcmltYXJ5U2V0dGluZ3NQYW5lbHMge1xuICAgIEBpbmNsdWRlIG15LWZsZXgtcm93KCk7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICA+ICoge1xuICAgICAgZmxleDogMSAxIDUwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogJGNvbHVtbklubmVyTWFyZ2luO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjb2x1bW5Jbm5lck1hcmdpbjtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJlbGwtbGlnaHQtZ3JleTtcbiAgICB9XG5cbiAgICA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucGFuZWxTZWN0aW9uQ29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBteS1mbGV4LWNvbHVtbigpO1xuXG4gICAgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICB9XG5cbiAgICAucGFuZWxDb250ZW50V3JhcHBlciB7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAucGFuZWxDb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgZGlzYWJsZWQtY29udGFpbmVyLXdpdGgtemluZGV4KDIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtQmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbkJvdHRvbU1pbm9yO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICA+ICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luQm90dG9tVHJpdmlhbDtcbiAgICAgIH1cblxuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxM3B4O1xuICAgICAgfVxuXG4gICAgICAmLmJyb2FkY2FzdFNTSUQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXB0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnJhZGlvRHJvcGRvd25zIHtcbiAgICAgIEBpbmNsdWRlIG15LWZsZXgtcm93KCk7XG5cbiAgICAgID4gKiB7XG4gICAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICB9XG5cbiAgICAgIGlucHV0LCBzZWxlY3Qge1xuICAgICAgICAmW2RhdGEtcHJvcGVydHk9XCJuZXR3b3JrQ2hhbm5lbFwiXSB7XG4gICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICZbZGF0YS1wcm9wZXJ0eT1cIm5ldHdvcmtDaGFubmVsQmFuZHdpZHRoXCJdIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYXV0b1ZhbHVlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlcldyYXBwZXIge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBAaW5jbHVkZSBteS1mbGV4LXJvdygpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgPiAqIHtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgLnNsaWRlclZhbHVlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmV0d29yay1zZXR0aW5ncyB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZWQtY29udGFpbmVyKCk7XG4gIH1cblxuICAuZGlzYWJsZWQgLm5ldHdvcmstc2V0dGluZ3MuZGlzYWJsZWQ6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIG9wYWNpdHkoMCwgMCk7XG4gIH1cblxuICAmLm9uZS1mcmVxdWVuY3kge1xuICAgICNrZWVwQ29tbW9uT3B0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICM1LTBfMUdIelNldHRpbmdzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICA+ICNwcmltYXJ5V2lyZWxlc3NTZXR0aW5ncyB7XG4gICAgICBmbGV4OiAxIDEgNTAlO1xuICAgIH1cblxuICAgID4gI2d1ZXN0V2lyZWxlc3NTZXR0aW5ncyB7XG4gICAgICBmbGV4OiAxIDEgNTAlO1xuICAgIH1cbiAgfVxufVxuXG4jd2lyZWxlc3NTZXR0aW5nc1JlZGlyZWN0QnV0dG9ucyB7XG4gIGNsZWFyOiBib3RoO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDEwOHB4O1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCJAaW1wb3J0ICcuL19vdGhlckNTUzNNaXhpbnMnO1xuXG5AbWl4aW4gZGlzYWJsZWQtY29udGFpbmVyKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICYuZGlzYWJsZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNTAsIDUwKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZGlzYWJsZWQgJi5kaXNhYmxlZDphZnRlciB7XG4gICAgLy8gTk9URTogVGhpcyBvbmx5IHdvcmtzIHdoZXJlIHRoZSBmaXJzdCBkaXNhYmxlZCBzZWxlY3RvciBmYWxscyBvdXRzaWRlIHRoZSBzZWxlY3RvciBpZGVudGlmaWVkIGJ5ICYuIElmIHRoZSBmaXJzdFxuICAgIC8vIGRpc2FibGVkIHNlbGVjdG9yIG11c3QgZmFsbCBpbiBiZXR3ZWVuLCB0aGVuIGEgY3VzdG9tIHNlbGVjdG9yIHdpbGwgbmVlZCB0byBiZSBjcmVhdGVkIHRvIHByZXZlbnQgdGhlIGRvdWJsZVxuICAgIC8vIG92ZXJsYXkuXG4gICAgQGluY2x1ZGUgb3BhY2l0eSgwLCAwKTtcbiAgfVxufVxuXG5AbWl4aW4gZGlzYWJsZWQtY29udGFpbmVyLXdpdGgtemluZGV4KCR6aW5kZXgpIHtcbiAgQGluY2x1ZGUgZGlzYWJsZWQtY29udGFpbmVyKCk7XG4gICYuZGlzYWJsZWQ6YWZ0ZXIge1xuICAgIHotaW5kZXg6ICR6aW5kZXg7XG4gIH1cbn0iLCIuYnJhbmQtYmVsbGFsaWFudCB7XG4gICAgI1Jlc2V0cy1TZXR0aW5nc3tcbiAgICAgIC5yZXNldFNldHRpbmdze1xuICAgICAgICAuY29sdW1uLmhhbGZDb2w6bm90KC5zdWJDb2x1bW4pe1xuICAgICAgICAgIC5yZXNldFRleHQge1xuICAgICAgICAgICAgICAucmVkV2FybmluZ0ljb24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gIH1cbn1cblxuZGl2I2FkdmFuY2VkVG9vbHMtVmlldyB7XG4gICBcbiAgIHBhZGRpbmc6IDAgNDBweDtcbiAgXG4gICBkaXYuaW50cm8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgXG4gICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6ICRiZWxsLW1vZGFsLWhlYWRlci1kYXJrO1xuICAgICAgIH1cbiAgIH1cbiAgIFxuICAgLmNvbHVtbi5xdWFydGVyQ29sIHtcbiAgICAgIHdpZHRoOiAyMiU7XG4gICAgICBcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKXtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuICAgICAgfVxuICAgXG4gICAgICAgdWwubmF2TGlzdCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZWxsLWxpZ2h0LWdyZXk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCA1cHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmVsbC1kYXJrZ3JleS10ZXh0OyAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnI3skYXNzZXRQYXRofS91aS90cmFuc2ZlckFycm93Qmx1ZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAub25PZmZUb2dnbGUge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHggKyAoJG9uT2ZmVG9nZ2xlLWRlbHRhLWhlaWdodCAvIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgIH1cbiAgICB9XG59XG4jUmVzZXRzLVNldHRpbmdze1xuICBcbiAgLnJlc2V0U2V0dGluZ3N7XG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICBcbiAgICAgIC5hY3Rpb24ge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgd2lkdGg6IDE0NXB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAuc3ViQ29sdW1uIHtcbiAgICAgICAgaGVpZ2h0OiA5MnB4O1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuY29sdW1uLmhhbGZDb2w6bm90KC5zdWJDb2x1bW4pe1xuICAgICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgICBcbiAgICAgICAgICAucmVzZXRUZXh0IHtcbiAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAucmVkV2FybmluZ0ljb24ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRhc3NldFBhdGh9L3VpL3JlZF9pbmZvLnBuZ1wiKTtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAkcmVzZXQtcmVkLXdhcm5pbmctaWNvbi1tYXJnaW4tdG9wO1xuICAgICAgICAgICAgICB3aWR0aDogMzdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgJjpub3QoLm5vdGUpe1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgJi5ub3RlIHtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9ICAgICAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDE0NXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgJiNyZXNldFNldHRpbmdze1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxODRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTI0cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICYjZmFjdG9yeVJlc2V0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTY1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmJyYW5kLXZpcmdpbiAmIGJ1dHRvbiNyZXNldFNldHRpbmdze1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMTFweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTQzcHg7XG4gICAgICAgICAgICB9XG4gICAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uL3BhcnRpYWxzL19taXhpbnMuc2Nzcyc7XG5cbkBtaXhpbiBzc2gtZm9ybS1mbGV4LWNvbnRhaW5lcigpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNNb25pdG9yaW5nLVZpZXcge1xuXG4gIC50YWJsZUNvbnRhaW5lci5kaWFnbm9zdGljc1RhYmxlQ29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgaGVpZ2h0OiA0NzBweDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICB9XG5cbiAgI2FsaWduZWQtcmVzdWx0c3tcbiAgICAuc2VjdGlvbntcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAmLm1lbW9yeXtcbiAgICAgICAgd2lkdGg6IDM3MHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cbiAgICAgICAgLmxlZnR7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2UxZTFlMTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWVtb3J5LWlubmVyLXJlc3VsdHtcbiAgICAgICAgICAgIHA6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuXG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICAmLmF2ZXJhZ2Uge1xuICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgICB9XG5cbiAgICAgICYucmVtb3RlLW1hbmFnZW1lbnR7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaGVpZ2h0OiAxNzBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG5cbiAgJHNlY3Rpb25XaWR0aCA6IDEwMDBweDtcblxuICAuc2VjdGlvbntcbiAgICBoZWlnaHQ6IDE2MHB4O1xuXG4gICAgbGFiZWx7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIHAsIGxhYmVse1xuICAgICAgY29sb3I6ICRiZWxsLW1vZGFsLWhlYWRlci1kYXJrO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLWhlYWRlcntcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgfVxuXG4gICAgLmJvZHkge1xuICAgICAgLmxlZnR7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuXG4gICAgICAubGVmdDpsYXN0LWNoaWxkIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHB7XG4gICAgICAgIHBhZGRpbmc6IDAgM3B4O1xuICAgICAgfVxuXG4gICAgICAuc3VidGl0bGV7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuXG4gICAgICAjcmVtb3RlTWFuYWdlbWVudFN1YnRpdGxle1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1lbW9yeSwgJi5hdmVyYWdlLCAmLmNyYXNoLWhpc3Rvcnkge1xuICAgICAgcDpmaXJzdC1jaGlsZHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGxhYmVse1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuY3B1e1xuICAgICAgd2lkdGg6ICRzZWN0aW9uV2lkdGg7XG4gICAgICBoZWlnaHQ6IDEyMHB4O1xuXG4gICAgICAuY3B1LXNlY3Rpb24ge1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICAgICAgd2lkdGg6IDc1MHB4O1xuXG4gICAgICAgIGRpdiwgbGFiZWx7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICRwcm9ncmVzc0hlaWdodCA6IDIycHg7XG5cbiAgICAgIC5jcHUtcHJvZ3Jlc3N7XG4gICAgICAgIGhlaWdodDogJHByb2dyZXNzSGVpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmVsbC1saWdodC1ncmV5IHJlcGVhdCBzY3JvbGwgMCAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogLTVweDtcbiAgICAgICAgd2lkdGg6IDU4NXB4O1xuXG4gICAgICAgIC5jcHUtY3VycmVudC1wcm9ncmVzc3tcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCkgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJGNwdS1jdXJyZW50LXByb2dyZXNzLWJhY2tncm91bmQgMCUsICRjcHUtY3VycmVudC1wcm9ncmVzcy1iYWNrZ3JvdW5kIDEwMCUsICRjcHUtY3VycmVudC1wcm9ncmVzcy1iYWNrZ3JvdW5kIDEwMCUpIHJlcGVhdCBzY3JvbGwgMCAwO1xuICAgICAgICAgIGhlaWdodDogJHByb2dyZXNzSGVpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAjbW9uaXRvcmluZ0J1dHRvbkNvbnRhaW5lcntcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICAgIHdpZHRoOiAyMzVweDtcblxuICAgICNzdGFydE1vbml0b3Jpbmd7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgd2lkdGg6IDE3NXB4O1xuICAgIH1cblxuICAgIC8qIEJFTExTQklHLTI2NjYgLSBTcGVjaWZpYyBNb3ppbGxhIEZpcmVmb3ggb3ZlcnJpZGUgYmVjYXVzZSBvZiBsZXR0ZXIga2VybmluZyBhbmQgZm9udCByZW5kZXJpbmcgZGlmZmVyZW5jZXMgKi9cbiAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDE5NXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJyYW5kLXZpcmdpbiAmIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAyMjBweDtcbiAgICB9XG4gIH1cblxuICAjbW9uaXRvcmluZy1wcm9jZXNzLXRhYmxle1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgJHNlY3Rpb25IZWlnaHQgOiAzMDBweDtcblxuICAgIC5zZWN0aW9ue1xuICAgICAgaGVpZ2h0OiAkc2VjdGlvbkhlaWdodDtcbiAgICAgIHdpZHRoOiAkc2VjdGlvbldpZHRoO1xuXG4gICAgICAuYm9keXtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuXG4gICAgICAgIC5wcm9jZXNzTmFtZXtcbiAgICAgICAgICB3aWR0aDogMzc4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvY2Vzc0lke1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9jZXNzU2l6ZSwgLnByb2Nlc3NDUFUsIC5wcm9jZXNzUHJpb3JpdHl7XG4gICAgICAgICAgd2lkdGg6IDEyMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2Nlc3NTdGF0ZSB7XG4gICAgICAgICAgd2lkdGg6IDE1NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgdGFibGUgdGJvZHl7XG4gICAgICAgICAgaGVpZ2h0OiAkc2VjdGlvbkhlaWdodCAtIDEwMDtcblxuICAgICAgICAgIHRkLnByb2Nlc3NTdGF0ZSB7XG4gICAgICAgICAgICB3aWR0aDogMTM2cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNtb25pdG9yaW5nLWNyYXNoLWhpc3Rvcnl7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIC5zZWN0aW9uLmNyYXNoLWhpc3Rvcnl7XG4gICAgICB3aWR0aDogJHNlY3Rpb25XaWR0aDtcbiAgICB9XG5cbiAgfVxuXG4gICNtb25pdG9yaW5nLXNzaC1lbmFibGVtZW50e1xuICAgIHAge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgXG4gICAgI2VuYWJsZS1zc2gge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgICAgJiA+ICoge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zc2hGb3JtUm93IHtcbiAgICAgIEBpbmNsdWRlIHNzaC1mb3JtLWZsZXgtY29udGFpbmVyKCk7XG4gICAgICBcbiAgICAgID4gKiB7XG4gICAgICAgIGZsZXg6IDUwJSAxIDE7XG4gICAgICAgIEBpbmNsdWRlIHNzaC1mb3JtLWZsZXgtY29udGFpbmVyKCk7XG4gICAgICB9XG5cbiAgICAgICNzc2hDb25maXJtQmxvY2sge1xuICAgICAgfVxuXG4gICAgICAjc3NoRW5hYmxlZEJsb2NrIHtcbiAgICAgICAgQGluY2x1ZGUgZGlzYWJsZWQtY29udGFpbmVyKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgI2NvbmZpcm1LZXlTdGF0dXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJyN7JGFzc2V0UGF0aH0vdWkvY2hlY2ttYXJrX21lZC5wbmcnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgXG4gICAgICAmLnZpc2libGUge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgIC8vIFVuZG8gLnNlY3Rpb24gb3ZlcnJpZGVcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxufSIsIiNtb2RlbVByZWZlcmVjZXMtVmlldyB7XG5cbiAgIHBhZGRpbmc6IDAgMjBweDtcbiAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgaGVpZ2h0OiA1NDVweDtcbiAgIG92ZXJmbG94LXg6IGF1dG87XG5cbiAgIC5jb2x1bW4uaGFsZkNvbCB7XG4gICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgIGhlaWdodDogNTMwcHg7XG4gICB9XG5cbiAgIC5jb2x1bW4uaGFsZkNvbDpudGgtY2hpbGQoMSkge1xuICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgfVxuXG4gICAuY29sdW1uLmhhbGZDb2w6bnRoLWNoaWxkKDIpIHtcbiAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgfVxuXG4gICAgcC5oaW50LCAubm90aWZpY2F0aW9uU2VjdGlvbiBwIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIGZvcm17XG4gICAgICBcbiAgICAgIGxhYmVse1xuICAgICAgICB3aWR0aDogMjIwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgICNlbWFpbEFuZFNNU0Zvcm0ge1xuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICB3aWR0aDogMjIzcHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5leHRyYUluZm9ybWF0aW9uIHtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSAqIDAuNjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1ZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgI2FkbWluQ3JlZGVudGlhbHN7XG4gICAgICBsYWJlbHtcbiAgICAgICAgd2lkdGg6IDE4NXB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl17XG4gICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgI2FkbWluQ3JlZGVudGlhbHMsICNwYXNzd29yZFJlY292ZXJ5e1xuICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgIFxuICAgICNwYXNzd29yZFJlY292ZXJ5IHtcbiAgICAgIGhlaWdodDogMjgycHg7XG5cbiAgICAgICAgLmNvbENvbnRlbnRDb250YWluZXIge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgXG4gICAgICAgICAgLm5vdGlmaWNhdGlvblNlY3Rpb24ge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjhlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLm9uT2ZmVG9nZ2xlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHggKyAoJG9uT2ZmVG9nZ2xlLWRlbHRhLWhlaWdodCAvIDIpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICAudG9wQm9yZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAjdGltZVpvbmV7IFxuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIC5mb3JtQmxvY2t7XG4gICAgICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM0cHg7XG4gICAgICB9XG5cbiAgICAgICNjdXJyZW50VGltZVpvbmV7XG4gICAgICAgIHdpZHRoOiAxODlweDtcbiAgICAgIH1cbiAgICB9XG4gICAgI2xlZCB7XG4gICAgICBcbiAgICAgIC5jb2xDb250ZW50Q29udGFpbmVyIHtcbiAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4O1xuICAgICAgXG4gICAgICAgIC5mb3JtQmxvY2sge1xuICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgd2lkdGg6IDI2MHB4O1xuICAgICAgICAgICBcbiAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICB3aWR0aDogMTA1cHg7XG4gICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnRvcEJvcmRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmVsbC1saWdodC1ncmV5O1xuICAgICAgfVxuICAgIH1cblxufVxuIiwiI1dBTi1TZXR0aW5nc3tcbiAgICBwLndhcm5pbmctdGV4dHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTFlMWUxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgY29sb3I6ICR3YXJuaW5nVGV4dDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm1DZW50ZXJ7XG4gICAgICBtYXJnaW46IDE2NXB4IGF1dG87XG4gICAgICB3aWR0aDogNDgzcHg7XG4gICAgICBcbiAgICAgIC5oaW50e1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICogMC44O1xuICAgICAgICBsaW5lLWhlaWdodDogNC4wNjI1ZW07XG4gICAgICAgIGNvbG9yOiAjOWI5YjliO1xuICAgICAgfVxuICAgICAgXG4gICAgICAjd2FuTW9kZSB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIH1cbiAgfVxufSIsIlxuYm9keXtcdFxuICAmLnNwbGFzaCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNwbGFzaC1iYWNrZ3JvdW5kO1xuXG4gICAgLnNwbGFzaFBhZ2UgeyBcbiAgICAgIGRpc3BsYXkgOiB0YWJsZTsgIFxuICAgIH1cbiAgICBcbiAgICAucGFnZSB7XG4gICAgICBkaXNwbGF5IDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG5odG1sLnVhLWRlc2t0b3AgYm9keS5zcGxhc2gge1xuICAuc3BsYXNoUGFnZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyBcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICNzcGxhc2gtcGFnZS1pbm5lci1pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOjUwMHB4O1xuICB9XG59XG5cbmh0bWwudWEtbW9iaWxlIGJvZHkuc3BsYXNoe1xuICAuc3BsYXNoUGFnZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyBcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICNzcGxhc2gtcGFnZS1pbm5lci1pbm5lci1jb250YWluZXJ7XG4gICAgd2lkdGg6NTAlO1xuICB9XG59XG5cblx0XG4vKiAqKioqIFBBR0UgU1BFQ0lGSUMgU1RZTEVTICoqKiogKi9cbi5zcGxhc2hQYWdle1xuXHQvKiBUaGVzZSAzIGxpbmVzIGNlbnRlciB0aGUgaW5uZXIgaW5uZXIgY29udGFpbmVyIHZlcnRpY2FsbHkgaW4gdGhlIHZpZXdwb3J0ICovXG5cdGRpc3BsYXk6IHRhYmxlOyBwb3NpdGlvbjogYWJzb2x1dGU7IFxuXHQjc3BsYXNoLXBhZ2UtaW5uZXItY29udGFpbmVyeyBkaXNwbGF5OiB0YWJsZS1jZWxsOyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlIH1cblx0I3NwbGFzaC1wYWdlLWlubmVyLWlubmVyLWNvbnRhaW5lcnsgIG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuXHQjbW9kZW0taWNvbntcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJyN7JGFzc2V0UGF0aH0vbW9kZW0taWNvbi1zcGxhc2gucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcblx0XHRoZWlnaHQ6ICRzcGxhc2gtbW9kZW0taWNvbi1oZWlnaHQ7XG5cdH1cblx0I21vZGVtLW5hbWUsIC5lcnJvci1tZXNzYWdle1xuXHRcdGZvbnQtd2VpZ2h0Om5vcm1hbDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuXHRcdGNvbG9yOndoaXRlO1xuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFxuXHRcdG1hcmdpbjoyMHB4IGF1dG87XG5cdH1cblx0XG5cdC5hY3Rpdml0eS1pbmRpY2F0b3J7XG5cdFx0YmFja2dyb3VuZDogdXJsKCcjeyRhc3NldFBhdGh9L2luaXQtYWN0aXZpdHktaW5kaWNhdG9yLmdpZicpIG5vLXJlcGVhdDtcblx0XHR3aWR0aDozMnB4O1xuXHRcdGhlaWdodDozMnB4O1xuXHRcdG1hcmdpbjozMHB4IGF1dG87XG5cdH1cblx0I2JlbGwtbG9nb3tcblx0XHR3aWR0aDogJHNwbGFzaC1kZWZhdWx0LWxvZ28td2lkdGg7XG5cdFx0aGVpZ2h0OiAkc3BsYXNoLWRlZmF1bHQtbG9nby1oZWlnaHQ7XG5cdFx0bWFyZ2luOjEzMHB4IGF1dG8gMCBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc3BsYXNoLWRlZmF1bHQtbG9nby1iYWNrZ3JvdW5kO1xuXHR9XG59XG5cbmh0bWwuYnJhbmQtdmlyZ2lue1xuICAjYmVsbC1sb2dve1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS92aXJnaW5fbG9nby5wbmcnKSBuby1yZXBlYXQ7XG4gICAgd2lkdGg6ICRzcGxhc2gtZGVmYXVsdC1sb2dvLXdpZHRoO1xuICAgIGhlaWdodDogJHNwbGFzaC1kZWZhdWx0LWxvZ28taGVpZ2h0O1xuICB9XG4gICN2aXJnaW4taGg0ayB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRhc3NldFBhdGh9L21vZGVtLWljb24tc3BsYXNoLWhoNGsucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICBoZWlnaHQ6ICRzcGxhc2gtbW9kZW0taWNvbi1oZWlnaHQ7XG4gIH1cbiAgI3Zpcmdpbi11Ymlne1xuICAgIGJhY2tncm91bmQ6IHVybCgnI3skYXNzZXRQYXRofS9tb2RlbS1pY29uLXNwbGFzaC11YmlnLnBuZycpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgaGVpZ2h0OiAkc3BsYXNoLW1vZGVtLWljb24taGVpZ2h0O1xuICB9XG4gICN2aXJnaW4tc2JpZyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcjeyRhc3NldFBhdGh9L21vZGVtLWljb24tc3BsYXNoLXNiaWcucG5nJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICBoZWlnaHQ6ICRzcGxhc2gtbW9kZW0taWNvbi1oZWlnaHQ7XG4gIH1cbn1cblxuXG4jaW5pdC1sb2cge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGJsYWNrO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbGVmdDogMzJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDMycHg7XG4gICAgdG9wOiAzMnB4O1xuICAgIHotaW5kZXg6ICRjb21wb25lbnRCYXNlUHJpb3JpdHkgKiAkY29tcG9uZW50Rmlyc3RQcmlvcml0eTtcbiAgICBcbiAgICBkaXYuaGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBwYWRkaW5nOiAwIDhweDtcbiAgICAgIFxuICAgICAgc3Bhbi5jbG9zZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICB9XG4gICAgICBcbiAgICB9XG4gICAgXG4gICAgZGl2LmNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICBcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jbW9kZW0tbmFtZSAuaGlkZGVue1xuICB2aXNpYmlsaXR5OmhpZGRlbjtcbn1cblxuXG5cbiIsIi8qICoqKiBPVkVSUklERVMgKioqICovXG5cbi5jbGVhckJHIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuLndoaXRlQkcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IGNvbG9yOiAkb3ZlcnJpZGVzLXdoaXRlQkctZm9yZWdyb3VuZDsgfVxuLmxpZ2h0Qmx1ZUJHIHsgYmFja2dyb3VuZC1jb2xvcjogJG92ZXJyaWRlcy1saWdodEJsdWVCRy1mb3JlZ3JvdW5kICFpbXBvcnRhbnQ7IGNvbG9yOiAjZmZmOyB9XG4ubWVkaXVtQmx1ZUJHIHsgYmFja2dyb3VuZC1jb2xvcjogJG92ZXJyaWRlcy1tZWRpdW1CbHVlQkctZm9yZWdyb3VuZCAhaW1wb3J0YW50OyBjb2xvcjogI2ZmZjsgfVxuLmRhcmtCbHVlQkcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkb3ZlcnJpZGVzLWRhcmtCbHVlQkctZm9yZWdyb3VuZCAhaW1wb3J0YW50OyBjb2xvcjogI2ZmZjsgfVxuLmdyZXlCRyB7IGJhY2tncm91bmQtY29sb3I6ICRiZWxsLWdyZXkgIWltcG9ydGFudDsgfVxuLmxpZ2h0R3JleUJHIHsgYmFja2dyb3VuZC1jb2xvcjogJGJlbGwtbGlnaHQtZ3JleSAhaW1wb3J0YW50IH0iXSwibWFwcGluZ3MiOiJBRUFBLG9CQUFvQjtBQUNwQixVQUFVO0VBQ1QsV0FBVyxFQUFFLHVCQUF3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 */
