*,
::after,
::before {
  box-sizing: border-box;
}
html {
  height: 100%;
}
html body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  background: #fff;
  min-height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 100%;
  font-size: 13px;
}
html body span {
  font-size: 13px;
}
html body main {
  -ms-flex: 1;
      flex: 1;
}
a,
p,
h1,
h2,
h3,
h4,
h5 {
  color: #292929;
  line-height: 1.3;
}
a,
p {
  font-size: 15px;
  color: #292929;
}
i.fas,
i.fab,
i.far {
  color: #666;
}
i.fa-left {
  margin-right: 3px;
}
i.fa-white {
  color: #fff;
}
.center {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.center:before {
  content: '';
  display: table;
}
.center:after {
  content: '';
  display: table;
  clear: both;
}
@media only screen and (max-width: 1240px) {
  .center {
    padding: 0 30px;
  }
}
@media only screen and (max-width: 768px) {
  .center {
    padding: 0 15px;
  }
}
a {
  text-decoration: none;
  color: #417bb3;
}
.mobile {
  display: none;
}
.clear {
  *zoom: 1;
}
.clear:before,
.clear:after {
  content: "";
  display: table;
}
.clear:after {
  clear: both;
}
.op {
  opacity: 0.95;
}
.op2 {
  opacity: 0.85;
}
.layout .dropdown-menu,
.layout .dropmenu-first {
  border: none;
}
@media only screen and (max-width: 1024px) {
  .layout main {
    padding-top: 20px;
  }
}
.layout .slice-cinza {
  background: #f3f3f3;
}
.layout .slice {
  padding-top: 20px;
  padding-bottom: 20px;
}
.layout .slice .subtitle {
  margin-top: 0;
  margin-bottom: 40px;
  font-size: 25px;
  color: #003f8f;
  font-weight: normal;
  text-transform: uppercase;
  text-align: center;
}
.layout ul.breadcrumbs {
  padding: 0;
  margin-bottom: 1em;
  color: #8ba3cf;
}
.layout ul.breadcrumbs li:not(:last-child):after {
  content: '>>';
}
.layout ul.breadcrumbs li:last-child {
  text-decoration: underline;
}
.layout ul.breadcrumbs li {
  display: inline-block;
  text-transform: uppercase;
}
.layout ul.breadcrumbs li i.fas {
  color: #8ba3cf;
}
.layout ul.breadcrumbs li a {
  font-size: 12px;
  color: #003f8f;
  text-transform: uppercase;
  text-decoration: none;
}
.layout .share-w {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 22px 0 0;
}
.layout .share-w .share-txt,
.layout .share-w .share-icons {
  display: inline-block;
}
.layout .share-w .share-txt {
  margin-right: 15px;
  font-size: 15px;
}
.layout .share-w .share-icons .share-item {
  cursor: pointer;
}
.layout .share-w .share-icons .share-item i.fab,
.layout .share-w .share-icons .share-item i.fas {
  font-size: 34px;
}
.layout .share-w .share-icons .share-facebook i.fab {
  color: #3a5b9a;
}
.layout .share-w .share-icons .share-twitter i.fab {
  color: #55a4db;
}
.layout .share-w .share-icons .share-google-plus i.fab {
  color: #e04d41;
}
.layout .share-w .share-icons .share-mail i.fas {
  color: #033696;
}
.down-arrow {
  display: inline-block;
  position: absolute;
  right: 6px;
  top: 6px;
  background: #8ba3cf;
  padding: 0;
  width: 10px;
  text-align: center;
}
.down-arrow:after {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-top: 5px solid #8ba3cf;
  border-right: 6px solid transparent;
  border-bottom: 0 solid transparent;
  border-left: 6px solid transparent;
}
.data-block.data-warning {
  background-color: #fff0f0;
  color: #ee6067;
}
.data-block.data-warning p,
.data-block.data-warning p>strong {
  color: #ee6067;
}
.data-block.data-info {
  background-color: #f4faff;
  color: #0d7fcc;
}
.data-block.data-info p,
.data-block.data-info p>strong {
  color: #0d7fcc;
}
.data-block {
  position: relative;
  font-size: 14px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 860px;
  border-radius: 4px;
  background-color: #fcf8e3;
  border: 1px solid #6d6d6d;
  padding: 23px 15px 24px 10px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.3);
}
.data-block:before {
  content: '';
  display: table;
}
.data-block:after {
  content: '';
  display: table;
  clear: both;
}
.data-block ul {
  text-align: left;
  padding-left: 22px;
}
.data-block i.icon {
  display: inline-block;
  top: -4px;
  float: left;
}
.data-block .block-title {
  font-weight: normal;
  font-size: 16px;
  color: #ff3535;
  margin-bottom: 10px;
}
.data-block p {
  color: #717272;
  font-size: 14px;
  font-weight: lighter;
  margin: 0 0 0 auto;
  padding: 0 24px 0 35px;
}
.data-block a {
  background: #044a90;
  color: #fff;
}
.data-block .block-close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  overflow: visible;
  width: 35px;
  height: 35px;
  margin: 0;
  padding: 0;
  color: #95979c;
  cursor: pointer;
  transition: color 0.2s;
  border: 0;
  outline: 0;
  background: transparent;
}
.data-block .block-close:before {
  position: absolute;
  font-size: 25px;
  line-height: 35px;
  top: 0;
  left: 0;
  display: block;
  width: 35px;
  content: "\00d7";
  text-align: center;
}
.btn {
  font-size: 13px;
}
.btn:focus {
  box-shadow: none !important;
}
.btn.btn-100 {
  width: 100%;
  margin: 0 0 11px 0;
}
.btn-primary {
  color: #fff;
  background-color: #003f8f;
  border-color: #003f8f;
}
.btn-primary:hover {
  background-color: #003272;
  border-color: #003f8f;
}
.btn-primary:not(:disabled):not(.disabled):active {
  background-color: #003f8f;
}
.btn-primary:not(:disabled):not(.disabled):active:focus {
  box-shadow: 0 0 0 0.2rem rgba(0,90,90,0.5);
}
.btn-secondary {
  color: #fff;
  background-color: #8ba3cf;
  border-color: #8ba3cf;
}
.btn-secondary:hover {
  background-color: #5a7cbb;
  border-color: #8ba3cf;
}
.btn-secondary:not(:disabled):not(.disabled):active {
  background-color: #8ba3cf;
}
.btn-secondary:not(:disabled):not(.disabled):active:focus {
  box-shadow: 0 0 0 0.2rem rgba(0,90,90,0.5);
}
.btn-tertiary {
  color: #fff;
  background-color: #23a7e2;
  border-color: #23a7e2;
}
.btn-tertiary:hover {
  background-color: #1887b8;
  border-color: #23a7e2;
}
.btn-tertiary:not(:disabled):not(.disabled):active {
  background-color: #23a7e2;
}
.btn-tertiary:not(:disabled):not(.disabled):active:focus {
  box-shadow: 0 0 0 0.2rem rgba(0,90,90,0.5);
}
.btn-g {
  color: #fff;
  background-color: #42ca49;
  border-color: #42ca49;
}
.btn-g:hover {
  background-color: #2fa735;
  border-color: #42ca49;
}
.btn-g:not(:disabled):not(.disabled):active {
  background-color: #42ca49;
}
.btn-g:not(:disabled):not(.disabled):active:focus {
  box-shadow: 0 0 0 0.2rem rgba(0,90,90,0.5);
}
.btn-xlg {
  padding: 0.7rem 4rem;
  line-height: 1.8;
  font-size: 19px;
  font-weight: bold;
  text-transform: uppercase;
}
.has-icon {
  position: relative;
  display: inline;
  line-height: 1.2;
  padding-right: 19px;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdsb2JhbC9fX2dsb2JhbC5zdHlsIiwiZ2xvYmFsLmNzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ydXB0dXJlL3J1cHR1cmUvaW5kZXguc3R5bCIsImdsb2JhbC9fX190b29sLnN0eWwiLCJnbG9iYWwvbGF5b3V0cy5zdHlsIiwiZ2xvYmFsL2VsZW1lbnRzLnN0eWwiLCJnbG9iYWwvYnV0dG9ucy5zdHlsIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7RUFDSSx1QkFBQTtDQ0tIO0FESEQ7RUFDSSxhQUFBO0NDS0g7QURKRztFQUNJLGlJQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLHFCQUFBO0VBQUEsY0FBQTtFQUNBLDJCQUFBO01BQUEsdUJBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7Q0NNUDtBRExPO0VBQ0ksZ0JBQUE7Q0NPWDtBRE5PO0VBQ0ksWUFBQTtNQUFBLFFBQUE7Q0NRWDtBRE5EOzs7Ozs7O0VBQ0ksZUFBQTtFQUNBLGlCQUFBO0NDY0g7QURaRDs7RUFDSSxnQkFBQTtFQUNBLGVBQUE7Q0NlSDtBRGJEOzs7RUFDSSxZQUFBO0NDaUJIO0FEaEJEO0VBQ0ksa0JBQUE7Q0NrQkg7QURqQkQ7RUFDSSxZQUFBO0NDbUJIO0FEakJEO0VBQ0ksa0JBQUE7RUFBQSxrQkFBQTtFQUFBLG1CQUFBO0NDbUJIO0FEcEJEO0VBQ0ksWUFBQTtFQUFBLGVBQUE7Q0NtQkg7QURwQkQ7RUFDSSxZQUFBO0VBQUEsZUFBQTtFQUFBLFlBQUE7Q0NtQkg7QUMwRlU7RUFBQTtJRjNHSCxnQkFBQTtHQ3FCTDtDQUNGO0FDcUZVO0VBQUE7SUZ6R0gsZ0JBQUE7R0N3Qkw7Q0FDRjtBRHZCRDtFQUNJLHNCQUFBO0VBQ0EsZUFBQTtDQ3lCSDtBRHZCRDtFQUNJLGNBQUE7Q0N5Qkg7QUR2QkQ7R0c5Q0ssUUFBQTtDRndFSjtBRXZFRzs7RUFFSSxZQUFBO0VBQ0EsZUFBQTtDRnlFUDtBRXhFRztFQUNJLFlBQUE7Q0YwRVA7QUQvQkQ7RUFDSSxjQUFBO0NDaUNI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Q0ksWUFBQTtFQUNBLDBCQUFBO0VBQ0Esc0JBQUE7Q0xtUkg7QUtsUkc7RUFDSSwwQkFBQTtFQUNBLHNCQUFBO0NMb1JQO0FLblJHO0VBQ0ksMEJBQUE7Q0xxUlA7QUtwUkc7RUFDSSwyQ0FBQTtDTHNSUDtBS3BSRDtFQUNJLFlBQUE7RUFDQSwwQkFBQTtFQUNBLHNCQUFBO0NMc1JIO0FLclJHO0VBQ0ksMEJBQUE7RUFDQSxzQkFBQTtDTHVSUDtBS3RSRztFQUNJLDBCQUFBO0NMd1JQO0FLdlJHO0VBQ0ksMkNBQUE7Q0x5UlA7QUt2UkQ7RUFDSSxZQUFBO0VBQ0EsMEJBQUE7RUFDQSxzQkFBQTtDTHlSSDtBS3hSRztFQUNJLDBCQUFBO0VBQ0Esc0JBQUE7Q0wwUlA7QUt6Ukc7RUFDSSwwQkFBQTtDTDJSUDtBSzFSRztFQUNJLDJDQUFBO0NMNFJQO0FLMVJEO0VBQ0ksWUFBQTtFQUNBLDBCQUFBO0VBQ0Esc0JBQUE7Q0w0Ukg7QUszUkc7RUFDSSwwQkFBQTtFQUNBLHNCQUFBO0NMNlJQO0FLNVJHO0VBQ0ksMEJBQUE7Q0w4UlA7QUs3Ukc7RUFDSSwyQ0FBQTtDTCtSUDtBSzdSRDtFQUNJLHFCQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsMEJBQUE7Q0wrUkg7QUs3UkQ7RUFDSSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtDTCtSSCIsImZpbGUiOiJnbG9iYWwuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiKiwgOjphZnRlciwgOjpiZWZvcmVcbiAgICBib3gtc2l6aW5nIGJvcmRlci1ib3hcblxuaHRtbFxuICAgIGhlaWdodCAxMDAlXG4gICAgYm9keVxuICAgICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90bywgT3h5Z2VuLVNhbnMsVWJ1bnR1LENhbnRhcmVsbCxcIkhlbHZldGljYSBOZXVlXCIsc2Fucy1zZXJpZlxuICAgICAgICBiYWNrZ3JvdW5kIHdoaXRlXG4gICAgICAgIG1pbi1oZWlnaHQgMTAwJVxuICAgICAgICBkaXNwbGF5IGZsZXhcbiAgICAgICAgZmxleC1kaXJlY3Rpb24gY29sdW1uXG4gICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgZm9udC1zaXplIDEzcHhcbiAgICAgICAgc3BhblxuICAgICAgICAgICAgZm9udC1zaXplIDEzcHhcbiAgICAgICAgbWFpblxuICAgICAgICAgICAgZmxleCAxXG5cbmEsIHAsIGgxLCBoMiwgaDMsIGg0LCBoNCwgaDVcbiAgICBjb2xvciB0ZXh0c1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNcblxuYSwgcFxuICAgIGZvbnQtc2l6ZTogMTVweFxuICAgIGNvbG9yIHRleHRzXG5cbmkuZmFzLCBpLmZhYiwgaS5mYXJcbiAgICBjb2xvciB0ZXh0czJcbmkuZmEtbGVmdFxuICAgIG1hcmdpbi1yaWdodCAzcHhcbmkuZmEtd2hpdGVcbiAgICBjb2xvciB3aGl0ZVxuXG4uY2VudGVyXG4gICAgbG9zdC1jZW50ZXIgMTIwMHB4XG4gICAgK2JlbG93KDEyNDBweClcbiAgICAgICAgcGFkZGluZyAwIDMwcHhcbiAgICArYmVsb3coNzY4cHgpXG4gICAgICAgIHBhZGRpbmcgMCAxNXB4XG5cbmFcbiAgICB0ZXh0LWRlY29yYXRpb24gbm9uZVxuICAgIGNvbG9yOiAjNDE3YmIzXG5cbi5tb2JpbGVcbiAgICBkaXNwbGF5IG5vbmVcblxuLmNsZWFyXG4gICAgY2xlYXJmaXgoKVxuXG4ub3BcbiAgICBvcGFjaXR5IC45NVxuXG4ub3AyXG4gICAgb3BhY2l0eSAuODVcbiIsIkBsb3N0IGd1dHRlciAyMHB4O1xuQGxvc3QgY3ljbGUgbm9uZTtcbiosXG46OmFmdGVyLFxuOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cbmh0bWwgYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBPeHlnZW4tU2FucywgVWJ1bnR1LCBDYW50YXJlbGwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cbmh0bWwgYm9keSBzcGFuIHtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuaHRtbCBib2R5IG1haW4ge1xuICBmbGV4OiAxO1xufVxuYSxcbnAsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1IHtcbiAgY29sb3I6ICMyOTI5Mjk7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5hLFxucCB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5pLmZhcyxcbmkuZmFiLFxuaS5mYXIge1xuICBjb2xvcjogIzY2Njtcbn1cbmkuZmEtbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xufVxuaS5mYS13aGl0ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmNlbnRlciB7XG4gIGxvc3QtY2VudGVyOiAxMjAwcHg7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNDBweCkge1xuICAuY2VudGVyIHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNlbnRlciB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzQxN2JiMztcbn1cbi5tb2JpbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNsZWFyIHtcbiAgKnpvb206IDE7XG59XG4uY2xlYXI6YmVmb3JlLFxuLmNsZWFyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG4uY2xlYXI6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5vcCB7XG4gIG9wYWNpdHk6IDAuOTU7XG59XG4ub3AyIHtcbiAgb3BhY2l0eTogMC44NTtcbn1cbi5sYXlvdXQgLmRyb3Bkb3duLW1lbnUsXG4ubGF5b3V0IC5kcm9wbWVudS1maXJzdCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5sYXlvdXQgbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gIH1cbn1cbi5sYXlvdXQgLnNsaWNlLWNpbnphIHtcbiAgYmFja2dyb3VuZDogI2YzZjNmMztcbn1cbi5sYXlvdXQgLnNsaWNlIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLmxheW91dCAuc2xpY2UgLnN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBjb2xvcjogIzAwM2Y4ZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmxheW91dCB1bC5icmVhZGNydW1icyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgY29sb3I6ICM4YmEzY2Y7XG59XG4ubGF5b3V0IHVsLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICBjb250ZW50OiAnPj4nO1xufVxuLmxheW91dCB1bC5icmVhZGNydW1icyBsaTpsYXN0LWNoaWxkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4ubGF5b3V0IHVsLmJyZWFkY3J1bWJzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmxheW91dCB1bC5icmVhZGNydW1icyBsaSBpLmZhcyB7XG4gIGNvbG9yOiAjOGJhM2NmO1xufVxuLmxheW91dCB1bC5icmVhZGNydW1icyBsaSBhIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogIzAwM2Y4ZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmxheW91dCAuc2hhcmUtdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIycHggMCAwO1xufVxuLmxheW91dCAuc2hhcmUtdyAuc2hhcmUtdHh0LFxuLmxheW91dCAuc2hhcmUtdyAuc2hhcmUtaWNvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubGF5b3V0IC5zaGFyZS13IC5zaGFyZS10eHQge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cbi5sYXlvdXQgLnNoYXJlLXcgLnNoYXJlLWljb25zIC5zaGFyZS1pdGVtIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmxheW91dCAuc2hhcmUtdyAuc2hhcmUtaWNvbnMgLnNoYXJlLWl0ZW0gaS5mYWIsXG4ubGF5b3V0IC5zaGFyZS13IC5zaGFyZS1pY29ucyAuc2hhcmUtaXRlbSBpLmZhcyB7XG4gIGZvbnQtc2l6ZTogMzRweDtcbn1cbi5sYXlvdXQgLnNoYXJlLXcgLnNoYXJlLWljb25zIC5zaGFyZS1mYWNlYm9vayBpLmZhYiB7XG4gIGNvbG9yOiAjM2E1YjlhO1xufVxuLmxheW91dCAuc2hhcmUtdyAuc2hhcmUtaWNvbnMgLnNoYXJlLXR3aXR0ZXIgaS5mYWIge1xuICBjb2xvcjogIzU1YTRkYjtcbn1cbi5sYXlvdXQgLnNoYXJlLXcgLnNoYXJlLWljb25zIC5zaGFyZS1nb29nbGUtcGx1cyBpLmZhYiB7XG4gIGNvbG9yOiAjZTA0ZDQxO1xufVxuLmxheW91dCAuc2hhcmUtdyAuc2hhcmUtaWNvbnMgLnNoYXJlLW1haWwgaS5mYXMge1xuICBjb2xvcjogIzAzMzY5Njtcbn1cbi5kb3duLWFycm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA2cHg7XG4gIHRvcDogNnB4O1xuICBiYWNrZ3JvdW5kOiAjOGJhM2NmO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmRvd24tYXJyb3c6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICM4YmEzY2Y7XG4gIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLmRhdGEtYmxvY2suZGF0YS13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjBmMDtcbiAgY29sb3I6ICNlZTYwNjc7XG59XG4uZGF0YS1ibG9jay5kYXRhLXdhcm5pbmcgcCxcbi5kYXRhLWJsb2NrLmRhdGEtd2FybmluZyBwPnN0cm9uZyB7XG4gIGNvbG9yOiAjZWU2MDY3O1xufVxuLmRhdGEtYmxvY2suZGF0YS1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZmFmZjtcbiAgY29sb3I6ICMwZDdmY2M7XG59XG4uZGF0YS1ibG9jay5kYXRhLWluZm8gcCxcbi5kYXRhLWJsb2NrLmRhdGEtaW5mbyBwPnN0cm9uZyB7XG4gIGNvbG9yOiAjMGQ3ZmNjO1xufVxuLmRhdGEtYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbG9zdC1jZW50ZXI6IDkwJTtcbiAgbWF4LXdpZHRoOiA4NjBweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNmQ2ZDZkO1xuICBwYWRkaW5nOiAyM3B4IDE1cHggMjRweCAxMHB4O1xuICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLDAsMCwwLjMpO1xufVxuLmRhdGEtYmxvY2sgdWwge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDIycHg7XG59XG4uZGF0YS1ibG9jayBpLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRvcDogLTRweDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZGF0YS1ibG9jayAuYmxvY2stdGl0bGUge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGNvbG9yOiAjZmYzNTM1O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmRhdGEtYmxvY2sgcCB7XG4gIGNvbG9yOiAjNzE3MjcyO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICBtYXJnaW46IDAgMCAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjRweCAwIDM1cHg7XG59XG4uZGF0YS1ibG9jayBhIHtcbiAgYmFja2dyb3VuZDogIzA0NGE5MDtcbiAgY29sb3I6ICNmZmY7XG59XG4uZGF0YS1ibG9jayAuYmxvY2stY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzk1OTc5YztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLmRhdGEtYmxvY2sgLmJsb2NrLWNsb3NlOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBsaW5lLWhlaWdodDogMzVweDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDM1cHg7XG4gIGNvbnRlbnQ6IFwiXFwwMGQ3XCI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5idG4ge1xuICBmb250LXNpemU6IDEzcHg7XG59XG4uYnRuOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLmJ0bi5idG4tMTAwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDExcHggMDtcbn1cbi5idG4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzZjhmO1xuICBib3JkZXItY29sb3I6ICMwMDNmOGY7XG59XG4uYnRuLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAzMjcyO1xuICBib3JkZXItY29sb3I6ICMwMDNmOGY7XG59XG4uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwM2Y4Zjtcbn1cbi5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLDkwLDkwLDAuNSk7XG59XG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGJhM2NmO1xuICBib3JkZXItY29sb3I6ICM4YmEzY2Y7XG59XG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1YTdjYmI7XG4gIGJvcmRlci1jb2xvcjogIzhiYTNjZjtcbn1cbi5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YmEzY2Y7XG59XG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLDkwLDkwLDAuNSk7XG59XG4uYnRuLXRlcnRpYXJ5IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyM2E3ZTI7XG4gIGJvcmRlci1jb2xvcjogIzIzYTdlMjtcbn1cbi5idG4tdGVydGlhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTg4N2I4O1xuICBib3JkZXItY29sb3I6ICMyM2E3ZTI7XG59XG4uYnRuLXRlcnRpYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyM2E3ZTI7XG59XG4uYnRuLXRlcnRpYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsOTAsOTAsMC41KTtcbn1cbi5idG4tZyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDJjYTQ5O1xuICBib3JkZXItY29sb3I6ICM0MmNhNDk7XG59XG4uYnRuLWc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmZhNzM1O1xuICBib3JkZXItY29sb3I6ICM0MmNhNDk7XG59XG4uYnRuLWc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQyY2E0OTtcbn1cbi5idG4tZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLDkwLDkwLDAuNSk7XG59XG4uYnRuLXhsZyB7XG4gIHBhZGRpbmc6IDAuN3JlbSA0cmVtO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBmb250LXNpemU6IDE5cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmhhcy1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHBhZGRpbmctcmlnaHQ6IDE5cHg7XG59XG4iLCJiYXNlLWZvbnQtc2l6ZSA/PSAxNnB4XG5yYXN0ZXJpc2UtbWVkaWEtcXVlcmllcyA/PSBmYWxzZVxuXG5ydXB0dXJlID0ge1xuICByYXN0ZXJpc2UtbWVkaWEtcXVlcmllczogcmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXNcbiAgbW9iaWxlLWN1dG9mZjogNDAwcHhcbiAgZGVza3RvcC1jdXRvZmY6IDEwNTBweFxuICBoZC1jdXRvZmY6IDE4MDBweFxuICBlbmFibGUtZW0tYnJlYWtwb2ludHM6IGZhbHNlXG4gIGJhc2UtZm9udC1zaXplOiBiYXNlLWZvbnQtc2l6ZVxuICBhbnRpLW92ZXJsYXA6IGZhbHNlXG4gIGRlbnNpdHktcXVlcmllczogJ2RwcHgnICd3ZWJraXQnICdtb3onICdkcGknXG4gIHJldGluYS1kZW5zaXR5OiAxLjVcbiAgdXNlLWRldmljZS13aWR0aDogZmFsc2Vcbn1cbnJ1cHR1cmUuc2NhbGUgPSAwIChydXB0dXJlLm1vYmlsZS1jdXRvZmYpIDYwMHB4IDgwMHB4IChydXB0dXJlLmRlc2t0b3AtY3V0b2ZmKSAocnVwdHVyZS5oZC1jdXRvZmYpXG5ydXB0dXJlLnNjYWxlLW5hbWVzID0gJ3hzJyAncycgJ20nICdsJyAneGwnICdoZCdcblxuLWlzLXN0cmluZyh2YWwpXG4gIGlmIHR5cGVvZih2YWwpIGlzIG5vdCAndW5pdCdcbiAgICBpZiB2YWwgaXMgYSAnc3RyaW5nJyBvciB2YWwgaXMgYSAnaWRlbnQnXG4gICAgICB0cnVlXG4gICAgZWxzZVxuICAgICAgZmFsc2VcbiAgZWxzZVxuICAgIGZhbHNlXG5cbi1nZXQtc2NhbGUtbnVtYmVyKHNjYWxlLW5hbWUpXG4gIGZvciBsaXN0LWl0ZW0sIGkgaW4gcnVwdHVyZS5zY2FsZS1uYW1lc1xuICAgIGlmIGxpc3QtaXRlbSBpcyBzY2FsZS1uYW1lXG4gICAgICByZXR1cm4gaSArIDFcbiAgcmV0dXJuIGZhbHNlXG5cbi1jb252ZXJ0LXRvKHRvLXVuaXQsIHZhbHVlLCBjb250ZXh0ID0gcnVwdHVyZS5iYXNlLWZvbnQtc2l6ZSlcbiAgZnJvbS11bml0ID0gdW5pdCh2YWx1ZSlcbiAgcmV0dXJuIHZhbHVlIGlmIHRvLXVuaXQgaXMgZnJvbS11bml0XG4gIGlmIHRvLXVuaXQgaW4gKCdlbScgJ3JlbScpXG4gICAgcmV0dXJuIHZhbHVlIGlmIGZyb20tdW5pdCBpbiAoJ2VtJyAncmVtJylcbiAgICByZXR1cm4gdW5pdCgodmFsdWUgLyBjb250ZXh0KSwgdG8tdW5pdClcbiAgaWYgdG8tdW5pdCBpcyAncHgnXG4gICAgcmV0dXJuIHVuaXQoKHZhbHVlICogY29udGV4dCksICdweCcpXG5cbi1vbi1zY2FsZShuKVxuICByZXR1cm4gdW5pdChuKSBpcyAnJ1xuXG4tbGFyZ2VyLXRoYW4tc2NhbGUobilcbiAgcmV0dXJuIChuID4gKGxlbmd0aChydXB0dXJlLnNjYWxlKSAtIDEpKSBhbmQgLW9uLXNjYWxlKG4pXG5cbi1pcy16ZXJvKG4pXG4gIHJldHVybiBuIGlzIDBcblxuLW92ZXJsYXAtc2hpZnQoYW50aS1vdmVybGFwLCBuKVxuICBzaGlmdC11bml0ID0gdW5pdChuKVxuICBhbnRpLW92ZXJsYXAgPSAwcHggdW5sZXNzIGFudGktb3ZlcmxhcFxuICBhbnRpLW92ZXJsYXAgPSAxcHggaWYgYW50aS1vdmVybGFwIGlzIHRydWVcbiAgaWYgbGVuZ3RoKGFudGktb3ZlcmxhcCkgaXMgMVxuICAgIHJldHVybiAtY29udmVydC10byhzaGlmdC11bml0LCBhbnRpLW92ZXJsYXApXG4gIGZvciB2YWwgaW4gYW50aS1vdmVybGFwXG4gICAgcmV0dXJuIHZhbCBpZiB1bml0KHZhbCkgaXMgc2hpZnQtdW5pdFxuXG4tYWRqdXN0LW92ZXJsYXAoYW50aS1vdmVybGFwLCBuLCBzaWRlID0gJ21pbicpXG4gIC1zaGlmdCA9IC1vdmVybGFwLXNoaWZ0KGFudGktb3ZlcmxhcCwgbilcbiAgaWYgKHNpZGUgaXMgJ21pbicgYW5kIC1zaGlmdCA+IDApIG9yIChzaWRlIGlzICdtYXgnIGFuZCAtc2hpZnQgPCAwKVxuICAgIG4gPSBuICsgLXNoaWZ0XG4gIHJldHVybiBuXG5cbi1pcy1wb3NpdGl2ZShuKVxuICByZXR1cm4gbiA+PSAwXG5cbi1kZW5zaXR5LXF1ZXJpZXMoZGVuc2l0eSlcbiAgaWYgdHlwZW9mKGRlbnNpdHkpIGlzIG5vdCAndW5pdCdcbiAgICBpZiBub3QgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgICAgZGVuc2l0eSA9ICclcycgJSBkZW5zaXR5XG4gIGRlbnNpdHkgPSBydXB0dXJlLnJldGluYS1kZW5zaXR5IGlmIGRlbnNpdHkgaXMgJ3JldGluYSdcbiAgcXVlcmllcyA9ICgpXG4gIGZvciBxdWVyeSBpbiBydXB0dXJlLmRlbnNpdHktcXVlcmllc1xuICAgIGlmIHF1ZXJ5IGlzICd3ZWJraXQnXG4gICAgICBwdXNoKHF1ZXJpZXMsICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAlcyknICUgKGRlbnNpdHkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ21veidcbiAgICAgIHB1c2gocXVlcmllcywgJyhtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICVzKScgJSAoZGVuc2l0eSkpXG4gICAgZWxzZSBpZiBxdWVyeSBpcyAnbydcbiAgICAgIHB1c2gocXVlcmllcywgJygtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAlcy8xKScgJSAoZGVuc2l0eSkpXG4gICAgZWxzZSBpZiBxdWVyeSBpcyAncmF0aW8nXG4gICAgICBwdXNoKHF1ZXJpZXMsICcobWluLWRldmljZS1waXhlbC1yYXRpbzogJXMpJyAlIChkZW5zaXR5KSlcbiAgICBlbHNlIGlmIHF1ZXJ5IGlzICdkcGknXG4gICAgICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgICAgIGRlbnNpdHk9Y29udmVydChkZW5zaXR5KVxuICAgICAgcHVzaChxdWVyaWVzLCAnKG1pbi1yZXNvbHV0aW9uOiAlc2RwaSknICUgKHJvdW5kKGRlbnNpdHkgKiA5NiwgMSkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ2RwcHgnXG4gICAgICBwdXNoKHF1ZXJpZXMsICcobWluLXJlc29sdXRpb246ICVzZHBweCknICUgKGRlbnNpdHkpKVxuICByZXR1cm4gcXVlcmllc1xuXG5jcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGNsYXNzKVxuICAveycnICsgY2xhc3MgKyAnICcgKyBzZWxlY3RlZH1cbiAgICB7YmxvY2t9XG5cbi8vICtiZXR3ZWVuKG1pbiwgbWF4KVxuLy8gdXNhZ2UgKHNjYWxlIGNhbiBiZSBtaXhlZCB3aXRoIGN1c3RvbSB2YWx1ZXMpOlxuLy8gICAtICtiZXR3ZWVuKDEsIDMpIHNjYWxlOnNjYWxlXG4vLyAgIC0gK2JldHdlZW4oMCwgMykgMCB3aWR0aDpzY2FsZVxuLy8gICAtICtiZXR3ZWVuKDIwMHB4LCA1MDBweCkgY3VzdG9tOmN1c3RvbVxuLy8gICAtICtiZXR3ZWVuKDAsIDMwMHB4KSAwIHdpZHRoOmN1c3RvbVxuLy8gICAtICtiZXR3ZWVuKDEsIDMwMHB4KSBzY2FsZTpjdXN0b21cbi8vICAgLSArYmV0d2VlbigyMDBweCwgNCkgY3VzdG9tOnNjYWxlXG5cbmJldHdlZW4obWluLCBtYXgsIGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIHNlbGVjdGVkID0gc2VsZWN0b3IoKVxuXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgaWYgLWlzLXN0cmluZyhtaW4pXG4gICAgbWluID0gLWdldC1zY2FsZS1udW1iZXIobWluKVxuICBpZiAtaXMtc3RyaW5nKG1heClcbiAgICBtYXggPSAtZ2V0LXNjYWxlLW51bWJlcihtYXgpXG5cbiAgLW1pbiA9IHJ1cHR1cmUuc2NhbGVbbWluIC0gMV0gdW5sZXNzIC1pcy16ZXJvKG1pbikgb3IgKG5vdCAtb24tc2NhbGUobWluKSlcbiAgLW1heCA9IHJ1cHR1cmUuc2NhbGVbbWF4XSB1bmxlc3Mgbm90IC1vbi1zY2FsZShtYXgpXG4gIC1taW4gPz0gbWluXG4gIC1tYXggPz0gbWF4XG5cbiAgaWYgKHJ1cHR1cmUucmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXMpXG4gICAgaWYgbm90IChkZW5zaXR5IG9yIC1tYXggb3Igb3JpZW50YXRpb24pXG4gICAgICB7YmxvY2t9XG4gIGVsc2VcbiAgICBjb25kaXRpb24gPSAnb25seSBzY3JlZW4nXG4gICAgdXNlLWRldmljZS13aWR0aCA9IHVzZS1kZXZpY2Utd2lkdGggPyAnZGV2aWNlLScgOiAnJ1xuICAgIHVubGVzcyAtbWluIGlzIDBcbiAgICAgIC1taW4gPSAtY29udmVydC10bygnZW0nLCAtbWluKSBpZiBydXB0dXJlLmVuYWJsZS1lbS1icmVha3BvaW50c1xuICAgICAgLW1pbiA9IC1hZGp1c3Qtb3ZlcmxhcChhbnRpLW92ZXJsYXAsIC1taW4sIHNpZGU6ICdtaW4nKVxuICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uICsgJyBhbmQgKG1pbi0nICsgdXNlLWRldmljZS13aWR0aCArICd3aWR0aDogJXMpJyAlICgtbWluKVxuICAgIHVubGVzcyAtbGFyZ2VyLXRoYW4tc2NhbGUobWF4KVxuICAgICAgLW1heCA9IC1jb252ZXJ0LXRvKCdlbScsIC1tYXgpIGlmIHJ1cHR1cmUuZW5hYmxlLWVtLWJyZWFrcG9pbnRzXG4gICAgICAtbWF4ID0gLWFkanVzdC1vdmVybGFwKGFudGktb3ZlcmxhcCwgLW1heCwgc2lkZTogJ21heCcpXG4gICAgICBjb25kaXRpb24gPSBjb25kaXRpb24gKyAnIGFuZCAobWF4LScgKyB1c2UtZGV2aWNlLXdpZHRoICsgJ3dpZHRoOiAlcyknICUgKC1tYXgpXG4gICAgaWYgb3JpZW50YXRpb25cbiAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbiArICcgYW5kIChvcmllbnRhdGlvbjogJXMpJyAlIChvcmllbnRhdGlvbilcbiAgICBpZiBkZW5zaXR5XG4gICAgICBjb25kaXRpb25zID0gKClcbiAgICAgIGZvciBxdWVyeSBpbiAtZGVuc2l0eS1xdWVyaWVzKGRlbnNpdHkpXG4gICAgICAgIHB1c2goY29uZGl0aW9ucywgY29uZGl0aW9uICsgJyBhbmQgJXMnICUgKHF1ZXJ5KSlcbiAgICAgIGNvbmRpdGlvbiA9IGpvaW4oJywgJywgY29uZGl0aW9ucylcbiAgICBAbWVkaWEgY29uZGl0aW9uXG4gICAgICB7YmxvY2t9XG4gIGlmIGZhbGxiYWNrLWNsYXNzXG4gICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICB7YmxvY2t9XG5cbmF0KHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKHNjYWxlLXBvaW50LCBzY2FsZS1wb2ludCwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG5mcm9tLXdpZHRoKHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKHNjYWxlLXBvaW50LCBsZW5ndGgocnVwdHVyZS5zY2FsZSksIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxuYWJvdmUgPSBmcm9tLXdpZHRoXG5cbnRvLXdpZHRoKHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKDEsIHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmJlbG93ID0gdG8td2lkdGhcblxubW9iaWxlKGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgK2JlbG93KHJ1cHR1cmUubW9iaWxlLWN1dG9mZiwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG50YWJsZXQoYW50aS1vdmVybGFwID0gcnVwdHVyZS5hbnRpLW92ZXJsYXAsIGRlbnNpdHkgPSBudWxsLCBvcmllbnRhdGlvbiA9IG51bGwsIHVzZS1kZXZpY2Utd2lkdGggPSBydXB0dXJlLnVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgaWYgLWlzLXN0cmluZyhvcmllbnRhdGlvbilcbiAgICBvcmllbnRhdGlvbiA9IGNvbnZlcnQob3JpZW50YXRpb24pXG4gIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICArYmV0d2VlbihydXB0dXJlLm1vYmlsZS1jdXRvZmYsIHJ1cHR1cmUuZGVza3RvcC1jdXRvZmYsIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxuZGVza3RvcChhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICthYm92ZShydXB0dXJlLmRlc2t0b3AtY3V0b2ZmLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmhkKGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgK2Fib3ZlKHJ1cHR1cmUuaGQtY3V0b2ZmLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmRlbnNpdHkoZGVuc2l0eSwgb3JpZW50YXRpb24gPSBudWxsLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIHNlbGVjdGVkID0gc2VsZWN0b3IoKVxuICBpZiBub3QgKHJ1cHR1cmUucmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXMpXG4gICAgY29uZGl0aW9ucyA9ICgpXG4gICAgZm9yIHF1ZXJ5IGluIC1kZW5zaXR5LXF1ZXJpZXMoZGVuc2l0eSlcbiAgICAgIGNvbmRpdGlvbiA9ICdvbmx5IHNjcmVlbiBhbmQgJXMnICUgKHF1ZXJ5KVxuICAgICAgaWYgb3JpZW50YXRpb25cbiAgICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uICsgJyBhbmQgKG9yaWVudGF0aW9uOiAlcyknICUgKG9yaWVudGF0aW9uKVxuICAgICAgcHVzaChjb25kaXRpb25zLCBjb25kaXRpb24pXG4gICAgY29uZGl0aW9uID0gam9pbignLCAnLCBjb25kaXRpb25zKVxuICAgIEBtZWRpYSBjb25kaXRpb25cbiAgICAgIHtibG9ja31cbiAgICBpZiBmYWxsYmFjay1jbGFzc1xuICAgICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgIHtibG9ja31cblxucGl4ZWwtcmF0aW8gPSBkZW5zaXR5XG5cbnJldGluYShvcmllbnRhdGlvbiA9IG51bGwsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgK2RlbnNpdHkoJ3JldGluYScsIG9yaWVudGF0aW9uLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmxhbmRzY2FwZShkZW5zaXR5ID0gbnVsbCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcbiAgaWYgbm90IChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICAgaWYgZGVuc2l0eVxuICAgICAgK3BpeGVsLXJhdGlvKGRlbnNpdHksIG9yaWVudGF0aW9uOiBsYW5kc2NhcGUsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICB7YmxvY2t9XG4gICAgZWxzZVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcbiAgICAgICAge2Jsb2NrfVxuICAgICAgaWYgZmFsbGJhY2stY2xhc3NcbiAgICAgICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgICAge2Jsb2NrfVxuXG5wb3J0cmFpdChkZW5zaXR5ID0gbnVsbCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcbiAgaWYgbm90IChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICAgaWYgZGVuc2l0eVxuICAgICAgK3BpeGVsLXJhdGlvKGRlbnNpdHksIG9yaWVudGF0aW9uOiBwb3J0cmFpdCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgIHtibG9ja31cbiAgICBlbHNlXG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXG4gICAgICAgIHtibG9ja31cbiAgICAgIGlmIGZhbGxiYWNrLWNsYXNzXG4gICAgICAgICtjcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICAgIHtibG9ja31cbiIsImNsZWFyZml4KClcbiAgICAqem9vbSAxXG4gICAgJjpiZWZvcmVcbiAgICAmOmFmdGVyXG4gICAgICAgIGNvbnRlbnQgXCJcIlxuICAgICAgICBkaXNwbGF5IHRhYmxlXG4gICAgJjphZnRlclxuICAgICAgICBjbGVhciBib3RoXG4iLCIubGF5b3V0XG4gICAgLmRyb3Bkb3duLW1lbnVcbiAgICAuZHJvcG1lbnUtZmlyc3RcbiAgICAgICAgYm9yZGVyIG5vbmVcbiAgICBtYWluXG4gICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICBwYWRkaW5nLXRvcCAyMHB4XG4gICAgLnNsaWNlLWNpbnphXG4gICAgICAgIGJhY2tncm91bmQgY2luemFcbiAgICAuc2xpY2VcbiAgICAgICAgcGFkZGluZy10b3AgMjBweFxuICAgICAgICBwYWRkaW5nLWJvdHRvbSAyMHB4XG4gICAgICAgIC5zdWJ0aXRsZVxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMFxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweFxuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4XG4gICAgICAgICAgICBjb2xvciBjb2xvcnBcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWxcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtIHVwcGVyY2FzZVxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyXG4gICAgdWwuYnJlYWRjcnVtYnNcbiAgICAgICAgcGFkZGluZyAwXG4gICAgICAgIG1hcmdpbi1ib3R0b20gMWVtXG4gICAgICAgIGNvbG9yIGNvbG9yc1xuICAgICAgICBsaTpub3QoOmxhc3QtY2hpbGQpXG4gICAgICAgICAgICAmOmFmdGVyXG4gICAgICAgICAgICAgICAgY29udGVudCAnPj4nXG4gICAgICAgIGxpOmxhc3QtY2hpbGRcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbiB1bmRlcmxpbmVcbiAgICAgICAgbGlcbiAgICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybSB1cHBlcmNhc2VcbiAgICAgICAgICAgIGkuZmFzXG4gICAgICAgICAgICAgICAgY29sb3IgY29sb3JzXG4gICAgICAgICAgICBhXG4gICAgICAgICAgICAgICAgZm9udC1zaXplIDEycHhcbiAgICAgICAgICAgICAgICBjb2xvciBjb2xvcnBcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybSB1cHBlcmNhc2VcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmVcbiAgICAuc2hhcmUtd1xuICAgICAgICBkaXNwbGF5IGZsZXhcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlclxuICAgICAgICBwYWRkaW5nIDIycHggMCAwXG4gICAgICAgIC5zaGFyZS10eHQsIC5zaGFyZS1pY29uc1xuICAgICAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgLnNoYXJlLXR4dFxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0IDE1cHhcbiAgICAgICAgICAgIGZvbnQtc2l6ZSAxNXB4XG4gICAgICAgIC5zaGFyZS1pY29uc1xuICAgICAgICAgICAgLnNoYXJlLWl0ZW1cbiAgICAgICAgICAgICAgICBjdXJzb3IgcG9pbnRlclxuICAgICAgICAgICAgICAgIGkuZmFiLCBpLmZhc1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemUgMzRweFxuICAgICAgICAgICAgLnNoYXJlLWZhY2Vib29rXG4gICAgICAgICAgICAgICAgaS5mYWJcbiAgICAgICAgICAgICAgICAgICAgY29sb3IgIzNBNUI5QVxuICAgICAgICAgICAgLnNoYXJlLXR3aXR0ZXJcbiAgICAgICAgICAgICAgICBpLmZhYlxuICAgICAgICAgICAgICAgICAgICBjb2xvciAjNTVBNERCXG4gICAgICAgICAgICAuc2hhcmUtZ29vZ2xlLXBsdXNcbiAgICAgICAgICAgICAgICBpLmZhYlxuICAgICAgICAgICAgICAgICAgICBjb2xvciAjRTA0RDQxXG4gICAgICAgICAgICAuc2hhcmUtbWFpbFxuICAgICAgICAgICAgICAgIGkuZmFzXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yICMwMzM2OTZcbiIsIi5kb3duLWFycm93XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrXG4gICAgcG9zaXRpb246IGFic29sdXRlXG4gICAgcmlnaHQ6IDZweFxuICAgIHRvcDogNnB4XG4gICAgYmFja2dyb3VuZDogY29sb3JzXG4gICAgcGFkZGluZzogMFxuICAgIHdpZHRoOiAxMHB4XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG4gICAgJjphZnRlclxuICAgICAgICBjb250ZW50OiAnJ1xuICAgICAgICBkaXNwbGF5OiBibG9ja1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGVcbiAgICAgICAgd2lkdGg6IDBcbiAgICAgICAgaGVpZ2h0OiAwXG4gICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCBjb2xvcnNcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnRcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMCBzb2xpZCB0cmFuc3BhcmVudFxuICAgICAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50XG5cblxuLmRhdGEtYmxvY2suZGF0YS13YXJuaW5nXG4gICAgYmFja2dyb3VuZC1jb2xvciAjRkZGMEYwXG4gICAgY29sb3IgY29sb3JyXG4gICAgcCwgcD5zdHJvbmdcbiAgICAgICAgY29sb3IgY29sb3JyXG4uZGF0YS1ibG9jay5kYXRhLWluZm9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yICNGNEZBRkZcbiAgICBjb2xvcjogIzBEN0ZDQ1xuICAgIHAsIHA+c3Ryb25nXG4gICAgICAgIGNvbG9yICMwRDdGQ0Ncbi5kYXRhLWJsb2NrXG4gICAgcG9zaXRpb246IHJlbGF0aXZlXG4gICAgZm9udC1zaXplOiAxNHB4XG4gICAgbG9zdC1jZW50ZXIgOTAlXG4gICAgbWF4LXdpZHRoIDg2MHB4XG4gICAgYm9yZGVyLXJhZGl1cyByYWRpdXNcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICNGQ0Y4RTNcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNkQ2RDZEXG4gICAgcGFkZGluZyAyM3B4IDE1cHggMjRweCAxMHB4XG4gICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4zKVxuICAgIHVsXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnRcbiAgICAgICAgcGFkZGluZy1sZWZ0IDIycHhcbiAgICBpLmljb25cbiAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgdG9wIC00cHhcbiAgICAgICAgZmxvYXQgbGVmdFxuICAgIC5ibG9jay10aXRsZVxuICAgICAgICBmb250LXdlaWdodCBub3JtYWxcbiAgICAgICAgZm9udC1zaXplIDE2cHhcbiAgICAgICAgY29sb3IgI0ZGMzUzNVxuICAgICAgICBtYXJnaW4tYm90dG9tIDEwcHhcbiAgICBwXG4gICAgICAgIGNvbG9yOiAjNzE3MjcyXG4gICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgIGZvbnQtd2VpZ2h0IGxpZ2h0ZXJcbiAgICAgICAgbWFyZ2luIDAgMCAwIGF1dG9cbiAgICAgICAgcGFkZGluZyAwIDI0cHggMCAzNXB4XG4gICAgYVxuICAgICAgICBiYWNrZ3JvdW5kOiAjMDQ0YTkwXG4gICAgICAgIGNvbG9yIHdoaXRlXG4gICAgLmJsb2NrLWNsb3NlXG4gICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgIHRvcCAwXG4gICAgICAgIHJpZ2h0IDBcbiAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICBvdmVyZmxvdyB2aXNpYmxlXG4gICAgICAgIHdpZHRoIDM1cHhcbiAgICAgICAgaGVpZ2h0IDM1cHhcbiAgICAgICAgbWFyZ2luIDBcbiAgICAgICAgcGFkZGluZyAwXG4gICAgICAgIGNvbG9yICM5NTk3OWNcbiAgICAgICAgY3Vyc29yIHBvaW50ZXJcbiAgICAgICAgdHJhbnNpdGlvbiBjb2xvciAwLjJzXG4gICAgICAgIGJvcmRlciAwXG4gICAgICAgIG91dGxpbmUgMFxuICAgICAgICBiYWNrZ3JvdW5kIHRyYW5zcGFyZW50XG4gICAgLmJsb2NrLWNsb3NlOmJlZm9yZVxuICAgICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgICBmb250LXNpemUgMjVweFxuICAgICAgICBsaW5lLWhlaWdodCAzNXB4XG4gICAgICAgIHRvcCAwXG4gICAgICAgIGxlZnQgMFxuICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgIHdpZHRoIDM1cHhcbiAgICAgICAgY29udGVudCBcIlxcMDBkN1wiXG4gICAgICAgIHRleHQtYWxpZ24gY2VudGVyIiwiLmJ0blxuICAgIGZvbnQtc2l6ZSAxM3B4XG4gICAgJjpmb2N1c1xuICAgICAgICBib3gtc2hhZG93OiBub25lIWltcG9ydGFudFxuLmJ0bi5idG4tMTAwXG4gICAgd2lkdGggMTAwJVxuICAgIG1hcmdpbiAwIDAgMTFweCAwXG4uYnRuLXByaW1hcnlcbiAgICBjb2xvcjojZmZmXG4gICAgYmFja2dyb3VuZC1jb2xvcjpjb2xvcnBcbiAgICBib3JkZXItY29sb3I6Y29sb3JwXG4gICAgJjpob3ZlclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmNvbG9ycCAtIDIwJVxuICAgICAgICBib3JkZXItY29sb3I6Y29sb3JwXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmVcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpjb2xvcnBcbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1c1xuICAgICAgICBib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMCw5MCw5MCwwLjUpXG5cbi5idG4tc2Vjb25kYXJ5XG4gICAgY29sb3I6I2ZmZlxuICAgIGJhY2tncm91bmQtY29sb3I6Y29sb3JzXG4gICAgYm9yZGVyLWNvbG9yOmNvbG9yc1xuICAgICY6aG92ZXJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpjb2xvcnMgLSAyMCVcbiAgICAgICAgYm9yZGVyLWNvbG9yOmNvbG9yc1xuICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6Y29sb3JzXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXNcbiAgICAgICAgYm94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDAsOTAsOTAsMC41KVxuXG4uYnRuLXRlcnRpYXJ5XG4gICAgY29sb3I6I2ZmZlxuICAgIGJhY2tncm91bmQtY29sb3I6Y29sb3J0XG4gICAgYm9yZGVyLWNvbG9yOmNvbG9ydFxuICAgICY6aG92ZXJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpjb2xvcnQgLSAyMCVcbiAgICAgICAgYm9yZGVyLWNvbG9yOmNvbG9ydFxuICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6Y29sb3J0XG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXNcbiAgICAgICAgYm94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDAsOTAsOTAsMC41KVxuXG4uYnRuLWdcbiAgICBjb2xvcjojZmZmXG4gICAgYmFja2dyb3VuZC1jb2xvcjpjb2xvcmdcbiAgICBib3JkZXItY29sb3I6Y29sb3JnXG4gICAgJjpob3ZlclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmNvbG9yZyAtIDIwJVxuICAgICAgICBib3JkZXItY29sb3I6Y29sb3JnXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmVcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpjb2xvcmdcbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1c1xuICAgICAgICBib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMCw5MCw5MCwwLjUpXG5cbi5idG4teGxnXG4gICAgcGFkZGluZyAuN3JlbSA0cmVtXG4gICAgbGluZS1oZWlnaHQgMS44XG4gICAgZm9udC1zaXplIDE5cHhcbiAgICBmb250LXdlaWdodDogYm9sZFxuICAgIHRleHQtdHJhbnNmb3JtIHVwcGVyY2FzZVxuXG4uaGFzLWljb25cbiAgICBwb3NpdGlvbiByZWxhdGl2ZVxuICAgIGRpc3BsYXkgaW5saW5lXG4gICAgbGluZS1oZWlnaHQ6IDEuMlxuICAgIHBhZGRpbmctcmlnaHQgMTlweFxuXG4iXX0= */
