@charset "UTF-8";
sub {
  bottom: 0
}
html {
  box-sizing: border-box
}
*,
::after,
::before {
  box-sizing: inherit
}
.common-Conversion,
.common-FooterBreadcrumb,
.common-FooterCatch,
.common-FooterMailMagazine,
.common-FooterSitemap,
.common-HeaderLocal,
main {
  font-family: "Noto Sans",OpenSans,arial,helvetica,sans-serif;
  color: #111;
  background-color: #fff
}
main {
  overflow-x: hidden
}
fieldset {
  min-width: auto;
  padding: 0;
  margin: 0;
  border: 0
}
legend {
  display: block
}
a {
  -webkit-text-decoration-skip: none
}
dd {
  margin-left: 0
}
code,
kbd,
samp {
  font-family: consolas,menlo,courier,monospace;
  font-size: 1rem
}
[lang=ja] address,
[lang=ja] cite,
[lang=ja] dfn,
[lang=ja] em {
  font-style: normal
}
[tabindex="-1"]:focus {
  outline: 0!important
}
input[type=text] {
  line-height: normal
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  appearance: none
}
html[data-whatintent=keyboard] a[href]:not([disabled]):focus,
html[data-whatintent=keyboard] button:not([disabled]):focus,
html[data-whatintent=keyboard] input[type=checkbox]:not([disabled]):focus,
html[data-whatintent=keyboard] input[type=radio]:not([disabled]):focus,
html[data-whatintent=keyboard] input[type=text]:not([disabled]):focus,
html[data-whatintent=keyboard] select:not([disabled]):focus,
html[data-whatintent=keyboard] textarea:not([disabled]):focus {
  box-shadow: 0 0 6px 3px #1589ee
}
a[href]:not([disabled]):focus,
button:not([disabled]):focus,
input[type=checkbox]:not([disabled]):focus,
input[type=radio]:not([disabled]):focus,
input[type=text]:not([disabled]):focus,
select:not([disabled]):focus,
textarea:not([disabled]):focus {
  outline: 0
}
.st-GlobalFooter_PageTop {
  z-index: 50
}
.thermalSearch_Area .displaySearch-box_selector-label {
  width: 100%;
  max-width: 11.875rem;
  margin-bottom: 0;
  font-size: .875rem;
  font-weight: 700
}
.thermalSearch_Area .common-TableSystem td,
.thermalSearch_Area .common-TableSystem th {
  text-align: center
}
.thermalSearch_Area .common-TableSystem td:nth-child(2),
.thermalSearch_Area .common-TableSystem th:nth-child(2) {
  min-width: 108px
}
.thermalSearch_Area .common-TableSystem td:nth-child(4),
.thermalSearch_Area .common-TableSystem th:nth-child(4) {
  min-width: 66px
}
.thermalSearch_Area .common-TableSystem td:nth-child(5),
.thermalSearch_Area .common-TableSystem th:nth-child(5) {
  min-width: 66px
}
.thermalSearch_Area .common-TableSystem td:nth-child(6),
.thermalSearch_Area .common-TableSystem th:nth-child(6) {
  min-width: 98px
}
.thermalSearch_Area .common-TableSystem td:nth-child(7),
.thermalSearch_Area .common-TableSystem th:nth-child(7) {
  min-width: 95px
}
.thermalSearch_Area .common-TableSystem td:nth-child(8),
.thermalSearch_Area .common-TableSystem th:nth-child(8) {
  min-width: 94px
}
.thermalSearch_Area .common-TableSystem td:nth-child(9),
.thermalSearch_Area .common-TableSystem th:nth-child(9) {
  min-width: 90px
}
.thermalSearch_Area .common-TableSystem tbody tr:nth-child(even) {
  background-color: #f6f7f9
}
.thermalSearch_Area .common-ButtonSub_Inner {
  text-align: center
}
.thermalSearch_Area .common-ButtonSub_Inner > span {
  display: inline-block;
  width: 100%;
  max-width: 20.625rem;
  vertical-align: bottom
}
.thermalSearch_Area .common-ButtonSub_Inner button {
  position: relative;
  display: table;
  width: 100%;
  overflow: hidden;
  text-decoration: none;
  background-color: #fff;
  border: .0625rem solid #e6e6e6;
  border-radius: .25rem;
  box-shadow: 0 0 12px rgba(0,0,0,.16)
}
.thermalSearch_Area .common-ButtonSub_Inner button > span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3.5rem;
  padding: .75rem 1.875rem .75rem 3.75rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 150%;
  color: #111;
  text-align: center;
  vertical-align: middle
}
.thermalSearch_Area .common-ButtonSub_Inner button > span.hvr-sweep-to-right::before {
  background-color: #f6f7f9
}
.thermalSearch_Area .common-ButtonSub_Inner button > span.hvr-sweep-to-left::before {
  background-color: #f6f7f9
}
.thermalSearch_Area .common-ButtonSub_Inner button > span.hvr-sweep-to-bottom::before {
  background-color: #f6f7f9
}
.thermalSearch_Area .common-ButtonSub_Inner button svg {
  position: absolute;
  top: 50%;
  left: 2.5rem;
  z-index: 10;
  width: 1.25rem;
  height: 1.25rem;
  fill: #df0522;
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%)
}
@media print,
screen and (min-width:22.5em) {
  .thermalSearch_Area .common-ButtonSub_Inner button svg {
    left: 3.125rem
  }
}
@media print,
screen and (min-width:48em) {
  .thermalSearch_Area .common-ButtonSub_Inner button svg {
    left: 4.625rem
  }
}
@media print,
screen and (min-width:48em) {
  .thermalSearch_Area .common-ButtonSub {
    margin: 0
  }
}
.thermalSearch_Area .common-TableSystem_Main {
  overflow-x: auto
}
.thermalSearch_Area .common-TableSystem_Scrollable,
.thermalSearch_Area .common-TableSystem_ShadowLeft,
.thermalSearch_Area .common-TableSystem_ShadowRight {
  display: block
}
.thermalSearch_Area .common-TableSystem_ShadowLeft,
.thermalSearch_Area .common-TableSystem_ShadowRight {
  height: 100%
}
.thermalSearch_Area .common-TableSystem_Scrollable {
  top: 120px;
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0)
}
.displaySearch-box {
  position: relative;
  padding: 1.3125rem 1.3125rem 2.6875rem;
  margin-bottom: 2rem;
  border: solid 3px #e6e6e6
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box {
    padding: 1.875rem;
    margin-bottom: 2.5rem;
    border: solid 6px #e6e6e6
  }
}
.displaySearch-box_selector-container {
  display: flex;
  flex-direction: column
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_selector-container {
    flex-direction: row
  }
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_selector-list .displaySearch-box_selector-container {
    align-items: center
  }
}
.displaySearch-box_selector-container + .displaySearch-box_selector-container {
  margin-top: 1.875rem
}
.displaySearch-box_detailLine {
  padding-top: 1rem;
  margin-top: 1.5rem;
  text-align: center;
  border-top: solid 2px #e6e6e6
}
.displaySearch-box_filter-wrap {
  display: flex;
  flex-wrap: wrap;
  row-gap: 1.25rem;
  -webkit-column-gap: .625rem;
  -moz-column-gap: .625rem;
  column-gap: .625rem
}
@media print,
screen and (min-width:22.5em) {
  .displaySearch-box_filter-wrap {
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem
  }
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_filter-wrap {
    -webkit-column-gap: .625rem;
    -moz-column-gap: .625rem;
    column-gap: .625rem;
    width: 71.1111111111%
  }
}
@media print,
screen and (min-width:64em) {
  .displaySearch-box_filter-wrap {
    -webkit-column-gap: 2.5rem;
    -moz-column-gap: 2.5rem;
    column-gap: 2.5rem
  }
}
.displaySearch-box_filter-label {
  width: calc((100% - 20px)/ 2)
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_filter-label {
    width: calc((100% - 40px)/ 3)
  }
}
@media print,
screen and (min-width:64em) {
  .displaySearch-box_filter-label {
    width: calc((100% - 60px)/ 4)
  }
}
@media print,
screen and (min-width:80em) {
  .displaySearch-box_filter-label {
    width: calc((100% - 120px)/ 4)
  }
}
.displaySearch-box_filter-label > span {
  font-size: 1rem
}
.displaySearch-box_filter-label > span > span {
  font-size: .875rem
}
.displaySearch-box_filter-label > span > span:first-child {
  margin-left: .1875rem
}
.displaySearch-box_filter-label > span > span + span {
  margin-left: .5rem;
  color: #888
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_filter-label > span > span + span {
    margin-left: .125rem
  }
}
.displaySearch-box_filter-checkbox {
  display: none
}
.displaySearch-box_filter-checkbox + span {
  position: relative;
  display: inline-block;
  padding-left: 2rem;
  cursor: pointer
}
.displaySearch-box_filter-checkbox + span::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  background-color: #f8f8f8;
  border: solid 2px #ccc;
  border-radius: 4px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.displaySearch-box_filter-checkbox + span::after {
  position: absolute;
  top: .375rem;
  left: .3125rem;
  display: none;
  width: .875rem;
  height: .5rem;
  content: "";
  border-bottom: solid 2px #fff;
  border-left: solid 2px #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
.displaySearch-box_filter-checkbox:checked + span::before {
  background-color: #666;
  border-color: #666
}
.displaySearch-box_filter-checkbox:checked + span::after {
  display: block
}
.displaySearch-box_selector-list {
  display: flex;
  flex-flow: column wrap;
  row-gap: 1rem;
  margin-top: 1rem
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_selector-list {
    flex-direction: row;
    row-gap: 1.5rem;
    -webkit-column-gap: 1.875rem;
    -moz-column-gap: 1.875rem;
    column-gap: 1.875rem;
    margin-top: 1.5rem
  }
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_selector-list .displaySearch-box_selector-container {
    width: calc((100% - 30px)/ 2)
  }
}
.displaySearch-box_selector-list .displaySearch-box_selector-label {
  width: 100%;
  max-width: 8rem
}
.displaySearch-box_searchBtn-wrap {
  margin-top: 1.25rem;
  text-align: center
}
.displaySearch-box_resetBtn {
  position: absolute;
  right: 1.3125rem;
  bottom: 1.8125rem;
  padding: 0;
  font-size: .875rem;
  font-weight: 700;
  line-height: 130%;
  color: #111;
  text-decoration: underline;
  cursor: pointer;
  background-color: transparent;
  border: none;
  outline: 0;
  transition-timing-function: linear;
  transition-duration: .2s;
  -webkit-appearance: none;
  appearance: none
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_resetBtn {
    right: 2.125rem;
    bottom: 3.375rem
  }
}
html[data-whatintent=keyboard] .displaySearch-box_resetBtn:not(.-disabled):hover,
html[data-whatintent=keyboard] .displaySearch-box_resetBtn:not(:disabled):hover,
html[data-whatintent=mouse] .displaySearch-box_resetBtn:not(.-disabled):hover,
html[data-whatintent=mouse] .displaySearch-box_resetBtn:not(:disabled):hover {
  color: #df0522
}
.displaySearch-box_moreBtn {
  padding: 0;
  font-size: .875rem;
  font-weight: 700;
  line-height: 130%;
  color: #111;
  text-decoration: underline;
  cursor: pointer;
  background-color: transparent;
  border: none;
  outline: 0;
  transition-timing-function: linear;
  transition-duration: .2s;
  -webkit-appearance: none;
  appearance: none
}
html[data-whatintent=keyboard] .displaySearch-box_moreBtn:not(.-disabled):hover,
html[data-whatintent=keyboard] .displaySearch-box_moreBtn:not(:disabled):hover,
html[data-whatintent=mouse] .displaySearch-box_moreBtn:not(.-disabled):hover,
html[data-whatintent=mouse] .displaySearch-box_moreBtn:not(:disabled):hover {
  color: #df0522
}
.displaySearch-box_moreBtn svg {
  display: inline-block;
  width: .75rem;
  height: .75rem;
  margin-left: .375rem;
  fill: #df0522
}
.displaySearch-box_searchBtn {
  padding: 0;
  cursor: pointer;
  background-color: transparent;
  border: none;
  outline: 0;
  -webkit-appearance: none;
  appearance: none
}
.displaySearch-box_searchBtn-num {
  width: 1.25rem;
  color: #df0522;
  text-align: right
}
.displaySearch-box_filter-wrap {
  position: relative
}
.displaySearch-box_filter-wrap select {
  width: 100%;
  padding: .125rem 1.75rem .125rem .875rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
  background-color: #fff;
  border: 2px solid #e6e6e6;
  border-radius: 4px;
  -webkit-appearance: none;
  appearance: none
}
.displaySearch-box_filter-wrap--select {
  width: 100%;
  max-width: 400px
}
.displaySearch-box_filter-wrap--select::after {
  position: absolute;
  top: 50%;
  right: .875rem;
  display: block;
  width: .625rem;
  height: .625rem;
  content: "";
  background-image: url('data:image/svg+xml;utf8,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 7 10" xml:space="preserve"><path fill="%23df0522" d="M0.8,8.8L4.6,5L0.8,1.2L2,0l5,5l-5,5L0.8,8.8z"/></svg>');
  background-size: 10px 10px;
  -webkit-transform: translate(0,-50%) rotate(90deg);
  transform: translate(0,-50%) rotate(90deg)
}
.displaySearch-box_filter-wrap--checkbox {
  margin-top: 1rem
}
@media print,
screen and (min-width:48em) {
  .displaySearch-box_filter-wrap--checkbox {
    padding-top: .3125rem;
    margin-top: 0
  }
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInByZGN0L2J0b2IvY3NzL2Jhc2UvdmFyaWFibGUvX2dsb2JhbC5zY3NzIiwicHJkY3QvYnRvYi9jc3MvYmFzZS9fYmFzZS5zY3NzIiwicHJkY3QvdGhlcm1hbC1wcmludGhlYWRzL2Nzcy90aGVybWFsU2VhcmNoLmNzcyIsInByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fd2hhdGlucHV0LnNjc3MiLCJwcmRjdC90aGVybWFsLXByaW50aGVhZHMvY3NzL3RoZXJtYWxTZWFyY2guc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9zYXNzLW1xL19tcS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUEwSkE7QUFDRSxRQUFBOztBQ3pKRjtBQUNFLFlBQUE7O0FBR0Y7QUNRQTtBQURBO0FESkUsWUFBQTs7QUNlRjtBQURBO0FBSEE7QUFDQTtBQUNBO0FBSEE7QURQQTtBQU9FLGFBQUEsV0FBQSxDQUFBLFFBQUEsQ0FBQSxLQUFBLENBQUEsU0FBQSxDQUFBO0FBQ0EsT0FBQTtBQUNBLGtCQUFBOztBQU1GO0FBQ0UsWUFBQTs7QUFNRjtBQUNFLFdBQUE7QUFDQSxTQUFBO0FBQ0EsUUFBQTtBQUNBLFFBQUE7O0FBTUY7QUFDRSxTQUFBOztBQVFGO0FBQ0UsOEJBQUE7O0FBTUY7QUFDRSxhQUFBOztBQUdGO0FDT0E7QUFDQTtBRExFLGFBQUEsUUFBQSxDQUFBLEtBQUEsQ0FBQSxPQUFBLENBQUE7QUFDQSxXQUFBOztBQ2NGO0FESkU7QUNLRjtBQUZBO0FERkksWUFBQTs7QUFRSjtBQUNFLFNBQUE7O0FBT0Y7QUFDRSxhQUFBOztBQ1dGO0FETEE7QUFFRSxvQkFBQTtBQUFBLFlBQUE7O0FFdkdBO0FEbUhGO0FBSUE7QUFEQTtBQURBO0FBR0E7QUFKQTtBRENJLFlBQUEsRUFBQSxFQUFBLElBQUEsSUFBQTs7QUFHRjtBQ0lGO0FBSUE7QUFEQTtBQURBO0FBR0E7QUFKQTtBREpJLFNBQUE7O0FBT0o7QUFDRSxTQUFBOztBR3RGQTtBQUNFLE9BQUE7QUFD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QUFDRSxTQUFBO0FBQ0EsUUFBQTtBQUNBLGtCQUFBO0FBQ0EsUUFBQTtBQUNBLFNBQUE7QUFDQSxvQkFBQTtBQUFBLFlBQUE7O0FBR0Y7QUFDRSxPQUFBO0FBQ0EsT0FBQTtBQUNBLFlBQUE7O0FBR0Y7QUFDRSxVQUFBOztBQUVBO0FBQ0UsT0FBQTtBQUNBLFNBQUEsUUFBQSxRQUFBLFFBQUE7QUFDQSxXQUFBO0FBQ0EsYUFBQTtBQUNBLGFBQUE7QUFDQSxrQkFBQTtBQUNBLFFBQUEsSUFBQSxNQUFBO0FBQ0EsZUFBQTtBQUNBLG9CQUFBO0FBQ0EsWUFBQTs7QUFJSjtBQUNFLE9BQUE7QUFDQSxXQUFBOztBQUVBO0FBQ0UsVUFBQTtBQUNBLEtBQUE7QUFDQSxPQUFBO0FBQ0EsU0FBQTtBQUNBLE9BQUE7QUFDQSxRQUFBO0FBQ0EsU0FBQTtBQUNBLGtCQUFBO0FBQ0EsaUJBQUEsS0FBQTtBQUNBLG1CQUFBLGtCQUFBO0FBQUEsV0FBQSxrQkFBQTs7QUFJSjtBQUNFLFlBQUE7O0FDMVNBO0FBQUE7QUR5U0Y7QUFJSSxhQUFBO0FBQ0EsWUFBQSIsImZpbGUiOiJwcmRjdC90aGVybWFsLXByaW50aGVhZHMvY3NzL3RoZXJtYWxTZWFyY2guY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIOWRveWQjeimj+WJh1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vICRbZWxlbWVudC1vci1uYW1lc3BhY2UtXVtwcm9wZXJ0eS1uYW1lXVstdmFyaWFudC1uYW1lXVstYnJlYWtwb2ludF1cbi8vICRbZWxlbWVudC1vci1uYW1lc3BhY2UtXTog5oyH5a6a44GZ44KL6KaB57Sg44Gu5ZCN5YmN44CC5YWo5L2T44Gn5L2/44GG5aC05ZCI44GvYGdsb2JhbC1g44CB44Kr44Op44O844OR44Os44OD44OI44GvYGNvbG9yLWDjgIJcbi8vIFtwcm9wZXJ0eS1uYW1lXTog44OX44Ot44OR44OG44Kj5YCk77yI55yB55Wl5LiN5Y+v77yJ44CC44OX44Ot44OR44OG44Kj5YCk44Gn6KGo54++44Gn44GN44Gq44GE5aC05ZCI44Gv55So6YCU44KS56uv55qE44Gr6KGo44GX44Gf5ZCN5YmN44CCXG4vLyBbLXZhcmlhbnQtbmFtZV06IOeKtuaFi+WkieWMluOChOODkOODquOCqOODvOOCt+ODp+ODs+OBruWQjeWJjeOAglxuLy8gWy1icmVha3BvaW50XTog44OW44Os44Kk44Kv44Od44Kk44Oz44OI44Gu44Kt44O844CCXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb2xvclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8g44Kr44Op44O844OR44Os44OD44OIXG4kY29sb3ItbWFpbjogI2Y2ZjdmOSAhZGVmYXVsdDtcbiRjb2xvci1zdWI6ICMyZDMzMzggIWRlZmF1bHQ7XG4kY29sb3ItYWNjZW50OiAjZGYwNTIyICFkZWZhdWx0O1xuJGNvbG9yLWFjY2VudC1kYXJrOiAjOTYwMTE5ICFkZWZhdWx0O1xuJGNvbG9yLWFjY2VudC1kYXJrMjogI2E3MGExZiAhZGVmYXVsdDtcbiRjb2xvci1saW5rOiAjZGYwNTIzICFkZWZhdWx0O1xuXG4vLyDjgrDjg6zjg7zjgrnjgrHjg7zjg6tcbiRjb2xvci1ibGFjazE6ICMxMTEgIWRlZmF1bHQ7XG4kY29sb3ItYmxhY2syOiAjNDQ0ICFkZWZhdWx0O1xuJGNvbG9yLWJsYWNrMzogIzY2NiAhZGVmYXVsdDtcbiRjb2xvci1ibGFjazQ6ICM0NzRhNjMgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheTE6ICNlNmU2ZTYgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheTI6ICNlY2VmZjMgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheTM6ICNmNmY3ZjkgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheTQ6ICM3NDc0ODYgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheTU6ICNkZGQgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheTY6ICNjY2MgIWRlZmF1bHQ7XG4kY29sb3ItZ3JheTc6ICM5OTkgIWRlZmF1bHQ7XG4kY29sb3Itd2hpdGU6ICNmZmYgIWRlZmF1bHQ7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUeXBvZ3JhcGh5XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyDjg5Xjgqnjg7Pjg4jjgqbjgqfjgqTjg4hcbiRsaWdodDogMzAwICFkZWZhdWx0O1xuJHJlZ3VsYXI6IDQwMCAhZGVmYXVsdDtcbiRtZWRpdW06IDUwMCAhZGVmYXVsdDtcbiRib2xkOiA3MDAgIWRlZmF1bHQ7XG5cbi8vIOODmeODvOOCueOBq+OBquOCi2xpbmUtaGVpZ2h0XG4kZ2xvYmFsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbi8vIOOCt+OCueODhuODoOODleOCqeODs+ODiFxuJGdsb2JhbC1mb250LWZhbWlseS1zYW5zLXNlcmlmOiBcIua4uOOCtOOCt+ODg+OCr+S9k1wiLCB5dWdvdGhpYywgXCLmuLjjgrTjgrfjg4Pjgq9cIiwgXCJZdSBHb3RoaWNcIixcbiAgXCLjg5Ljg6njgq7jg47op5LjgrQgUHJvXCIsIFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIsIFwi44Oh44Kk44Oq44KqXCIsIG1laXJ5bywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRnbG9iYWwtZm9udC1mYW1pbHktYWxwaGFiZXQ6IFwiTm90byBTYW5zXCIsIFwiT3BlblNhbnNcIiwgYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRnbG9iYWwtZm9udC1mYW1pbHktbW9ub3NwYWNlOiBjb25zb2xhcywgbWVubG8sIGNvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExheW91dFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8g44Kz44Oz44OG44Oz44OE44Gu5pyA5aSn5bmFKOWkluaeoClcbiRnbG9iYWwtbWF4LXdpZHRoLXdyYXA6IDEzNTBweCAhZGVmYXVsdDtcblxuLy8g44Kz44Oz44OG44Oz44OE44Gu5pyA5aSn5bmFXG4kZ2xvYmFsLW1heC13aWR0aDogMTMxMnB4ICFkZWZhdWx0O1xuXG4vLyDjg6rjg7zjg4nmlofjga7mnIDlpKfluYVcbiRsZWFkLXdpZHRoLW1kOiA5MjBweCAhZGVmYXVsdDtcblxuLy8g44Kw44Oq44OD44OJ44K344K544OG44Og44Gu44Ks44K/44O85bmFXG4kZ3JpZC1jb2x1bW4tZ2FwOiAxNXB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWdhcDogMzVweCAhZGVmYXVsdDtcbiRncmlkLWNvbHVtbi1nYXAtbWQ6IDMwcHggIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctZ2FwLW1kOiA1MHB4ICFkZWZhdWx0O1xuXG4vLyDjgrPjg7Pjg4bjg4rjga7kvZnnmb1cbiRjb25pdGFuZXItcGFkZGluZzogcmVtKDQ1KSAwIHJlbSg2MCkgIWRlZmF1bHQ7XG4kY29uaXRhbmVyLXBhZGRpbmctbWQ6IHJlbSg3MCkgMCByZW0oMTAwKSAhZGVmYXVsdDtcbiRjb25pdGFuZXItYmctcGFkZGluZzogcmVtKDQ1KSAwIHJlbSg1MCkgIWRlZmF1bHQ7XG4kY29uaXRhbmVyLWJnLXBhZGRpbmctbWQ6IHJlbSg3MCkgMCByZW0oODApICFkZWZhdWx0O1xuXG4vLyDjgrvjgq/jgrfjg6fjg7Pjga7kvZnnmb1cbiRzZWN0aW9uMi1tYXJnaW46IHJlbSg4MCkgMCAwICFkZWZhdWx0O1xuJHNlY3Rpb24yLW1hcmdpbi1tZDogcmVtKDgwKSAwIDAgIWRlZmF1bHQ7XG4kc2VjdGlvbjItZGl2aWRlci1tYXJnaW46IHJlbSg1NikgMCAwICFkZWZhdWx0O1xuJHNlY3Rpb24yLWRpdmlkZXItbWFyZ2luLW1kOiByZW0oODApIDAgMCAhZGVmYXVsdDtcbiRzZWN0aW9uMy1tYXJnaW46IHJlbSg0MCkgMCAwICFkZWZhdWx0O1xuJHNlY3Rpb24zLW1hcmdpbi1tZDogcmVtKDQwKSAwIDAgIWRlZmF1bHQ7XG4kc2VjdGlvbjMtZGl2aWRlci1tYXJnaW46IHJlbSg0MCkgMCAwICFkZWZhdWx0O1xuJHNlY3Rpb24zLWRpdmlkZXItbWFyZ2luLW1kOiByZW0oODApIDAgMCAhZGVmYXVsdDtcbiRzZWN0aW9uNC1tYXJnaW46IHJlbSgzNSkgMCAwICFkZWZhdWx0O1xuJHNlY3Rpb240LW1hcmdpbi1tZDogcmVtKDUwKSAwIDAgIWRlZmF1bHQ7XG4kc2VjdGlvbjUtbWFyZ2luOiByZW0oMzApIDAgMCAhZGVmYXVsdDtcbiRzZWN0aW9uNS1tYXJnaW4tbWQ6IHJlbSgzMCkgMCAwICFkZWZhdWx0O1xuXG4vLyDopovlh7rjgZfjga7kvZnnmb1cbiR0aXRsZS1tYXJnaW46IDAgMCByZW0oMjUpICFkZWZhdWx0O1xuJHRpdGxlLW1hcmdpbi1tZDogMCAwIHJlbSg0MCkgIWRlZmF1bHQ7XG4kaGVhZGluZzItbWFyZ2luOiAwIDAgcmVtKDI1KSAhZGVmYXVsdDtcbiRoZWFkaW5nMi1tYXJnaW4tbWQ6IDAgMCByZW0oNDApICFkZWZhdWx0O1xuJGhlYWRpbmczLW1hcmdpbjogMCAwIHJlbSgyNSkgIWRlZmF1bHQ7XG4kaGVhZGluZzMtbWFyZ2luLW1kOiAwIDAgcmVtKDQwKSAhZGVmYXVsdDtcbiRoZWFkaW5nNC1tYXJnaW46IDAgMCByZW0oMTUpICFkZWZhdWx0O1xuJGhlYWRpbmc0LW1hcmdpbi1tZDogMCAwIHJlbSgyNSkgIWRlZmF1bHQ7XG4kaGVhZGluZzUtbWFyZ2luOiAwIDAgcmVtKDE1KSAhZGVmYXVsdDtcbiRoZWFkaW5nNS1tYXJnaW4tbWQ6IDAgMCByZW0oMjUpICFkZWZhdWx0O1xuXG4vLyDjg5bjg63jg4Pjgq/jgajjg4bjgq3jgrnjg4jjga7kvZnnmb1cbiRibG9jay1tYXJnaW46IHJlbSg0MCkgMCAwICFkZWZhdWx0O1xuJGJsb2NrLW1hcmdpbi1tZDogcmVtKDUwKSAwIDAgIWRlZmF1bHQ7XG4kYmxvY2stZGl2aWRlci1tYXJnaW46IHJlbSgyMCkgMCAwICFkZWZhdWx0O1xuJGJsb2NrLWRpdmlkZXItbWFyZ2luLW1kOiByZW0oNTApIDAgMCAhZGVmYXVsdDtcbiRsZWFkLW1hcmdpbjogMCAwIHJlbSgzNSkgIWRlZmF1bHQ7XG4kbGVhZC1tYXJnaW4tbWQ6IDAgMCByZW0oNTApICFkZWZhdWx0O1xuJHRleHQtbWFyZ2luOiByZW0oNDApIDAgMCAhZGVmYXVsdDtcbiR0ZXh0LW1hcmdpbi1tZDogcmVtKDQwKSAwIDAgIWRlZmF1bHQ7XG4kc21hbGwtdGV4dC1tYXJnaW46IHJlbSgxNSkgMCAwICFkZWZhdWx0O1xuJHNtYWxsLXRleHQtbWFyZ2luLW1kOiByZW0oMjApIDAgMCAhZGVmYXVsdDtcbiRpbWFnZS1tYXJnaW46IHJlbSgyNSkgMCAwICFkZWZhdWx0O1xuJGltYWdlLW1hcmdpbi1tZDogcmVtKDQwKSAwIDAgIWRlZmF1bHQ7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBbmltYXRpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRvcGFjaXR5OiAwLjUgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycyAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFkZWZhdWx0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRm9ybVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGZvcm0tYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NiAhZGVmYXVsdDtcbiRmb3JtLWJvZGVyLWNvbG9yOiAjNzY3Njc2ICFkZWZhdWx0O1xuJGZvcm0tYm9yZGVyLXJhZGl1czogcmVtKDMpICFkZWZhdWx0O1xuJGZvcm0tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcyAhZGVmYXVsdDtcbiRmb3JtLXRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlci1jb2xvciwgYm94LXNoYWRvdywgYmFja2dyb3VuZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWJvcmRlci1jb2xvci1mb2N1czogIzE1ODllZSAhZGVmYXVsdDtcbiRmb3JtLWJveC1zaGFkb3ctZm9jdXM6IDAgMCA2cHggM3B4ICMxNTg5ZWUgIWRlZmF1bHQ7XG4kZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogIzgxODE4MSAhZGVmYXVsdDtcbiRmb3JtLWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG4kZm9ybS1vcGFjaXR5LWRpc2FibGVkOiAxICFkZWZhdWx0O1xuJGZvcm0tYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogIzllOWU5ZSAhZGVmYXVsdDtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIGJ1dHRvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gUEPjg5zjgr/jg7Pjga7luYVcbiRidG4td2lkdGgtbWQ6IHJlbSgzNDUpICFkZWZhdWx0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gc3ViXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5zdWIge1xuICBib3R0b206IDA7XG59XG4iLCIvKiAjYmFzZVxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxubWFpbixcbi5jb21tb24tSGVhZGVyTG9jYWwsXG4uY29tbW9uLUZvb3RlckNhdGNoLFxuLmNvbW1vbi1Gb290ZXJNYWlsTWFnYXppbmUsXG4uY29tbW9uLUZvb3RlclNpdGVtYXAsXG4uY29tbW9uLUZvb3RlckJyZWFkY3J1bWIsXG4uY29tbW9uLUNvbnZlcnNpb24ge1xuICBmb250LWZhbWlseTogJGdsb2JhbC1mb250LWZhbWlseS1hbHBoYWJldDtcbiAgY29sb3I6ICRjb2xvci1ibGFjazE7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbn1cblxuLyoqXG4gKiDjg6HjgqTjg7PjgrPjg7Pjg4bjg7Pjg4TlhoXjga/mqKrjgrnjgq/jg63jg7zjg6vjgpLjgZXjgZvjgb7jgZvjgpPjgIJcbiAqL1xubWFpbiB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLyoqXG4gKiDjg4fjg5Xjgqnjg6vjg4jjga7jgrnjgr/jgqTjg6vjgpLjg6rjgrvjg4Pjg4jjgZfjgb7jgZnjgIJcbiAqL1xuZmllbGRzZXQge1xuICBtaW4td2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIG5vcm1hbGl6ZS5jc3Pjga7jgrnjgr/jgqTjg6vjgpLjg6rjgrvjg4Pjg4jjgZfjgabjgIFkaXbjga7jgojjgYbjgavmibHjgYTjgb7jgZnjgIJcbiAqL1xubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogaU9T44GuU2FmYXJp44GoQ2hyb21l44Gn44CBYHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO2Djga7nvavnt5rjgYxcbiAqIOOCsOODquODleOChOODh+OCo+OCu+ODs+ODgOOBp+mAlOWIh+OCjOOBquOBhOOCiOOBhuOBq+OBl+OBvuOBmeOAglxuICogaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9hbG1hbmFjL3Byb3BlcnRpZXMvdC90ZXh0LWRlY29yYXRpb24tc2tpcC9cbiAqL1xuYSB7XG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG59XG5cbi8qKlxuICogYGR0YOOBqGBkZGDjga7lt6bnq6/jgpLmj4PjgYjjgb7jgZnjgIJcbiAqL1xuZGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGdsb2JhbC1mb250LWZhbWlseS1tb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLyoqXG4gKiDml6XmnKzoqp7jgafjga/mlpzkvZPjgpLkvb/nlKjjgZfjgarjgYTjgZ/jgoHjg6rjgrvjg4Pjg4jjgZfjgb7jgZnjgIJcbiAqL1xuY2l0ZSxcbmVtLFxuYWRkcmVzcyxcbmRmbiB7XG4gIFtsYW5nPVwiamFcIl0gJiB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG59XG5cbi8qKlxuICog44Kt44O844Oc44O844OJ44Gn44Ki44Kv44K744K544Gn44GN44Gq44GE6KaB57Sg44Gu44OV44Kp44O844Kr44K56KGo56S644KS5raI44GX44G+44GZ44CCXG4gKiBDcmVkaXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9zdWl0Y3NzL2Jhc2VcbiAqL1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogbm9ybWFsaXplLmNzc+OBrmBsaW5lLWhlaWdodGDjgpLjg6rjgrvjg4Pjg4jjgZfjgb7jgZnjgIJcbiAqIHBsYWNlaG9sZGVy44GM5LiK44Gr44K644Os44KL44Gu44KS6Ziy44GO44G+44GZ44CCXG4gKi9cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBJReOBqEVkZ2Xjga/jgrnjg5Tjg7Pjg5zjgr/jg7PjgavmnKrlr77lv5zjga7jgZ/jgoHjgIFDaHJvbWXjgahGaXJlRm9444Gn6Z2e6KGo56S644Gr44GX44G+44GZ44CCXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIOODleOCqeODvOOCq+OCueWPr+iDveOBquimgee0oOOBruOCouOCpuODiOODqeOCpOODs+OCueOCv+OCpOODq+OCkuS4gOaLrOOBp+WkieabtOOBl+OBvuOBmeOAglxuICovXG5hW2hyZWZdOm5vdChbZGlzYWJsZWRdKSxcbmJ1dHRvbjpub3QoW2Rpc2FibGVkXSksXG50ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSksXG5pbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoW2Rpc2FibGVkXSksXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KFtkaXNhYmxlZF0pLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdChbZGlzYWJsZWRdKSxcbnNlbGVjdDpub3QoW2Rpc2FibGVkXSkge1xuICBAaW5jbHVkZSBmb2N1cy13aXRoLWtleWJvYXJkIHtcbiAgICBib3gtc2hhZG93OiAkZm9ybS1ib3gtc2hhZG93LWZvY3VzO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG4vKipcbiAqIOOCsOODreODvOODkOODq+ODleODg+OCv+ODvOOBruOCueOCv+OCpOODq+OCkuS4gOmDqOS4iuabuOOBjei/veWKoOOBl+OBvuOBmeOAglxuICovXG4uc3QtR2xvYmFsRm9vdGVyX1BhZ2VUb3Age1xuICB6LWluZGV4OiA1MDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbnN1YiB7XG4gIGJvdHRvbTogMDtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9hdC1pbXBvcnQtbm8tcGFydGlhbC1sZWFkaW5nLXVuZGVyc2NvcmUgKi9cbi8qICNiYXNlXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5tYWluLFxuLmNvbW1vbi1IZWFkZXJMb2NhbCxcbi5jb21tb24tRm9vdGVyQ2F0Y2gsXG4uY29tbW9uLUZvb3Rlck1haWxNYWdhemluZSxcbi5jb21tb24tRm9vdGVyU2l0ZW1hcCxcbi5jb21tb24tRm9vdGVyQnJlYWRjcnVtYixcbi5jb21tb24tQ29udmVyc2lvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2Fuc1wiLCBcIk9wZW5TYW5zXCIsIGFyaWFsLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMTExO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4vKipcbiAqIOODoeOCpOODs+OCs+ODs+ODhuODs+ODhOWGheOBr+aoquOCueOCr+ODreODvOODq+OCkuOBleOBm+OBvuOBm+OCk+OAglxuICovXG5tYWluIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4vKipcbiAqIOODh+ODleOCqeODq+ODiOOBruOCueOCv+OCpOODq+OCkuODquOCu+ODg+ODiOOBl+OBvuOBmeOAglxuICovXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogYXV0bztcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8qKlxuICogbm9ybWFsaXplLmNzc+OBruOCueOCv+OCpOODq+OCkuODquOCu+ODg+ODiOOBl+OBpuOAgWRpduOBruOCiOOBhuOBq+aJseOBhOOBvuOBmeOAglxuICovXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBpT1Pjga5TYWZhcmnjgahDaHJvbWXjgafjgIFgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7YOOBrue9q+e3muOBjFxuICog44Kw44Oq44OV44KE44OH44Kj44K744Oz44OA44Gn6YCU5YiH44KM44Gq44GE44KI44GG44Gr44GX44G+44GZ44CCXG4gKiBodHRwczovL2Nzcy10cmlja3MuY29tL2FsbWFuYWMvcHJvcGVydGllcy90L3RleHQtZGVjb3JhdGlvbi1za2lwL1xuICovXG5hIHtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTtcbn1cblxuLyoqXG4gKiBgZHRg44GoYGRkYOOBruW3puerr+OCkuaPg+OBiOOBvuOBmeOAglxuICovXG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBjb25zb2xhcywgbWVubG8sIGNvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4vKipcbiAqIOaXpeacrOiqnuOBp+OBr+aWnOS9k+OCkuS9v+eUqOOBl+OBquOBhOOBn+OCgeODquOCu+ODg+ODiOOBl+OBvuOBmeOAglxuICovXG5bbGFuZz1qYV0gY2l0ZSxcbltsYW5nPWphXSBlbSxcbltsYW5nPWphXSBhZGRyZXNzLFxuW2xhbmc9amFdIGRmbiB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiDjgq3jg7zjg5zjg7zjg4njgafjgqLjgq/jgrvjgrnjgafjgY3jgarjgYTopoHntKDjga7jg5Xjgqnjg7zjgqvjgrnooajnpLrjgpLmtojjgZfjgb7jgZnjgIJcbiAqIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZVxuICovXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gKiBub3JtYWxpemUuY3Nz44GuYGxpbmUtaGVpZ2h0YOOCkuODquOCu+ODg+ODiOOBl+OBvuOBmeOAglxuICogcGxhY2Vob2xkZXLjgYzkuIrjgavjgrrjg6zjgovjga7jgpLpmLLjgY7jgb7jgZnjgIJcbiAqL1xuaW5wdXRbdHlwZT10ZXh0XSB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogSUXjgahFZGdl44Gv44K544OU44Oz44Oc44K/44Oz44Gr5pyq5a++5b+c44Gu44Gf44KB44CBQ2hyb21l44GoRmlyZUZveOOBp+mdnuihqOekuuOBq+OBl+OBvuOBmeOAglxuICovXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICog44OV44Kp44O844Kr44K55Y+v6IO944Gq6KaB57Sg44Gu44Ki44Km44OI44Op44Kk44Oz44K544K/44Kk44Or44KS5LiA5ous44Gn5aSJ5pu044GX44G+44GZ44CCXG4gKi9cbmh0bWxbZGF0YS13aGF0aW50ZW50PWtleWJvYXJkXSBhW2hyZWZdOm5vdChbZGlzYWJsZWRdKTpmb2N1cyxcbmh0bWxbZGF0YS13aGF0aW50ZW50PWtleWJvYXJkXSBidXR0b246bm90KFtkaXNhYmxlZF0pOmZvY3VzLFxuaHRtbFtkYXRhLXdoYXRpbnRlbnQ9a2V5Ym9hcmRdIHRleHRhcmVhOm5vdChbZGlzYWJsZWRdKTpmb2N1cyxcbmh0bWxbZGF0YS13aGF0aW50ZW50PWtleWJvYXJkXSBpbnB1dFt0eXBlPXRleHRdOm5vdChbZGlzYWJsZWRdKTpmb2N1cyxcbmh0bWxbZGF0YS13aGF0aW50ZW50PWtleWJvYXJkXSBpbnB1dFt0eXBlPXJhZGlvXTpub3QoW2Rpc2FibGVkXSk6Zm9jdXMsXG5odG1sW2RhdGEtd2hhdGludGVudD1rZXlib2FyZF0gaW5wdXRbdHlwZT1jaGVja2JveF06bm90KFtkaXNhYmxlZF0pOmZvY3VzLFxuaHRtbFtkYXRhLXdoYXRpbnRlbnQ9a2V5Ym9hcmRdIHNlbGVjdDpub3QoW2Rpc2FibGVkXSk6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDNweCAjMTU4OWVlO1xufVxuYVtocmVmXTpub3QoW2Rpc2FibGVkXSk6Zm9jdXMsXG5idXR0b246bm90KFtkaXNhYmxlZF0pOmZvY3VzLFxudGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pOmZvY3VzLFxuaW5wdXRbdHlwZT10ZXh0XTpub3QoW2Rpc2FibGVkXSk6Zm9jdXMsXG5pbnB1dFt0eXBlPXJhZGlvXTpub3QoW2Rpc2FibGVkXSk6Zm9jdXMsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoW2Rpc2FibGVkXSk6Zm9jdXMsXG5zZWxlY3Q6bm90KFtkaXNhYmxlZF0pOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLyoqXG4gKiDjgrDjg63jg7zjg5Djg6vjg5Xjg4Pjgr/jg7zjga7jgrnjgr/jgqTjg6vjgpLkuIDpg6jkuIrmm7jjgY3ov73liqDjgZfjgb7jgZnjgIJcbiAqL1xuLnN0LUdsb2JhbEZvb3Rlcl9QYWdlVG9wIHtcbiAgei1pbmRleDogNTA7XG59XG5cbi50aGVybWFsU2VhcmNoX0FyZWEgLmRpc3BsYXlTZWFyY2gtYm94X3NlbGVjdG9yLWxhYmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTEuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRoLFxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRoOm50aC1jaGlsZCgyKSxcbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1UYWJsZVN5c3RlbSB0ZDpudGgtY2hpbGQoMikge1xuICBtaW4td2lkdGg6IDEwOHB4O1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRoOm50aC1jaGlsZCg0KSxcbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1UYWJsZVN5c3RlbSB0ZDpudGgtY2hpbGQoNCkge1xuICBtaW4td2lkdGg6IDY2cHg7XG59XG4udGhlcm1hbFNlYXJjaF9BcmVhIC5jb21tb24tVGFibGVTeXN0ZW0gdGg6bnRoLWNoaWxkKDUpLFxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRkOm50aC1jaGlsZCg1KSB7XG4gIG1pbi13aWR0aDogNjZweDtcbn1cbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1UYWJsZVN5c3RlbSB0aDpudGgtY2hpbGQoNiksXG4udGhlcm1hbFNlYXJjaF9BcmVhIC5jb21tb24tVGFibGVTeXN0ZW0gdGQ6bnRoLWNoaWxkKDYpIHtcbiAgbWluLXdpZHRoOiA5OHB4O1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRoOm50aC1jaGlsZCg3KSxcbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1UYWJsZVN5c3RlbSB0ZDpudGgtY2hpbGQoNykge1xuICBtaW4td2lkdGg6IDk1cHg7XG59XG4udGhlcm1hbFNlYXJjaF9BcmVhIC5jb21tb24tVGFibGVTeXN0ZW0gdGg6bnRoLWNoaWxkKDgpLFxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRkOm50aC1jaGlsZCg4KSB7XG4gIG1pbi13aWR0aDogOTRweDtcbn1cbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1UYWJsZVN5c3RlbSB0aDpudGgtY2hpbGQoOSksXG4udGhlcm1hbFNlYXJjaF9BcmVhIC5jb21tb24tVGFibGVTeXN0ZW0gdGQ6bnRoLWNoaWxkKDkpIHtcbiAgbWluLXdpZHRoOiA5MHB4O1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY3Zjk7XG59XG4udGhlcm1hbFNlYXJjaF9BcmVhIC5jb21tb24tQnV0dG9uU3ViX0lubmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLUJ1dHRvblN1Yl9Jbm5lciA+IHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDIwLjYyNXJlbTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1CdXR0b25TdWJfSW5uZXIgYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDEycHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbn1cbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1CdXR0b25TdWJfSW5uZXIgYnV0dG9uID4gc3BhbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDMuNXJlbTtcbiAgcGFkZGluZzogMC43NXJlbSAxLjg3NXJlbSAwLjc1cmVtIDMuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICBjb2xvcjogIzExMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLUJ1dHRvblN1Yl9Jbm5lciBidXR0b24gPiBzcGFuLmh2ci1zd2VlcC10by1yaWdodDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjdmOTtcbn1cbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1CdXR0b25TdWJfSW5uZXIgYnV0dG9uID4gc3Bhbi5odnItc3dlZXAtdG8tbGVmdDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjdmOTtcbn1cbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1CdXR0b25TdWJfSW5uZXIgYnV0dG9uID4gc3Bhbi5odnItc3dlZXAtdG8tYm90dG9tOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmN2Y5O1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLUJ1dHRvblN1Yl9Jbm5lciBidXR0b24gc3ZnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMi41cmVtO1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgZmlsbDogI2RmMDUyMjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMjIuNWVtKSB7XG4gIC50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1CdXR0b25TdWJfSW5uZXIgYnV0dG9uIHN2ZyB7XG4gICAgbGVmdDogMy4xMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1CdXR0b25TdWJfSW5uZXIgYnV0dG9uIHN2ZyB7XG4gICAgbGVmdDogNC42MjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1CdXR0b25TdWIge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtX01haW4ge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtX1Njcm9sbGFibGUsXG4udGhlcm1hbFNlYXJjaF9BcmVhIC5jb21tb24tVGFibGVTeXN0ZW1fU2hhZG93TGVmdCxcbi50aGVybWFsU2VhcmNoX0FyZWEgLmNvbW1vbi1UYWJsZVN5c3RlbV9TaGFkb3dSaWdodCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtX1NoYWRvd1JpZ2h0LFxuLnRoZXJtYWxTZWFyY2hfQXJlYSAuY29tbW9uLVRhYmxlU3lzdGVtX1NoYWRvd0xlZnQge1xuICBoZWlnaHQ6IDEwMCU7XG59XG4udGhlcm1hbFNlYXJjaF9BcmVhIC5jb21tb24tVGFibGVTeXN0ZW1fU2Nyb2xsYWJsZSB7XG4gIHRvcDogMTIwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xufVxuXG4uZGlzcGxheVNlYXJjaC1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEuMzEyNXJlbSAxLjMxMjVyZW0gMi42ODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBib3JkZXI6IHNvbGlkIDNweCAjZTZlNmU2O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94IHtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgYm9yZGVyOiBzb2xpZCA2cHggI2U2ZTZlNjtcbiAgfVxufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfc2VsZWN0b3ItY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5kaXNwbGF5U2VhcmNoLWJveF9zZWxlY3Rvci1jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5kaXNwbGF5U2VhcmNoLWJveF9zZWxlY3Rvci1saXN0IC5kaXNwbGF5U2VhcmNoLWJveF9zZWxlY3Rvci1jb250YWluZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbi5kaXNwbGF5U2VhcmNoLWJveF9zZWxlY3Rvci1jb250YWluZXIgKyAuZGlzcGxheVNlYXJjaC1ib3hfc2VsZWN0b3ItY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9kZXRhaWxMaW5lIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItdG9wOiBzb2xpZCAycHggI2U2ZTZlNjtcbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICByb3ctZ2FwOiAxLjI1cmVtO1xuICBjb2x1bW4tZ2FwOiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMi41ZW0pIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci13cmFwIHtcbiAgICBjb2x1bW4tZ2FwOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLXdyYXAge1xuICAgIGNvbHVtbi1nYXA6IDAuNjI1cmVtO1xuICAgIHdpZHRoOiA3MS4xMTExMTExMTExJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci13cmFwIHtcbiAgICBjb2x1bW4tZ2FwOiAyLjVyZW07XG4gIH1cbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci1sYWJlbCB7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gMjBweCkgLyAyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItbGFiZWwge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gNDBweCkgLyAzKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci1sYWJlbCB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSA2MHB4KSAvIDQpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLWxhYmVsIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDEyMHB4KSAvIDQpO1xuICB9XG59XG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLWxhYmVsID4gc3BhbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItbGFiZWwgPiBzcGFuID4gc3BhbiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLWxhYmVsID4gc3BhbiA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMC4xODc1cmVtO1xufVxuLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci1sYWJlbCA+IHNwYW4gPiBzcGFuICsgc3BhbiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbG9yOiAjODg4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci1sYWJlbCA+IHNwYW4gPiBzcGFuICsgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtO1xuICB9XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItY2hlY2tib3gge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci1jaGVja2JveCArIHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLWNoZWNrYm94ICsgc3Bhbjo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gIGJvcmRlcjogc29saWQgMnB4ICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci1jaGVja2JveCArIHNwYW46OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMzc1cmVtO1xuICBsZWZ0OiAwLjMxMjVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAwLjg3NXJlbTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjZmZmO1xuICBib3JkZXItbGVmdDogc29saWQgMnB4ICNmZmY7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLWNoZWNrYm94OmNoZWNrZWQgKyBzcGFuOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xuICBib3JkZXItY29sb3I6ICM2NjY7XG59XG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLWNoZWNrYm94OmNoZWNrZWQgKyBzcGFuOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfc2VsZWN0b3ItbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gIHJvdy1nYXA6IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZGlzcGxheVNlYXJjaC1ib3hfc2VsZWN0b3ItbGlzdCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICByb3ctZ2FwOiAxLjVyZW07XG4gICAgY29sdW1uLWdhcDogMS44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZGlzcGxheVNlYXJjaC1ib3hfc2VsZWN0b3ItbGlzdCAuZGlzcGxheVNlYXJjaC1ib3hfc2VsZWN0b3ItY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHgpIC8gMik7XG4gIH1cbn1cbi5kaXNwbGF5U2VhcmNoLWJveF9zZWxlY3Rvci1saXN0IC5kaXNwbGF5U2VhcmNoLWJveF9zZWxlY3Rvci1sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDhyZW07XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9zZWFyY2hCdG4td3JhcCB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X3Jlc2V0QnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMS4zMTI1cmVtO1xuICBib3R0b206IDEuODEyNXJlbTtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gIGNvbG9yOiAjMTExO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94X3Jlc2V0QnRuIHtcbiAgICByaWdodDogMi4xMjVyZW07XG4gICAgYm90dG9tOiAzLjM3NXJlbTtcbiAgfVxufVxuaHRtbFtkYXRhLXdoYXRpbnRlbnQ9bW91c2VdIC5kaXNwbGF5U2VhcmNoLWJveF9yZXNldEJ0bjpub3QoOmRpc2FibGVkKTpob3ZlciwgaHRtbFtkYXRhLXdoYXRpbnRlbnQ9bW91c2VdIC5kaXNwbGF5U2VhcmNoLWJveF9yZXNldEJ0bjpub3QoLi1kaXNhYmxlZCk6aG92ZXIsIGh0bWxbZGF0YS13aGF0aW50ZW50PWtleWJvYXJkXSAuZGlzcGxheVNlYXJjaC1ib3hfcmVzZXRCdG46bm90KDpkaXNhYmxlZCk6aG92ZXIsIGh0bWxbZGF0YS13aGF0aW50ZW50PWtleWJvYXJkXSAuZGlzcGxheVNlYXJjaC1ib3hfcmVzZXRCdG46bm90KC4tZGlzYWJsZWQpOmhvdmVyIHtcbiAgY29sb3I6ICNkZjA1MjI7XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9tb3JlQnRuIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gIGNvbG9yOiAjMTExO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuaHRtbFtkYXRhLXdoYXRpbnRlbnQ9bW91c2VdIC5kaXNwbGF5U2VhcmNoLWJveF9tb3JlQnRuOm5vdCg6ZGlzYWJsZWQpOmhvdmVyLCBodG1sW2RhdGEtd2hhdGludGVudD1tb3VzZV0gLmRpc3BsYXlTZWFyY2gtYm94X21vcmVCdG46bm90KC4tZGlzYWJsZWQpOmhvdmVyLCBodG1sW2RhdGEtd2hhdGludGVudD1rZXlib2FyZF0gLmRpc3BsYXlTZWFyY2gtYm94X21vcmVCdG46bm90KDpkaXNhYmxlZCk6aG92ZXIsIGh0bWxbZGF0YS13aGF0aW50ZW50PWtleWJvYXJkXSAuZGlzcGxheVNlYXJjaC1ib3hfbW9yZUJ0bjpub3QoLi1kaXNhYmxlZCk6aG92ZXIge1xuICBjb2xvcjogI2RmMDUyMjtcbn1cbi5kaXNwbGF5U2VhcmNoLWJveF9tb3JlQnRuIHN2ZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDAuNzVyZW07XG4gIGhlaWdodDogMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMzc1cmVtO1xuICBmaWxsOiAjZGYwNTIyO1xufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfc2VhcmNoQnRuIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfc2VhcmNoQnRuLW51bSB7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBjb2xvcjogI2RmMDUyMjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItd3JhcCBzZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4xMjVyZW0gMS43NXJlbSAwLjEyNXJlbSAwLjg3NXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgI0U2RTZFNjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8qIOODh+ODleOCqeODq+ODiOOBruefouWNsOOCkumdnuihqOekuiAqL1xufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLXdyYXAtLXNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci13cmFwLS1zZWxlY3Q6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDAuODc1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAuNjI1cmVtO1xuICBoZWlnaHQ6IDAuNjI1cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmVyc2lvbj1cIjEuMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB4PVwiMHB4XCIgeT1cIjBweFwiIHZpZXdCb3g9XCIwIDAgNyAxMFwiIHhtbDpzcGFjZT1cInByZXNlcnZlXCI+PHBhdGggZmlsbD1cIiUyM2RmMDUyMlwiIGQ9XCJNMC44LDguOEw0LjYsNUwwLjgsMS4yTDIsMGw1LDVsLTUsNUwwLjgsOC44elwiLz48L3N2Zz4nKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDEwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItd3JhcC0tY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci13cmFwLS1jaGVja2JveCB7XG4gICAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59IiwiQG1peGluIGZvY3VzLXdpdGgta2V5Ym9hcmQge1xuICBodG1sW2RhdGEtd2hhdGludGVudD1cImtleWJvYXJkXCJdICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBmb2N1cy13aXRob3V0LWtleWJvYXJkIHtcbiAgaHRtbFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSAmOmZvY3VzLFxuICBodG1sW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci13aXRoLXRvdWNoIHtcbiAgaHRtbFtkYXRhLXdoYXRpbnRlbnQ9XCJ0b3VjaFwiXSAmOm5vdCg6ZGlzYWJsZWQpOmhvdmVyLFxuICBodG1sW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdICY6bm90KC4tZGlzYWJsZWQpOmhvdmVyIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItd2l0aG91dC10b3VjaCB7XG4gIGh0bWxbZGF0YS13aGF0aW50ZW50PVwibW91c2VcIl0gJjpub3QoOmRpc2FibGVkKTpob3ZlcixcbiAgaHRtbFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSAmOm5vdCguLWRpc2FibGVkKTpob3ZlcixcbiAgaHRtbFtkYXRhLXdoYXRpbnRlbnQ9XCJrZXlib2FyZFwiXSAmOm5vdCg6ZGlzYWJsZWQpOmhvdmVyLFxuICBodG1sW2RhdGEtd2hhdGludGVudD1cImtleWJvYXJkXCJdICY6bm90KC4tZGlzYWJsZWQpOmhvdmVyIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8g5YWx6YCa5aSJ5pWw44O76Zai5pWwXG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL2Z1bmN0aW9uL19kaXYuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9mdW5jdGlvbi9fZW0uc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9mdW5jdGlvbi9fcHguc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9mdW5jdGlvbi9fcmVtLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvZnVuY3Rpb24vX3N0ci1yZXBsYWNlLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvZnVuY3Rpb24vX3N0cmlwLXVuaXQuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9mdW5jdGlvbi9fdXBwZXJjYXNlLWZpcnN0LWxldHRlci5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL2Z1bmN0aW9uL192dy5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL3ZhcmlhYmxlL19lYXNpbmcuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS92YXJpYWJsZS9fZ2xvYmFsLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvdmFyaWFibGUvX21xLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fYW5pbWF0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fYm9yZGVyLWNhbGxhcHNlLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fY2xlYXJmaXguc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9taXhpbi91dGlsaXR5L19mb250LWZhY2Uuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9taXhpbi91dGlsaXR5L19mdWxsLWJnLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fZnVsbC13aWR0aC5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL21peGluL3V0aWxpdHkvX2xpbmUtY2xhbXAuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9taXhpbi91dGlsaXR5L19tdWx0aS1saW5lLWVsbGlwc2lzLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fb24tZXZlbnQuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9taXhpbi91dGlsaXR5L19zci1vbmx5LnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fc3ZnLXN0b3JlLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vdXRpbGl0eS9fdHJpYW5nbGUuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9taXhpbi91dGlsaXR5L193aGF0aW5wdXQuc2Nzc1wiO1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9hdC1pbXBvcnQtbm8tcGFydGlhbC1sZWFkaW5nLXVuZGVyc2NvcmUgKi9cbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vbmFtZXNwYWNlL2NvbW1vbi9fQnV0dG9uLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vbmFtZXNwYWNlL2NvbW1vbi9fTGluay5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL21peGluL25hbWVzcGFjZS9sYXlvdXQvX0Jsb2NrLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vbmFtZXNwYWNlL2xheW91dC9fVGV4dC5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL21peGluL25hbWVzcGFjZS9zaXRld2lkZS9fRm9ybUNoZWNrYm94LnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vbmFtZXNwYWNlL3NpdGV3aWRlL19Gb3JtSW5wdXQuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9taXhpbi9uYW1lc3BhY2Uvc2l0ZXdpZGUvX0Zvcm1SYWRpby5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL21peGluL25hbWVzcGFjZS9zaXRld2lkZS9fRm9ybVNlbGVjdC5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL21peGluL25hbWVzcGFjZS9zaXRld2lkZS9fRm9ybVRleHRhcmVhLnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vbmFtZXNwYWNlL3NpdGV3aWRlL19IZWFkaW5nMy5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL21peGluL25hbWVzcGFjZS9zaXRld2lkZS9fSGVhZGluZzQuc2Nzc1wiO1xuQGltcG9ydCBcIkQ6L3RhbS1naXQtbmV3L2t5b2NlcmEtYnRvYi1lbi9zcmMvcHJkY3QvYnRvYi9jc3MvYmFzZS9taXhpbi9uYW1lc3BhY2Uvc2l0ZXdpZGUvX0hlYWRpbmc1LnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vbmFtZXNwYWNlL3NpdGV3aWRlL19MYWJlbC5zY3NzXCI7XG5AaW1wb3J0IFwiRDovdGFtLWdpdC1uZXcva3lvY2VyYS1idG9iLWVuL3NyYy9wcmRjdC9idG9iL2Nzcy9iYXNlL21peGluL25hbWVzcGFjZS9zaXRld2lkZS9fT2JqZWN0Rml0LnNjc3NcIjtcbkBpbXBvcnQgXCJEOi90YW0tZ2l0LW5ldy9reW9jZXJhLWJ0b2ItZW4vc3JjL3ByZGN0L2J0b2IvY3NzL2Jhc2UvbWl4aW4vbmFtZXNwYWNlL3NpdGV3aWRlL19UaXRsZS5zY3NzXCI7XG5AaW1wb3J0IFwiLi4vLi4vYnRvYi9jc3MvYmFzZS9fYmFzZVwiO1xuXG4udGhlcm1hbFNlYXJjaF9BcmVhIHtcbiAgLmRpc3BsYXlTZWFyY2gtYm94X3NlbGVjdG9yLWxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IHJlbSgxOTApO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0aCxcbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0ZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0aDpudGgtY2hpbGQoMiksXG4gIC5jb21tb24tVGFibGVTeXN0ZW0gdGQ6bnRoLWNoaWxkKDIpIHtcbiAgICBtaW4td2lkdGg6IDEwOHB4O1xuICB9XG5cbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0aDpudGgtY2hpbGQoNCksXG4gIC5jb21tb24tVGFibGVTeXN0ZW0gdGQ6bnRoLWNoaWxkKDQpIHtcbiAgICBtaW4td2lkdGg6IDY2cHg7XG4gIH1cblxuICAuY29tbW9uLVRhYmxlU3lzdGVtIHRoOm50aC1jaGlsZCg1KSxcbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0ZDpudGgtY2hpbGQoNSkge1xuICAgIG1pbi13aWR0aDogNjZweDtcbiAgfVxuXG4gIC5jb21tb24tVGFibGVTeXN0ZW0gdGg6bnRoLWNoaWxkKDYpLFxuICAuY29tbW9uLVRhYmxlU3lzdGVtIHRkOm50aC1jaGlsZCg2KSB7XG4gICAgbWluLXdpZHRoOiA5OHB4O1xuICB9XG5cbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0aDpudGgtY2hpbGQoNyksXG4gIC5jb21tb24tVGFibGVTeXN0ZW0gdGQ6bnRoLWNoaWxkKDcpIHtcbiAgICBtaW4td2lkdGg6IDk1cHg7XG4gIH1cblxuICAuY29tbW9uLVRhYmxlU3lzdGVtIHRoOm50aC1jaGlsZCg4KSxcbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0ZDpudGgtY2hpbGQoOCkge1xuICAgIG1pbi13aWR0aDogOTRweDtcbiAgfVxuXG4gIC5jb21tb24tVGFibGVTeXN0ZW0gdGg6bnRoLWNoaWxkKDkpLFxuICAuY29tbW9uLVRhYmxlU3lzdGVtIHRkOm50aC1jaGlsZCg5KSB7XG4gICAgbWluLXdpZHRoOiA5MHB4O1xuICB9XG5cbiAgLmNvbW1vbi1UYWJsZVN5c3RlbSB0Ym9keSB0ciB7XG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjdmOTtcbiAgICB9XG4gIH1cblxuICAuY29tbW9uLUJ1dHRvblN1Yl9Jbm5lciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJiA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IHJlbSgzMzApO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICBib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItZ3JheTE7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0oNCk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTJweCByZ2IoMCAwIDAgLyAxNiUpO1xuXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiByZW0oNTYpO1xuICAgICAgICBwYWRkaW5nOiByZW0oMTIpIHJlbSgzMCkgcmVtKDEyKSByZW0oNjApO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICYuaHZyLXN3ZWVwLXRvLXJpZ2h0OjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5MztcbiAgICAgICAgfVxuXG4gICAgICAgICYuaHZyLXN3ZWVwLXRvLWxlZnQ6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXkzO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5odnItc3dlZXAtdG8tYm90dG9tOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5MztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzdmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiByZW0oNDApO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgd2lkdGg6IHJlbSgyMCk7XG4gICAgICAgIGhlaWdodDogcmVtKDIwKTtcbiAgICAgICAgZmlsbDogJGNvbG9yLWFjY2VudDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoc20tcykge1xuICAgICAgICAgIGxlZnQ6IHJlbSg1MCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgICAgIGxlZnQ6IHJlbSg3NCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29tbW9uLUJ1dHRvblN1YiB7XG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAuY29tbW9uLVRhYmxlU3lzdGVtX01haW4ge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gIH1cblxuICAuY29tbW9uLVRhYmxlU3lzdGVtX1Njcm9sbGFibGUsXG4gIC5jb21tb24tVGFibGVTeXN0ZW1fU2hhZG93TGVmdCxcbiAgLmNvbW1vbi1UYWJsZVN5c3RlbV9TaGFkb3dSaWdodCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuY29tbW9uLVRhYmxlU3lzdGVtX1NoYWRvd1JpZ2h0LFxuICAuY29tbW9uLVRhYmxlU3lzdGVtX1NoYWRvd0xlZnQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5jb21tb24tVGFibGVTeXN0ZW1fU2Nyb2xsYWJsZSB7XG4gICAgdG9wOiAxMjBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgfVxufVxuXG4uZGlzcGxheVNlYXJjaC1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHJlbSgyMSkgcmVtKDIxKSByZW0oNDMpO1xuICBtYXJnaW4tYm90dG9tOiByZW0oMzIpO1xuICBib3JkZXI6IHNvbGlkIDNweCAjZTZlNmU2O1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgcGFkZGluZzogcmVtKDMwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgIGJvcmRlcjogc29saWQgNnB4ICNlNmU2ZTY7XG4gIH1cbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X3NlbGVjdG9yLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmRpc3BsYXlTZWFyY2gtYm94X3NlbGVjdG9yLWxpc3QgJiB7XG4gICAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgJiArICYge1xuICAgIG1hcmdpbi10b3A6IHJlbSgzMCk7XG4gIH1cbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X2RldGFpbExpbmUge1xuICBwYWRkaW5nLXRvcDogcmVtKDE2KTtcbiAgbWFyZ2luLXRvcDogcmVtKDI0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItdG9wOiBzb2xpZCAycHggI2U2ZTZlNjtcbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X2ZpbHRlci13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICByb3ctZ2FwOiByZW0oMjApO1xuICBjb2x1bW4tZ2FwOiByZW0oMTApO1xuXG4gIEBpbmNsdWRlIG1xKHNtLXMpIHtcbiAgICBjb2x1bW4tZ2FwOiByZW0oMjApO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBjb2x1bW4tZ2FwOiByZW0oMTApO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKiA2NDAgLyA5MDApO1xuICB9XG5cbiAgQGluY2x1ZGUgbXEobGcpIHtcbiAgICBjb2x1bW4tZ2FwOiByZW0oNDApO1xuICB9XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItbGFiZWwge1xuICB3aWR0aDogY2FsYygoMTAwJSAtIDIwcHgpIC8gMik7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICB3aWR0aDogY2FsYygoMTAwJSAtIDQwcHgpIC8gMyk7XG4gIH1cblxuICBAaW5jbHVkZSBtcShsZykge1xuICAgIHdpZHRoOiBjYWxjKCgxMDAlIC0gNjBweCkgLyA0KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKHhsKSB7XG4gICAgd2lkdGg6IGNhbGMoKDEwMCUgLSAxMjBweCkgLyA0KTtcbiAgfVxuXG4gID4gc3BhbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgPiBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDMpO1xuICAgICAgfVxuXG4gICAgICAmICsgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oOCk7XG4gICAgICAgIGNvbG9yOiAjODg4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLWNoZWNrYm94IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICArIHNwYW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMzIpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogcmVtKDI0KTtcbiAgICAgIGhlaWdodDogcmVtKDI0KTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAycHggI2NjYztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IHJlbSg2KTtcbiAgICAgIGxlZnQ6IHJlbSg1KTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB3aWR0aDogcmVtKDE0KTtcbiAgICAgIGhlaWdodDogcmVtKDgpO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjZmZmO1xuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDJweCAjZmZmO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB9XG4gIH1cblxuICAmOmNoZWNrZWQgKyBzcGFuIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzY2NjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X3NlbGVjdG9yLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xuICByb3ctZ2FwOiByZW0oMTYpO1xuICBtYXJnaW4tdG9wOiByZW0oMTYpO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICByb3ctZ2FwOiByZW0oMjQpO1xuICAgIGNvbHVtbi1nYXA6IHJlbSgzMCk7XG4gICAgbWFyZ2luLXRvcDogcmVtKDI0KTtcbiAgfVxuXG4gIC5kaXNwbGF5U2VhcmNoLWJveF9zZWxlY3Rvci1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgICB3aWR0aDogY2FsYygoMTAwJSAtIDMwcHgpIC8gMik7XG4gICAgfVxuICB9XG5cbiAgLmRpc3BsYXlTZWFyY2gtYm94X3NlbGVjdG9yLWxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IHJlbSgxMjgpO1xuICB9XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9zZWFyY2hCdG4td3JhcCB7XG4gIG1hcmdpbi10b3A6IHJlbSgyMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X3Jlc2V0QnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogcmVtKDIxKTtcbiAgYm90dG9tOiByZW0oMjkpO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IHJlbSgxNCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICBjb2xvcjogJGNvbG9yLWJsYWNrMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICByaWdodDogcmVtKDM0KTtcbiAgICBib3R0b206IHJlbSg1NCk7XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci13aXRob3V0LXRvdWNoIHtcbiAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgfVxufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfbW9yZUJ0biB7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gIGNvbG9yOiAkY29sb3ItYmxhY2sxO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICBAaW5jbHVkZSBob3Zlci13aXRob3V0LXRvdWNoIHtcbiAgICBjb2xvcjogJGNvbG9yLWFjY2VudDtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiByZW0oMTIpO1xuICAgIGhlaWdodDogcmVtKDEyKTtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDYpO1xuICAgIGZpbGw6ICRjb2xvci1hY2NlbnQ7XG4gIH1cbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X3NlYXJjaEJ0biB7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmRpc3BsYXlTZWFyY2gtYm94X3NlYXJjaEJ0bi1udW0ge1xuICB3aWR0aDogcmVtKDIwKTtcbiAgY29sb3I6ICRjb2xvci1hY2NlbnQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZGlzcGxheVNlYXJjaC1ib3hfZmlsdGVyLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiByZW0oMikgcmVtKDI4KSByZW0oMikgcmVtKDE0KTtcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkI0U2RTZFNjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IC8qIOODh+ODleOCqeODq+ODiOOBruefouWNsOOCkumdnuihqOekuiAqL1xuICB9XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItd3JhcC0tc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDAwcHg7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogcmVtKDE0KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogcmVtKDEwKTtcbiAgICBoZWlnaHQ6IHJlbSgxMCk7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmVyc2lvbj1cIjEuMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB4PVwiMHB4XCIgeT1cIjBweFwiIHZpZXdCb3g9XCIwIDAgNyAxMFwiIHhtbDpzcGFjZT1cInByZXNlcnZlXCI+PHBhdGggZmlsbD1cIiUyM2RmMDUyMlwiIGQ9XCJNMC44LDguOEw0LjYsNUwwLjgsMS4yTDIsMGw1LDVsLTUsNUwwLjgsOC44elwiLz48L3N2Zz4nKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKSByb3RhdGUoOTBkZWcpO1xuICB9XG59XG5cbi5kaXNwbGF5U2VhcmNoLWJveF9maWx0ZXItd3JhcC0tY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiByZW0oMTYpO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSg1KTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4iLCJAdXNlICdzYXNzOm1hdGgnO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczpsaXN0JztcblxuLy8vIEJyZWFrcG9pbnQgbGlzdFxuLy8vXG4vLy8gTmFtZSB5b3VyIGJyZWFrcG9pbnRzIGluIGEgd2F5IHRoYXQgY3JlYXRlcyBhIHViaXF1aXRvdXMgbGFuZ3VhZ2Vcbi8vLyBhY3Jvc3MgdGVhbSBtZW1iZXJzLiBJdCB3aWxsIGltcHJvdmUgY29tbXVuaWNhdGlvbiBiZXR3ZWVuXG4vLy8gc3Rha2Vob2xkZXJzLCBkZXNpZ25lcnMsIGRldmVsb3BlcnMsIGFuZCB0ZXN0ZXJzLlxuLy8vXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4kYnJlYWtwb2ludHM6IChcbiAgbW9iaWxlOiAzMjBweCxcbiAgdGFibGV0OiA3NDBweCxcbiAgZGVza3RvcDogOTgwcHgsXG4gIHdpZGU6IDEzMDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTaG93IGJyZWFrcG9pbnRzIGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy9cbi8vLyBJZiB5b3Ugd2FudCB0byBkaXNwbGF5IHRoZSBjdXJyZW50bHkgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcFxuLy8vIHJpZ2h0IGNvcm5lciBvZiB5b3VyIHNpdGUgZHVyaW5nIGRldmVsb3BtZW50LCBhZGQgdGhlIGJyZWFrcG9pbnRzXG4vLy8gdG8gdGhpcyBsaXN0LCBvcmRlcmVkIGJ5IHdpZHRoLiBGb3IgZXhhbXBsZTogKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIEB1c2UgJ3BhdGgvdG8vbXEnIHdpdGggKCRzaG93LWJyZWFrcG9pbnRzOiAoJ21vYmlsZScsICd0YWJsZXQnLCAnZGVza3RvcCcpKTtcbi8vL1xuLy8vXG4vLy8gQHR5cGUgbWFwXG4kc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG5cbi8vLyBDdXN0b21pemUgdGhlIG1lZGlhIHR5cGUgKGZvciBleGFtcGxlOiBgQG1lZGlhIHNjcmVlbmAgb3IgYEBtZWRpYSBwcmludGApXG4vLy8gQnkgZGVmYXVsdCBzYXNzLW1xIHVzZXMgYW4gXCJhbGxcIiBtZWRpYSB0eXBlIChgQG1lZGlhIGFsbCBhbmQg4oCmYClcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIG92ZXJyaWVkIHRoZSBtZWRpYSB0eXBlLCB5b3UgY2FuIHVzZSB0aGlzIG9wdGlvbi5cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICBAdXNlICdwYXRoL3RvL21xJyB3aXRoICgkbWVkaWEtdHlwZTogJ3NjcmVlbicpO1xuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZVxuJG1lZGlhLXR5cGU6IGFsbCAhZGVmYXVsdDtcblxuLy8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRweCAtIHZhbHVlIHRvIGNvbnZlcnRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJGZvbnQtc2l6ZS1pbi1lbXM6IHB4MmVtKDE2cHgpO1xuLy8vICBwIHsgZm9udC1zaXplOiBweDJlbSgxNnB4KTsgfVxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn1cblxuQGZ1bmN0aW9uIHB4MmVtKCRweCkge1xuICBAaWYgbWF0aC5pcy11bml0bGVzcygkcHgpIHtcbiAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICBAcmV0dXJuIHB4MmVtKCRweCAqIDFweCk7XG4gIH1cbiAgLy8gaWYgJHB4IGlzIGNvbXBhdGlibGUgd2l0aCBlbSB1bml0cywgdGhlbiByZXR1cm4gdmFsdWUgdW5jaGFuZ2VkXG4gIEBpZiBtYXRoLmNvbXBhdGlibGUoJHB4LCAxZW0pIHtcbiAgICBAcmV0dXJuICRweDtcbiAgfVxuICBAcmV0dXJuIG1hdGguZGl2KCRweCwgMTZweCkgKiAxZW07XG59XG5cbi8vLyBHZXQgYSBicmVha3BvaW50J3Mgd2lkdGhcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnQuIE9uZSBvZiAkYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgJHRhYmxldC13aWR0aDogZ2V0LWJyZWFrcG9pbnQtd2lkdGgodGFibGV0KTtcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IGdldC1icmVha3BvaW50LXdpZHRoKHRhYmxldCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIGdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICBAaWYgbWFwLmhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xuICAgIEByZXR1cm4gbWFwLmdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG59XG5cbi8vLyBNZWRpYSBRdWVyeSBtaXhpblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkZnJvbSBbZmFsc2VdIC0gT25lIG9mICRicmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJHVudGlsIFtmYWxzZV0gLSBPbmUgb2YgJGJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkYW5kIFtmYWxzZV0gLSBBZGRpdGlvbmFsIG1lZGlhIHF1ZXJ5IHBhcmFtZXRlcnNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lZGlhLXR5cGUgWyRtZWRpYS10eXBlXSAtIE1lZGlhIHR5cGU6IHNjcmVlbiwgcHJpbnTigKZcbi8vL1xuLy8vIEBpZ25vcmUgVW5kb2N1bWVudGVkIEFQSSwgZm9yIGFkdmFuY2VkIHVzZSBvbmx5OlxuLy8vIEBpZ25vcmUgQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGJyZWFrcG9pbnRzXVxuLy8vXG4vLy8gQGNvbnRlbnQgc3R5bGluZyBydWxlcywgd3JhcHBlZCBpbnRvIGEgQG1lZGlhIHF1ZXJ5IHdoZW4gJHJlc3BvbnNpdmUgaXMgdHJ1ZVxuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1lZGlhLXR5cGVcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBweDJlbVxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IGdldC1icmVha3BvaW50LXdpZHRoXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vbi1kZWZhdWx0IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQHVzZSAncGF0aC90by9tcScgYXMgKjtcbi8vLyAgLmVsZW1lbnQge1xuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGUpIHtcbi8vLyAgICAgIGNvbG9yOiByZWQ7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogYmx1ZTtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEobW9iaWxlLCB0YWJsZXQpIHtcbi8vLyAgICAgIGNvbG9yOiBncmVlbjtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCwgJGFuZDogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScpIHtcbi8vLyAgICAgIGNvbG9yOiB0ZWFsO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSg5NTBweCkge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKHRhYmxldCwgJG1lZGlhLXR5cGU6IHNjcmVlbikge1xuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XG4vLy8gICAgfVxuLy8vICAgIC8vIEFkdmFuY2VkIHVzZTpcbi8vLyAgICAkbXktYnJlYWtwb2ludHM6IChMOiA5MDBweCwgWEw6IDEyMDBweCk7XG4vLy8gICAgQGluY2x1ZGUgbXEoTCwgJGJyZWFrcG9pbnRzOiAkbXktYnJlYWtwb2ludHMpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAkZnJvbTogZmFsc2UsXG4gICR1bnRpbDogZmFsc2UsXG4gICRhbmQ6IGZhbHNlLFxuICAkbWVkaWEtdHlwZTogJG1lZGlhLXR5cGUsXG4gICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzXG4pIHtcbiAgJG1pbi13aWR0aDogMDtcbiAgJG1heC13aWR0aDogMDtcbiAgJG1lZGlhLXF1ZXJ5OiAnJztcblxuICAvLyBGcm9tOiB0aGlzIGJyZWFrcG9pbnQgKGluY2x1c2l2ZSlcbiAgQGlmICRmcm9tIHtcbiAgICBAaWYgdHlwZS1vZigkZnJvbSkgPT0gbnVtYmVyIHtcbiAgICAgICRtaW4td2lkdGg6IHB4MmVtKCRmcm9tKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRtaW4td2lkdGg6IHB4MmVtKGdldC1icmVha3BvaW50LXdpZHRoKCRmcm9tLCAkYnJlYWtwb2ludHMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBVbnRpbDogdGhhdCBicmVha3BvaW50IChleGNsdXNpdmUpXG4gIEBpZiAkdW50aWwge1xuICAgIEBpZiB0eXBlLW9mKCR1bnRpbCkgPT0gbnVtYmVyIHtcbiAgICAgICRtYXgtd2lkdGg6IHB4MmVtKCR1bnRpbCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkbWF4LXdpZHRoOiBweDJlbShnZXQtYnJlYWtwb2ludC13aWR0aCgkdW50aWwsICRicmVha3BvaW50cykpIC0gMC4wMWVtO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWluLXdpZHRoICE9IDAge1xuICAgICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSknO1xuICB9XG4gIEBpZiAkbWF4LXdpZHRoICE9IDAge1xuICAgICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1heC13aWR0aDogI3skbWF4LXdpZHRofSknO1xuICB9XG4gIEBpZiAkYW5kIHtcbiAgICAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kICN7JGFuZH0nO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHVubmVjZXNzYXJ5IG1lZGlhIHF1ZXJ5IHByZWZpeCAnYWxsIGFuZCAnXG4gIEBpZiAoJG1lZGlhLXR5cGUgPT0gJ2FsbCcgYW5kICRtZWRpYS1xdWVyeSAhPSAnJykge1xuICAgICRtZWRpYS10eXBlOiAnJztcbiAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xuICB9XG5cbiAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gUXVpY2sgc29ydFxuLy8vXG4vLy8gQGF1dGhvciBTYW0gUmljaGFyZHNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzb3J0XG4vLy8gQHJldHVybnMge0xpc3R9IFNvcnRlZCBMaXN0XG5AZnVuY3Rpb24gX3F1aWNrLXNvcnQoJGxpc3QpIHtcbiAgJGxlc3M6ICgpO1xuICAkZXF1YWw6ICgpO1xuICAkbGFyZ2U6ICgpO1xuXG4gIEBpZiBsZW5ndGgoJGxpc3QpID4gMSB7XG4gICAgJHNlZWQ6IGxpc3QubnRoKCRsaXN0LCBtYXRoLmNlaWwobWF0aC5kaXYobGVuZ3RoKCRsaXN0KSwgMikpKTtcblxuICAgIEBlYWNoICRpdGVtIGluICRsaXN0IHtcbiAgICAgIEBpZiAoJGl0ZW0gPT0gJHNlZWQpIHtcbiAgICAgICAgJGVxdWFsOiBsaXN0LmFwcGVuZCgkZXF1YWwsICRpdGVtKTtcbiAgICAgIH0gQGVsc2UgaWYgKCRpdGVtIDwgJHNlZWQpIHtcbiAgICAgICAgJGxlc3M6IGxpc3QuYXBwZW5kKCRsZXNzLCAkaXRlbSk7XG4gICAgICB9IEBlbHNlIGlmICgkaXRlbSA+ICRzZWVkKSB7XG4gICAgICAgICRsYXJnZTogbGlzdC5hcHBlbmQoJGxhcmdlLCAkaXRlbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBqb2luKGpvaW4oX3F1aWNrLXNvcnQoJGxlc3MpLCAkZXF1YWwpLCBfcXVpY2stc29ydCgkbGFyZ2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBTb3J0IGEgbWFwIGJ5IHZhbHVlcyAod29ya3Mgd2l0aCBudW1iZXJzIG9ubHkpXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzb3J0XG4vLy8gQHJldHVybnMge01hcH0gTWFwIHNvcnRlZCBieSB2YWx1ZVxuQGZ1bmN0aW9uIF9tYXAtc29ydC1ieS12YWx1ZSgkbWFwKSB7XG4gICRtYXAtc29ydGVkOiAoKTtcbiAgJG1hcC1rZXlzOiBtYXAua2V5cygkbWFwKTtcbiAgJG1hcC12YWx1ZXM6IG1hcC52YWx1ZXMoJG1hcCk7XG4gICRtYXAtdmFsdWVzLXNvcnRlZDogX3F1aWNrLXNvcnQoJG1hcC12YWx1ZXMpO1xuXG4gIC8vIFJlb3JkZXIga2V5L3ZhbHVlIHBhaXJzIGJhc2VkIG9uIGtleSB2YWx1ZXNcbiAgQGVhY2ggJHZhbHVlIGluICRtYXAtdmFsdWVzLXNvcnRlZCB7XG4gICAgJGluZGV4OiBpbmRleCgkbWFwLXZhbHVlcywgJHZhbHVlKTtcbiAgICAka2V5OiBsaXN0Lm50aCgkbWFwLWtleXMsICRpbmRleCk7XG4gICAgJG1hcC1zb3J0ZWQ6IG1hcC5tZXJnZShcbiAgICAgICRtYXAtc29ydGVkLFxuICAgICAgKFxuICAgICAgICAka2V5OiAkdmFsdWUsXG4gICAgICApXG4gICAgKTtcblxuICAgIC8vIFVuc2V0IHRoZSB2YWx1ZSBpbiAkbWFwLXZhbHVlcyB0byBwcmV2ZW50IHRoZSBsb29wXG4gICAgLy8gZnJvbSBmaW5kaW5nIHRoZSBzYW1lIGluZGV4IHR3aWNlXG4gICAgJG1hcC12YWx1ZXM6IGxpc3Quc2V0LW50aCgkbWFwLXZhbHVlcywgJGluZGV4LCAwKTtcbiAgfVxuXG4gIEByZXR1cm4gJG1hcC1zb3J0ZWQ7XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIGFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgJG5ldy1icmVha3BvaW50OiAoXG4gICAgJG5hbWU6ICR3aWR0aCxcbiAgKTtcbiAgJGJyZWFrcG9pbnRzOiBtYXAubWVyZ2UoJGJyZWFrcG9pbnRzLCAkbmV3LWJyZWFrcG9pbnQpICFnbG9iYWw7XG4gICRicmVha3BvaW50czogX21hcC1zb3J0LWJ5LXZhbHVlKCRicmVha3BvaW50cykgIWdsb2JhbDtcbn1cblxuLy8vIFNob3cgdGhlIGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyIG9mIHRoZSB2aWV3cG9ydFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3ctYnJlYWtwb2ludHMgWyRzaG93LWJyZWFrcG9pbnRzXSAtIExpc3Qgb2YgYnJlYWtwb2ludHMgdG8gc2hvdyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRicmVha3BvaW50c10gLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJGJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJHNob3ctYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgc2hvdy1icmVha3BvaW50cztcbi8vL1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBzaG93LWJyZWFrcG9pbnRzKChMLCBYTCksIChTOiAzMDBweCwgTDogODAwcHgsIFhMOiAxMjAwcHgpKTtcbkBtaXhpbiBzaG93LWJyZWFrcG9pbnRzKFxuICAkc2hvdy1icmVha3BvaW50czogJHNob3ctYnJlYWtwb2ludHMsXG4gICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzXG4pIHtcbiAgYm9keTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmYmVlZDU7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmJlZWQ1O1xuICAgIGNvbG9yOiAjYzA5ODUzO1xuICAgIGZvbnQ6IHNtYWxsLWNhcHRpb247XG4gICAgcGFkZGluZzogM3B4IDZweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMDtcblxuICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgYnJlYWtwb2ludHMgdGhhdCBzaG91bGQgYmUgc2hvd25cbiAgICBAZWFjaCAkc2hvdy1icmVha3BvaW50IGluICRzaG93LWJyZWFrcG9pbnRzIHtcbiAgICAgICR3aWR0aDogZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgIEBpbmNsdWRlIG1xKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICAgICAgIGNvbnRlbnQ6ICcjeyRzaG93LWJyZWFrcG9pbnR9IOKJpSAjeyR3aWR0aH0gKCN7cHgyZW0oJHdpZHRoKX0pJztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGlmIGxpc3QubGVuZ3RoKCRzaG93LWJyZWFrcG9pbnRzKSA+IDAge1xuICBAaW5jbHVkZSBzaG93LWJyZWFrcG9pbnRzO1xufVxuIl19 */