.text-twitter {
  color: #1DA1F2 !important; }

a.text-twitter:hover, a.text-twitter:focus {
  color: #0c85d0 !important; }

.bg-twitter {
  background-color: #1DA1F2 !important; }

a.bg-twitter:hover, a.bg-twitter:focus {
  background-color: #1c99e6 !important; }

.bg-twitter-dark {
  background-color: #1a91da !important; }

a.bg-twitter-dark:hover, a.bg-twitter-dark:focus {
  background-color: #198acf !important; }

.bg-twitter-darker {
  background-color: #1989ce !important; }

a.bg-twitter-darker:hover, a.bg-twitter-darker:focus {
  background-color: #1882c4 !important; }

.btn-twitter {
  border-color: transparent;
  background: #1DA1F2;
  color: #fff; }
  .btn-twitter:hover {
    border-color: transparent;
    background: #1c99e6;
    color: #fff; }
  .btn-twitter:focus, .btn-twitter.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(29, 161, 242, 0.4);
            box-shadow: 0 0 0 2px rgba(29, 161, 242, 0.4); }
  .btn-twitter.disabled, .btn-twitter:disabled {
    border-color: transparent !important;
    background: #1DA1F2 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-twitter .badge {
  background: #fff;
  color: #1DA1F2; }

.btn-twitter:active,
.btn-twitter.active,
.show > .btn-twitter.dropdown-toggle {
  border-color: transparent;
  background: #198cd3;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-twitter,
.input-group-prepend .btn-twitter,
.input-group-append .btn-twitter {
  border-right: 1px solid #198cd3;
  border-left: 1px solid #198cd3; }

.btn-outline-twitter {
  border-color: #1DA1F2;
  background: transparent;
  color: #1DA1F2; }
  .btn-outline-twitter:hover {
    border-color: transparent;
    background: #1DA1F2;
    color: #fff; }
    .btn-outline-twitter:hover .badge {
      background: #fff;
      color: #1DA1F2; }
  .btn-outline-twitter:focus, .btn-outline-twitter.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(29, 161, 242, 0.4);
            box-shadow: 0 0 0 2px rgba(29, 161, 242, 0.4); }
  .btn-outline-twitter.disabled, .btn-outline-twitter:disabled {
    border-color: #1DA1F2 !important;
    background: transparent !important;
    color: #1DA1F2 !important; }

.btn-outline-twitter .badge {
  background: #1DA1F2;
  color: #fff; }

.btn-outline-twitter:active,
.btn-outline-twitter.active,
.show > .btn-outline-twitter.dropdown-toggle {
  border-color: transparent;
  background: #1c99e6;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-twitter:active .badge,
  .btn-outline-twitter.active .badge,
  .show > .btn-outline-twitter.dropdown-toggle .badge {
    background: #fff;
    color: #1DA1F2; }

.text-google {
  color: #D1523F !important; }

a.text-google:hover, a.text-google:focus {
  color: #b23c2b !important; }

.bg-google {
  background-color: #D1523F !important; }

a.bg-google:hover, a.bg-google:focus {
  background-color: #c74e3c !important; }

.bg-google-dark {
  background-color: #bc4a39 !important; }

a.bg-google-dark:hover, a.bg-google-dark:focus {
  background-color: #b34636 !important; }

.bg-google-darker {
  background-color: #b24636 !important; }

a.bg-google-darker:hover, a.bg-google-darker:focus {
  background-color: #a94333 !important; }

.btn-google {
  border-color: transparent;
  background: #D1523F;
  color: #fff; }
  .btn-google:hover {
    border-color: transparent;
    background: #c74e3c;
    color: #fff; }
  .btn-google:focus, .btn-google.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(209, 82, 63, 0.4);
            box-shadow: 0 0 0 2px rgba(209, 82, 63, 0.4); }
  .btn-google.disabled, .btn-google:disabled {
    border-color: transparent !important;
    background: #D1523F !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-google .badge {
  background: #fff;
  color: #D1523F; }

.btn-google:active,
.btn-google.active,
.show > .btn-google.dropdown-toggle {
  border-color: transparent;
  background: #b64737;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-google,
.input-group-prepend .btn-google,
.input-group-append .btn-google {
  border-right: 1px solid #b64737;
  border-left: 1px solid #b64737; }

.btn-outline-google {
  border-color: #D1523F;
  background: transparent;
  color: #D1523F; }
  .btn-outline-google:hover {
    border-color: transparent;
    background: #D1523F;
    color: #fff; }
    .btn-outline-google:hover .badge {
      background: #fff;
      color: #D1523F; }
  .btn-outline-google:focus, .btn-outline-google.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(209, 82, 63, 0.4);
            box-shadow: 0 0 0 2px rgba(209, 82, 63, 0.4); }
  .btn-outline-google.disabled, .btn-outline-google:disabled {
    border-color: #D1523F !important;
    background: transparent !important;
    color: #D1523F !important; }

.btn-outline-google .badge {
  background: #D1523F;
  color: #fff; }

.btn-outline-google:active,
.btn-outline-google.active,
.show > .btn-outline-google.dropdown-toggle {
  border-color: transparent;
  background: #c74e3c;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-google:active .badge,
  .btn-outline-google.active .badge,
  .show > .btn-outline-google.dropdown-toggle .badge {
    background: #fff;
    color: #D1523F; }

.text-facebook {
  color: #3B5998 !important; }

a.text-facebook:hover, a.text-facebook:focus {
  color: #2d4373 !important; }

.bg-facebook {
  background-color: #3B5998 !important; }

a.bg-facebook:hover, a.bg-facebook:focus {
  background-color: #385590 !important; }

.bg-facebook-dark {
  background-color: #355089 !important; }

a.bg-facebook-dark:hover, a.bg-facebook-dark:focus {
  background-color: #324c82 !important; }

.bg-facebook-darker {
  background-color: #324c81 !important; }

a.bg-facebook-darker:hover, a.bg-facebook-darker:focus {
  background-color: #30487b !important; }

.btn-facebook {
  border-color: transparent;
  background: #3B5998;
  color: #fff; }
  .btn-facebook:hover {
    border-color: transparent;
    background: #385590;
    color: #fff; }
  .btn-facebook:focus, .btn-facebook.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(59, 89, 152, 0.4);
            box-shadow: 0 0 0 2px rgba(59, 89, 152, 0.4); }
  .btn-facebook.disabled, .btn-facebook:disabled {
    border-color: transparent !important;
    background: #3B5998 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-facebook .badge {
  background: #fff;
  color: #3B5998; }

.btn-facebook:active,
.btn-facebook.active,
.show > .btn-facebook.dropdown-toggle {
  border-color: transparent;
  background: #334d84;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-facebook,
.input-group-prepend .btn-facebook,
.input-group-append .btn-facebook {
  border-right: 1px solid #334d84;
  border-left: 1px solid #334d84; }

.btn-outline-facebook {
  border-color: #3B5998;
  background: transparent;
  color: #3B5998; }
  .btn-outline-facebook:hover {
    border-color: transparent;
    background: #3B5998;
    color: #fff; }
    .btn-outline-facebook:hover .badge {
      background: #fff;
      color: #3B5998; }
  .btn-outline-facebook:focus, .btn-outline-facebook.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(59, 89, 152, 0.4);
            box-shadow: 0 0 0 2px rgba(59, 89, 152, 0.4); }
  .btn-outline-facebook.disabled, .btn-outline-facebook:disabled {
    border-color: #3B5998 !important;
    background: transparent !important;
    color: #3B5998 !important; }

.btn-outline-facebook .badge {
  background: #3B5998;
  color: #fff; }

.btn-outline-facebook:active,
.btn-outline-facebook.active,
.show > .btn-outline-facebook.dropdown-toggle {
  border-color: transparent;
  background: #385590;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-facebook:active .badge,
  .btn-outline-facebook.active .badge,
  .show > .btn-outline-facebook.dropdown-toggle .badge {
    background: #fff;
    color: #3B5998; }

.text-pinterest {
  color: #bd121c !important; }

a.text-pinterest:hover, a.text-pinterest:focus {
  color: #8e0e15 !important; }

.bg-pinterest {
  background-color: #bd121c !important; }

a.bg-pinterest:hover, a.bg-pinterest:focus {
  background-color: #b4111b !important; }

.bg-pinterest-dark {
  background-color: #aa1019 !important; }

a.bg-pinterest-dark:hover, a.bg-pinterest-dark:focus {
  background-color: #a20f18 !important; }

.bg-pinterest-darker {
  background-color: #a10f18 !important; }

a.bg-pinterest-darker:hover, a.bg-pinterest-darker:focus {
  background-color: #990e17 !important; }

.btn-pinterest {
  border-color: transparent;
  background: #bd121c;
  color: #fff; }
  .btn-pinterest:hover {
    border-color: transparent;
    background: #b4111b;
    color: #fff; }
  .btn-pinterest:focus, .btn-pinterest.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(189, 18, 28, 0.4);
            box-shadow: 0 0 0 2px rgba(189, 18, 28, 0.4); }
  .btn-pinterest.disabled, .btn-pinterest:disabled {
    border-color: transparent !important;
    background: #bd121c !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-pinterest .badge {
  background: #fff;
  color: #bd121c; }

.btn-pinterest:active,
.btn-pinterest.active,
.show > .btn-pinterest.dropdown-toggle {
  border-color: transparent;
  background: #a41018;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-pinterest,
.input-group-prepend .btn-pinterest,
.input-group-append .btn-pinterest {
  border-right: 1px solid #a41018;
  border-left: 1px solid #a41018; }

.btn-outline-pinterest {
  border-color: #bd121c;
  background: transparent;
  color: #bd121c; }
  .btn-outline-pinterest:hover {
    border-color: transparent;
    background: #bd121c;
    color: #fff; }
    .btn-outline-pinterest:hover .badge {
      background: #fff;
      color: #bd121c; }
  .btn-outline-pinterest:focus, .btn-outline-pinterest.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(189, 18, 28, 0.4);
            box-shadow: 0 0 0 2px rgba(189, 18, 28, 0.4); }
  .btn-outline-pinterest.disabled, .btn-outline-pinterest:disabled {
    border-color: #bd121c !important;
    background: transparent !important;
    color: #bd121c !important; }

.btn-outline-pinterest .badge {
  background: #bd121c;
  color: #fff; }

.btn-outline-pinterest:active,
.btn-outline-pinterest.active,
.show > .btn-outline-pinterest.dropdown-toggle {
  border-color: transparent;
  background: #b4111b;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-pinterest:active .badge,
  .btn-outline-pinterest.active .badge,
  .show > .btn-outline-pinterest.dropdown-toggle .badge {
    background: #fff;
    color: #bd121c; }

.text-instagram {
  color: #000 !important; }

a.text-instagram:hover, a.text-instagram:focus {
  color: black !important; }

.bg-instagram {
  background-color: #000 !important; }

a.bg-instagram:hover, a.bg-instagram:focus {
  background-color: black !important; }

.bg-instagram-dark {
  background-color: black !important; }

a.bg-instagram-dark:hover, a.bg-instagram-dark:focus {
  background-color: black !important; }

.bg-instagram-darker {
  background-color: black !important; }

a.bg-instagram-darker:hover, a.bg-instagram-darker:focus {
  background-color: black !important; }

.btn-instagram {
  border-color: transparent;
  background: #000;
  color: #fff; }
  .btn-instagram:hover {
    border-color: transparent;
    background: black;
    color: #fff; }
  .btn-instagram:focus, .btn-instagram.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4); }
  .btn-instagram.disabled, .btn-instagram:disabled {
    border-color: transparent !important;
    background: #000 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-instagram .badge {
  background: #fff;
  color: #000; }

.btn-instagram:active,
.btn-instagram.active,
.show > .btn-instagram.dropdown-toggle {
  border-color: transparent;
  background: black;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-instagram,
.input-group-prepend .btn-instagram,
.input-group-append .btn-instagram {
  border-right: 1px solid black;
  border-left: 1px solid black; }

.btn-outline-instagram {
  border-color: #000;
  background: transparent;
  color: #000; }
  .btn-outline-instagram:hover {
    border-color: transparent;
    background: #000;
    color: #fff; }
    .btn-outline-instagram:hover .badge {
      background: #fff;
      color: #000; }
  .btn-outline-instagram:focus, .btn-outline-instagram.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4); }
  .btn-outline-instagram.disabled, .btn-outline-instagram:disabled {
    border-color: #000 !important;
    background: transparent !important;
    color: #000 !important; }

.btn-outline-instagram .badge {
  background: #000;
  color: #fff; }

.btn-outline-instagram:active,
.btn-outline-instagram.active,
.show > .btn-outline-instagram.dropdown-toggle {
  border-color: transparent;
  background: black;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-instagram:active .badge,
  .btn-outline-instagram.active .badge,
  .show > .btn-outline-instagram.dropdown-toggle .badge {
    background: #fff;
    color: #000; }

.text-windows {
  color: #26AAE1 !important; }

a.text-windows:hover, a.text-windows:focus {
  color: #1a8bba !important; }

.bg-windows {
  background-color: #26AAE1 !important; }

a.bg-windows:hover, a.bg-windows:focus {
  background-color: #24a2d6 !important; }

.bg-windows-dark {
  background-color: #2299cb !important; }

a.bg-windows-dark:hover, a.bg-windows-dark:focus {
  background-color: #2091c1 !important; }

.bg-windows-darker {
  background-color: #2091bf !important; }

a.bg-windows-darker:hover, a.bg-windows-darker:focus {
  background-color: #1e8ab5 !important; }

.btn-windows {
  border-color: transparent;
  background: #26AAE1;
  color: #fff; }
  .btn-windows:hover {
    border-color: transparent;
    background: #24a2d6;
    color: #fff; }
  .btn-windows:focus, .btn-windows.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(38, 170, 225, 0.4);
            box-shadow: 0 0 0 2px rgba(38, 170, 225, 0.4); }
  .btn-windows.disabled, .btn-windows:disabled {
    border-color: transparent !important;
    background: #26AAE1 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-windows .badge {
  background: #fff;
  color: #26AAE1; }

.btn-windows:active,
.btn-windows.active,
.show > .btn-windows.dropdown-toggle {
  border-color: transparent;
  background: #2194c4;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-windows,
.input-group-prepend .btn-windows,
.input-group-append .btn-windows {
  border-right: 1px solid #2194c4;
  border-left: 1px solid #2194c4; }

.btn-outline-windows {
  border-color: #26AAE1;
  background: transparent;
  color: #26AAE1; }
  .btn-outline-windows:hover {
    border-color: transparent;
    background: #26AAE1;
    color: #fff; }
    .btn-outline-windows:hover .badge {
      background: #fff;
      color: #26AAE1; }
  .btn-outline-windows:focus, .btn-outline-windows.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(38, 170, 225, 0.4);
            box-shadow: 0 0 0 2px rgba(38, 170, 225, 0.4); }
  .btn-outline-windows.disabled, .btn-outline-windows:disabled {
    border-color: #26AAE1 !important;
    background: transparent !important;
    color: #26AAE1 !important; }

.btn-outline-windows .badge {
  background: #26AAE1;
  color: #fff; }

.btn-outline-windows:active,
.btn-outline-windows.active,
.show > .btn-outline-windows.dropdown-toggle {
  border-color: transparent;
  background: #24a2d6;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-windows:active .badge,
  .btn-outline-windows.active .badge,
  .show > .btn-outline-windows.dropdown-toggle .badge {
    background: #fff;
    color: #26AAE1; }

.text-macos {
  color: #343434 !important; }

a.text-macos:hover, a.text-macos:focus {
  color: #1b1b1b !important; }

.bg-macos {
  background-color: #343434 !important; }

a.bg-macos:hover, a.bg-macos:focus {
  background-color: #313131 !important; }

.bg-macos-dark {
  background-color: #2f2f2f !important; }

a.bg-macos-dark:hover, a.bg-macos-dark:focus {
  background-color: #2d2d2d !important; }

.bg-macos-darker {
  background-color: #2c2c2c !important; }

a.bg-macos-darker:hover, a.bg-macos-darker:focus {
  background-color: #2a2a2a !important; }

.btn-macos {
  border-color: transparent;
  background: #343434;
  color: #fff; }
  .btn-macos:hover {
    border-color: transparent;
    background: #313131;
    color: #fff; }
  .btn-macos:focus, .btn-macos.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(52, 52, 52, 0.4);
            box-shadow: 0 0 0 2px rgba(52, 52, 52, 0.4); }
  .btn-macos.disabled, .btn-macos:disabled {
    border-color: transparent !important;
    background: #343434 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-macos .badge {
  background: #fff;
  color: #343434; }

.btn-macos:active,
.btn-macos.active,
.show > .btn-macos.dropdown-toggle {
  border-color: transparent;
  background: #2d2d2d;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-macos,
.input-group-prepend .btn-macos,
.input-group-append .btn-macos {
  border-right: 1px solid #2d2d2d;
  border-left: 1px solid #2d2d2d; }

.btn-outline-macos {
  border-color: #343434;
  background: transparent;
  color: #343434; }
  .btn-outline-macos:hover {
    border-color: transparent;
    background: #343434;
    color: #fff; }
    .btn-outline-macos:hover .badge {
      background: #fff;
      color: #343434; }
  .btn-outline-macos:focus, .btn-outline-macos.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(52, 52, 52, 0.4);
            box-shadow: 0 0 0 2px rgba(52, 52, 52, 0.4); }
  .btn-outline-macos.disabled, .btn-outline-macos:disabled {
    border-color: #343434 !important;
    background: transparent !important;
    color: #343434 !important; }

.btn-outline-macos .badge {
  background: #343434;
  color: #fff; }

.btn-outline-macos:active,
.btn-outline-macos.active,
.show > .btn-outline-macos.dropdown-toggle {
  border-color: transparent;
  background: #313131;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-macos:active .badge,
  .btn-outline-macos.active .badge,
  .show > .btn-outline-macos.dropdown-toggle .badge {
    background: #fff;
    color: #343434; }

.text-linux {
  color: #800080 !important; }

a.text-linux:hover, a.text-linux:focus {
  color: #4d004d !important; }

.bg-linux {
  background-color: #800080 !important; }

a.bg-linux:hover, a.bg-linux:focus {
  background-color: #7a007a !important; }

.bg-linux-dark {
  background-color: #730073 !important; }

a.bg-linux-dark:hover, a.bg-linux-dark:focus {
  background-color: #6d006d !important; }

.bg-linux-darker {
  background-color: #6d006d !important; }

a.bg-linux-darker:hover, a.bg-linux-darker:focus {
  background-color: #680068 !important; }

.btn-linux {
  border-color: transparent;
  background: #800080;
  color: #fff; }
  .btn-linux:hover {
    border-color: transparent;
    background: #7a007a;
    color: #fff; }
  .btn-linux:focus, .btn-linux.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(128, 0, 128, 0.4);
            box-shadow: 0 0 0 2px rgba(128, 0, 128, 0.4); }
  .btn-linux.disabled, .btn-linux:disabled {
    border-color: transparent !important;
    background: #800080 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #fff !important; }

.btn-linux .badge {
  background: #fff;
  color: #800080; }

.btn-linux:active,
.btn-linux.active,
.show > .btn-linux.dropdown-toggle {
  border-color: transparent;
  background: #6f006f;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-linux,
.input-group-prepend .btn-linux,
.input-group-append .btn-linux {
  border-right: 1px solid #6f006f;
  border-left: 1px solid #6f006f; }

.btn-outline-linux {
  border-color: #800080;
  background: transparent;
  color: #800080; }
  .btn-outline-linux:hover {
    border-color: transparent;
    background: #800080;
    color: #fff; }
    .btn-outline-linux:hover .badge {
      background: #fff;
      color: #800080; }
  .btn-outline-linux:focus, .btn-outline-linux.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(128, 0, 128, 0.4);
            box-shadow: 0 0 0 2px rgba(128, 0, 128, 0.4); }
  .btn-outline-linux.disabled, .btn-outline-linux:disabled {
    border-color: #800080 !important;
    background: transparent !important;
    color: #800080 !important; }

.btn-outline-linux .badge {
  background: #800080;
  color: #fff; }

.btn-outline-linux:active,
.btn-outline-linux.active,
.show > .btn-outline-linux.dropdown-toggle {
  border-color: transparent;
  background: #7a007a;
  color: #fff;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-linux:active .badge,
  .btn-outline-linux.active .badge,
  .show > .btn-outline-linux.dropdown-toggle .badge {
    background: #fff;
    color: #800080; }

.btn-white {
  border-color: transparent;
  background: #fff;
  color: #4E5155; }
  .btn-white:hover {
    border-color: transparent;
    background: #f2f2f2;
    color: #4E5155; }
  .btn-white:focus, .btn-white.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4);
            box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4); }
  .btn-white.disabled, .btn-white:disabled {
    border-color: transparent !important;
    background: #fff !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: #4E5155 !important; }

.btn-white .badge {
  background: #4E5155;
  color: #fff; }

.btn-white:active,
.btn-white.active,
.show > .btn-white.dropdown-toggle {
  border-color: transparent;
  background: #dedede;
  -webkit-box-shadow: none;
          box-shadow: none; }

.btn-group .btn-white,
.input-group-prepend .btn-white,
.input-group-append .btn-white {
  border-right: 1px solid #dedede;
  border-left: 1px solid #dedede; }

.btn-outline-white {
  border-color: #fff;
  background: transparent;
  color: #fff; }
  .btn-outline-white:hover {
    border-color: transparent;
    background: #fff;
    color: #4E5155; }
    .btn-outline-white:hover .badge {
      background: #4E5155;
      color: #fff; }
  .btn-outline-white:focus, .btn-outline-white.focus {
    -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4);
            box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4); }
  .btn-outline-white.disabled, .btn-outline-white:disabled {
    border-color: #fff !important;
    background: transparent !important;
    color: #fff !important; }

.btn-outline-white .badge {
  background: #fff;
  color: #fff; }

.btn-outline-white:active,
.btn-outline-white.active,
.show > .btn-outline-white.dropdown-toggle {
  border-color: transparent;
  background: #f2f2f2;
  color: #4E5155;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .btn-outline-white:active .badge,
  .btn-outline-white.active .badge,
  .show > .btn-outline-white.dropdown-toggle .badge {
    background: #4E5155;
    color: #fff; }

.custom-control.custom-control-black .custom-control-label::before,
.custom-control.custom-control-black .custom-control-input:active ~ .custom-control-label::before {
  background-color: #000; }

.custom-control.custom-control-black .custom-control-input:focus ~ .custom-control-label::before,
.custom-control.custom-control-black .custom-control-input:active ~ .custom-control-label::before {
  border-color: #000; }

.custom-control.custom-control-black .custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4);
          box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4); }

.custom-control.custom-control-black.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-control.custom-control-black.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #000;
  background-color: #000; }

.custom-control.custom-control-black.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-control-black.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='4.5' style='fill:%23fff'/%3E%3Cpath d='M5,1A4,4,0,1,1,1,5,4,4,0,0,1,5,1M5,0a5,5,0,1,0,5,5A5,5,0,0,0,5,0Z' style='fill:%23fff'/%3E%3C/svg%3E"); }

.custom-control.custom-control-white .custom-control-label::before,
.custom-control.custom-control-white .custom-control-input:active ~ .custom-control-label::before {
  background-color: #fff; }

.custom-control.custom-control-white .custom-control-input:focus ~ .custom-control-label::before,
.custom-control.custom-control-white .custom-control-input:active ~ .custom-control-label::before {
  border-color: #fff; }

.custom-control.custom-control-white .custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4);
          box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4); }

.custom-control.custom-control-white.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-control.custom-control-white.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #fff;
  background-color: #fff; }

.custom-control.custom-control-white.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23666666;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-control-white.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='4.5' style='fill:%23666666'/%3E%3Cpath d='M5,1A4,4,0,1,1,1,5,4,4,0,0,1,5,1M5,0a5,5,0,1,0,5,5A5,5,0,0,0,5,0Z' style='fill:%23666666'/%3E%3C/svg%3E"); }

.custom-control.custom-control-silver .custom-control-label::before,
.custom-control.custom-control-silver .custom-control-input:active ~ .custom-control-label::before {
  background-color: #eee; }

.custom-control.custom-control-silver .custom-control-input:focus ~ .custom-control-label::before,
.custom-control.custom-control-silver .custom-control-input:active ~ .custom-control-label::before {
  border-color: #eee; }

.custom-control.custom-control-silver .custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px rgba(238, 238, 238, 0.4);
          box-shadow: 0 0 0 2px rgba(238, 238, 238, 0.4); }

.custom-control.custom-control-silver.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-control.custom-control-silver.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #eee;
  background-color: #eee; }

.custom-control.custom-control-silver.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%235f5f5f;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-control-silver.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='4.5' style='fill:%235f5f5f'/%3E%3Cpath d='M5,1A4,4,0,1,1,1,5,4,4,0,0,1,5,1M5,0a5,5,0,1,0,5,5A5,5,0,0,0,5,0Z' style='fill:%235f5f5f'/%3E%3C/svg%3E"); }

.custom-control.custom-control-gray .custom-control-label::before,
.custom-control.custom-control-gray .custom-control-input:active ~ .custom-control-label::before {
  background-color: #777; }

.custom-control.custom-control-gray .custom-control-input:focus ~ .custom-control-label::before,
.custom-control.custom-control-gray .custom-control-input:active ~ .custom-control-label::before {
  border-color: #777; }

.custom-control.custom-control-gray .custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px rgba(119, 119, 119, 0.4);
          box-shadow: 0 0 0 2px rgba(119, 119, 119, 0.4); }

.custom-control.custom-control-gray.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-control.custom-control-gray.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #777;
  background-color: #777; }

.custom-control.custom-control-gray.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-control-gray.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='4.5' style='fill:%23fff'/%3E%3Cpath d='M5,1A4,4,0,1,1,1,5,4,4,0,0,1,5,1M5,0a5,5,0,1,0,5,5A5,5,0,0,0,5,0Z' style='fill:%23fff'/%3E%3C/svg%3E"); }

.custom-control.custom-control-gold .custom-control-label::before,
.custom-control.custom-control-gold .custom-control-input:active ~ .custom-control-label::before {
  background-color: #ffeb3b; }

.custom-control.custom-control-gold .custom-control-input:focus ~ .custom-control-label::before,
.custom-control.custom-control-gold .custom-control-input:active ~ .custom-control-label::before {
  border-color: #ffeb3b; }

.custom-control.custom-control-gold .custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px rgba(255, 235, 59, 0.4);
          box-shadow: 0 0 0 2px rgba(255, 235, 59, 0.4); }

.custom-control.custom-control-gold.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-control.custom-control-gold.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #ffeb3b;
  background-color: #ffeb3b; }

.custom-control.custom-control-gold.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23665e18;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-control-gold.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='4.5' style='fill:%23665e18'/%3E%3Cpath d='M5,1A4,4,0,1,1,1,5,4,4,0,0,1,5,1M5,0a5,5,0,1,0,5,5A5,5,0,0,0,5,0Z' style='fill:%23665e18'/%3E%3C/svg%3E"); }

.custom-control.custom-control-pink .custom-control-label::before,
.custom-control.custom-control-pink .custom-control-input:active ~ .custom-control-label::before {
  background-color: #e91e63; }

.custom-control.custom-control-pink .custom-control-input:focus ~ .custom-control-label::before,
.custom-control.custom-control-pink .custom-control-input:active ~ .custom-control-label::before {
  border-color: #e91e63; }

.custom-control.custom-control-pink .custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px rgba(233, 30, 99, 0.4);
          box-shadow: 0 0 0 2px rgba(233, 30, 99, 0.4); }

.custom-control.custom-control-pink.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-control.custom-control-pink.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #e91e63;
  background-color: #e91e63; }

.custom-control.custom-control-pink.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-control-pink.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='4.5' style='fill:%23fff'/%3E%3Cpath d='M5,1A4,4,0,1,1,1,5,4,4,0,0,1,5,1M5,0a5,5,0,1,0,5,5A5,5,0,0,0,5,0Z' style='fill:%23fff'/%3E%3C/svg%3E"); }

.custom-control.custom-control-red .custom-control-label::before,
.custom-control.custom-control-red .custom-control-input:active ~ .custom-control-label::before {
  background-color: #f44336; }

.custom-control.custom-control-red .custom-control-input:focus ~ .custom-control-label::before,
.custom-control.custom-control-red .custom-control-input:active ~ .custom-control-label::before {
  border-color: #f44336; }

.custom-control.custom-control-red .custom-control-input:focus ~ .custom-control-label::before {
  -webkit-box-shadow: 0 0 0 2px rgba(244, 67, 54, 0.4);
          box-shadow: 0 0 0 2px rgba(244, 67, 54, 0.4); }

.custom-control.custom-control-red.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-control.custom-control-red.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  border-color: #f44336;
  background-color: #f44336; }

.custom-control.custom-control-red.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-control-red.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='5' r='4.5' style='fill:%23fff'/%3E%3Cpath d='M5,1A4,4,0,1,1,1,5,4,4,0,0,1,5,1M5,0a5,5,0,1,0,5,5A5,5,0,0,0,5,0Z' style='fill:%23fff'/%3E%3C/svg%3E"); }

.navbar.bg-secondary {
  background-color: #8897AA !important;
  color: #ebeef1; }
  .navbar.bg-secondary .navbar-brand {
    color: #fff; }
    .navbar.bg-secondary .navbar-brand:hover, .navbar.bg-secondary .navbar-brand:focus {
      color: #fff; }
  .navbar.bg-secondary .navbar-nav .nav-link {
    color: #ebeef1; }
    .navbar.bg-secondary .navbar-nav .nav-link:hover, .navbar.bg-secondary .navbar-nav .nav-link:focus {
      color: #fff; }
    .navbar.bg-secondary .navbar-nav .nav-link.disabled {
      color: #c3cbd5 !important; }
  .navbar.bg-secondary .navbar-nav .show > .nav-link,
  .navbar.bg-secondary .navbar-nav .active > .nav-link,
  .navbar.bg-secondary .navbar-nav .nav-link.show,
  .navbar.bg-secondary .navbar-nav .nav-link.active {
    color: #fff; }
  .navbar.bg-secondary .navbar-toggler {
    color: #ebeef1;
    border-color: rgba(255, 255, 255, 0.15); }
  .navbar.bg-secondary .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-secondary .navbar-text {
    color: #ebeef1; }
    .navbar.bg-secondary .navbar-text a {
      color: #fff; }
      .navbar.bg-secondary .navbar-text a:hover, .navbar.bg-secondary .navbar-text a:focus {
        color: #fff; }
  .navbar.bg-secondary hr {
    border-color: rgba(255, 255, 255, 0.15); }

.navbar.bg-success {
  background-color: #02BC77 !important;
  color: #cbf1e3; }
  .navbar.bg-success .navbar-brand {
    color: #fff; }
    .navbar.bg-success .navbar-brand:hover, .navbar.bg-success .navbar-brand:focus {
      color: #fff; }
  .navbar.bg-success .navbar-nav .nav-link {
    color: #cbf1e3; }
    .navbar.bg-success .navbar-nav .nav-link:hover, .navbar.bg-success .navbar-nav .nav-link:focus {
      color: #fff; }
    .navbar.bg-success .navbar-nav .nav-link.disabled {
      color: #7bdcb8 !important; }
  .navbar.bg-success .navbar-nav .show > .nav-link,
  .navbar.bg-success .navbar-nav .active > .nav-link,
  .navbar.bg-success .navbar-nav .nav-link.show,
  .navbar.bg-success .navbar-nav .nav-link.active {
    color: #fff; }
  .navbar.bg-success .navbar-toggler {
    color: #cbf1e3;
    border-color: rgba(255, 255, 255, 0.15); }
  .navbar.bg-success .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-success .navbar-text {
    color: #cbf1e3; }
    .navbar.bg-success .navbar-text a {
      color: #fff; }
      .navbar.bg-success .navbar-text a:hover, .navbar.bg-success .navbar-text a:focus {
        color: #fff; }
  .navbar.bg-success hr {
    border-color: rgba(255, 255, 255, 0.15); }

.navbar.bg-info {
  background-color: #28c3d7 !important;
  color: #dcf5f8; }
  .navbar.bg-info .navbar-brand {
    color: #fff; }
    .navbar.bg-info .navbar-brand:hover, .navbar.bg-info .navbar-brand:focus {
      color: #fff; }
  .navbar.bg-info .navbar-nav .nav-link {
    color: #dcf5f8; }
    .navbar.bg-info .navbar-nav .nav-link:hover, .navbar.bg-info .navbar-nav .nav-link:focus {
      color: #fff; }
    .navbar.bg-info .navbar-nav .nav-link.disabled {
      color: #94e1eb !important; }
  .navbar.bg-info .navbar-nav .show > .nav-link,
  .navbar.bg-info .navbar-nav .active > .nav-link,
  .navbar.bg-info .navbar-nav .nav-link.show,
  .navbar.bg-info .navbar-nav .nav-link.active {
    color: #fff; }
  .navbar.bg-info .navbar-toggler {
    color: #dcf5f8;
    border-color: rgba(255, 255, 255, 0.15); }
  .navbar.bg-info .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-info .navbar-text {
    color: #dcf5f8; }
    .navbar.bg-info .navbar-text a {
      color: #fff; }
      .navbar.bg-info .navbar-text a:hover, .navbar.bg-info .navbar-text a:focus {
        color: #fff; }
  .navbar.bg-info hr {
    border-color: rgba(255, 255, 255, 0.15); }

.navbar.bg-warning {
  background-color: #FFD950 !important;
  color: #998230; }
  .navbar.bg-warning .navbar-brand {
    color: #665720; }
    .navbar.bg-warning .navbar-brand:hover, .navbar.bg-warning .navbar-brand:focus {
      color: #665720; }
  .navbar.bg-warning .navbar-nav .nav-link {
    color: #998230; }
    .navbar.bg-warning .navbar-nav .nav-link:hover, .navbar.bg-warning .navbar-nav .nav-link:focus {
      color: #665720; }
    .navbar.bg-warning .navbar-nav .nav-link.disabled {
      color: #c2a53d !important; }
  .navbar.bg-warning .navbar-nav .show > .nav-link,
  .navbar.bg-warning .navbar-nav .active > .nav-link,
  .navbar.bg-warning .navbar-nav .nav-link.show,
  .navbar.bg-warning .navbar-nav .nav-link.active {
    color: #665720; }
  .navbar.bg-warning .navbar-toggler {
    color: #998230;
    border-color: rgba(102, 87, 32, 0.0832855); }
  .navbar.bg-warning .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(24, 28, 33, 0.4)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-warning .navbar-text {
    color: #998230; }
    .navbar.bg-warning .navbar-text a {
      color: #665720; }
      .navbar.bg-warning .navbar-text a:hover, .navbar.bg-warning .navbar-text a:focus {
        color: #665720; }
  .navbar.bg-warning hr {
    border-color: rgba(102, 87, 32, 0.0832855); }

.navbar.bg-danger {
  background-color: #d9534f !important;
  color: #f7dbda; }
  .navbar.bg-danger .navbar-brand {
    color: #fff; }
    .navbar.bg-danger .navbar-brand:hover, .navbar.bg-danger .navbar-brand:focus {
      color: #fff; }
  .navbar.bg-danger .navbar-nav .nav-link {
    color: #f7dbda; }
    .navbar.bg-danger .navbar-nav .nav-link:hover, .navbar.bg-danger .navbar-nav .nav-link:focus {
      color: #fff; }
    .navbar.bg-danger .navbar-nav .nav-link.disabled {
      color: #eba5a2 !important; }
  .navbar.bg-danger .navbar-nav .show > .nav-link,
  .navbar.bg-danger .navbar-nav .active > .nav-link,
  .navbar.bg-danger .navbar-nav .nav-link.show,
  .navbar.bg-danger .navbar-nav .nav-link.active {
    color: #fff; }
  .navbar.bg-danger .navbar-toggler {
    color: #f7dbda;
    border-color: rgba(255, 255, 255, 0.15); }
  .navbar.bg-danger .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-danger .navbar-text {
    color: #f7dbda; }
    .navbar.bg-danger .navbar-text a {
      color: #fff; }
      .navbar.bg-danger .navbar-text a:hover, .navbar.bg-danger .navbar-text a:focus {
        color: #fff; }
  .navbar.bg-danger hr {
    border-color: rgba(255, 255, 255, 0.15); }

.navbar.bg-dark {
  background-color: #2f3337 !important;
  color: #9d9fa1; }
  .navbar.bg-dark .navbar-brand {
    color: #fff; }
    .navbar.bg-dark .navbar-brand:hover, .navbar.bg-dark .navbar-brand:focus {
      color: #fff; }
  .navbar.bg-dark .navbar-nav .nav-link {
    color: #9d9fa1; }
    .navbar.bg-dark .navbar-nav .nav-link:hover, .navbar.bg-dark .navbar-nav .nav-link:focus {
      color: #fff; }
    .navbar.bg-dark .navbar-nav .nav-link.disabled {
      color: #717477 !important; }
  .navbar.bg-dark .navbar-nav .show > .nav-link,
  .navbar.bg-dark .navbar-nav .active > .nav-link,
  .navbar.bg-dark .navbar-nav .nav-link.show,
  .navbar.bg-dark .navbar-nav .nav-link.active {
    color: #fff; }
  .navbar.bg-dark .navbar-toggler {
    color: #9d9fa1;
    border-color: rgba(255, 255, 255, 0.06); }
  .navbar.bg-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-dark .navbar-text {
    color: #9d9fa1; }
    .navbar.bg-dark .navbar-text a {
      color: #fff; }
      .navbar.bg-dark .navbar-text a:hover, .navbar.bg-dark .navbar-text a:focus {
        color: #fff; }
  .navbar.bg-dark hr {
    border-color: rgba(255, 255, 255, 0.06); }

.navbar.bg-white {
  background-color: #fff !important;
  color: #a3a4a6; }
  .navbar.bg-white .navbar-brand {
    color: #4E5155; }
    .navbar.bg-white .navbar-brand:hover, .navbar.bg-white .navbar-brand:focus {
      color: #4E5155; }
  .navbar.bg-white .navbar-nav .nav-link {
    color: #a3a4a6; }
    .navbar.bg-white .navbar-nav .nav-link:hover, .navbar.bg-white .navbar-nav .nav-link:focus {
      color: #4E5155; }
    .navbar.bg-white .navbar-nav .nav-link.disabled {
      color: #c8c8ca !important; }
  .navbar.bg-white .navbar-nav .show > .nav-link,
  .navbar.bg-white .navbar-nav .active > .nav-link,
  .navbar.bg-white .navbar-nav .nav-link.show,
  .navbar.bg-white .navbar-nav .nav-link.active {
    color: #4E5155; }
  .navbar.bg-white .navbar-toggler {
    color: #a3a4a6;
    border-color: rgba(78, 81, 85, 0.075); }
  .navbar.bg-white .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(24, 28, 33, 0.4)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-white .navbar-text {
    color: #a3a4a6; }
    .navbar.bg-white .navbar-text a {
      color: #4E5155; }
      .navbar.bg-white .navbar-text a:hover, .navbar.bg-white .navbar-text a:focus {
        color: #4E5155; }
  .navbar.bg-white hr {
    border-color: rgba(78, 81, 85, 0.075); }

.navbar.bg-light {
  background-color: #f1f1f2 !important;
  color: #a3a4a6; }
  .navbar.bg-light .navbar-brand {
    color: #4E5155; }
    .navbar.bg-light .navbar-brand:hover, .navbar.bg-light .navbar-brand:focus {
      color: #4E5155; }
  .navbar.bg-light .navbar-nav .nav-link {
    color: #a3a4a6; }
    .navbar.bg-light .navbar-nav .nav-link:hover, .navbar.bg-light .navbar-nav .nav-link:focus {
      color: #4E5155; }
    .navbar.bg-light .navbar-nav .nav-link.disabled {
      color: #c2c3c4 !important; }
  .navbar.bg-light .navbar-nav .show > .nav-link,
  .navbar.bg-light .navbar-nav .active > .nav-link,
  .navbar.bg-light .navbar-nav .nav-link.show,
  .navbar.bg-light .navbar-nav .nav-link.active {
    color: #4E5155; }
  .navbar.bg-light .navbar-toggler {
    color: #a3a4a6;
    border-color: rgba(78, 81, 85, 0.0777227); }
  .navbar.bg-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(24, 28, 33, 0.4)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-light .navbar-text {
    color: #a3a4a6; }
    .navbar.bg-light .navbar-text a {
      color: #4E5155; }
      .navbar.bg-light .navbar-text a:hover, .navbar.bg-light .navbar-text a:focus {
        color: #4E5155; }
  .navbar.bg-light hr {
    border-color: rgba(78, 81, 85, 0.0777227); }

.navbar.bg-lighter {
  background-color: #f8f8f8 !important;
  color: #a3a4a6; }
  .navbar.bg-lighter .navbar-brand {
    color: #4E5155; }
    .navbar.bg-lighter .navbar-brand:hover, .navbar.bg-lighter .navbar-brand:focus {
      color: #4E5155; }
  .navbar.bg-lighter .navbar-nav .nav-link {
    color: #a3a4a6; }
    .navbar.bg-lighter .navbar-nav .nav-link:hover, .navbar.bg-lighter .navbar-nav .nav-link:focus {
      color: #4E5155; }
    .navbar.bg-lighter .navbar-nav .nav-link.disabled {
      color: #c5c6c7 !important; }
  .navbar.bg-lighter .navbar-nav .show > .nav-link,
  .navbar.bg-lighter .navbar-nav .active > .nav-link,
  .navbar.bg-lighter .navbar-nav .nav-link.show,
  .navbar.bg-lighter .navbar-nav .nav-link.active {
    color: #4E5155; }
  .navbar.bg-lighter .navbar-toggler {
    color: #a3a4a6;
    border-color: rgba(78, 81, 85, 0.0763725); }
  .navbar.bg-lighter .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(24, 28, 33, 0.4)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"); }
  .navbar.bg-lighter .navbar-text {
    color: #a3a4a6; }
    .navbar.bg-lighter .navbar-text a {
      color: #4E5155; }
      .navbar.bg-lighter .navbar-text a:hover, .navbar.bg-lighter .navbar-text a:focus {
        color: #4E5155; }
  .navbar.bg-lighter hr {
    border-color: rgba(78, 81, 85, 0.0763725); }

.sidenav.bg-secondary {
  background-color: #8897AA !important;
  color: #ebeef1; }
  .sidenav.bg-secondary .sidenav-link,
  .sidenav.bg-secondary .sidenav-horizontal-prev,
  .sidenav.bg-secondary .sidenav-horizontal-next {
    color: #ebeef1; }
    .sidenav.bg-secondary .sidenav-link:hover, .sidenav.bg-secondary .sidenav-link:focus,
    .sidenav.bg-secondary .sidenav-horizontal-prev:hover,
    .sidenav.bg-secondary .sidenav-horizontal-prev:focus,
    .sidenav.bg-secondary .sidenav-horizontal-next:hover,
    .sidenav.bg-secondary .sidenav-horizontal-next:focus {
      color: #fff; }
    .sidenav.bg-secondary .sidenav-link.active,
    .sidenav.bg-secondary .sidenav-horizontal-prev.active,
    .sidenav.bg-secondary .sidenav-horizontal-next.active {
      color: #fff; }
  .sidenav.bg-secondary .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-secondary .sidenav-horizontal-prev.disabled,
  .sidenav.bg-secondary .sidenav-horizontal-next.disabled {
    color: #c3cbd5 !important; }
  .sidenav.bg-secondary .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-secondary .sidenav-item.active > .sidenav-link {
    color: #fff; }
  .sidenav.bg-secondary .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #818fa2; }
  .sidenav.bg-secondary.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #7b889a; }
  .sidenav.bg-secondary.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-secondary.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #818fa2; }
  .sidenav.bg-secondary .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-secondary .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #ebeef1; }
  .sidenav.bg-secondary .sidenav-text {
    color: #fff; }
  .sidenav.bg-secondary .sidenav-header {
    color: #d2d8df; }
  .sidenav.bg-secondary hr,
  .sidenav.bg-secondary .sidenav-divider,
  .sidenav.bg-secondary .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(255, 255, 255, 0.15) !important; }
  .sidenav.bg-secondary .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-secondary .sidenav-block::before {
    background-color: rgba(255, 255, 255, 0.15); }
  .sidenav.bg-secondary .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #94a0b0; }
  .sidenav.bg-secondary .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #fff; }
  .sidenav.bg-secondary .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-secondary .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #818fa2;
            box-shadow: 0 0 0 2px #818fa2; }
  .sidenav.bg-secondary .ps__thumb-y,
  .sidenav.bg-secondary .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(255, 255, 255, 0.633225) !important; }

.sidenav.bg-success {
  background-color: #02BC77 !important;
  color: #cbf1e3; }
  .sidenav.bg-success .sidenav-link,
  .sidenav.bg-success .sidenav-horizontal-prev,
  .sidenav.bg-success .sidenav-horizontal-next {
    color: #cbf1e3; }
    .sidenav.bg-success .sidenav-link:hover, .sidenav.bg-success .sidenav-link:focus,
    .sidenav.bg-success .sidenav-horizontal-prev:hover,
    .sidenav.bg-success .sidenav-horizontal-prev:focus,
    .sidenav.bg-success .sidenav-horizontal-next:hover,
    .sidenav.bg-success .sidenav-horizontal-next:focus {
      color: #fff; }
    .sidenav.bg-success .sidenav-link.active,
    .sidenav.bg-success .sidenav-horizontal-prev.active,
    .sidenav.bg-success .sidenav-horizontal-next.active {
      color: #fff; }
  .sidenav.bg-success .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-success .sidenav-horizontal-prev.disabled,
  .sidenav.bg-success .sidenav-horizontal-next.disabled {
    color: #7bdcb8 !important; }
  .sidenav.bg-success .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-success .sidenav-item.active > .sidenav-link {
    color: #fff; }
  .sidenav.bg-success .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #02b371; }
  .sidenav.bg-success.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #02aa6b; }
  .sidenav.bg-success.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-success.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #02b371; }
  .sidenav.bg-success .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-success .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #cbf1e3; }
  .sidenav.bg-success .sidenav-text {
    color: #fff; }
  .sidenav.bg-success .sidenav-header {
    color: #99e4c8; }
  .sidenav.bg-success hr,
  .sidenav.bg-success .sidenav-divider,
  .sidenav.bg-success .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(255, 255, 255, 0.15) !important; }
  .sidenav.bg-success .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-success .sidenav-block::before {
    background-color: rgba(255, 255, 255, 0.15); }
  .sidenav.bg-success .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #28be86; }
  .sidenav.bg-success .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #fff; }
  .sidenav.bg-success .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-success .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #02b371;
            box-shadow: 0 0 0 2px #02b371; }
  .sidenav.bg-success .ps__thumb-y,
  .sidenav.bg-success .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(255, 255, 255, 0.595325) !important; }

.sidenav.bg-info {
  background-color: #28c3d7 !important;
  color: #dcf5f8; }
  .sidenav.bg-info .sidenav-link,
  .sidenav.bg-info .sidenav-horizontal-prev,
  .sidenav.bg-info .sidenav-horizontal-next {
    color: #dcf5f8; }
    .sidenav.bg-info .sidenav-link:hover, .sidenav.bg-info .sidenav-link:focus,
    .sidenav.bg-info .sidenav-horizontal-prev:hover,
    .sidenav.bg-info .sidenav-horizontal-prev:focus,
    .sidenav.bg-info .sidenav-horizontal-next:hover,
    .sidenav.bg-info .sidenav-horizontal-next:focus {
      color: #fff; }
    .sidenav.bg-info .sidenav-link.active,
    .sidenav.bg-info .sidenav-horizontal-prev.active,
    .sidenav.bg-info .sidenav-horizontal-next.active {
      color: #fff; }
  .sidenav.bg-info .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-info .sidenav-horizontal-prev.disabled,
  .sidenav.bg-info .sidenav-horizontal-next.disabled {
    color: #94e1eb !important; }
  .sidenav.bg-info .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-info .sidenav-item.active > .sidenav-link {
    color: #fff; }
  .sidenav.bg-info .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #26b9cc; }
  .sidenav.bg-info.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #24b0c2; }
  .sidenav.bg-info.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-info.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #26b9cc; }
  .sidenav.bg-info .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-info .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #dcf5f8; }
  .sidenav.bg-info .sidenav-text {
    color: #fff; }
  .sidenav.bg-info .sidenav-header {
    color: #afe9f0; }
  .sidenav.bg-info hr,
  .sidenav.bg-info .sidenav-divider,
  .sidenav.bg-info .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(255, 255, 255, 0.15) !important; }
  .sidenav.bg-info .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-info .sidenav-block::before {
    background-color: rgba(255, 255, 255, 0.15); }
  .sidenav.bg-info .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #47c4d4; }
  .sidenav.bg-info .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #fff; }
  .sidenav.bg-info .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-info .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #26b9cc;
            box-shadow: 0 0 0 2px #26b9cc; }
  .sidenav.bg-info .ps__thumb-y,
  .sidenav.bg-info .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(255, 255, 255, 0.636761) !important; }

.sidenav.bg-warning {
  background-color: #FFD950 !important;
  color: #998230; }
  .sidenav.bg-warning .sidenav-link,
  .sidenav.bg-warning .sidenav-horizontal-prev,
  .sidenav.bg-warning .sidenav-horizontal-next {
    color: #998230; }
    .sidenav.bg-warning .sidenav-link:hover, .sidenav.bg-warning .sidenav-link:focus,
    .sidenav.bg-warning .sidenav-horizontal-prev:hover,
    .sidenav.bg-warning .sidenav-horizontal-prev:focus,
    .sidenav.bg-warning .sidenav-horizontal-next:hover,
    .sidenav.bg-warning .sidenav-horizontal-next:focus {
      color: #665720; }
    .sidenav.bg-warning .sidenav-link.active,
    .sidenav.bg-warning .sidenav-horizontal-prev.active,
    .sidenav.bg-warning .sidenav-horizontal-next.active {
      color: #665720; }
  .sidenav.bg-warning .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-warning .sidenav-horizontal-prev.disabled,
  .sidenav.bg-warning .sidenav-horizontal-next.disabled {
    color: #c2a53d !important; }
  .sidenav.bg-warning .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-warning .sidenav-item.active > .sidenav-link {
    color: #665720; }
  .sidenav.bg-warning .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #f9d44e; }
  .sidenav.bg-warning.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #f3cf4c; }
  .sidenav.bg-warning.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-warning.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #f9d44e; }
  .sidenav.bg-warning .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-warning .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #998230; }
  .sidenav.bg-warning .sidenav-text {
    color: #665720; }
  .sidenav.bg-warning .sidenav-header {
    color: #b39838; }
  .sidenav.bg-warning hr,
  .sidenav.bg-warning .sidenav-divider,
  .sidenav.bg-warning .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(102, 87, 32, 0.0832855) !important; }
  .sidenav.bg-warning .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-warning .sidenav-block::before {
    background-color: rgba(102, 87, 32, 0.0832855); }
  .sidenav.bg-warning .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #edca4a; }
  .sidenav.bg-warning .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #665720; }
  .sidenav.bg-warning .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-warning .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #f9d44e;
            box-shadow: 0 0 0 2px #f9d44e; }
  .sidenav.bg-warning .ps__thumb-y,
  .sidenav.bg-warning .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(102, 87, 32, 0.266284) !important; }

.sidenav.bg-danger {
  background-color: #d9534f !important;
  color: #f7dbda; }
  .sidenav.bg-danger .sidenav-link,
  .sidenav.bg-danger .sidenav-horizontal-prev,
  .sidenav.bg-danger .sidenav-horizontal-next {
    color: #f7dbda; }
    .sidenav.bg-danger .sidenav-link:hover, .sidenav.bg-danger .sidenav-link:focus,
    .sidenav.bg-danger .sidenav-horizontal-prev:hover,
    .sidenav.bg-danger .sidenav-horizontal-prev:focus,
    .sidenav.bg-danger .sidenav-horizontal-next:hover,
    .sidenav.bg-danger .sidenav-horizontal-next:focus {
      color: #fff; }
    .sidenav.bg-danger .sidenav-link.active,
    .sidenav.bg-danger .sidenav-horizontal-prev.active,
    .sidenav.bg-danger .sidenav-horizontal-next.active {
      color: #fff; }
  .sidenav.bg-danger .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-danger .sidenav-horizontal-prev.disabled,
  .sidenav.bg-danger .sidenav-horizontal-next.disabled {
    color: #eba5a2 !important; }
  .sidenav.bg-danger .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-danger .sidenav-item.active > .sidenav-link {
    color: #fff; }
  .sidenav.bg-danger .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #ce4f4b; }
  .sidenav.bg-danger.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #c44b47; }
  .sidenav.bg-danger.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-danger.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #ce4f4b; }
  .sidenav.bg-danger .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-danger .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #f7dbda; }
  .sidenav.bg-danger .sidenav-text {
    color: #fff; }
  .sidenav.bg-danger .sidenav-header {
    color: #f0b9b7; }
  .sidenav.bg-danger hr,
  .sidenav.bg-danger .sidenav-divider,
  .sidenav.bg-danger .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(255, 255, 255, 0.15) !important; }
  .sidenav.bg-danger .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-danger .sidenav-block::before {
    background-color: rgba(255, 255, 255, 0.15); }
  .sidenav.bg-danger .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #d56966; }
  .sidenav.bg-danger .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #fff; }
  .sidenav.bg-danger .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-danger .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #ce4f4b;
            box-shadow: 0 0 0 2px #ce4f4b; }
  .sidenav.bg-danger .ps__thumb-y,
  .sidenav.bg-danger .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(255, 255, 255, 0.592329) !important; }

.sidenav.bg-dark {
  background-color: #2f3337 !important;
  color: #9d9fa1; }
  .sidenav.bg-dark .sidenav-link,
  .sidenav.bg-dark .sidenav-horizontal-prev,
  .sidenav.bg-dark .sidenav-horizontal-next {
    color: #9d9fa1; }
    .sidenav.bg-dark .sidenav-link:hover, .sidenav.bg-dark .sidenav-link:focus,
    .sidenav.bg-dark .sidenav-horizontal-prev:hover,
    .sidenav.bg-dark .sidenav-horizontal-prev:focus,
    .sidenav.bg-dark .sidenav-horizontal-next:hover,
    .sidenav.bg-dark .sidenav-horizontal-next:focus {
      color: #fff; }
    .sidenav.bg-dark .sidenav-link.active,
    .sidenav.bg-dark .sidenav-horizontal-prev.active,
    .sidenav.bg-dark .sidenav-horizontal-next.active {
      color: #fff; }
  .sidenav.bg-dark .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-dark .sidenav-horizontal-prev.disabled,
  .sidenav.bg-dark .sidenav-horizontal-next.disabled {
    color: #717477 !important; }
  .sidenav.bg-dark .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-dark .sidenav-item.active > .sidenav-link {
    color: #fff; }
  .sidenav.bg-dark .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #393d41; }
  .sidenav.bg-dark.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #43474b; }
  .sidenav.bg-dark.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-dark.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #393d41; }
  .sidenav.bg-dark .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-dark .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #9d9fa1; }
  .sidenav.bg-dark .sidenav-text {
    color: #fff; }
  .sidenav.bg-dark .sidenav-header {
    color: #828487; }
  .sidenav.bg-dark hr,
  .sidenav.bg-dark .sidenav-divider,
  .sidenav.bg-dark .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(255, 255, 255, 0.06) !important; }
  .sidenav.bg-dark .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-dark .sidenav-block::before {
    background-color: rgba(255, 255, 255, 0.06); }
  .sidenav.bg-dark .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #45494c; }
  .sidenav.bg-dark .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #fff; }
  .sidenav.bg-dark .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-dark .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #393d41;
            box-shadow: 0 0 0 2px #393d41; }
  .sidenav.bg-dark .ps__thumb-y,
  .sidenav.bg-dark .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(255, 255, 255, 0.478839) !important; }

.sidenav.bg-white {
  background-color: #fff !important;
  color: #a3a4a6; }
  .sidenav.bg-white .sidenav-link,
  .sidenav.bg-white .sidenav-horizontal-prev,
  .sidenav.bg-white .sidenav-horizontal-next {
    color: #a3a4a6; }
    .sidenav.bg-white .sidenav-link:hover, .sidenav.bg-white .sidenav-link:focus,
    .sidenav.bg-white .sidenav-horizontal-prev:hover,
    .sidenav.bg-white .sidenav-horizontal-prev:focus,
    .sidenav.bg-white .sidenav-horizontal-next:hover,
    .sidenav.bg-white .sidenav-horizontal-next:focus {
      color: #4E5155; }
    .sidenav.bg-white .sidenav-link.active,
    .sidenav.bg-white .sidenav-horizontal-prev.active,
    .sidenav.bg-white .sidenav-horizontal-next.active {
      color: #4E5155; }
  .sidenav.bg-white .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-white .sidenav-horizontal-prev.disabled,
  .sidenav.bg-white .sidenav-horizontal-next.disabled {
    color: #c8c8ca !important; }
  .sidenav.bg-white .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-white .sidenav-item.active > .sidenav-link {
    color: #4E5155; }
  .sidenav.bg-white .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #fff; }
  .sidenav.bg-white.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #f9f9f9; }
  .sidenav.bg-white.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-white.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #fff; }
  .sidenav.bg-white .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-white .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #a3a4a6; }
  .sidenav.bg-white .sidenav-text {
    color: #4E5155; }
  .sidenav.bg-white .sidenav-header {
    color: #babbbc; }
  .sidenav.bg-white hr,
  .sidenav.bg-white .sidenav-divider,
  .sidenav.bg-white .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(78, 81, 85, 0.075) !important; }
  .sidenav.bg-white .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-white .sidenav-block::before {
    background-color: rgba(78, 81, 85, 0.075); }
  .sidenav.bg-white .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #f2f2f2; }
  .sidenav.bg-white .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #4E5155; }
  .sidenav.bg-white .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-white .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #fff;
            box-shadow: 0 0 0 2px #fff; }
  .sidenav.bg-white .ps__thumb-y,
  .sidenav.bg-white .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(78, 81, 85, 0.2) !important; }

.sidenav.bg-light {
  background-color: #f1f1f2 !important;
  color: #a3a4a6; }
  .sidenav.bg-light .sidenav-link,
  .sidenav.bg-light .sidenav-horizontal-prev,
  .sidenav.bg-light .sidenav-horizontal-next {
    color: #a3a4a6; }
    .sidenav.bg-light .sidenav-link:hover, .sidenav.bg-light .sidenav-link:focus,
    .sidenav.bg-light .sidenav-horizontal-prev:hover,
    .sidenav.bg-light .sidenav-horizontal-prev:focus,
    .sidenav.bg-light .sidenav-horizontal-next:hover,
    .sidenav.bg-light .sidenav-horizontal-next:focus {
      color: #4E5155; }
    .sidenav.bg-light .sidenav-link.active,
    .sidenav.bg-light .sidenav-horizontal-prev.active,
    .sidenav.bg-light .sidenav-horizontal-next.active {
      color: #4E5155; }
  .sidenav.bg-light .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-light .sidenav-horizontal-prev.disabled,
  .sidenav.bg-light .sidenav-horizontal-next.disabled {
    color: #c2c3c4 !important; }
  .sidenav.bg-light .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-light .sidenav-item.active > .sidenav-link {
    color: #4E5155; }
  .sidenav.bg-light .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #ebebec; }
  .sidenav.bg-light.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #e5e5e6; }
  .sidenav.bg-light.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-light.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #ebebec; }
  .sidenav.bg-light .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-light .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #a3a4a6; }
  .sidenav.bg-light .sidenav-text {
    color: #4E5155; }
  .sidenav.bg-light .sidenav-header {
    color: #b7b7b9; }
  .sidenav.bg-light hr,
  .sidenav.bg-light .sidenav-divider,
  .sidenav.bg-light .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(78, 81, 85, 0.0777227) !important; }
  .sidenav.bg-light .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-light .sidenav-block::before {
    background-color: rgba(78, 81, 85, 0.0777227); }
  .sidenav.bg-light .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #dfdfe0; }
  .sidenav.bg-light .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #4E5155; }
  .sidenav.bg-light .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-light .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #ebebec;
            box-shadow: 0 0 0 2px #ebebec; }
  .sidenav.bg-light .ps__thumb-y,
  .sidenav.bg-light .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(78, 81, 85, 0.221782) !important; }

.sidenav.bg-lighter {
  background-color: #f8f8f8 !important;
  color: #a3a4a6; }
  .sidenav.bg-lighter .sidenav-link,
  .sidenav.bg-lighter .sidenav-horizontal-prev,
  .sidenav.bg-lighter .sidenav-horizontal-next {
    color: #a3a4a6; }
    .sidenav.bg-lighter .sidenav-link:hover, .sidenav.bg-lighter .sidenav-link:focus,
    .sidenav.bg-lighter .sidenav-horizontal-prev:hover,
    .sidenav.bg-lighter .sidenav-horizontal-prev:focus,
    .sidenav.bg-lighter .sidenav-horizontal-next:hover,
    .sidenav.bg-lighter .sidenav-horizontal-next:focus {
      color: #4E5155; }
    .sidenav.bg-lighter .sidenav-link.active,
    .sidenav.bg-lighter .sidenav-horizontal-prev.active,
    .sidenav.bg-lighter .sidenav-horizontal-next.active {
      color: #4E5155; }
  .sidenav.bg-lighter .sidenav-item.disabled .sidenav-link,
  .sidenav.bg-lighter .sidenav-horizontal-prev.disabled,
  .sidenav.bg-lighter .sidenav-horizontal-next.disabled {
    color: #c5c6c7 !important; }
  .sidenav.bg-lighter .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav.bg-lighter .sidenav-item.active > .sidenav-link {
    color: #4E5155; }
  .sidenav.bg-lighter .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #f2f2f2; }
  .sidenav.bg-lighter.sidenav-horizontal .sidenav-menu > .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background-color: #ececec; }
  .sidenav.bg-lighter.sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing) > .sidenav-menu,
  .sidenav.bg-lighter.sidenav-horizontal .sidenav-inner > .sidenav-item.open > .sidenav-toggle {
    background: #f2f2f2; }
  .sidenav.bg-lighter .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav.bg-lighter .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    background: transparent;
    color: #a3a4a6; }
  .sidenav.bg-lighter .sidenav-text {
    color: #4E5155; }
  .sidenav.bg-lighter .sidenav-header {
    color: #b8b9bb; }
  .sidenav.bg-lighter hr,
  .sidenav.bg-lighter .sidenav-divider,
  .sidenav.bg-lighter .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(78, 81, 85, 0.0763725) !important; }
  .sidenav.bg-lighter .sidenav-inner > .sidenav-header::before,
  .sidenav.bg-lighter .sidenav-block::before {
    background-color: rgba(78, 81, 85, 0.0763725); }
  .sidenav.bg-lighter .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: #e5e6e6; }
  .sidenav.bg-lighter .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #4E5155; }
  .sidenav.bg-lighter .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav.bg-lighter .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    -webkit-box-shadow: 0 0 0 2px #f2f2f2;
            box-shadow: 0 0 0 2px #f2f2f2; }
  .sidenav.bg-lighter .ps__thumb-y,
  .sidenav.bg-lighter .ps__rail-y.ps--clicking > .ps__thumb-y {
    background: rgba(78, 81, 85, 0.21098) !important; }

.footer.bg-secondary {
  background-color: #8897AA !important;
  color: #ebeef1; }
  .footer.bg-secondary .footer-link {
    color: #ebeef1; }
    .footer.bg-secondary .footer-link:hover, .footer.bg-secondary .footer-link:focus {
      color: #fff; }
    .footer.bg-secondary .footer-link.disabled {
      color: #c3cbd5 !important; }
  .footer.bg-secondary .footer-text {
    color: #fff; }
  .footer.bg-secondary .show > .footer-link,
  .footer.bg-secondary .active > .footer-link,
  .footer.bg-secondary .footer-link.show,
  .footer.bg-secondary .footer-link.active {
    color: #fff; }
  .footer.bg-secondary hr {
    border-color: rgba(255, 255, 255, 0.15); }

.footer.bg-success {
  background-color: #02BC77 !important;
  color: #cbf1e3; }
  .footer.bg-success .footer-link {
    color: #cbf1e3; }
    .footer.bg-success .footer-link:hover, .footer.bg-success .footer-link:focus {
      color: #fff; }
    .footer.bg-success .footer-link.disabled {
      color: #7bdcb8 !important; }
  .footer.bg-success .footer-text {
    color: #fff; }
  .footer.bg-success .show > .footer-link,
  .footer.bg-success .active > .footer-link,
  .footer.bg-success .footer-link.show,
  .footer.bg-success .footer-link.active {
    color: #fff; }
  .footer.bg-success hr {
    border-color: rgba(255, 255, 255, 0.15); }

.footer.bg-info {
  background-color: #28c3d7 !important;
  color: #dcf5f8; }
  .footer.bg-info .footer-link {
    color: #dcf5f8; }
    .footer.bg-info .footer-link:hover, .footer.bg-info .footer-link:focus {
      color: #fff; }
    .footer.bg-info .footer-link.disabled {
      color: #94e1eb !important; }
  .footer.bg-info .footer-text {
    color: #fff; }
  .footer.bg-info .show > .footer-link,
  .footer.bg-info .active > .footer-link,
  .footer.bg-info .footer-link.show,
  .footer.bg-info .footer-link.active {
    color: #fff; }
  .footer.bg-info hr {
    border-color: rgba(255, 255, 255, 0.15); }

.footer.bg-warning {
  background-color: #FFD950 !important;
  color: #998230; }
  .footer.bg-warning .footer-link {
    color: #998230; }
    .footer.bg-warning .footer-link:hover, .footer.bg-warning .footer-link:focus {
      color: #665720; }
    .footer.bg-warning .footer-link.disabled {
      color: #c2a53d !important; }
  .footer.bg-warning .footer-text {
    color: #665720; }
  .footer.bg-warning .show > .footer-link,
  .footer.bg-warning .active > .footer-link,
  .footer.bg-warning .footer-link.show,
  .footer.bg-warning .footer-link.active {
    color: #665720; }
  .footer.bg-warning hr {
    border-color: rgba(102, 87, 32, 0.0832855); }

.footer.bg-danger {
  background-color: #d9534f !important;
  color: #f7dbda; }
  .footer.bg-danger .footer-link {
    color: #f7dbda; }
    .footer.bg-danger .footer-link:hover, .footer.bg-danger .footer-link:focus {
      color: #fff; }
    .footer.bg-danger .footer-link.disabled {
      color: #eba5a2 !important; }
  .footer.bg-danger .footer-text {
    color: #fff; }
  .footer.bg-danger .show > .footer-link,
  .footer.bg-danger .active > .footer-link,
  .footer.bg-danger .footer-link.show,
  .footer.bg-danger .footer-link.active {
    color: #fff; }
  .footer.bg-danger hr {
    border-color: rgba(255, 255, 255, 0.15); }

.footer.bg-dark {
  background-color: #2f3337 !important;
  color: #9d9fa1; }
  .footer.bg-dark .footer-link {
    color: #9d9fa1; }
    .footer.bg-dark .footer-link:hover, .footer.bg-dark .footer-link:focus {
      color: #fff; }
    .footer.bg-dark .footer-link.disabled {
      color: #717477 !important; }
  .footer.bg-dark .footer-text {
    color: #fff; }
  .footer.bg-dark .show > .footer-link,
  .footer.bg-dark .active > .footer-link,
  .footer.bg-dark .footer-link.show,
  .footer.bg-dark .footer-link.active {
    color: #fff; }
  .footer.bg-dark hr {
    border-color: rgba(255, 255, 255, 0.06); }

.footer.bg-white {
  background-color: #fff !important;
  color: #a3a4a6; }
  .footer.bg-white .footer-link {
    color: #a3a4a6; }
    .footer.bg-white .footer-link:hover, .footer.bg-white .footer-link:focus {
      color: #4E5155; }
    .footer.bg-white .footer-link.disabled {
      color: #c8c8ca !important; }
  .footer.bg-white .footer-text {
    color: #4E5155; }
  .footer.bg-white .show > .footer-link,
  .footer.bg-white .active > .footer-link,
  .footer.bg-white .footer-link.show,
  .footer.bg-white .footer-link.active {
    color: #4E5155; }
  .footer.bg-white hr {
    border-color: rgba(78, 81, 85, 0.075); }

.footer.bg-light {
  background-color: #f1f1f2 !important;
  color: #a3a4a6; }
  .footer.bg-light .footer-link {
    color: #a3a4a6; }
    .footer.bg-light .footer-link:hover, .footer.bg-light .footer-link:focus {
      color: #4E5155; }
    .footer.bg-light .footer-link.disabled {
      color: #c2c3c4 !important; }
  .footer.bg-light .footer-text {
    color: #4E5155; }
  .footer.bg-light .show > .footer-link,
  .footer.bg-light .active > .footer-link,
  .footer.bg-light .footer-link.show,
  .footer.bg-light .footer-link.active {
    color: #4E5155; }
  .footer.bg-light hr {
    border-color: rgba(78, 81, 85, 0.0777227); }

.footer.bg-lighter {
  background-color: #f8f8f8 !important;
  color: #a3a4a6; }
  .footer.bg-lighter .footer-link {
    color: #a3a4a6; }
    .footer.bg-lighter .footer-link:hover, .footer.bg-lighter .footer-link:focus {
      color: #4E5155; }
    .footer.bg-lighter .footer-link.disabled {
      color: #c5c6c7 !important; }
  .footer.bg-lighter .footer-text {
    color: #4E5155; }
  .footer.bg-lighter .show > .footer-link,
  .footer.bg-lighter .active > .footer-link,
  .footer.bg-lighter .footer-link.show,
  .footer.bg-lighter .footer-link.active {
    color: #4E5155; }
  .footer.bg-lighter hr {
    border-color: rgba(78, 81, 85, 0.0763725); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVuZG9yL2Nzcy9ydGwvY29sb3JzLmNzcyIsInNvdXJjZXMiOlsidmVuZG9yL2Nzcy9ydGwvY29sb3JzLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19pbmNsdWRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fZnVuY3Rpb25zLnNjc3MiLCJ2ZW5kb3IvY3NzL19jdXN0b20tdmFyaWFibGVzL19hcHB3b3JrLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL192YXJpYWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21peGlucy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2l6ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXNpYmlsaXR5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3gtc2hhZG93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZmxvYXQuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX21peGlucy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIiRydGwtc3VwcG9ydDogdHJ1ZTtcblxuQGltcG9ydCBcIi4uL19hcHB3b3JrL2luY2x1ZGVcIjtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDdXN0b20gY29sb3JzXG5cbiRjdXN0b20tY29sb3JzOiAoXG4gIHR3aXR0ZXI6ICMxREExRjIsXG4gIGdvb2dsZTogI0QxNTIzRixcbiAgZmFjZWJvb2s6ICMzQjU5OTgsXG4gIHBpbnRlcmVzdDogI2JkMTIxYyxcbiAgaW5zdGFncmFtOiAjMDAwLFxuXG4gIHdpbmRvd3M6ICMyNkFBRTEsXG4gIG1hY29zOiAjMzQzNDM0LFxuICBsaW51eDogIzgwMDA4MFxuKSAhZGVmYXVsdDtcblxuQGVhY2ggJGNvbG9yLW5hbWUsICRjb2xvci12YWx1ZSBpbiAkY3VzdG9tLWNvbG9ycyB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtI3skY29sb3ItbmFtZX0nLCAkY29sb3ItdmFsdWUpO1xuICBAaW5jbHVkZSBiZy12YXJpYW50KCcuYmctI3skY29sb3ItbmFtZX0nLCAkY29sb3ItdmFsdWUpO1xuXG4gIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLXZhcmlhbnQoJy5idG4tI3skY29sb3ItbmFtZX0nLCAkY29sb3ItdmFsdWUpO1xuICBAaW5jbHVkZSBhcHB3b3JrLWJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJy5idG4tb3V0bGluZS0jeyRjb2xvci1uYW1lfScsICRjb2xvci12YWx1ZSk7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnV0dG9uc1xuXG5AaW5jbHVkZSBhcHB3b3JrLWJ1dHRvbi12YXJpYW50KCcuYnRuLXdoaXRlJywgI2ZmZiwgJGJvZHktY29sb3IpO1xuQGluY2x1ZGUgYXBwd29yay1idXR0b24tb3V0bGluZS12YXJpYW50KCcuYnRuLW91dGxpbmUtd2hpdGUnLCAjZmZmLCAkYm9keS1jb2xvcik7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ3VzdG9tIGNvbnRyb2xzXG5cbiRjdXN0b20tY29udHJvbC1jb2xvcnM6IChcbiAgYmxhY2s6ICMwMDAsXG4gIHdoaXRlOiAjZmZmLFxuICBzaWx2ZXI6ICNlZWUsXG4gIGdyYXk6ICM3NzcsXG4gIGdvbGQ6ICNmZmViM2IsXG4gIHBpbms6ICNlOTFlNjMsXG4gIHJlZDogI2Y0NDMzNlxuKSAhZGVmYXVsdDtcblxuQGVhY2ggJGNvbG9yLW5hbWUsICRjb2xvci12YWx1ZSBpbiAkY3VzdG9tLWNvbnRyb2wtY29sb3JzIHtcbiAgQGluY2x1ZGUgYXBwd29yay1jdXN0b20tY29udHJvbC12YXJpYW50KCcuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNvbnRyb2wtI3skY29sb3ItbmFtZX0nLCAkY29sb3ItdmFsdWUsICRkZWZhdWx0LWJhY2tncm91bmQ6ICRjb2xvci12YWx1ZSk7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTmF2YmFyXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaWYgJGNvbG9yICE9IHByaW1hcnkgYW5kICRjb2xvciAhPSBsaWdodCB7XG4gICAgQGluY2x1ZGUgYXBwd29yay1uYXZiYXItdmFyaWFudCgnLm5hdmJhci5iZy0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICB9XG59XG5AaW5jbHVkZSBhcHB3b3JrLW5hdmJhci12YXJpYW50KCcubmF2YmFyLmJnLXdoaXRlJywgICAjZmZmLCAgICAgICRjb2xvcjogJHRleHQtbXV0ZWQsICRhY3RpdmUtY29sb3I6ICRib2R5LWNvbG9yKTtcbkBpbmNsdWRlIGFwcHdvcmstbmF2YmFyLXZhcmlhbnQoJy5uYXZiYXIuYmctbGlnaHQnLCAgICRncmF5LTEwMCwgJGNvbG9yOiAkdGV4dC1tdXRlZCwgJGFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IpO1xuQGluY2x1ZGUgYXBwd29yay1uYXZiYXItdmFyaWFudCgnLm5hdmJhci5iZy1saWdodGVyJywgJGdyYXktNTAsICAkY29sb3I6ICR0ZXh0LW11dGVkLCAkYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvcik7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2lkZW5hdlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGlmICRjb2xvciAhPSBwcmltYXJ5IGFuZCAkY29sb3IgIT0gbGlnaHQge1xuICAgIEBpbmNsdWRlIGFwcHdvcmstc2lkZW5hdi12YXJpYW50KCcuc2lkZW5hdi5iZy0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICB9XG59XG5AaW5jbHVkZSBhcHB3b3JrLXNpZGVuYXYtdmFyaWFudCgnLnNpZGVuYXYuYmctd2hpdGUnLCAjZmZmLCAgICAgICAkY29sb3I6ICR0ZXh0LW11dGVkLCAkYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvciwgJG1lbnUtYmc6ICNmZmYpO1xuQGluY2x1ZGUgYXBwd29yay1zaWRlbmF2LXZhcmlhbnQoJy5zaWRlbmF2LmJnLWxpZ2h0JywgJGdyYXktMTAwLCAgJGNvbG9yOiAkdGV4dC1tdXRlZCwgJGFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IpO1xuQGluY2x1ZGUgYXBwd29yay1zaWRlbmF2LXZhcmlhbnQoJy5zaWRlbmF2LmJnLWxpZ2h0ZXInLCAkZ3JheS01MCwgJGNvbG9yOiAkdGV4dC1tdXRlZCwgJGFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IpO1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvb3RlclxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGlmICRjb2xvciAhPSBwcmltYXJ5IGFuZCAkY29sb3IgIT0gbGlnaHQge1xuICAgIEBpbmNsdWRlIGFwcHdvcmstZm9vdGVyLXZhcmlhbnQoJy5mb290ZXIuYmctI3skY29sb3J9JywgJHZhbHVlKTtcbiAgfVxufVxuQGluY2x1ZGUgYXBwd29yay1mb290ZXItdmFyaWFudCgnLmZvb3Rlci5iZy13aGl0ZScsICAgI2ZmZiwgICAgICAkY29sb3I6ICR0ZXh0LW11dGVkLCAkYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvcik7XG5AaW5jbHVkZSBhcHB3b3JrLWZvb3Rlci12YXJpYW50KCcuZm9vdGVyLmJnLWxpZ2h0JywgICAkZ3JheS0xMDAsICRjb2xvcjogJHRleHQtbXV0ZWQsICRhY3RpdmUtY29sb3I6ICRib2R5LWNvbG9yKTtcbkBpbmNsdWRlIGFwcHdvcmstZm9vdGVyLXZhcmlhbnQoJy5mb290ZXIuYmctbGlnaHRlcicsICRncmF5LTUwLCAgJGNvbG9yOiAkdGV4dC1tdXRlZCwgJGFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IpO1xuIiwiQGltcG9ydCAnLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuQGltcG9ydCAnLi4vX2N1c3RvbS12YXJpYWJsZXMvYXBwd29yayc7XG5AaW1wb3J0ICd2YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zJztcbkBpbXBvcnQgJ21peGlucyc7XG4iLCIvLyBCb290c3RyYXAgZnVuY3Rpb25zXG4vL1xuLy8gVXRpbGl0eSBtaXhpbnMgYW5kIGZ1bmN0aW9ucyBmb3IgZXZhbHVhdGluZyBzb3VyY2UgY29kZSBhY3Jvc3Mgb3VyIHZhcmlhYmxlcywgbWFwcywgYW5kIG1peGlucy5cblxuLy8gQXNjZW5kaW5nXG4vLyBVc2VkIHRvIGV2YWx1YXRlIFNhc3MgbWFwcyBsaWtlIG91ciBncmlkIGJyZWFrcG9pbnRzLlxuQG1peGluIF9hc3NlcnQtYXNjZW5kaW5nKCRtYXAsICRtYXAtbmFtZSkge1xuICAkcHJldi1rZXk6IG51bGw7XG4gICRwcmV2LW51bTogbnVsbDtcbiAgQGVhY2ggJGtleSwgJG51bSBpbiAkbWFwIHtcbiAgICBAaWYgJHByZXYtbnVtID09IG51bGwge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIEFub3RoZXIgZ3JpZCBtaXhpbiB0aGF0IGVuc3VyZXMgdGhlIG1pbi13aWR0aCBvZiB0aGUgbG93ZXN0IGJyZWFrcG9pbnQgc3RhcnRzIGF0IDAuXG5AbWl4aW4gX2Fzc2VydC1zdGFydHMtYXQtemVybygkbWFwKSB7XG4gICR2YWx1ZXM6IG1hcC12YWx1ZXMoJG1hcCk7XG4gICRmaXJzdC12YWx1ZTogbnRoKCR2YWx1ZXMsIDEpO1xuICBAaWYgJGZpcnN0LXZhbHVlICE9IDAge1xuICAgIEB3YXJuIFwiRmlyc3QgYnJlYWtwb2ludCBpbiBgJGdyaWQtYnJlYWtwb2ludHNgIG11c3Qgc3RhcnQgYXQgMCwgYnV0IHN0YXJ0cyBhdCAjeyRmaXJzdC12YWx1ZX0uXCI7XG4gIH1cbn1cblxuLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxuLy8gVXNlZCBvbiBvdXIgU1ZHIGljb24gYmFja2dyb3VuZHMgZm9yIGN1c3RvbSBmb3Jtcy5cbi8vXG4vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcbi8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vIENvbG9yIGNvbnRyYXN0XG5AZnVuY3Rpb24gY29sb3IteWlxKCRjb2xvcikge1xuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gICR5aXE6ICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcblxuICBAaWYgKCR5aXEgPj0gJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZCkge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWRhcms7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHlpcS10ZXh0LWxpZ2h0O1xuICB9XG59XG5cbi8vIFJldHJpZXZlIGNvbG9yIFNhc3MgbWFwc1xuQGZ1bmN0aW9uIGNvbG9yKCRrZXk6IFwiYmx1ZVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yKCRrZXk6IFwicHJpbWFyeVwiKSB7XG4gIEByZXR1cm4gbWFwLWdldCgkdGhlbWUtY29sb3JzLCAka2V5KTtcbn1cblxuQGZ1bmN0aW9uIGdyYXkoJGtleTogXCIxMDBcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGdyYXlzLCAka2V5KTtcbn1cblxuLy8gUmVxdWVzdCBhIHRoZW1lIGNvbG9yIGxldmVsXG5AZnVuY3Rpb24gdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLW5hbWU6IFwicHJpbWFyeVwiLCAkbGV2ZWw6IDApIHtcbiAgJGNvbG9yOiB0aGVtZS1jb2xvcigkY29sb3ItbmFtZSk7XG4gICRjb2xvci1iYXNlOiBpZigkbGV2ZWwgPiAwLCAkYmxhY2ssICR3aGl0ZSk7XG4gICRsZXZlbDogYWJzKCRsZXZlbCk7XG5cbiAgQHJldHVybiBtaXgoJGNvbG9yLWJhc2UsICRjb2xvciwgJGxldmVsICogJHRoZW1lLWNvbG9yLWludGVydmFsKTtcbn1cbiIsIi8vIEZ1bmN0aW9uc1xuLy9cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNYXRoXG5cbiRwaTogMy4xNDE1OTI2NTM1OTtcbiRfcHJlY2lzaW9uOiAxMDtcblxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cCkge1xuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAaWYgJGV4cCA8IDF7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIHNxcnQoJHIpIHtcbiAgJHgwOiAxO1xuICAkeDE6ICR4MDtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgICAkeDE6ICR4MCAtICgkeDAgKiAkeDAgLSBhYnMoJHIpKSAvICgyICogJHgwKTtcbiAgICAkeDA6ICR4MTtcbiAgfVxuXG4gIEByZXR1cm4gJHgxO1xufVxuXG5AZnVuY3Rpb24gZmFjdCgkbnVtKSB7XG4gICRmYWN0OiAxO1xuICBAaWYgJG51bSA+IDB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbnVtIHtcbiAgICAgICRmYWN0OiAkZmFjdCAqICRpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRmYWN0O1xufVxuXG5AZnVuY3Rpb24gX3RvX3VuaXRsZXNzX3JhZCgkYW5nbGUpIHtcbiAgQGlmIHVuaXQoJGFuZ2xlKSA9PSBcImRlZ1wiIHtcbiAgICAkYW5nbGU6ICRhbmdsZSAvIDE4MGRlZyAqICRwaTtcbiAgfVxuICBAaWYgdW5pdCgkYW5nbGUpID09IFwicmFkXCIge1xuICAgICRhbmdsZTogJGFuZ2xlIC8gMXJhZDtcbiAgfVxuICBAcmV0dXJuICRhbmdsZTtcbn1cblxuQGZ1bmN0aW9uIHNpbigkYW5nbGUpe1xuICAkYTogX3RvX3VuaXRsZXNzX3JhZCgkYW5nbGUpO1xuICAkc2luOiAkYTtcbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG4gICAgJHNpbjogJHNpbiArIChwb3coLTEsICRuKSAvIGZhY3QoMiAqICRuICsgMSkgKSAqIHBvdygkYSwgKDIgKiAkbiArIDEpKTtcbiAgfVxuICBAcmV0dXJuICRzaW47XG59XG5cbkBmdW5jdGlvbiBjb3MoJGFuZ2xlKXtcbiAgJGE6IF90b191bml0bGVzc19yYWQoJGFuZ2xlKTtcbiAgJGNvczogMTtcbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG4gICAgJGNvczogJGNvcyArICggcG93KC0xLCRuKSAvIGZhY3QoMiokbikgKSAqIHBvdygkYSwyKiRuKTtcbiAgfVxuICBAcmV0dXJuICRjb3M7XG59XG5cbkBmdW5jdGlvbiB0YW4oJGFuZ2xlKXtcbiAgQHJldHVybiBzaW4oJGFuZ2xlKSAvIGNvcygkYW5nbGUpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpc3RzXG5cbkBmdW5jdGlvbiBzbGljZS1saXN0KCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcbiAgJHJlc3VsdDogbnVsbDtcblxuICBAaWYgdHlwZS1vZigkc3RhcnQpICE9IG51bWJlciBvciB0eXBlLW9mKCRlbmQpICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCJFaXRoZXIgJHN0YXJ0IG9yICRlbmQgYXJlIG5vdCBhIG51bWJlciBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIGlmICRzdGFydCA+ICRlbmQge1xuICAgIEB3YXJuIFwiVGhlIHN0YXJ0IGluZGV4IGhhcyB0byBiZSBsZXNzZXIgdGhhbiBvciBlcXVhbHMgdG8gdGhlIGVuZCBpbmRleCBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIGlmICRzdGFydCA8IDEgb3IgJGVuZCA8IDEge1xuICAgIEB3YXJuIFwiTGlzdCBpbmRleGVzIG11c3QgYmUgbm9uLXplcm8gaW50ZWdlcnMgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkc3RhcnQgPiBsZW5ndGgoJGxpc3QpIHtcbiAgICBAd2FybiBcIkxpc3QgaW5kZXggaXMgI3skc3RhcnR9IGJ1dCBsaXN0IGlzIG9ubHkgI3tsZW5ndGgoJGxpc3QpfSBpdGVtIGxvbmcgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkZW5kID4gbGVuZ3RoKCRsaXN0KSB7XG4gICAgQHdhcm4gXCJMaXN0IGluZGV4IGlzICN7JGVuZH0gYnV0IGxpc3QgaXMgb25seSAje2xlbmd0aCgkbGlzdCl9IGl0ZW0gbG9uZyBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFN0cmluZ3NcblxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiAnJykge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ29sb3JzXG5cbkBmdW5jdGlvbiByZ2JhLXRvLWhleCgkY29sb3IsICRiYWNrZ3JvdW5kOiAjZmZmKSB7XG4gIEBpZiAkY29sb3IgYW5kIGFscGhhKCRjb2xvcikgIT0gMSB7XG4gICAgJHBlcmNlbnQ6IGFscGhhKCRjb2xvcikgKiAxMDAlO1xuICAgICRvcGFxdWU6IG9wYWNpZnkoJGNvbG9yLCAxKTtcblxuICAgIEByZXR1cm4gbWl4KCRvcGFxdWUsICRiYWNrZ3JvdW5kLCAkcGVyY2VudCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGNvbG9yO1xuICB9XG59XG5cbkBmdW5jdGlvbiB5aXEtdmFsdWUoJGNvbG9yKSB7XG4gIEBpZiAkY29sb3IgPT0gdHJhbnNwYXJlbnQge1xuICAgIEByZXR1cm4gJGJvZHktY29sb3I7XG4gIH0gQGVsc2UgaWYgYWxwaGEoJGNvbG9yKSAhPSAxIHtcbiAgICAkY29sb3I6IHJnYmEtdG8taGV4KCRjb2xvcik7XG4gIH1cblxuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gIEByZXR1cm4gKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIHlpcSgkY29sb3IpIHtcbiAgJHlpcTogeWlxLXZhbHVlKCRjb2xvcik7XG5cbiAgQGlmICgkeWlxID49IDE2MCkge1xuICAgIEByZXR1cm4gcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC40MCksICMwMDApO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICNmZmY7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBVbml0c1xuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XG4gIEBpZiB0eXBlLW9mKCRudW1iZXIpID09ICdudW1iZXInIGFuZCBub3QgdW5pdGxlc3MoJG51bWJlcikge1xuICAgIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xuICB9XG5cbiAgQHJldHVybiAkbnVtYmVyO1xufVxuXG5AZnVuY3Rpb24gcHgtdG8tcmVtKCR2YWx1ZSkge1xuICAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQgZm9udCBzaXplID0gYDE2cHhgXG4gIEByZXR1cm4gKHN0cmlwLXVuaXQoJHZhbHVlKSAvIDE2KSAqIDFyZW07XG59XG5cbkBmdW5jdGlvbiByZW0tdG8tcHgoJHZhbHVlKSB7XG4gIC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBmb250IHNpemUgPSBgMTZweGBcbiAgQHJldHVybiAoc3RyaXAtdW5pdCgkdmFsdWUpICogMTYpICogMXB4O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFV0aWxpdGllc1xuXG5AZnVuY3Rpb24gZ2V0LWJ0bi1jb2xvcnMoJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgQGlmICRiYWNrZ3JvdW5kID09IHRyYW5zcGFyZW50IHtcbiAgICAkYnRuLXNoYWRvdzogcmdiYShyZ2JhLXRvLWhleCgkYm9yZGVyLCAjMDAwKSwgLjA1KTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgYmctaG92ZXI6ICByZ2JhKCRib3JkZXIsIC4wNiksXG4gICAgICBiZy1hY3RpdmU6IHJnYmEoJGJvcmRlciwgLjEyKSxcbiAgICAgIGJvcmRlcjogICAgJGJvcmRlcixcbiAgICAgIHNoYWRvdzogICAgaWYoJGVuYWJsZS1zaGFkb3dzLCAoJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCAkYnRuLXNoYWRvdyksIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoICRidG4tc2hhZG93KVxuICAgICk7XG4gIH0gQGVsc2UgaWYgYWxwaGEoJGJhY2tncm91bmQpICE9IDEge1xuICAgICRiZy1hbHBoYTogICBhbHBoYSgkYmFja2dyb3VuZCk7XG4gICAgJGJ0bi1zaGFkb3c6IHJnYmEoJGJhY2tncm91bmQsICRiZy1hbHBoYSAtICgkYmctYWxwaGEgKiA1NSAvIDEwMCkgKTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgYmctaG92ZXI6ICByZ2JhKCRiYWNrZ3JvdW5kLCAkYmctYWxwaGEgKyAwLjA1KSxcbiAgICAgIGJnLWFjdGl2ZTogcmdiYSgkYmFja2dyb3VuZCwgJGJnLWFscGhhICsgMC4xMyksXG4gICAgICBib3JkZXI6ICAgIHRyYW5zcGFyZW50LFxuICAgICAgc2hhZG93OiAgICBpZigkZW5hYmxlLXNoYWRvd3MsICgkYnRuLWJveC1zaGFkb3csIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoICRidG4tc2hhZG93KSwgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggJGJ0bi1zaGFkb3cpXG4gICAgKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAoXG4gICAgICBiZy1ob3ZlcjogIHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC45NSksICMwMDApLFxuICAgICAgYmctYWN0aXZlOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuODcpLCAjMDAwKSxcbiAgICAgIGJvcmRlcjogICAgdHJhbnNwYXJlbnQsXG4gICAgICBzaGFkb3c6ICAgIGlmKCRlbmFibGUtc2hhZG93cywgKCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpKSwgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpKVxuICAgICk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGdldC1tYXRlcmlhbC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kKSB7XG4gIEBpZiBhbHBoYSgkYmFja2dyb3VuZCkgIT0gMSB7XG4gICAgJGJhY2tncm91bmQ6IHJnYmEtdG8taGV4KCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEByZXR1cm4gKFxuICAgIGJnLWhvdmVyOiAgcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjk1KSwgI2ZmZiksXG4gICAgYmctYWN0aXZlOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuODcpLCAjZmZmKSxcbiAgKTtcbn1cblxuQGZ1bmN0aW9uIGdldC1uYXYtY29sb3JzKCRiZywgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGluYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRiZzogcmdiYS10by1oZXgoJGJnKTtcbiAgJGFjdGl2ZS1jb2xvcjogcmdiYS10by1oZXgoJGFjdGl2ZS1jb2xvcik7XG4gICRhY3RpdmUtY29sb3I6IGlmKCRhY3RpdmUtY29sb3IsICRhY3RpdmUtY29sb3IsIHlpcSgkYmcpKTtcbiAgJHlpcS1wZXJjZW50OiB5aXEtdmFsdWUoJGJnKSAvIDI1NTtcbiAgJHlpcS1wZXJjZW50LWludmVydGVkOiAxIC0gJHlpcS1wZXJjZW50O1xuXG4gICRvcGFjaXR5OiBpZigkYWN0aXZlLWNvbG9yID09ICNmZmYsIC42ICsgKC40ICogJHlpcS1wZXJjZW50KSwgLjYgKyAoLjQgKiAoMSAtICR5aXEtcGVyY2VudCkpKTtcblxuICAkY29sb3I6IGlmKCRpbmFjdGl2ZS1jb2xvciwgcmdiYS10by1oZXgoJGluYWN0aXZlLWNvbG9yLCAkYmcpLCByZ2JhLXRvLWhleChyZ2JhKCRhY3RpdmUtY29sb3IsIGlmKCR5aXEtcGVyY2VudCA8IC4yNSwgJG9wYWNpdHkgLSAuMTUsICRvcGFjaXR5KSksICRiZykpO1xuICAkZGlzYWJsZWQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuNiksICRiZyk7XG4gICRtdXRlZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC43NSksICRiZyk7XG4gICRib3JkZXI6IGlmKCRib3JkZXIsICRib3JkZXIsIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgcmdiYSgkYWN0aXZlLWNvbG9yLCAkb3BhY2l0eSAvIDgpLCBpZigkeWlxLXBlcmNlbnQgPCAuMjUsIHJnYmEoJGFjdGl2ZS1jb2xvciwgLjA2KSwgcmdiYSgkYWN0aXZlLWNvbG9yLCAuMTUpKSkpO1xuXG4gIEByZXR1cm4gKFxuICAgIC8vIE1ldGFkYXRhXG4gICAgb3BhY2l0eTogJG9wYWNpdHksXG4gICAgeWlxLXBlcmNlbnQ6ICR5aXEtcGVyY2VudCxcbiAgICB5aXEtcGVyY2VudC1pbnZlcnRlZDogJHlpcS1wZXJjZW50LWludmVydGVkLFxuXG4gICAgLy8gQ29sb3JzXG4gICAgYmc6ICRiZyxcbiAgICBjb2xvcjogJGNvbG9yLFxuICAgIGFjdGl2ZS1jb2xvcjogJGFjdGl2ZS1jb2xvcixcbiAgICBkaXNhYmxlZC1jb2xvcjogJGRpc2FibGVkLWNvbG9yLFxuICAgIG11dGVkLWNvbG9yOiAkbXV0ZWQtY29sb3IsXG4gICAgYm9yZGVyOiAkYm9yZGVyXG4gICk7XG59XG4iLCIiLCIvLyBWYXJpYWJsZXNcbi8vXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ29sb3JzXG5cbiR3aGl0ZTogICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICAgICAjMTgxQzIxICFkZWZhdWx0O1xuJGdyYXktMjU6ICAgICAgcmdiYSgkYmxhY2ssIC4wMTUpICFkZWZhdWx0O1xuJGdyYXktNTA6ICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICAgICByZ2JhKCRibGFjaywgLjA2KSAhZGVmYXVsdDtcbiRncmF5LTIwMDogICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJGdyYXktNDAwOiAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRncmF5LTUwMDogICAgIHJnYmEoJGJsYWNrLCAuNCkgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJGdyYXktNzAwOiAgICAgcmdiYSgkYmxhY2ssIC42KSAhZGVmYXVsdDtcbiRncmF5LTgwMDogICAgIHJnYmEoJGJsYWNrLCAuOCkgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuXG4kZ3JheXM6IChcbiAgXCIyNVwiOiAkZ3JheS0yNSxcbiAgXCI1MFwiOiAkZ3JheS01MFxuKSAhZGVmYXVsdDtcblxuJGJsdWU6ICAgICAgICAgIzFlNzBjZCAhZGVmYXVsdDtcbiRpbmRpZ286ICAgICAgICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgICAgICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICAgICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgICAgICAjRkVCNzQ0ICFkZWZhdWx0O1xuJHllbGxvdzogICAgICAgI0ZGRDk1MCAhZGVmYXVsdDtcbiRncmVlbjogICAgICAgICMwMkJDNzcgIWRlZmF1bHQ7XG4kdGVhbDogICAgICAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICAgICAgIzI4YzNkNyAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogICAkaW5kaWdvLFxuICBcInNlY29uZGFyeVwiOiAjODg5N0FBLFxuICBcInN1Y2Nlc3NcIjogICAkZ3JlZW4sXG4gIFwiaW5mb1wiOiAgICAgICRjeWFuLFxuICBcIndhcm5pbmdcIjogICAkeWVsbG93LFxuICBcImRhbmdlclwiOiAgICAkcmVkLFxuICBcImRhcmtcIjogICAgICAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG5cbiRib2R5LWNvbG9yOiAgICAgICAjNEU1MTU1ICFkZWZhdWx0OyAvLyM0YTRhNGFcblxuLy8gIzA2Y1xuJGxpbmstY29sb3I6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRm9udHNcblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogIFwiU0ZNb25vLVJlZ3VsYXJcIiwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgLjg5NHJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUteGw6ICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS14czogICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1zZW1pYm9sZDogICA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgOTAwICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgMS40NyAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14bDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14czogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAyLjI1cmVtICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgIDEuODEzcmVtICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgIDEuNTYzcmVtICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgIDEuMzEzcmVtICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgJGZvbnQtd2VpZ2h0LXNlbWlib2xkICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgNHJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kdGlueS1mb250LXNpemU6ICAgICAgICAgNzAlICFkZWZhdWx0O1xuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgIDg1JSAhZGVmYXVsdDtcbiRiaWctZm9udC1zaXplOiAgICAgICAgICAxMTIlICFkZWZhdWx0O1xuJGxhcmdlLWZvbnQtc2l6ZTogICAgICAgIDE1MCUgIWRlZmF1bHQ7XG4keGxhcmdlLWZvbnQtc2l6ZTogICAgICAgMTcwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTUwMCkgIWRlZmF1bHQ7XG4kdGV4dC1tdXRlZC1ob3ZlcjogICAgICAgcmdiYS10by1oZXgoJGdyYXktNjAwKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiByZ2JhLXRvLWhleCgkZ3JheS01MDApICFkZWZhdWx0O1xuJHRleHQtbGlnaHQ6ICAgICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTQwMCkgIWRlZmF1bHQ7XG4kdGV4dC1saWdodGVyOiAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktMzAwKSAhZGVmYXVsdDtcbiR0ZXh0LWxpZ2h0ZXN0OiAgICAgICAgICByZ2JhLXRvLWhleCgkZ3JheS0yMDApICFkZWZhdWx0O1xuXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgbm9uZSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBHcmlkXG5cbiRncmlkLWd1dHRlci13aWR0aDogMS41cmVtICFkZWZhdWx0O1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogMnJlbSAhZGVmYXVsdDtcbiRjb250YWluZXItcGFkZGluZy14LXNtOiAxcmVtICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLXk6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDb21wb25lbnRzXG5cbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywuMDYpICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhsOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1saW5lLWhlaWdodDogICAgICAgICAgIDEuNTQgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aDogICAgMnB4ICFkZWZhdWx0O1xuXG4kZmxvYXRpbmctY29tcG9uZW50LWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdzogICAgICAgMCAxcHggNnB4IHJnYmEoMCwgMCwgMCwgLjA5KSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRib3JkZXJlZC1yb3ctYm9yZGVyLWNvbG9yOiAgICAgICAkaHItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgLjQyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogWi1pbmRleCBtYXN0ZXIgbGlzdFxuXG4kemluZGV4LWxheW91dC1maXhlZDogIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLXRvcDogICAgIDEwOTAgIWRlZmF1bHQ7XG4kemluZGV4LWxheW91dC1tb2JpbGU6IDExMDAgIWRlZmF1bHQ7XG4kemluZGV4LW5vdGlmaWNhdGlvbjogIDk5OTk5OSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUYWJsZXNcblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMjUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICByZ2JhKCRibGFjaywgLjAzNSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgIHJnYmEtdG8taGV4KCR0YWJsZS1ob3Zlci1iZykgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgcmdiYS10by1oZXgoJGdyYXktMTAwKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAkZ3JheS01MCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICByZ2JhKCR3aGl0ZSwgLjAzKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6IGxpZ2h0ZW4ocmdiYS10by1oZXgoJGdyYXktOTAwKSwgNyUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnV0dG9uc1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAuNDM4cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgMS4xMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAxLjU0ICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS14czogICAwICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgteHM6ICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS14czogICAkZm9udC1zaXplLXhzICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC14czogJGxpbmUtaGVpZ2h0LXhzICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAuMTg4cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgLjY4NzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAxLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS14bDogICAuODc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgteGw6ICAgMi4xMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS14bDogICAkZm9udC1zaXplLXhsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC14bDogJGxpbmUtaGVpZ2h0LXhsICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci1yYWRpdXMteHM6ICAgICAkYm9yZGVyLXJhZGl1cy14cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy14bDogICAgICRib3JkZXItcmFkaXVzLXhsICFkZWZhdWx0O1xuXG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC4yNSkgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvcm1zXG5cbiRsYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgLjgzMTI1cmVtICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktMTAwKSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICR0ZXh0LWxpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgICAgIHB4LXRvLXJlbShmbG9vcihyZW0tdG8tcHgoKCRpbnB1dC1idG4tZm9udC1zaXplICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSkpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItc206ICAgICAgICAgICAgICAgICAgICAgcHgtdG8tcmVtKGZsb29yKHJlbS10by1weCgoJGlucHV0LWJ0bi1mb250LXNpemUtc20gKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAqIDIpKSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1sZzogICAgICAgICAgICAgICAgICAgICBweC10by1yZW0oZmxvb3IocmVtLXRvLXB4KCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDIpKSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtaW52ZXJ0ZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoI2ZmZiwgLjMpICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtaW52ZXJ0ZWQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtaW52ZXJ0ZWQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgIHJnYmEoI2ZmZiwgLjcpICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICByZ2JhKCNmZmYsIC4xKSAhZGVmYXVsdDtcbiRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgJGlucHV0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgIDEuMTI1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogICAgIDFweCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICsgLjQzOHJlbSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgICAgXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA5LjUgNy41JyUzRSUzQ3BvbHlsaW5lIHBvaW50cz0nMC43NSA0LjM1IDQuMTggNi43NSA4Ljc1IDAuNzUnIHN0eWxlPSdmaWxsOm5vbmU7c3Ryb2tlOl9DT0xPUl87c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS13aWR0aDoxLjVweCcvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICAgICA2NSUgNjUlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgICAgICBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEwIDEwJyUzRSUzQ2NpcmNsZSBjeD0nNScgY3k9JzUnIHI9JzQuNScgc3R5bGU9J2ZpbGw6X0NPTE9SXycvJTNFJTNDcGF0aCBkPSdNNSwxQTQsNCwwLDEsMSwxLDUsNCw0LDAsMCwxLDUsMU01LDBhNSw1LDAsMSwwLDUsNUE1LDUsMCwwLDAsNSwwWicgc3R5bGU9J2ZpbGw6X0NPTE9SXycvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmctc2l6ZTogICAgICAgICAgICA0MCUgNDAlICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICAgICAgICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3I6ICAgICAkaW5wdXQtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbnZlcnRlZC1kaXNhYmxlZC1iZzogICAgICAgICRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAgICAgICAxN3B4IDEycHggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgICAgICAgIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCRUFBQUFNQ0FZQUFBQ0VKVmEvQUFBQUJHZEJUVUVBQUxHUEMveGhCUUFBQUY1SlJFRlVLQlZqZVBiOHhYOEdDZ0VUaGZyQjJnZVBJU3pFZU1mRHg2L2gvNzkvOWRqVU1qSXhOUkxsblIxYk5qV0FGS01iQWhJRHlSRmxDRWd6dWtFd0E4QUdreHJGSUsrQk1GZ3pqQ0RWRUpnK1pKcG83eUJyUW1jUEhrTUFSNVlmNTVIOUpONEFBQUFBU1VWT1JLNUNZSUk9JykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItaW52ZXJ0ZWQ6ICAgICAgICAgIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCRUFBQUFNQ0FZQUFBQ0VKVmEvQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFFcEpSRUZVZU5waStQLy92d01RTTFDQ0dZYVhJU3dNeElFS0lBN0JJcjRHaUR1WWlEU2tDNGdQb1lrZGdvcVQ1QjBPSUY0QXhHZWdOQWU1WVNJSXhKT2c5SENOWXFvWUFoQmdBS0hXQmcraFJyTnhBQUFBQUVsRlRrU3VRbUNDJykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcnRsOiAgICAgICAgICAgICAgIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCRUFBQUFNQ0FZQUFBQ0VKVmEvQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFFdEpSRUZVZU5waVlLQVFQSHYrNGo4VEF4WEE0REdFeGNQSHIrSC92My8xMkNRWm1aZ2FkMnpaMUVEUUpTQkZJTVhrR2dEM0RycEJwQmlBQVVCZUEyRlNvNWhoTkoxZ0FJQUFBd0MxTXlLRlJsNm9td0FBQUFCSlJVNUVya0pnZ2c9PScpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWludmVydGVkLXJ0bDogICAgICB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkVBQUFBTUNBWUFBQUNFSlZhL0FBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBRk5KUkVGVWVOcGkrUC8vUHdNRjJBRkVNekZRQVF3ZVExaUF1QUtJUTdESXJRSGlEbUpkMGdYRWg5REVEMEhGaWZiT1B5Q3VBdUlyVUxFclVQNC9vdjJERkYyQ1FEd0pTcE1VeFF5ajZRUURBQVFZQUt4OG95QkEvM2xDQUFBQUFFbEZUa1N1UW1DQycpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRHJvcGRvd25zXG5cbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAkZmxvYXRpbmctY29tcG9uZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICRmbG9hdGluZy1jb21wb25lbnQtc2hhZG93ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgLjQzOHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1saW5lLWhlaWdodDogICAgJGNvbXBvbmVudC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZzXG5cbiRuYXYtc3BhY2VyOiAgICAgICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgJGNvbXBvbmVudC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJG5hdi1saW5rLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgIDEuMzEyNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1saW5lLWhlaWdodC1sZzogICAgICAgICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJG5hdi1saW5rLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14LXNtOiAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAkdGV4dC1tdXRlZC1ob3ZlciAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZiYXJcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuN3JlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjQpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4wNikgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgIC45Mzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAkdGV4dC1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXNwYWNlcjogICAgICAgICAgICAgICAgLjE4NzVyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14LXNtOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssLjA2KSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDRweCByZ2JhKCRibGFjaywuMDA5KSAhZGVmYXVsdDtcbi8vICRjYXJkLXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDRweCByZ2JhKCRibGFjaywuMDMpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRvb2x0aXBzXG5cbiR0b29sdGlwLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICByZ2JhLXRvLWhleCgkZ3JheS04MDApICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiR0b29sdGlwLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUG9wb3ZlcnNcblxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICRncmF5LTUwICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6IC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAuODU4ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIC40MTdlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgIC41ODNlbSAhZGVmYXVsdDtcbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgIDEwcmVtICFkZWZhdWx0O1xuXG4kYmFkZ2UtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYmFkZ2Utb3V0bGluZS1kZWZhdWx0LWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNb2RhbHNcblxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgMS41NjI1cmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgICAgMS4yNXJlbSAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgMXB4ICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAkZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdyAhZGVmYXVsdDtcblxuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgMzVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgIDIyLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtc2xpZGUtd2lkdGg6ICAgICAgICAgICAgICAyMHJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgLjE1cyAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkbW9kYWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBBbGVydHNcblxuJGFsZXJ0LXBhZGRpbmcteTogMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogMTByZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgI2ZmZiAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYS10by1oZXgoJGJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAuOTM3NXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjUgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgJHRleHQtbXV0ZWQtaG92ZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgJGdyYXktNTAgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgIDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAwcHggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6IDBweCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgIFwiL1wiICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1ydGw6ICAgXCJcXFxcXCIgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU3dpdGNoZXJzXG5cbiRzd2l0Y2hlci1zcGFjZXIteDogICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLXNwYWNlci15OiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1ndXR0ZXI6ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItaW5uZXItc3BhY2VyOiAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLXNxdWFyZS1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLWxhYmVsLWNvbG9yOiAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1kaXNhYmxlZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItd2lkdGg6ICAgICAgICAgICAgICAgIDIuMzc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLWhlaWdodDogICAgICAgICAgICAgICAxLjM3NXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1mb250LXNpemU6ICAgICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHN3aXRjaGVyLWxhYmVsLWxpbmUtaGVpZ2h0OiAgICAxLjQgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci13aWR0aC1zbTogICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1oZWlnaHQtc206ICAgICAgICAgICAgMS4xMjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLXNtOiAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtc206IDEuNDg2ICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItd2lkdGgtbGc6ICAgICAgICAgICAgIDMuMjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItaGVpZ2h0LWxnOiAgICAgICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLWxnOiAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtbGc6IDEuNDcgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci1vZmYtY29sb3I6ICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJHN3aXRjaGVyLW9mZi1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kc3dpdGNoZXItaG9sZGVyLWJnOiAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kc3dpdGNoZXItaG9sZGVyLXNoYWRvdzogICAgICAgIDAgMCAwIDFweCByZ2JhKCRibGFjaywgLjA0KSwgMCAxcHggNnB4IHJnYmEoJGJsYWNrLCAuMDkpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENsb3NlXG5cbiRjbG9zZS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6IDNyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2lkZW5hdlxuXG4kc2lkZW5hdi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgIDE1LjYyNXJlbSAhZGVmYXVsdDsgLy8yNTBweFxuJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoOiAgICAgICAgICAgICAgICA0LjM3NXJlbSAhZGVmYXVsdDsgLy83MHB4XG5cbiRzaWRlbmF2LWl0ZW0tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAgLjA2MjVyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy15OiAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbWVudS1saW5rLXBhZGRpbmcteTogICAuNjI1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbWVudS1sZXZlbC1zcGFjZXI6ICAgICAxcmVtICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy15OiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14OiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLW1lbnUtbGluay1wYWRkaW5nLXk6IC42MjVyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLW1lbnUtbGV2ZWwtc3BhY2VyOiAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LW1lbnUtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgMTIuNXJlbSAhZGVmYXVsdDs7IC8vMjAwcHhcbiRzaWRlbmF2LWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgMi4yNXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWNvbnRyb2wtYXJyb3ctc2l6ZTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtd2lkdGg6ICAgICAgICAgICAgMS43NXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtZm9udC1zaXplOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtc3BhY2VyOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1hbmltYXRpb24tZHVyYXRpb246ICAgICAgICAgICAgIC4ycyAhZGVmYXVsdDtcblxuJHNpZGVuYXYtbWF4LWxldmVsczogICAgICAgICAgICAgICAgICAgICA1ICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpICFkZWZhdWx0O1xuJHNpZGVuYXYtZGFyay1tZW51LWJnOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNikgIWRlZmF1bHQ7XG4kc2lkZW5hdi1saWdodC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA2KSAhZGVmYXVsdDtcbiRzaWRlbmF2LWxpZ2h0LW1lbnUtYmc6ICAgICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG4vLyBDb25maWdcbiRydGwtc3VwcG9ydDogZmFsc2UgIWRlZmF1bHQ7XG4kbWF0ZXJpYWwtc3R5bGU6IGZhbHNlO1xuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuXG4vL1xuLy8gQ29sb3Igc3lzdGVtXG4vL1xuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3BhY2VyczogbWFwLW1lcmdlKFxuICAoXG4gICAgMDogMCxcbiAgICAxOiAoJHNwYWNlciAqIC4yNSksXG4gICAgMjogKCRzcGFjZXIgKiAuNSksXG4gICAgMzogJHNwYWNlcixcbiAgICA0OiAoJHNwYWNlciAqIDEuNSksXG4gICAgNTogKCRzcGFjZXIgKiAzKVxuICApLFxuICAkc3BhY2Vyc1xuKTtcblxuLy8gVGhpcyB2YXJpYWJsZSBhZmZlY3RzIHRoZSBgLmgtKmAgYW5kIGAudy0qYCBjbGFzc2VzLlxuJHNpemVzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgIHVuZGVybGluZSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIEZvbnRzXG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogLjg3NSkgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJGdyYXktOTAwLCA3LjUlKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXItc206ICAgICAgICAgICAgICAgICAoJGZvbnQtc2l6ZS1zbSAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20pICsgKCRpbnB1dC1idG4tcGFkZGluZy15LXNtICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyLWxnOiAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtbGcgKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggcmdiYSgkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3IsIC41KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgNzUlICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgMTI1JSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgKCRzcGFjZXIgLyAyKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBjYWxjKCN7JGNhcmQtYm9yZGVyLXJhZGl1c30gLSAjeyRjYXJkLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAuNzUpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC42cyBlYXNlICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgODcuNSUgIWRlZmF1bHQ7XG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcblxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcbiRwcmludC1wYWdlLXNpemU6ICAgICAgICAgICAgICAgICAgIGEzICFkZWZhdWx0O1xuJHByaW50LWJvZHktbWluLXdpZHRoOiAgICAgICAgICAgICAgbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgXCJsZ1wiKSAhZGVmYXVsdDtcbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2hvdmVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JhZGdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9zY3JlZW4tcmVhZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtaGlkZVwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Zpc2liaWxpdHlcIjtcblxuLy8gLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcIm1peGlucy9hbGVydFwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NhcmV0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy90YWJsZS1yb3dcIjtcblxuLy8gLy8gU2tpbnNcbkBpbXBvcnQgXCJtaXhpbnMvYmFja2dyb3VuZC12YXJpYW50XCI7XG5AaW1wb3J0IFwibWl4aW5zL2JvcmRlci1yYWRpdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm94LXNoYWRvd1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdHJhbnNpdGlvblwiO1xuXG4vLyAvLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuQGltcG9ydCBcIm1peGlucy9mbG9hdFwiO1xuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMnB4LCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGluZGVudGF0aW9uLCBtZWRpYS1xdWVyeS1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7IC8vIFN0YW5kYXJkaXplZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0yeCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICZbaHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmcsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIG92ZXJmbG93OiBhdXRvOyAvLyBQZXIgQ1NTMyBVSSwgYHJlc2l6ZWAgb25seSBhcHBsaWVzIHdoZW4gYG92ZXJmbG93YCBpc24ndCBgdmlzaWJsZWBcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlIHtcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG59XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tYmxvY2stbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbkBtaXhpbiB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpZiAoJGlnbm9yZS13YXJuaW5nICE9IHRydWUpIHtcbiAgICBAd2FybiBcIlRoZSBgdGV4dC1oaWRlKClgIG1peGluIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYXMgb2YgdjQuMS4wLiBJdCB3aWxsIGJlIHJlbW92ZWQgZW50aXJlbHkgaW4gdjUuXCI7XG4gIH1cbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSgkdmlzaWJpbGl0eSkge1xuICB2aXNpYmlsaXR5OiAkdmlzaWJpbGl0eSAhaW1wb3J0YW50O1xufVxuIiwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNy41JSksICRob3Zlci1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMCUpLCAkYWN0aXZlLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGRhcmtlbigkYm9yZGVyLCAxMi41JSkpIHtcbiAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgaG92ZXIge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkYm9yZGVyLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRib3JkZXIsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGJvcmRlciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuIiwiQG1peGluIGNhcmV0LWRvd24ge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0KCRkaXJlY3Rpb246IGRvd24pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC13aWR0aCAqIC44NTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtd2lkdGggKiAuODU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd247XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC11cDtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXdpZHRoICogLjg1O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkZm9ybS1mZWVkYmFjay1mb250LXNpemU7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCxcbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sLWZpbGUge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3IsIDI1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcobGlnaHRlbigkY29sb3IsIDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGJvZHktYmcsIDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjphZnRlciB7IGJvcmRlci1jb2xvcjogaW5oZXJpdDsgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciB7XG4gICAgJGhvdmVyLWJhY2tncm91bmQ6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuIiwiQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4iLCJAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDsgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICAvLyBBbGxvdyBjb2x1bW5zIHRvIHN0cmV0Y2ggZnVsbCB3aWR0aCBiZWxvdyB0aGVpciBicmVha3BvaW50c1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcbiAgbWFyZ2luLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAtMik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4OyAvLyBQcmV2ZW50IGNvbGxhcHNpbmdcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AbWl4aW4gZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5AbWl4aW4gZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cbkBtaXhpbiBmbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIE1peGluc1xuLy9cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSVEwvTFRSXG5cbkBtaXhpbiBsdHItb25seSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgaHRtbDpub3QoW2Rpcj1ydGxdKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBydGwtb25seSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgW2Rpcj1ydGxdIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbHRyLXN0eWxlKCkge1xuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBodG1sOm5vdChbZGlyPXJ0bF0pICYge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcnRsLXN0eWxlKCkge1xuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBbZGlyPXJ0bF0gJiB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBLZXlmcmFtZXNcblxuQG1peGluIGtleWZyYW1lcygkbmFtZSkge1xuICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG4gIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDYXJldHNcblxuQG1peGluIGNhcmV0LWRvd24ge1xuICBtYXJnaW4tdG9wOiAtMSAqICgkY2FyZXQtd2lkdGggLyAxLjUpO1xuICB3aWR0aDogJGNhcmV0LXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJldC13aWR0aDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbkBtaXhpbiBjYXJldC11cCB7XG4gIG1hcmdpbi10b3A6IC0wO1xuICB3aWR0aDogJGNhcmV0LXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJldC13aWR0aDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQge1xuICBtYXJnaW4tdG9wOiAtMSAqICgkY2FyZXQtd2lkdGggLyAyKTtcbiAgd2lkdGg6ICRjYXJldC13aWR0aDtcbiAgaGVpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQge1xuICBtYXJnaW4tdG9wOiAtMSAqICgkY2FyZXQtd2lkdGggLyAyKTtcbiAgd2lkdGg6ICRjYXJldC13aWR0aDtcbiAgaGVpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSZXNwb25zaXplIGxvb3BzXG5cbkBtaXhpbiByZXNwb25zaXZlLWxvb3AtYmVmb3JlKCRwYXJlbnQsICRzdGFydC1icmVha3BvaW50OiBzbSkge1xuICAkY3VyLWJyZWFrcG9pbnQ6ICRzdGFydC1icmVha3BvaW50O1xuXG4gIEB3aGlsZSAkY3VyLWJyZWFrcG9pbnQge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkY3VyLWJyZWFrcG9pbnQpO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IChicmVha3BvaW50LW1pbigkY3VyLWJyZWFrcG9pbnQpIC0gMSkpIHtcbiAgICAgICN7JHBhcmVudH0jeyRpbmZpeH0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkY3VyLWJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQtbmV4dCgkY3VyLWJyZWFrcG9pbnQpO1xuICB9XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWxvb3AtYWZ0ZXIoJHBhcmVudCwgJHN0YXJ0LWJyZWFrcG9pbnQ6IHNtKSB7XG4gICRjdXItYnJlYWtwb2ludDogJHN0YXJ0LWJyZWFrcG9pbnQ7XG5cbiAgQHdoaWxlICRjdXItYnJlYWtwb2ludCB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRjdXItYnJlYWtwb2ludCk7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogYnJlYWtwb2ludC1taW4oJGN1ci1icmVha3BvaW50KSkge1xuICAgICAgI3skcGFyZW50fSN7JGluZml4fSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cblxuICAgICRjdXItYnJlYWtwb2ludDogYnJlYWtwb2ludC1uZXh0KCRjdXItYnJlYWtwb2ludCk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDb2xvcnNcblxuLy8gQ29udHJhc3RcbkBtaXhpbiBjb2xvci15aXEoJGNvbG9yKSB7XG4gIGNvbG9yOiB5aXEoJGNvbG9yKTtcbn1cblxuQG1peGluIGJnLWNvbG9yLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkcnRoLWNvbG9yOiAjMDAwKSB7XG4gICN7JHBhcmVudH0geyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDsgfVxuICBhI3skcGFyZW50fSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRjb2xvciwgLjk1KSwgJGJhY2tncm91bmQ6ICRydGgtY29sb3IpICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRydGgtY29sb3I6ICMwMDApIHtcbiAgQGluY2x1ZGUgYmctY29sb3ItdmFyaWFudCgkcGFyZW50LCAkY29sb3IpO1xuICBAaW5jbHVkZSBiZy1jb2xvci12YXJpYW50KFwiI3skcGFyZW50fS1kYXJrXCIsIHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuOSksICRiYWNrZ3JvdW5kOiAkcnRoLWNvbG9yKSk7XG4gIEBpbmNsdWRlIGJnLWNvbG9yLXZhcmlhbnQoXCIjeyRwYXJlbnR9LWRhcmtlclwiLCByZ2JhLXRvLWhleChyZ2JhKCRjb2xvciwgLjg1KSwgJGJhY2tncm91bmQ6ICRydGgtY29sb3IpKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCdXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZDogbnVsbCwgJGJvcmRlcjogbnVsbCwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBudWxsLCAkYWN0aXZlLWJvcmRlcjogbnVsbCkge31cblxuQG1peGluIGFwcHdvcmstYnV0dG9uLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAkYnRuLWNvbG9yczogZ2V0LWJ0bi1jb2xvcnMoJGJhY2tncm91bmQsIGlmKCRib3JkZXIsICRib3JkZXIsICRiYWNrZ3JvdW5kKSk7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkYnRuLWNvbG9ycywgYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkYnRuLWNvbG9ycywgYm9yZGVyKTtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWhvdmVyKTtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIHNoYWRvdyk7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkYnRuLWNvbG9ycywgYm9yZGVyKSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9IC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGNvbG9yOiByZ2JhLXRvLWhleCgkYmFja2dyb3VuZCk7XG4gIH1cblxuICAjeyRwYXJlbnR9OmFjdGl2ZSxcbiAgI3skcGFyZW50fS5hY3RpdmUsXG4gIC5zaG93ID4gI3skcGFyZW50fS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkYnRuLWNvbG9ycywgYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1hY3RpdmUpO1xuXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBCdXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAgI3skcGFyZW50fSxcbiAgLmlucHV0LWdyb3VwLXByZXBlbmQgI3skcGFyZW50fSxcbiAgLmlucHV0LWdyb3VwLWFwcGVuZCAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItcmlnaHQ6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkIG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWFjdGl2ZSk7XG4gICAgYm9yZGVyLWxlZnQ6ICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoIHNvbGlkIG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWFjdGl2ZSk7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtYnV0dG9uLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCwgJG1kLWNvbG9yOiAkYmFja2dyb3VuZCkge1xuICAkYnRuLWNvbG9yczogZ2V0LW1hdGVyaWFsLWJ0bi1jb2xvcnMoJGJhY2tncm91bmQpO1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWJveC1zaGFkb3c7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWhvdmVyKTtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0gLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgY29sb3I6IHJnYmEtdG8taGV4KCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gICN7JHBhcmVudH0gLndhdmVzLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICNmZmYsIHJnYmEoJGNvbG9yLCAuMyksIHJnYmEoJGNvbG9yLCAuMikpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjeyRwYXJlbnR9OmFjdGl2ZSxcbiAgI3skcGFyZW50fS5hY3RpdmUsXG4gIC5zaG93ID4gI3skcGFyZW50fS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWFjdGl2ZSk7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIEZsYXQgYnV0dG9uc1xuICAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkbWQtY29sb3IgIWltcG9ydGFudDtcblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRtZC1jb2xvciwgLjEpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLndhdmVzLXJpcHBsZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRtZC1jb2xvciwgLjMpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fS5tZC1idG4tZmxhdDphY3RpdmUsXG4gICN7JHBhcmVudH0ubWQtYnRuLWZsYXQuYWN0aXZlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0ubWQtYnRuLWZsYXQuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRtZC1jb2xvciwgLjE1KSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gRGlzYWJsZWRcblxuICAjeyRwYXJlbnR9LmRpc2FibGVkLFxuICAjeyRwYXJlbnR9OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1jb21wb25lbnQtc2hhZG93ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG5cbiAgI3skcGFyZW50fS5tZC1idG4tZmxhdC5kaXNhYmxlZCxcbiAgI3skcGFyZW50fS5tZC1idG4tZmxhdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE91dGxpbmUgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3I6IG51bGwsICRjb2xvci1ob3ZlcjogbnVsbCwgJGhvdmVyLWNvbG9yOiBudWxsKSB7fVxuXG5AbWl4aW4gYXBwd29yay1idXR0b24tb3V0bGluZS12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGhvdmVyLWNvbG9yOiBudWxsKSB7XG4gICRidG4tY29sb3JzOiBnZXQtYnRuLWNvbG9ycygkY29sb3IsICRjb2xvcik7XG4gICRjb2xvci1ob3ZlcjogaWYoJGhvdmVyLWNvbG9yLCAkaG92ZXItY29sb3IsIHlpcSgkY29sb3IpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBib3JkZXIpO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcblxuICAgICAgLmJhZGdlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgICBjb2xvcjogaWYoYWxwaGEoJGNvbG9yKSA9PSAxLCAkY29sb3IsIHlpcSgkY29sb3ItaG92ZXIpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbWFwLWdldCgkYnRuLWNvbG9ycywgc2hhZG93KTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fSAuYmFkZ2Uge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gICN7JHBhcmVudH06YWN0aXZlLFxuICAjeyRwYXJlbnR9LmFjdGl2ZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWhvdmVyKTtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgY29sb3I6IGlmKGFscGhhKCRjb2xvcikgPT0gMSwgJGNvbG9yLCB5aXEoJGNvbG9yLWhvdmVyKSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaG92ZXItY29sb3I6IG51bGwpIHtcbiAgJGJ0bi1jb2xvcnM6IGdldC1tYXRlcmlhbC1idG4tY29sb3JzKCRjb2xvcik7XG4gICRjb2xvci1ob3ZlcjogaWYoJGhvdmVyLWNvbG9yLCAkaG92ZXItY29sb3IsIHlpcSgkY29sb3IpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGNvbG9yIGluc2V0O1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuXG4gICAgICAuYmFkZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICAgIGNvbG9yOiBpZihhbHBoYSgkY29sb3IpID09IDEsICRjb2xvciwgeWlxKCRjb2xvci1ob3ZlcikpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvciBpbnNldCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0gLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAjeyRwYXJlbnR9IC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6IGlmKCRjb2xvci1ob3ZlciA9PSAjZmZmLCByZ2JhKCRjb2xvci1ob3ZlciwgLjMpLCByZ2JhKCRjb2xvci1ob3ZlciwgLjIpKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgI3skcGFyZW50fTphY3RpdmUsXG4gICN7JHBhcmVudH0uYWN0aXZlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1ob3Zlcik7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdztcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuXG4gICAgLmJhZGdlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGNvbG9yOiBpZihhbHBoYSgkY29sb3IpID09IDEsICRjb2xvciwgeWlxKCRjb2xvci1ob3ZlcikpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJhZGdlc1xuXG5AbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWJhZGdlLXZhcmlhbnQoJHBhcmVudCwgJGJnLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiZykpO1xuICB9XG5cbiAgI3skcGFyZW50fVtocmVmXSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoYWxwaGEoJGJnKSA9PSAxLCByZ2JhLXRvLWhleChyZ2JhKCRiZywgLjk1KSwgIzAwMCksIHJnYmEoJGJnLCBhbHBoYSgkYmcpICsgLjAzKSk7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmcpKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuYnRuICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZyAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiZykpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstYmFkZ2Utb3V0bGluZS12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiAkYmcpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRiZyBpbnNldDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgI3skcGFyZW50fVtocmVmXSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuYnRuICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRiZyBpbnNldCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIERyb3Bkb3duc1xuXG5AbWl4aW4gYXBwd29yay1kcm9wZG93bi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSAuZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICN7JHBhcmVudH0gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICB9XG5cbiAgI3skcGFyZW50fS5kcm9wZG93bi1tZW51ID4gbGk6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSk6YWN0aXZlLFxuICAjeyRwYXJlbnR9LmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmU6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstZHJvcGRvd24tdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLWRyb3Bkb3duLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1kcm9wZG93bi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSAuZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cblxuICAjeyRwYXJlbnR9LmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmU6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtZHJvcGRvd24tdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLWRyb3Bkb3duLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE5hdnNcblxuQG1peGluIGFwcHdvcmstbmF2LXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0KSB7XG4gICA+IC5uYXYgLm5hdi1saW5rLFxuICAmLm5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1uYXYtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRwaWxscy1zZWxlY3RvcjogaWYoJHBhcmVudCA9PSAnJywgJy5uYXYtcGlsbHMnLCAnI3skcGFyZW50fS5uYXYtcGlsbHMsICN7JHBhcmVudH0gPiAubmF2LXBpbGxzJyk7XG5cbiAgI3skcGlsbHMtc2VsZWN0b3J9IC5uYXYtbGluay5hY3RpdmUge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9LnRhYnMtYWx0Lm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsXG4gICN7JHBhcmVudH0udGFicy1hbHQgPiAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMCAtMnB4IDAgJGJhY2tncm91bmQgaW5zZXQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW5hdi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbmF2LXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1uYXYtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRsaW5rLWNvbG9yOiBudWxsKSB7XG4gICR0YWJzLXNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnLm5hdi10YWJzJywgJyN7JHBhcmVudH0ubmF2LXRhYnMnKTtcbiAgJHBpbGxzLXNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnLm5hdi1waWxscycsICcjeyRwYXJlbnR9Lm5hdi1waWxscywgI3skcGFyZW50fSA+IC5uYXYtcGlsbHMnKTtcblxuICAjeyR0YWJzLXNlbGVjdG9yfSAubmF2LWxpbmsge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkY29sb3IsICRjb2xvcik7XG4gIH1cblxuICAjeyRwaWxscy1zZWxlY3Rvcn0gLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgY29sb3I6IGlmKCRsaW5rLWNvbG9yLCAkbGluay1jb2xvciwgeWlxKCRjb2xvcikpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1uYXYtdGhlbWUoJGNvbG9yLCAkbGluay1jb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLW5hdi12YXJpYW50KCcnLCAkY29sb3IsICRsaW5rLWNvbG9yKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBQYWdpbmF0aW9uXG5cbkBtaXhpbiBhcHB3b3JrLXBhZ2luYXRpb24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0gLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayxcbiAgI3skcGFyZW50fS5wYWdpbmF0aW9uIGxpLmFjdGl2ZSA+IGE6bm90KC5wYWdlLWxpbmspIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1wYWdpbmF0aW9uLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1wYWdpbmF0aW9uLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFByb2dyZXNzIGJhcnNcblxuQG1peGluIGFwcHdvcmstcHJvZ3Jlc3MtYmFyLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpc3QgZ3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGU6IG51bGwsICRiYWNrZ3JvdW5kOiBudWxsLCAkY29sb3I6IG51bGwpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGJnOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuMSksICNmZmYpO1xuICAkY29sb3I6IHlpcSgkYmcpO1xuICAkaG92ZXItYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJnLCAuOTkpLCAjMDAwKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjA3KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJnO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1saXN0LWdyb3VwLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1saXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgnLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEFsZXJ0c1xuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZDogbnVsbCwgJGJvcmRlcjogbnVsbCwgJGNvbG9yOiBudWxsKSB7fVxuXG5AbWl4aW4gYXBwd29yay1hbGVydC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuMTUpLCAjZmZmKTtcbiAgJGJvcmRlcjogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjk0KSwgIzAwMCk7XG4gICRjb2xvcjogeWlxKCRiYWNrZ3JvdW5kKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIGhyIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuXG4gICAgLmNsb3NlLFxuICAgIC5hbGVydC1saW5rIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWFsZXJ0LWRhcmstdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBociB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKHlpcSgkYmFja2dyb3VuZCksLjIpO1xuICAgIH1cblxuICAgIC5jbG9zZSxcbiAgICAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRvb2x0aXBzXG5cbkBtaXhpbiBhcHB3b3JrLXRvb2x0aXAtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIC50b29sdGlwLWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgICB9XG5cbiAgICAmLmJzLXRvb2x0aXAtdG9wIC5hcnJvdzo6YmVmb3JlLCAmLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0gLmFycm93OjpiZWZvcmUgeyBib3JkZXItdG9wLWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtdG9vbHRpcC1yaWdodCAuYXJyb3c6OmJlZm9yZSwgJi5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwicmlnaHRcIl0gLmFycm93OjpiZWZvcmUgeyBib3JkZXItcmlnaHQtY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gICAgJi5icy10b29sdGlwLWJvdHRvbSAuYXJyb3c6OmJlZm9yZSwgJi5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3c6OmJlZm9yZSwgJi5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSAuYXJyb3c6OmJlZm9yZSB7IGJvcmRlci1sZWZ0LWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUG9wb3ZlcnNcblxuQG1peGluIGFwcHdvcmstcG9wb3Zlci12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAgIC5wb3BvdmVyLWhlYWRlciB7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoeWlxKCRiYWNrZ3JvdW5kKSwuMik7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuXG4gICAgLnBvcG92ZXItYm9keSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuXG4gICAgLmFycm93OjpiZWZvcmUgeyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuICAgICYuYnMtcG9wb3Zlci10b3AgLmFycm93OjphZnRlciwgJi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIC5hcnJvdzo6YWZ0ZXIgeyBib3JkZXItdG9wLWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtcG9wb3Zlci1yaWdodCAuYXJyb3c6OmFmdGVyLCAmLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSAuYXJyb3c6OmFmdGVyIHsgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtcG9wb3Zlci1ib3R0b20gLmFycm93OjphZnRlciwgJi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC5hcnJvdzo6YWZ0ZXIgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtcG9wb3Zlci1sZWZ0IC5hcnJvdzo6YWZ0ZXIsICYuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gLmFycm93OjphZnRlciB7IGJvcmRlci1sZWZ0LWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRm9ybSBjb250cm9sc1xuXG5AbWl4aW4gYXBwd29yay1jdXN0b20tc2VsZWN0LXNpemUoJHNpemUsICRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRoZWlnaHQsICRmb250LXNpemUsICRsaW5lLWhlaWdodCkge1xuICAuY3VzdG9tLXNlbGVjdC0jeyRzaXplfSxcbiAgLmlucHV0LWdyb3VwLSN7JHNpemV9IC5jdXN0b20tc2VsZWN0IHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICgkcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJHBhZGRpbmcteCBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgJixcbiAgICAgICZbc2l6ZT1cIjBcIl06bm90KFttdWx0aXBsZV0pIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcteDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgJHBhZGRpbmcteCBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJltzaXplPVwiMFwiXTpub3QoW211bHRpcGxlXSkge1xuICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1jdXN0b20tY29udHJvbC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwsICRkZWZhdWx0LWJhY2tncm91bmQ6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgQGlmICRkZWZhdWx0LWJhY2tncm91bmQge1xuICAgICAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgICAmOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgJi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG5cbiAgICAmLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLXJhZGlvLWluZGljYXRvci1iZywgJ19DT0xPUl8nLCAkY29sb3IpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1jdXN0b20tY29udHJvbC10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstY3VzdG9tLWNvbnRyb2wtdmFyaWFudCgnLmN1c3RvbS1jb250cm9sJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWN1c3RvbS1jb250cm9sLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCwgJGRlZmF1bHQtYmFja2dyb3VuZDogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBAaWYgJGRlZmF1bHQtYmFja2dyb3VuZCB7XG4gICAgICAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1iZywgJ19DT0xPUl8nLCAkY29sb3IpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cblxuICAgICYuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLXJhZGlvLWluZGljYXRvci1iZywgJ19DT0xPUl8nLCAkYmFja2dyb3VuZCksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhY2tncm91bmQsIC4xNSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWN1c3RvbS1jb250cm9sLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1jdXN0b20tY29udHJvbC12YXJpYW50KCcuY3VzdG9tLWNvbnRyb2wnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGU6IG51bGwsICRjb2xvcjogbnVsbCkge31cblxuQG1peGluIGFwcHdvcmstZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIHBhZGRpbmc6IC41cmVtO1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwuOCk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAuZm9ybS1jb250cm9sLFxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGNvbG9yLC4yNSkgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0LFxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJiB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRjb2xvciwgLjQpO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgeWlxKCRjb2xvcikpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgeWlxKCRjb2xvcikpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGNvbG9yLC4zKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1mb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IpIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgcGFkZGluZzogLjVyZW07XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IC4ycmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLC44KTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wsXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAtMXB4IDAgMCAkY29sb3IgaW5zZXQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQsXG4gIC5jdXN0b20tY29udHJvbC5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgICAmOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJiB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjE1KSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmLmlzLSN7JHN0YXRlfTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsIHlpcSgkY29sb3IpKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX06Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICYuaXMtI3skc3RhdGV9OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG4gIH1cblxuICAud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6I3skc3RhdGV9LFxuICAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtI3skc3RhdGV9IHtcbiAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgJGNvbG9yIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWN1c3RvbS1maWxlLWlucHV0LXRoZW1lKCRjb2xvcikge1xuICAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtY3VzdG9tLWZpbGUtaW5wdXQtdGhlbWUoJGNvbG9yKSB7XG4gIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgJGNvbG9yIGluc2V0O1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWZvcm0tY29udHJvbC1zaXplKCRzaXplLCAkbGluZS1oZWlnaHQsICRwYWRkaW5nLXksICRncm91cC1idG4tZm9udC1zaXplOiBudWxsKSB7XG4gIEBpZiAkc2l6ZSA9PSAnJyB7XG4gICAgLmZvcm0tY29udHJvbCxcbiAgICAuY3VzdG9tLXNlbGVjdCxcbiAgICAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skcGFkZGluZy15fSAtIDFweCkgIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAuZm9ybS1jb250cm9sLSN7JHNpemV9LFxuICAgIC5jdXN0b20tc2VsZWN0LSN7JHNpemV9LFxuICAgIC5pbnB1dC1ncm91cC0jeyRzaXplfSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgLmlucHV0LWdyb3VwLSN7JHNpemV9ID4gLmN1c3RvbS1zZWxlY3QsXG4gICAgLmlucHV0LWdyb3VwLSN7JHNpemV9IC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JHBhZGRpbmcteX0gLSAxcHgpICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cC0jeyRzaXplfSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbiAgICAuaW5wdXQtZ3JvdXAtI3skc2l6ZX0gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRwYWRkaW5nLXl9IC0gMXB4KSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAkZ3JvdXAtYnRuLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstZm9ybS1jb250cm9sLXRoZW1lKCRjb2xvcikge1xuICAuZm9ybS1jb250cm9sOmZvY3VzLFxuICAuY3VzdG9tLXNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtZm9ybS1jb250cm9sLXRoZW1lKCRjb2xvcikge1xuICAuZm9ybS1jb250cm9sOmZvY3VzLFxuICAuY3VzdG9tLXNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgJGNvbG9yIGluc2V0O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU3dpdGNoZXJzXG5cbkBtaXhpbiBhcHB3b3JrLXN3aXRjaGVyLXNpemUtYmFzZSgkd2lkdGgsICRoZWlnaHQsICRmb250LXNpemUsICRkZXNjcmlwdGlvbi1mb250LXNpemUsICRkZXNjcmlwdGlvbi1saW5lLWhlaWdodCwgJGlubmVyLXNwYWNlcjogJHN3aXRjaGVyLWlubmVyLXNwYWNlcikge1xuICBwYWRkaW5nLWxlZnQ6ICR3aWR0aDtcbiAgbWluLWhlaWdodDogJGhlaWdodDtcbiAgZm9udC1zaXplOiAkZGVzY3JpcHRpb24tZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGRlc2NyaXB0aW9uLWxpbmUtaGVpZ2h0O1xuXG4gICRsaW5lLWhlaWdodC1jb21wdXRlZDogJGRlc2NyaXB0aW9uLWZvbnQtc2l6ZSAqICRkZXNjcmlwdGlvbi1saW5lLWhlaWdodDtcbiAgJGRlbHRhOiBpZigkbWF0ZXJpYWwtc3R5bGUsIHB4LXRvLXJlbShjZWlsKHJlbS10by1weCgkaGVpZ2h0ICogLjEyNSkpKSwgMCk7XG5cbiAgLnN3aXRjaGVyLWJsYW5rIC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIHRvcDogJGRlbHRhICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodCAtICgkZGVsdGEgKiAyKTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWlnaHQ7XG5cbiAgICBAaWYgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkID4gJGhlaWdodCB7XG4gICAgICB0b3A6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGhlaWdodCkgLyAyKSArICRkZWx0YTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRvcDogMCArICRkZWx0YTtcbiAgICB9XG4gIH1cblxuICAuc3dpdGNoZXItbGFiZWwge1xuICAgIEBpZiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgPCAkaGVpZ2h0IHtcbiAgICAgIHRvcDogKCRoZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMjtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cblxuICAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICBsZWZ0OiAkd2lkdGggLSAkaGVpZ2h0O1xuICB9XG5cbiAgLnN3aXRjaGVyLWluZGljYXRvcjo6YWZ0ZXIge1xuICAgIHRvcDogJGRlbHRhICogLTE7XG4gICAgbWFyZ2luOiAkaW5uZXItc3BhY2VyIDAgMCAkaW5uZXItc3BhY2VyO1xuICAgIHdpZHRoOiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlciAqIDI7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlciAqIDI7XG4gIH1cblxuICAuc3dpdGNoZXItbm8ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRpbm5lci1zcGFjZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgfVxuXG4gIC5zd2l0Y2hlci15ZXMge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyO1xuICAgIHBhZGRpbmctbGVmdDogJGlubmVyLXNwYWNlcjtcbiAgfVxuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIC5zd2l0Y2hlci1pbmRpY2F0b3I6OmJlZm9yZSB7XG4gICAgICB0b3A6ICRkZWx0YSAqIC0xO1xuICAgICAgd2lkdGg6ICRoZWlnaHQ7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuXG4gICAgLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yOjpiZWZvcmUge1xuICAgICAgbGVmdDogJHdpZHRoIC0gJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBbZGlyPXJ0bF0gJiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkd2lkdGg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgW2Rpcj1ydGxdICYgLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yOjphZnRlciB7XG4gICAgICByaWdodDogJHdpZHRoIC0gJGhlaWdodDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgW2Rpcj1ydGxdICYgLnN3aXRjaGVyLWluZGljYXRvcjo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkaW5uZXItc3BhY2VyO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgW2Rpcj1ydGxdICYgLnN3aXRjaGVyLW5vIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkaW5uZXItc3BhY2VyO1xuICAgIH1cblxuICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci15ZXMge1xuICAgICAgcGFkZGluZy1yaWdodDogJGlubmVyLXNwYWNlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogJGhlaWdodCAtICRpbm5lci1zcGFjZXI7XG4gICAgfVxuXG4gICAgQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gICAgICBbZGlyPXJ0bF0gJiAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3I6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiAkd2lkdGggLSAkaGVpZ2h0O1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1zd2l0Y2hlci1zaXplKCRzaXplLCAkd2lkdGgsICRoZWlnaHQsICRmb250LXNpemUsICRkZXNjcmlwdGlvbi1mb250LXNpemUsICRkZXNjcmlwdGlvbi1saW5lLWhlaWdodCwgJGlubmVyLXNwYWNlcjogJHN3aXRjaGVyLWlubmVyLXNwYWNlcikge1xuICAuc3dpdGNoZXItI3skc2l6ZX0sXG4gIC5mb3JtLWdyb3VwLSN7JHNpemV9IC5zd2l0Y2hlciB7XG4gICAgQGluY2x1ZGUgYXBwd29yay1zd2l0Y2hlci1zaXplLWJhc2UoJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkZGVzY3JpcHRpb24tZm9udC1zaXplLCAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQsICRpbm5lci1zcGFjZXIpO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLXN3aXRjaGVyLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkc2VsZWN0b3I6IGlmKCRwYXJlbnQgPT0gJycsICcnLCAnI3skcGFyZW50fS5zd2l0Y2hlcicpO1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRzZWxlY3Rvcn0gLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IC5zd2l0Y2hlci1pbnB1dDpmb2N1cyB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIGJveC1zaGFkb3c6IDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGJhY2tncm91bmQsIC40KTtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSAuc3dpdGNoZXItaW5wdXQ6YWN0aXZlIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLXN3aXRjaGVyLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1zd2l0Y2hlci12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtc3dpdGNoZXItdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCkge1xuICAkc2VsZWN0b3I6IGlmKCRwYXJlbnQgPT0gJycsICcnLCAnI3skcGFyZW50fS5zd2l0Y2hlcicpO1xuXG4gICN7JHNlbGVjdG9yfSAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhY2tncm91bmQsIC41KTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiYWNrZ3JvdW5kLCAuMTUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1zd2l0Y2hlci10aGVtZSgkYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLXN3aXRjaGVyLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kKTtcbn1cblxuQG1peGluIGFwcHdvcmstc3dpdGNoZXItdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuc3dpdGNoZXItaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgICY6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IHlpcSgkY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkY29sb3IsIC40KSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZSB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIH4gLnN3aXRjaGVyLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1zd2l0Y2hlci12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC5zd2l0Y2hlci1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIC41KSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjE1KSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIH4gLnN3aXRjaGVyLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge31cblxuQG1peGluIGFwcHdvcmstdGFibGUtcm93LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQpIHtcbiAgJGJnOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuMSksICNmZmYpO1xuICAkY29sb3I6IHlpcSgkYmcpO1xuICAkaG92ZXItYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJnLCAuOTkpLCAjMDAwKTtcblxuICAudGFibGUgI3skcGFyZW50fSxcbiAgLnRhYmxlICN7JHBhcmVudH0gPiB0aCxcbiAgLnRhYmxlICN7JHBhcmVudH0gPiB0ZCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4wMzUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLnRhYmxlLWhvdmVyICN7JHBhcmVudH06aG92ZXIsXG4gIC50YWJsZS1ob3ZlciAjeyRwYXJlbnR9OmhvdmVyID4gdGQsXG4gIC50YWJsZS1ob3ZlciAjeyRwYXJlbnR9OmhvdmVyID4gdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iZztcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE5hdmJhclxuXG5AbWl4aW4gYXBwd29yay1uYXZiYXItdmFyaWFudCgkcGFyZW50LCAkYmcsICRjb2xvcjogbnVsbCwgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAkY29sb3JzOiBnZXQtbmF2LWNvbG9ycygkYmcsICRhY3RpdmUtY29sb3IsICRjb2xvciwgJGJvcmRlcik7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBiZykgIWltcG9ydGFudDtcbiAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAubmF2YmFyLWJyYW5kIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICAubmF2LWxpbmsge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBkaXNhYmxlZC1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2hvdyA+IC5uYXYtbGluayxcbiAgICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgICAubmF2LWxpbmsuc2hvdyxcbiAgICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG5cbiAgICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZihtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcikgPT0gI2ZmZiwgJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZywgJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpO1xuICAgIH1cblxuICAgIC5uYXZiYXItdGV4dCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlcik7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2lkZW5hdlxuXG5AbWl4aW4gYXBwd29yay1zaWRlbmF2LXZhcmlhbnQoJHBhcmVudCwgJGJnLCAkY29sb3I6IG51bGwsICRhY3RpdmUtY29sb3I6IG51bGwsICRib3JkZXI6IG51bGwsICRtZW51LWJnOiBudWxsKSB7XG4gICRjb2xvcnM6IGdldC1uYXYtY29sb3JzKCRiZywgJGFjdGl2ZS1jb2xvciwgJGNvbG9yLCAkYm9yZGVyKTtcbiAgJHlpcS1wZXJjZW50OiBtYXAtZ2V0KCRjb2xvcnMsIHlpcS1wZXJjZW50KTtcblxuICBAaWYgbm90ICRtZW51LWJnIHtcbiAgICAkbWVudS1iZzogcmdiYS10by1oZXgocmdiYShtYXAtZ2V0KCRjb2xvcnMsIGJnKSwgMSAtIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgLjAyNSwgLjA1KSksIGlmKCR5aXEtcGVyY2VudCA8IC4yNSwgI2ZmZiwgIzAwMCkpO1xuICB9XG5cbiAgJG1lbnUtYWN0aXZlLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRtZW51LWJnLCAxIC0gaWYoJHlpcS1wZXJjZW50ID4gLjc1LCAuMDI1LCAuMDUpKSwgaWYoJHlpcS1wZXJjZW50IDwgLjI1LCAjZmZmLCAjMDAwKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBiZykgIWltcG9ydGFudDtcbiAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAuc2lkZW5hdi1saW5rLFxuICAgIC5zaWRlbmF2LWhvcml6b250YWwtcHJldixcbiAgICAuc2lkZW5hdi1ob3Jpem9udGFsLW5leHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pdGVtLmRpc2FibGVkIC5zaWRlbmF2LWxpbmssXG4gICAgLnNpZGVuYXYtaG9yaXpvbnRhbC1wcmV2LmRpc2FibGVkLFxuICAgIC5zaWRlbmF2LWhvcml6b250YWwtbmV4dC5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBkaXNhYmxlZC1jb2xvcikgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pdGVtLm9wZW46bm90KC5zaWRlbmF2LWl0ZW0tY2xvc2luZykgPiAuc2lkZW5hdi10b2dnbGUsXG4gICAgLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOm5vdCguc2lkZW5hdi10b2dnbGUpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZW51LWJnO1xuICAgIH1cblxuICAgICYuc2lkZW5hdi1ob3Jpem9udGFsIC5zaWRlbmF2LW1lbnUgPiAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbms6bm90KC5zaWRlbmF2LXRvZ2dsZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtYWN0aXZlLWJnO1xuICAgIH1cblxuICAgICYuc2lkZW5hdi1ob3Jpem9udGFsIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbTpub3QoLnNpZGVuYXYtaXRlbS1jbG9zaW5nKSA+IC5zaWRlbmF2LW1lbnUsXG4gICAgJi5zaWRlbmF2LWhvcml6b250YWwgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gPiAuc2lkZW5hdi10b2dnbGUge1xuICAgICAgYmFja2dyb3VuZDogJG1lbnUtYmc7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLnNpZGVuYXYtaXRlbS1jbG9zaW5nIC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1tZW51LFxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5zaWRlbmF2LWl0ZW0tY2xvc2luZyAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtdG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LXRleHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1oZWFkZXIge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgbXV0ZWQtY29sb3IpO1xuICAgIH1cblxuICAgIGhyLFxuICAgIC5zaWRlbmF2LWRpdmlkZXIsXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gPiAuc2lkZW5hdi1tZW51OjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlcikgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWhlYWRlcjo6YmVmb3JlLFxuICAgIC5zaWRlbmF2LWJsb2NrOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBib3JkZXIpO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LXRvZ2dsZTo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEtdG8taGV4KG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKSwgJG1lbnUtYmcpO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluazo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLm9wZW4gPiAuc2lkZW5hdi10b2dnbGU6OmJlZm9yZSxcbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbms6OmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggJG1lbnUtYmc7XG4gICAgfVxuXG4gICAgLnBzX190aHVtYi15LFxuICAgIC5wc19fcmFpbC15LnBzLS1jbGlja2luZyA+IC5wc19fdGh1bWIteSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKSwgaWYoJHlpcS1wZXJjZW50ID4gLjc1LCBtYXAtZ2V0KCRjb2xvcnMsIG9wYWNpdHkpIC0gLjQsIG1hcC1nZXQoJGNvbG9ycywgb3BhY2l0eSkgLSAuMikpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRm9vdGVyXG5cbkBtaXhpbiBhcHB3b3JrLWZvb3Rlci12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiBudWxsLCAkYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRjb2xvcnM6IGdldC1uYXYtY29sb3JzKCRiZywgJGFjdGl2ZS1jb2xvciwgJGNvbG9yLCAkYm9yZGVyKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJnKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgIC5mb290ZXItbGluayB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGRpc2FibGVkLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItdGV4dCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgIH1cblxuICAgIC5zaG93ID4gLmZvb3Rlci1saW5rLFxuICAgIC5hY3RpdmUgPiAuZm9vdGVyLWxpbmssXG4gICAgLmZvb3Rlci1saW5rLnNob3csXG4gICAgLmZvb3Rlci1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgIH1cblxuICAgIGhyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBib3JkZXIpO1xuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBZ0JLRSxBQUFBLGFBQWEsQ0FBRjtFQUNULEtBQUssRWhCRUUsT0FBTyxDZ0JGQSxVQUFVLEdBQ3pCOztBQUNELEFQUUEsQ09SQyxBQUFBLGFBQWEsQVBRYixNQUFNLEVPUlAsQ0FBQyxBQUFBLGFBQWEsQVBTYixNQUFNLENBQUM7RU9QSixLQUFLLEVBQUUsT0FBbUIsQ0FBQyxVQUFVLEdQU3hDOztBNkI2SEQsQUFBQSxXQUFXLENBQUE7RUFBRSxnQkFBZ0IsRXRDeElwQixPQUFPLENzQ3dJc0IsVUFBVSxHQUFJOztBQUNwRCxBN0JqSUEsQzZCaUlDLEFBQUEsV0FBVyxBN0JqSVgsTUFBTSxFNkJpSVAsQ0FBQyxBQUFBLFdBQVcsQTdCaElYLE1BQU0sQ0FBQztFNkJpSWlCLGdCQUFnQixFbkNWL0IsT0FBbUMsQ21DVXNELFVBQVUsRzdCL0g1Rzs7QTZCNkhELEFBQUEsZ0JBQWdCLENBQUw7RUFBRSxnQkFBZ0IsRW5DUm5CLE9BQW1DLENtQ1FQLFVBQVUsR0FBSTs7QUFDcEQsQTdCaklBLEM2QmlJQyxBQUFBLGdCQUFnQixBN0JqSWhCLE1BQU0sRTZCaUlQLENBQUMsQUFBQSxnQkFBZ0IsQTdCaEloQixNQUFNLENBQUM7RTZCaUlpQixnQkFBZ0IsRW5DVi9C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 */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZlbmRvci9jc3MvcnRsL2NvbG9ycy5jc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19mdW5jdGlvbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX3ZhcmlhYmxlcy5zY3NzIiwidmVuZG9yL2Nzcy9ydGwvY29sb3JzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0U7RUMySUEsMEJBQVcsRUFBRTs7QUFFWTtFQUFBLDBCQy9IeEIsRUQ2SFk7O0FBbUViO0VBQUEscUNBQWdDLEVBQUE7O0FBakVQO0VFVmYscUNBQW1DLEVGUWhDOztBQW1FYjtFQUFBLHFDQUFnQyxFQUFBOztBQWpFUDtFRVZmLHFDQUFtQyxFRlFoQzs7QUFtRWI7RUFBQSxxQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixxQ0FBbUMsRUZRaEM7O0FEcUJiO0VBQ0UsMEJDREY7RUFxS0Esb0JEbFVnQjtFQ21VZCxZQU5jLEVEeElmO0VDN0NEO0lBZ01BLDBCQTNLQTtJQTRLSyxvQkE3SWE7SUE4SWhCLFlBYmMsRUFyTEw7RURxQlg7SUMyS0Esc0REeFVnQjtZQ3dVaEIsOENEeFVnQixFQ3lVaEI7RUQ1S0E7SUloS0EscUNBQVc7SUFDVCwrQkFDRDtJSm1MRyxvQ0FBMkI7WUFBM0IsNEJBQTJCO0lJbEw5Qix1QkFBQSxFQUVHOztBSHNJUztFRGdEWCxpQkNxSWM7RUFwTGYsZUR6SWUsRUMwSVM7O0FBRnpCOzs7RUFDQywwQkFvQkQ7RUFuQnlCLG9CQWtEUDtFQW5EakIseUJDaklBO1VEaUlBLGlCQ2pJQSxFRitMQTs7QUN4Q0M7OztFQUtFLGdDQXdCYztFQXZCZCwrQkF1QmMsRURtQmpCOztBQ2pEQztFQUNBLHNCRC9KYztFQ2dLZCx3QkFxQkQ7RUNqTEQsZUZKZ0IsRUMyTWhCO0VBbkVBO0lBOEJJLDBCQVRKO0lBQUEsb0JEN0pnQjtJQzJLWixZQWtKWSxFQXJMTDtJQXNCVDtNQW1CRSxpQkE0SVk7TUEzSVosZURsTFksRUNtTFo7RUFyQkY7SUR5SkUsc0RBdlRZO1lBdVRaLDhDQXZUWSxFQzRMaEI7RUE5QkU7SUFrQ0EsaUNFaEUyQztJRnFFekMsbUNBRUg7SUR1SEcsMEJBQXdCLEVDcEg1Qjs7QUFHRTtFQUNBLG9CRDlNYztFQW9VZCxZQUFXLEVDL0JiOztBQUVFOzs7RUFJRSwwQkE5SUo7RUErSUksb0JBaEhjO0VBaUhkLFlBZ0JZO0VBTloseUJJN0w0QjtVSjZMNUIsaUJJN0w0QixFSnlNOUI7RUE1QkE7OztJQXVCRSxpQkFEWTtJRHlCWixlQXRWWSxFQ2tVaEI7O0FEclVBO0VDMklBLDBCQUFXLEVBQUU7O0FBRVk7RUFBQSwwQkMvSHhCLEVENkhZOztBQW1FYjtFQUFBLHFDQUFnQyxFQUFBOztBQWpFUDtFRVZmLHFDQUFtQyxFRlFoQzs7QUFtRWI7RUFBQSxxQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixxQ0FBbUMsRUZRaEM7O0FBbUViO0VBQUEscUNBQWdDLEVBQUE7O0FBakVQO0VFVmYscUNBQW1DLEVGUWhDOztBRHFCYjtFQUNFLDBCQ0RGO0VBcUtBLG9CQzFUQztFRDJUQyxZQU5jLEVEeElmO0VDN0NEO0lBZ01BLDBCQTNLQTtJQTRLSyxvQkE3SWE7SUE4SWhCLFlBYmMsRUFyTEw7RURxQlg7SUMyS0EscURDaFVDO1lEZ1VELDZDQ2hVQyxFRGlVRDtFRDVLQTtJSWhLQSxxQ0FBVztJQUNULCtCQUNEO0lKbUxHLG9DQUEyQjtZQUEzQiw0QkFBMkI7SUlsTDlCLHVCQUFBLEVBRUc7O0FIc0lTO0VEZ0RYLGlCQ3FJYztFQXBMZixlQ2pJQSxFRGtJd0I7O0FBRnpCOzs7RUFDQywwQkFvQkQ7RUFuQnlCLG9CQWtEUDtFQW5EakIseUJDaklBO1VEaUlBLGlCQ2pJQSxFRitMQTs7QUN4Q0M7OztFQUtFLGdDQXdCYztFQXZCZCwrQkF1QmMsRURtQmpCOztBQ2pEQztFQUNBLHNCQ3ZKRDtFRHdKQyx3QkFxQkQ7RUNqTEQsZUFJQyxFRG1NRDtFQW5FQTtJQThCSSwwQkFUSjtJQUFBLG9CQ3JKQztJRG1LRyxZQWtKWSxFQXJMTDtJQXNCVDtNQW1CRSxpQkE0SVk7TUEzSVosZUMxS0gsRUQyS0c7RUFyQkY7SUR5SkUscURFL1NIO1lGK1NHLDZDRS9TSCxFRG9MRDtFQTlCRTtJQWtDQSxpQ0VoRTJDO0lGcUV6QyxtQ0FFSDtJRHVIRywwQkFBd0IsRUNwSDVCOztBQUdFO0VBQ0Esb0JDdE1EO0VGNFRDLFlBQVcsRUMvQmI7O0FBRUU7OztFQUlFLDBCQTlJSjtFQStJSSxvQkFoSGM7RUFpSGQsWUFnQlk7RUFOWix5Qkk3TDRCO1VKNkw1QixpQkk3TDRCLEVKeU05QjtFQTVCQTs7O0lBdUJFLGlCQURZO0lEeUJaLGVFOVVILEVEMFREOztBRHJVQTtFQzJJQSwwQkFBVyxFQUFFOztBQUVZO0VBQUEsMEJDL0h4QixFRDZIWTs7QUFtRWI7RUFBQSxxQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixxQ0FBbUMsRUZRaEM7O0FBbUViO0VBQUEscUNBQWdDLEVBQUE7O0FBakVQO0VFVmYscUNBQW1DLEVGUWhDOztBQW1FYjtFQUFBLHFDQUFnQyxFQUFBOztBQWpFUDtFRVZmLHFDQUFtQyxFRlFoQzs7QURxQmI7RUFDRSwwQkNERjtFQXFLQSxvQkF4THlDO0VBeUx2QyxZQU5jLEVEeElmO0VDN0NEO0lBZ01BLDBCQTNLQTtJQTRLSyxvQkE3SWE7SUE4SWhCLFlBYmMsRUFyTEw7RURxQlg7SUMyS0EscURBOUx5QztZQThMekMsNkNBOUx5QyxFQStMekM7RUQ1S0E7SUloS0EscUNBQVc7SUFDVCwrQkFDRDtJSm1MRyxvQ0FBMkI7WUFBM0IsNEJBQTJCO0lJbEw5Qix1QkFBQSxFQUVHOztBSHNJUztFRGdEWCxpQkNxSWM7RUFwTGYsZUFDd0MsRUFBaEI7O0FBRnpCOzs7RUFDQywwQkFvQkQ7RUFuQnlCLG9CQWtEUDtFQW5EakIseUJDaklBO1VEaUlBLGlCQ2pJQSxFRitMQTs7QUN4Q0M7OztFQUtFLGdDQXdCYztFQXZCZCwrQkF1QmMsRURtQmpCOztBQ2pEQztFQUNBLHNCQXJCdUM7RUFzQnZDLHdCQXFCRDtFQ2pMRCxlRHNJeUMsRUFpRXpDO0VBbkVBO0lBOEJJLDBCQVRKO0lBQUEsb0JBbkJ5QztJQWlDckMsWUFrSlksRUFyTEw7SUFzQlQ7TUFtQkUsaUJBNElZO01BM0laLGVBeENxQyxFQXlDckM7RUFyQkY7SUR5SkUscURDN0txQztZRDZLckMsNkNDN0txQyxFQWtEekM7RUE5QkU7SUFrQ0EsaUNFaEUyQztJRnFFekMsbUNBRUg7SUR1SEcsMEJBQXdCLEVDcEg1Qjs7QUFHRTtFQUNBLG9CQXBFdUM7RUQwTHZDLFlBQVcsRUMvQmI7O0FBRUU7OztFQUlFLDBCQTlJSjtFQStJSSxvQkFoSGM7RUFpSGQsWUFnQlk7RUFOWix5Qkk3TDRCO1VKNkw1QixpQkk3TDRCLEVKeU05QjtFQTVCQTs7O0lBdUJFLGlCQURZO0lEeUJaLGVDNU1xQyxFQXdMekM7O0FEclVBO0VDMklBLDBCQUFXLEVBQUU7O0FBRVk7RUFBQSwwQkMvSHhCLEVENkhZOztBQW1FYjtFQUFBLHFDQUFnQyxFQUFBOztBQWpFUDtFRVZmLHFDQUFtQyxFRlFoQzs7QUFtRWI7RUFBQSxxQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixxQ0FBbUMsRUZRaEM7O0FBbUViO0VBQUEscUNBQWdDLEVBQUE7O0FBakVQO0VFVmYscUNBQW1DLEVGUWhDOztBRHFCYjtFQUNFLDBCQ0RGO0VBcUtBLG9CRC9Ua0I7RUNnVWhCLFlBTmMsRUR4SWY7RUM3Q0Q7SUFnTUEsMEJBM0tBO0lBNEtLLG9CQTdJYTtJQThJaEIsWUFiYyxFQXJMTDtFRHFCWDtJQzJLQSxxRERyVWtCO1lDcVVsQiw2Q0RyVWtCLEVDc1VsQjtFRDVLQTtJSWhLQSxxQ0FBVztJQUNULCtCQUNEO0lKbUxHLG9DQUEyQjtZQUEzQiw0QkFBMkI7SUlsTDlCLHVCQUFBLEVBRUc7O0FIc0lTO0VEZ0RYLGlCQ3FJYztFQXBMZixlRHRJaUIsRUN1SU87O0FBRnpCOzs7RUFDQywwQkFvQkQ7RUFuQnlCLG9CQWtEUDtFQW5EakIseUJDaklBO1VEaUlBLGlCQ2pJQSxFRitMQTs7QUN4Q0M7OztFQUtFLGdDQXdCYztFQXZCZCwrQkF1QmMsRURtQmpCOztBQ2pEQztFQUNBLHNCRDVKZ0I7RUM2SmhCLHdCQXFCRDtFQ2pMRCxlRkRrQixFQ3dNbEI7RUFuRUE7SUE4QkksMEJBVEo7SUFBQSxvQkQxSmtCO0lDd0tkLFlBa0pZLEVBckxMO0lBc0JUO01BbUJFLGlCQTRJWTtNQTNJWixlRC9LYyxFQ2dMZDtFQXJCRjtJRHlKRSxxREFwVGM7WUFvVGQsNkNBcFRjLEVDeUxsQjtFQTlCRTtJQWtDQSxpQ0VoRTJDO0lGcUV6QyxtQ0FFSDtJRHVIRywwQkFBd0IsRUNwSDVCOztBQUdFO0VBQ0Esb0JEM01nQjtFQWlVaEIsWUFBVyxFQy9CYjs7QUFFRTs7O0VBSUUsMEJBOUlKO0VBK0lJLG9CQWhIYztFQWlIZCxZQWdCWTtFQU5aLHlCSTdMNEI7VUo2TDVCLGlCSTdMNEIsRUp5TTlCO0VBNUJBOzs7SUF1QkUsaUJBRFk7SUR5QlosZUFuVmMsRUMrVGxCOztBRHJVQTtFQzJJQSx1QkFBVyxFQUFFOztBQUVZO0VBQUEsd0JDL0h4QixFRDZIWTs7QUFtRWI7RUFBQSxrQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixtQ0FBbUMsRUZRaEM7O0FBbUViO0VBQUEsbUNBQWdDLEVBQUE7O0FBakVQO0VFVmYsbUNBQW1DLEVGUWhDOztBQW1FYjtFQUFBLG1DQUFnQyxFQUFBOztBQWpFUDtFRVZmLG1DQUFtQyxFRlFoQzs7QURxQmI7RUFDRSwwQkNERjtFQXFLQSxpQkExTFc7RUEyTFQsWUFOYyxFRHhJZjtFQzdDRDtJQWdNQSwwQkEzS0E7SUE0S0ssa0JBN0lhO0lBOEloQixZQWJjLEVBckxMO0VEcUJYO0lDMktBLGlEQWhNVztZQWdNWCx5Q0FoTVcsRUFpTVg7RUQ1S0E7SUloS0EscUNBQVc7SUFDVCw0QkFDRDtJSm1MRyxvQ0FBMkI7WUFBM0IsNEJBQTJCO0lJbEw5Qix1QkFBQSxFQUVHOztBSHNJUztFRGdEWCxpQkNxSWM7RUFwTGYsWUFEVSxFQUVjOztBQUZ6Qjs7O0VBQ0MsMEJBb0JEO0VBbkJ5QixrQkFrRFA7RUFuRGpCLHlCQ2pJQTtVRGlJQSxpQkNqSUEsRUYrTEE7O0FDeENDOzs7RUFLRSw4QkF3QmM7RUF2QmQsNkJBdUJjLEVEbUJqQjs7QUNqREM7RUFDQSxtQkF2QlM7RUF3QlQsd0JBcUJEO0VDakxELFlEb0lXLEVBbUVYO0VBbkVBO0lBOEJJLDBCQVRKO0lBQUEsaUJBckJXO0lBbUNQLFlBa0pZLEVBckxMO0lBc0JUO01BbUJFLGlCQTRJWTtNQTNJWixZQTFDTyxFQTJDUDtFQXJCRjtJRHlKRSxpREMvS087WUQrS1AseUNDL0tPLEVBb0RYO0VBOUJFO0lBa0NBLDhCRWhFMkM7SUZxRXpDLG1DQUVIO0lEdUhHLHVCQUF3QixFQ3BINUI7O0FBR0U7RUFDQSxpQkF0RVM7RUQ0TFQsWUFBVyxFQy9CYjs7QUFFRTs7O0VBSUUsMEJBOUlKO0VBK0lJLGtCQWhIYztFQWlIZCxZQWdCWTtFQU5aLHlCSTdMNEI7VUo2TDVCLGlCSTdMNEIsRUp5TTlCO0VBNUJBOzs7SUF1QkUsaUJBRFk7SUR5QlosWUM5TU8sRUEwTFg7O0FEclVBO0VDMklBLDBCQUFXLEVBQUU7O0FBRVk7RUFBQSwwQkMvSHhCLEVENkhZOztBQW1FYjtFQUFBLHFDQUFnQyxFQUFBOztBQWpFUDtFRVZmLHFDQUFtQyxFRlFoQzs7QUFtRWI7RUFBQSxxQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixxQ0FBbUMsRUZRaEM7O0FBbUViO0VBQUEscUNBQWdDLEVBQUE7O0FBakVQO0VFVmYscUNBQW1DLEVGUWhDOztBRHFCYjtFQUNFLDBCQ0RGO0VBcUtBLG9CRDVUZ0I7RUM2VGQsWUFOYyxFRHhJZjtFQzdDRDtJQWdNQSwwQkEzS0E7SUE0S0ssb0JBN0lhO0lBOEloQixZQWJjLEVBckxMO0VEcUJYO0lDMktBLHNERGxVZ0I7WUNrVWhCLDhDRGxVZ0IsRUNtVWhCO0VENUtBO0lJaEtBLHFDQUFXO0lBQ1QsK0JBQ0Q7SUptTEcsb0NBQTJCO1lBQTNCLDRCQUEyQjtJSWxMOUIsdUJBQUEsRUFFRzs7QUhzSVM7RURnRFgsaUJDcUljO0VBcExmLGVEbkllLEVDb0lTOztBQUZ6Qjs7O0VBQ0MsMEJBb0JEO0VBbkJ5QixvQkFrRFA7RUFuRGpCLHlCQ2pJQTtVRGlJQSxpQkNqSUEsRUYrTEE7O0FDeENDOzs7RUFLRSxnQ0F3QmM7RUF2QmQsK0JBdUJjLEVEbUJqQjs7QUNqREM7RUFDQSxzQkR6SmM7RUMwSmQsd0JBcUJEO0VDakxELGVGRWdCLEVDcU1oQjtFQW5FQTtJQThCSSwwQkFUSjtJQUFBLG9CRHZKZ0I7SUNxS1osWUFrSlksRUFyTEw7SUFzQlQ7TUFtQkUsaUJBNElZO01BM0laLGVENUtZLEVDNktaO0VBckJGO0lEeUpFLHNEQWpUWTtZQWlUWiw4Q0FqVFksRUNzTGhCO0VBOUJFO0lBa0NBLGlDRWhFMkM7SUZxRXpDLG1DQUVIO0lEdUhHLDBCQUF3QixFQ3BINUI7O0FBR0U7RUFDQSxvQkR4TWM7RUE4VGQsWUFBVyxFQy9CYjs7QUFFRTs7O0VBSUUsMEJBOUlKO0VBK0lJLG9CQWhIYztFQWlIZCxZQWdCWTtFQU5aLHlCSTdMNEI7VUo2TDVCLGlCSTdMNEIsRUp5TTlCO0VBNUJBOzs7SUF1QkUsaUJBRFk7SUR5QlosZUFoVlksRUM0VGhCOztBRHJVQTtFQzJJQSwwQkFBVyxFQUFFOztBQUVZO0VBQUEsMEJDL0h4QixFRDZIWTs7QUFtRWI7RUFBQSxxQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixxQ0FBbUMsRUZRaEM7O0FBbUViO0VBQUEscUNBQWdDLEVBQUE7O0FBakVQO0VFVmYscUNBQW1DLEVGUWhDOztBQW1FYjtFQUFBLHFDQUFnQyxFQUFBOztBQWpFUDtFRVZmLHFDQUFtQyxFRlFoQzs7QURxQmI7RUFDRSwwQkNERjtFQXFLQSxvQkF6TEM7RUEwTEMsWUFOYyxFRHhJZjtFQzdDRDtJQWdNQSwwQkEzS0E7SUE0S0ssb0JBN0lhO0lBOEloQixZQWJjLEVBckxMO0VEcUJYO0lDMktBLG9EQS9MQztZQStMRCw0Q0EvTEMsRUFnTUQ7RUQ1S0E7SUloS0EscUNBQVc7SUFDVCwrQkFDRDtJSm1MRyxvQ0FBMkI7WUFBM0IsNEJBQTJCO0lJbEw5Qix1QkFBQSxFQUVHOztBSHNJUztFRGdEWCxpQkNxSWM7RUFwTGYsZUFBQSxFQUN3Qjs7QUFGekI7OztFQUNDLDBCQW9CRDtFQW5CeUIsb0JBa0RQO0VBbkRqQix5QkNqSUE7VURpSUEsaUJDaklBLEVGK0xBOztBQ3hDQzs7O0VBS0UsZ0NBd0JjO0VBdkJkLCtCQXVCYyxFRG1CakI7O0FDakRDO0VBQ0Esc0JBdEJEO0VBdUJDLHdCQXFCRDtFQ2pMRCxlRHFJQyxFQWtFRDtFQW5FQTtJQThCSSwwQkFUSjtJQUFBLG9CQXBCQztJQWtDRyxZQWtKWSxFQXJMTDtJQXNCVDtNQW1CRSxpQkE0SVk7TUEzSVosZUF6Q0gsRUEwQ0c7RUFyQkY7SUR5SkUsb0RDOUtIO1lEOEtHLDRDQzlLSCxFQW1ERDtFQTlCRTtJQWtDQSxpQ0VoRTJDO0lGcUV6QyxtQ0FFSDtJRHVIRywwQkFBd0IsRUNwSDVCOztBQUdFO0VBQ0Esb0JBckVEO0VEMkxDLFlBQVcsRUMvQmI7O0FBRUU7OztFQUlFLDBCQTlJSjtFQStJSSxvQkFoSGM7RUFpSGQsWUFnQlk7RUFOWix5Qkk3TDRCO1VKNkw1QixpQkk3TDRCLEVKeU05QjtFQTVCQTs7O0lBdUJFLGlCQURZO0lEeUJaLGVDN01ILEVBeUxEOztBRHJVQTtFQzJJQSwwQkFBVyxFQUFFOztBQUVZO0VBQUEsMEJDL0h4QixFRDZIWTs7QUFtRWI7RUFBQSxxQ0FBZ0MsRUFBQTs7QUFqRVA7RUVWZixxQ0FBbUMsRUZRaEM7O0FBbUViO0VBQUEscUNBQWdDLEVBQUE7O0FBakVQO0VFVmYscUNBQW1DLEVGUWhDOztBQW1FYjtFQUFBLHFDQUFnQyxFQUFBOztBQWpFUDtFRVZmLHFDQUFtQyxFRlFoQzs7QURxQmI7RUFDRSwwQkNERjtFQXFLQSxvQkF4THlCO0VBeUx2QixZQU5jLEVEeElmO0VDN0NEO0lBZ01BLDBCQTNLQTtJQTRLSyxvQkE3SWE7SUE4SWhCLFlBYmMsRUFyTEw7RURxQlg7SUMyS0EscURBOUx5QjtZQThMekIsNkNBOUx5QixFQStMekI7RUQ1S0E7SUloS0EscUNBQVc7SUFDVCwrQkFDRDtJSm1MRyxvQ0FBMkI7WUFBM0IsNEJBQTJCO0lJbEw5Qix1QkFBQSxFQUVHOztBSHNJUztFRGdEWCxpQkNxSWM7RUFwTGYsZUFDd0IsRUFBQTs7QUFGekI7OztFQUNDLDBCQW9CRDtFQW5CeUIsb0JBa0RQO0VBbkRqQix5QkNqSUE7VURpSUEsaUJDaklBLEVGK0xBOztBQ3hDQzs7O0VBS0UsZ0NBd0JjO0VBdkJkLCtCQXVCYyxFRG1CakI7O0FDakRDO0VBQ0Esc0JBckJ1QjtFQXNCdkIsd0JBcUJEO0VDakxELGVEc0l5QixFQWlFekI7RUFuRUE7SUE4QkksMEJBVEo7SUFBQSxvQkFuQnlCO0lBaUNyQixZQWtKWSxFQXJMTDtJQXNCVDtNQW1CRSxpQkE0SVk7TUEzSVosZUF4Q3FCLEVBeUNyQjtFQXJCRjtJRHlKRSxxREM3S3FCO1lENktyQiw2Q0M3S3FCLEVBa0R6QjtFQTlCRTtJQWtDQSxpQ0VoRTJDO0lGcUV6QyxtQ0FFSDtJRHVIRywwQkFBd0IsRUNwSDVCOztBQUdFO0VBQ0Esb0JBcEV1QjtFRDBMdkIsWUFBVyxFQy9CYjs7QUFFRTs7O0VBSUUsMEJBOUlKO0VBK0lJLG9CQWhIYztFQWlIZCxZQWdCWTtFQU5aLHlCSTdMNEI7VUo2TDVCLGlCSTdMNEIsRUp5TTlCO0VBNUJBOzs7SUF1QkUsaUJBRFk7SUR5QlosZUM1TXFCLEVBd0x6Qjs7QURyS0E7RUFDRSwwQkNERjtFQXFLQSxpQkVsTTZDO0VGbU0zQyxlQXJJa0IsRURUbkI7RUM3Q0Q7SUFnTUEsMEJBM0tBO0lBNEtLLG9CQTdJYTtJQThJaEIsZUE1SWtCLEVBdERUO0VEcUJYO0lDMktBLHVERXhNNkM7WUZ3TTdDLCtDRXhNNkMsRUZ5TTdDO0VENUtBO0lJaEtBLHFDQUFXO0lBQ1QsNEJBQ0Q7SUptTEcsb0NBQTJCO1lBQTNCLDRCQUEyQjtJSWxMOUIsMEJBQUEsRUFFRzs7QUhzSVM7RURnRFgsb0JDTWtCO0VBckRuQixZRVQ0QyxFRlVwQjs7QUFGekI7OztFQUNDLDBCQW9CRDtFQW5CeUIsb0JBa0RQO0VBbkRqQix5QkNqSUE7VURpSUEsaUJDaklBLEVGK0xBOztBQ3hDQzs7O0VBS0UsZ0NBd0JjO0VBdkJkLCtCQXVCYyxFRG1CakI7O0FDakRDO0VBQ0EsbUJDM0pvQjtFRDRKcEIsd0JBcUJEO0VDakxELFlBQXNCLEVEdU10QjtFQW5FQTtJQThCSSwwQkFUSjtJQUFBLGlCQ3pKc0I7SUR1S2xCLGVBbUJnQixFQXREVDtJQXNCVDtNQW1CRSxvQkFhZ0I7TUFaaEIsWUM5S2tCLEVEK0tsQjtFQXJCRjtJRHlKRSx1REVuVGtCO1lGbVRsQiwrQ0VuVGtCLEVEd0x0QjtFQTlCRTtJQWtDQSw4QkVoRTJDO0lGcUV6QyxtQ0FFSDtJRHVIRyx1QkFBd0IsRUNwSDVCOztBQUdFO0VBQ0EsaUJDMU1vQjtFRmdVcEIsWUFBVyxFQy9CYjs7QUFFRTs7O0VBSUUsMEJBOUlKO0VBK0lJLG9CQWhIYztFQWlIZCxlQS9HZ0I7RUF5SGhCLHlCSTdMNEI7VUo2TDVCLGlCSTdMNEIsRUp5TTlCO0VBNUJBOzs7SUF1QkUsb0JBaElnQjtJRHdKaEIsWUVsVmtCLEVEOFR0Qjs7QUFwS0U7O0VBTUUsdUJBY0EsRUFiQTs7QUFQRjs7RUFtQkUsbUJBQ0EsRUFBQTs7QUFwQkY7RUF5QkYsaURBTEk7VUFLSix5Q0FMSSxFQU1GOztBQTFCQTs7RUFnQ0csbUJBWkQ7RUFhRix1QkFiRSxFQWNGOztBQWxDQTtFQTRDRiwwUkFBcUIsRUFDckI7O0FBN0NFO0VBZ0RBLGdTQUNELEVEeWlCRTs7QUMxbEJEOztFQU1FLHVCRVJNLEVGU047O0FBUEY7O0VBbUJFLG1CRXJCTSxFRnNCTjs7QUFwQkY7RUF5QkYsdURFM0JVO1VGMkJWLCtDRTNCVSxFRjRCUjs7QUExQkE7O0VBZ0NHLG1CRWxDSztFRm1DUix1QkVuQ1EsRUZvQ1I7O0FBbENBO0VBNENGLDZSQUFxQixFQUNyQjs7QUE3Q0U7RUFnREEsc1NBQ0QsRUR5aUJFOztBQzFsQkQ7O0VBTUUsdUJEcklRLEVDc0lSOztBQVBGOztFQW1CRSxtQkRsSlEsRUNtSlI7O0FBcEJGO0VBeUJGLHVERHhKWTtVQ3dKWiwrQ0R4SlksRUN5SlY7O0FBMUJBOztFQWdDRyxtQkQvSk87RUNnS1YsdUJEaEtVLEVDaUtWOztBQWxDQTtFQTRDRiw2UkFBcUIsRUFDckI7O0FBN0NFO0VBZ0RBLHNTQUNELEVEeWlCRTs7QUMxbEJEOztFQU1FLHVCQW1CUSxFQWxCUjs7QUFQRjs7RUFtQkUsbUJBTVEsRUFMUjs7QUFwQkY7RUF5QkYsdURBQVk7VUFBWiwrQ0FBWSxFQUNWOztBQTFCQTs7RUFnQ0csbUJBUE87RUFRVix1QkFSVSxFQVNWOztBQWxDQTtFQTRDRiwwUkFBcUIsRUFDckI7O0FBN0NFO0VBZ0RBLGdTQUNELEVEeWlCRTs7QUMxbEJEOztFQU1FLDBCRVJNLEVGU047O0FBUEY7O0VBbUJFLHNCRXJCTSxFRnNCTjs7QUFwQkY7RUF5QkYsc0RFM0JVO1VGMkJWLDhDRTNCVSxFRjRCUjs7QUExQkE7O0VBZ0NHLHNCRWxDSztFRm1DUiwwQkVuQ1EsRUZvQ1I7O0FBbENBO0VBNENGLDZSQUFxQixFQUNyQjs7QUE3Q0U7RUFnREEsc1NBQ0QsRUR5aUJFOztBQzFsQkQ7O0VBTUUsMEJLcEtLLEVMcUtMOztBQVBGOztFQW1CRSxzQktqTEssRUxrTEw7O0FBcEJGO0VBeUJGLHFES3ZMUztVTHVMVCw2Q0t2TFMsRUx3TFA7O0FBMUJBOztFQWdDRyxzQks5TEk7RUwrTFAsMEJLL0xPLEVMZ01QOztBQWxDQTtFQTRDRiwwUkFBcUIsRUFDckI7O0FBN0NFO0VBZ0RBLGdTQUNELEVEeWlCRTs7QUMxbEJEOztFQU1FLDBCRGpJUSxFQ2tJUjs7QUFQRjs7RUFtQkUsc0JEOUlRLEVDK0lSOztBQXBCRjtFQXlCRixxRERwSlk7VUNvSlosNkNEcEpZLEVDcUpWOztBQTFCQTs7RUFnQ0csc0JEM0pPO0VDNEpWLDBCRDVKVSxFQzZKVjs7QUFsQ0E7RUE0Q0YsMFJBQXFCLEVBQ3JCOztBQTdDRTtFQWdEQSxnU0FDRCxFRHlpQkU7O0FDZ21CSDtFQUNFLHFDQUFpRDtFQUNqRCxlQTlwQ2dCLEVBNHBDbEI7RUFBQTtJQUFBLFlBM2hDZ0IsRUEyaENoQjtJQTlzQ3lCO01BOHNDekIsWUEzaENnQixFQXJMSDtFQWd0Q2I7SUFBQSxlQTVwQ2tCLEVBc3JDZDtJQXh1Q3FCO01BOHNDakIsWUEzaENRLEVBckxIO0lBZ3RDYjtNQUFRLDBCQXdCaUIsRUF4QnpCO0VBQUE7Ozs7SUFBQSxZQTNoQ2dCLEVBa2tDWjtFQXZDSjtJQTZDSSxlQXpzQ2M7SUE0cENsQix3Q0EzaENnQixFQTRrQ1o7RUFqREo7SUFBQSw0UUFodENvRCxFQWd0Q3BEO0VBQUE7SUFBQSxlQTVwQ2tCLEVBeXVDZDtJQTdFSjtNQUFBLFlBM2hDZ0IsRUEyaENoQjtNQTlzQ3lCO1FBc3hDckIsWUFubUNZLEVBckxIO0VBZ3RDYjtJQWtGSSx3Q0E3bUNZLEVEMGdDYjs7QUNpQkg7RUFDRSxxQ0FBaUQ7RUFDakQsZUE5cENnQixFQTRwQ2xCO0VBQUE7SUFBQSxZQTNoQ2dCLEVBMmhDaEI7SUE5c0N5QjtNQThzQ3pCLFlBM2hDZ0IsRUFyTEg7RUFndENiO0lBQUEsZUE1cENrQixFQXNyQ2Q7SUF4dUNxQjtNQThzQ2pCLFlBM2hDUSxFQXJMSDtJQWd0Q2I7TUFBUSwwQkF3QmlCLEVBeEJ6QjtFQUFBOzs7O0lBQUEsWUEzaENnQixFQWtrQ1o7RUF2Q0o7SUE2Q0ksZUF6c0NjO0lBNHBDbEIsd0NBM2hDZ0IsRUE0a0NaO0VBakRKO0lBQUEsNFFBaHRDb0QsRUFndENwRDtFQUFBO0lBQUEsZUE1cENrQixFQXl1Q2Q7SUE3RUo7TUFBQSxZQTNoQ2dCLEVBMmhDaEI7TUE5c0N5QjtRQXN4Q3JCLFlBbm1DWSxFQXJMSDtFQWd0Q2I7SUFrRkksd0NBN21DWSxFRDBnQ2I7O0FDaUJIO0VBQ0UscUNBQWlEO0VBQ2pELGVBOXBDZ0IsRUE0cENsQjtFQUFBO0lBQUEsWUEzaENnQixFQTJoQ2hCO0lBOXNDeUI7TUE4c0N6QixZQTNoQ2dCLEVBckxIO0VBZ3RDYjtJQUFBLGVBNXBDa0IsRUFzckNkO0lBeHVDcUI7TUE4c0NqQixZQTNoQ1EsRUFyTEg7SUFndENiO01BQVEsMEJBd0JpQixFQXhCekI7RUFBQTs7OztJQUFBLFlBM2hDZ0IsRUFra0NaO0VBdkNKO0lBNkNJLGVBenNDYztJQTRwQ2xCLHdDQTNoQ2dCLEVBNGtDWjtFQWpESjtJQUFBLDRRQWh0Q29ELEVBZ3RDcEQ7RUFBQTtJQUFBLGVBNXBDa0IsRUF5dUNkO0lBN0VKO01BQUEsWUEzaENnQixFQTJoQ2hCO01BOXNDeUI7UUFzeENyQixZQW5tQ1ksRUFyTEg7RUFndENiO0lBa0ZJLHdDQTdtQ1ksRUQwZ0NiOztBQ2lCSDtFQUNFLHFDQUFpRDtFQUNqRCxlQTlwQ2dCLEVBNHBDbEI7RUFBQTtJQUFBLGVBNXBDa0IsRUE0cENsQjtJQTlzQ3lCO01BOHNDekIsZUE1cENrQixFQXBETDtFQWd0Q2I7SUFBQSxlQTVwQ2tCLEVBc3JDZDtJQXh1Q3FCO01BOHNDakIsZUE1cENVLEVBcERMO0lBZ3RDYjtNQUFRLDBCQXdCaUIsRUF4QnpCO0VBQUE7Ozs7SUFBQSxlQTVwQ2tCLEVBbXNDZDtFQXZDSjtJQTZDSSxlQXpzQ2M7SUE0cENsQiwyQ0E1cENrQixFQTZzQ2Q7RUFqREo7SUFBQSx5UUtoMUNjLEVMZzFDZDtFQUFBO0lBQUEsZUE1cENrQixFQXl1Q2Q7SUE3RUo7TUFBQSxlQTVwQ2tCLEVBNHBDbEI7TUE5c0N5QjtRQXN4Q3JCLGVBcHVDYyxFQXBETDtFQWd0Q2I7SUFrRkksMkNBOXVDYyxFRDJvQ2Y7O0FDaUJIO0VBQ0UscUNBQWlEO0VBQ2pELGVBOXBDZ0IsRUE0cENsQjtFQUFBO0lBQUEsWUEzaENnQixFQTJoQ2hCO0lBOXNDeUI7TUE4c0N6QixZQTNoQ2dCLEVBckxIO0VBZ3RDYjtJQUFBLGVBNXBDa0IsRUFzckNkO0lBeHVDcUI7TUE4c0NqQixZQTNoQ1EsRUFyTEg7SUFndENiO01BQVEsMEJBd0JpQixFQXhCekI7RUFBQTs7OztJQUFBLFlBM2hDZ0IsRUFra0NaO0VBdkNKO0lBNkNJLGVBenNDYztJQTRwQ2xCLHdDQTNoQ2dCLEVBNGtDWjtFQWpESjtJQUFBLDRRQWh0Q29ELEVBZ3RDcEQ7RUFBQTtJQUFBLGVBNXBDa0IsRUF5dUNkO0lBN0VKO01BQUEsWUEzaENnQixFQTJoQ2hCO01BOXNDeUI7UUFzeENyQixZQW5tQ1ksRUFyTEg7RUFndENiO0lBa0ZJLHdDQTdtQ1ksRUQwZ0NiOztBQ2lCSDtFQUNFLHFDQUFpRDtFQUNqRCxlQTlwQ2dCLEVBNHBDbEI7RUFBQTtJQUFBLFlBM2hDZ0IsRUEyaENoQjtJQTlzQ3lCO01BOHNDekIsWUEzaENnQixFQXJMSDtFQWd0Q2I7SUFBQSxlQTVwQ2tCLEVBc3JDZDtJQXh1Q3FCO01BOHNDakIsWUEzaENRLEVBckxIO0lBZ3RDYjtNQUFRLDBCQXdCaUIsRUF4QnpCO0VBQUE7Ozs7SUFBQSxZQTNoQ2dCLEVBa2tDWjtFQXZDSjtJQTZDSSxlQXpzQ2M7SUE0cENsQix3Q0EzaENnQixFQTRrQ1o7RUFqREo7SUFBQSw0UUFodENvRCxFQWd0Q3BEO0VBQUE7SUFBQSxlQTVwQ2tCLEVBeXVDZDtJQTdFSjtNQUFBLFlBM2hDZ0IsRUEyaENoQjtNQTlzQ3lCO1FBc3hDckIsWUFubUNZLEVBckxIO0VBZ3RDYjtJQWtGSSx3Q0E3bUNZLEVEMGdDYjs7QUNpQkg7RUFDRSxrQ0FBaUQ7RUFDakQsZUE5cENnQixFQTRwQ2xCO0VBQUE7SUFBQSxlQTFwQ29CLEVBMHBDcEI7SUE5c0N5QjtNQThzQ3pCLGVBMXBDb0IsRUF0RFA7RUFndENiO0lBQUEsZUE1cENrQixFQXNyQ2Q7SUF4dUNxQjtNQThzQ2pCLGVBMXBDWSxFQXREUDtJQWd0Q2I7TUFBUSwwQkF3QmlCLEVBeEJ6QjtFQUFBOzs7O0lBQUEsZUExcENvQixFQWlzQ2hCO0VBdkNKO0lBNkNJLGVBenNDYztJQTRwQ2xCLHNDQTFwQ29CLEVBMnNDaEI7RUFqREo7SUFBQSx5UUtoMUNjLEVMZzFDZDtFQUFBO0lBQUEsZUE1cENrQixFQXl1Q2Q7SUE3RUo7TUFBQSxlQTFwQ29CLEVBMHBDcEI7TUE5c0N5QjtRQXN4Q3JCLGVBbHVDZ0IsRUF0RFA7RUFndENiO0lBa0ZJLHNDQTV1Q2dCLEVEeW9DakI7O0FDaUJIO0VBQ0UscUNBQWlEO0VBQ2pELGVBOXBDZ0IsRUE0cENsQjtFQUFBO0lBQUEsZUExcENvQixFQTBwQ3BCO0lBOXNDeUI7TUE4c0N6QixlQTFwQ29CLEVBdERQO0VBZ3RDYjtJQUFBLGVBNXBDa0IsRUFzckNkO0lBeHVDcUI7TUE4c0NqQixlQTFwQ1ksRUF0RFA7SUFndENiO01BQVEsMEJBd0JpQixFQXhCekI7RUFBQTs7OztJQUFBLGVBMXBDb0IsRUFpc0NoQjtFQXZDSjtJQTZDSSxlQXpzQ2M7SUE0cENsQiwwQ0ExcENvQixFQTJzQ2hCO0VBakRKO0lBQUEseVFLaDFDYyxFTGcxQ2Q7RUFBQTtJQUFBLGVBNXBDa0IsRUF5dUNkO0lBN0VKO01BQUEsZUExcENvQixFQTBwQ3BCO01BOXNDeUI7UUFzeENyQixlQWx1Q2dCLEVBdERQO0VBZ3RDYjtJQWtGSSwwQ0E1dUNnQixFRHlvQ2pCOztBQ2lCSDtFQUNFLHFDQUFpRDtFQUNqRCxlQTlwQ2dCLEVBNHBDbEI7RUFBQTtJQUFBLGVBMXBDb0IsRUEwcENwQjtJQTlzQ3lCO01BOHNDekIsZUExcENvQixFQXREUDtFQWd0Q2I7SUFBQSxlQTVwQ2tCLEVBc3JDZDtJQXh1Q3FCO01BOHNDakIsZUExcENZLEVBdERQO0lBZ3RDYjtNQUFRLDBCQXdCaUIsRUF4QnpCO0VBQUE7Ozs7SUFBQSxlQTFwQ29CLEVBaXNDaEI7RUF2Q0o7SUE2Q0ksZUF6c0NjO0lBNHBDbEIsMENBMXBDb0IsRUEyc0NoQjtFQWpESjtJQUFBLHlRS2gxQ2MsRUxnMUNkO0VBQUE7SUFBQSxlQTVwQ2tCLEVBeXVDZDtJQTdFSjtNQUFBLGVBMXBDb0IsRUEwcENwQjtNQTlzQ3lCO1FBc3hDckIsZUFsdUNnQixFQXREUDtFQWd0Q2I7SUFrRkksMENBNXVDZ0IsRUR5b0NqQjs7QUFpQkg7RUNBQSxxQ0FrQnlCO0VBbEJ6QixlQTVwQ2tCLEVBNHBDbEI7RURBQTs7O0lDMEJJLGVBdHJDYyxFQTRwQ2xCO0lBOXNDeUI7Ozs7O01BOHNDekIsWUEzaENnQixFQXJMSDtJRGd0Q2I7OztNQ3VDSSxZQWxrQ1ksRUEyaENoQjtFREFBOzs7SUNBQSwwQkFvRGtCLEVBQ2Q7RURyREo7O0lDMkRJLFlBdGxDWSxFQTJoQ2hCO0VEQUE7SUNBQSwwQkE1cENrQixFQWd1Q2Q7RURwRUo7SUNBQSwwQkE1cENrQixFQTRwQ2xCO0VEQUE7O0lDa0ZJLG9CQTl1Q2MsRURvc0NmO0VBeENIOztJQ0FBLHdCQUlFO0lBSkYsZUE1cENrQixFQTRwQ2xCO0VEQUE7SUNBQSxZQTNoQ2dCLEVBMmhDaEI7RURBQTtJQ1VNLGVBdHFDWSxFQTRwQ2xCO0VEQUE7OztJQ0FBLG1EQW1CbUMsRUFuQm5DO0VEQUE7O0lDMEJJLDRDQXJqQ1ksRUEyaENoQjtFREFBO0lDa0NJLDBCQTlyQ2MsRUE0cENsQjtFREFBO0lDQUEsdUJBM2hDZ0IsRUEyaENoQjtFREFBOztJQ2lESSxzQ0E3c0NjO1lBNnNDZCw4QkE3c0NjLEVBNHBDbEI7RURBQTs7SUNBQSxxREEwRDhELEVBQzFEOztBRDNESjtFQ0FBLHFDQWtCeUI7RUFsQnpCLGVBNXBDa0IsRUE0cENsQjtFREFBOzs7SUMwQkksZUF0ckNjLEVBNHBDbEI7SUE5c0N5Qjs7Ozs7TUE4c0N6QixZQTNoQ2dCLEVBckxIO0lEZ3RDYjs7O01DdUNJLFlBbGtDWSxFQTJoQ2hCO0VEQUE7OztJQ0FBLDBCQW9Ea0IsRUFDZDtFRHJESjs7SUMyREksWUF0bENZLEVBMmhDaEI7RURBQTtJQ0FBLDBCQTVwQ2tCLEVBZ3VDZDtFRHBFSjtJQ0FBLDBCQTVwQ2tCLEVBNHBDbEI7RURBQTs7SUNrRkksb0JBOXVDYyxFRG9zQ2Y7RUF4Q0g7O0lDQUEsd0JBSUU7SUFKRixlQTVwQ2tCLEVBNHBDbEI7RURBQTtJQ0FBLFlBM2hDZ0IsRUEyaENoQjtFREFBO0lDVU0sZUF0cUNZLEVBNHBDbEI7RURBQTs7O0lDQUEsbURBbUJtQyxFQW5CbkM7RURBQTs7SUMwQkksNENBcmpDWSxFQTJoQ2hCO0VEQUE7SUNrQ0ksMEJBOXJDYyxFQTRwQ2xCO0VEQUE7SUNBQSx1QkEzaENnQixFQTJoQ2hCO0VEQUE7O0lDaURJLHNDQTdzQ2M7WUE2c0NkLDhCQTdzQ2MsRUE0cENsQjtFREFBOztJQ0FBLHFEQTBEOEQsRUFDMUQ7O0FEM0RKO0VDQUEscUNBa0J5QjtFQWxCekIsZUE1cENrQixFQTRwQ2xCO0VEQUE7OztJQzBCSSxlQXRyQ2MsRUE0cENsQjtJQTlzQ3lCOzs7OztNQThzQ3pCLFlBM2hDZ0IsRUFyTEg7SURndENiOzs7TUN1Q0ksWUFsa0NZLEVBMmhDaEI7RURBQTs7O0lDQUEsMEJBb0RrQixFQUNkO0VEckRKOztJQzJESSxZQXRsQ1ksRUEyaENoQjtFREFBO0lDQUEsMEJBNXBDa0IsRUFndUNkO0VEcEVKO0lDQUEsMEJBNXBDa0IsRUE0cENsQjtFREFBOztJQ2tGSSxvQkE5dUNjLEVEb3NDZjtFQXhDSDs7SUNBQSx3QkFJRTtJQUpGLGVBNXBDa0IsRUE0cENsQjtFREFBO0lDQUEsWUEzaENnQixFQTJoQ2hCO0VEQUE7SUNVTSxlQXRxQ1ksRUE0cENsQjtFREFBOzs7SUNBQSxtREFtQm1DLEVBbkJuQztFREFBOztJQzBCSSw0Q0FyakNZLEVBMmhDaEI7RURBQTtJQ2tDSSwwQkE5ckNjLEVBNHBDbEI7RURBQTtJQ0FBLHVCQTNoQ2dCLEVBMmhDaEI7RURBQTs7SUNpREksc0NBN3NDYztZQTZzQ2QsOEJBN3NDYyxFQTRwQ2xCO0VEQUE7O0lDQUEscURBMEQ4RCxFQUMxRDs7QUQzREo7RUNBQSxxQ0FrQnlCO0VBbEJ6QixlQTVwQ2tCLEVBNHBDbEI7RURBQTs7O0lDMEJJLGVBdHJDYyxFQTRwQ2xCO0lBOXNDeUI7Ozs7O01BOHNDekIsZUE1cENrQixFQXBETDtJRGd0Q2I7OztNQ3VDSSxlQW5zQ2MsRUE0cENsQjtFREFBOzs7SUNBQSwwQkFvRGtCLEVBQ2Q7RURyREo7O0lDMkRJLGVBdnRDYyxFQTRwQ2xCO0VEQUE7SUNBQSwwQkE1cENrQixFQWd1Q2Q7RURwRUo7SUNBQSwwQkE1cENrQixFQTRwQ2xCO0VEQUE7O0lDa0ZJLG9CQTl1Q2MsRURvc0NmO0VBeENIOztJQ0FBLHdCQUlFO0lBSkYsZUE1cENrQixFQTRwQ2xCO0VEQUE7SUNBQSxlQTVwQ2tCLEVBNHBDbEI7RURBQTtJQ1VNLGVBdHFDWSxFQTRwQ2xCO0VEQUE7OztJQ0FBLHNEQW1CbUMsRUFuQm5DO0VEQUE7O0lDMEJJLCtDQXRyQ2MsRUE0cENsQjtFREFBO0lDa0NJLDBCQTlyQ2MsRUE0cENsQjtFREFBO0lDQUEsMEJBNXBDa0IsRUE0cENsQjtFREFBOztJQ2lESSxzQ0E3c0NjO1lBNnNDZCw4QkE3c0NjLEVBNHBDbEI7RURBQTs7SUNBQSxtREEwRDhELEVBQzFEOztBRDNESjtFQ0FBLHFDQWtCeUI7RUFsQnpCLGVBNXBDa0IsRUE0cENsQjtFREFBOzs7SUMwQkksZUF0ckNjLEVBNHBDbEI7SUE5c0N5Qjs7Ozs7TUE4c0N6QixZQTNoQ2dCLEVBckxIO0lEZ3RDYjs7O01DdUNJLFlBbGtDWSxFQTJoQ2hCO0VEQUE7OztJQ0FBLDBCQW9Ea0IsRUFDZDtFRHJESjs7SUMyREksWUF0bENZLEVBMmhDaEI7RURBQTtJQ0FBLDBCQTVwQ2tCLEVBZ3VDZDtFRHBFSjtJQ0FBLDBCQTVwQ2tCLEVBNHBDbEI7RURBQTs7SUNrRkksb0JBOXVDYyxFRG9zQ2Y7RUF4Q0g7O0lDQUEsd0JBSUU7SUFKRixlQTVwQ2tCLEVBNHBDbEI7RURBQTtJQ0FBLFlBM2hDZ0IsRUEyaENoQjtFREFBO0lDVU0sZUF0cUNZLEVBNHBDbEI7RURBQTs7O0lDQUEsbURBbUJtQyxFQW5CbkM7RURBQTs7SUMwQkksNENBcmpDWSxFQTJoQ2hCO0VEQUE7SUNrQ0ksMEJBOXJDYyxFQTRwQ2xCO0VEQUE7SUNBQSx1QkEzaENnQixFQTJoQ2hCO0VEQUE7O0lDaURJLHNDQTdzQ2M7WUE2c0NkLDhCQTdzQ2MsRUE0cENsQjtFREFBOztJQ0FBLHFEQTBEOEQsRUFDMUQ7O0FEM0RKO0VDQUEscUNBa0J5QjtFQWxCekIsZUE1cENrQixFQTRwQ2xCO0VEQUE7OztJQzBCSSxlQXRyQ2MsRUE0cENsQjtJQTlzQ3lCOzs7OztNQThzQ3pCLFlBM2hDZ0IsRUFyTEg7SURndENiOzs7TUN1Q0ksWUFsa0NZLEVBMmhDaEI7RURBQTs7O0lDQUEsMEJBb0RrQixFQUNkO0VEckRKOztJQzJESSxZQXRsQ1ksRUEyaENoQjtFREFBO0lDQUEsMEJBNXBDa0IsRUFndUNkO0VEcEVKO0lDQUEsMEJBNXBDa0IsRUE0cENsQjtFREFBOztJQ2tGSSxvQkE5dUNjLEVEb3NDZjtFQXhDSDs7SUNBQSx3QkFJRTtJQUpGLGVBNXBDa0IsRUE0cENsQjtFREFBO0lDQUEsWUEzaENnQixFQTJoQ2hCO0VEQUE7SUNVTSxlQXRxQ1ksRUE0cENsQjtFREFBOzs7SUNBQSxtREFtQm1DLEVBbkJuQztFREFBOztJQzBCSSw0Q0FyakNZLEVBMmhDaEI7RURBQTtJQ2tDSSwwQkE5ckNjLEVBNHBDbEI7RURBQTtJQ0FBLHVCQTNoQ2dCLEVBMmhDaEI7RURBQTs7SUNpREksc0NBN3NDYztZQTZzQ2QsOEJBN3NDYyxFQTRwQ2xCO0VEQUE7O0lDQUEscURBMEQ4RCxFQUMxRDs7QUQzREo7RUNBQSxrQ0FrQnlCO0VBbEJ6QixlQTVwQ2tCLEVBNHBDbEI7RURBQTs7O0lDMEJJLGVBdHJDYyxFQTRwQ2xCO0lBOXNDeUI7Ozs7O01BOHNDekIsZUExcENvQixFQXREUDtJRGd0Q2I7OztNQ3VDSSxlQWpzQ2dCLEVBMHBDcEI7RURBQTs7O0lDQUEsMEJBb0RrQixFQUNkO0VEckRKOztJQzJESSxlQXJ0Q2dCLEVBMHBDcEI7RURBQTtJQ0FBLHVCQTdoQ2EsRUFpbUNUO0VEcEVKO0lDQUEsMEJBNXBDa0IsRUE0cENsQjtFREFBOztJQ2tGSSxpQkEvbUNTLEVEcWtDVjtFQXhDSDs7SUNBQSx3QkFJRTtJQUpGLGVBNXBDa0IsRUE0cENsQjtFREFBO0lDQUEsZUExcENvQixFQTBwQ3BCO0VEQUE7SUNVTSxlQXRxQ1ksRUE0cENsQjtFREFBOzs7SUNBQSxpREFtQm1DLEVBbkJuQztFREFBOztJQzBCSSwwQ0FwckNnQixFQTBwQ3BCO0VEQUE7SUNrQ0ksMEJBOXJDYyxFQTRwQ2xCO0VEQUE7SUNBQSwwQkExcENvQixFQTBwQ3BCO0VEQUE7O0lDaURJLG1DQTlrQ1M7WUE4a0NULDJCQTlrQ1MsRUE2aENiO0VEQUE7O0lDQUEsNkNBMEQ4RCxFQUMxRDs7QUQzREo7RUNBQSxxQ0FrQnlCO0VBbEJ6QixlQTVwQ2tCLEVBNHBDbEI7RURBQTs7O0lDMEJJLGVBdHJDYyxFQTRwQ2xCO0lBOXNDeUI7Ozs7O01BOHNDekIsZUExcENvQixFQXREUDtJRGd0Q2I7OztNQ3VDSSxlQWpzQ2dCLEVBMHBDcEI7RURBQTs7O0lDQUEsMEJBb0RrQixFQUNkO0VEckRKOztJQzJESSxlQXJ0Q2dCLEVBMHBDcEI7RURBQTtJQ0FBLDBCQTVwQ2tCLEVBZ3VDZDtFRHBFSjtJQ0FBLDBCQTVwQ2tCLEVBNHBDbEI7RURBQTs7SUNrRkksb0JBOXVDYyxFRG9zQ2Y7RUF4Q0g7O0lDQUEsd0JBSUU7SUFKRixlQTVwQ2tCLEVBNHBDbEI7RURBQTtJQ0FBLGVBMXBDb0IsRUEwcENwQjtFREFBO0lDVU0sZUF0cUNZLEVBNHBDbEI7RURBQTs7O0lDQUEscURBbUJtQyxFQW5CbkM7RURBQTs7SUMwQkksOENBcHJDZ0IsRUEwcENwQjtFREFBO0lDa0NJLDBCQTlyQ2MsRUE0cENsQjtFREFBO0lDQUEsMEJBMXBDb0IsRUEwcENwQjtFREFBOztJQ2lESSxzQ0E3c0NjO1lBNnNDZCw4QkE3c0NjLEVBNHBDbEI7RURBQTs7SUNBQSxrREEwRDhELEVBQzFEOztBRDNESjtFQ0FBLHFDQWtCeUI7RUFsQnpCLGVBNXBDa0IsRUE0cENsQjtFREFBOzs7SUMwQkksZUF0ckNjLEVBNHBDbEI7SUE5c0N5Qjs7Ozs7TUE4c0N6QixlQTFwQ29CLEVBdERQO0lEZ3RDYjs7O01DdUNJLGVBanNDZ0IsRUEwcENwQjtFREFBOzs7SUNBQSwwQkFvRGtCLEVBQ2Q7RURyREo7O0lDMkRJLGVBcnRDZ0IsRUEwcENwQjtFREFBO0lDQUEsMEJBNXBDa0IsRUFndUNkO0VEcEVKO0lDQUEsMEJBNXBDa0IsRUE0cENsQjtFREFBOztJQ2tGSSxvQkE5dUNjLEVEb3NDZjtFQXhDSDs7SUNBQSx3QkFJRTtJQUpGLGVBNXBDa0IsRUE0cENsQjtFREFBO0lDQUEsZUExcENvQixFQTBwQ3BCO0VEQUE7SUNVTSxlQXRxQ1ksRUE0cENsQjtFREFBOzs7SUNBQSxxREFtQm1DLEVBbkJuQztFREFBOztJQzBCSSw4Q0FwckNnQixFQTBwQ3BCO0VEQUE7SUNrQ0ksMEJBOXJDYyxFQTRwQ2xCO0VEQUE7SUNBQSwwQkExcENvQixFQTBwQ3BCO0VEQUE7O0lDaURJLHNDQTdzQ2M7WUE2c0NkLDhCQTdzQ2MsRUE0cENsQjtFREFBOztJQ0FBLGlEQTBEOEQsRUFDMUQ7O0FEa0NKO0VDN0ZBLHFDQWdGYztFQWhGZCxlQTVwQ2tCLEVEdXhDakI7RUE5QkQ7SUM3RkEsZUE1cENrQixFQTRwQ2xCO0lBOXNDeUI7TUE4c0N6QixZQTNoQ2dCLEVBckxIO0lENnlDYjtNRTc2Q0EsMEJEZzFDUSxFQUFSO0VENkZBO0lDbkZNLFlBcmlDVSxFQTJoQ2hCO0VENkZBOzs7O0lDN0ZBLFlBM2hDZ0IsRUFnakNaO0VEd0VKO0lDbkVJLHdDQXJqQ1ksRUEyaENoQjs7QUQ2RkE7RUM3RkEscUNBZ0ZjO0VBaEZkLGVBNXBDa0IsRUR1eENqQjtFQTlCRDtJQzdGQSxlQTVwQ2tCLEVBNHBDbEI7SUE5c0N5QjtNQThzQ3pCLFlBM2hDZ0IsRUFyTEg7SUQ2eUNiO01FNzZDQSwwQkRnMUNRLEVBQVI7RUQ2RkE7SUNuRk0sWUFyaUNVLEVBMmhDaEI7RUQ2RkE7Ozs7SUM3RkEsWUEzaENnQixFQWdqQ1o7RUR3RUo7SUNuRUksd0NBcmpDWSxFQTJoQ2hCOztBRDZGQTtFQzdGQSxxQ0FnRmM7RUFoRmQsZUE1cENrQixFRHV4Q2pCO0VBOUJEO0lDN0ZBLGVBNXBDa0IsRUE0cENsQjtJQTlzQ3lCO01BOHNDekIsWUEzaENnQixFQXJMSDtJRDZ5Q2I7TUU3NkNBLDBCRGcxQ1EsRUFBUjtFRDZGQTtJQ25GTSxZQXJpQ1UsRUEyaENoQjtFRDZGQTs7OztJQzdGQSxZQTNoQ2dCLEVBZ2pDWjtFRHdFSjtJQ25FSSx3Q0FyakNZLEVBMmhDaEI7O0FENkZBO0VDN0ZBLHFDQWdGYztFQWhGZCxlQTVwQ2tCLEVEdXhDakI7RUE5QkQ7SUM3RkEsZUE1cENrQixFQTRwQ2xCO0lBOXNDeUI7TUE4c0N6QixlQTVwQ2tCLEVBcERMO0lENnlDYjtNRTc2Q0EsMEJEZzFDUSxFQUFSO0VENkZBO0lDbkZNLGVBdHFDWSxFQTRwQ2xCO0VENkZBOzs7O0lDN0ZBLGVBNXBDa0IsRUFpckNkO0VEd0VKO0lDbkVJLDJDQXRyQ2MsRUE0cENsQjs7QUQ2RkE7RUM3RkEscUNBZ0ZjO0VBaEZkLGVBNXBDa0IsRUR1eENqQjtFQTlCRDtJQzdGQSxlQTVwQ2tCLEVBNHBDbEI7SUE5c0N5QjtNQThzQ3pCLFlBM2hDZ0IsRUFyTEg7SUQ2eUNiO01FNzZDQSwwQkRnMUNRLEVBQVI7RUQ2RkE7SUNuRk0sWUFyaUNVLEVBMmhDaEI7RUQ2RkE7Ozs7SUM3RkEsWUEzaENnQixFQWdqQ1o7RUR3RUo7SUNuRUksd0NBcmpDWSxFQTJoQ2hCOztBRDZGQTtFQzdGQSxxQ0FnRmM7RUFoRmQsZUE1cENrQixFRHV4Q2pCO0VBOUJEO0lDN0ZBLGVBNXBDa0IsRUE0cENsQjtJQTlzQ3lCO01BOHNDekIsWUEzaENnQixFQXJMSDtJRDZ5Q2I7TUU3NkNBLDBCRGcxQ1EsRUFBUjtFRDZGQTtJQ25GTSxZQXJpQ1UsRUEyaENoQjtFRDZGQTs7OztJQzdGQSxZQTNoQ2dCLEVBZ2pDWjtFRHdFSjtJQ25FSSx3Q0FyakNZLEVBMmhDaEI7O0FENkZBO0VDN0ZBLGtDQWdGYztFQWhGZCxlQTVwQ2tCLEVEdXhDakI7RUE5QkQ7SUM3RkEsZUE1cENrQixFQTRwQ2xCO0lBOXNDeUI7TUE4c0N6QixlQTFwQ29CLEVBdERQO0lENnlDYjtNRTc2Q0EsMEJEZzFDUSxFQUFSO0VENkZBO0lDbkZNLGVBcHFDYyxFQTBwQ3BCO0VENkZBOzs7O0lDN0ZBLGVBMXBDb0IsRUErcUNoQjtFRHdFSjtJQ25FSSxzQ0FwckNnQixFQTBwQ3BCOztBRDZGQTtFQzdGQSxxQ0FnRmM7RUFoRmQsZUE1cENrQixFRHV4Q2pCO0VBOUJEO0lDN0ZBLGVBNXBDa0IsRUE0cENsQjtJQTlzQ3lCO01BOHNDekIsZUExcENvQixFQXREUDtJRDZ5Q2I7TUU3NkNBLDBCRGcxQ1EsRUFBUjtFRDZGQTtJQ25GTSxlQXBxQ2MsRUEwcENwQjtFRDZGQTs7OztJQzdGQSxlQTFwQ29CLEVBK3FDaEI7RUR3RUo7SUNuRUksMENBcHJDZ0IsRUEwcENwQjs7QUQ2RkE7RUM3RkEscUNBZ0ZjO0VBaEZkLGVBNXBDa0IsRUR1eENqQjtFQTlCRDtJQzdGQSxlQTVwQ2tCLEVBNHBDbEI7SUE5c0N5QjtNQThzQ3pCLGVBMXBDb0IsRUF0RFA7SUQ2eUNiO01FNzZDQSwwQkRnMUNRLEVBQVI7RUQ2RkE7SUNuRk0sZUFwcUNjLEVBMHBDcEI7RUQ2RkE7Ozs7SUM3RkEsZUExcENvQixFQStxQ2hCO0VEd0VKO0lDbkVJLDBDQXByQ2dCLEVBMHBDcEI7O0FEMGlCRiw4ajVTQUE4ajVTIiwiZmlsZSI6InZlbmRvci9jc3MvcnRsL2NvbG9ycy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBNaXhpbnNcbi8vXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUlRML0xUUlxuXG5AbWl4aW4gbHRyLW9ubHkoKSB7XG4gIEBpZiAkcnRsLXN1cHBvcnQge1xuICAgIGh0bWw6bm90KFtkaXI9cnRsXSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcnRsLW9ubHkoKSB7XG4gIEBpZiAkcnRsLXN1cHBvcnQge1xuICAgIFtkaXI9cnRsXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGx0ci1zdHlsZSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgaHRtbDpub3QoW2Rpcj1ydGxdKSAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHJ0bC1zdHlsZSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgW2Rpcj1ydGxdICYge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogS2V5ZnJhbWVzXG5cbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcbiAgQC13ZWJraXQta2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ2FyZXRzXG5cbkBtaXhpbiBjYXJldC1kb3duIHtcbiAgbWFyZ2luLXRvcDogLTEgKiAoJGNhcmV0LXdpZHRoIC8gMS41KTtcbiAgd2lkdGg6ICRjYXJldC13aWR0aDtcbiAgaGVpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBtYXJnaW4tdG9wOiAtMDtcbiAgd2lkdGg6ICRjYXJldC13aWR0aDtcbiAgaGVpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0IHtcbiAgbWFyZ2luLXRvcDogLTEgKiAoJGNhcmV0LXdpZHRoIC8gMik7XG4gIHdpZHRoOiAkY2FyZXQtd2lkdGg7XG4gIGhlaWdodDogJGNhcmV0LXdpZHRoO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0IHtcbiAgbWFyZ2luLXRvcDogLTEgKiAoJGNhcmV0LXdpZHRoIC8gMik7XG4gIHdpZHRoOiAkY2FyZXQtd2lkdGg7XG4gIGhlaWdodDogJGNhcmV0LXdpZHRoO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUmVzcG9uc2l6ZSBsb29wc1xuXG5AbWl4aW4gcmVzcG9uc2l2ZS1sb29wLWJlZm9yZSgkcGFyZW50LCAkc3RhcnQtYnJlYWtwb2ludDogc20pIHtcbiAgJGN1ci1icmVha3BvaW50OiAkc3RhcnQtYnJlYWtwb2ludDtcblxuICBAd2hpbGUgJGN1ci1icmVha3BvaW50IHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGN1ci1icmVha3BvaW50KTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAoYnJlYWtwb2ludC1taW4oJGN1ci1icmVha3BvaW50KSAtIDEpKSB7XG4gICAgICAjeyRwYXJlbnR9I3skaW5maXh9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGN1ci1icmVha3BvaW50OiBicmVha3BvaW50LW5leHQoJGN1ci1icmVha3BvaW50KTtcbiAgfVxufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1sb29wLWFmdGVyKCRwYXJlbnQsICRzdGFydC1icmVha3BvaW50OiBzbSkge1xuICAkY3VyLWJyZWFrcG9pbnQ6ICRzdGFydC1icmVha3BvaW50O1xuXG4gIEB3aGlsZSAkY3VyLWJyZWFrcG9pbnQge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkY3VyLWJyZWFrcG9pbnQpO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IGJyZWFrcG9pbnQtbWluKCRjdXItYnJlYWtwb2ludCkpIHtcbiAgICAgICN7JHBhcmVudH0jeyRpbmZpeH0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkY3VyLWJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQtbmV4dCgkY3VyLWJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ29sb3JzXG5cbi8vIENvbnRyYXN0XG5AbWl4aW4gY29sb3IteWlxKCRjb2xvcikge1xuICBjb2xvcjogeWlxKCRjb2xvcik7XG59XG5cbkBtaXhpbiBiZy1jb2xvci12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJHJ0aC1jb2xvcjogIzAwMCkge1xuICAjeyRwYXJlbnR9IHsgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC45NSksICRiYWNrZ3JvdW5kOiAkcnRoLWNvbG9yKSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkcnRoLWNvbG9yOiAjMDAwKSB7XG4gIEBpbmNsdWRlIGJnLWNvbG9yLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKTtcbiAgQGluY2x1ZGUgYmctY29sb3ItdmFyaWFudChcIiN7JHBhcmVudH0tZGFya1wiLCByZ2JhLXRvLWhleChyZ2JhKCRjb2xvciwgLjkpLCAkYmFja2dyb3VuZDogJHJ0aC1jb2xvcikpO1xuICBAaW5jbHVkZSBiZy1jb2xvci12YXJpYW50KFwiI3skcGFyZW50fS1kYXJrZXJcIiwgcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC44NSksICRiYWNrZ3JvdW5kOiAkcnRoLWNvbG9yKSk7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQ6IG51bGwsICRib3JkZXI6IG51bGwsICRhY3RpdmUtYmFja2dyb3VuZDogbnVsbCwgJGFjdGl2ZS1ib3JkZXI6IG51bGwpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWJ1dHRvbi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwsICRib3JkZXI6IG51bGwpIHtcbiAgJGJ0bi1jb2xvcnM6IGdldC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kLCBpZigkYm9yZGVyLCAkYm9yZGVyLCAkYmFja2dyb3VuZCkpO1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1ob3Zlcik7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBtYXAtZ2V0KCRidG4tY29sb3JzLCBzaGFkb3cpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcikgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fSAuYmFkZ2Uge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBjb2xvcjogcmdiYS10by1oZXgoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgI3skcGFyZW50fTphY3RpdmUsXG4gICN7JHBhcmVudH0uYWN0aXZlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctYWN0aXZlKTtcblxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gQnV0dG9uIGdyb3Vwc1xuICAuYnRuLWdyb3VwICN7JHBhcmVudH0sXG4gIC5pbnB1dC1ncm91cC1wcmVwZW5kICN7JHBhcmVudH0sXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1hY3RpdmUpO1xuICAgIGJvcmRlci1sZWZ0OiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1hY3RpdmUpO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWJ1dHRvbi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwsICRtZC1jb2xvcjogJGJhY2tncm91bmQpIHtcbiAgJGJ0bi1jb2xvcnM6IGdldC1tYXRlcmlhbC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kKTtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1ib3gtc2hhZG93O1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1ob3Zlcik7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9IC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGNvbG9yOiByZ2JhLXRvLWhleCgkYmFja2dyb3VuZCk7XG4gIH1cblxuICAjeyRwYXJlbnR9IC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAjZmZmLCByZ2JhKCRjb2xvciwgLjMpLCByZ2JhKCRjb2xvciwgLjIpKSAhaW1wb3J0YW50O1xuICB9XG5cbiAgI3skcGFyZW50fTphY3RpdmUsXG4gICN7JHBhcmVudH0uYWN0aXZlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1hY3RpdmUpO1xuICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBGbGF0IGJ1dHRvbnNcbiAgI3skcGFyZW50fS5tZC1idG4tZmxhdCB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJG1kLWNvbG9yICFpbXBvcnRhbnQ7XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkbWQtY29sb3IsIC4xKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC53YXZlcy1yaXBwbGUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkbWQtY29sb3IsIC4zKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0ubWQtYnRuLWZsYXQ6YWN0aXZlLFxuICAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0LmFjdGl2ZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkbWQtY29sb3IsIC4xNSkgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIERpc2FibGVkXG5cbiAgI3skcGFyZW50fS5kaXNhYmxlZCxcbiAgI3skcGFyZW50fTpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAkbWF0ZXJpYWwtY29tcG9uZW50LXNoYWRvdyAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuXG4gICN7JHBhcmVudH0ubWQtYnRuLWZsYXQuZGlzYWJsZWQsXG4gICN7JHBhcmVudH0ubWQtYnRuLWZsYXQ6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBPdXRsaW5lIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yOiBudWxsLCAkY29sb3ItaG92ZXI6IG51bGwsICRob3Zlci1jb2xvcjogbnVsbCkge31cblxuQG1peGluIGFwcHdvcmstYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRob3Zlci1jb2xvcjogbnVsbCkge1xuICAkYnRuLWNvbG9yczogZ2V0LWJ0bi1jb2xvcnMoJGNvbG9yLCAkY29sb3IpO1xuICAkY29sb3ItaG92ZXI6IGlmKCRob3Zlci1jb2xvciwgJGhvdmVyLWNvbG9yLCB5aXEoJGNvbG9yKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkYnRuLWNvbG9ycywgYm9yZGVyKTtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG5cbiAgICAgIC5iYWRnZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgICAgY29sb3I6IGlmKGFscGhhKCRjb2xvcikgPT0gMSwgJGNvbG9yLCB5aXEoJGNvbG9yLWhvdmVyKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIHNoYWRvdyk7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0gLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAjeyRwYXJlbnR9OmFjdGl2ZSxcbiAgI3skcGFyZW50fS5hY3RpdmUsXG4gIC5zaG93ID4gI3skcGFyZW50fS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkYnRuLWNvbG9ycywgYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1ob3Zlcik7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcblxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJhZGdlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGNvbG9yOiBpZihhbHBoYSgkY29sb3IpID09IDEsICRjb2xvciwgeWlxKCRjb2xvci1ob3ZlcikpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1idXR0b24tb3V0bGluZS12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGhvdmVyLWNvbG9yOiBudWxsKSB7XG4gICRidG4tY29sb3JzOiBnZXQtbWF0ZXJpYWwtYnRuLWNvbG9ycygkY29sb3IpO1xuICAkY29sb3ItaG92ZXI6IGlmKCRob3Zlci1jb2xvciwgJGhvdmVyLWNvbG9yLCB5aXEoJGNvbG9yKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvciBpbnNldDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcblxuICAgICAgLmJhZGdlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgICBjb2xvcjogaWYoYWxwaGEoJGNvbG9yKSA9PSAxLCAkY29sb3IsIHlpcSgkY29sb3ItaG92ZXIpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkY29sb3IgaW5zZXQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9IC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgI3skcGFyZW50fSAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kOiBpZigkY29sb3ItaG92ZXIgPT0gI2ZmZiwgcmdiYSgkY29sb3ItaG92ZXIsIC4zKSwgcmdiYSgkY29sb3ItaG92ZXIsIC4yKSkgIWltcG9ydGFudDtcbiAgfVxuXG4gICN7JHBhcmVudH06YWN0aXZlLFxuICAjeyRwYXJlbnR9LmFjdGl2ZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctaG92ZXIpO1xuICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3c7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcblxuICAgIC5iYWRnZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBjb2xvcjogaWYoYWxwaGEoJGNvbG9yKSA9PSAxLCAkY29sb3IsIHlpcSgkY29sb3ItaG92ZXIpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCYWRnZXNcblxuQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7fVxuXG5AbWl4aW4gYXBwd29yay1iYWRnZS12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmcpKTtcbiAgfVxuXG4gICN7JHBhcmVudH1baHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKGFscGhhKCRiZykgPT0gMSwgcmdiYS10by1oZXgocmdiYSgkYmcsIC45NSksICMwMDApLCByZ2JhKCRiZywgYWxwaGEoJGJnKSArIC4wMykpO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJnKSk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmJ0biAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmcgIWltcG9ydGFudDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmcpKSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWJhZGdlLW91dGxpbmUtdmFyaWFudCgkcGFyZW50LCAkYmcsICRjb2xvcjogJGJnKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkYmcgaW5zZXQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICN7JHBhcmVudH1baHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmJ0biAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkYmcgaW5zZXQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBEcm9wZG93bnNcblxuQG1peGluIGFwcHdvcmstZHJvcGRvd24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCkuYWN0aXZlLFxuICAjeyRwYXJlbnR9IC5kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgfVxuXG4gICN7JHBhcmVudH0uZHJvcGRvd24tbWVudSA+IGxpOm5vdCguZGlzYWJsZWQpID4gYTpub3QoLmRyb3Bkb3duLWl0ZW0pOmFjdGl2ZSxcbiAgI3skcGFyZW50fS5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlOm5vdCguZGlzYWJsZWQpID4gYTpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWRyb3Bkb3duLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1kcm9wZG93bi12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtZHJvcGRvd24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICB9XG5cbiAgI3skcGFyZW50fS5kcm9wZG93bi1tZW51ID4gbGkuYWN0aXZlOm5vdCguZGlzYWJsZWQpID4gYTpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWRyb3Bkb3duLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1kcm9wZG93bi12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZzXG5cbkBtaXhpbiBhcHB3b3JrLW5hdi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCkge1xuICAgPiAubmF2IC5uYXYtbGluayxcbiAgJi5uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbmF2LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkcGlsbHMtc2VsZWN0b3I6IGlmKCRwYXJlbnQgPT0gJycsICcubmF2LXBpbGxzJywgJyN7JHBhcmVudH0ubmF2LXBpbGxzLCAjeyRwYXJlbnR9ID4gLm5hdi1waWxscycpO1xuXG4gICN7JHBpbGxzLXNlbGVjdG9yfSAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fS50YWJzLWFsdC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuICAjeyRwYXJlbnR9LnRhYnMtYWx0ID4gLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgLTJweCAwICRiYWNrZ3JvdW5kIGluc2V0O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1uYXYtdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW5hdi12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtbmF2LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkbGluay1jb2xvcjogbnVsbCkge1xuICAkdGFicy1zZWxlY3RvcjogaWYoJHBhcmVudCA9PSAnJywgJy5uYXYtdGFicycsICcjeyRwYXJlbnR9Lm5hdi10YWJzJyk7XG4gICRwaWxscy1zZWxlY3RvcjogaWYoJHBhcmVudCA9PSAnJywgJy5uYXYtcGlsbHMnLCAnI3skcGFyZW50fS5uYXYtcGlsbHMsICN7JHBhcmVudH0gPiAubmF2LXBpbGxzJyk7XG5cbiAgI3skdGFicy1zZWxlY3Rvcn0gLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGNvbG9yLCAkY29sb3IpO1xuICB9XG5cbiAgI3skcGlsbHMtc2VsZWN0b3J9IC5uYXYtbGluay5hY3RpdmUge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGNvbG9yOiBpZigkbGluay1jb2xvciwgJGxpbmstY29sb3IsIHlpcSgkY29sb3IpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtbmF2LXRoZW1lKCRjb2xvciwgJGxpbmstY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1uYXYtdmFyaWFudCgnJywgJGNvbG9yLCAkbGluay1jb2xvcik7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUGFnaW5hdGlvblxuXG5AbWl4aW4gYXBwd29yay1wYWdpbmF0aW9uLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAjeyRwYXJlbnR9IC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmssXG4gICN7JHBhcmVudH0ucGFnaW5hdGlvbiBsaS5hY3RpdmUgPiBhOm5vdCgucGFnZS1saW5rKSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstcGFnaW5hdGlvbi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstcGFnaW5hdGlvbi12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBhcHB3b3JrLXByb2dyZXNzLWJhci10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIC5wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMaXN0IGdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlOiBudWxsLCAkYmFja2dyb3VuZDogbnVsbCwgJGNvbG9yOiBudWxsKSB7fVxuXG5AbWl4aW4gYXBwd29yay1saXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRiZzogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjEpLCAjZmZmKTtcbiAgJGNvbG9yOiB5aXEoJGJnKTtcbiAgJGhvdmVyLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRiZywgLjk5KSwgIzAwMCk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4wNyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICBhI3skcGFyZW50fSxcbiAgYnV0dG9uI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iZztcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbGlzdC1ncm91cC10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJy5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeScsICRiYWNrZ3JvdW5kKTtcblxuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQ6IG51bGwsICRib3JkZXI6IG51bGwsICRjb2xvcjogbnVsbCkge31cblxuQG1peGluIGFwcHdvcmstYWxlcnQtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjE1KSwgI2ZmZik7XG4gICRib3JkZXI6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC45NCksICMwMDApO1xuICAkY29sb3I6IHlpcSgkYmFja2dyb3VuZCk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBociB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cblxuICAgIC5jbG9zZSxcbiAgICAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1hbGVydC1kYXJrLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgaHIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSh5aXEoJGJhY2tncm91bmQpLC4yKTtcbiAgICB9XG5cbiAgICAuY2xvc2UsXG4gICAgLmFsZXJ0LWxpbmsge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUb29sdGlwc1xuXG5AbWl4aW4gYXBwd29yay10b29sdGlwLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICAudG9vbHRpcC1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gICAgfVxuXG4gICAgJi5icy10b29sdGlwLXRvcCAuYXJyb3c6OmJlZm9yZSwgJi5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLXRvcC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93OjpiZWZvcmUsICYuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsICYuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSAuYXJyb3c6OmJlZm9yZSB7IGJvcmRlci1ib3R0b20tY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gICAgJi5icy10b29sdGlwLWxlZnQgLmFycm93OjpiZWZvcmUsICYuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gLmFycm93OjpiZWZvcmUgeyBib3JkZXItbGVmdC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFBvcG92ZXJzXG5cbkBtaXhpbiBhcHB3b3JrLXBvcG92ZXItdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgICAucG9wb3Zlci1oZWFkZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHlpcSgkYmFja2dyb3VuZCksLjIpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgIC5wb3BvdmVyLWJvZHkge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgIC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG5cbiAgICAmLmJzLXBvcG92ZXItdG9wIC5hcnJvdzo6YWZ0ZXIsICYuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInRvcFwiXSAuYXJyb3c6OmFmdGVyIHsgYm9yZGVyLXRvcC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXBvcG92ZXItcmlnaHQgLmFycm93OjphZnRlciwgJi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwicmlnaHRcIl0gLmFycm93OjphZnRlciB7IGJvcmRlci1yaWdodC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXBvcG92ZXItYm90dG9tIC5hcnJvdzo6YWZ0ZXIsICYuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSAuYXJyb3c6OmFmdGVyIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXBvcG92ZXItbGVmdCAuYXJyb3c6OmFmdGVyLCAmLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJsZWZ0XCJdIC5hcnJvdzo6YWZ0ZXIgeyBib3JkZXItbGVmdC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvcm0gY29udHJvbHNcblxuQG1peGluIGFwcHdvcmstY3VzdG9tLXNlbGVjdC1zaXplKCRzaXplLCAkcGFkZGluZy15LCAkcGFkZGluZy14LCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpIHtcbiAgLmN1c3RvbS1zZWxlY3QtI3skc2l6ZX0sXG4gIC5pbnB1dC1ncm91cC0jeyRzaXplfSAuY3VzdG9tLXNlbGVjdCB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAoJHBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRwYWRkaW5nLXggY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICYsXG4gICAgICAmW3NpemU9XCIwXCJdOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRwYWRkaW5nLXggY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbc2l6ZT1cIjBcIl06bm90KFttdWx0aXBsZV0pIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstY3VzdG9tLWNvbnRyb2wtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsLCAkZGVmYXVsdC1iYWNrZ3JvdW5kOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIEBpZiAkZGVmYXVsdC1iYWNrZ3JvdW5kIHtcbiAgICAgIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgLmN1c3RvbS1jb250cm9sLWlucHV0OmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZmF1bHQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgICAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGJhY2tncm91bmQsIC40KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICYuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsICRjb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstY3VzdG9tLWNvbnRyb2wtdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLWN1c3RvbS1jb250cm9sLXZhcmlhbnQoJy5jdXN0b20tY29udHJvbCcsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1jdXN0b20tY29udHJvbC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwsICRkZWZhdWx0LWJhY2tncm91bmQ6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgQGlmICRkZWZhdWx0LWJhY2tncm91bmQge1xuICAgICAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgJi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG5cbiAgICAmLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGJhY2tncm91bmQpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiYWNrZ3JvdW5kLCAuMTUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1jdXN0b20tY29udHJvbC10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtY3VzdG9tLWNvbnRyb2wtdmFyaWFudCgnLmN1c3RvbS1jb250cm9sJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlOiBudWxsLCAkY29sb3I6IG51bGwpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogLjJyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsLjgpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCxcbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRjb2xvciwuMjUpICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dCxcbiAgLmN1c3RvbS1jb250cm9sLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAgICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAgICY6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkY29sb3IsIC40KTtcbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsIHlpcSgkY29sb3IpKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmN1c3RvbS1jb250cm9sLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsIHlpcSgkY29sb3IpKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWZpbGUtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRjb2xvciwuMykgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIHBhZGRpbmc6IC41cmVtO1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwuOCk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAuZm9ybS1jb250cm9sLFxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgJGNvbG9yIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0LFxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJiB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIC4xNSkgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgJi5pcy0jeyRzdGF0ZX06Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1iZywgJ19DT0xPUl8nLCB5aXEoJGNvbG9yKSksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmLmlzLSN7JHN0YXRlfTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsICRjb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuICB9XG5cbiAgLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OiN7JHN0YXRlfSxcbiAgLmN1c3RvbS1maWxlLWlucHV0LmlzLSN7JHN0YXRlfSB7XG4gICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwICRjb2xvciBpbnNldCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1jdXN0b20tZmlsZS1pbnB1dC10aGVtZSgkY29sb3IpIHtcbiAgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWN1c3RvbS1maWxlLWlucHV0LXRoZW1lKCRjb2xvcikge1xuICAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwICRjb2xvciBpbnNldDtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1mb3JtLWNvbnRyb2wtc2l6ZSgkc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkcGFkZGluZy15LCAkZ3JvdXAtYnRuLWZvbnQtc2l6ZTogbnVsbCkge1xuICBAaWYgJHNpemUgPT0gJycge1xuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmN1c3RvbS1zZWxlY3QsXG4gICAgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JHBhZGRpbmcteX0gLSAxcHgpICFpbXBvcnRhbnQ7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLmZvcm0tY29udHJvbC0jeyRzaXplfSxcbiAgICAuY3VzdG9tLXNlbGVjdC0jeyRzaXplfSxcbiAgICAuaW5wdXQtZ3JvdXAtI3skc2l6ZX0gPiAuZm9ybS1jb250cm9sLFxuICAgIC5pbnB1dC1ncm91cC0jeyRzaXplfSA+IC5jdXN0b20tc2VsZWN0LFxuICAgIC5pbnB1dC1ncm91cC0jeyRzaXplfSAuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygjeyRwYWRkaW5nLXl9IC0gMXB4KSAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAtI3skc2l6ZX0gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4gICAgLmlucHV0LWdyb3VwLSN7JHNpemV9ID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skcGFkZGluZy15fSAtIDFweCkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogJGdyb3VwLWJ0bi1mb250LXNpemU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWZvcm0tY29udHJvbC10aGVtZSgkY29sb3IpIHtcbiAgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgLmN1c3RvbS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWZvcm0tY29udHJvbC10aGVtZSgkY29sb3IpIHtcbiAgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgLmN1c3RvbS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwICRjb2xvciBpbnNldDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFN3aXRjaGVyc1xuXG5AbWl4aW4gYXBwd29yay1zd2l0Y2hlci1zaXplLWJhc2UoJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkZGVzY3JpcHRpb24tZm9udC1zaXplLCAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQsICRpbm5lci1zcGFjZXI6ICRzd2l0Y2hlci1pbm5lci1zcGFjZXIpIHtcbiAgcGFkZGluZy1sZWZ0OiAkd2lkdGg7XG4gIG1pbi1oZWlnaHQ6ICRoZWlnaHQ7XG4gIGZvbnQtc2l6ZTogJGRlc2NyaXB0aW9uLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRkZXNjcmlwdGlvbi1saW5lLWhlaWdodDtcblxuICAkbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICRkZXNjcmlwdGlvbi1mb250LXNpemUgKiAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQ7XG4gICRkZWx0YTogaWYoJG1hdGVyaWFsLXN0eWxlLCBweC10by1yZW0oY2VpbChyZW0tdG8tcHgoJGhlaWdodCAqIC4xMjUpKSksIDApO1xuXG4gIC5zd2l0Y2hlci1ibGFuayAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICB0b3A6ICRkZWx0YSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBoZWlnaHQ6ICRoZWlnaHQgLSAoJGRlbHRhICogMik7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkaGVpZ2h0O1xuXG4gICAgQGlmICRsaW5lLWhlaWdodC1jb21wdXRlZCA+ICRoZWlnaHQge1xuICAgICAgdG9wOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAtICRoZWlnaHQpIC8gMikgKyAkZGVsdGE7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0b3A6IDAgKyAkZGVsdGE7XG4gICAgfVxuICB9XG5cbiAgLnN3aXRjaGVyLWxhYmVsIHtcbiAgICBAaWYgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIDwgJGhlaWdodCB7XG4gICAgICB0b3A6ICgkaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDI7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yOjphZnRlciB7XG4gICAgbGVmdDogJHdpZHRoIC0gJGhlaWdodDtcbiAgfVxuXG4gIC5zd2l0Y2hlci1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICB0b3A6ICRkZWx0YSAqIC0xO1xuICAgIG1hcmdpbjogJGlubmVyLXNwYWNlciAwIDAgJGlubmVyLXNwYWNlcjtcbiAgICB3aWR0aDogJGhlaWdodCAtICRpbm5lci1zcGFjZXIgKiAyO1xuICAgIGhlaWdodDogJGhlaWdodCAtICRpbm5lci1zcGFjZXIgKiAyO1xuICB9XG5cbiAgLnN3aXRjaGVyLW5vIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkaW5uZXItc3BhY2VyO1xuICAgIHBhZGRpbmctbGVmdDogJGhlaWdodCAtICRpbm5lci1zcGFjZXI7XG4gIH1cblxuICAuc3dpdGNoZXIteWVzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRpbm5lci1zcGFjZXI7XG4gIH1cblxuICBAaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgICAuc3dpdGNoZXItaW5kaWNhdG9yOjpiZWZvcmUge1xuICAgICAgdG9wOiAkZGVsdGEgKiAtMTtcbiAgICAgIHdpZHRoOiAkaGVpZ2h0O1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIH1cblxuICAgIC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6ICR3aWR0aCAtICRoZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgW2Rpcj1ydGxdICYge1xuICAgICAgcGFkZGluZy1yaWdodDogJHdpZHRoO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvcjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICR3aWR0aCAtICRoZWlnaHQ7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGlubmVyLXNwYWNlcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci1ubyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogJGlubmVyLXNwYWNlcjtcbiAgICB9XG5cbiAgICBbZGlyPXJ0bF0gJiAuc3dpdGNoZXIteWVzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbm5lci1zcGFjZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyO1xuICAgIH1cblxuICAgIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgICAgW2Rpcj1ydGxdICYgLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yOjpiZWZvcmUge1xuICAgICAgICByaWdodDogJHdpZHRoIC0gJGhlaWdodDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstc3dpdGNoZXItc2l6ZSgkc2l6ZSwgJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkZGVzY3JpcHRpb24tZm9udC1zaXplLCAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQsICRpbm5lci1zcGFjZXI6ICRzd2l0Y2hlci1pbm5lci1zcGFjZXIpIHtcbiAgLnN3aXRjaGVyLSN7JHNpemV9LFxuICAuZm9ybS1ncm91cC0jeyRzaXplfSAuc3dpdGNoZXIge1xuICAgIEBpbmNsdWRlIGFwcHdvcmstc3dpdGNoZXItc2l6ZS1iYXNlKCR3aWR0aCwgJGhlaWdodCwgJGZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWxpbmUtaGVpZ2h0LCAkaW5uZXItc3BhY2VyKTtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1zd2l0Y2hlci12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJHNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnJywgJyN7JHBhcmVudH0uc3dpdGNoZXInKTtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skc2VsZWN0b3J9IC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSAuc3dpdGNoZXItaW5wdXQ6Zm9jdXMgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRiYWNrZ3JvdW5kLCAuNCk7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0gLnN3aXRjaGVyLWlucHV0OmFjdGl2ZSB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1zd2l0Y2hlci10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstc3dpdGNoZXItdmFyaWFudCgnJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLXN3aXRjaGVyLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQpIHtcbiAgJHNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnJywgJyN7JHBhcmVudH0uc3dpdGNoZXInKTtcblxuICAjeyRzZWxlY3Rvcn0gLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiYWNrZ3JvdW5kLCAuNSk7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmFja2dyb3VuZCwgLjE1KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtc3dpdGNoZXItdGhlbWUoJGJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1zd2l0Y2hlci12YXJpYW50KCcnLCAkYmFja2dyb3VuZCk7XG59XG5cbkBtaXhpbiBhcHB3b3JrLXN3aXRjaGVyLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IpIHtcbiAgLnN3aXRjaGVyLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICAmOmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiB5aXEoJGNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGNvbG9yLCAuNCkgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICB+IC5zd2l0Y2hlci1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtc3dpdGNoZXItdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuc3dpdGNoZXItaW5wdXQge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuNSkgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIC4xNSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC5zd2l0Y2hlci1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLXRhYmxlLXJvdy12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kKSB7XG4gICRiZzogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjEpLCAjZmZmKTtcbiAgJGNvbG9yOiB5aXEoJGJnKTtcbiAgJGhvdmVyLWJnOiByZ2JhLXRvLWhleChyZ2JhKCRiZywgLjk5KSwgIzAwMCk7XG5cbiAgLnRhYmxlICN7JHBhcmVudH0sXG4gIC50YWJsZSAjeyRwYXJlbnR9ID4gdGgsXG4gIC50YWJsZSAjeyRwYXJlbnR9ID4gdGQge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLDAsMCwuMDM1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC50YWJsZS1ob3ZlciAjeyRwYXJlbnR9OmhvdmVyLFxuICAudGFibGUtaG92ZXIgI3skcGFyZW50fTpob3ZlciA+IHRkLFxuICAudGFibGUtaG92ZXIgI3skcGFyZW50fTpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmc7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZiYXJcblxuQG1peGluIGFwcHdvcmstbmF2YmFyLXZhcmlhbnQoJHBhcmVudCwgJGJnLCAkY29sb3I6IG51bGwsICRhY3RpdmUtY29sb3I6IG51bGwsICRib3JkZXI6IG51bGwpIHtcbiAgJGNvbG9yczogZ2V0LW5hdi1jb2xvcnMoJGJnLCAkYWN0aXZlLWNvbG9yLCAkY29sb3IsICRib3JkZXIpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgLm5hdmJhci1icmFuZCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgZGlzYWJsZWQtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgICAgLm5hdi1saW5rLnNob3csXG4gICAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlcik7XG4gICAgfVxuXG4gICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogaWYobWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpID09ICNmZmYsICRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcsICRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbiAgICB9XG5cbiAgICAubmF2YmFyLXRleHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcblxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGhyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBib3JkZXIpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFNpZGVuYXZcblxuQG1peGluIGFwcHdvcmstc2lkZW5hdi12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiBudWxsLCAkYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsLCAkbWVudS1iZzogbnVsbCkge1xuICAkY29sb3JzOiBnZXQtbmF2LWNvbG9ycygkYmcsICRhY3RpdmUtY29sb3IsICRjb2xvciwgJGJvcmRlcik7XG4gICR5aXEtcGVyY2VudDogbWFwLWdldCgkY29sb3JzLCB5aXEtcGVyY2VudCk7XG5cbiAgQGlmIG5vdCAkbWVudS1iZyB7XG4gICAgJG1lbnUtYmc6IHJnYmEtdG8taGV4KHJnYmEobWFwLWdldCgkY29sb3JzLCBiZyksIDEgLSBpZigkeWlxLXBlcmNlbnQgPiAuNzUsIC4wMjUsIC4wNSkpLCBpZigkeWlxLXBlcmNlbnQgPCAuMjUsICNmZmYsICMwMDApKTtcbiAgfVxuXG4gICRtZW51LWFjdGl2ZS1iZzogcmdiYS10by1oZXgocmdiYSgkbWVudS1iZywgMSAtIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgLjAyNSwgLjA1KSksIGlmKCR5aXEtcGVyY2VudCA8IC4yNSwgI2ZmZiwgIzAwMCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgLnNpZGVuYXYtbGluayxcbiAgICAuc2lkZW5hdi1ob3Jpem9udGFsLXByZXYsXG4gICAgLnNpZGVuYXYtaG9yaXpvbnRhbC1uZXh0IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaXRlbS5kaXNhYmxlZCAuc2lkZW5hdi1saW5rLFxuICAgIC5zaWRlbmF2LWhvcml6b250YWwtcHJldi5kaXNhYmxlZCxcbiAgICAuc2lkZW5hdi1ob3Jpem9udGFsLW5leHQuZGlzYWJsZWQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgZGlzYWJsZWQtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaXRlbS5vcGVuOm5vdCguc2lkZW5hdi1pdGVtLWNsb3NpbmcpID4gLnNpZGVuYXYtdG9nZ2xlLFxuICAgIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluayB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluazpub3QoLnNpZGVuYXYtdG9nZ2xlKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1iZztcbiAgICB9XG5cbiAgICAmLnNpZGVuYXYtaG9yaXpvbnRhbCAuc2lkZW5hdi1tZW51ID4gLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOm5vdCguc2lkZW5hdi10b2dnbGUpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZW51LWFjdGl2ZS1iZztcbiAgICB9XG5cbiAgICAmLnNpZGVuYXYtaG9yaXpvbnRhbCAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW06bm90KC5zaWRlbmF2LWl0ZW0tY2xvc2luZykgPiAuc2lkZW5hdi1tZW51LFxuICAgICYuc2lkZW5hdi1ob3Jpem9udGFsIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtdG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWJnO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5zaWRlbmF2LWl0ZW0tY2xvc2luZyAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtbWVudSxcbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0uc2lkZW5hdi1pdGVtLWNsb3NpbmcgLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi10ZXh0IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIG11dGVkLWNvbG9yKTtcbiAgICB9XG5cbiAgICBocixcbiAgICAuc2lkZW5hdi1kaXZpZGVyLFxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtbWVudTo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBib3JkZXIpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1oZWFkZXI6OmJlZm9yZSxcbiAgICAuc2lkZW5hdi1ibG9jazo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLm9wZW4gPiAuc2lkZW5hdi10b2dnbGU6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhLXRvLWhleChtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlciksICRtZW51LWJnKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbms6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtdG9nZ2xlOjpiZWZvcmUsXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOjpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRtZW51LWJnO1xuICAgIH1cblxuICAgIC5wc19fdGh1bWIteSxcbiAgICAucHNfX3JhaWwteS5wcy0tY2xpY2tpbmcgPiAucHNfX3RodW1iLXkge1xuICAgICAgYmFja2dyb3VuZDogcmdiYShtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvciksIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgbWFwLWdldCgkY29sb3JzLCBvcGFjaXR5KSAtIC40LCBtYXAtZ2V0KCRjb2xvcnMsIG9wYWNpdHkpIC0gLjIpKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvb3RlclxuXG5AbWl4aW4gYXBwd29yay1mb290ZXItdmFyaWFudCgkcGFyZW50LCAkYmcsICRjb2xvcjogbnVsbCwgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAkY29sb3JzOiBnZXQtbmF2LWNvbG9ycygkYmcsICRhY3RpdmUtY29sb3IsICRjb2xvciwgJGJvcmRlcik7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBiZykgIWltcG9ydGFudDtcbiAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAuZm9vdGVyLWxpbmsge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBkaXNhYmxlZC1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLXRleHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2hvdyA+IC5mb290ZXItbGluayxcbiAgICAuYWN0aXZlID4gLmZvb3Rlci1saW5rLFxuICAgIC5mb290ZXItbGluay5zaG93LFxuICAgIC5mb290ZXItbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICBociB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZ1bmN0aW9uc1xuLy9cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNYXRoXG5cbiRwaTogMy4xNDE1OTI2NTM1OTtcbiRfcHJlY2lzaW9uOiAxMDtcblxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cCkge1xuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAaWYgJGV4cCA8IDF7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIHNxcnQoJHIpIHtcbiAgJHgwOiAxO1xuICAkeDE6ICR4MDtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgICAkeDE6ICR4MCAtICgkeDAgKiAkeDAgLSBhYnMoJHIpKSAvICgyICogJHgwKTtcbiAgICAkeDA6ICR4MTtcbiAgfVxuXG4gIEByZXR1cm4gJHgxO1xufVxuXG5AZnVuY3Rpb24gZmFjdCgkbnVtKSB7XG4gICRmYWN0OiAxO1xuICBAaWYgJG51bSA+IDB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbnVtIHtcbiAgICAgICRmYWN0OiAkZmFjdCAqICRpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRmYWN0O1xufVxuXG5AZnVuY3Rpb24gX3RvX3VuaXRsZXNzX3JhZCgkYW5nbGUpIHtcbiAgQGlmIHVuaXQoJGFuZ2xlKSA9PSBcImRlZ1wiIHtcbiAgICAkYW5nbGU6ICRhbmdsZSAvIDE4MGRlZyAqICRwaTtcbiAgfVxuICBAaWYgdW5pdCgkYW5nbGUpID09IFwicmFkXCIge1xuICAgICRhbmdsZTogJGFuZ2xlIC8gMXJhZDtcbiAgfVxuICBAcmV0dXJuICRhbmdsZTtcbn1cblxuQGZ1bmN0aW9uIHNpbigkYW5nbGUpe1xuICAkYTogX3RvX3VuaXRsZXNzX3JhZCgkYW5nbGUpO1xuICAkc2luOiAkYTtcbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG4gICAgJHNpbjogJHNpbiArIChwb3coLTEsICRuKSAvIGZhY3QoMiAqICRuICsgMSkgKSAqIHBvdygkYSwgKDIgKiAkbiArIDEpKTtcbiAgfVxuICBAcmV0dXJuICRzaW47XG59XG5cbkBmdW5jdGlvbiBjb3MoJGFuZ2xlKXtcbiAgJGE6IF90b191bml0bGVzc19yYWQoJGFuZ2xlKTtcbiAgJGNvczogMTtcbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG4gICAgJGNvczogJGNvcyArICggcG93KC0xLCRuKSAvIGZhY3QoMiokbikgKSAqIHBvdygkYSwyKiRuKTtcbiAgfVxuICBAcmV0dXJuICRjb3M7XG59XG5cbkBmdW5jdGlvbiB0YW4oJGFuZ2xlKXtcbiAgQHJldHVybiBzaW4oJGFuZ2xlKSAvIGNvcygkYW5nbGUpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpc3RzXG5cbkBmdW5jdGlvbiBzbGljZS1saXN0KCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcbiAgJHJlc3VsdDogbnVsbDtcblxuICBAaWYgdHlwZS1vZigkc3RhcnQpICE9IG51bWJlciBvciB0eXBlLW9mKCRlbmQpICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCJFaXRoZXIgJHN0YXJ0IG9yICRlbmQgYXJlIG5vdCBhIG51bWJlciBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIGlmICRzdGFydCA+ICRlbmQge1xuICAgIEB3YXJuIFwiVGhlIHN0YXJ0IGluZGV4IGhhcyB0byBiZSBsZXNzZXIgdGhhbiBvciBlcXVhbHMgdG8gdGhlIGVuZCBpbmRleCBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIGlmICRzdGFydCA8IDEgb3IgJGVuZCA8IDEge1xuICAgIEB3YXJuIFwiTGlzdCBpbmRleGVzIG11c3QgYmUgbm9uLXplcm8gaW50ZWdlcnMgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkc3RhcnQgPiBsZW5ndGgoJGxpc3QpIHtcbiAgICBAd2FybiBcIkxpc3QgaW5kZXggaXMgI3skc3RhcnR9IGJ1dCBsaXN0IGlzIG9ubHkgI3tsZW5ndGgoJGxpc3QpfSBpdGVtIGxvbmcgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkZW5kID4gbGVuZ3RoKCRsaXN0KSB7XG4gICAgQHdhcm4gXCJMaXN0IGluZGV4IGlzICN7JGVuZH0gYnV0IGxpc3QgaXMgb25seSAje2xlbmd0aCgkbGlzdCl9IGl0ZW0gbG9uZyBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFN0cmluZ3NcblxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiAnJykge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ29sb3JzXG5cbkBmdW5jdGlvbiByZ2JhLXRvLWhleCgkY29sb3IsICRiYWNrZ3JvdW5kOiAjZmZmKSB7XG4gIEBpZiAkY29sb3IgYW5kIGFscGhhKCRjb2xvcikgIT0gMSB7XG4gICAgJHBlcmNlbnQ6IGFscGhhKCRjb2xvcikgKiAxMDAlO1xuICAgICRvcGFxdWU6IG9wYWNpZnkoJGNvbG9yLCAxKTtcblxuICAgIEByZXR1cm4gbWl4KCRvcGFxdWUsICRiYWNrZ3JvdW5kLCAkcGVyY2VudCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGNvbG9yO1xuICB9XG59XG5cbkBmdW5jdGlvbiB5aXEtdmFsdWUoJGNvbG9yKSB7XG4gIEBpZiAkY29sb3IgPT0gdHJhbnNwYXJlbnQge1xuICAgIEByZXR1cm4gJGJvZHktY29sb3I7XG4gIH0gQGVsc2UgaWYgYWxwaGEoJGNvbG9yKSAhPSAxIHtcbiAgICAkY29sb3I6IHJnYmEtdG8taGV4KCRjb2xvcik7XG4gIH1cblxuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gIEByZXR1cm4gKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIHlpcSgkY29sb3IpIHtcbiAgJHlpcTogeWlxLXZhbHVlKCRjb2xvcik7XG5cbiAgQGlmICgkeWlxID49IDE2MCkge1xuICAgIEByZXR1cm4gcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC40MCksICMwMDApO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICNmZmY7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBVbml0c1xuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XG4gIEBpZiB0eXBlLW9mKCRudW1iZXIpID09ICdudW1iZXInIGFuZCBub3QgdW5pdGxlc3MoJG51bWJlcikge1xuICAgIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xuICB9XG5cbiAgQHJldHVybiAkbnVtYmVyO1xufVxuXG5AZnVuY3Rpb24gcHgtdG8tcmVtKCR2YWx1ZSkge1xuICAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQgZm9udCBzaXplID0gYDE2cHhgXG4gIEByZXR1cm4gKHN0cmlwLXVuaXQoJHZhbHVlKSAvIDE2KSAqIDFyZW07XG59XG5cbkBmdW5jdGlvbiByZW0tdG8tcHgoJHZhbHVlKSB7XG4gIC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBmb250IHNpemUgPSBgMTZweGBcbiAgQHJldHVybiAoc3RyaXAtdW5pdCgkdmFsdWUpICogMTYpICogMXB4O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFV0aWxpdGllc1xuXG5AZnVuY3Rpb24gZ2V0LWJ0bi1jb2xvcnMoJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgQGlmICRiYWNrZ3JvdW5kID09IHRyYW5zcGFyZW50IHtcbiAgICAkYnRuLXNoYWRvdzogcmdiYShyZ2JhLXRvLWhleCgkYm9yZGVyLCAjMDAwKSwgLjA1KTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgYmctaG92ZXI6ICByZ2JhKCRib3JkZXIsIC4wNiksXG4gICAgICBiZy1hY3RpdmU6IHJnYmEoJGJvcmRlciwgLjEyKSxcbiAgICAgIGJvcmRlcjogICAgJGJvcmRlcixcbiAgICAgIHNoYWRvdzogICAgaWYoJGVuYWJsZS1zaGFkb3dzLCAoJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCAkYnRuLXNoYWRvdyksIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoICRidG4tc2hhZG93KVxuICAgICk7XG4gIH0gQGVsc2UgaWYgYWxwaGEoJGJhY2tncm91bmQpICE9IDEge1xuICAgICRiZy1hbHBoYTogICBhbHBoYSgkYmFja2dyb3VuZCk7XG4gICAgJGJ0bi1zaGFkb3c6IHJnYmEoJGJhY2tncm91bmQsICRiZy1hbHBoYSAtICgkYmctYWxwaGEgKiA1NSAvIDEwMCkgKTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgYmctaG92ZXI6ICByZ2JhKCRiYWNrZ3JvdW5kLCAkYmctYWxwaGEgKyAwLjA1KSxcbiAgICAgIGJnLWFjdGl2ZTogcmdiYSgkYmFja2dyb3VuZCwgJGJnLWFscGhhICsgMC4xMyksXG4gICAgICBib3JkZXI6ICAgIHRyYW5zcGFyZW50LFxuICAgICAgc2hhZG93OiAgICBpZigkZW5hYmxlLXNoYWRvd3MsICgkYnRuLWJveC1zaGFkb3csIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoICRidG4tc2hhZG93KSwgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggJGJ0bi1zaGFkb3cpXG4gICAgKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAoXG4gICAgICBiZy1ob3ZlcjogIHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC45NSksICMwMDApLFxuICAgICAgYmctYWN0aXZlOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuODcpLCAjMDAwKSxcbiAgICAgIGJvcmRlcjogICAgdHJhbnNwYXJlbnQsXG4gICAgICBzaGFkb3c6ICAgIGlmKCRlbmFibGUtc2hhZG93cywgKCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpKSwgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpKVxuICAgICk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGdldC1tYXRlcmlhbC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kKSB7XG4gIEBpZiBhbHBoYSgkYmFja2dyb3VuZCkgIT0gMSB7XG4gICAgJGJhY2tncm91bmQ6IHJnYmEtdG8taGV4KCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEByZXR1cm4gKFxuICAgIGJnLWhvdmVyOiAgcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjk1KSwgI2ZmZiksXG4gICAgYmctYWN0aXZlOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuODcpLCAjZmZmKSxcbiAgKTtcbn1cblxuQGZ1bmN0aW9uIGdldC1uYXYtY29sb3JzKCRiZywgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGluYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRiZzogcmdiYS10by1oZXgoJGJnKTtcbiAgJGFjdGl2ZS1jb2xvcjogcmdiYS10by1oZXgoJGFjdGl2ZS1jb2xvcik7XG4gICRhY3RpdmUtY29sb3I6IGlmKCRhY3RpdmUtY29sb3IsICRhY3RpdmUtY29sb3IsIHlpcSgkYmcpKTtcbiAgJHlpcS1wZXJjZW50OiB5aXEtdmFsdWUoJGJnKSAvIDI1NTtcbiAgJHlpcS1wZXJjZW50LWludmVydGVkOiAxIC0gJHlpcS1wZXJjZW50O1xuXG4gICRvcGFjaXR5OiBpZigkYWN0aXZlLWNvbG9yID09ICNmZmYsIC42ICsgKC40ICogJHlpcS1wZXJjZW50KSwgLjYgKyAoLjQgKiAoMSAtICR5aXEtcGVyY2VudCkpKTtcblxuICAkY29sb3I6IGlmKCRpbmFjdGl2ZS1jb2xvciwgcmdiYS10by1oZXgoJGluYWN0aXZlLWNvbG9yLCAkYmcpLCByZ2JhLXRvLWhleChyZ2JhKCRhY3RpdmUtY29sb3IsIGlmKCR5aXEtcGVyY2VudCA8IC4yNSwgJG9wYWNpdHkgLSAuMTUsICRvcGFjaXR5KSksICRiZykpO1xuICAkZGlzYWJsZWQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuNiksICRiZyk7XG4gICRtdXRlZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC43NSksICRiZyk7XG4gICRib3JkZXI6IGlmKCRib3JkZXIsICRib3JkZXIsIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgcmdiYSgkYWN0aXZlLWNvbG9yLCAkb3BhY2l0eSAvIDgpLCBpZigkeWlxLXBlcmNlbnQgPCAuMjUsIHJnYmEoJGFjdGl2ZS1jb2xvciwgLjA2KSwgcmdiYSgkYWN0aXZlLWNvbG9yLCAuMTUpKSkpO1xuXG4gIEByZXR1cm4gKFxuICAgIC8vIE1ldGFkYXRhXG4gICAgb3BhY2l0eTogJG9wYWNpdHksXG4gICAgeWlxLXBlcmNlbnQ6ICR5aXEtcGVyY2VudCxcbiAgICB5aXEtcGVyY2VudC1pbnZlcnRlZDogJHlpcS1wZXJjZW50LWludmVydGVkLFxuXG4gICAgLy8gQ29sb3JzXG4gICAgYmc6ICRiZyxcbiAgICBjb2xvcjogJGNvbG9yLFxuICAgIGFjdGl2ZS1jb2xvcjogJGFjdGl2ZS1jb2xvcixcbiAgICBkaXNhYmxlZC1jb2xvcjogJGRpc2FibGVkLWNvbG9yLFxuICAgIG11dGVkLWNvbG9yOiAkbXV0ZWQtY29sb3IsXG4gICAgYm9yZGVyOiAkYm9yZGVyXG4gICk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ29sb3JzXG5cbiR3aGl0ZTogICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICAgICAjMTgxQzIxICFkZWZhdWx0O1xuJGdyYXktMjU6ICAgICAgcmdiYSgkYmxhY2ssIC4wMTUpICFkZWZhdWx0O1xuJGdyYXktNTA6ICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICAgICByZ2JhKCRibGFjaywgLjA2KSAhZGVmYXVsdDtcbiRncmF5LTIwMDogICAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJGdyYXktNDAwOiAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRncmF5LTUwMDogICAgIHJnYmEoJGJsYWNrLCAuNCkgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJGdyYXktNzAwOiAgICAgcmdiYSgkYmxhY2ssIC42KSAhZGVmYXVsdDtcbiRncmF5LTgwMDogICAgIHJnYmEoJGJsYWNrLCAuOCkgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuXG4kZ3JheXM6IChcbiAgXCIyNVwiOiAkZ3JheS0yNSxcbiAgXCI1MFwiOiAkZ3JheS01MFxuKSAhZGVmYXVsdDtcblxuJGJsdWU6ICAgICAgICAgIzFlNzBjZCAhZGVmYXVsdDtcbiRpbmRpZ286ICAgICAgICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgICAgICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICAgICAgI2U4M2U4YyAhZGVmYXVsdDtcbiRyZWQ6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgICAgICAjRkVCNzQ0ICFkZWZhdWx0O1xuJHllbGxvdzogICAgICAgI0ZGRDk1MCAhZGVmYXVsdDtcbiRncmVlbjogICAgICAgICMwMkJDNzcgIWRlZmF1bHQ7XG4kdGVhbDogICAgICAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICAgICAgIzI4YzNkNyAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogICAkaW5kaWdvLFxuICBcInNlY29uZGFyeVwiOiAjODg5N0FBLFxuICBcInN1Y2Nlc3NcIjogICAkZ3JlZW4sXG4gIFwiaW5mb1wiOiAgICAgICRjeWFuLFxuICBcIndhcm5pbmdcIjogICAkeWVsbG93LFxuICBcImRhbmdlclwiOiAgICAkcmVkLFxuICBcImRhcmtcIjogICAgICAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG5cbiRib2R5LWNvbG9yOiAgICAgICAjNEU1MTU1ICFkZWZhdWx0OyAvLyM0YTRhNGFcblxuLy8gIzA2Y1xuJGxpbmstY29sb3I6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRm9udHNcblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkZpcmEgU2Fuc1wiLCBcIkRyb2lkIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogIFwiU0ZNb25vLVJlZ3VsYXJcIiwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgLjg5NHJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUteGw6ICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS14czogICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1zZW1pYm9sZDogICA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgOTAwICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgMS40NyAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14bDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14czogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAyLjI1cmVtICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgIDEuODEzcmVtICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgIDEuNTYzcmVtICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgIDEuMzEzcmVtICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgJGZvbnQtd2VpZ2h0LXNlbWlib2xkICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgNHJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kdGlueS1mb250LXNpemU6ICAgICAgICAgNzAlICFkZWZhdWx0O1xuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgIDg1JSAhZGVmYXVsdDtcbiRiaWctZm9udC1zaXplOiAgICAgICAgICAxMTIlICFkZWZhdWx0O1xuJGxhcmdlLWZvbnQtc2l6ZTogICAgICAgIDE1MCUgIWRlZmF1bHQ7XG4keGxhcmdlLWZvbnQtc2l6ZTogICAgICAgMTcwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTUwMCkgIWRlZmF1bHQ7XG4kdGV4dC1tdXRlZC1ob3ZlcjogICAgICAgcmdiYS10by1oZXgoJGdyYXktNjAwKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiByZ2JhLXRvLWhleCgkZ3JheS01MDApICFkZWZhdWx0O1xuJHRleHQtbGlnaHQ6ICAgICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTQwMCkgIWRlZmF1bHQ7XG4kdGV4dC1saWdodGVyOiAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktMzAwKSAhZGVmYXVsdDtcbiR0ZXh0LWxpZ2h0ZXN0OiAgICAgICAgICByZ2JhLXRvLWhleCgkZ3JheS0yMDApICFkZWZhdWx0O1xuXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgbm9uZSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBHcmlkXG5cbiRncmlkLWd1dHRlci13aWR0aDogMS41cmVtICFkZWZhdWx0O1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogMnJlbSAhZGVmYXVsdDtcbiRjb250YWluZXItcGFkZGluZy14LXNtOiAxcmVtICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLXk6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDb21wb25lbnRzXG5cbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywuMDYpICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhsOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1saW5lLWhlaWdodDogICAgICAgICAgIDEuNTQgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aDogICAgMnB4ICFkZWZhdWx0O1xuXG4kZmxvYXRpbmctY29tcG9uZW50LWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdzogICAgICAgMCAxcHggNnB4IHJnYmEoMCwgMCwgMCwgLjA5KSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRib3JkZXJlZC1yb3ctYm9yZGVyLWNvbG9yOiAgICAgICAkaHItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgLjQyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogWi1pbmRleCBtYXN0ZXIgbGlzdFxuXG4kemluZGV4LWxheW91dC1maXhlZDogIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLXRvcDogICAgIDEwOTAgIWRlZmF1bHQ7XG4kemluZGV4LWxheW91dC1tb2JpbGU6IDExMDAgIWRlZmF1bHQ7XG4kemluZGV4LW5vdGlmaWNhdGlvbjogIDk5OTk5OSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUYWJsZXNcblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMjUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICByZ2JhKCRibGFjaywgLjAzNSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgIHJnYmEtdG8taGV4KCR0YWJsZS1ob3Zlci1iZykgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgcmdiYS10by1oZXgoJGdyYXktMTAwKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAkZ3JheS01MCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICByZ2JhKCR3aGl0ZSwgLjAzKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6IGxpZ2h0ZW4ocmdiYS10by1oZXgoJGdyYXktOTAwKSwgNyUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnV0dG9uc1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAuNDM4cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgMS4xMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAxLjU0ICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS14czogICAwICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgteHM6ICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS14czogICAkZm9udC1zaXplLXhzICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC14czogJGxpbmUtaGVpZ2h0LXhzICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAuMTg4cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgLjY4NzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAxLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS14bDogICAuODc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgteGw6ICAgMi4xMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS14bDogICAkZm9udC1zaXplLXhsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC14bDogJGxpbmUtaGVpZ2h0LXhsICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci1yYWRpdXMteHM6ICAgICAkYm9yZGVyLXJhZGl1cy14cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy14bDogICAgICRib3JkZXItcmFkaXVzLXhsICFkZWZhdWx0O1xuXG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC4yNSkgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvcm1zXG5cbiRsYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgLjgzMTI1cmVtICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktMTAwKSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICR0ZXh0LWxpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgICAgIHB4LXRvLXJlbShmbG9vcihyZW0tdG8tcHgoKCRpbnB1dC1idG4tZm9udC1zaXplICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSkpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItc206ICAgICAgICAgICAgICAgICAgICAgcHgtdG8tcmVtKGZsb29yKHJlbS10by1weCgoJGlucHV0LWJ0bi1mb250LXNpemUtc20gKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAqIDIpKSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1sZzogICAgICAgICAgICAgICAgICAgICBweC10by1yZW0oZmxvb3IocmVtLXRvLXB4KCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDIpKSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtaW52ZXJ0ZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoI2ZmZiwgLjMpICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtaW52ZXJ0ZWQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtaW52ZXJ0ZWQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgIHJnYmEoI2ZmZiwgLjcpICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICByZ2JhKCNmZmYsIC4xKSAhZGVmYXVsdDtcbiRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgJGlucHV0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgIDEuMTI1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogICAgIDFweCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICsgLjQzOHJlbSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgICAgXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA5LjUgNy41JyUzRSUzQ3BvbHlsaW5lIHBvaW50cz0nMC43NSA0LjM1IDQuMTggNi43NSA4Ljc1IDAuNzUnIHN0eWxlPSdmaWxsOm5vbmU7c3Ryb2tlOl9DT0xPUl87c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS13aWR0aDoxLjVweCcvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICAgICA2NSUgNjUlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgICAgICBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEwIDEwJyUzRSUzQ2NpcmNsZSBjeD0nNScgY3k9JzUnIHI9JzQuNScgc3R5bGU9J2ZpbGw6X0NPTE9SXycvJTNFJTNDcGF0aCBkPSdNNSwxQTQsNCwwLDEsMSwxLDUsNCw0LDAsMCwxLDUsMU01LDBhNSw1LDAsMSwwLDUsNUE1LDUsMCwwLDAsNSwwWicgc3R5bGU9J2ZpbGw6X0NPTE9SXycvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmctc2l6ZTogICAgICAgICAgICA0MCUgNDAlICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICAgICAgICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3I6ICAgICAkaW5wdXQtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbnZlcnRlZC1kaXNhYmxlZC1iZzogICAgICAgICRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAgICAgICAxN3B4IDEycHggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgICAgICAgIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCRUFBQUFNQ0FZQUFBQ0VKVmEvQUFBQUJHZEJUVUVBQUxHUEMveGhCUUFBQUY1SlJFRlVLQlZqZVBiOHhYOEdDZ0VUaGZyQjJnZVBJU3pFZU1mRHg2L2gvNzkvOWRqVU1qSXhOUkxsblIxYk5qV0FGS01iQWhJRHlSRmxDRWd6dWtFd0E4QUdreHJGSUsrQk1GZ3pqQ0RWRUpnK1pKcG83eUJyUW1jUEhrTUFSNVlmNTVIOUpONEFBQUFBU1VWT1JLNUNZSUk9JykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItaW52ZXJ0ZWQ6ICAgICAgICAgIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCRUFBQUFNQ0FZQUFBQ0VKVmEvQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFFcEpSRUZVZU5waStQLy92d01RTTFDQ0dZYVhJU3dNeElFS0lBN0JJcjRHaUR1WWlEU2tDNGdQb1lrZGdvcVQ1QjBPSUY0QXhHZWdOQWU1WVNJSXhKT2c5SENOWXFvWUFoQmdBS0hXQmcraFJyTnhBQUFBQUVsRlRrU3VRbUNDJykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcnRsOiAgICAgICAgICAgICAgIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCRUFBQUFNQ0FZQUFBQ0VKVmEvQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFFdEpSRUZVZU5waVlLQVFQSHYrNGo4VEF4WEE0REdFeGNQSHIrSC92My8xMkNRWm1aZ2FkMnpaMUVEUUpTQkZJTVhrR2dEM0RycEJwQmlBQVVCZUEyRlNvNWhoTkoxZ0FJQUFBd0MxTXlLRlJsNm9td0FBQUFCSlJVNUVya0pnZ2c9PScpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWludmVydGVkLXJ0bDogICAgICB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkVBQUFBTUNBWUFBQUNFSlZhL0FBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBRk5KUkVGVWVOcGkrUC8vUHdNRjJBRkVNekZRQVF3ZVExaUF1QUtJUTdESXJRSGlEbUpkMGdYRWg5REVEMEhGaWZiT1B5Q3VBdUlyVUxFclVQNC9vdjJERkYyQ1FEd0pTcE1VeFF5ajZRUURBQVFZQUt4OG95QkEvM2xDQUFBQUFFbEZUa1N1UW1DQycpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRHJvcGRvd25zXG5cbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAkZmxvYXRpbmctY29tcG9uZW50LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICRmbG9hdGluZy1jb21wb25lbnQtc2hhZG93ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgLjQzOHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1saW5lLWhlaWdodDogICAgJGNvbXBvbmVudC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZzXG5cbiRuYXYtc3BhY2VyOiAgICAgICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgJGNvbXBvbmVudC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJG5hdi1saW5rLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgIDEuMzEyNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1saW5lLWhlaWdodC1sZzogICAgICAgICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJG5hdi1saW5rLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14LXNtOiAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAkdGV4dC1tdXRlZC1ob3ZlciAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZiYXJcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuN3JlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjQpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4wNikgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgIC45Mzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAkdGV4dC1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXNwYWNlcjogICAgICAgICAgICAgICAgLjE4NzVyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14LXNtOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssLjA2KSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDRweCByZ2JhKCRibGFjaywuMDA5KSAhZGVmYXVsdDtcbi8vICRjYXJkLXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDRweCByZ2JhKCRibGFjaywuMDMpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRvb2x0aXBzXG5cbiR0b29sdGlwLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICByZ2JhLXRvLWhleCgkZ3JheS04MDApICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiR0b29sdGlwLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUG9wb3ZlcnNcblxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICRncmF5LTUwICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6IC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAuODU4ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIC40MTdlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgIC41ODNlbSAhZGVmYXVsdDtcbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgIDEwcmVtICFkZWZhdWx0O1xuXG4kYmFkZ2UtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYmFkZ2Utb3V0bGluZS1kZWZhdWx0LWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNb2RhbHNcblxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgMS41NjI1cmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgICAgMS4yNXJlbSAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgMXB4ICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAkZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdyAhZGVmYXVsdDtcblxuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgMzVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgIDIyLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtc2xpZGUtd2lkdGg6ICAgICAgICAgICAgICAyMHJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgLjE1cyAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkbW9kYWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBBbGVydHNcblxuJGFsZXJ0LXBhZGRpbmcteTogMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogMTByZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgI2ZmZiAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYS10by1oZXgoJGJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAuOTM3NXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjUgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgJHRleHQtbXV0ZWQtaG92ZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgJGdyYXktNTAgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgIDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAwcHggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6IDBweCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgIFwiL1wiICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1ydGw6ICAgXCJcXFxcXCIgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU3dpdGNoZXJzXG5cbiRzd2l0Y2hlci1zcGFjZXIteDogICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLXNwYWNlci15OiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1ndXR0ZXI6ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItaW5uZXItc3BhY2VyOiAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLXNxdWFyZS1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLWxhYmVsLWNvbG9yOiAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1kaXNhYmxlZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItd2lkdGg6ICAgICAgICAgICAgICAgIDIuMzc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLWhlaWdodDogICAgICAgICAgICAgICAxLjM3NXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1mb250LXNpemU6ICAgICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHN3aXRjaGVyLWxhYmVsLWxpbmUtaGVpZ2h0OiAgICAxLjQgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci13aWR0aC1zbTogICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1oZWlnaHQtc206ICAgICAgICAgICAgMS4xMjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLXNtOiAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtc206IDEuNDg2ICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItd2lkdGgtbGc6ICAgICAgICAgICAgIDMuMjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItaGVpZ2h0LWxnOiAgICAgICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLWxnOiAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtbGc6IDEuNDcgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci1vZmYtY29sb3I6ICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJHN3aXRjaGVyLW9mZi1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kc3dpdGNoZXItaG9sZGVyLWJnOiAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kc3dpdGNoZXItaG9sZGVyLXNoYWRvdzogICAgICAgIDAgMCAwIDFweCByZ2JhKCRibGFjaywgLjA0KSwgMCAxcHggNnB4IHJnYmEoJGJsYWNrLCAuMDkpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENsb3NlXG5cbiRjbG9zZS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6IDNyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2lkZW5hdlxuXG4kc2lkZW5hdi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgIDE1LjYyNXJlbSAhZGVmYXVsdDsgLy8yNTBweFxuJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoOiAgICAgICAgICAgICAgICA0LjM3NXJlbSAhZGVmYXVsdDsgLy83MHB4XG5cbiRzaWRlbmF2LWl0ZW0tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAgLjA2MjVyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy15OiAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbWVudS1saW5rLXBhZGRpbmcteTogICAuNjI1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbWVudS1sZXZlbC1zcGFjZXI6ICAgICAxcmVtICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy15OiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14OiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLW1lbnUtbGluay1wYWRkaW5nLXk6IC42MjVyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLW1lbnUtbGV2ZWwtc3BhY2VyOiAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LW1lbnUtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgMTIuNXJlbSAhZGVmYXVsdDs7IC8vMjAwcHhcbiRzaWRlbmF2LWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgMi4yNXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWNvbnRyb2wtYXJyb3ctc2l6ZTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtd2lkdGg6ICAgICAgICAgICAgMS43NXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtZm9udC1zaXplOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtc3BhY2VyOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1hbmltYXRpb24tZHVyYXRpb246ICAgICAgICAgICAgIC4ycyAhZGVmYXVsdDtcblxuJHNpZGVuYXYtbWF4LWxldmVsczogICAgICAgICAgICAgICAgICAgICA1ICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpICFkZWZhdWx0O1xuJHNpZGVuYXYtZGFyay1tZW51LWJnOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNikgIWRlZmF1bHQ7XG4kc2lkZW5hdi1saWdodC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA2KSAhZGVmYXVsdDtcbiRzaWRlbmF2LWxpZ2h0LW1lbnUtYmc6ICAgICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG4vLyBDb25maWdcbiRydGwtc3VwcG9ydDogZmFsc2UgIWRlZmF1bHQ7XG4kbWF0ZXJpYWwtc3R5bGU6IGZhbHNlO1xuIiwiJHJ0bC1zdXBwb3J0OiB0cnVlO1xuXG5AaW1wb3J0IFwiLi4vX2FwcHdvcmsvaW5jbHVkZVwiO1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEN1c3RvbSBjb2xvcnNcblxuJGN1c3RvbS1jb2xvcnM6IChcbiAgdHdpdHRlcjogIzFEQTFGMixcbiAgZ29vZ2xlOiAjRDE1MjNGLFxuICBmYWNlYm9vazogIzNCNTk5OCxcbiAgcGludGVyZXN0OiAjYmQxMjFjLFxuICBpbnN0YWdyYW06ICMwMDAsXG5cbiAgd2luZG93czogIzI2QUFFMSxcbiAgbWFjb3M6ICMzNDM0MzQsXG4gIGxpbnV4OiAjODAwMDgwXG4pICFkZWZhdWx0O1xuXG5AZWFjaCAkY29sb3ItbmFtZSwgJGNvbG9yLXZhbHVlIGluICRjdXN0b20tY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC0jeyRjb2xvci1uYW1lfScsICRjb2xvci12YWx1ZSk7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy0jeyRjb2xvci1uYW1lfScsICRjb2xvci12YWx1ZSk7XG5cbiAgQGluY2x1ZGUgYXBwd29yay1idXR0b24tdmFyaWFudCgnLmJ0bi0jeyRjb2xvci1uYW1lfScsICRjb2xvci12YWx1ZSk7XG4gIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLW91dGxpbmUtdmFyaWFudCgnLmJ0bi1vdXRsaW5lLSN7JGNvbG9yLW5hbWV9JywgJGNvbG9yLXZhbHVlKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCdXR0b25zXG5cbkBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLXZhcmlhbnQoJy5idG4td2hpdGUnLCAjZmZmLCAkYm9keS1jb2xvcik7XG5AaW5jbHVkZSBhcHB3b3JrLWJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJy5idG4tb3V0bGluZS13aGl0ZScsICNmZmYsICRib2R5LWNvbG9yKTtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDdXN0b20gY29udHJvbHNcblxuJGN1c3RvbS1jb250cm9sLWNvbG9yczogKFxuICBibGFjazogIzAwMCxcbiAgd2hpdGU6ICNmZmYsXG4gIHNpbHZlcjogI2VlZSxcbiAgZ3JheTogIzc3NyxcbiAgZ29sZDogI2ZmZWIzYixcbiAgcGluazogI2U5MWU2MyxcbiAgcmVkOiAjZjQ0MzM2XG4pICFkZWZhdWx0O1xuXG5AZWFjaCAkY29sb3ItbmFtZSwgJGNvbG9yLXZhbHVlIGluICRjdXN0b20tY29udHJvbC1jb2xvcnMge1xuICBAaW5jbHVkZSBhcHB3b3JrLWN1c3RvbS1jb250cm9sLXZhcmlhbnQoJy5jdXN0b20tY29udHJvbC5jdXN0b20tY29udHJvbC0jeyRjb2xvci1uYW1lfScsICRjb2xvci12YWx1ZSwgJGRlZmF1bHQtYmFja2dyb3VuZDogJGNvbG9yLXZhbHVlKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZiYXJcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpZiAkY29sb3IgIT0gcHJpbWFyeSBhbmQgJGNvbG9yICE9IGxpZ2h0IHtcbiAgICBAaW5jbHVkZSBhcHB3b3JrLW5hdmJhci12YXJpYW50KCcubmF2YmFyLmJnLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gIH1cbn1cbkBpbmNsdWRlIGFwcHdvcmstbmF2YmFyLXZhcmlhbnQoJy5uYXZiYXIuYmctd2hpdGUnLCAgICNmZmYsICAgICAgJGNvbG9yOiAkdGV4dC1tdXRlZCwgJGFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IpO1xuQGluY2x1ZGUgYXBwd29yay1uYXZiYXItdmFyaWFudCgnLm5hdmJhci5iZy1saWdodCcsICAgJGdyYXktMTAwLCAkY29sb3I6ICR0ZXh0LW11dGVkLCAkYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvcik7XG5AaW5jbHVkZSBhcHB3b3JrLW5hdmJhci12YXJpYW50KCcubmF2YmFyLmJnLWxpZ2h0ZXInLCAkZ3JheS01MCwgICRjb2xvcjogJHRleHQtbXV0ZWQsICRhY3RpdmUtY29sb3I6ICRib2R5LWNvbG9yKTtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTaWRlbmF2XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaWYgJGNvbG9yICE9IHByaW1hcnkgYW5kICRjb2xvciAhPSBsaWdodCB7XG4gICAgQGluY2x1ZGUgYXBwd29yay1zaWRlbmF2LXZhcmlhbnQoJy5zaWRlbmF2LmJnLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gIH1cbn1cbkBpbmNsdWRlIGFwcHdvcmstc2lkZW5hdi12YXJpYW50KCcuc2lkZW5hdi5iZy13aGl0ZScsICNmZmYsICAgICAgICRjb2xvcjogJHRleHQtbXV0ZWQsICRhY3RpdmUtY29sb3I6ICRib2R5LWNvbG9yLCAkbWVudS1iZzogI2ZmZik7XG5AaW5jbHVkZSBhcHB3b3JrLXNpZGVuYXYtdmFyaWFudCgnLnNpZGVuYXYuYmctbGlnaHQnLCAkZ3JheS0xMDAsICAkY29sb3I6ICR0ZXh0LW11dGVkLCAkYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvcik7XG5AaW5jbHVkZSBhcHB3b3JrLXNpZGVuYXYtdmFyaWFudCgnLnNpZGVuYXYuYmctbGlnaHRlcicsICRncmF5LTUwLCAkY29sb3I6ICR0ZXh0LW11dGVkLCAkYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvcik7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRm9vdGVyXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaWYgJGNvbG9yICE9IHByaW1hcnkgYW5kICRjb2xvciAhPSBsaWdodCB7XG4gICAgQGluY2x1ZGUgYXBwd29yay1mb290ZXItdmFyaWFudCgnLmZvb3Rlci5iZy0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICB9XG59XG5AaW5jbHVkZSBhcHB3b3JrLWZvb3Rlci12YXJpYW50KCcuZm9vdGVyLmJnLXdoaXRlJywgICAjZmZmLCAgICAgICRjb2xvcjogJHRleHQtbXV0ZWQsICRhY3RpdmUtY29sb3I6ICRib2R5LWNvbG9yKTtcbkBpbmNsdWRlIGFwcHdvcmstZm9vdGVyLXZhcmlhbnQoJy5mb290ZXIuYmctbGlnaHQnLCAgICRncmF5LTEwMCwgJGNvbG9yOiAkdGV4dC1tdXRlZCwgJGFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IpO1xuQGluY2x1ZGUgYXBwd29yay1mb290ZXItdmFyaWFudCgnLmZvb3Rlci5iZy1saWdodGVyJywgJGdyYXktNTAsICAkY29sb3I6ICR0ZXh0LW11dGVkLCAkYWN0aXZlLWNvbG9yOiAkYm9keS1jb2xvcik7XG4iXX0= */
