/*!
 * WeUI v2.6.5 (https://github.com/weui/weui)
 * Copyright 2023 Tencent, Inc.
 * Licensed under the MIT license
 */
body,.wx-root,page {
  --weui-BTN-HEIGHT: 48;
  --weui-BTN-HEIGHT-MEDIUM: 40;
  --weui-BTN-HEIGHT-SMALL: 32;
}

.wx-root,body {
  --weui-BTN-ACTIVE-MASK: rgba(0, 0, 0, 0.1);
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-BTN-ACTIVE-MASK: rgba(255, 255, 255, 0.1);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-BTN-ACTIVE-MASK: rgba(255, 255, 255, 0.1);
  }
}

.wx-root,body {
  --weui-BTN-DEFAULT-ACTIVE-BG: #e6e6e6;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-BTN-DEFAULT-ACTIVE-BG: rgba(255, 255, 255, 0.126);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-BTN-DEFAULT-ACTIVE-BG: rgba(255, 255, 255, 0.126);
  }
}

.wx-root,body {
  --weui-DIALOG-LINE-COLOR: rgba(0, 0, 0, 0.1);
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-DIALOG-LINE-COLOR: rgba(255, 255, 255, 0.1);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-DIALOG-LINE-COLOR: rgba(255, 255, 255, 0.1);
  }
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  line-height: 1.6;
  font-family: system-ui,-apple-system,"Helvetica Neue",sans-serif;
}

* {
  margin: 0;
  padding: 0;
  outline: 0;
}

a img {
  border: 0;
}

a {
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

input,textarea {
  caret-color: #07c160;
  caret-color: var(--weui-BRAND);
}

::-webkit-input-placeholder {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

::placeholder {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

body,.wx-root {
  --weui-BG-0: #ededed;
  --weui-BG-1: #f7f7f7;
  --weui-BG-2: #fff;
  --weui-BG-3: #f7f7f7;
  --weui-BG-4: #4c4c4c;
  --weui-BG-5: #fff;
  --weui-FG-0: rgba(0, 0, 0, 0.9);
  --weui-FG-HALF: rgba(0, 0, 0, 0.9);
  --weui-FG-1: rgba(0, 0, 0, 0.55);
  --weui-FG-2: rgba(0, 0, 0, 0.3);
  --weui-FG-3: rgba(0, 0, 0, 0.1);
  --weui-FG-4: rgba(0, 0, 0, 0.15);
  --weui-FG-5: rgba(0, 0, 0, 0.05);
  --weui-RED: #fa5151;
  --weui-ORANGERED: #ff6146;
  --weui-ORANGE: #fa9d3b;
  --weui-YELLOW: #ffc300;
  --weui-GREEN: #91d300;
  --weui-LIGHTGREEN: #95ec69;
  --weui-BRAND: #07c160;
  --weui-BLUE: #10aeff;
  --weui-INDIGO: #1485ee;
  --weui-PURPLE: #6467f0;
  --weui-WHITE: #fff;
  --weui-LINK: #576b95;
  --weui-TEXTGREEN: #06ae56;
  --weui-FG: #000;
  --weui-BG: #fff;
  --weui-TAG-TEXT-RED: rgba(250, 81, 81, 0.6);
  --weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, 0.1);
  --weui-TAG-TEXT-ORANGE: #fa9d3b;
  --weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, 0.1);
  --weui-TAG-TEXT-GREEN: #06ae56;
  --weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, 0.1);
  --weui-TAG-TEXT-BLUE: #10aeff;
  --weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, 0.1);
  --weui-TAG-TEXT-BLACK: rgba(0, 0, 0, 0.5);
  --weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, 0.05);
  --weui-REDORANGE: #ff6146;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-BG-0: #111;
    --weui-BG-1: #1e1e1e;
    --weui-BG-2: #191919;
    --weui-BG-3: #202020;
    --weui-BG-4: #404040;
    --weui-BG-5: #2c2c2c;
    --weui-FG-0: rgba(255, 255, 255, 0.8);
    --weui-FG-HALF: rgba(255, 255, 255, 0.6);
    --weui-FG-1: rgba(255, 255, 255, 0.5);
    --weui-FG-2: rgba(255, 255, 255, 0.3);
    --weui-FG-3: rgba(255, 255, 255, 0.1);
    --weui-FG-4: rgba(255, 255, 255, 0.15);
    --weui-FG-5: rgba(255, 255, 255, 0.1);
    --weui-RED: #fa5151;
    --weui-ORANGERED: #ff6146;
    --weui-ORANGE: #c87d2f;
    --weui-YELLOW: #cc9c00;
    --weui-GREEN: #74a800;
    --weui-LIGHTGREEN: #3eb575;
    --weui-BRAND: #07c160;
    --weui-BLUE: #10aeff;
    --weui-INDIGO: #1196ff;
    --weui-PURPLE: #8183ff;
    --weui-WHITE: rgba(255, 255, 255, 0.8);
    --weui-LINK: #7d90a9;
    --weui-TEXTGREEN: #259c5c;
    --weui-FG: #fff;
    --weui-BG: #000;
    --weui-TAG-TEXT-RED: rgba(250, 81, 81, 0.6);
    --weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, 0.1);
    --weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, 0.6);
    --weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, 0.1);
    --weui-TAG-TEXT-GREEN: rgba(6, 174, 86, 0.6);
    --weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, 0.1);
    --weui-TAG-TEXT-BLUE: rgba(16, 174, 255, 0.6);
    --weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, 0.1);
    --weui-TAG-TEXT-BLACK: rgba(255, 255, 255, 0.5);
    --weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, 0.05);
    --weui-REDORANGE: #ff6146;
  }
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-BG-0: #111;
  --weui-BG-1: #1e1e1e;
  --weui-BG-2: #191919;
  --weui-BG-3: #202020;
  --weui-BG-4: #404040;
  --weui-BG-5: #2c2c2c;
  --weui-FG-0: rgba(255, 255, 255, 0.8);
  --weui-FG-HALF: rgba(255, 255, 255, 0.6);
  --weui-FG-1: rgba(255, 255, 255, 0.5);
  --weui-FG-2: rgba(255, 255, 255, 0.3);
  --weui-FG-3: rgba(255, 255, 255, 0.1);
  --weui-FG-4: rgba(255, 255, 255, 0.15);
  --weui-FG-5: rgba(255, 255, 255, 0.1);
  --weui-RED: #fa5151;
  --weui-ORANGERED: #ff6146;
  --weui-ORANGE: #c87d2f;
  --weui-YELLOW: #cc9c00;
  --weui-GREEN: #74a800;
  --weui-LIGHTGREEN: #3eb575;
  --weui-BRAND: #07c160;
  --weui-BLUE: #10aeff;
  --weui-INDIGO: #1196ff;
  --weui-PURPLE: #8183ff;
  --weui-WHITE: rgba(255, 255, 255, 0.8);
  --weui-LINK: #7d90a9;
  --weui-TEXTGREEN: #259c5c;
  --weui-FG: #fff;
  --weui-BG: #000;
  --weui-TAG-TEXT-RED: rgba(250, 81, 81, 0.6);
  --weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, 0.1);
  --weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, 0.6);
  --weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, 0.1);
  --weui-TAG-TEXT-GREEN: rgba(6, 174, 86, 0.6);
  --weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, 0.1);
  --weui-TAG-TEXT-BLUE: rgba(16, 174, 255, 0.6);
  --weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, 0.1);
  --weui-TAG-TEXT-BLACK: rgba(255, 255, 255, 0.5);
  --weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, 0.05);
  --weui-REDORANGE: #ff6146;
}

.wx-root[data-weui-mode='care'],body[data-weui-mode='care'] {
  --weui-BG-0: #ededed;
  --weui-BG-1: #f7f7f7;
  --weui-BG-2: #fff;
  --weui-BG-3: #f7f7f7;
  --weui-BG-4: #4c4c4c;
  --weui-BG-5: #fff;
  --weui-FG-0: #000000;
  --weui-FG-HALF: #000000;
  --weui-FG-1: rgba(0, 0, 0, 0.6);
  --weui-FG-2: rgba(0, 0, 0, 0.42);
  --weui-FG-3: rgba(0, 0, 0, 0.1);
  --weui-FG-4: rgba(0, 0, 0, 0.15);
  --weui-FG-5: rgba(0, 0, 0, 0.05);
  --weui-RED: #dc3636;
  --weui-ORANGERED: #d14730;
  --weui-ORANGE: #e17719;
  --weui-YELLOW: #bb8e00;
  --weui-GREEN: #4f8400;
  --weui-LIGHTGREEN: #2e8800;
  --weui-BRAND: #018942;
  --weui-BLUE: #007dbb;
  --weui-INDIGO: #0075e2;
  --weui-PURPLE: #6265f1;
  --weui-WHITE: #fff;
  --weui-LINK: #576b95;
  --weui-TEXTGREEN: #06ae56;
  --weui-FG: #000;
  --weui-BG: #fff;
  --weui-TAG-TEXT-RED: rgba(250, 81, 81, 0.6);
  --weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, 0.1);
  --weui-TAG-TEXT-ORANGE: #e17719;
  --weui-TAG-BACKGROUND-ORANGE: rgba(225, 119, 25, 0.1);
  --weui-TAG-TEXT-GREEN: #06ae56;
  --weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, 0.1);
  --weui-TAG-TEXT-BLUE: #007dbb;
  --weui-TAG-BACKGROUND-BLUE: rgba(0, 125, 187, 0.1);
  --weui-TAG-TEXT-BLACK: rgba(0, 0, 0, 0.5);
  --weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, 0.05);
  --weui-REDORANGE: #d14730;
}

@media (prefers-color-scheme:dark) {
  .wx-root[data-weui-mode='care']:not([data-weui-theme='light']),body[data-weui-mode='care']:not([data-weui-theme='light']) {
    --weui-BG-0: #111;
    --weui-BG-1: #1e1e1e;
    --weui-BG-2: #191919;
    --weui-BG-3: #202020;
    --weui-BG-4: #404040;
    --weui-BG-5: #2c2c2c;
    --weui-FG-0: rgba(255, 255, 255, 0.85);
    --weui-FG-HALF: rgba(255, 255, 255, 0.65);
    --weui-FG-1: rgba(255, 255, 255, 0.55);
    --weui-FG-2: rgba(255, 255, 255, 0.35);
    --weui-FG-3: rgba(255, 255, 255, 0.1);
    --weui-FG-4: rgba(255, 255, 255, 0.15);
    --weui-FG-5: rgba(255, 255, 255, 0.1);
    --weui-RED: #fa5151;
    --weui-ORANGERED: #ff6146;
    --weui-ORANGE: #c87d2f;
    --weui-YELLOW: #cc9c00;
    --weui-GREEN: #74a800;
    --weui-LIGHTGREEN: #3eb575;
    --weui-BRAND: #07c160;
    --weui-BLUE: #10aeff;
    --weui-INDIGO: #1196ff;
    --weui-PURPLE: #8183ff;
    --weui-WHITE: rgba(255, 255, 255, 0.8);
    --weui-LINK: #7d90a9;
    --weui-TEXTGREEN: #259c5c;
    --weui-FG: #fff;
    --weui-BG: #000;
    --weui-TAG-TEXT-RED: rgba(250, 81, 81, 0.6);
    --weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, 0.1);
    --weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, 0.6);
    --weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, 0.1);
    --weui-TAG-TEXT-GREEN: rgba(6, 174, 86, 0.6);
    --weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, 0.1);
    --weui-TAG-TEXT-BLUE: rgba(16, 174, 255, 0.6);
    --weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, 0.1);
    --weui-TAG-TEXT-BLACK: rgba(255, 255, 255, 0.5);
    --weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, 0.05);
    --weui-REDORANGE: #ff6146;
  }
}

.wx-root[data-weui-mode='care'][data-weui-theme='dark'],body[data-weui-mode='care'][data-weui-theme='dark'] {
  --weui-BG-0: #111;
  --weui-BG-1: #1e1e1e;
  --weui-BG-2: #191919;
  --weui-BG-3: #202020;
  --weui-BG-4: #404040;
  --weui-BG-5: #2c2c2c;
  --weui-FG-0: rgba(255, 255, 255, 0.85);
  --weui-FG-HALF: rgba(255, 255, 255, 0.65);
  --weui-FG-1: rgba(255, 255, 255, 0.55);
  --weui-FG-2: rgba(255, 255, 255, 0.35);
  --weui-FG-3: rgba(255, 255, 255, 0.1);
  --weui-FG-4: rgba(255, 255, 255, 0.15);
  --weui-FG-5: rgba(255, 255, 255, 0.1);
  --weui-RED: #fa5151;
  --weui-ORANGERED: #ff6146;
  --weui-ORANGE: #c87d2f;
  --weui-YELLOW: #cc9c00;
  --weui-GREEN: #74a800;
  --weui-LIGHTGREEN: #3eb575;
  --weui-BRAND: #07c160;
  --weui-BLUE: #10aeff;
  --weui-INDIGO: #1196ff;
  --weui-PURPLE: #8183ff;
  --weui-WHITE: rgba(255, 255, 255, 0.8);
  --weui-LINK: #7d90a9;
  --weui-TEXTGREEN: #259c5c;
  --weui-FG: #fff;
  --weui-BG: #000;
  --weui-TAG-TEXT-RED: rgba(250, 81, 81, 0.6);
  --weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, 0.1);
  --weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, 0.6);
  --weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, 0.1);
  --weui-TAG-TEXT-GREEN: rgba(6, 174, 86, 0.6);
  --weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, 0.1);
  --weui-TAG-TEXT-BLUE: rgba(16, 174, 255, 0.6);
  --weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, 0.1);
  --weui-TAG-TEXT-BLACK: rgba(255, 255, 255, 0.5);
  --weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, 0.05);
  --weui-REDORANGE: #ff6146;
}

.wx-root,body {
  --weui-BG-COLOR-ACTIVE: #ececec;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-BG-COLOR-ACTIVE: #373737;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-BG-COLOR-ACTIVE: #373737;
  }
}

[class^="weui-icon-"][class^="weui-icon-"],[class^="weui-icon-"][class*=" weui-icon-"],[class*=" weui-icon-"][class^="weui-icon-"],[class*=" weui-icon-"][class*=" weui-icon-"] {
  display: inline-block;
  vertical-align: middle;
  font-size: 10px;
  width: 2.4em;
  height: 2.4em;
  -webkit-mask-position: 50% 50%;
  mask-position: 50% 50%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
  mask-size: 100%;
  background-color: currentColor;
}

.weui-icon-circle {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%221000%22%20height%3D%221000%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M500%20916.667C269.881%20916.667%2083.333%20730.119%2083.333%20500%2083.333%20269.881%20269.881%2083.333%20500%2083.333c230.119%200%20416.667%20186.548%20416.667%20416.667%200%20230.119-186.548%20416.667-416.667%20416.667zm0-50c202.504%200%20366.667-164.163%20366.667-366.667%200-202.504-164.163-366.667-366.667-366.667-202.504%200-366.667%20164.163-366.667%20366.667%200%20202.504%20164.163%20366.667%20366.667%20366.667z%22%20fill-rule%3D%22evenodd%22%20fill-opacity%3D%22.9%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%221000%22%20height%3D%221000%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M500%20916.667C269.881%20916.667%2083.333%20730.119%2083.333%20500%2083.333%20269.881%20269.881%2083.333%20500%2083.333c230.119%200%20416.667%20186.548%20416.667%20416.667%200%20230.119-186.548%20416.667-416.667%20416.667zm0-50c202.504%200%20366.667-164.163%20366.667-366.667%200-202.504-164.163-366.667-366.667-366.667-202.504%200-366.667%20164.163-366.667%20366.667%200%20202.504%20164.163%20366.667%20366.667%20366.667z%22%20fill-rule%3D%22evenodd%22%20fill-opacity%3D%22.9%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-download {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11.25%2012.04l-1.72-1.72-1.06%201.06%202.828%202.83a1%201%200%20001.414-.001l2.828-2.828-1.06-1.061-1.73%201.73V7h-1.5v5.04zm0-5.04V2h1.5v5h6.251c.55%200%20.999.446.999.996v13.008a.998.998%200%2001-.996.996H4.996A.998.998%200%20014%2021.004V7.996A1%201%200%20014.999%207h6.251z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11.25%2012.04l-1.72-1.72-1.06%201.06%202.828%202.83a1%201%200%20001.414-.001l2.828-2.828-1.06-1.061-1.73%201.73V7h-1.5v5.04zm0-5.04V2h1.5v5h6.251c.55%200%20.999.446.999.996v13.008a.998.998%200%2001-.996.996H4.996A.998.998%200%20014%2021.004V7.996A1%201%200%20014.999%207h6.251z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-info {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-.75-12v7h1.5v-7h-1.5zM12%209a1%201%200%20100-2%201%201%200%20000%202z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-.75-12v7h1.5v-7h-1.5zM12%209a1%201%200%20100-2%201%201%200%20000%202z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-safe-success {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201000%201000%22%3E%3Cpath%20d%3D%22M500.9%204.6C315.5%2046.7%20180.4%2093.1%2057.6%20132c0%20129.3.2%20231.7.2%20339.7%200%20304.2%20248.3%20471.6%20443.1%20523.7C695.7%20943.3%20944%20775.9%20944%20471.7c0-108%20.2-210.4.2-339.7C821.4%2093.1%20686.3%2046.7%20500.9%204.6zm248.3%20349.1l-299.7%20295c-2.1%202-5.3%202-7.4-.1L304.4%20506.1c-2-2.1-2.3-5.7-.6-8l18.3-24.9c1.7-2.3%205-2.8%207.2-1l112.2%2086c2.3%201.8%206%201.7%208.1-.1l274.7-228.9c2.2-1.8%205.7-1.7%207.7.3l17%2016.8c2.2%202.1%202.2%205.3.2%207.4z%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20fill%3D%22%23070202%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201000%201000%22%3E%3Cpath%20d%3D%22M500.9%204.6C315.5%2046.7%20180.4%2093.1%2057.6%20132c0%20129.3.2%20231.7.2%20339.7%200%20304.2%20248.3%20471.6%20443.1%20523.7C695.7%20943.3%20944%20775.9%20944%20471.7c0-108%20.2-210.4.2-339.7C821.4%2093.1%20686.3%2046.7%20500.9%204.6zm248.3%20349.1l-299.7%20295c-2.1%202-5.3%202-7.4-.1L304.4%20506.1c-2-2.1-2.3-5.7-.6-8l18.3-24.9c1.7-2.3%205-2.8%207.2-1l112.2%2086c2.3%201.8%206%201.7%208.1-.1l274.7-228.9c2.2-1.8%205.7-1.7%207.7.3l17%2016.8c2.2%202.1%202.2%205.3.2%207.4z%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20fill%3D%22%23070202%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-safe-warn {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201000%201000%22%3E%3Cpath%20d%3D%22M500.9%204.5c-185.4%2042-320.4%2088.4-443.2%20127.3%200%20129.3.2%20231.7.2%20339.6%200%20304.1%20248.2%20471.4%20443%20523.6%20194.7-52.2%20443-219.5%20443-523.6%200-107.9.2-210.3.2-339.6C821.3%2092.9%20686.2%2046.5%20500.9%204.5zm-26.1%20271.1h52.1c5.8%200%2010.3%204.7%2010.1%2010.4l-11.6%20313.8c-.1%202.8-2.5%205.2-5.4%205.2h-38.2c-2.9%200-5.3-2.3-5.4-5.2L464.8%20286c-.2-5.8%204.3-10.4%2010-10.4zm26.1%20448.3c-20.2%200-36.5-16.3-36.5-36.5s16.3-36.5%2036.5-36.5%2036.5%2016.3%2036.5%2036.5-16.4%2036.5-36.5%2036.5z%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20fill%3D%22%23020202%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201000%201000%22%3E%3Cpath%20d%3D%22M500.9%204.5c-185.4%2042-320.4%2088.4-443.2%20127.3%200%20129.3.2%20231.7.2%20339.6%200%20304.1%20248.2%20471.4%20443%20523.6%20194.7-52.2%20443-219.5%20443-523.6%200-107.9.2-210.3.2-339.6C821.3%2092.9%20686.2%2046.5%20500.9%204.5zm-26.1%20271.1h52.1c5.8%200%2010.3%204.7%2010.1%2010.4l-11.6%20313.8c-.1%202.8-2.5%205.2-5.4%205.2h-38.2c-2.9%200-5.3-2.3-5.4-5.2L464.8%20286c-.2-5.8%204.3-10.4%2010-10.4zm26.1%20448.3c-20.2%200-36.5-16.3-36.5-36.5s16.3-36.5%2036.5-36.5%2036.5%2016.3%2036.5%2036.5-16.4%2036.5-36.5%2036.5z%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20fill%3D%22%23020202%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-success {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-1.177-7.86l-2.765-2.767L7%2012.431l3.119%203.121a1%201%200%20001.414%200l5.952-5.95-1.062-1.062-5.6%205.6z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-1.177-7.86l-2.765-2.767L7%2012.431l3.119%203.121a1%201%200%20001.414%200l5.952-5.95-1.062-1.062-5.6%205.6z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-success-circle {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6zm-1.172-6.242l5.809-5.808.848.849-5.95%205.95a1%201%200%2001-1.414%200L7%2012.426l.849-.849%202.98%202.98z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6zm-1.172-6.242l5.809-5.808.848.849-5.95%205.95a1%201%200%2001-1.414%200L7%2012.426l.849-.849%202.98%202.98z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-success-no-circle {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.657%2018.435L3%2012.778l1.414-1.414%204.95%204.95L20.678%205l1.414%201.414-12.02%2012.021a1%201%200%2001-1.415%200z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.657%2018.435L3%2012.778l1.414-1.414%204.95%204.95L20.678%205l1.414%201.414-12.02%2012.021a1%201%200%2001-1.415%200z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-waiting {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.75%2011.38V6h-1.5v6l4.243%204.243%201.06-1.06-3.803-3.804zM12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.75%2011.38V6h-1.5v6l4.243%204.243%201.06-1.06-3.803-3.804zM12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-waiting-circle {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.6%2011.503l3.891%203.891-.848.849L11.4%2012V6h1.2v5.503zM12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.6%2011.503l3.891%203.891-.848.849L11.4%2012V6h1.2v5.503zM12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-warn {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-.763-15.864l.11%207.596h1.305l.11-7.596h-1.525zm.759%2010.967c.512%200%20.902-.383.902-.882%200-.5-.39-.882-.902-.882a.878.878%200%2000-.896.882c0%20.499.396.882.896.882z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-.763-15.864l.11%207.596h1.305l.11-7.596h-1.525zm.759%2010.967c.512%200%20.902-.383.902-.882%200-.5-.39-.882-.902-.882a.878.878%200%2000-.896.882c0%20.499.396.882.896.882z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-outlined-warn {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12ZM20.8 12C20.8 16.8601 16.8601 20.8 12 20.8C7.13989 20.8 3.2 16.8601 3.2 12C3.2 7.13989 7.13989 3.2 12 3.2C16.8601 3.2 20.8 7.13989 20.8 12ZM12.6592 6.43115L12.5713 13.4917H11.4287L11.3408 6.43115H12.6592ZM11.165 16.2383C11.165 16.707 11.5312 17.0732 12 17.0732C12.4761 17.0732 12.835 16.707 12.835 16.2383C12.835 15.7622 12.4761 15.4033 12 15.4033C11.5312 15.4033 11.165 15.7622 11.165 16.2383Z' fill='black' /%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12ZM20.8 12C20.8 16.8601 16.8601 20.8 12 20.8C7.13989 20.8 3.2 16.8601 3.2 12C3.2 7.13989 7.13989 3.2 12 3.2C16.8601 3.2 20.8 7.13989 20.8 12ZM12.6592 6.43115L12.5713 13.4917H11.4287L11.3408 6.43115H12.6592ZM11.165 16.2383C11.165 16.707 11.5312 17.0732 12 17.0732C12.4761 17.0732 12.835 16.707 12.835 16.2383C12.835 15.7622 12.4761 15.4033 12 15.4033C11.5312 15.4033 11.165 15.7622 11.165 16.2383Z' fill='black' /%3E%3C/svg%3E%0A");
}

.weui-icon-info-circle {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6zM11.4%2010h1.2v7h-1.2v-7zm.6-1a1%201%200%20110-2%201%201%200%20010%202z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6zM11.4%2010h1.2v7h-1.2v-7zm.6-1a1%201%200%20110-2%201%201%200%20010%202z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-cancel {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6z%22%20fill-rule%3D%22nonzero%22%2F%3E%3Cpath%20d%3D%22M12.849%2012l3.11%203.111-.848.849L12%2012.849l-3.111%203.11-.849-.848L11.151%2012l-3.11-3.111.848-.849L12%2011.151l3.111-3.11.849.848L12.849%2012z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6z%22%20fill-rule%3D%22nonzero%22%2F%3E%3Cpath%20d%3D%22M12.849%2012l3.11%203.111-.848.849L12%2012.849l-3.111%203.11-.849-.848L11.151%2012l-3.11-3.111.848-.849L12%2011.151l3.111-3.11.849.848L12.849%2012z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E);
}

.weui-icon-search {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M16.31%2015.561l4.114%204.115-.848.848-4.123-4.123a7%207%200%2011.857-.84zM16.8%2011a5.8%205.8%200%2010-11.6%200%205.8%205.8%200%200011.6%200z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M16.31%2015.561l4.114%204.115-.848.848-4.123-4.123a7%207%200%2011.857-.84zM16.8%2011a5.8%205.8%200%2010-11.6%200%205.8%205.8%200%200011.6%200z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-clear {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M13.06%2012l3.006-3.005-1.06-1.06L12%2010.938%208.995%207.934l-1.06%201.06L10.938%2012l-3.005%203.005%201.06%201.06L12%2013.062l3.005%203.005%201.06-1.06L13.062%2012zM12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M13.06%2012l3.006-3.005-1.06-1.06L12%2010.938%208.995%207.934l-1.06%201.06L10.938%2012l-3.005%203.005%201.06%201.06L12%2013.062l3.005%203.005%201.06-1.06L13.062%2012zM12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-back {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm1.999-6.563L10.68%2012%2014%208.562%2012.953%207.5%209.29%2011.277a1.045%201.045%200%20000%201.446l3.663%203.777L14%2015.437z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm1.999-6.563L10.68%2012%2014%208.562%2012.953%207.5%209.29%2011.277a1.045%201.045%200%20000%201.446l3.663%203.777L14%2015.437z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-delete {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M6.774%206.4l.812%2013.648a.8.8%200%2000.798.752h7.232a.8.8%200%2000.798-.752L17.226%206.4H6.774zm11.655%200l-.817%2013.719A2%202%200%200115.616%2022H8.384a2%202%200%2001-1.996-1.881L5.571%206.4H3.5v-.7a.5.5%200%2001.5-.5h16a.5.5%200%2001.5.5v.7h-2.071zM14%203a.5.5%200%2001.5.5v.7h-5v-.7A.5.5%200%200110%203h4zM9.5%209h1.2l.5%209H10l-.5-9zm3.8%200h1.2l-.5%209h-1.2l.5-9z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M6.774%206.4l.812%2013.648a.8.8%200%2000.798.752h7.232a.8.8%200%2000.798-.752L17.226%206.4H6.774zm11.655%200l-.817%2013.719A2%202%200%200115.616%2022H8.384a2%202%200%2001-1.996-1.881L5.571%206.4H3.5v-.7a.5.5%200%2001.5-.5h16a.5.5%200%2001.5.5v.7h-2.071zM14%203a.5.5%200%2001.5.5v.7h-5v-.7A.5.5%200%200110%203h4zM9.5%209h1.2l.5%209H10l-.5-9zm3.8%200h1.2l-.5%209h-1.2l.5-9z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-success-no-circle-thin {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.864%2016.617l-5.303-5.303-1.061%201.06%205.657%205.657a1%201%200%20001.414%200L21.238%206.364l-1.06-1.06L8.864%2016.616z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.864%2016.617l-5.303-5.303-1.061%201.06%205.657%205.657a1%201%200%20001.414%200L21.238%206.364l-1.06-1.06L8.864%2016.616z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-arrow {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-arrow-bold {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20height%3D%2224%22%20width%3D%2212%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10.157%2012.711L4.5%2018.368l-1.414-1.414%204.95-4.95-4.95-4.95L4.5%205.64l5.657%205.657a1%201%200%20010%201.414z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20height%3D%2224%22%20width%3D%2212%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10.157%2012.711L4.5%2018.368l-1.414-1.414%204.95-4.95-4.95-4.95L4.5%205.64l5.657%205.657a1%201%200%20010%201.414z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-back-arrow {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3.343%2012l7.071%207.071L9%2020.485l-7.778-7.778a1%201%200%20010-1.414L9%203.515l1.414%201.414L3.344%2012z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3.343%2012l7.071%207.071L9%2020.485l-7.778-7.778a1%201%200%20010-1.414L9%203.515l1.414%201.414L3.344%2012z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-back-arrow-thin {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10%2019.438L8.955%2020.5l-7.666-7.79a1.02%201.02%200%20010-1.42L8.955%203.5%2010%204.563%202.682%2012%2010%2019.438z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10%2019.438L8.955%2020.5l-7.666-7.79a1.02%201.02%200%20010-1.42L8.955%203.5%2010%204.563%202.682%2012%2010%2019.438z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-close {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.25 10.6932L6.05682 4.5L5 5.55682L11.1932 11.75L5 17.9432L6.05682 19L12.25 12.8068L18.4432 19L19.5 17.9432L13.3068 11.75L19.5 5.55682L18.4432 4.5L12.25 10.6932Z' fill='black' /%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.25 10.6932L6.05682 4.5L5 5.55682L11.1932 11.75L5 17.9432L6.05682 19L12.25 12.8068L18.4432 19L19.5 17.9432L13.3068 11.75L19.5 5.55682L18.4432 4.5L12.25 10.6932Z' fill='black' /%3E%3C/svg%3E%0A");
}

.weui-icon-close-thin {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.25%2010.693L6.057%204.5%205%205.557l6.193%206.193L5%2017.943%206.057%2019l6.193-6.193L18.443%2019l1.057-1.057-6.193-6.193L19.5%205.557%2018.443%204.5z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.25%2010.693L6.057%204.5%205%205.557l6.193%206.193L5%2017.943%206.057%2019l6.193-6.193L18.443%2019l1.057-1.057-6.193-6.193L19.5%205.557%2018.443%204.5z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-back-circle {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6zm1.999-5.363L12.953%2016.5%209.29%2012.723a1.045%201.045%200%20010-1.446L12.953%207.5%2014%208.563%2010.68%2012%2014%2015.438z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm0-1.2a8.8%208.8%200%20100-17.6%208.8%208.8%200%20000%2017.6zm1.999-5.363L12.953%2016.5%209.29%2012.723a1.045%201.045%200%20010-1.446L12.953%207.5%2014%208.563%2010.68%2012%2014%2015.438z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-icon-success {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-icon-waiting {
  color: #10aeff;
  color: var(--weui-BLUE);
}

.weui-icon-warn {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-icon-info {
  color: #10aeff;
  color: var(--weui-BLUE);
}

.weui-icon-success-circle {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-icon-success-no-circle,.weui-icon-success-no-circle-thin {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-icon-waiting-circle {
  color: #10aeff;
  color: var(--weui-BLUE);
}

.weui-icon-circle {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

.weui-icon-download {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-icon-info-circle {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

.weui-icon-safe-success {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-icon-safe-warn {
  color: #ffc300;
  color: var(--weui-YELLOW);
}

.weui-icon-cancel {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-icon-search {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-icon-clear {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

.weui-icon-clear:active {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-icon-delete.weui-icon_gallery-delete {
  color: #fff;
  color: var(--weui-WHITE);
}

.weui-icon-arrow.weui-icon-arrow,.weui-icon-arrow.weui-icon-arrow-bold,.weui-icon-arrow.weui-icon-back-arrow,.weui-icon-arrow.weui-icon-back-arrow-thin,.weui-icon-arrow-bold.weui-icon-arrow,.weui-icon-arrow-bold.weui-icon-arrow-bold,.weui-icon-arrow-bold.weui-icon-back-arrow,.weui-icon-arrow-bold.weui-icon-back-arrow-thin,.weui-icon-back-arrow.weui-icon-arrow,.weui-icon-back-arrow.weui-icon-arrow-bold,.weui-icon-back-arrow.weui-icon-back-arrow,.weui-icon-back-arrow.weui-icon-back-arrow-thin,.weui-icon-back-arrow-thin.weui-icon-arrow,.weui-icon-back-arrow-thin.weui-icon-arrow-bold,.weui-icon-back-arrow-thin.weui-icon-back-arrow,.weui-icon-back-arrow-thin.weui-icon-back-arrow-thin {
  width: 1.2em;
}

.weui-icon-arrow,.weui-icon-arrow-bold {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

.weui-icon-back-arrow,.weui-icon-back-arrow-thin {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-icon-back,.weui-icon-back-circle {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-icon_msg.weui-icon_msg {
  width: 6.4em;
  height: 6.4em;
}

.weui-icon_msg.weui-icon_msg.weui-icon-warn {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-icon_msg.weui-icon_msg.weui-icon-info-circle {
  color: #10aeff;
  color: var(--weui-BLUE);
}

.weui-icon_msg-primary.weui-icon_msg-primary {
  width: 6.4em;
  height: 6.4em;
}

.weui-icon_msg-primary.weui-icon_msg-primary.weui-icon-warn {
  color: #ffc300;
  color: var(--weui-YELLOW);
}

.weui-hidden_abs {
  opacity: 0;
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.weui-a11y_ref {
  display: none;
}

.weui-hidden-space:empty::before {
  content: "\00A0";
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.weui-a11y-combo {
  position: relative;
}

.weui-a11y-combo__helper {
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.weui-a11y-combo__content {
  position: relative;
  z-index: 1;
}

.weui-wa-hotarea-el {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  min-width: 44px;
  min-height: 44px;
  width: 100%;
  height: 100%;
}

.weui-wa-hotarea-el__wrp,.weui-wa-hotarea,.weui-wa-hotarea_before {
  position: relative;
}

.weui-wa-hotarea-el__wrp a,.weui-wa-hotarea a,.weui-wa-hotarea_before a,.weui-wa-hotarea-el__wrp button,.weui-wa-hotarea button,.weui-wa-hotarea_before button,.weui-wa-hotarea-el__wrp navigator,.weui-wa-hotarea navigator,.weui-wa-hotarea_before navigator {
  position: relative;
  z-index: 1;
}

.weui-wa-hotarea_before::before,.weui-wa-hotarea::after {
  content: "";
  pointer-events: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  min-width: 44px;
  min-height: 44px;
  width: 100%;
  height: 100%;
}

.weui-link {
  color: #576b95;
  color: var(--weui-LINK);
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-link:visited {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-link:active {
  opacity: 0.5;
}

.weui-btn {
  position: relative;
  display: block;
  width: 184px;
  margin-left: auto;
  margin-right: auto;
  padding: 12px 24px;
  box-sizing: border-box;
  font-weight: 500;
  font-size: 17px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  line-height: 1.41176471;
  border-radius: 8px;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  -webkit-user-select: none;
  user-select: none;
}

.weui-btn:active::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.1);
  background-color: var(--weui-BTN-ACTIVE-MASK);
  border-radius: 8px;
}

.weui-btn:active.weui-btn_loading::before,.weui-btn:active.weui-btn_disabled::before,.weui-btn:active[disabled]::before {
  display: none;
}

.weui-btn_block {
  width: auto;
}

.weui-btn_inline {
  display: inline-block;
}

.weui-btn_default {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  background-color: rgba(0,0,0,0.05);
  background-color: var(--weui-FG-5);
}

.weui-btn_default:not(.weui-btn_disabled):visited {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-btn_primary {
  background-color: #07c160;
  background-color: var(--weui-BRAND);
}

.weui-btn_primary:not(.weui-btn_disabled):visited {
  color: #fff;
}

.weui-btn_warn {
  color: #fa5151;
  color: var(--weui-RED);
  background-color: rgba(0,0,0,0.05);
  background-color: var(--weui-FG-5);
}

.weui-btn_warn:not(.weui-btn_disabled):visited {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-btn_overlay {
  color: #07c160;
  color: var(--weui-BRAND);
  background-color: #ffffff;
}

.weui-btn_overlay:not(.weui-btn_disabled):visited {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-btn_disabled,.weui-btn[disabled] {
  color: rgba(0,0,0,0.15);
  color: var(--weui-FG-4);
  background-color: #f7f7f7;
  background-color: var(--weui-BG-1);
}

.weui-btn_loading .weui-loading {
  margin: -0.2em 8px 0 0;
}

.weui-btn_loading .weui-mask-loading {
  margin: -0.2em 8px 0 0;
  color: currentColor;
}

.weui-btn_loading .weui-primary-loading {
  margin: -0.2em 8px 0 0;
  vertical-align: middle;
  color: currentColor;
}

.weui-btn_loading .weui-primary-loading::before {
  content: "";
}

.weui-btn_loading.weui-btn_primary {
  color: #fff;
  color: var(--weui-WHITE);
}

.weui-btn_cell {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  font-size: 17px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  line-height: 1.41176471;
  padding: 16px;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  overflow: hidden;
  background-color: #fff;
  background-color: var(--weui-BG-5);
}

.weui-btn_cell+.weui-btn_cell {
  margin-top: 16px;
}

.weui-btn_cell:active {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-btn_cell__icon {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  margin: -0.2em 0.34em 0 0;
}

.weui-btn_cell-default {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-btn_cell-primary {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-btn_cell-warn {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-bottom-fixed-opr-page {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.weui-bottom-fixed-opr-page__content {
  min-height: 0;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  padding-bottom: 80px;
  box-sizing: border-box;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.weui-bottom-fixed-opr-page__tool {
  padding: 16px 32px 24px;
  padding: 16px calc(32px + constant(safe-area-inset-right)) calc(24px + constant(safe-area-inset-bottom)) calc(32px + constant(safe-area-inset-left));
  padding: 16px calc(32px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(32px + env(safe-area-inset-left));
  background: #ffffff;
  position: relative;
  z-index: 50;
}

.weui-bottom-fixed-opr-page__tool::before {
  content: "";
  height: 80px;
  background: -webkit-linear-gradient(bottom,#ffffff,rgba(255,255,255,0));
  background: linear-gradient(to top,#ffffff,rgba(255,255,255,0));
  position: absolute;
  bottom: calc(100% - 1px);
  left: 0;
  right: 0;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
  pointer-events: none;
}

.wx-root[data-weui-theme='dark'] .weui-bottom-fixed-opr-page__tool,body[data-weui-theme='dark'] .weui-bottom-fixed-opr-page__tool {
  background: #191919;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']) .weui-bottom-fixed-opr-page__tool,body:not([data-weui-theme='light']) .weui-bottom-fixed-opr-page__tool {
    background: #191919;
  }
}

.wx-root[data-weui-theme='dark'] .weui-bottom-fixed-opr-page__tool::before,body[data-weui-theme='dark'] .weui-bottom-fixed-opr-page__tool::before {
  background: -webkit-linear-gradient(bottom,#191919,rgba(25,25,25,0));
  background: linear-gradient(to top,#191919,rgba(25,25,25,0));
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']) .weui-bottom-fixed-opr-page__tool::before,body:not([data-weui-theme='light']) .weui-bottom-fixed-opr-page__tool::before {
    background: -webkit-linear-gradient(bottom,#191919,rgba(25,25,25,0));
    background: linear-gradient(to top,#191919,rgba(25,25,25,0));
  }
}

.weui-bottom-fixed-opr-page__tips {
  margin-bottom: 24px;
  padding: 0 32px;
  text-align: center;
}

.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn {
  width: 184px;
  padding-left: 16px;
  padding-right: 16px;
}

.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2),.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn {
  margin: 0 8px;
  width: 136px;
}

.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):first-child,.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:first-child {
  margin-left: 0;
}

.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):last-child,.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:last-child {
  margin-right: 0;
}

.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2),.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn {
  width: 184px;
  margin: 16px 0 0;
}

.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):first-child,.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:first-child {
  margin-top: 0;
}

.weui-bottom-fixed-opr-page.weui-form {
  padding-top: 0;
}

.weui-bottom-fixed-opr-page.weui-form .weui-form__bd {
  padding-top: 56px;
  padding-top: calc(56px + constant(safe-area-inset-top));
  padding-top: calc(56px + env(safe-area-inset-top));
}

.weui-bottom-fixed-opr-page.weui-form .weui-form__ft {
  padding-bottom: 0;
}

.weui-bottom-fixed-opr-page.weui-form .weui-form__control-area {
  margin-bottom: 0;
}

.weui-bottom-fixed-opr-page.weui-half-screen-dialog {
  padding: 0;
}

.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__hd,.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__bd,.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__ft {
  padding-left: 24px;
  padding-left: calc(24px + constant(safe-area-inset-left));
  padding-left: calc(24px + env(safe-area-inset-left));
  padding-right: 24px;
  padding-right: calc(24px + constant(safe-area-inset-right));
  padding-right: calc(24px + env(safe-area-inset-right));
}

.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__bd {
  padding-bottom: 80px;
}

.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__ft {
  padding-bottom: 64px;
  padding-bottom: calc(64px + constant(safe-area-inset-bottom));
  padding-bottom: calc(64px + env(safe-area-inset-bottom));
}

.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog {
  padding: 0;
}

.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__hd {
  padding: 0 24px;
  padding: 0 calc(24px + constant(safe-area-inset-right)) 0 calc(24px + constant(safe-area-inset-left));
  padding: 0 calc(24px + env(safe-area-inset-right)) 0 calc(24px + env(safe-area-inset-left));
}

.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__bd {
  padding-bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__ft {
  padding: 0;
}

.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr-page {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-height: 0;
}

.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr-page__content {
  padding: 0 24px;
  padding: 0 calc(24px + constant(safe-area-inset-right)) 0 calc(24px + constant(safe-area-inset-left));
  padding: 0 calc(24px + env(safe-area-inset-right)) 0 calc(24px + env(safe-area-inset-left));
}

.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr {
  padding: 16px 0 64px;
  padding: 16px 0 calc(64px + constant(safe-area-inset-bottom));
  padding: 16px 0 calc(64px + env(safe-area-inset-bottom));
}

button.weui-btn,input.weui-btn {
  border-width: 0;
  outline: 0;
  -webkit-appearance: none;
}

button.weui-btn:focus,input.weui-btn:focus {
  outline: 0;
}

button.weui-btn_inline,input.weui-btn_inline,button.weui-btn_mini,input.weui-btn_mini {
  width: auto;
}

.weui-btn_medium {
  font-size: 14px;
  padding: 10px 24px;
  line-height: calc((40 - 20) / 14);
  line-height: calc((var(--weui-BTN-HEIGHT-MEDIUM) - 20) / 14);
}

.weui-btn_mini {
  display: inline-block;
  width: auto;
  line-height: calc((32 - 12) / 14);
  padding: 6px 12px;
  font-size: 14px;
  border-radius: 6px;
}

.weui-btn_xmini {
  display: inline-block;
  width: auto;
  padding: 4px 12px;
  line-height: calc((28 - 8) / 14);
  font-size: 14px;
  font-weight: 500;
  border-radius: 4px;
}

.weui-btn+.weui-btn {
  margin-top: 16px;
}

.weui-btn.weui-btn_mini+.weui-btn.weui-btn_mini {
  margin-top: auto;
}

.weui-btn.weui-btn_xmini+.weui-btn.weui-btn_xmini {
  margin-top: auto;
}

.weui-btn.weui-btn_inline+.weui-btn.weui-btn_inline {
  margin-left: 16px;
}

.weui-btn-area {
  margin: 48px 16px 8px;
}

.weui-btn-area_inline {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.weui-btn-area_inline .weui-btn {
  margin-top: auto;
  margin-right: 16px;
  width: 100%;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

.weui-btn-area_inline .weui-btn:last-child {
  margin-right: 0;
}

.weui-btn_reset {
  background: transparent;
  border: 0;
  padding: 0;
  outline: 0;
  font-size: inherit;
}

.weui-btn_icon {
  background: transparent;
  border: 0;
  padding: 0;
  outline: 0;
  font-size: 0;
}

.weui-btn_icon:active [class*="weui-icon-"] {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-cells {
  margin-top: 8px;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  overflow: hidden;
  position: relative;
}

.weui-cells::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  z-index: 2;
}

.weui-cells::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  z-index: 2;
}

.weui-cells__title {
  margin-top: 16px;
  margin-bottom: 3px;
  padding-left: 16px;
  padding-right: 16px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  font-size: 14px;
  line-height: 1.4;
}

.weui-cells__title+.weui-cells {
  margin-top: 0;
}

.weui-cells__tips {
  margin-top: 8px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  padding-left: 16px;
  padding-right: 16px;
  font-size: 14px;
  line-height: 1.4;
}

.weui-cells__tips a,.weui-cells__tips navigator {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-cells__tips navigator {
  display: inline;
}

.weui-cell {
  padding: 16px;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  line-height: 1.41176471;
  font-size: 17px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-cell::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  left: 16px;
  z-index: 2;
}

.weui-cell:first-child::before {
  display: none;
}

.weui-cell_active:active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0,0,0,0.1);
  background: var(--weui-FG-3);
  pointer-events: none;
}

.weui-cell_primary {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.weui-cell_vertical {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.weui-cell_vertical .weui-cell__hd {
  padding-right: 0;
  margin-bottom: 12px;
}

.weui-cell_vertical .weui-cell__hd,.weui-cell_vertical .weui-cell__bd {
  width: 100%;
}

.weui-cell__bd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-width: 0;
}

.weui-cell__ft {
  text-align: right;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-cell__ft button {
  vertical-align: bottom;
}

.weui-cell__desc {
  font-size: 12px;
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  line-height: 1.4;
  padding-top: 4px;
}

.weui-cell_swiped {
  display: block;
  padding: 0;
}

.weui-cell_swiped>.weui-cell__bd {
  position: relative;
  z-index: 1;
  background-color: #fff;
  background-color: var(--weui-BG-2);
}

.weui-cell_swiped>.weui-cell__ft {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  color: #fff;
}

.weui-swiped-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  padding: 16px 1em;
  line-height: 1.41176471;
  color: inherit;
}

.weui-swiped-btn_default {
  background-color: #ededed;
  background-color: var(--weui-BG-0);
}

.weui-swiped-btn_warn {
  background-color: #fa5151;
  background-color: var(--weui-RED);
}

.weui-cell_access {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  color: inherit;
}

.weui-cell_access:active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0,0,0,0.1);
  background: var(--weui-FG-3);
  pointer-events: none;
}

.weui-cell_access .weui-cell__ft {
  padding-right: 24px;
  position: relative;
}

.weui-cell_access .weui-cell__ft::after {
  content: " ";
  width: 12px;
  height: 24px;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
  mask-size: 100%;
  background-color: currentColor;
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -12px;
}

.weui-cell_link {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-cell_link:first-child::before {
  display: block;
}

.weui-check__label {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-check__label.weui-cell_readonly,.weui-check__label.weui-cell_disabled {
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
}

.weui-check {
  opacity: 0;
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

.weui-check[disabled]+.weui-icon-checked {
  opacity: 0.1;
}

.weui-cells_radio .weui-cell__ft {
  padding-left: 16px;
  font-size: 0;
}

.weui-cells_radio .weui-check+.weui-icon-checked {
  min-width: 16px;
  color: transparent;
}

.weui-cells_radio .weui-check:checked+.weui-icon-checked,.weui-cells_radio .weui-check[aria-checked="true"]+.weui-icon-checked {
  color: #07c160;
  color: var(--weui-BRAND);
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.657%2018.435L3%2012.778l1.414-1.414%204.95%204.95L20.678%205l1.414%201.414-12.02%2012.021a1%201%200%2001-1.415%200z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.657%2018.435L3%2012.778l1.414-1.414%204.95%204.95L20.678%205l1.414%201.414-12.02%2012.021a1%201%200%2001-1.415%200z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.weui-cells_checkbox .weui-check__label::before {
  left: 55px;
}

.weui-cells_checkbox .weui-cell__hd {
  padding-right: 16px;
  font-size: 0;
}

.weui-cells_checkbox .weui-icon-checked {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%221000%22%20height%3D%221000%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M500%20916.667C269.881%20916.667%2083.333%20730.119%2083.333%20500%2083.333%20269.881%20269.881%2083.333%20500%2083.333c230.119%200%20416.667%20186.548%20416.667%20416.667%200%20230.119-186.548%20416.667-416.667%20416.667zm0-50c202.504%200%20366.667-164.163%20366.667-366.667%200-202.504-164.163-366.667-366.667-366.667-202.504%200-366.667%20164.163-366.667%20366.667%200%20202.504%20164.163%20366.667%20366.667%20366.667z%22%20fill-rule%3D%22evenodd%22%20fill-opacity%3D%22.9%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%221000%22%20height%3D%221000%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M500%20916.667C269.881%20916.667%2083.333%20730.119%2083.333%20500%2083.333%20269.881%20269.881%2083.333%20500%2083.333c230.119%200%20416.667%20186.548%20416.667%20416.667%200%20230.119-186.548%20416.667-416.667%20416.667zm0-50c202.504%200%20366.667-164.163%20366.667-366.667%200-202.504-164.163-366.667-366.667-366.667-202.504%200-366.667%20164.163-366.667%20366.667%200%20202.504%20164.163%20366.667%20366.667%20366.667z%22%20fill-rule%3D%22evenodd%22%20fill-opacity%3D%22.9%22%2F%3E%3C%2Fsvg%3E);
}

.weui-cells_checkbox .weui-check:checked+.weui-icon-checked,.weui-cells_checkbox .weui-check[aria-checked="true"]+.weui-icon-checked {
  color: #07c160;
  color: var(--weui-BRAND);
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-1.177-7.86l-2.765-2.767L7%2012.431l3.119%203.121a1%201%200%20001.414%200l5.952-5.95-1.062-1.062-5.6%205.6z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-1.177-7.86l-2.765-2.767L7%2012.431l3.119%203.121a1%201%200%20001.414%200l5.952-5.95-1.062-1.062-5.6%205.6z%22%2F%3E%3C%2Fsvg%3E);
}

.weui-label {
  display: block;
  width: 105px;
  word-wrap: break-word;
  word-break: break-all;
}

.weui-input {
  width: 100%;
  border: 0;
  outline: 0;
  -webkit-appearance: none;
  background-color: transparent;
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  height: 1.41176471em;
  line-height: 1.41176471;
}

.weui-input::-webkit-outer-spin-button,.weui-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.weui-input:focus:not(:placeholder-shown)+.weui-btn_input-clear {
  display: inline;
}

.weui-textarea {
  display: block;
  border: 0;
  resize: none;
  background: transparent;
  width: 100%;
  color: inherit;
  font-size: 1em;
  font-family: inherit;
  line-height: inherit;
  height: 80px;
  outline: 0;
}

.weui-textarea-counter {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  text-align: right;
  font-size: 14px;
}

.weui-cell_warn .weui-textarea-counter {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-cell_warn {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-cell_warn .weui-icon-warn {
  display: inline-block;
}

.weui-cell_readonly .weui-input:disabled,.weui-cell_disabled .weui-input:disabled,.weui-cell_readonly .weui-textarea:disabled,.weui-cell_disabled .weui-textarea:disabled {
  opacity: 1;
  -webkit-text-fill-color: rgba(0,0,0,0.55);
  -webkit-text-fill-color: var(--weui-FG-1);
}

.weui-cell_readonly .weui-input[disabled],.weui-cell_disabled .weui-input[disabled],.weui-cell_readonly .weui-textarea[disabled],.weui-cell_disabled .weui-textarea[disabled],.weui-cell_readonly .weui-input[readonly],.weui-cell_disabled .weui-input[readonly],.weui-cell_readonly .weui-textarea[readonly],.weui-cell_disabled .weui-textarea[readonly] {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-btn_input-clear {
  display: none;
  padding-left: 8px;
}

.weui-btn_input-clear [class*="weui-icon-"] {
  width: 18px;
}

.weui-cells_form .weui-cell_switch:active,.weui-cells_form .weui-cell_vcode:active,.weui-cells_form .weui-cell_readonly:active,.weui-cells_form .weui-cell_disabled:active {
  background-color: transparent;
}

.weui-cells_form .weui-cell__ft {
  font-size: 0;
}

.weui-cells_form .weui-icon-warn {
  display: none;
}

.weui-cells_form input,.weui-cells_form textarea,.weui-cells_form label[for] {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-form-preview {
  position: relative;
  background-color: #fff;
  background-color: var(--weui-BG-2);
}

.weui-form-preview::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-form-preview::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-form-preview__hd {
  position: relative;
  padding: 16px;
  text-align: right;
  line-height: 2.5em;
}

.weui-form-preview__hd::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  left: 16px;
}

.weui-form-preview__hd .weui-form-preview__value {
  font-style: normal;
  font-size: 1.6em;
}

.weui-form-preview__bd {
  padding: 16px;
  font-size: 0.9em;
  text-align: right;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  line-height: 2;
}

.weui-form-preview__ft {
  position: relative;
  line-height: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.weui-form-preview__ft::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-DIALOG-LINE-COLOR);
  color: rgba(0,0,0,0.1);
  color: var(--weui-DIALOG-LINE-COLOR);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-form-preview__item {
  overflow: hidden;
}

.weui-form-preview__label {
  float: left;
  margin-right: 1em;
  width: 4.2em;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  text-align: left;
}

.weui-form-preview__value {
  display: block;
  overflow: hidden;
  word-break: normal;
  word-wrap: break-word;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-form-preview__btn {
  position: relative;
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  color: #576b95;
  color: var(--weui-LINK);
  text-align: center;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

button.weui-form-preview__btn {
  background-color: transparent;
  border: 0;
  outline: 0;
  line-height: inherit;
  font-size: inherit;
}

.weui-form-preview__btn:active {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-form-preview__btn::after {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-left: 1px solid rgba(0,0,0,0.1);
  border-left: 1px solid var(--weui-DIALOG-LINE-COLOR);
  color: rgba(0,0,0,0.1);
  color: var(--weui-DIALOG-LINE-COLOR);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

.weui-form-preview__btn:first-child::after {
  display: none;
}

.weui-form-preview__btn_default {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-HALF);
}

.weui-form-preview__btn_primary {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-form-preview__list {
  padding-top: 24px;
  padding-bottom: 24px;
  line-height: 1.4;
  font-size: 14px;
  position: relative;
}

.weui-form-preview__list::before {
  content: "";
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-form-preview__list:last-child {
  padding-bottom: 0;
}

.weui-form-preview__list .weui-form-preview__label {
  text-align: left;
  width: 6em;
}

.weui-form-preview__list .weui-form-preview__value {
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-form-preview__list .weui-form-preview__item {
  margin-top: 12px;
}

.weui-form-preview__list .weui-form-preview__item:first-child {
  margin-top: 0;
}

.weui-form-preview__list>.weui-cells__title:first-child {
  margin-top: 0;
}

.weui-cell_select {
  padding: 0;
}

.weui-cell_select .weui-cell__bd::after {
  content: " ";
  width: 12px;
  height: 24px;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
  mask-size: 100%;
  background-color: currentColor;
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -12px;
}

.weui-select {
  -webkit-appearance: none;
  border: 0;
  outline: 0;
  background-color: transparent;
  width: 100%;
  font-size: inherit;
  min-height: 56px;
  line-height: 56px;
  position: relative;
  z-index: 1;
  padding-left: 16px;
  padding-right: 40px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  vertical-align: bottom;
  box-sizing: border-box;
}

.weui-cell_select-before .weui-cell__hd {
  padding-left: 0;
  position: relative;
}

.weui-cell_select-before .weui-cell__hd::after {
  content: " ";
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-right: 1px solid rgba(0,0,0,0.1);
  border-right: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

.weui-cell_select-before .weui-cell__hd::before {
  content: " ";
  width: 12px;
  height: 24px;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
  mask-size: 100%;
  background-color: currentColor;
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M2.454%206.58l1.06-1.06%205.78%205.779a.996.996%200%20010%201.413l-5.78%205.779-1.06-1.061%205.425-5.425-5.425-5.424z%22%20fill%3D%22%23B2B2B2%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  position: absolute;
  top: 50%;
  right: 16px;
  margin-top: -12px;
}

.weui-cell_select-before .weui-cell__bd {
  padding-left: 16px;
}

.weui-cell_select-before .weui-cell__bd::after {
  display: none;
}

.weui-cell_select-before .weui-select {
  max-width: 5em;
  width: 105px;
  box-sizing: content-box;
}

.weui-cell_select-after .weui-cell__hd {
  padding-left: 16px;
}

.weui-cell_select-after .weui-select {
  padding-left: 0;
}

.weui-cell_vcode {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
}

.weui-vcode-img {
  margin-left: 5px;
  height: 56px;
  vertical-align: middle;
}

.weui-vcode-btn {
  display: inline-block;
  height: 56px;
  margin-left: 5px;
  padding: 0 0.6em 0 0.7em;
  line-height: 56px;
  vertical-align: middle;
  font-size: 17px;
  color: #576b95;
  color: var(--weui-LINK);
  position: relative;
}

.weui-vcode-btn::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-left: 1px solid rgba(0,0,0,0.1);
  border-left: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

button.weui-vcode-btn {
  background-color: transparent;
  border: 0;
  outline: 0;
}

.weui-vcode-btn:active {
  color: var(--weui-LINK-ACTIVE);
  color: var(--weui-LINK-ACTIVE);
}

.weui-gallery {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000;
  z-index: 1000;
}

.weui-gallery__img,.weui-gallery__opr {
  position: absolute;
  left: 0;
  left: constant(safe-area-inset-left);
  left: env(safe-area-inset-left);
  right: 0;
  right: constant(safe-area-inset-right);
  right: env(safe-area-inset-right);
}

.weui-gallery__img {
  top: 0;
  top: constant(safe-area-inset-top);
  top: env(safe-area-inset-top);
  bottom: 60px;
  bottom: calc(60px + constant(safe-area-inset-bottom));
  bottom: calc(60px + env(safe-area-inset-bottom));
  width: 100%;
  background: center center no-repeat;
  background-size: contain;
}

.weui-gallery__opr {
  position: absolute;
  bottom: 0;
  background-color: #0d0d0d;
  color: #fff;
  color: var(--weui-WHITE);
  line-height: 60px;
  text-align: center;
}

.weui-gallery__del {
  display: block;
  padding-bottom: 0;
  padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
}

.weui-gallery__del:active {
  opacity: 0.5;
}

.weui-cell_switch {
  padding-top: 12px;
  padding-bottom: 12px;
}

.weui-cell_switch.weui-cell_readonly,.weui-cell_switch.weui-cell_disabled {
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
}

.weui-switch {
  -webkit-appearance: none;
  appearance: none;
}

.weui-switch,.weui-switch-cp__box {
  vertical-align: bottom;
  position: relative;
  width: 52px;
  height: 32px;
  background-color: rgba(0,0,0,0.1);
  background-color: var(--weui-FG-3);
  border: 0;
  padding: 2px;
  outline: 0;
  border-radius: 16px;
  box-sizing: border-box;
  -webkit-transition: background-color 0.1s,border 0.1s;
  transition: background-color 0.1s,border 0.1s;
}

.weui-switch::after,.weui-switch-cp__box::after {
  content: " ";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 28px;
  height: 28px;
  border-radius: 15px;
  background-color: #fff;
  box-shadow: 0 2px 3px 0 rgba(0,0,0,0.06);
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.4,0.4,0.25,1.35);
  transition: -webkit-transform 0.35s cubic-bezier(0.4,0.4,0.25,1.35);
  transition: transform 0.35s cubic-bezier(0.4,0.4,0.25,1.35);
  transition: transform 0.35s cubic-bezier(0.4,0.4,0.25,1.35),-webkit-transform 0.35s cubic-bezier(0.4,0.4,0.25,1.35);
}

.weui-switch:checked,.weui-switch-cp__input:checked+.weui-switch-cp__box,.weui-switch-cp__input[aria-checked="true"]+.weui-switch-cp__box {
  background-color: #07c160;
  background-color: var(--weui-BRAND);
}

.weui-switch:checked::after,.weui-switch-cp__input:checked+.weui-switch-cp__box::after,.weui-switch-cp__input[aria-checked="true"]+.weui-switch-cp__box::after {
  -webkit-transform: translateX(20px);
  transform: translateX(20px);
}

.weui-switch[disabled],.weui-switch-cp__input[disabled]+.weui-switch-cp__box,.weui-switch-cp__input[aria-disabled="true"]+.weui-switch-cp__box {
  opacity: 0.1;
}

.weui-switch-cp__input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
}

.weui-switch-cp__box {
  display: block;
}

.weui-cell_uploader {
  padding-bottom: 24px;
}

.weui-uploader {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

.weui-uploader__hd {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  padding-bottom: 12px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-uploader__title {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

.weui-uploader__info {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

.weui-uploader__bd {
  margin-bottom: -8px;
  margin-right: -8px;
  overflow: hidden;
}

.weui-uploader__files {
  list-style: none;
}

.weui-uploader__file {
  float: left;
  margin-right: 8px;
  margin-bottom: 8px;
  width: 96px;
  height: 96px;
  background: no-repeat center center;
  background-size: cover;
}

.weui-uploader__file_status {
  position: relative;
}

.weui-uploader__file_status::before {
  content: " ";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0,0,0,0.5);
}

.weui-uploader__file_status .weui-uploader__file-content {
  display: block;
}

.weui-uploader__file-content {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  color: #fff;
  color: var(--weui-WHITE);
}

.weui-uploader__file-content .weui-icon-warn {
  display: inline-block;
}

.weui-uploader__input-box {
  float: left;
  position: relative;
  margin-right: 8px;
  margin-bottom: 8px;
  width: 96px;
  height: 96px;
  box-sizing: border-box;
  background-color: #ededed;
}

.wx-root[data-weui-theme='dark'] .weui-uploader__input-box,body[data-weui-theme='dark'] .weui-uploader__input-box {
  background-color: #2e2e2e;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']) .weui-uploader__input-box,body:not([data-weui-theme='light']) .weui-uploader__input-box {
    background-color: #2e2e2e;
  }
}

.weui-uploader__input-box::before,.weui-uploader__input-box::after {
  content: " ";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  background-color: #a3a3a3;
}

.wx-root[data-weui-theme='dark'] .weui-uploader__input-box::before,.wx-root[data-weui-theme='dark'] .weui-uploader__input-box::after,body[data-weui-theme='dark'] .weui-uploader__input-box::before,body[data-weui-theme='dark'] .weui-uploader__input-box::after {
  background-color: #6d6d6d;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']) .weui-uploader__input-box::before,.wx-root:not([data-weui-theme='light']) .weui-uploader__input-box::after,body:not([data-weui-theme='light']) .weui-uploader__input-box::before,body:not([data-weui-theme='light']) .weui-uploader__input-box::after {
    background-color: #6d6d6d;
  }
}

.weui-uploader__input-box::before {
  width: 2px;
  height: 33.33%;
}

.weui-uploader__input-box::after {
  width: 33.33%;
  height: 2px;
}

.weui-uploader__input-box:active::before,.weui-uploader__input-box:active::after {
  opacity: 0.7;
}

.weui-uploader__input {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-msg__desc a,.weui-msg__desc-primary a,.weui-msg__tips a {
  color: #576b95;
  color: var(--weui-LINK);
  display: inline-block;
  vertical-align: baseline;
}

.weui-msg {
  padding-top: 48px;
  padding: calc(48px + constant(safe-area-inset-top)) constant(safe-area-inset-right) constant(safe-area-inset-bottom) constant(safe-area-inset-left);
  padding: calc(48px + env(safe-area-inset-top)) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  text-align: center;
  line-height: 1.4;
  min-height: 100%;
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  background-color: #fff;
  background-color: var(--weui-BG-2);
}

.weui-msg__icon-area {
  margin-bottom: 32px;
}

.weui-msg__text-area {
  margin-bottom: 32px;
  padding: 0 32px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  line-height: 1.6;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-msg__text-area:first-child {
  padding-top: 96px;
}

.weui-msg__title {
  margin-bottom: 16px;
  font-weight: 500;
  font-size: 22px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-msg__desc {
  font-size: 17px;
  font-weight: 400;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  margin-bottom: 16px;
}

.weui-msg__desc-primary {
  font-size: 14px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  margin-bottom: 16px;
}

.weui-msg__custom-area {
  text-align: left;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
  margin-bottom: 16px;
}

.weui-msg__title+.weui-msg__custom-area {
  margin-top: 48px;
}

.weui-msg__desc+.weui-msg__custom-area,.weui-msg__desc-primary+.weui-msg__custom-area {
  margin-top: 40px;
}

.weui-msg__custom-area .weui-cells__group_form .weui-cells {
  margin: 0;
}

.weui-msg__opr-area {
  margin-bottom: 16px;
}

.weui-msg__opr-area .weui-btn-area {
  margin: 0;
}

.weui-msg__opr-area .weui-btn+.weui-btn {
  margin-bottom: 16px;
}

.weui-msg__opr-area:last-child {
  margin-bottom: 96px;
}

.weui-msg__opr-area+.weui-msg__extra-area {
  margin-top: 48px;
}

.weui-msg__tips-area {
  margin-bottom: 16px;
  padding: 0 40px;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-msg__opr-area+.weui-msg__tips-area {
  margin-bottom: 48px;
}

.weui-msg__tips-area:last-child {
  margin-bottom: 64px;
}

.weui-msg__tips {
  font-size: 14px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-msg__extra-area {
  margin-bottom: 24px;
  padding: 0 32px;
  box-sizing: border-box;
  font-size: 12px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-msg__extra-area a,.weui-msg__extra-area navigator {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-msg__extra-area navigator {
  display: inline;
}

.weui-msg_align-top .weui-msg__text-area:first-child {
  padding-top: 0;
}

body,page {
  --weui-STEPS-DEFAULT-COLOR: var(--weui-FG-3);
  --weui-STEPS-HIGHLIGHT-COLOR: var(--weui-BRAND);
  --weui-STEPS-FONT-SIZE: 17;
  --weui-STEPS-LINEHEIGHT: 1.4;
  --weui-STEPS-DOT-SIZE: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  --weui-STEPS-ICON-SIZE: 40;
  --weui-STEPS-VERTICAL-DOT-GAP: calc((1em - var(--weui-STEPS-DOT-SIZE)) / 2);
  --weui-STEPS-HORIZONAL-DOT-GAP: 4px;
}

.weui-steps {
  line-height: 1.4;
  line-height: var(--weui-STEPS-LINEHEIGHT);
  font-size: calc(1px * 17);
  font-size: calc(1px * var(--weui-STEPS-FONT-SIZE));
}

.weui-steps__item__title,.weui-steps__item__desc {
  display: block;
}

.weui-steps__item__title {
  font-weight: 500;
}

.weui-steps__item__desc {
  font-size: 14px;
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  margin-top: 4px;
}

.weui-steps_vertical {
  position: relative;
}

.weui-steps_vertical .weui-steps__item {
  position: relative;
  padding-bottom: 32px;
}

.weui-steps_vertical .weui-steps__item::before {
  content: "";
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-left: 1px solid var(--weui-FG-3);
  border-left: 1px solid var(--weui-STEPS-DEFAULT-COLOR);
  color: var(--weui-FG-3);
  color: var(--weui-STEPS-DEFAULT-COLOR);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
  top: calc((1.4 - (1.4 - 1) / 2) * 1em);
  top: calc((var(--weui-STEPS-LINEHEIGHT) - (var(--weui-STEPS-LINEHEIGHT) - 1) / 2) * 1em);
  bottom: calc((1.4 - 1) / 2 * -1em);
  bottom: calc((var(--weui-STEPS-LINEHEIGHT) - 1) / 2 * -1em);
}

.weui-steps_vertical .weui-steps__item:first-child:not(.weui-steps__item_success) .weui-steps__item__inner::before {
  background-color: var(--weui-BRAND);
  background-color: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_vertical .weui-steps__item:last-child::before {
  display: none;
}

.weui-steps_vertical .weui-steps__item__inner {
  position: relative;
  z-index: 1;
  padding-left: 36px;
}

.weui-steps_vertical .weui-steps__item__inner::before {
  content: "";
  width: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  width: var(--weui-STEPS-DOT-SIZE);
  height: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  height: var(--weui-STEPS-DOT-SIZE);
  border-radius: 100%;
  background-color: var(--weui-FG-3);
  background-color: var(--weui-STEPS-DEFAULT-COLOR);
  position: absolute;
  z-index: 1;
  left: 0;
  top: calc(1.4 / 2 * 1em);
  top: calc(var(--weui-STEPS-LINEHEIGHT) / 2 * 1em);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

.weui-steps_vertical .weui-steps__icon {
  font-size: calc(1px * 17);
  font-size: calc(1px * var(--weui-STEPS-FONT-SIZE));
  width: calc(40 / 17 * 1em);
  width: calc(var(--weui-STEPS-ICON-SIZE) / var(--weui-STEPS-FONT-SIZE) * 1em);
  height: calc(40 / 17 * 1em);
  height: calc(var(--weui-STEPS-ICON-SIZE) / var(--weui-STEPS-FONT-SIZE) * 1em);
  position: absolute;
  z-index: 1;
  left: 0;
  top: calc(1.4 / 2 * 1em);
  top: calc(var(--weui-STEPS-LINEHEIGHT) / 2 * 1em);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin-top: calc((40 / 17 * 1em - 1em) / 2 - .28em);
  margin-top: calc((var(--weui-STEPS-ICON-SIZE) / var(--weui-STEPS-FONT-SIZE) * 1em - 1em) / 2 - .28em);
}

.weui-steps_vertical .weui-steps__item_icon::before {
  top: calc(calc((1em - var(--weui-STEPS-DOT-SIZE)) / 2) + 40 / 17 * 1em - .14em);
  top: calc(var(--weui-STEPS-VERTICAL-DOT-GAP) + var(--weui-STEPS-ICON-SIZE) / var(--weui-STEPS-FONT-SIZE) * 1em - .14em);
}

.weui-steps_vertical .weui-steps__item_icon .weui-steps__item__inner::before {
  display: none;
}

.weui-steps_vertical .weui-steps__item_icon-prev::before {
  bottom: calc(calc((1em - var(--weui-STEPS-DOT-SIZE)) / 2) - (1.4 - 1) / 2 * 1em + .14em);
  bottom: calc(var(--weui-STEPS-VERTICAL-DOT-GAP) - (var(--weui-STEPS-LINEHEIGHT) - 1) / 2 * 1em + .14em);
}

.weui-steps_vertical .weui-steps__item_success::before {
  border-color: var(--weui-BRAND);
  border-color: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_vertical .weui-steps__item_success .weui-steps__item__inner::before {
  background-color: var(--weui-BRAND);
  background-color: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_vertical .weui-steps__item_success+.weui-steps__item .weui-steps__item__inner::before {
  background-color: var(--weui-BRAND);
  background-color: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_horizonal {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.weui-steps_horizonal .weui-steps__item {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-steps_horizonal .weui-steps__item::before {
  content: "";
  display: block;
  width: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  width: var(--weui-STEPS-DOT-SIZE);
  height: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  height: var(--weui-STEPS-DOT-SIZE);
  border-radius: 100%;
  background-color: var(--weui-FG-3);
  background-color: var(--weui-STEPS-DEFAULT-COLOR);
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}

.weui-steps_horizonal .weui-steps__item::after {
  content: "";
  height: 0.5px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  margin: 0 4px;
  margin: 0 var(--weui-STEPS-HORIZONAL-DOT-GAP);
  background: var(--weui-FG-3);
  background: var(--weui-STEPS-DEFAULT-COLOR);
}

.weui-steps_horizonal .weui-steps__item:last-child {
  -webkit-box-flex: 0;
  -webkit-flex: none;
  flex: none;
}

.weui-steps_horizonal .weui-steps__item:last-child::after {
  display: none;
}

.weui-steps_horizonal .weui-steps__item:first-child:not(.weui-steps__item_success)::before {
  background: var(--weui-BRAND);
  background: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_horizonal .weui-steps__item__inner {
  margin-left: 8px;
}

.weui-steps_horizonal .weui-steps__item_success::before,.weui-steps_horizonal .weui-steps__item_success::after {
  background: var(--weui-BRAND);
  background: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_horizonal .weui-steps__item_success+.weui-steps__item::before {
  background: var(--weui-BRAND);
  background: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_horizonal-primary {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.weui-steps_horizonal-primary .weui-steps__item {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  position: relative;
}

.weui-steps_horizonal-primary .weui-steps__item::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid var(--weui-FG-3);
  border-top: 1px solid var(--weui-STEPS-DEFAULT-COLOR);
  color: var(--weui-FG-3);
  color: var(--weui-STEPS-DEFAULT-COLOR);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-steps_horizonal-primary .weui-steps__item:last-child {
  -webkit-box-flex: 0;
  -webkit-flex: none;
  flex: none;
}

.weui-steps_horizonal-primary .weui-steps__item:last-child::before {
  display: none;
}

.weui-steps_horizonal-primary .weui-steps__item__inner {
  position: relative;
  padding-top: 36px;
}

.weui-steps_horizonal-primary .weui-steps__item__inner::before {
  content: "";
  position: absolute;
  z-index: 1;
  width: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  width: var(--weui-STEPS-DOT-SIZE);
  height: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  height: var(--weui-STEPS-DOT-SIZE);
  border-radius: 100%;
  background-color: var(--weui-FG-3);
  background-color: var(--weui-STEPS-DEFAULT-COLOR);
  top: 0;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.weui-steps_horizonal-primary .weui-steps__item__inner::after {
  content: "";
  background-color: #fff;
  background-color: var(--weui-BG-2);
  width: calc(calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em) + 2 * 4px);
  width: calc(var(--weui-STEPS-DOT-SIZE) + 2 * var(--weui-STEPS-HORIZONAL-DOT-GAP));
  height: calc(calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em) + 2 * 4px);
  height: calc(var(--weui-STEPS-DOT-SIZE) + 2 * var(--weui-STEPS-HORIZONAL-DOT-GAP));
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(calc(-50% + calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em) / 2),-50%);
  -webkit-transform: translate(calc(-50% + var(--weui-STEPS-DOT-SIZE) / 2),-50%);
  transform: translate(calc(-50% + calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em) / 2),-50%);
  transform: translate(calc(-50% + var(--weui-STEPS-DOT-SIZE) / 2),-50%);
}

.weui-steps_horizonal-primary .weui-steps__item_success::before {
  border-color: var(--weui-BRAND);
  border-color: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_horizonal-primary .weui-steps__item_success .weui-steps__item__inner::before {
  background: var(--weui-BRAND);
  background: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_horizonal-primary .weui-steps__item_success+.weui-steps__item .weui-steps__item__inner::before {
  background: var(--weui-BRAND);
  background: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

.weui-steps_horizonal-center {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  text-align: center;
}

.weui-steps_horizonal-center .weui-steps__item {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  position: relative;
}

.weui-steps_horizonal-center .weui-steps__item::after,.weui-steps_horizonal-center .weui-steps__item::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid var(--weui-FG-3);
  border-top: 1px solid var(--weui-STEPS-DEFAULT-COLOR);
  color: var(--weui-FG-3);
  color: var(--weui-STEPS-DEFAULT-COLOR);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-steps_horizonal-center .weui-steps__item::before {
  right: 50%;
}

.weui-steps_horizonal-center .weui-steps__item::after {
  left: 50%;
}

.weui-steps_horizonal-center .weui-steps__item:first-child::before {
  display: none;
}

.weui-steps_horizonal-center .weui-steps__item:last-child::after {
  display: none;
}

.weui-steps_horizonal-center .weui-steps__item__inner {
  position: relative;
  z-index: 1;
  padding-top: 36px;
}

.weui-steps_horizonal-center .weui-steps__item__inner::before {
  content: "";
  position: absolute;
  z-index: 1;
  width: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  width: var(--weui-STEPS-DOT-SIZE);
  height: calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em);
  height: var(--weui-STEPS-DOT-SIZE);
  border-radius: 100%;
  background-color: var(--weui-FG-3);
  background-color: var(--weui-STEPS-DEFAULT-COLOR);
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

.weui-steps_horizonal-center .weui-steps__item__inner::after {
  content: "";
  background-color: #fff;
  background-color: var(--weui-BG-2);
  width: calc(calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em) + 2 * 4px);
  width: calc(var(--weui-STEPS-DOT-SIZE) + 2 * var(--weui-STEPS-HORIZONAL-DOT-GAP));
  height: calc(calc(8 / var(--weui-STEPS-FONT-SIZE) * 1em) + 2 * 4px);
  height: calc(var(--weui-STEPS-DOT-SIZE) + 2 * var(--weui-STEPS-HORIZONAL-DOT-GAP));
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

.weui-steps_horizonal-center .weui-steps__item_success::before,.weui-steps_horizonal-center .weui-steps__item_success::after,.weui-steps_horizonal-center .weui-steps__item_success .weui-steps__item__inner::before,.weui-steps_horizonal-center .weui-steps__item_success+.weui-steps__item::before,.weui-steps_horizonal-center .weui-steps__item_success+.weui-steps__item .weui-steps__item__inner::before {
  background: var(--weui-BRAND);
  background: var(--weui-STEPS-HIGHLIGHT-COLOR);
}

page,body {
  --weui-cellMarginLR: 16px;
  --weui-cellPaddingLR: 16px;
}

.weui-cells__group {
  border: 0;
}

.weui-cells__group:first-child {
  margin-top: 0;
}

.weui-cells__group_form {
  margin-top: 24px;
}

.weui-cells__group_form .weui-cells {
  margin-left: 16px;
  margin-left: var(--weui-cellMarginLR);
  margin-right: 16px;
  margin-right: var(--weui-cellMarginLR);
}

.weui-cells__group_form .weui-cells::before,.weui-cells__group_form .weui-cells::after {
  left: 16px;
  left: var(--weui-cellPaddingLR);
  right: 16px;
  right: var(--weui-cellPaddingLR);
}

.weui-cells__group_form .weui-cell {
  padding: 16px 16px;
  padding: 16px var(--weui-cellPaddingLR);
}

.weui-cells__group_form .weui-cell::before {
  left: 16px;
  left: var(--weui-cellPaddingLR);
  right: 16px;
  right: var(--weui-cellPaddingLR);
}

.weui-cells__group_form .weui-cell:not(.weui-cell_vertical) .weui-cell__hd {
  padding-right: 16px;
}

.weui-cells__group_form .weui-cell:not(.weui-cell_vertical) .weui-cell__ft {
  padding-left: 16px;
}

.weui-cells__group_form .weui-cells__title {
  margin-top: 24px;
  margin-bottom: 8px;
  padding: 0 32px;
}

.weui-cells__group_form:first-child .weui-cells__title {
  margin-top: 0;
}

.weui-cells__group_form .weui-cells__tips {
  margin-top: 8px;
  padding: 0 calc(16px + 16px);
  padding: 0 calc(var(--weui-cellMarginLR) + var(--weui-cellPaddingLR));
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
}

.weui-cells__group_form .weui-cells__tips a {
  font-weight: 700;
}

.weui-cells__group_form .weui-cells__tips_warn {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-cells__group_form .weui-label {
  max-width: 5em;
  margin-right: 8px;
}

.weui-cells__group_form .weui-cell_access:active::after,.weui-cells__group_form .weui-cell_active:active::after {
  border-radius: 8px;
}

.weui-cells__group_form .weui-cell_warn input {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-cells__group_form .weui-icon-warn {
  display: none;
}

.weui-cells__group_form .weui-cell_switch:active::after,.weui-cells__group_form .weui-cell_vcode:active::after,.weui-cells__group_form .weui-cell_readonly:active::after,.weui-cells__group_form .weui-cell_disabled:active::after {
  display: none;
}

.weui-cells__group_form input,.weui-cells__group_form textarea,.weui-cells__group_form label[for] {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-cells__group_form .weui-cell_wrap {
  -webkit-box-align: initial;
  -webkit-align-items: initial;
  align-items: initial;
  padding-top: 8px;
  padding-bottom: 8px;
}

.weui-cells__group_form .weui-cell_wrap .weui-cell__hd {
  padding-right: 0;
}

.weui-cells__group_form .weui-cell_wrap .weui-label {
  margin-top: 8px;
}

.weui-cells__group_form .weui-cell_wrap .weui-cell__bd {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-cells__group_form .weui-cell__control {
  margin: 8px 0 8px 16px;
}

.weui-cells__group_form .weui-cell__control_flex {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-width: 30vw;
}

.weui-cells__group_form .weui-vcode-btn {
  font-size: 16px;
  padding: 0 12px;
  height: auto;
  width: auto;
  line-height: 2;
  border-radius: 6px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  background-color: rgba(0,0,0,0.05);
  background-color: var(--weui-FG-5);
}

.weui-cells__group_form .weui-vcode-btn::before {
  display: none;
}

.weui-cells__group_form .weui-cell_vcode.weui-cell_wrap {
  padding-top: 4px;
  padding-bottom: 4px;
}

.weui-cells__group_form .weui-cell_vcode.weui-cell_wrap .weui-label {
  margin-top: 12px;
}

.weui-cells__group_form .weui-cell_vcode.weui-cell_wrap .weui-input {
  font-size: 17px;
  min-height: 1.88235294em;
}

.weui-cells__group_form .weui-cells_checkbox .weui-check__label::before {
  left: calc(40px + 16px);
  left: calc(40px + var(--weui-cellPaddingLR));
}

.weui-cells__group_form .weui-cell_select {
  padding: 0;
}

.weui-cells__group_form .weui-cell_select-before .weui-cell__hd {
  padding-right: 0;
}

.weui-cells__group_form .weui-cell_switch {
  padding: 12px 16px;
}

.weui-cells__group_form-primary {
  margin-top: 32px;
}

.weui-cells__group_form-primary .weui-cells {
  background: #f7f7f7;
  background: var(--weui-BG-1);
  border-radius: 8px;
  overflow: hidden;
}

.weui-cells__group_form-primary .weui-cells::before,.weui-cells__group_form-primary .weui-cells::after {
  display: none;
}

.weui-cells__group_form-primary .weui-cell_access:active::after,.weui-cells__group_form-primary .weui-cell_active:active::after {
  border-radius: 0;
}

.weui-form {
  padding: 56px 0 0;
  padding: calc(56px + constant(safe-area-inset-top)) constant(safe-area-inset-right) constant(safe-area-inset-bottom) constant(safe-area-inset-left);
  padding: calc(56px + env(safe-area-inset-top)) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  line-height: 1.4;
  min-height: 100%;
  box-sizing: border-box;
  background-color: #fff;
  background-color: var(--weui-BG-2);
}

.weui-form .weui-footer,.weui-form .weui-footer__link {
  font-size: 14px;
}

.weui-form__bd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.weui-form__text-area {
  padding: 0 32px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  text-align: center;
}

.weui-form__control-area {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  margin: 48px 0;
}

.weui-form__tips-area,.weui-form__extra-area {
  margin-bottom: 24px;
  padding: 0 32px;
  text-align: center;
}

.weui-form__extra-area {
  margin-top: 52px;
}

.weui-form__opr-area {
  padding: 0 32px;
}

.weui-form__opr-area:last-child {
  margin-bottom: 96px;
}

.weui-form__opr-area+.weui-form__tips-area {
  margin-top: 16px;
  margin-bottom: 0;
}

.weui-form__tips-area+.weui-form__extra-area {
  margin-top: 32px;
}

.weui-form__tips-area:last-child {
  margin-bottom: 60px;
}

.weui-form__title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.36;
}

.weui-form__desc {
  font-size: 17px;
  margin-top: 16px;
}

.weui-form__tips {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  font-size: 14px;
}

.weui-form__tips a,.weui-form__tips navigator {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-form__tips navigator {
  display: inline;
}

.weui-article {
  padding: 48px 24px;
  padding: 48px calc(24px + constant(safe-area-inset-right)) calc(48px + constant(safe-area-inset-bottom)) calc(24px + constant(safe-area-inset-left));
  padding: 48px calc(24px + env(safe-area-inset-right)) calc(48px + env(safe-area-inset-bottom)) calc(24px + env(safe-area-inset-left));
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  font-size: 17px;
  line-height: 1.6;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-article section {
  margin-bottom: 48px;
}

.weui-article section section {
  margin-bottom: 32px;
}

.weui-article section section section {
  margin-bottom: 24px;
}

.weui-article h1,.weui-article h2,.weui-article h3,.weui-article h4,.weui-article h5,.weui-article h6 {
  line-height: 1.4;
}

.weui-article h1 {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 48px;
  text-align: center;
}

.weui-article h2 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 16px;
}

.weui-article h3 {
  font-size: 17px;
  font-weight: 500;
  margin-bottom: 8px;
}

.weui-article h4 {
  font-size: 17px;
  font-weight: 400;
  margin-bottom: 4px;
}

.weui-article h5,.weui-article h6 {
  font-weight: 400;
  font-size: 17px;
}

.weui-article * {
  max-width: 100%;
  box-sizing: border-box;
  word-wrap: break-word;
}

.weui-article img {
  vertical-align: bottom;
}

.weui-article p {
  margin: 0 0 24px;
}

.weui-article ol,.weui-article ul {
  margin-left: 1.2em;
  margin-bottom: 24px;
}

.weui-article ol ol,.weui-article ul ol,.weui-article ol ul,.weui-article ul ul {
  margin: 0.5em 0 0.5em 1.2em;
}

.weui-article ol {
  list-style: decimal;
}

.weui-article ul {
  list-style: disc;
}

.weui-article li {
  margin: 0.5em 0;
}

.weui-article .weui-article__list_inside {
  margin-left: 0;
}

.weui-article .weui-article__list_inside li {
  list-style-position: inside;
}

.weui-article .weui-article__list_none {
  margin-left: 0;
}

.weui-article .weui-article__list_none li {
  list-style: none;
}

.weui-tabbar {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  position: relative;
  z-index: 500;
  background-color: #f7f7f7;
  background-color: var(--weui-BG-1);
}

.weui-tabbar::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-tabbar__item {
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  padding: 8px 0;
  padding-bottom: calc(8px + constant(safe-area-inset-bottom));
  padding-bottom: calc(8px + env(safe-area-inset-bottom));
  font-size: 0;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  text-align: center;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-tabbar__item:first-child {
  padding-left: constant(safe-area-inset-left);
  padding-left: env(safe-area-inset-left);
}

.weui-tabbar__item:last-child {
  padding-right: constant(safe-area-inset-right);
  padding-right: env(safe-area-inset-right);
}

.weui-tabbar__item.weui-bar__item_on .weui-tabbar__icon,.weui-tabbar__item.weui-bar__item_on .weui-tabbar__icon>i,.weui-tabbar__item.weui-bar__item_on .weui-tabbar__label {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-tabbar__icon {
  display: inline-block;
  font-size: 10px;
  width: 2.8em;
  height: 2.8em;
  margin-bottom: 2px;
}

i.weui-tabbar__icon,.weui-tabbar__icon>i {
  font-size: 24px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-tabbar__icon img {
  width: 100%;
  height: 100%;
}

.weui-tabbar__label {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  font-size: 10px;
  line-height: 1.4;
}

.weui-navbar {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  position: relative;
  z-index: 500;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  padding-top: constant(safe-area-inset-top);
  padding-top: env(safe-area-inset-top);
}

.weui-navbar::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-navbar+.weui-tab__panel {
  padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
}

.weui-navbar__item {
  position: relative;
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  padding: 16px 0;
  padding-top: calc(16px + constant(safe-area-inset-top));
  padding-top: calc(16px + env(safe-area-inset-top));
  text-align: center;
  font-size: 17px;
  line-height: 1.41176471;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-navbar__item:active {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-navbar__item.weui-bar__item_on {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-navbar__item::after {
  content: " ";
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-right: 1px solid rgba(0,0,0,0.1);
  border-right: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

.weui-navbar__item:first-child {
  padding-left: constant(safe-area-inset-left);
  padding-left: env(safe-area-inset-left);
}

.weui-navbar__item:last-child {
  padding-right: constant(safe-area-inset-right);
  padding-right: env(safe-area-inset-right);
}

.weui-navbar__item:last-child::after {
  display: none;
}

.weui-tab {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  height: 100%;
  box-sizing: border-box;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.weui-tab__panel {
  box-sizing: border-box;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.weui-tab__content {
  display: none;
}

.weui-progress {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-progress__bar {
  background-color: #ededed;
  background-color: var(--weui-BG-0);
  height: 3px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

.weui-progress__inner-bar {
  width: 0;
  height: 100%;
  background-color: #07c160;
  background-color: var(--weui-BRAND);
}

.weui-progress__opr {
  display: block;
  margin-left: 15px;
  font-size: 0;
}

.weui-panel {
  background-color: #fff;
  background-color: var(--weui-BG-2);
  margin-top: 10px;
  position: relative;
  overflow: hidden;
}

.weui-panel:first-child {
  margin-top: 0;
}

.weui-panel::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-panel::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-panel .weui-cells::after {
  display: none;
}

.weui-panel__hd {
  padding: 16px 16px 13px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  font-size: 15px;
  font-weight: 500;
  position: relative;
}

.weui-panel__hd::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  left: 15px;
}

.weui-media-box {
  padding: 16px;
  position: relative;
}

.weui-media-box::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  left: 16px;
}

.weui-media-box:first-child::before {
  display: none;
}

a.weui-media-box {
  color: #000;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

a.weui-media-box:active {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-media-box__title {
  display: block;
  font-weight: 400;
  font-size: 17px;
  line-height: 1.4;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  width: auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-media-box__desc {
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  font-size: 14px;
  line-height: 1.4;
  padding-top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-media-box__info {
  display: block;
  margin-top: 16px;
  padding-bottom: 4px;
  font-size: 13px;
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  line-height: 1em;
  list-style: none;
  overflow: hidden;
}

.weui-media-box__info__meta {
  float: left;
  padding-right: 1em;
}

.weui-media-box__info__meta_extra {
  padding-left: 1em;
  border-left: 1px solid rgba(0,0,0,0.3);
  border-left: 1px solid var(--weui-FG-2);
}

.weui-media-box_appmsg {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-media-box_appmsg .weui-media-box__hd {
  margin-right: 16px;
  width: 60px;
  height: 60px;
  line-height: 60px;
  text-align: center;
}

.weui-media-box_appmsg .weui-media-box__thumb {
  width: 100%;
  max-height: 100%;
  vertical-align: top;
}

.weui-media-box_appmsg .weui-media-box__bd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-width: 0;
}

.weui-media-box_small-appmsg {
  padding: 0;
}

.weui-media-box_small-appmsg .weui-cells {
  margin-top: 0;
}

.weui-media-box_small-appmsg .weui-cells::before {
  display: none;
}

.weui-grids {
  position: relative;
  overflow: hidden;
}

.weui-grids::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-grids::after {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-left: 1px solid rgba(0,0,0,0.1);
  border-left: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

.weui-grid {
  position: relative;
  float: left;
  padding: 20px 10px;
  width: 33.33333333%;
  box-sizing: border-box;
}

.weui-grid::before {
  content: " ";
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-right: 1px solid rgba(0,0,0,0.1);
  border-right: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

.weui-grid::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-grid:active {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-grid__icon {
  width: 28px;
  height: 28px;
  margin: 0 auto;
}

.weui-grid__icon img {
  display: block;
  width: 100%;
  height: 100%;
}

.weui-grid__icon+.weui-grid__label {
  margin-top: 4px;
}

.weui-grid__label {
  display: block;
  text-align: center;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  font-size: 14px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.weui-footer {
  color: rgba(0,0,0,0.2);
  font-size: 14px;
  line-height: 1.4;
  text-align: center;
}

.wx-root[data-weui-theme='dark'] .weui-footer,body[data-weui-theme='dark'] .weui-footer {
  color: rgba(255,255,255,0.2);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']) .weui-footer,body:not([data-weui-theme='light']) .weui-footer {
    color: rgba(255,255,255,0.2);
  }
}

.weui-footer a,.weui-footer navigator {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-footer navigator {
  display: inline;
}

.weui-footer_fixed-bottom {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-bottom: calc(16px + constant(safe-area-inset-bottom));
  padding-bottom: calc(16px + env(safe-area-inset-bottom));
  left: constant(safe-area-inset-left);
  left: env(safe-area-inset-left);
  right: constant(safe-area-inset-right);
  right: env(safe-area-inset-right);
}

.weui-footer__links {
  font-size: 0;
}

.weui-footer__link {
  display: inline-block;
  vertical-align: top;
  margin: 0 8px;
  position: relative;
  font-size: 14px;
}

.weui-footer__link::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-left: 1px solid rgba(0,0,0,0.1);
  border-left: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
  left: -8px;
  top: 0.36em;
  bottom: 0.36em;
}

.weui-footer__link:first-child::before {
  display: none;
}

.weui-footer__text {
  padding: 0 16px;
  font-size: 12px;
}

.weui-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.weui-flex__item {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-width: 0;
}

.weui-dialog {
  position: fixed;
  z-index: 5000;
  top: 50%;
  left: 16px;
  right: 16px;
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
  background-color: #fff;
  background-color: var(--weui-BG-2);
  text-align: center;
  border-radius: 12px;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  max-height: 90%;
  outline: 0;
}

.weui-dialog__hd {
  padding: 32px 24px 16px;
}

.weui-dialog__title {
  font-weight: 700;
  font-size: 17px;
  line-height: 1.4;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-dialog__bd {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 24px;
  margin-bottom: 32px;
  font-size: 17px;
  line-height: 1.4;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-dialog__bd:first-child {
  min-height: 40px;
  padding: 32px 24px 0;
  font-weight: 700;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.weui-dialog__ft {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.weui-dialog__ft::after {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-DIALOG-LINE-COLOR);
  color: rgba(0,0,0,0.1);
  color: var(--weui-DIALOG-LINE-COLOR);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-dialog__btn {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  display: block;
  line-height: 1.41176471;
  padding: 16px 0;
  font-size: 17px;
  color: #576b95;
  color: var(--weui-LINK);
  font-weight: 700;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  -webkit-user-select: none;
  user-select: none;
  position: relative;
  overflow: hidden;
}

.weui-dialog__btn:active {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-dialog__btn::after {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-left: 1px solid rgba(0,0,0,0.1);
  border-left: 1px solid var(--weui-DIALOG-LINE-COLOR);
  color: rgba(0,0,0,0.1);
  color: var(--weui-DIALOG-LINE-COLOR);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleX(0.5);
  transform: scaleX(0.5);
}

.weui-dialog__btn:first-child::after {
  display: none;
}

.weui-dialog__btn_default {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-HALF);
}

.weui-skin_android .weui-dialog {
  text-align: left;
  box-shadow: 0 6px 30px 0 rgba(0,0,0,0.1);
}

.weui-skin_android .weui-dialog__title {
  font-size: 22px;
  line-height: 1.4;
}

.weui-skin_android .weui-dialog__hd {
  text-align: left;
}

.weui-skin_android .weui-dialog__bd {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  text-align: left;
}

.weui-skin_android .weui-dialog__bd:first-child {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-skin_android .weui-dialog__ft {
  display: block;
  text-align: right;
  line-height: 40px;
  min-height: 40px;
  padding: 0 24px 16px;
}

.weui-skin_android .weui-dialog__ft::after {
  display: none;
}

.weui-skin_android .weui-dialog__btn {
  display: inline-block;
  vertical-align: top;
  padding: 0 0.8em;
}

.weui-skin_android .weui-dialog__btn::after {
  display: none;
}

.weui-skin_android .weui-dialog__btn:last-child {
  margin-right: -0.8em;
}

.weui-skin_android .weui-dialog__btn_default {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-HALF);
}

@media screen and (min-width:352px) {
  .weui-dialog {
    width: 320px;
    margin: 0 auto;
  }
}

.weui-half-screen-dialog {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  min-height: 255px;
  max-height: 75%;
  z-index: 5000;
  line-height: 1.4;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  overflow: hidden;
  padding: 0 24px;
  padding: 0 calc(24px + constant(safe-area-inset-right)) constant(safe-area-inset-bottom) calc(24px + constant(safe-area-inset-left));
  padding: 0 calc(24px + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(24px + env(safe-area-inset-left));
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  outline: 0;
}

@media only screen and (max-device-height:558px) {
  .weui-half-screen-dialog {
    max-height: calc(100% - 16px);
  }
}

.weui-half-screen-dialog__hd {
  min-height: 64px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}

.weui-half-screen-dialog__hd .weui-btn_icon {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: inherit;
}

.weui-half-screen-dialog__hd .weui-btn_icon:active {
  opacity: 0.5;
}

.weui-half-screen-dialog__hd__side {
  position: relative;
  left: -8px;
}

.weui-half-screen-dialog__hd__main {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

.weui-half-screen-dialog__hd__side+.weui-half-screen-dialog__hd__main {
  text-align: center;
  padding: 0 40px;
}

.weui-half-screen-dialog__hd__main+.weui-half-screen-dialog__hd__side {
  right: -8px;
  left: auto;
}

.weui-half-screen-dialog__hd__main+.weui-half-screen-dialog__hd__side .weui-icon-btn,.weui-half-screen-dialog__hd__main+.weui-half-screen-dialog__hd__side .weui-btn_icon {
  right: 0;
}

.weui-half-screen-dialog__title {
  display: block;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  font-weight: 500;
  font-size: 15px;
}

.weui-half-screen-dialog__subtitle {
  display: block;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  font-size: 10px;
}

.weui-half-screen-dialog__bd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
  padding-bottom: 56px;
  font-size: 14px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-half-screen-dialog__desc {
  font-size: 17px;
  font-weight: 700;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  line-height: 1.4;
}

.weui-half-screen-dialog__tips {
  padding-top: 16px;
  font-size: 14px;
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  line-height: 1.4;
}

.weui-half-screen-dialog__ft {
  padding: 0 0 64px;
  text-align: center;
}

.weui-half-screen-dialog__ft .weui-btn:nth-last-child(n+2),.weui-half-screen-dialog__ft .weui-btn:nth-last-child(n+2)+.weui-btn {
  display: inline-block;
  vertical-align: top;
  margin: 0 8px;
  width: 120px;
}

.weui-half-screen-dialog__btn-area+.weui-half-screen-dialog__attachment-area {
  margin-top: 24px;
  margin-bottom: -34px;
}

.weui-half-screen-dialog_large {
  max-height: none;
  top: 16px;
}

.weui-half-screen-dialog_slide .weui-half-screen-dialog__hd {
  min-height: 0;
  padding: 12px 16px 16px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.weui-half-screen-dialog_slide .weui-half-screen-dialog__slide-icon {
  position: absolute;
  top: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  width: 40px;
  height: 4px;
  border-radius: 2px;
  background: #ededed;
  background: var(--weui-BG-0);
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.wx-root[data-weui-theme='dark'] .weui-half-screen-dialog_slide .weui-half-screen-dialog__slide-icon,body[data-weui-theme='dark'] .weui-half-screen-dialog_slide .weui-half-screen-dialog__slide-icon {
  background: rgba(0,0,0,0.1);
  background: var(--weui-FG-3);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']) .weui-half-screen-dialog_slide .weui-half-screen-dialog__slide-icon,body:not([data-weui-theme='light']) .weui-half-screen-dialog_slide .weui-half-screen-dialog__slide-icon {
    background: rgba(0,0,0,0.1);
    background: var(--weui-FG-3);
  }
}

.weui-half-screen-dialog_slide .weui-half-screen-dialog__slide-icon .weui-icon-arrow {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  width: 0.8em;
  height: 1.6em;
  opacity: 0;
}

.weui-half-screen-dialog__btn-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.weui-half-screen-dialog__btn-area .weui-btn {
  width: 184px;
  padding-left: 16px;
  padding-right: 16px;
}

.weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2),.weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2)+.weui-btn {
  margin: 0 8px;
  width: 136px;
}

.weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2):first-child,.weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2)+.weui-btn:first-child {
  margin-left: 0;
}

.weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2):last-child,.weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2)+.weui-btn:last-child {
  margin-right: 0;
}

.weui-half-screen-dialog_btn-wrap .weui-half-screen-dialog__btn-area {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.weui-half-screen-dialog_btn-wrap .weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2),.weui-half-screen-dialog_btn-wrap .weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2)+.weui-btn {
  width: 184px;
  margin: 16px 0 0;
}

.weui-half-screen-dialog_btn-wrap .weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2):first-child,.weui-half-screen-dialog_btn-wrap .weui-half-screen-dialog__btn-area .weui-btn:nth-last-child(n+2)+.weui-btn:first-child {
  margin-top: 0;
}

.weui-icon-more {
  -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E  %3Cpath fill-opacity='.9' fill-rule='evenodd' d='M5 10.25a1.75 1.75 0 1 1 0 3.5 1.75 1.75 0 0 1 0-3.5zm7 0a1.75 1.75 0 1 1 0 3.5 1.75 1.75 0 0 1 0-3.5zm7 0a1.75 1.75 0 1 1 0 3.5 1.75 1.75 0 0 1 0-3.5z'/%3E%3C/svg%3E") no-repeat 50% 50%;
  mask: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E  %3Cpath fill-opacity='.9' fill-rule='evenodd' d='M5 10.25a1.75 1.75 0 1 1 0 3.5 1.75 1.75 0 0 1 0-3.5zm7 0a1.75 1.75 0 1 1 0 3.5 1.75 1.75 0 0 1 0-3.5zm7 0a1.75 1.75 0 1 1 0 3.5 1.75 1.75 0 0 1 0-3.5z'/%3E%3C/svg%3E") no-repeat 50% 50%;
}

.weui-icon-slide-down {
  -webkit-mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24' height='24' viewBox='0 0 24 24'%3E  %3Cdefs%3E    %3Crect id='dda90263-a290-4594-926f-6aba8cb4779f-a' width='24' height='24' x='0' y='0' rx='12'/%3E  %3C/defs%3E  %3Cg fill='none' fill-rule='evenodd'%3E    %3Cmask id='dda90263-a290-4594-926f-6aba8cb4779f-b' fill='%23fff'%3E      %3Cuse xlink:href='%23dda90263-a290-4594-926f-6aba8cb4779f-a'/%3E    %3C/mask%3E    %3Cuse fill='%23000' fill-opacity='.05' xlink:href='%23dda90263-a290-4594-926f-6aba8cb4779f-a'/%3E    %3Cg fill-opacity='.9' mask='url(%23dda90263-a290-4594-926f-6aba8cb4779f-b)'%3E      %3Cpath fill='%23000' d='M11.407 15.464L6.693 10.75l1.179-1.179 4.125 4.125 4.124-4.125L17.3 10.75l-4.714 4.714a.833.833 0 0 1-1.179 0z'/%3E    %3C/g%3E  %3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24' height='24' viewBox='0 0 24 24'%3E  %3Cdefs%3E    %3Crect id='dda90263-a290-4594-926f-6aba8cb4779f-a' width='24' height='24' x='0' y='0' rx='12'/%3E  %3C/defs%3E  %3Cg fill='none' fill-rule='evenodd'%3E    %3Cmask id='dda90263-a290-4594-926f-6aba8cb4779f-b' fill='%23fff'%3E      %3Cuse xlink:href='%23dda90263-a290-4594-926f-6aba8cb4779f-a'/%3E    %3C/mask%3E    %3Cuse fill='%23000' fill-opacity='.05' xlink:href='%23dda90263-a290-4594-926f-6aba8cb4779f-a'/%3E    %3Cg fill-opacity='.9' mask='url(%23dda90263-a290-4594-926f-6aba8cb4779f-b)'%3E      %3Cpath fill='%23000' d='M11.407 15.464L6.693 10.75l1.179-1.179 4.125 4.125 4.124-4.125L17.3 10.75l-4.714 4.714a.833.833 0 0 1-1.179 0z'/%3E    %3C/g%3E  %3C/g%3E%3C/svg%3E");
}

.weui-half-screen-dialog__hd .weui-icon-btn {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: inherit;
}

.weui-half-screen-dialog__hd .weui-icon-btn:active {
  opacity: 0.5;
}

.weui-half-screen-dialog__hd .weui-icon-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  min-width: 44px;
  min-height: 44px;
  width: 100%;
  height: 100%;
}

.weui-icon-btn.weui-icon-btn {
  outline: 0;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  border-width: 0;
  background-color: transparent;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  font-size: 0;
  width: auto;
  height: auto;
}

.weui-icon-btn_goback.weui-icon-btn_goback {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  background-color: currentColor;
  width: 0.71rem;
  height: 1.42rem;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10%2019.438L8.955%2020.5l-7.666-7.79a1.02%201.02%200%20010-1.42L8.955%203.5%2010%204.563%202.682%2012%2010%2019.438z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat 50% 50%;
  mask: url("data:image/svg+xml,%3Csvg%20width%3D%2212%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10%2019.438L8.955%2020.5l-7.666-7.79a1.02%201.02%200%20010-1.42L8.955%203.5%2010%204.563%202.682%2012%2010%2019.438z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat 50% 50%;
  -webkit-mask-size: 100%;
  mask-size: 100%;
}

.weui-icon-btn_close.weui-icon-btn_close {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  background-color: currentColor;
  width: 1.42rem;
  height: 1.42rem;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.25%2010.693L6.057%204.5%205%205.557l6.193%206.193L5%2017.943%206.057%2019l6.193-6.193L18.443%2019l1.057-1.057-6.193-6.193L19.5%205.557%2018.443%204.5z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat 50% 50%;
  mask: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12.25%2010.693L6.057%204.5%205%205.557l6.193%206.193L5%2017.943%206.057%2019l6.193-6.193L18.443%2019l1.057-1.057-6.193-6.193L19.5%205.557%2018.443%204.5z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat 50% 50%;
  -webkit-mask-size: 100%;
  mask-size: 100%;
}

.weui-toast {
  position: fixed;
  z-index: 5500;
  font-size: 10px;
  width: 13.6em;
  height: 13.6em;
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  text-align: center;
  border-radius: 12px;
  color: rgba(255,255,255,0.9);
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  background-color: #4c4c4c;
  background-color: var(--weui-BG-4);
  box-sizing: border-box;
  line-height: 1.4;
}

.weui-toast_text {
  width: auto;
  height: auto;
  min-width: 152px;
  max-width: 216px;
  padding: 12px 0;
  border-radius: 8px;
}

.weui-toast_text .weui-toast__content {
  font-size: 14px;
  padding: 0 20px;
}

.weui-icon_toast {
  display: block;
  margin-bottom: 16px;
}

.weui-icon_toast.weui-icon_toast {
  width: 4em;
  height: 4em;
}

.weui-icon_toast.weui-icon-success-no-circle {
  color: rgba(255,255,255,0.9);
}

.weui-icon_toast.weui-icon-warn {
  color: rgba(255,255,255,0.9);
}

.weui-icon_toast.weui-loading {
  width: 1em;
  height: 1em;
  font-size: 40px;
}

.weui-icon_toast.weui-primary-loading {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  width: 1em;
  height: 1em;
  font-size: 40px;
  color: #ededed;
}

.weui-icon_toast.weui-primary-loading::before {
  border-width: 4px 0 4px 4px;
}

.weui-icon_toast.weui-primary-loading::after {
  border-width: 4px 4px 4px 0;
}

.weui-icon_toast.weui-primary-loading .weui-primary-loading__dot {
  width: 4px;
  height: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.weui-toast__content {
  font-size: 17px;
  padding: 0 12px;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-toast_text-more .weui-icon_toast {
  margin-bottom: 12px;
}

.weui-toast_text-more .weui-toast__content {
  font-size: 14px;
  line-height: 1.6;
}

.weui-mask {
  position: fixed;
  z-index: 1000;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(0,0,0,0.6);
}

.weui-mask_transparent {
  position: fixed;
  z-index: 1000;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

.weui-actionsheet {
  position: fixed;
  left: 0;
  bottom: 0;
  -webkit-transform: translate(0,100%);
  transform: translate(0,100%);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 5000;
  width: 100%;
  background-color: #f7f7f7;
  background-color: var(--weui-BG-1);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s,-webkit-transform 0.3s;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  overflow: hidden;
  outline: 0;
}

.weui-actionsheet__title {
  position: relative;
  height: 56px;
  padding: 8px 24px;
  padding: 8px calc(24px + constant(safe-area-inset-right)) 8px calc(24px + constant(safe-area-inset-left));
  padding: 8px calc(24px + env(safe-area-inset-right)) 8px calc(24px + env(safe-area-inset-left));
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  text-align: center;
  font-size: 12px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  line-height: 1.4;
  background: #fff;
  background: var(--weui-BG-2);
}

.weui-actionsheet__title::before {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-actionsheet__title .weui-actionsheet__title-text {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.weui-actionsheet__menu {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  background-color: #fff;
  background-color: var(--weui-BG-2);
}

.weui-actionsheet__action {
  margin-top: 8px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  background-color: #fff;
  background-color: var(--weui-BG-2);
}

.weui-actionsheet__action .weui-actionsheet__cell:last-child {
  padding-bottom: calc(16px + constant(safe-area-inset-bottom));
  padding-bottom: calc(16px + env(safe-area-inset-bottom));
}

.weui-actionsheet__action .weui-actionsheet__cell.weui-actionsheet__cell_tips:last-child {
  padding-bottom: calc(12px + constant(safe-area-inset-bottom));
  padding-bottom: calc(12px + env(safe-area-inset-bottom));
}

.weui-actionsheet__cell {
  position: relative;
  padding: 16px;
  padding: 16px calc(16px + constant(safe-area-inset-right)) 16px calc(16px + constant(safe-area-inset-left));
  padding: 16px calc(16px + env(safe-area-inset-right)) 16px calc(16px + env(safe-area-inset-left));
  text-align: center;
  font-size: 17px;
  line-height: 1.41176471;
  overflow: hidden;
}

.weui-actionsheet__cell::before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-actionsheet__cell:active {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-actionsheet__cell:first-child::before {
  display: none;
}

.weui-actionsheet__cell__tips {
  display: block;
  font-size: 12px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-actionsheet__cell_tips {
  padding-top: 12px;
  padding-bottom: 12px;
}

.weui-actionsheet__cell_warn {
  color: #fa5151;
  color: var(--weui-RED);
}

.weui-skin_android .weui-actionsheet {
  position: fixed;
  left: 50%;
  top: 50%;
  bottom: auto;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  width: 274px;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background: transparent;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s,-webkit-transform 0.3s;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.weui-skin_android .weui-actionsheet__action {
  display: none;
}

.weui-skin_android .weui-actionsheet__menu {
  border-radius: 2px;
  box-shadow: 0 6px 30px 0 rgba(0,0,0,0.1);
}

.weui-skin_android .weui-actionsheet__cell {
  padding: 16px;
  font-size: 17px;
  line-height: 1.41176471;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  text-align: left;
}

.weui-skin_android .weui-actionsheet__cell:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.weui-skin_android .weui-actionsheet__cell:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

.weui-actionsheet_toggle {
  -webkit-transform: translate(0,0);
  transform: translate(0,0);
}

.weui-loadmore {
  width: 65%;
  margin: 20px auto;
  text-align: center;
  font-size: 0;
}

.weui-loadmore .weui-loading,.weui-loadmore .weui-primary-loading {
  margin-right: 8px;
}

.weui-loadmore__tips {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

.weui-loadmore_line {
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  margin-top: 32px;
}

.weui-loadmore_line .weui-loadmore__tips {
  position: relative;
  top: -0.9em;
  padding: 0 8px;
  background-color: #fff;
  background-color: var(--weui-BG-2);
}

.weui-loadmore_dot .weui-loadmore__tips::before {
  content: " ";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: rgba(0,0,0,0.1);
  background-color: var(--weui-FG-3);
  display: inline-block;
  position: relative;
  vertical-align: 0;
  top: -0.16em;
}

.weui-badge {
  display: inline-block;
  padding: 0.15em 0.4em;
  min-width: 0.66666667em;
  border-radius: 18px;
  background-color: #fa5151;
  background-color: var(--weui-RED);
  color: #fff;
  line-height: 1.2;
  text-align: center;
  font-size: 12px;
  vertical-align: middle;
}

.weui-badge_dot {
  padding: 0.4em;
  min-width: 0;
}

.weui-toptips {
  display: none;
  position: fixed;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  top: 8px;
  left: 8px;
  right: 8px;
  padding: 10px;
  border-radius: 8px;
  font-size: 14px;
  text-align: center;
  color: #fff;
  z-index: 5500;
  word-wrap: break-word;
  word-break: break-all;
}

.weui-toptips_warn {
  background-color: #fa5151;
  background-color: var(--weui-RED);
}

.wx-root,body {
  --weui-informationBar-FG: #FFFFFF;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-FG: #FFFFFF;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-FG: #FFFFFF;
  }
}

.wx-root,body {
  --weui-informationBar-LINK: #FFFFFF;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-LINK: #FFFFFF;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-LINK: #FFFFFF;
  }
}

.wx-root,body {
  --weui-informationBar-ICON: #FFFFFF;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-ICON: #FFFFFF;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-ICON: #FFFFFF;
  }
}

.wx-root,body {
  --weui-informationBar-BG: #fa5151;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-BG: #fa5151;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-BG: #fa5151;
  }
}

.wx-root,body {
  --weui-informationBar-warnWeak-FG: rgba(0, 0, 0, 0.55);
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-warnWeak-FG: rgba(255, 255, 255, 0.5);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-warnWeak-FG: rgba(255, 255, 255, 0.5);
  }
}

.wx-root,body {
  --weui-informationBar-warnWeak-LINK: #576b95;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-warnWeak-LINK: #7d90a9;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-warnWeak-LINK: #7d90a9;
  }
}

.wx-root,body {
  --weui-informationBar-warnWeak-ICON: #fa5151;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-warnWeak-ICON: #fa5151;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-warnWeak-ICON: #fa5151;
  }
}

.wx-root,body {
  --weui-informationBar-warnWeak-BG: rgba(250, 81, 81, 0.1);
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-warnWeak-BG: rgba(250, 81, 81, 0.1);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-warnWeak-BG: rgba(250, 81, 81, 0.1);
  }
}

.wx-root,body {
  --weui-informationBar-noColor-BG: rgba(0, 0, 0, 0.3);
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-noColor-BG: rgba(255, 255, 255, 0.3);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-noColor-BG: rgba(255, 255, 255, 0.3);
  }
}

.wx-root,body {
  --weui-informationBar-tipsStrong-BG: #fa9d3b;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-tipsStrong-BG: #c87d2f;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-tipsStrong-BG: #c87d2f;
  }
}

.wx-root,body {
  --weui-informationBar-tipsWeak-FG: rgba(0, 0, 0, 0.55);
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-tipsWeak-FG: rgba(255, 255, 255, 0.5);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-tipsWeak-FG: rgba(255, 255, 255, 0.5);
  }
}

.wx-root,body {
  --weui-informationBar-tipsWeak-LINK: #576b95;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-tipsWeak-LINK: #7d90a9;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-tipsWeak-LINK: #7d90a9;
  }
}

.wx-root,body {
  --weui-informationBar-tipsWeak-ICON: rgba(0, 0, 0, 0.55);
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-tipsWeak-ICON: rgba(255, 255, 255, 0.5);
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-tipsWeak-ICON: rgba(255, 255, 255, 0.5);
  }
}

.wx-root,body {
  --weui-informationBar-tipsWeak-BG: #f7f7f7;
}

.wx-root[data-weui-theme='dark'],body[data-weui-theme='dark'] {
  --weui-informationBar-tipsWeak-BG: #1e1e1e;
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']),body:not([data-weui-theme='light']) {
    --weui-informationBar-tipsWeak-BG: #1e1e1e;
  }
}

.weui-information-bar {
  position: fixed;
  top: 8px;
  left: 8px;
  right: 8px;
  padding: 12px 16px;
  border-radius: 8px;
  font-size: 14px;
  z-index: 5500;
  word-wrap: break-word;
  word-break: break-all;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  color: #FFFFFF;
  color: var(--weui-informationBar-FG);
  background: #fa5151;
  background: var(--weui-informationBar-BG);
}

.weui-information-bar .weui-btn_icon {
  margin-left: 8px;
}

.weui-information-bar .weui-btn_icon:active {
  opacity: 0.5;
}

.weui-information-bar [class*="weui-icon-"] {
  color: #FFFFFF;
  color: var(--weui-informationBar-ICON);
}

.weui-information-bar .weui-link {
  color: #FFFFFF;
  color: var(--weui-informationBar-LINK);
}

.weui-information-bar .weui-btn_icon [class*="weui-icon-"] {
  color: #FFFFFF;
  color: var(--weui-informationBar-FG);
}

.weui-information-bar,.weui-information-bar__hd,.weui-information-bar__ft {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-information-bar__hd [class*="weui-icon-"] {
  margin-right: 8px;
}

.weui-information-bar__bd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-width: 0;
}

.weui-information-bar__bd:first-child:last-child {
  text-align: center;
}

.weui-information-bar_warn-weak {
  color: rgba(0,0,0,0.55);
  color: var(--weui-informationBar-warnWeak-FG);
  background: rgba(250,81,81,0.1);
  background: var(--weui-informationBar-warnWeak-BG);
}

.weui-information-bar_warn-weak [class*="weui-icon-"] {
  color: #fa5151;
  color: var(--weui-informationBar-warnWeak-ICON);
}

.weui-information-bar_warn-weak .weui-link {
  color: #576b95;
  color: var(--weui-informationBar-warnWeak-LINK);
}

.weui-information-bar_warn-weak .weui-btn_icon [class*="weui-icon-"] {
  color: rgba(0,0,0,0.55);
  color: var(--weui-informationBar-warnWeak-FG);
}

.weui-information-bar_warn-no-color {
  background: rgba(0,0,0,0.3);
  background: var(--weui-informationBar-noColor-BG);
}

.weui-information-bar_tips-strong {
  background: #fa9d3b;
  background: var(--weui-informationBar-tipsStrong-BG);
}

.weui-information-bar_tips-weak {
  color: rgba(0,0,0,0.55);
  color: var(--weui-informationBar-tipsWeak-FG);
  background: #f7f7f7;
  background: var(--weui-informationBar-tipsWeak-BG);
}

.weui-information-bar_tips-weak [class*="weui-icon-"] {
  color: rgba(0,0,0,0.55);
  color: var(--weui-informationBar-tipsWeak-ICON);
}

.weui-information-bar_tips-weak .weui-link {
  color: #576b95;
  color: var(--weui-informationBar-tipsWeak-LINK);
}

.weui-information-bar_tips-weak .weui-btn_icon [class*="weui-icon-"] {
  color: rgba(0,0,0,0.55);
  color: var(--weui-informationBar-tipsWeak-FG);
}

.weui-list-tips {
  list-style: none;
  padding-top: 24px;
  padding-bottom: 24px;
  line-height: 1.4;
  font-size: 14px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  position: relative;
}

.weui-list-tips::before {
  content: "";
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid rgba(0,0,0,0.1);
  border-top: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-list-tips:last-child {
  padding-bottom: 0;
}

.weui-list-tips__item {
  position: relative;
  padding-left: 15px;
  margin: 16px 0;
}

.weui-list-tips__item::before {
  content: "\2022";
  position: absolute;
  left: 0;
  top: -0.1em;
}

.weui-list-tips__item:first-child {
  margin-top: 0;
}

.weui-form-preview__list+.weui-list-tips>.weui-list-tips__item:first-child {
  margin-top: 6px;
}

.weui-search-bar {
  position: relative;
  padding: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  box-sizing: border-box;
  background-color: #ededed;
  background-color: var(--weui-BG-0);
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-search-bar.weui-search-bar_focusing .weui-search-bar__cancel-btn {
  display: block;
}

.weui-search-bar.weui-search-bar_focusing .weui-search-bar__label {
  display: none;
}

.weui-search-bar .weui-icon-search {
  font-size: 10px;
  width: 1.6em;
  height: 1.6em;
  margin-left: 8px;
  margin-right: 4px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}

.weui-search-bar__form {
  position: relative;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-width: 0;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  border-radius: 4px;
}

.weui-search-bar__box {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-search-bar__box .weui-search-bar__input {
  padding: 8px 0;
  width: 100%;
  height: 1.14285714em;
  border: 0;
  font-size: 14px;
  line-height: 1.14285714em;
  box-sizing: content-box;
  background: transparent;
  caret-color: #07c160;
  caret-color: var(--weui-BRAND);
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-search-bar__box .weui-search-bar__input:focus {
  outline: none;
}

.weui-search-bar__box .weui-icon-clear {
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  font-size: 10px;
  width: 2em;
  height: 2em;
  margin-left: 8px;
  -webkit-mask-size: 2em;
  mask-size: 2em;
  -webkit-mask-position: calc(100% - 8px) 0;
  mask-position: calc(100% - 8px) 0;
  min-width: 44px;
}

.weui-search-bar__box .weui-icon-clear::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 44px;
}

.weui-search-bar__label {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  font-size: 0;
  border-radius: 4px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  background: #fff;
  background: var(--weui-BG-2);
}

.weui-search-bar__label span {
  display: inline-block;
  font-size: 14px;
  vertical-align: middle;
}

.weui-search-bar__cancel-btn {
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  display: none;
  margin-left: 8px;
  line-height: 28px;
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-search-bar__input:not(:valid)+.weui-icon-clear {
  display: none;
}

input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-results-button,input[type="search"]::-webkit-search-results-decoration {
  display: none;
}

.weui-picker {
  position: fixed;
  width: 100%;
  box-sizing: border-box;
  left: 0;
  bottom: 0;
  z-index: 5000;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  padding-left: 0;
  padding-left: constant(safe-area-inset-left);
  padding-left: env(safe-area-inset-left);
  padding-right: 0;
  padding-right: constant(safe-area-inset-right);
  padding-right: env(safe-area-inset-right);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate(0,100%);
  transform: translate(0,100%);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s,-webkit-transform 0.3s;
  outline: 0;
}

.weui-picker .weui-half-screen-dialog__hd {
  padding-left: 24px;
  padding-right: 24px;
}

.weui-picker .weui-half-screen-dialog__bd {
  overflow: visible;
}

.weui-picker__hd {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  padding: 16px;
  padding: 16px calc(16px + constant(safe-area-inset-right)) 16px calc(16px + constant(safe-area-inset-left));
  padding: 16px calc(16px + env(safe-area-inset-right)) 16px calc(16px + env(safe-area-inset-left));
  position: relative;
  text-align: center;
  font-size: 17px;
  line-height: 1.4;
}

.weui-picker__hd::after {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  border-bottom: 1px solid var(--weui-FG-3);
  color: rgba(0,0,0,0.1);
  color: var(--weui-FG-3);
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
}

.weui-picker__bd {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  position: relative;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  height: 240px;
  overflow: hidden;
}

.weui-picker__group {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  position: relative;
  height: 100%;
  font-size: 17px;
}

.weui-picker__group:first-child .weui-picker__indicator {
  left: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.weui-picker__group:last-child .weui-picker__indicator {
  right: 8px;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}

.weui-picker__mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  z-index: 3;
  background-image: -webkit-linear-gradient(top,rgba(255,255,255,0.95),rgba(255,255,255,0.6)),-webkit-linear-gradient(bottom,rgba(255,255,255,0.95),rgba(255,255,255,0.6));
  background-image: linear-gradient(180deg,rgba(255,255,255,0.95),rgba(255,255,255,0.6)),linear-gradient(0deg,rgba(255,255,255,0.95),rgba(255,255,255,0.6));
  background-position: top,bottom;
  background-size: 100% 112px;
  background-repeat: no-repeat;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.wx-root[data-weui-theme='dark'] .weui-picker__mask,body[data-weui-theme='dark'] .weui-picker__mask {
  background-image: -webkit-linear-gradient(top,rgba(25,25,25,0.95),rgba(25,25,25,0.6)),-webkit-linear-gradient(bottom,rgba(25,25,25,0.95),rgba(25,25,25,0.6));
  background-image: linear-gradient(180deg,rgba(25,25,25,0.95),rgba(25,25,25,0.6)),linear-gradient(0deg,rgba(25,25,25,0.95),rgba(25,25,25,0.6));
}

@media (prefers-color-scheme:dark) {
  .wx-root:not([data-weui-theme='light']) .weui-picker__mask,body:not([data-weui-theme='light']) .weui-picker__mask {
    background-image: -webkit-linear-gradient(top,rgba(25,25,25,0.95),rgba(25,25,25,0.6)),-webkit-linear-gradient(bottom,rgba(25,25,25,0.95),rgba(25,25,25,0.6));
    background-image: linear-gradient(180deg,rgba(25,25,25,0.95),rgba(25,25,25,0.6)),linear-gradient(0deg,rgba(25,25,25,0.95),rgba(25,25,25,0.6));
  }
}

.weui-picker__indicator {
  height: 56px;
  position: absolute;
  top: 112px;
  left: 0;
  right: 0;
  z-index: 1;
  background: #f7f7f7;
  background: var(--weui-BG-3);
}

.weui-picker__content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
}

.weui-picker__item {
  height: 56px;
  line-height: 56px;
  text-align: center;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.weui-picker__item_disabled {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
}

@-webkit-keyframes weuiSlideUp {
  from {
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }

  to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
}

@keyframes weuiSlideUp {
  from {
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }

  to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
}

.weui-animate_slide-up,.weui-animate-slide-up {
  -webkit-animation: weuiSlideUp ease 0.3s forwards;
  animation: weuiSlideUp ease 0.3s forwards;
}

@-webkit-keyframes weuiSlideDown {
  from {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  to {
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }
}

@keyframes weuiSlideDown {
  from {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  to {
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
  }
}

.weui-animate_slide-down,.weui-animate-slide-down {
  -webkit-animation: weuiSlideDown ease 0.3s forwards;
  animation: weuiSlideDown ease 0.3s forwards;
}

@-webkit-keyframes weuiFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes weuiFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.weui-animate_fade-in,.weui-animate-fade-in {
  -webkit-animation: weuiFadeIn ease 0.3s forwards;
  animation: weuiFadeIn ease 0.3s forwards;
}

@-webkit-keyframes weuiFadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes weuiFadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.weui-animate_fade-out,.weui-animate-fade-out {
  -webkit-animation: weuiFadeOut ease 0.3s forwards;
  animation: weuiFadeOut ease 0.3s forwards;
}

.weui-transition.weui-mask {
  -webkit-transition: opacity 0.3s,visibility 0.3s;
  transition: opacity 0.3s,visibility 0.3s;
  opacity: 0;
  visibility: hidden;
}

.weui-transition.weui-half-screen-dialog {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s,-webkit-transform 0.3s;
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
}

.weui-transition_show.weui-mask {
  opacity: 1;
  visibility: visible;
}

.weui-transition_show.weui-half-screen-dialog {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.weui-agree {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  text-align: justify;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
  line-height: 1.6;
  font-size: 14px;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-agree a,.weui-agree navigator {
  color: #576b95;
  color: var(--weui-LINK);
}

.weui-agree navigator {
  display: inline;
}

.weui-agree__text {
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  margin-left: 2px;
  min-width: 0;
}

.weui-agree__checkbox {
  -webkit-appearance: none;
  appearance: none;
  display: inline-block;
  border: 0;
  outline: 0;
  vertical-align: middle;
  background-color: currentColor;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
  mask-size: 100%;
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%221000%22%20height%3D%221000%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M500%20916.667C269.881%20916.667%2083.333%20730.119%2083.333%20500%2083.333%20269.881%20269.881%2083.333%20500%2083.333c230.119%200%20416.667%20186.548%20416.667%20416.667%200%20230.119-186.548%20416.667-416.667%20416.667zm0-50c202.504%200%20366.667-164.163%20366.667-366.667%200-202.504-164.163-366.667-366.667-366.667-202.504%200-366.667%20164.163-366.667%20366.667%200%20202.504%20164.163%20366.667%20366.667%20366.667z%22%20fill-rule%3D%22evenodd%22%20fill-opacity%3D%22.9%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%221000%22%20height%3D%221000%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M500%20916.667C269.881%20916.667%2083.333%20730.119%2083.333%20500%2083.333%20269.881%20269.881%2083.333%20500%2083.333c230.119%200%20416.667%20186.548%20416.667%20416.667%200%20230.119-186.548%20416.667-416.667%20416.667zm0-50c202.504%200%20366.667-164.163%20366.667-366.667%200-202.504-164.163-366.667-366.667-366.667-202.504%200-366.667%20164.163-366.667%20366.667%200%20202.504%20164.163%20366.667%20366.667%20366.667z%22%20fill-rule%3D%22evenodd%22%20fill-opacity%3D%22.9%22%2F%3E%3C%2Fsvg%3E);
  color: rgba(0,0,0,0.3);
  color: var(--weui-FG-2);
  width: 1em;
  height: 1em;
  font-size: 17px;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
  margin-top: 0;
}

.weui-agree__checkbox-check {
  opacity: 0;
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.weui-agree__checkbox:checked,.weui-agree__checkbox-check[aria-checked="true"]+.weui-agree__checkbox {
  -webkit-mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-1.177-7.86l-2.765-2.767L7%2012.431l3.119%203.121a1%201%200%20001.414%200l5.952-5.95-1.062-1.062-5.6%205.6z%22%2F%3E%3C%2Fsvg%3E);
  mask-image: url(data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-1.177-7.86l-2.765-2.767L7%2012.431l3.119%203.121a1%201%200%20001.414%200l5.952-5.95-1.062-1.062-5.6%205.6z%22%2F%3E%3C%2Fsvg%3E);
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-agree_animate {
  -webkit-animation: weuiAgree 0.3s 1;
  animation: weuiAgree 0.3s 1;
}

@-webkit-keyframes weuiAgree {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  16% {
    -webkit-transform: translateX(-8px);
    transform: translateX(-8px);
  }

  28% {
    -webkit-transform: translateX(-16px);
    transform: translateX(-16px);
  }

  44% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  59% {
    -webkit-transform: translateX(-16px);
    transform: translateX(-16px);
  }

  73% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  82% {
    -webkit-transform: translateX(16px);
    transform: translateX(16px);
  }

  94% {
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes weuiAgree {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  16% {
    -webkit-transform: translateX(-8px);
    transform: translateX(-8px);
  }

  28% {
    -webkit-transform: translateX(-16px);
    transform: translateX(-16px);
  }

  44% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  59% {
    -webkit-transform: translateX(-16px);
    transform: translateX(-16px);
  }

  73% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  82% {
    -webkit-transform: translateX(16px);
    transform: translateX(16px);
  }

  94% {
    -webkit-transform: translateX(8px);
    transform: translateX(8px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.weui-primary-loading {
  font-size: 16px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  position: relative;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  color: #606060;
  -webkit-animation: circleLoading 1s steps(60,end) infinite;
  animation: circleLoading 1s steps(60,end) infinite;
}

.weui-primary-loading::before,.weui-primary-loading::after {
  content: "";
  display: block;
  width: 0.5em;
  height: 1em;
  box-sizing: border-box;
  border: 0.0875em solid;
  border-color: currentColor;
}

.weui-primary-loading::before {
  border-right-width: 0;
  border-top-left-radius: 1em;
  border-bottom-left-radius: 1em;
  -webkit-mask-image: -webkit-linear-gradient(top,#000000 8%,rgba(0,0,0,0.3) 95%);
}

.weui-primary-loading::after {
  border-left-width: 0;
  border-top-right-radius: 1em;
  border-bottom-right-radius: 1em;
  -webkit-mask-image: -webkit-linear-gradient(top,rgba(0,0,0,0) 8%,rgba(0,0,0,0.3) 95%);
}

.weui-primary-loading__dot {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -0.04375em;
  width: 0.0875em;
  height: 0.0875em;
  border-top-right-radius: 100%;
  border-bottom-right-radius: 100%;
  background: currentColor;
}

@-webkit-keyframes circleLoading {
  0% {
    -webkit-transform: rotate3d(0,0,1,0deg);
    transform: rotate3d(0,0,1,0deg);
  }

  100% {
    -webkit-transform: rotate3d(0,0,1,360deg);
    transform: rotate3d(0,0,1,360deg);
  }
}

@keyframes circleLoading {
  0% {
    -webkit-transform: rotate3d(0,0,1,0deg);
    transform: rotate3d(0,0,1,0deg);
  }

  100% {
    -webkit-transform: rotate3d(0,0,1,360deg);
    transform: rotate3d(0,0,1,360deg);
  }
}

.weui-primary-loading_brand {
  color: #07c160;
  color: var(--weui-BRAND);
}

.weui-primary-loading_transparent {
  color: #ededed;
}

.weui-loading {
  font-size: 16px;
  width: 1em;
  height: 1em;
  display: inline-block;
  vertical-align: middle;
  background: transparent url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3Eloading%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23606060' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23606060' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A") no-repeat;
  background-size: 100%;
}

.weui-loading.weui-loading_transparent,.weui-loading.weui-icon_toast,.weui-btn_loading.weui-btn_primary .weui-loading {
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3Eloading%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23ededed' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23ededed' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23ededed' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23ededed' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23ededed' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A");
}

.weui-mask-loading {
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  width: 1em;
  height: 1em;
  -webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3Eloading%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23606060' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23606060' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A") 0 0 no-repeat;
  mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3Eloading%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23606060' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23606060' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A") 0 0 no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: currentColor;
  color: #606060;
}

@-webkit-keyframes weuiLoading {
  0% {
    -webkit-transform: rotate3d(0,0,1,0deg);
    transform: rotate3d(0,0,1,0deg);
  }

  100% {
    -webkit-transform: rotate3d(0,0,1,360deg);
    transform: rotate3d(0,0,1,360deg);
  }
}

@keyframes weuiLoading {
  0% {
    -webkit-transform: rotate3d(0,0,1,0deg);
    transform: rotate3d(0,0,1,0deg);
  }

  100% {
    -webkit-transform: rotate3d(0,0,1,360deg);
    transform: rotate3d(0,0,1,360deg);
  }
}

.weui-slider {
  padding: 15px 18px;
  -webkit-user-select: none;
  user-select: none;
}

.weui-slider__inner {
  position: relative;
  height: 2px;
  background-color: rgba(0,0,0,0.1);
  background-color: var(--weui-FG-3);
}

.weui-slider__track {
  height: 100%;
  background-color: #07c160;
  background-color: var(--weui-BRAND);
  width: 0;
}

.weui-slider__handler {
  position: absolute;
  left: 0;
  top: 50%;
  width: 28px;
  height: 28px;
  margin-left: -14px;
  margin-top: -14px;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 0 0 4px rgba(0,0,0,0.1);
  box-shadow: 0 0 4px var(--weui-FG-3);
}

.weui-slider-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.weui-slider-box .weui-slider {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
}

.weui-slider-box__value {
  margin-left: 0.5em;
  min-width: 24px;
  color: rgba(0,0,0,0.55);
  color: var(--weui-FG-1);
  text-align: center;
  font-size: 14px;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlL2Jhc2UvdmFyaWFibGUvd2V1aS1idXR0b24ubGVzcyIsInN0eWxlL3dldWkuY3NzIiwic3R5bGUvYmFzZS90aGVtZS9mbi5sZXNzIiwic3R5bGUvYmFzZS9yZXNldC5sZXNzIiwic3R5bGUvYmFzZS9taXhpbi9tb2JpbGUubGVzcyIsInN0eWxlL2Jhc2UvdGhlbWUvaW5kZXgubGVzcyIsInN0eWxlL2Jhc2UvdGhlbWUvdmFycy9saWdodC5sZXNzIiwic3R5bGUvYmFzZS90aGVtZS92YXJzL2RhcmsubGVzcyIsInN0eWxlL2Jhc2UvdGhlbWUvdmFycy9jYXJlLWxpZ2h0Lmxlc3MiLCJzdHlsZS9iYXNlL3RoZW1lL3ZhcnMvY2FyZS1kYXJrLmxlc3MiLCJzdHlsZS9pY29uL3dldWktaWNvbi5sZXNzIiwic3R5bGUvYmFzZS9hMTF5Lmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10ZXh0L3dldWktbGluay5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYnV0dG9uL3dldWktYnRuX2dsb2JhbC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYnV0dG9uL3dldWktYnRuX2RlZmF1bHQubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWJ1dHRvbi93ZXVpLWJ0bl9wcmltYXJ5Lmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1idXR0b24vd2V1aS1idG5fd2Fybi5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYnV0dG9uL3dldWktYnRuX292ZXJsYXkubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWJ1dHRvbi93ZXVpLWJ0bl9kaXNhYmxlZC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYnV0dG9uL3dldWktYnRuX2xvYWRpbmcubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWJ1dHRvbi93ZXVpLWJ0bl9jZWxsLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1idXR0b24vd2V1aS1idG5fYm90dG9tLWZpeGVkLmxlc3MiLCJzdHlsZS9iYXNlL21peGluL2J0bldyYXBMYXlvdXQubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWJ1dHRvbi93ZXVpLWJ1dHRvbi5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWNlbGxfZ2xvYmFsLmxlc3MiLCJzdHlsZS9iYXNlL21peGluL3NldE9uZXB4Lmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktY2VsbF9zd2lwZWQubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1hY2Nlc3MubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1jaGVjay93ZXVpLWNoZWNrX2NvbW1vbi5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWNoZWNrL3dldWktcmFkaW8ubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1jaGVjay93ZXVpLWNoZWNrYm94Lmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktZm9ybS93ZXVpLWZvcm1fY29tbW9uLmxlc3MiLCJzdHlsZS9iYXNlL21peGluL3RleHQubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1mb3JtL3dldWktZm9ybS1wcmV2aWV3Lmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktZm9ybS93ZXVpLXNlbGVjdC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWZvcm0vd2V1aS12Y29kZS5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWdhbGxlcnkubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1zd2l0Y2gubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS11cGxvYWRlci5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktcGFnZS93ZXVpLW1zZy5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktc3RlcHMvd2V1aS1zdGVwcy5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWNlbGxzX19ncm91cC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktcGFnZS93ZXVpLWZvcm0ubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXBhZ2Uvd2V1aS1hcnRpY2xlLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10YWIvd2V1aS10YWJiYXIubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRhYi93ZXVpLW5hdmJhci5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktdGFiL3dldWktdGFiLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1wcm9ncmVzcy93ZXVpLXByb2dyZXNzLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1wYW5lbC93ZXVpLXBhbmVsLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1tZWRpYS1ib3gvd2V1aS1tZWRpYS1ib3gubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWdyaWQvd2V1aS1ncmlkLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1mb290ZXIvd2V1aS1mb290ZXIubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWZsZXgvd2V1aS1mbGV4Lmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10aXBzL3dldWktZGlhbG9nLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10aXBzL3dldWktaGFsZi1zY3JlZW4tZGlhbG9nLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10aXBzL3dldWktdG9hc3QubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRpcHMvd2V1aS1tYXNrLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10aXBzL3dldWktYWN0aW9uc2hlZXQubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRpcHMvd2V1aS1sb2FkbW9yZS5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktdGlwcy93ZXVpLWJhZGdlLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10aXBzL3dldWktdG9wdGlwcy5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktdGlwcy93ZXVpLWluZm9ybWF0aW9uLWJhci5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktdGlwcy93ZXVpLWxpc3QtdGlwcy5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktc2VhcmNoYmFyL3dldWktc2VhcmNoYmFyLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1waWNrZXIvd2V1aS1waWNrZXIubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWFuaW1hdGUvd2V1aS1hbmltYXRlLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1hZ3JlZS93ZXVpLWFncmVlLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1sb2FkaW5nL3dldWktcHJpbWFyeS1sb2FkaW5nLmxlc3MiLCJzdHlsZS9iYXNlL21peGluL3NldExvYWRpbmcubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWxvYWRpbmcvd2V1aS1sb2FkaW5nLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1zbGlkZXIvd2V1aS1zbGlkZXIubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQW1CQTs7O0VBR0UscUJBQUE7RUFDQSw0QkFBQTtFQUNBLDJCQUFBO0NDaUxEO0FDeEtDOztFQU5FLDBDQUFBO0NEa0xIO0FDeEtDOztFQVJFLGdEQUFBO0NEb0xIO0FDdktDO0VBQ0U7O0lBZEEsZ0RBQUE7R0R5TEQ7Q0FDRjtBQ3RMQzs7RUFORSxxQ0FBQTtDRGdNSDtBQ3RMQzs7RUFSRSx3REFBQTtDRGtNSDtBQ3JMQztFQUNFOztJQWRBLHdEQUFBO0dEdU1EO0NBQ0Y7QUNwTUM7O0VBTkUsNENBQUE7Q0QwUUg7QUNoUUM7O0VBUkUsa0RBQUE7Q0Q0UUg7QUMvUEM7RUFDRTs7SUFkQSxrREFBQTtHRGlSRDtDQUNGO0FFN1JEO0VBQ0UsMEJBQUE7RUFDQSw4QkFBQTtDRitSRDtBRTVSRDtFQUNFLGdCQUFBO0VBQ0EsbUVBQUE7Q0Y4UkQ7QUUzUkQ7RUFDRSxTQUFBO0VBQ0EsVUFBQTtFQUNBLFVBQUE7Q0Y2UkQ7QUUxUkQ7RUFDRSxTQUFBO0NGNFJEO0FFelJEO0VBQ0UscUJBQUE7RUN0QkEsNkNBQUE7Q0hrVEQ7QUV6UkQ7O0VBRUUsOEJBQUE7Q0YyUkQ7QUV6UkQ7RUFDRSx1QkFBQTtD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QUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7RUFBQSwyQkFBQTtVQUFBLG1CQUFBO0NyRXlqTEQ7QXFFM2pMRDtFQUlJLG1CQUFBO0VBQUEsZUFBQTtVQUFBLE9BQUE7Q3JFMGpMSDtBcUV2akxEO0VBQ0Usa0JBQUE7RUFDQSxlQUFBO0VBQ0EsdUJBQUE7RUFDQSxrQkFBQTtFQUNBLGVBQUE7Q3JFeWpMRCIsImZpbGUiOiJzdHlsZS93ZXVpLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG5cbmJvZHksXG4ud3gtcm9vdCxcbnBhZ2Uge1xuICAtLXdldWktQlROLUhFSUdIVDogNDg7XG4gIC0td2V1aS1CVE4tSEVJR0hULU1FRElVTTogNDA7XG4gIC0td2V1aS1CVE4tSEVJR0hULVNNQUxMOiAzMjtcbn1cbi5zZXRDb2xvcigtLXdldWktQlROLUFDVElWRS1NQVNLLCByZ2JhKDAsMCwwLDAuMSksIHJnYmEoMjU1LDI1NSwyNTUsMC4xKSk7XG5cblxuXG4uc2V0Q29sb3IoLS13ZXVpLUJUTi1ERUZBVUxULUFDVElWRS1CRywgb3ZlcmxheShyZ2JhKDAsIDAsIDAsIDAuMDUpLCAjZjJmMmYyKSwgb3ZlcmxheShyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpKSk7XG5cbkB3ZXVpQnRuV2lkdGg6IDE4NHB4O1xuQHdldWlCdG5IZWlnaHQ6IDQ4cHg7XG5Ad2V1aUJ0bkZvbnRTaXplOiAxN3B4O1xuQHdldWlCdG5Cb3JkZXJSYWRpdXM6IDhweDtcbkB3ZXVpQnRuRGVmYXVsdEdhcDogMTZweDtcblxuQHdldWlCdG5NaW5pRm9udFNpemU6IDE0cHg7XG5Ad2V1aUJ0bk1pbmlIZWlnaHQ6IDMycHg7XG5cbkB3ZXVpQnRuQ2VsbEhlaWdodDogNTZweDtcbkB3ZXVpQnRuQ2VsbEdhcDogMTZweDtcbkB3ZXVpQnRuQ2VsbExpbmVIZWlnaHQ6dW5pdCgoKEB3ZXVpQnRuQ2VsbEhlaWdodCAtIDIgKiBAd2V1aUJ0bkNlbGxHYXApIC8gQHdldWlCdG5Gb250U2l6ZSkpO1xuXG5Ad2V1aUJ0bkZvbnRDb2xvcjogI2ZmZjtcbkB3ZXVpQnRuRGlzYWJsZWRGb250Q29sb3I6IHZhcigtLXdldWktRkctNCk7XG5Ad2V1aUJ0bkRpc2FibGVkQmc6IHZhcigtLXdldWktRkctNSk7XG5cblxuLy8gZGVmYXVsdFxuQHdldWlCdG5EZWZhdWx0Rm9udENvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuQHdldWlCdG5EZWZhdWx0RGlzYWJsZWRGb250Q29sb3I6IEB3ZXVpQnRuRGlzYWJsZWRGb250Q29sb3I7XG5Ad2V1aUJ0bkRlZmF1bHRCZzogdmFyKC0td2V1aS1GRy01KTtcbkB3ZXVpQnRuRGVmYXVsdEFjdGl2ZUJnOiB2YXIoLS13ZXVpLUJUTi1ERUZBVUxULUFDVElWRS1CRyk7XG5Ad2V1aUJ0bkRlZmF1bHREaXNhYmxlZEJnOiBAd2V1aUJ0bkRpc2FibGVkQmc7XG5cbi8vIHByaW1hcnlcbkB3ZXVpQnRuUHJpbWFyeUZvbnRDb2xvcjogQHdldWlCdG5Gb250Q29sb3I7XG5Ad2V1aUJ0blByaW1hcnlEaXNhYmxlZEZvbnRDb2xvcjogQHdldWlCdG5EaXNhYmxlZEZvbnRDb2xvcjtcbkB3ZXVpQnRuUHJpbWFyeUJnOiB2YXIoLS13ZXVpLUJSQU5EKTtcbkB3ZXVpQnRuUHJpbWFyeUFjdGl2ZUJnOiB2YXIoLS13ZXVpLVRBRy1URVhULUdSRUVOKTtcbkB3ZXVpQnRuUHJpbWFyeURpc2FibGVkQmc6IEB3ZXVpQnRuRGlzYWJsZWRCZztcblxuLy8gd2FyblxuQHdldWlCdG5XYXJuRm9udENvbG9yOiBAd2V1aUNvbG9yV2FybjtcbkB3ZXVpQnRuV2FybkRpc2FibGVkRm9udENvbG9yOiBAd2V1aUJ0bkRpc2FibGVkRm9udENvbG9yO1xuQHdldWlCdG5XYXJuQmc6IEB3ZXVpQnRuRGVmYXVsdEJnO1xuQHdldWlCdG5XYXJuQWN0aXZlQmc6IEB3ZXVpQnRuRGVmYXVsdEFjdGl2ZUJnO1xuQHdldWlCdG53YXJuRGlzYWJsZWRCZzogQHdldWlCdG5EZWZhdWx0RGlzYWJsZWRCZztcbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKlxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbipcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKlxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5ib2R5LFxuLnd4LXJvb3QsXG5wYWdlIHtcbiAgLS13ZXVpLUJUTi1IRUlHSFQ6IDQ4O1xuICAtLXdldWktQlROLUhFSUdIVC1NRURJVU06IDQwO1xuICAtLXdldWktQlROLUhFSUdIVC1TTUFMTDogMzI7XG59XG4ud3gtcm9vdCxcbmJvZHkge1xuICAtLXdldWktQlROLUFDVElWRS1NQVNLOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktQlROLUFDVElWRS1NQVNLOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC0td2V1aS1CVE4tQUNUSVZFLU1BU0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgfVxufVxuLnd4LXJvb3QsXG5ib2R5IHtcbiAgLS13ZXVpLUJUTi1ERUZBVUxULUFDVElWRS1CRzogI2U2ZTZlNjtcbn1cbi53eC1yb290W2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1CVE4tREVGQVVMVC1BQ1RJVkUtQkc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMjYpO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSksXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktQlROLURFRkFVTFQtQUNUSVZFLUJHOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTI2KTtcbiAgfVxufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud3gtcm9vdCxcbmJvZHkge1xuICAtLXdldWktRElBTE9HLUxJTkUtQ09MT1I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbi53eC1yb290W2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1ESUFMT0ctTElORS1DT0xPUjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSksXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktRElBTE9HLUxJTkUtQ09MT1I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgfVxufVxuaHRtbCB7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC1mYW1pbHk6IHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xufVxuKiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbn1cbmEgaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIGNhcmV0LWNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbn1cbmJvZHksXG4ud3gtcm9vdCB7XG4gIC0td2V1aS1CRy0wOiAjZWRlZGVkO1xuICAtLXdldWktQkctMTogI2Y3ZjdmNztcbiAgLS13ZXVpLUJHLTI6ICNmZmY7XG4gIC0td2V1aS1CRy0zOiAjZjdmN2Y3O1xuICAtLXdldWktQkctNDogIzRjNGM0YztcbiAgLS13ZXVpLUJHLTU6ICNmZmY7XG4gIC0td2V1aS1GRy0wOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gIC0td2V1aS1GRy1IQUxGOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gIC0td2V1aS1GRy0xOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xuICAtLXdldWktRkctMjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAtLXdldWktRkctMzogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtLXdldWktRkctNDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLS13ZXVpLUZHLTU6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIC0td2V1aS1SRUQ6ICNmYTUxNTE7XG4gIC0td2V1aS1PUkFOR0VSRUQ6ICNmZjYxNDY7XG4gIC0td2V1aS1PUkFOR0U6ICNmYTlkM2I7XG4gIC0td2V1aS1ZRUxMT1c6ICNmZmMzMDA7XG4gIC0td2V1aS1HUkVFTjogIzkxZDMwMDtcbiAgLS13ZXVpLUxJR0hUR1JFRU46ICM5NWVjNjk7XG4gIC0td2V1aS1CUkFORDogIzA3YzE2MDtcbiAgLS13ZXVpLUJMVUU6ICMxMGFlZmY7XG4gIC0td2V1aS1JTkRJR086ICMxNDg1ZWU7XG4gIC0td2V1aS1QVVJQTEU6ICM2NDY3ZjA7XG4gIC0td2V1aS1XSElURTogI2ZmZjtcbiAgLS13ZXVpLUxJTks6ICM1NzZiOTU7XG4gIC0td2V1aS1URVhUR1JFRU46ICMwNmFlNTY7XG4gIC0td2V1aS1GRzogIzAwMDtcbiAgLS13ZXVpLUJHOiAjZmZmO1xuICAtLXdldWktVEFHLVRFWFQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtT1JBTkdFOiAjZmE5ZDNiO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtT1JBTkdFOiByZ2JhKDI1MCwgMTU3LCA1OSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUdSRUVOOiAjMDZhZTU2O1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMVUU6ICMxMGFlZmY7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMQUNLOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1CTEFDSzogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLS13ZXVpLVJFRE9SQU5HRTogI2ZmNjE0Njtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLUJHLTA6ICMxMTE7XG4gICAgLS13ZXVpLUJHLTE6ICMxZTFlMWU7XG4gICAgLS13ZXVpLUJHLTI6ICMxOTE5MTk7XG4gICAgLS13ZXVpLUJHLTM6ICMyMDIwMjA7XG4gICAgLS13ZXVpLUJHLTQ6ICM0MDQwNDA7XG4gICAgLS13ZXVpLUJHLTU6ICMyYzJjMmM7XG4gICAgLS13ZXVpLUZHLTA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAtLXdldWktRkctSEFMRjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAgIC0td2V1aS1GRy0xOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgLS13ZXVpLUZHLTI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICAtLXdldWktRkctMzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIC0td2V1aS1GRy00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAgIC0td2V1aS1GRy01OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgLS13ZXVpLVJFRDogI2ZhNTE1MTtcbiAgICAtLXdldWktT1JBTkdFUkVEOiAjZmY2MTQ2O1xuICAgIC0td2V1aS1PUkFOR0U6ICNjODdkMmY7XG4gICAgLS13ZXVpLVlFTExPVzogI2NjOWMwMDtcbiAgICAtLXdldWktR1JFRU46ICM3NGE4MDA7XG4gICAgLS13ZXVpLUxJR0hUR1JFRU46ICMzZWI1NzU7XG4gICAgLS13ZXVpLUJSQU5EOiAjMDdjMTYwO1xuICAgIC0td2V1aS1CTFVFOiAjMTBhZWZmO1xuICAgIC0td2V1aS1JTkRJR086ICMxMTk2ZmY7XG4gICAgLS13ZXVpLVBVUlBMRTogIzgxODNmZjtcbiAgICAtLXdldWktV0hJVEU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAtLXdldWktTElOSzogIzdkOTBhOTtcbiAgICAtLXdldWktVEVYVEdSRUVOOiAjMjU5YzVjO1xuICAgIC0td2V1aS1GRzogI2ZmZjtcbiAgICAtLXdldWktQkc6ICMwMDA7XG4gICAgLS13ZXVpLVRBRy1URVhULVJFRDogcmdiYSgyNTAsIDgxLCA4MSwgMC42KTtcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjEpO1xuICAgIC0td2V1aS1UQUctVEVYVC1PUkFOR0U6IHJnYmEoMjUwLCAxNTcsIDU5LCAwLjYpO1xuICAgIC0td2V1aS1UQUctQkFDS0dST1VORC1PUkFOR0U6IHJnYmEoMjUwLCAxNTcsIDU5LCAwLjEpO1xuICAgIC0td2V1aS1UQUctVEVYVC1HUkVFTjogcmdiYSg2LCAxNzQsIDg2LCAwLjYpO1xuICAgIC0td2V1aS1UQUctQkFDS0dST1VORC1HUkVFTjogcmdiYSg2LCAxNzQsIDg2LCAwLjEpO1xuICAgIC0td2V1aS1UQUctVEVYVC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC42KTtcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxVRTogcmdiYSgxNiwgMTc0LCAyNTUsIDAuMSk7XG4gICAgLS13ZXVpLVRBRy1URVhULUJMQUNLOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMQUNLOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAgIC0td2V1aS1SRURPUkFOR0U6ICNmZjYxNDY7XG4gIH1cbn1cbi53eC1yb290W2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1CRy0wOiAjMTExO1xuICAtLXdldWktQkctMTogIzFlMWUxZTtcbiAgLS13ZXVpLUJHLTI6ICMxOTE5MTk7XG4gIC0td2V1aS1CRy0zOiAjMjAyMDIwO1xuICAtLXdldWktQkctNDogIzQwNDA0MDtcbiAgLS13ZXVpLUJHLTU6ICMyYzJjMmM7XG4gIC0td2V1aS1GRy0wOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIC0td2V1aS1GRy1IQUxGOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gIC0td2V1aS1GRy0xOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIC0td2V1aS1GRy0yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gIC0td2V1aS1GRy0zOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIC0td2V1aS1GRy00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAtLXdldWktRkctNTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtLXdldWktUkVEOiAjZmE1MTUxO1xuICAtLXdldWktT1JBTkdFUkVEOiAjZmY2MTQ2O1xuICAtLXdldWktT1JBTkdFOiAjYzg3ZDJmO1xuICAtLXdldWktWUVMTE9XOiAjY2M5YzAwO1xuICAtLXdldWktR1JFRU46ICM3NGE4MDA7XG4gIC0td2V1aS1MSUdIVEdSRUVOOiAjM2ViNTc1O1xuICAtLXdldWktQlJBTkQ6ICMwN2MxNjA7XG4gIC0td2V1aS1CTFVFOiAjMTBhZWZmO1xuICAtLXdldWktSU5ESUdPOiAjMTE5NmZmO1xuICAtLXdldWktUFVSUExFOiAjODE4M2ZmO1xuICAtLXdldWktV0hJVEU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgLS13ZXVpLUxJTks6ICM3ZDkwYTk7XG4gIC0td2V1aS1URVhUR1JFRU46ICMyNTljNWM7XG4gIC0td2V1aS1GRzogI2ZmZjtcbiAgLS13ZXVpLUJHOiAjMDAwO1xuICAtLXdldWktVEFHLVRFWFQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtT1JBTkdFOiByZ2JhKDI1MCwgMTU3LCA1OSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1HUkVFTjogcmdiYSg2LCAxNzQsIDg2LCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxVRTogcmdiYSgxNiwgMTc0LCAyNTUsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1CTEFDSzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIC0td2V1aS1SRURPUkFOR0U6ICNmZjYxNDY7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktbW9kZT0nY2FyZSddLFxuYm9keVtkYXRhLXdldWktbW9kZT0nY2FyZSddIHtcbiAgLS13ZXVpLUJHLTA6ICNlZGVkZWQ7XG4gIC0td2V1aS1CRy0xOiAjZjdmN2Y3O1xuICAtLXdldWktQkctMjogI2ZmZjtcbiAgLS13ZXVpLUJHLTM6ICNmN2Y3Zjc7XG4gIC0td2V1aS1CRy00OiAjNGM0YzRjO1xuICAtLXdldWktQkctNTogI2ZmZjtcbiAgLS13ZXVpLUZHLTA6ICMwMDAwMDA7XG4gIC0td2V1aS1GRy1IQUxGOiAjMDAwMDAwO1xuICAtLXdldWktRkctMTogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAtLXdldWktRkctMjogcmdiYSgwLCAwLCAwLCAwLjQyKTtcbiAgLS13ZXVpLUZHLTM6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgLS13ZXVpLUZHLTQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIC0td2V1aS1GRy01OiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAtLXdldWktUkVEOiAjZGMzNjM2O1xuICAtLXdldWktT1JBTkdFUkVEOiAjZDE0NzMwO1xuICAtLXdldWktT1JBTkdFOiAjZTE3NzE5O1xuICAtLXdldWktWUVMTE9XOiAjYmI4ZTAwO1xuICAtLXdldWktR1JFRU46ICM0Zjg0MDA7XG4gIC0td2V1aS1MSUdIVEdSRUVOOiAjMmU4ODAwO1xuICAtLXdldWktQlJBTkQ6ICMwMTg5NDI7XG4gIC0td2V1aS1CTFVFOiAjMDA3ZGJiO1xuICAtLXdldWktSU5ESUdPOiAjMDA3NWUyO1xuICAtLXdldWktUFVSUExFOiAjNjI2NWYxO1xuICAtLXdldWktV0hJVEU6ICNmZmY7XG4gIC0td2V1aS1MSU5LOiAjNTc2Yjk1O1xuICAtLXdldWktVEVYVEdSRUVOOiAjMDZhZTU2O1xuICAtLXdldWktRkc6ICMwMDA7XG4gIC0td2V1aS1CRzogI2ZmZjtcbiAgLS13ZXVpLVRBRy1URVhULVJFRDogcmdiYSgyNTAsIDgxLCA4MSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELVJFRDogcmdiYSgyNTAsIDgxLCA4MSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULU9SQU5HRTogI2UxNzcxOTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELU9SQU5HRTogcmdiYSgyMjUsIDExOSwgMjUsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1HUkVFTjogIzA2YWU1NjtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1CTFVFOiAjMDA3ZGJiO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxVRTogcmdiYSgwLCAxMjUsIDE4NywgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMQUNLOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1CTEFDSzogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLS13ZXVpLVJFRE9SQU5HRTogI2QxNDczMDtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3RbZGF0YS13ZXVpLW1vZGU9J2NhcmUnXTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSksXG4gIGJvZHlbZGF0YS13ZXVpLW1vZGU9J2NhcmUnXTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC0td2V1aS1CRy0wOiAjMTExO1xuICAgIC0td2V1aS1CRy0xOiAjMWUxZTFlO1xuICAgIC0td2V1aS1CRy0yOiAjMTkxOTE5O1xuICAgIC0td2V1aS1CRy0zOiAjMjAyMDIwO1xuICAgIC0td2V1aS1CRy00OiAjNDA0MDQwO1xuICAgIC0td2V1aS1CRy01OiAjMmMyYzJjO1xuICAgIC0td2V1aS1GRy0wOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICAgIC0td2V1aS1GRy1IQUxGOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpO1xuICAgIC0td2V1aS1GRy0xOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpO1xuICAgIC0td2V1aS1GRy0yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xuICAgIC0td2V1aS1GRy0zOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgLS13ZXVpLUZHLTQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gICAgLS13ZXVpLUZHLTU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAtLXdldWktUkVEOiAjZmE1MTUxO1xuICAgIC0td2V1aS1PUkFOR0VSRUQ6ICNmZjYxNDY7XG4gICAgLS13ZXVpLU9SQU5HRTogI2M4N2QyZjtcbiAgICAtLXdldWktWUVMTE9XOiAjY2M5YzAwO1xuICAgIC0td2V1aS1HUkVFTjogIzc0YTgwMDtcbiAgICAtLXdldWktTElHSFRHUkVFTjogIzNlYjU3NTtcbiAgICAtLXdldWktQlJBTkQ6ICMwN2MxNjA7XG4gICAgLS13ZXVpLUJMVUU6ICMxMGFlZmY7XG4gICAgLS13ZXVpLUlORElHTzogIzExOTZmZjtcbiAgICAtLXdldWktUFVSUExFOiAjODE4M2ZmO1xuICAgIC0td2V1aS1XSElURTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIC0td2V1aS1MSU5LOiAjN2Q5MGE5O1xuICAgIC0td2V1aS1URVhUR1JFRU46ICMyNTljNWM7XG4gICAgLS13ZXVpLUZHOiAjZmZmO1xuICAgIC0td2V1aS1CRzogIzAwMDtcbiAgICAtLXdldWktVEFHLVRFWFQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjYpO1xuICAgIC0td2V1aS1UQUctQkFDS0dST1VORC1SRUQ6IHJnYmEoMjUwLCA4MSwgODEsIDAuMSk7XG4gICAgLS13ZXVpLVRBRy1URVhULU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuNik7XG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuMSk7XG4gICAgLS13ZXVpLVRBRy1URVhULUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuNik7XG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuMSk7XG4gICAgLS13ZXVpLVRBRy1URVhULUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjYpO1xuICAgIC0td2V1aS1UQUctQkFDS0dST1VORC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC4xKTtcbiAgICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gICAgLS13ZXVpLVJFRE9SQU5HRTogI2ZmNjE0NjtcbiAgfVxufVxuLnd4LXJvb3RbZGF0YS13ZXVpLW1vZGU9J2NhcmUnXVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLW1vZGU9J2NhcmUnXVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1CRy0wOiAjMTExO1xuICAtLXdldWktQkctMTogIzFlMWUxZTtcbiAgLS13ZXVpLUJHLTI6ICMxOTE5MTk7XG4gIC0td2V1aS1CRy0zOiAjMjAyMDIwO1xuICAtLXdldWktQkctNDogIzQwNDA0MDtcbiAgLS13ZXVpLUJHLTU6ICMyYzJjMmM7XG4gIC0td2V1aS1GRy0wOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICAtLXdldWktRkctSEFMRjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY1KTtcbiAgLS13ZXVpLUZHLTE6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XG4gIC0td2V1aS1GRy0yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xuICAtLXdldWktRkctMzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtLXdldWktRkctNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgLS13ZXVpLUZHLTU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgLS13ZXVpLVJFRDogI2ZhNTE1MTtcbiAgLS13ZXVpLU9SQU5HRVJFRDogI2ZmNjE0NjtcbiAgLS13ZXVpLU9SQU5HRTogI2M4N2QyZjtcbiAgLS13ZXVpLVlFTExPVzogI2NjOWMwMDtcbiAgLS13ZXVpLUdSRUVOOiAjNzRhODAwO1xuICAtLXdldWktTElHSFRHUkVFTjogIzNlYjU3NTtcbiAgLS13ZXVpLUJSQU5EOiAjMDdjMTYwO1xuICAtLXdldWktQkxVRTogIzEwYWVmZjtcbiAgLS13ZXVpLUlORElHTzogIzExOTZmZjtcbiAgLS13ZXVpLVBVUlBMRTogIzgxODNmZjtcbiAgLS13ZXVpLVdISVRFOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIC0td2V1aS1MSU5LOiAjN2Q5MGE5O1xuICAtLXdldWktVEVYVEdSRUVOOiAjMjU5YzVjO1xuICAtLXdldWktRkc6ICNmZmY7XG4gIC0td2V1aS1CRzogIzAwMDtcbiAgLS13ZXVpLVRBRy1URVhULVJFRDogcmdiYSgyNTAsIDgxLCA4MSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELVJFRDogcmdiYSgyNTAsIDgxLCA4MSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuNik7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1PUkFOR0U6IHJnYmEoMjUwLCAxNTcsIDU5LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMQUNLOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAtLXdldWktUkVET1JBTkdFOiAjZmY2MTQ2O1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzICovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53eC1yb290LFxuYm9keSB7XG4gIC0td2V1aS1CRy1DT0xPUi1BQ1RJVkU6ICNlY2VjZWM7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktQkctQ09MT1ItQUNUSVZFOiAjMzczNzM3O1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSksXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktQkctQ09MT1ItQUNUSVZFOiAjMzczNzM3O1xuICB9XG59XG5bY2xhc3NePVwid2V1aS1pY29uLVwiXVtjbGFzc149XCJ3ZXVpLWljb24tXCJdLFxuW2NsYXNzXj1cIndldWktaWNvbi1cIl1bY2xhc3MqPVwiIHdldWktaWNvbi1cIl0sXG5bY2xhc3MqPVwiIHdldWktaWNvbi1cIl1bY2xhc3NePVwid2V1aS1pY29uLVwiXSxcbltjbGFzcyo9XCIgd2V1aS1pY29uLVwiXVtjbGFzcyo9XCIgd2V1aS1pY29uLVwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogMi40ZW07XG4gIGhlaWdodDogMi40ZW07XG4gIG1hc2stcG9zaXRpb246IDUwJSA1MCU7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xufVxuLndldWktaWNvbi1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTAwMCUyMiUyMGhlaWdodCUzRCUyMjEwMDAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMCUyMDkxNi42NjdDMjY5Ljg4MSUyMDkxNi42NjclMjA4My4zMzMlMjA3MzAuMTE5JTIwODMuMzMzJTIwNTAwJTIwODMuMzMzJTIwMjY5Ljg4MSUyMDI2OS44ODElMjA4My4zMzMlMjA1MDAlMjA4My4zMzNjMjMwLjExOSUyMDAlMjA0MTYuNjY3JTIwMTg2LjU0OCUyMDQxNi42NjclMjA0MTYuNjY3JTIwMCUyMDIzMC4xMTktMTg2LjU0OCUyMDQxNi42NjctNDE2LjY2NyUyMDQxNi42Njd6bTAtNTBjMjAyLjUwNCUyMDAlMjAzNjYuNjY3LTE2NC4xNjMlMjAzNjYuNjY3LTM2Ni42NjclMjAwLTIwMi41MDQtMTY0LjE2My0zNjYuNjY3LTM2Ni42NjctMzY2LjY2Ny0yMDIuNTA0JTIwMC0zNjYuNjY3JTIwMTY0LjE2My0zNjYuNjY3JTIwMzY2LjY2NyUyMDAlMjAyMDIuNTA0JTIwMTY0LjE2MyUyMDM2Ni42NjclMjAzNjYuNjY3JTIwMzY2LjY2N3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbC1vcGFjaXR5JTNEJTIyLjklMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1kb3dubG9hZCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMS4yNSUyMDEyLjA0bC0xLjcyLTEuNzItMS4wNiUyMDEuMDYlMjAyLjgyOCUyMDIuODNhMSUyMDElMjAwJTIwMDAxLjQxNC0uMDAxbDIuODI4LTIuODI4LTEuMDYtMS4wNjEtMS43MyUyMDEuNzNWN2gtMS41djUuMDR6bTAtNS4wNFYyaDEuNXY1aDYuMjUxYy41NSUyMDAlMjAuOTk5LjQ0Ni45OTkuOTk2djEzLjAwOGEuOTk4Ljk5OCUyMDAlMjAwMS0uOTk2Ljk5Nkg0Ljk5NkEuOTk4Ljk5OCUyMDAlMjAwMTQlMjAyMS4wMDRWNy45OTZBMSUyMDElMjAwJTIwMDE0Ljk5OSUyMDdoNi4yNTF6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24taW5mbyB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0uNzUtMTJ2N2gxLjV2LTdoLTEuNXpNMTIlMjA5YTElMjAxJTIwMCUyMDEwMC0yJTIwMSUyMDElMjAwJTIwMDAwJTIwMnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zYWZlLXN1Y2Nlc3Mge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTAwMCUyMDEwMDAlMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk01MDAuOSUyMDQuNkMzMTUuNSUyMDQ2LjclMjAxODAuNCUyMDkzLjElMjA1Ny42JTIwMTMyYzAlMjAxMjkuMy4yJTIwMjMxLjcuMiUyMDMzOS43JTIwMCUyMDMwNC4yJTIwMjQ4LjMlMjA0NzEuNiUyMDQ0My4xJTIwNTIzLjdDNjk1LjclMjA5NDMuMyUyMDk0NCUyMDc3NS45JTIwOTQ0JTIwNDcxLjdjMC0xMDglMjAuMi0yMTAuNC4yLTMzOS43QzgyMS40JTIwOTMuMSUyMDY4Ni4zJTIwNDYuNyUyMDUwMC45JTIwNC42em0yNDguMyUyMDM0OS4xbC0yOTkuNyUyMDI5NWMtMi4xJTIwMi01LjMlMjAyLTcuNC0uMUwzMDQuNCUyMDUwNi4xYy0yLTIuMS0yLjMtNS43LS42LThsMTguMy0yNC45YzEuNy0yLjMlMjA1LTIuOCUyMDcuMi0xbDExMi4yJTIwODZjMi4zJTIwMS44JTIwNiUyMDEuNyUyMDguMS0uMWwyNzQuNy0yMjguOWMyLjItMS44JTIwNS43LTEuNyUyMDcuNy4zbDE3JTIwMTYuOGMyLjIlMjAyLjElMjAyLjIlMjA1LjMuMiUyMDcuNHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwY2xpcC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGZpbGwlM0QlMjIlMjMwNzAyMDIlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zYWZlLXdhcm4ge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTAwMCUyMDEwMDAlMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk01MDAuOSUyMDQuNWMtMTg1LjQlMjA0Mi0zMjAuNCUyMDg4LjQtNDQzLjIlMjAxMjcuMyUyMDAlMjAxMjkuMy4yJTIwMjMxLjcuMiUyMDMzOS42JTIwMCUyMDMwNC4xJTIwMjQ4LjIlMjA0NzEuNCUyMDQ0MyUyMDUyMy42JTIwMTk0LjctNTIuMiUyMDQ0My0yMTkuNSUyMDQ0My01MjMuNiUyMDAtMTA3LjkuMi0yMTAuMy4yLTMzOS42QzgyMS4zJTIwOTIuOSUyMDY4Ni4yJTIwNDYuNSUyMDUwMC45JTIwNC41em0tMjYuMSUyMDI3MS4xaDUyLjFjNS44JTIwMCUyMDEwLjMlMjA0LjclMjAxMC4xJTIwMTAuNGwtMTEuNiUyMDMxMy44Yy0uMSUyMDIuOC0yLjUlMjA1LjItNS40JTIwNS4yaC0zOC4yYy0yLjklMjAwLTUuMy0yLjMtNS40LTUuMkw0NjQuOCUyMDI4NmMtLjItNS44JTIwNC4zLTEwLjQlMjAxMC0xMC40em0yNi4xJTIwNDQ4LjNjLTIwLjIlMjAwLTM2LjUtMTYuMy0zNi41LTM2LjVzMTYuMy0zNi41JTIwMzYuNS0zNi41JTIwMzYuNSUyMDE2LjMlMjAzNi41JTIwMzYuNS0xNi40JTIwMzYuNS0zNi41JTIwMzYuNXolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwY2xpcC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGZpbGwlM0QlMjIlMjMwMjAyMDIlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptLTEuMTc3LTcuODZsLTIuNzY1LTIuNzY3TDclMjAxMi40MzFsMy4xMTklMjAzLjEyMWExJTIwMSUyMDAlMjAwMDEuNDE0JTIwMGw1Ljk1Mi01Ljk1LTEuMDYyLTEuMDYyLTUuNiUyMDUuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLWNpcmNsZSB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bTAtMS4yYTguOCUyMDguOCUyMDAlMjAxMDAtMTcuNiUyMDguOCUyMDguOCUyMDAlMjAwMDAlMjAxNy42em0tMS4xNzItNi4yNDJsNS44MDktNS44MDguODQ4Ljg0OS01Ljk1JTIwNS45NWExJTIwMSUyMDAlMjAwMS0xLjQxNCUyMDBMNyUyMDEyLjQyNmwuODQ5LS44NDklMjAyLjk4JTIwMi45OHolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLW5vLWNpcmNsZSB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk04LjY1NyUyMDE4LjQzNUwzJTIwMTIuNzc4bDEuNDE0LTEuNDE0JTIwNC45NSUyMDQuOTVMMjAuNjc4JTIwNWwxLjQxNCUyMDEuNDE0LTEyLjAyJTIwMTIuMDIxYTElMjAxJTIwMCUyMDAxLTEuNDE1JTIwMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24td2FpdGluZyB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMi43NSUyMDExLjM4VjZoLTEuNXY2bDQuMjQzJTIwNC4yNDMlMjAxLjA2LTEuMDYtMy44MDMtMy44MDR6TTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24td2FpdGluZy1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuNiUyMDExLjUwM2wzLjg5MSUyMDMuODkxLS44NDguODQ5TDExLjQlMjAxMlY2aDEuMnY1LjUwM3pNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi13YXJuIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptLS43NjMtMTUuODY0bC4xMSUyMDcuNTk2aDEuMzA1bC4xMS03LjU5NmgtMS41MjV6bS43NTklMjAxMC45NjdjLjUxMiUyMDAlMjAuOTAyLS4zODMuOTAyLS44ODIlMjAwLS41LS4zOS0uODgyLS45MDItLjg4MmEuODc4Ljg3OCUyMDAlMjAwMC0uODk2Ljg4MmMwJTIwLjQ5OS4zOTYuODgyLjg5Ni44ODJ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tb3V0bGluZWQtd2FybiB7XG4gIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgY2xpcC1ydWxlPSdldmVub2RkJyBkPSdNMiAxMkMyIDE3LjUyMjggNi40NzcxNSAyMiAxMiAyMkMxNy41MjI4IDIyIDIyIDE3LjUyMjggMjIgMTJDMjIgNi40NzcxNSAxNy41MjI4IDIgMTIgMkM2LjQ3NzE1IDIgMiA2LjQ3NzE1IDIgMTJaTTIwLjggMTJDMjAuOCAxNi44NjAxIDE2Ljg2MDEgMjAuOCAxMiAyMC44QzcuMTM5ODkgMjAuOCAzLjIgMTYuODYwMSAzLjIgMTJDMy4yIDcuMTM5ODkgNy4xMzk4OSAzLjIgMTIgMy4yQzE2Ljg2MDEgMy4yIDIwLjggNy4xMzk4OSAyMC44IDEyWk0xMi42NTkyIDYuNDMxMTVMMTIuNTcxMyAxMy40OTE3SDExLjQyODdMMTEuMzQwOCA2LjQzMTE1SDEyLjY1OTJaTTExLjE2NSAxNi4yMzgzQzExLjE2NSAxNi43MDcgMTEuNTMxMiAxNy4wNzMyIDEyIDE3LjA3MzJDMTIuNDc2MSAxNy4wNzMyIDEyLjgzNSAxNi43MDcgMTIuODM1IDE2LjIzODNDMTIuODM1IDE1Ljc2MjIgMTIuNDc2MSAxNS40MDMzIDEyIDE1LjQwMzNDMTEuNTMxMiAxNS40MDMzIDExLjE2NSAxNS43NjIyIDExLjE2NSAxNi4yMzgzWicgZmlsbD0nYmxhY2snIC8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xufVxuLndldWktaWNvbi1pbmZvLWNpcmNsZSB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bTAtMS4yYTguOCUyMDguOCUyMDAlMjAxMDAtMTcuNiUyMDguOCUyMDguOCUyMDAlMjAwMDAlMjAxNy42ek0xMS40JTIwMTBoMS4ydjdoLTEuMnYtN3ptLjYtMWExJTIwMSUyMDAlMjAxMTAtMiUyMDElMjAxJTIwMCUyMDAxMCUyMDJ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tY2FuY2VsIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ2clMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnolMjIlMjBmaWxsLXJ1bGUlM0QlMjJub256ZXJvJTIyJTJGJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuODQ5JTIwMTJsMy4xMSUyMDMuMTExLS44NDguODQ5TDEyJTIwMTIuODQ5bC0zLjExMSUyMDMuMTEtLjg0OS0uODQ4TDExLjE1MSUyMDEybC0zLjExLTMuMTExLjg0OC0uODQ5TDEyJTIwMTEuMTUxbDMuMTExLTMuMTEuODQ5Ljg0OEwxMi44NDklMjAxMnolMjIlMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tc2VhcmNoIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTE2LjMxJTIwMTUuNTYxbDQuMTE0JTIwNC4xMTUtLjg0OC44NDgtNC4xMjMtNC4xMjNhNyUyMDclMjAwJTIwMTEuODU3LS44NHpNMTYuOCUyMDExYTUuOCUyMDUuOCUyMDAlMjAxMC0xMS42JTIwMCUyMDUuOCUyMDUuOCUyMDAlMjAwMDExLjYlMjAweiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1jbGVhciB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMy4wNiUyMDEybDMuMDA2LTMuMDA1LTEuMDYtMS4wNkwxMiUyMDEwLjkzOCUyMDguOTk1JTIwNy45MzRsLTEuMDYlMjAxLjA2TDEwLjkzOCUyMDEybC0zLjAwNSUyMDMuMDA1JTIwMS4wNiUyMDEuMDZMMTIlMjAxMy4wNjJsMy4wMDUlMjAzLjAwNSUyMDEuMDYtMS4wNkwxMy4wNjIlMjAxMnpNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEweiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWJhY2sge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0xLjk5OS02LjU2M0wxMC42OCUyMDEyJTIwMTQlMjA4LjU2MiUyMDEyLjk1MyUyMDcuNSUyMDkuMjklMjAxMS4yNzdhMS4wNDUlMjAxLjA0NSUyMDAlMjAwMDAlMjAxLjQ0NmwzLjY2MyUyMDMuNzc3TDE0JTIwMTUuNDM3eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1kZWxldGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNi43NzQlMjA2LjRsLjgxMiUyMDEzLjY0OGEuOC44JTIwMCUyMDAwLjc5OC43NTJoNy4yMzJhLjguOCUyMDAlMjAwMC43OTgtLjc1MkwxNy4yMjYlMjA2LjRINi43NzR6bTExLjY1NSUyMDBsLS44MTclMjAxMy43MTlBMiUyMDIlMjAwJTIwMDExNS42MTYlMjAyMkg4LjM4NGEyJTIwMiUyMDAlMjAwMS0xLjk5Ni0xLjg4MUw1LjU3MSUyMDYuNEgzLjV2LS43YS41LjUlMjAwJTIwMDEuNS0uNWgxNmEuNS41JTIwMCUyMDAxLjUuNXYuN2gtMi4wNzF6TTE0JTIwM2EuNS41JTIwMCUyMDAxLjUuNXYuN2gtNXYtLjdBLjUuNSUyMDAlMjAwMTEwJTIwM2g0ek05LjUlMjA5aDEuMmwuNSUyMDlIMTBsLS41LTl6bTMuOCUyMDBoMS4ybC0uNSUyMDloLTEuMmwuNS05eiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLXN1Y2Nlc3Mtbm8tY2lyY2xlLXRoaW4ge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNOC44NjQlMjAxNi42MTdsLTUuMzAzLTUuMzAzLTEuMDYxJTIwMS4wNiUyMDUuNjU3JTIwNS42NTdhMSUyMDElMjAwJTIwMDAxLjQxNCUyMDBMMjEuMjM4JTIwNi4zNjRsLTEuMDYtMS4wNkw4Ljg2NCUyMDE2LjYxNnolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tYXJyb3cge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMi40NTQlMjA2LjU4bDEuMDYtMS4wNiUyMDUuNzglMjA1Ljc3OWEuOTk2Ljk5NiUyMDAlMjAwMTAlMjAxLjQxM2wtNS43OCUyMDUuNzc5LTEuMDYtMS4wNjElMjA1LjQyNS01LjQyNS01LjQyNS01LjQyNHolMjIlMjBmaWxsJTNEJTIyJTIzQjJCMkIyJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWFycm93LWJvbGQge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMGhlaWdodCUzRCUyMjI0JTIyJTIwd2lkdGglM0QlMjIxMiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTAuMTU3JTIwMTIuNzExTDQuNSUyMDE4LjM2OGwtMS40MTQtMS40MTQlMjA0Ljk1LTQuOTUtNC45NS00Ljk1TDQuNSUyMDUuNjRsNS42NTclMjA1LjY1N2ExJTIwMSUyMDAlMjAwMTAlMjAxLjQxNHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tYmFjay1hcnJvdyB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMiUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0zLjM0MyUyMDEybDcuMDcxJTIwNy4wNzFMOSUyMDIwLjQ4NWwtNy43NzgtNy43NzhhMSUyMDElMjAwJTIwMDEwLTEuNDE0TDklMjAzLjUxNWwxLjQxNCUyMDEuNDE0TDMuMzQ0JTIwMTJ6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbiB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMiUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMCUyMDE5LjQzOEw4Ljk1NSUyMDIwLjVsLTcuNjY2LTcuNzlhMS4wMiUyMDEuMDIlMjAwJTIwMDEwLTEuNDJMOC45NTUlMjAzLjUlMjAxMCUyMDQuNTYzJTIwMi42ODIlMjAxMiUyMDEwJTIwMTkuNDM4eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1jbG9zZSB7XG4gIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgY2xpcC1ydWxlPSdldmVub2RkJyBkPSdNMTIuMjUgMTAuNjkzMkw2LjA1NjgyIDQuNUw1IDUuNTU2ODJMMTEuMTkzMiAxMS43NUw1IDE3Ljk0MzJMNi4wNTY4MiAxOUwxMi4yNSAxMi44MDY4TDE4LjQ0MzIgMTlMMTkuNSAxNy45NDMyTDEzLjMwNjggMTEuNzVMMTkuNSA1LjU1NjgyTDE4LjQ0MzIgNC41TDEyLjI1IDEwLjY5MzJaJyBmaWxsPSdibGFjaycgLyUzRSUzQy9zdmclM0UlMEFcIik7XG59XG4ud2V1aS1pY29uLWNsb3NlLXRoaW4ge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuMjUlMjAxMC42OTNMNi4wNTclMjA0LjUlMjA1JTIwNS41NTdsNi4xOTMlMjA2LjE5M0w1JTIwMTcuOTQzJTIwNi4wNTclMjAxOWw2LjE5My02LjE5M0wxOC40NDMlMjAxOWwxLjA1Ny0xLjA1Ny02LjE5My02LjE5M0wxOS41JTIwNS41NTclMjAxOC40NDMlMjA0LjV6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWJhY2stY2lyY2xlIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMC0xLjJhOC44JTIwOC44JTIwMCUyMDEwMC0xNy42JTIwOC44JTIwOC44JTIwMCUyMDAwMCUyMDE3LjZ6bTEuOTk5LTUuMzYzTDEyLjk1MyUyMDE2LjUlMjA5LjI5JTIwMTIuNzIzYTEuMDQ1JTIwMS4wNDUlMjAwJTIwMDEwLTEuNDQ2TDEyLjk1MyUyMDcuNSUyMDE0JTIwOC41NjMlMjAxMC42OCUyMDEyJTIwMTQlMjAxNS40Mzh6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tc3VjY2VzcyB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbi53ZXVpLWljb24td2FpdGluZyB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJMVUUpO1xufVxuLndldWktaWNvbi13YXJuIHtcbiAgY29sb3I6IHZhcigtLXdldWktUkVEKTtcbn1cbi53ZXVpLWljb24taW5mbyB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJMVUUpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLWNpcmNsZSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUsXG4ud2V1aS1pY29uLXN1Y2Nlc3Mtbm8tY2lyY2xlLXRoaW4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG59XG4ud2V1aS1pY29uLXdhaXRpbmctY2lyY2xlIHtcbiAgY29sb3I6IHZhcigtLXdldWktQkxVRSk7XG59XG4ud2V1aS1pY29uLWNpcmNsZSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xufVxuLndldWktaWNvbi1kb3dubG9hZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbi53ZXVpLWljb24taW5mby1jaXJjbGUge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbn1cbi53ZXVpLWljb24tc2FmZS1zdWNjZXNzIHtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktaWNvbi1zYWZlLXdhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1ZRUxMT1cpO1xufVxuLndldWktaWNvbi1jYW5jZWwge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLndldWktaWNvbi1zZWFyY2gge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWljb24tY2xlYXIge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbn1cbi53ZXVpLWljb24tY2xlYXI6YWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG59XG4ud2V1aS1pY29uLWRlbGV0ZS53ZXVpLWljb25fZ2FsbGVyeS1kZWxldGUge1xuICBjb2xvcjogdmFyKC0td2V1aS1XSElURSk7XG59XG4ud2V1aS1pY29uLWFycm93LndldWktaWNvbi1hcnJvdyxcbi53ZXVpLWljb24tYXJyb3cud2V1aS1pY29uLWFycm93LWJvbGQsXG4ud2V1aS1pY29uLWFycm93LndldWktaWNvbi1iYWNrLWFycm93LFxuLndldWktaWNvbi1hcnJvdy53ZXVpLWljb24tYmFjay1hcnJvdy10aGluLFxuLndldWktaWNvbi1hcnJvdy1ib2xkLndldWktaWNvbi1hcnJvdyxcbi53ZXVpLWljb24tYXJyb3ctYm9sZC53ZXVpLWljb24tYXJyb3ctYm9sZCxcbi53ZXVpLWljb24tYXJyb3ctYm9sZC53ZXVpLWljb24tYmFjay1hcnJvdyxcbi53ZXVpLWljb24tYXJyb3ctYm9sZC53ZXVpLWljb24tYmFjay1hcnJvdy10aGluLFxuLndldWktaWNvbi1iYWNrLWFycm93LndldWktaWNvbi1hcnJvdyxcbi53ZXVpLWljb24tYmFjay1hcnJvdy53ZXVpLWljb24tYXJyb3ctYm9sZCxcbi53ZXVpLWljb24tYmFjay1hcnJvdy53ZXVpLWljb24tYmFjay1hcnJvdyxcbi53ZXVpLWljb24tYmFjay1hcnJvdy53ZXVpLWljb24tYmFjay1hcnJvdy10aGluLFxuLndldWktaWNvbi1iYWNrLWFycm93LXRoaW4ud2V1aS1pY29uLWFycm93LFxuLndldWktaWNvbi1iYWNrLWFycm93LXRoaW4ud2V1aS1pY29uLWFycm93LWJvbGQsXG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbi53ZXVpLWljb24tYmFjay1hcnJvdyxcbi53ZXVpLWljb24tYmFjay1hcnJvdy10aGluLndldWktaWNvbi1iYWNrLWFycm93LXRoaW4ge1xuICB3aWR0aDogMS4yZW07XG59XG4ud2V1aS1pY29uLWFycm93LFxuLndldWktaWNvbi1hcnJvdy1ib2xkIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG59XG4ud2V1aS1pY29uLWJhY2stYXJyb3csXG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktaWNvbi1iYWNrLFxuLndldWktaWNvbi1iYWNrLWNpcmNsZSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktaWNvbl9tc2cud2V1aS1pY29uX21zZyB7XG4gIHdpZHRoOiA2LjRlbTtcbiAgaGVpZ2h0OiA2LjRlbTtcbn1cbi53ZXVpLWljb25fbXNnLndldWktaWNvbl9tc2cud2V1aS1pY29uLXdhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLndldWktaWNvbl9tc2cud2V1aS1pY29uX21zZy53ZXVpLWljb24taW5mby1jaXJjbGUge1xuICBjb2xvcjogdmFyKC0td2V1aS1CTFVFKTtcbn1cbi53ZXVpLWljb25fbXNnLXByaW1hcnkud2V1aS1pY29uX21zZy1wcmltYXJ5IHtcbiAgd2lkdGg6IDYuNGVtO1xuICBoZWlnaHQ6IDYuNGVtO1xufVxuLndldWktaWNvbl9tc2ctcHJpbWFyeS53ZXVpLWljb25fbXNnLXByaW1hcnkud2V1aS1pY29uLXdhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1ZRUxMT1cpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1oaWRkZW5fYWJzIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWExMXlfcmVmIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWhpZGRlbi1zcGFjZTplbXB0eTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDAwQTBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWExMXktY29tYm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1hMTF5LWNvbWJvX19oZWxwZXIge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS1hMTF5LWNvbWJvX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLndldWktd2EtaG90YXJlYS1lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgbWluLWhlaWdodDogNDRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi53ZXVpLXdhLWhvdGFyZWEtZWxfX3dycCxcbi53ZXVpLXdhLWhvdGFyZWEsXG4ud2V1aS13YS1ob3RhcmVhX2JlZm9yZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLXdhLWhvdGFyZWEtZWxfX3dycCBhLFxuLndldWktd2EtaG90YXJlYSBhLFxuLndldWktd2EtaG90YXJlYV9iZWZvcmUgYSxcbi53ZXVpLXdhLWhvdGFyZWEtZWxfX3dycCBidXR0b24sXG4ud2V1aS13YS1ob3RhcmVhIGJ1dHRvbixcbi53ZXVpLXdhLWhvdGFyZWFfYmVmb3JlIGJ1dHRvbixcbi53ZXVpLXdhLWhvdGFyZWEtZWxfX3dycCBuYXZpZ2F0b3IsXG4ud2V1aS13YS1ob3RhcmVhIG5hdmlnYXRvcixcbi53ZXVpLXdhLWhvdGFyZWFfYmVmb3JlIG5hdmlnYXRvciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi53ZXVpLXdhLWhvdGFyZWFfYmVmb3JlOjpiZWZvcmUsXG4ud2V1aS13YS1ob3RhcmVhOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBtaW4td2lkdGg6IDQ0cHg7XG4gIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWxpbmsge1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLndldWktbGluazp2aXNpdGVkIHtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG59XG4ud2V1aS1saW5rOmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTg0cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxLjQxMTc2NDcxO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ud2V1aS1idG46YWN0aXZlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CVE4tQUNUSVZFLU1BU0spO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4ud2V1aS1idG46YWN0aXZlLndldWktYnRuX2xvYWRpbmc6OmJlZm9yZSxcbi53ZXVpLWJ0bjphY3RpdmUud2V1aS1idG5fZGlzYWJsZWQ6OmJlZm9yZSxcbi53ZXVpLWJ0bjphY3RpdmVbZGlzYWJsZWRdOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktYnRuX2Jsb2NrIHtcbiAgd2lkdGg6IGF1dG87XG59XG4ud2V1aS1idG5faW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUZHLTUpO1xufVxuLndldWktYnRuX2RlZmF1bHQ6bm90KC53ZXVpLWJ0bl9kaXNhYmxlZCk6dmlzaXRlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktYnRuX3ByaW1hcnk6bm90KC53ZXVpLWJ0bl9kaXNhYmxlZCk6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fd2FybiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktRkctNSk7XG59XG4ud2V1aS1idG5fd2Fybjpub3QoLndldWktYnRuX2Rpc2FibGVkKTp2aXNpdGVkIHtcbiAgY29sb3I6IHZhcigtLXdldWktUkVEKTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktYnRuX292ZXJsYXkge1xuICBjb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG4ud2V1aS1idG5fb3ZlcmxheTpub3QoLndldWktYnRuX2Rpc2FibGVkKTp2aXNpdGVkIHtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fZGlzYWJsZWQsXG4ud2V1aS1idG5bZGlzYWJsZWRdIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctNCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMSk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWJ0bl9sb2FkaW5nIC53ZXVpLWxvYWRpbmcge1xuICBtYXJnaW46IC0wLjJlbSA4cHggMCAwO1xufVxuLndldWktYnRuX2xvYWRpbmcgLndldWktbWFzay1sb2FkaW5nIHtcbiAgbWFyZ2luOiAtMC4yZW0gOHB4IDAgMDtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cbi53ZXVpLWJ0bl9sb2FkaW5nIC53ZXVpLXByaW1hcnktbG9hZGluZyB7XG4gIG1hcmdpbjogLTAuMmVtIDhweCAwIDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG4ud2V1aS1idG5fbG9hZGluZyAud2V1aS1wcmltYXJ5LWxvYWRpbmc6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ud2V1aS1idG5fbG9hZGluZy53ZXVpLWJ0bl9wcmltYXJ5IHtcbiAgY29sb3I6IHZhcigtLXdldWktV0hJVEUpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fY2VsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbiAgcGFkZGluZzogMTZweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTUpO1xufVxuLndldWktYnRuX2NlbGwgKyAud2V1aS1idG5fY2VsbCB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG4ud2V1aS1idG5fY2VsbDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1idG5fY2VsbF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFyZ2luOiAtMC4yZW0gMC4zNGVtIDAgMDtcbn1cbi53ZXVpLWJ0bl9jZWxsLWRlZmF1bHQge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbn1cbi53ZXVpLWJ0bl9jZWxsLXByaW1hcnkge1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbn1cbi53ZXVpLWJ0bl9jZWxsLXdhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX2NvbnRlbnQge1xuICBtaW4taGVpZ2h0OiAwO1xuICBmbGV4OiAxO1xuICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX190b29sIHtcbiAgcGFkZGluZzogMTZweCAzMnB4IDI0cHg7XG4gIHBhZGRpbmc6IDE2cHggY2FsYygzMnB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgY2FsYygyNHB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpIGNhbGMoMzJweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHBhZGRpbmc6IDE2cHggY2FsYygzMnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIGNhbGMoMjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSkgY2FsYygzMnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTA7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX3Rvb2w6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogODBweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgI2ZmZmZmZiwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiBjYWxjKDEwMCUgLSAxcHgpO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX3Rvb2wsXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9fdG9vbCB7XG4gIGJhY2tncm91bmQ6ICMxOTE5MTk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX3Rvb2wsXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIC53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9fdG9vbCB7XG4gICAgYmFja2dyb3VuZDogIzE5MTkxOTtcbiAgfVxufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX190b29sOjpiZWZvcmUsXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9fdG9vbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzE5MTkxOSwgcmdiYSgyNSwgMjUsIDI1LCAwKSk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX3Rvb2w6OmJlZm9yZSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX190b29sOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICMxOTE5MTksIHJnYmEoMjUsIDI1LCAyNSwgMCkpO1xuICB9XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX3RpcHMge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBwYWRkaW5nOiAwIDMycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZSAud2V1aS1ib3R0b20tZml4ZWQtb3ByIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2UgLndldWktYm90dG9tLWZpeGVkLW9wciAud2V1aS1idG4ge1xuICB3aWR0aDogMTg0cHg7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZSAud2V1aS1ib3R0b20tZml4ZWQtb3ByIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpLFxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMikgKyAud2V1aS1idG4ge1xuICBtYXJnaW46IDAgOHB4O1xuICB3aWR0aDogMTM2cHg7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2UgLndldWktYm90dG9tLWZpeGVkLW9wciAud2V1aS1idG46bnRoLWxhc3QtY2hpbGQobisyKTpmaXJzdC1jaGlsZCxcbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZSAud2V1aS1ib3R0b20tZml4ZWQtb3ByIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2UgLndldWktYm90dG9tLWZpeGVkLW9wciAud2V1aS1idG46bnRoLWxhc3QtY2hpbGQobisyKTpsYXN0LWNoaWxkLFxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMikgKyAud2V1aS1idG46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9idG4td3JhcCAud2V1aS1ib3R0b20tZml4ZWQtb3ByIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9idG4td3JhcCAud2V1aS1ib3R0b20tZml4ZWQtb3ByIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpLFxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX2J0bi13cmFwIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMikgKyAud2V1aS1idG4ge1xuICB3aWR0aDogMTg0cHg7XG4gIG1hcmdpbjogMTZweCAwIDA7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfYnRuLXdyYXAgLndldWktYm90dG9tLWZpeGVkLW9wciAud2V1aS1idG46bnRoLWxhc3QtY2hpbGQobisyKTpmaXJzdC1jaGlsZCxcbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9idG4td3JhcCAud2V1aS1ib3R0b20tZml4ZWQtb3ByIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZS53ZXVpLWZvcm0ge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZS53ZXVpLWZvcm0gLndldWktZm9ybV9fYmQge1xuICBwYWRkaW5nLXRvcDogNTZweDtcbiAgcGFkZGluZy10b3A6IGNhbGMoNTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoNTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKSk7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uud2V1aS1mb3JtIC53ZXVpLWZvcm1fX2Z0IHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uud2V1aS1mb3JtIC53ZXVpLWZvcm1fX2NvbnRyb2wtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cge1xuICBwYWRkaW5nOiAwO1xufVxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGQsXG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19iZCxcbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZS53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZyAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IHtcbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSk7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19iZCB7XG4gIHBhZGRpbmctYm90dG9tOiA4MHB4O1xufVxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZnQge1xuICBwYWRkaW5nLWJvdHRvbTogNjRweDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoNjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoNjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVkLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIHtcbiAgcGFkZGluZzogMDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCB7XG4gIHBhZGRpbmc6IDAgMjRweDtcbiAgcGFkZGluZzogMCBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSAwIGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHBhZGRpbmc6IDAgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIDAgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVkLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYmQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19mdCB7XG4gIHBhZGRpbmc6IDA7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVkLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIC53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZSB7XG4gIGZsZXg6IDE7XG4gIG1pbi1oZWlnaHQ6IDA7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVkLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIC53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9fY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMjRweDtcbiAgcGFkZGluZzogMCBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSAwIGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHBhZGRpbmc6IDAgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIDAgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVkLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIge1xuICBwYWRkaW5nOiAxNnB4IDAgNjRweDtcbiAgcGFkZGluZzogMTZweCAwIGNhbGMoNjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgcGFkZGluZzogMTZweCAwIGNhbGMoNjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG59XG5idXR0b24ud2V1aS1idG4sXG5pbnB1dC53ZXVpLWJ0biB7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgb3V0bGluZTogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuYnV0dG9uLndldWktYnRuOmZvY3VzLFxuaW5wdXQud2V1aS1idG46Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuYnV0dG9uLndldWktYnRuX2lubGluZSxcbmlucHV0LndldWktYnRuX2lubGluZSxcbmJ1dHRvbi53ZXVpLWJ0bl9taW5pLFxuaW5wdXQud2V1aS1idG5fbWluaSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLndldWktYnRuX21lZGl1bSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMTBweCAyNHB4O1xuICBsaW5lLWhlaWdodDogY2FsYygodmFyKC0td2V1aS1CVE4tSEVJR0hULU1FRElVTSkgLSAyMCkgLyAxNCk7XG59XG4ud2V1aS1idG5fbWluaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKCgzMiAtIDEyKSAvIDE0KTtcbiAgcGFkZGluZzogNnB4IDEycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuLndldWktYnRuX3htaW5pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogNHB4IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiBjYWxjKCgyOCAtIDgpIC8gMTQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cbi8qIGdhcCBiZXR3ZWVuIGJ0biAqL1xuLndldWktYnRuICsgLndldWktYnRuIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cbi53ZXVpLWJ0bi53ZXVpLWJ0bl9taW5pICsgLndldWktYnRuLndldWktYnRuX21pbmkge1xuICBtYXJnaW4tdG9wOiBhdXRvO1xufVxuLndldWktYnRuLndldWktYnRuX3htaW5pICsgLndldWktYnRuLndldWktYnRuX3htaW5pIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbn1cbi53ZXVpLWJ0bi53ZXVpLWJ0bl9pbmxpbmUgKyAud2V1aS1idG4ud2V1aS1idG5faW5saW5lIHtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG59XG4ud2V1aS1idG4tYXJlYSB7XG4gIG1hcmdpbjogNDhweCAxNnB4IDhweDtcbn1cbi53ZXVpLWJ0bi1hcmVhX2lubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ud2V1aS1idG4tYXJlYV9pbmxpbmUgLndldWktYnRuIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogMTtcbn1cbi53ZXVpLWJ0bi1hcmVhX2lubGluZSAud2V1aS1idG46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi53ZXVpLWJ0bl9yZXNldCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbi53ZXVpLWJ0bl9pY29uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwO1xufVxuLndldWktYnRuX2ljb246YWN0aXZlIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG56LWluZGV4OlxuMDogLndldWktc3dpcGVkLWJ0blxuMTogLndldWktY2VsbF9zd2lwZWQgLndldWktY2VsbF9fYmRcbjI6IC53ZXVpLWNlbGxz5ZKMLndldWktY2VsbOeahDFweOe6v1xuKi9cbi53ZXVpLWNlbGxzIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1jZWxsczo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICB6LWluZGV4OiAyO1xufVxuLndldWktY2VsbHM6OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICB6LWluZGV4OiAyO1xufVxuLndldWktY2VsbHNfX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1jZWxsc19fdGl0bGUgKyAud2V1aS1jZWxscyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1jZWxsc19fdGlwcyB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLndldWktY2VsbHNfX3RpcHMgYSxcbi53ZXVpLWNlbGxzX190aXBzIG5hdmlnYXRvciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktY2VsbHNfX3RpcHMgbmF2aWdhdG9yIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLndldWktY2VsbCB7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNDExNzY0NzE7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1jZWxsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gIGxlZnQ6IDE2cHg7XG4gIHotaW5kZXg6IDI7XG59XG4ud2V1aS1jZWxsOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktY2VsbF9hY3RpdmU6YWN0aXZlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLUZHLTMpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi53ZXVpLWNlbGxfcHJpbWFyeSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLndldWktY2VsbF92ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLndldWktY2VsbF92ZXJ0aWNhbCAud2V1aS1jZWxsX19oZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG4ud2V1aS1jZWxsX3ZlcnRpY2FsIC53ZXVpLWNlbGxfX2hkLFxuLndldWktY2VsbF92ZXJ0aWNhbCAud2V1aS1jZWxsX19iZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLndldWktY2VsbF9fYmQge1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDA7XG59XG4ud2V1aS1jZWxsX19mdCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWNlbGxfX2Z0IGJ1dHRvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG4ud2V1aS1jZWxsX19kZXNjIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgcGFkZGluZy10b3A6IDRweDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktY2VsbF9zd2lwZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbn1cbi53ZXVpLWNlbGxfc3dpcGVkID4gLndldWktY2VsbF9fYmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG59XG4ud2V1aS1jZWxsX3N3aXBlZCA+IC53ZXVpLWNlbGxfX2Z0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAjZmZmO1xufVxuLndldWktc3dpcGVkLWJ0biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE2cHggMWVtO1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ud2V1aS1zd2lwZWQtYnRuX2RlZmF1bHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTApO1xufVxuLndldWktc3dpcGVkLWJ0bl93YXJuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1jZWxsX2FjY2VzcyB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ud2V1aS1jZWxsX2FjY2VzczphY3RpdmU6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktRkctMyk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLndldWktY2VsbF9hY2Nlc3MgLndldWktY2VsbF9fZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1jZWxsX2FjY2VzcyAud2V1aS1jZWxsX19mdDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFzay1wb3NpdGlvbjogMCAwO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMiUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0yLjQ1NCUyMDYuNThsMS4wNi0xLjA2JTIwNS43OCUyMDUuNzc5YS45OTYuOTk2JTIwMCUyMDAxMCUyMDEuNDEzbC01Ljc4JTIwNS43NzktMS4wNi0xLjA2MSUyMDUuNDI1LTUuNDI1LTUuNDI1LTUuNDI0eiUyMiUyMGZpbGwlM0QlMjIlMjNCMkIyQjIlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IC0xMnB4O1xufVxuLndldWktY2VsbF9saW5rIHtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG59XG4ud2V1aS1jZWxsX2xpbms6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWNoZWNrX19sYWJlbCB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi53ZXVpLWNoZWNrX19sYWJlbC53ZXVpLWNlbGxfcmVhZG9ubHksXG4ud2V1aS1jaGVja19fbGFiZWwud2V1aS1jZWxsX2Rpc2FibGVkIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG59XG4ud2V1aS1jaGVjayB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWNoZWNrW2Rpc2FibGVkXSArIC53ZXVpLWljb24tY2hlY2tlZCB7XG4gIG9wYWNpdHk6IDAuMTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktY2VsbHNfcmFkaW8gLndldWktY2VsbF9fZnQge1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi53ZXVpLWNlbGxzX3JhZGlvIC53ZXVpLWNoZWNrICsgLndldWktaWNvbi1jaGVja2VkIHtcbiAgbWluLXdpZHRoOiAxNnB4O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ud2V1aS1jZWxsc19yYWRpbyAud2V1aS1jaGVjazpjaGVja2VkICsgLndldWktaWNvbi1jaGVja2VkLFxuLndldWktY2VsbHNfcmFkaW8gLndldWktY2hlY2tbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLWljb24tY2hlY2tlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTguNjU3JTIwMTguNDM1TDMlMjAxMi43NzhsMS40MTQtMS40MTQlMjA0Ljk1JTIwNC45NUwyMC42NzglMjA1bDEuNDE0JTIwMS40MTQtMTIuMDIlMjAxMi4wMjFhMSUyMDElMjAwJTIwMDEtMS40MTUlMjAweiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1jZWxsc19jaGVja2JveCAud2V1aS1jaGVja19fbGFiZWw6OmJlZm9yZSB7XG4gIGxlZnQ6IDU1cHg7XG59XG4ud2V1aS1jZWxsc19jaGVja2JveCAud2V1aS1jZWxsX19oZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi53ZXVpLWNlbGxzX2NoZWNrYm94IC53ZXVpLWljb24tY2hlY2tlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTAwMCUyMiUyMGhlaWdodCUzRCUyMjEwMDAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMCUyMDkxNi42NjdDMjY5Ljg4MSUyMDkxNi42NjclMjA4My4zMzMlMjA3MzAuMTE5JTIwODMuMzMzJTIwNTAwJTIwODMuMzMzJTIwMjY5Ljg4MSUyMDI2OS44ODElMjA4My4zMzMlMjA1MDAlMjA4My4zMzNjMjMwLjExOSUyMDAlMjA0MTYuNjY3JTIwMTg2LjU0OCUyMDQxNi42NjclMjA0MTYuNjY3JTIwMCUyMDIzMC4xMTktMTg2LjU0OCUyMDQxNi42NjctNDE2LjY2NyUyMDQxNi42Njd6bTAtNTBjMjAyLjUwNCUyMDAlMjAzNjYuNjY3LTE2NC4xNjMlMjAzNjYuNjY3LTM2Ni42NjclMjAwLTIwMi41MDQtMTY0LjE2My0zNjYuNjY3LTM2Ni42NjctMzY2LjY2Ny0yMDIuNTA0JTIwMC0zNjYuNjY3JTIwMTY0LjE2My0zNjYuNjY3JTIwMzY2LjY2NyUyMDAlMjAyMDIuNTA0JTIwMTY0LjE2MyUyMDM2Ni42NjclMjAzNjYuNjY3JTIwMzY2LjY2N3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbC1vcGFjaXR5JTNEJTIyLjklMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktY2VsbHNfY2hlY2tib3ggLndldWktY2hlY2s6Y2hlY2tlZCArIC53ZXVpLWljb24tY2hlY2tlZCxcbi53ZXVpLWNlbGxzX2NoZWNrYm94IC53ZXVpLWNoZWNrW2FyaWEtY2hlY2tlZD1cInRydWVcIl0gKyAud2V1aS1pY29uLWNoZWNrZWQge1xuICBjb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0xLjE3Ny03Ljg2bC0yLjc2NS0yLjc2N0w3JTIwMTIuNDMxbDMuMTE5JTIwMy4xMjFhMSUyMDElMjAwJTIwMDAxLjQxNCUyMDBsNS45NTItNS45NS0xLjA2Mi0xLjA2Mi01LjYlMjA1LjZ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKlxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbipcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDVweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG59XG4ud2V1aS1pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBoZWlnaHQ6IDEuNDExNzY0NzFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDExNzY0NzE7XG59XG4ud2V1aS1pbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbi53ZXVpLWlucHV0Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG4ud2V1aS1pbnB1dDpmb2N1czpub3QoOnBsYWNlaG9sZGVyLXNob3duKSArIC53ZXVpLWJ0bl9pbnB1dC1jbGVhciB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi53ZXVpLXRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMDtcbiAgcmVzaXplOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBoZWlnaHQ6IDgwcHg7XG4gIG91dGxpbmU6IDA7XG59XG4ud2V1aS10ZXh0YXJlYS1jb3VudGVyIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ud2V1aS1jZWxsX3dhcm4gLndldWktdGV4dGFyZWEtY291bnRlciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG59XG4ud2V1aS1jZWxsX3dhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLndldWktY2VsbF93YXJuIC53ZXVpLWljb24td2FybiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi53ZXVpLWNlbGxfcmVhZG9ubHkgLndldWktaW5wdXQ6ZGlzYWJsZWQsXG4ud2V1aS1jZWxsX2Rpc2FibGVkIC53ZXVpLWlucHV0OmRpc2FibGVkLFxuLndldWktY2VsbF9yZWFkb25seSAud2V1aS10ZXh0YXJlYTpkaXNhYmxlZCxcbi53ZXVpLWNlbGxfZGlzYWJsZWQgLndldWktdGV4dGFyZWE6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWNlbGxfcmVhZG9ubHkgLndldWktaW5wdXRbZGlzYWJsZWRdLFxuLndldWktY2VsbF9kaXNhYmxlZCAud2V1aS1pbnB1dFtkaXNhYmxlZF0sXG4ud2V1aS1jZWxsX3JlYWRvbmx5IC53ZXVpLXRleHRhcmVhW2Rpc2FibGVkXSxcbi53ZXVpLWNlbGxfZGlzYWJsZWQgLndldWktdGV4dGFyZWFbZGlzYWJsZWRdLFxuLndldWktY2VsbF9yZWFkb25seSAud2V1aS1pbnB1dFtyZWFkb25seV0sXG4ud2V1aS1jZWxsX2Rpc2FibGVkIC53ZXVpLWlucHV0W3JlYWRvbmx5XSxcbi53ZXVpLWNlbGxfcmVhZG9ubHkgLndldWktdGV4dGFyZWFbcmVhZG9ubHldLFxuLndldWktY2VsbF9kaXNhYmxlZCAud2V1aS10ZXh0YXJlYVtyZWFkb25seV0ge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWJ0bl9pbnB1dC1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xufVxuLndldWktYnRuX2lucHV0LWNsZWFyIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgd2lkdGg6IDE4cHg7XG59XG4ud2V1aS1jZWxsc19mb3JtIC53ZXVpLWNlbGxfc3dpdGNoOmFjdGl2ZSxcbi53ZXVpLWNlbGxzX2Zvcm0gLndldWktY2VsbF92Y29kZTphY3RpdmUsXG4ud2V1aS1jZWxsc19mb3JtIC53ZXVpLWNlbGxfcmVhZG9ubHk6YWN0aXZlLFxuLndldWktY2VsbHNfZm9ybSAud2V1aS1jZWxsX2Rpc2FibGVkOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLndldWktY2VsbHNfZm9ybSAud2V1aS1jZWxsX19mdCB7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi53ZXVpLWNlbGxzX2Zvcm0gLndldWktaWNvbi13YXJuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWNlbGxzX2Zvcm0gaW5wdXQsXG4ud2V1aS1jZWxsc19mb3JtIHRleHRhcmVhLFxuLndldWktY2VsbHNfZm9ybSBsYWJlbFtmb3JdIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1mb3JtLXByZXZpZXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG59XG4ud2V1aS1mb3JtLXByZXZpZXc6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbn1cbi53ZXVpLWZvcm0tcHJldmlldzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2hkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxNnB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbGluZS1oZWlnaHQ6IDIuNWVtO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19oZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gIGxlZnQ6IDE2cHg7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2hkIC53ZXVpLWZvcm0tcHJldmlld19fdmFsdWUge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMS42ZW07XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2JkIHtcbiAgcGFkZGluZzogMTZweDtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICBsaW5lLWhlaWdodDogMjtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndldWktZm9ybS1wcmV2aWV3X19mdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SKTtcbiAgY29sb3I6IHZhcigtLXdldWktRElBTE9HLUxJTkUtQ09MT1IpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2l0ZW0ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19sYWJlbCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgd2lkdGg6IDQuMmVtO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fdmFsdWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxO1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5idXR0b24ud2V1aS1mb3JtLXByZXZpZXdfX2J0biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2J0bjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2J0bjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SKTtcbiAgY29sb3I6IHZhcigtLXdldWktRElBTE9HLUxJTkUtQ09MT1IpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2J0bjpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19idG5fZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLUhBTEYpO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19idG5fcHJpbWFyeSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19saXN0IHtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fbGlzdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19saXN0Omxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fbGlzdCAud2V1aS1mb3JtLXByZXZpZXdfX2xhYmVsIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDZlbTtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fbGlzdCAud2V1aS1mb3JtLXByZXZpZXdfX3ZhbHVlIHtcbiAgaHlwaGVuczogYXV0bztcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fbGlzdCAud2V1aS1mb3JtLXByZXZpZXdfX2l0ZW0ge1xuICBtYXJnaW4tdG9wOiAxMnB4O1xufVxuLndldWktZm9ybS1wcmV2aWV3X19saXN0IC53ZXVpLWZvcm0tcHJldmlld19faXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2xpc3QgPiAud2V1aS1jZWxsc19fdGl0bGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1jZWxsX3NlbGVjdCB7XG4gIHBhZGRpbmc6IDA7XG59XG4ud2V1aS1jZWxsX3NlbGVjdCAud2V1aS1jZWxsX19iZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFzay1wb3NpdGlvbjogMCAwO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMiUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0yLjQ1NCUyMDYuNThsMS4wNi0xLjA2JTIwNS43OCUyMDUuNzc5YS45OTYuOTk2JTIwMCUyMDAxMCUyMDEuNDEzbC01Ljc4JTIwNS43NzktMS4wNi0xLjA2MSUyMDUuNDI1LTUuNDI1LTUuNDI1LTUuNDI0eiUyMiUyMGZpbGwlM0QlMjIlMjNCMkIyQjIlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDE2cHg7XG4gIG1hcmdpbi10b3A6IC0xMnB4O1xufVxuLndldWktc2VsZWN0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBtaW4taGVpZ2h0OiA1NnB4O1xuICBsaW5lLWhlaWdodDogNTZweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLndldWktY2VsbF9zZWxlY3QtYmVmb3JlIC53ZXVpLWNlbGxfX2hkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUgLndldWktY2VsbF9faGQ6OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDFweDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuLndldWktY2VsbF9zZWxlY3QtYmVmb3JlIC53ZXVpLWNlbGxfX2hkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFzay1wb3NpdGlvbjogMCAwO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMiUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0yLjQ1NCUyMDYuNThsMS4wNi0xLjA2JTIwNS43OCUyMDUuNzc5YS45OTYuOTk2JTIwMCUyMDAxMCUyMDEuNDEzbC01Ljc4JTIwNS43NzktMS4wNi0xLjA2MSUyMDUuNDI1LTUuNDI1LTUuNDI1LTUuNDI0eiUyMiUyMGZpbGwlM0QlMjIlMjNCMkIyQjIlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDE2cHg7XG4gIG1hcmdpbi10b3A6IC0xMnB4O1xufVxuLndldWktY2VsbF9zZWxlY3QtYmVmb3JlIC53ZXVpLWNlbGxfX2JkIHtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xufVxuLndldWktY2VsbF9zZWxlY3QtYmVmb3JlIC53ZXVpLWNlbGxfX2JkOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUgLndldWktc2VsZWN0IHtcbiAgbWF4LXdpZHRoOiA1ZW07XG4gIHdpZHRoOiAxMDVweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1hZnRlciAud2V1aS1jZWxsX19oZCB7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbn1cbi53ZXVpLWNlbGxfc2VsZWN0LWFmdGVyIC53ZXVpLXNlbGVjdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKlxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbipcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKlxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1jZWxsX3Zjb2RlIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLndldWktdmNvZGUtaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLndldWktdmNvZGUtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDU2cHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIHBhZGRpbmc6IDAgMC42ZW0gMCAwLjdlbTtcbiAgbGluZS1oZWlnaHQ6IDU2cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLXZjb2RlLWJ0bjo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMXB4O1xuICBib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMC41KTtcbn1cbmJ1dHRvbi53ZXVpLXZjb2RlLWJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG59XG4ud2V1aS12Y29kZS1idG46YWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSy1BQ1RJVkUpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1nYWxsZXJ5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIHotaW5kZXg6IDEwMDA7XG59XG4ud2V1aS1nYWxsZXJ5X19pbWcsXG4ud2V1aS1nYWxsZXJ5X19vcHIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcmlnaHQ6IDA7XG4gIHJpZ2h0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICByaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG59XG4ud2V1aS1nYWxsZXJ5X19pbWcge1xuICB0b3A6IDA7XG4gIHRvcDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcCk7XG4gIHRvcDogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICBib3R0b206IDYwcHg7XG4gIGJvdHRvbTogY2FsYyg2MHB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICBib3R0b206IGNhbGMoNjBweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuLndldWktZ2FsbGVyeV9fb3ByIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDBkMGQ7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcbiAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWdhbGxlcnlfX2RlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xufVxuLndldWktZ2FsbGVyeV9fZGVsOmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktY2VsbF9zd2l0Y2gge1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDEycHg7XG59XG4ud2V1aS1jZWxsX3N3aXRjaC53ZXVpLWNlbGxfcmVhZG9ubHksXG4ud2V1aS1jZWxsX3N3aXRjaC53ZXVpLWNlbGxfZGlzYWJsZWQge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbn1cbi53ZXVpLXN3aXRjaCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4ud2V1aS1zd2l0Y2gsXG4ud2V1aS1zd2l0Y2gtY3BfX2JveCB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDUycHg7XG4gIGhlaWdodDogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAycHg7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcywgYm9yZGVyIDAuMXM7XG59XG4ud2V1aS1zd2l0Y2g6OmFmdGVyLFxuLndldWktc3dpdGNoLWNwX19ib3g6OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAycHg7XG4gIGxlZnQ6IDJweDtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAycHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLjQsIDAuNCwgMC4yNSwgMS4zNSk7XG59XG4ud2V1aS1zd2l0Y2g6Y2hlY2tlZCxcbi53ZXVpLXN3aXRjaC1jcF9faW5wdXQ6Y2hlY2tlZCArIC53ZXVpLXN3aXRjaC1jcF9fYm94LFxuLndldWktc3dpdGNoLWNwX19pbnB1dFthcmlhLWNoZWNrZWQ9XCJ0cnVlXCJdICsgLndldWktc3dpdGNoLWNwX19ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbi53ZXVpLXN3aXRjaDpjaGVja2VkOjphZnRlcixcbi53ZXVpLXN3aXRjaC1jcF9faW5wdXQ6Y2hlY2tlZCArIC53ZXVpLXN3aXRjaC1jcF9fYm94OjphZnRlcixcbi53ZXVpLXN3aXRjaC1jcF9faW5wdXRbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94OjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbn1cbi53ZXVpLXN3aXRjaFtkaXNhYmxlZF0sXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0W2Rpc2FibGVkXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94LFxuLndldWktc3dpdGNoLWNwX19pbnB1dFthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94IHtcbiAgb3BhY2l0eTogMC4xO1xufVxuLndldWktc3dpdGNoLWNwX19pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLXN3aXRjaC1jcF9fYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWNlbGxfdXBsb2FkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbn1cbi53ZXVpLXVwbG9hZGVyIHtcbiAgZmxleDogMTtcbn1cbi53ZXVpLXVwbG9hZGVyX19oZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndldWktdXBsb2FkZXJfX3RpdGxlIHtcbiAgZmxleDogMTtcbn1cbi53ZXVpLXVwbG9hZGVyX19pbmZvIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG59XG4ud2V1aS11cGxvYWRlcl9fYmQge1xuICBtYXJnaW4tYm90dG9tOiAtOHB4O1xuICBtYXJnaW4tcmlnaHQ6IC04cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZXMge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLndldWktdXBsb2FkZXJfX2ZpbGUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgd2lkdGg6IDk2cHg7XG4gIGhlaWdodDogOTZweDtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZV9zdGF0dXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZV9zdGF0dXM6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuLndldWktdXBsb2FkZXJfX2ZpbGVfc3RhdHVzIC53ZXVpLXVwbG9hZGVyX19maWxlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi53ZXVpLXVwbG9hZGVyX19maWxlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBjb2xvcjogdmFyKC0td2V1aS1XSElURSk7XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZS1jb250ZW50IC53ZXVpLWljb24td2FybiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3gge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB3aWR0aDogOTZweDtcbiAgaGVpZ2h0OiA5NnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktdXBsb2FkZXJfX2lucHV0LWJveCxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktdXBsb2FkZXJfX2lucHV0LWJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZTJlMmU7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS11cGxvYWRlcl9faW5wdXQtYm94LFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS11cGxvYWRlcl9faW5wdXQtYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmUyZTJlO1xuICB9XG59XG4ud2V1aS11cGxvYWRlcl9faW5wdXQtYm94OjpiZWZvcmUsXG4ud2V1aS11cGxvYWRlcl9faW5wdXQtYm94OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNhM2EzO1xufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktdXBsb2FkZXJfX2lucHV0LWJveDo6YmVmb3JlLFxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktdXBsb2FkZXJfX2lucHV0LWJveDo6YWZ0ZXIsXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3g6OmJlZm9yZSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktdXBsb2FkZXJfX2lucHV0LWJveDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ2ZDZkO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgLndldWktdXBsb2FkZXJfX2lucHV0LWJveDo6YmVmb3JlLFxuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgLndldWktdXBsb2FkZXJfX2lucHV0LWJveDo6YWZ0ZXIsXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIC53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3g6OmJlZm9yZSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgLndldWktdXBsb2FkZXJfX2lucHV0LWJveDo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDZkNmQ7XG4gIH1cbn1cbi53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3g6OmJlZm9yZSB7XG4gIHdpZHRoOiAycHg7XG4gIGhlaWdodDogMzMuMzMlO1xufVxuLndldWktdXBsb2FkZXJfX2lucHV0LWJveDo6YWZ0ZXIge1xuICB3aWR0aDogMzMuMzMlO1xuICBoZWlnaHQ6IDJweDtcbn1cbi53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3g6YWN0aXZlOjpiZWZvcmUsXG4ud2V1aS11cGxvYWRlcl9faW5wdXQtYm94OmFjdGl2ZTo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG4ud2V1aS11cGxvYWRlcl9faW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1tc2dfX2Rlc2MgYSxcbi53ZXVpLW1zZ19fZGVzYy1wcmltYXJ5IGEsXG4ud2V1aS1tc2dfX3RpcHMgYSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi53ZXVpLW1zZyB7XG4gIHBhZGRpbmctdG9wOiA0OHB4O1xuICBwYWRkaW5nOiBjYWxjKDQ4cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtdG9wKSkgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHBhZGRpbmc6IGNhbGMoNDhweCArIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKSkgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbn1cbi53ZXVpLW1zZ19faWNvbi1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbn1cbi53ZXVpLW1zZ19fdGV4dC1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgcGFkZGluZzogMCAzMnB4O1xuICBmbGV4OiAxO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cbi53ZXVpLW1zZ19fdGV4dC1hcmVhOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDk2cHg7XG59XG4ud2V1aS1tc2dfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbn1cbi53ZXVpLW1zZ19fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4ud2V1aS1tc2dfX2Rlc2MtcHJpbWFyeSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4ud2V1aS1tc2dfX2N1c3RvbS1hcmVhIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLndldWktbXNnX190aXRsZSArIC53ZXVpLW1zZ19fY3VzdG9tLWFyZWEge1xuICBtYXJnaW4tdG9wOiA0OHB4O1xufVxuLndldWktbXNnX19kZXNjICsgLndldWktbXNnX19jdXN0b20tYXJlYSxcbi53ZXVpLW1zZ19fZGVzYy1wcmltYXJ5ICsgLndldWktbXNnX19jdXN0b20tYXJlYSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ud2V1aS1tc2dfX2N1c3RvbS1hcmVhIC53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxzIHtcbiAgbWFyZ2luOiAwO1xufVxuLndldWktbXNnX19vcHItYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4ud2V1aS1tc2dfX29wci1hcmVhIC53ZXVpLWJ0bi1hcmVhIHtcbiAgbWFyZ2luOiAwO1xufVxuLndldWktbXNnX19vcHItYXJlYSAud2V1aS1idG4gKyAud2V1aS1idG4ge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLndldWktbXNnX19vcHItYXJlYTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogOTZweDtcbn1cbi53ZXVpLW1zZ19fb3ByLWFyZWEgKyAud2V1aS1tc2dfX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tdG9wOiA0OHB4O1xufVxuLndldWktbXNnX190aXBzLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nOiAwIDQwcHg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLndldWktbXNnX19vcHItYXJlYSArIC53ZXVpLW1zZ19fdGlwcy1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogNDhweDtcbn1cbi53ZXVpLW1zZ19fdGlwcy1hcmVhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiA2NHB4O1xufVxuLndldWktbXNnX190aXBzIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLW1zZ19fZXh0cmEtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLW1zZ19fZXh0cmEtYXJlYSBhLFxuLndldWktbXNnX19leHRyYS1hcmVhIG5hdmlnYXRvciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktbXNnX19leHRyYS1hcmVhIG5hdmlnYXRvciB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi53ZXVpLW1zZ19hbGlnbi10b3AgLndldWktbXNnX190ZXh0LWFyZWE6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLyoqXG7nq5bniYjnmoTnur/kuIrkuIvnq6/lkozmloflrZfljLrln5/lr7npvZBcbuaoqueJiOeahOe6v+W3puWPs+err+mXtOi3neWbuuWumjRweFxuKiovXG5ib2R5LFxucGFnZSB7XG4gIC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SOiB2YXIoLS13ZXVpLUZHLTMpO1xuICAtLXdldWktU1RFUFMtSElHSExJR0hULUNPTE9SOiB2YXIoLS13ZXVpLUJSQU5EKTtcbiAgLS13ZXVpLVNURVBTLUZPTlQtU0laRTogMTc7XG4gIC0td2V1aS1TVEVQUy1MSU5FSEVJR0hUOiAxLjQ7XG4gIC0td2V1aS1TVEVQUy1ET1QtU0laRTogY2FsYyg4IC8gdmFyKC0td2V1aS1TVEVQUy1GT05ULVNJWkUpICogMWVtKTtcbiAgLS13ZXVpLVNURVBTLUlDT04tU0laRTogNDA7XG4gIC0td2V1aS1TVEVQUy1WRVJUSUNBTC1ET1QtR0FQOiBjYWxjKCgxZW0gLSB2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKSkgLyAyKTtcbiAgLS13ZXVpLVNURVBTLUhPUklaT05BTC1ET1QtR0FQOiA0cHg7XG59XG4ud2V1aS1zdGVwcyB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS13ZXVpLVNURVBTLUxJTkVIRUlHSFQpO1xuICBmb250LXNpemU6IGNhbGMoMXB4ICogdmFyKC0td2V1aS1TVEVQUy1GT05ULVNJWkUpKTtcbn1cbi53ZXVpLXN0ZXBzX19pdGVtX190aXRsZSxcbi53ZXVpLXN0ZXBzX19pdGVtX19kZXNjIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ud2V1aS1zdGVwc19faXRlbV9fdGl0bGUge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLndldWktc3RlcHNfX2l0ZW1fX2Rlc2Mge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xuICBtYXJnaW4tdG9wOiA0cHg7XG59XG4ud2V1aS1zdGVwc192ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMzJweDtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICBjb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xuICB0b3A6IGNhbGMoKHZhcigtLXdldWktU1RFUFMtTElORUhFSUdIVCkgLSAodmFyKC0td2V1aS1TVEVQUy1MSU5FSEVJR0hUKSAtIDEpIC8gMikgKiAxZW0pO1xuICBib3R0b206IGNhbGMoKHZhcigtLXdldWktU1RFUFMtTElORUhFSUdIVCkgLSAxKSAvIDIgKiAtMWVtKTtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtOmZpcnN0LWNoaWxkOm5vdCgud2V1aS1zdGVwc19faXRlbV9zdWNjZXNzKSAud2V1aS1zdGVwc19faXRlbV9faW5uZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktU1RFUFMtSElHSExJR0hULUNPTE9SKTtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtOmxhc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2V1aS1zdGVwc192ZXJ0aWNhbCAud2V1aS1zdGVwc19faXRlbV9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmctbGVmdDogMzZweDtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtX19pbm5lcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICBoZWlnaHQ6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGxlZnQ6IDA7XG4gIHRvcDogY2FsYyh2YXIoLS13ZXVpLVNURVBTLUxJTkVIRUlHSFQpIC8gMiAqIDFlbSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuLndldWktc3RlcHNfdmVydGljYWwgLndldWktc3RlcHNfX2ljb24ge1xuICBmb250LXNpemU6IGNhbGMoMXB4ICogdmFyKC0td2V1aS1TVEVQUy1GT05ULVNJWkUpKTtcbiAgd2lkdGg6IGNhbGModmFyKC0td2V1aS1TVEVQUy1JQ09OLVNJWkUpIC8gdmFyKC0td2V1aS1TVEVQUy1GT05ULVNJWkUpICogMWVtKTtcbiAgaGVpZ2h0OiBjYWxjKHZhcigtLXdldWktU1RFUFMtSUNPTi1TSVpFKSAvIHZhcigtLXdldWktU1RFUFMtRk9OVC1TSVpFKSAqIDFlbSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgbGVmdDogMDtcbiAgdG9wOiBjYWxjKHZhcigtLXdldWktU1RFUFMtTElORUhFSUdIVCkgLyAyICogMWVtKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoKHZhcigtLXdldWktU1RFUFMtSUNPTi1TSVpFKSAvIHZhcigtLXdldWktU1RFUFMtRk9OVC1TSVpFKSAqIDFlbSAtIDFlbSkgLyAyIC0gLjI4ZW0pO1xufVxuLndldWktc3RlcHNfdmVydGljYWwgLndldWktc3RlcHNfX2l0ZW1faWNvbjo6YmVmb3JlIHtcbiAgdG9wOiBjYWxjKHZhcigtLXdldWktU1RFUFMtVkVSVElDQUwtRE9ULUdBUCkgKyB2YXIoLS13ZXVpLVNURVBTLUlDT04tU0laRSkgLyB2YXIoLS13ZXVpLVNURVBTLUZPTlQtU0laRSkgKiAxZW0gLSAuMTRlbSk7XG59XG4ud2V1aS1zdGVwc192ZXJ0aWNhbCAud2V1aS1zdGVwc19faXRlbV9pY29uIC53ZXVpLXN0ZXBzX19pdGVtX19pbm5lcjo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtX2ljb24tcHJldjo6YmVmb3JlIHtcbiAgYm90dG9tOiBjYWxjKHZhcigtLXdldWktU1RFUFMtVkVSVElDQUwtRE9ULUdBUCkgLSAodmFyKC0td2V1aS1TVEVQUy1MSU5FSEVJR0hUKSAtIDEpIC8gMiAqIDFlbSArIC4xNGVtKTtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3M6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xufVxuLndldWktc3RlcHNfdmVydGljYWwgLndldWktc3RlcHNfX2l0ZW1fc3VjY2VzcyAud2V1aS1zdGVwc19faXRlbV9faW5uZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktU1RFUFMtSElHSExJR0hULUNPTE9SKTtcbn1cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3MgKyAud2V1aS1zdGVwc19faXRlbSAud2V1aS1zdGVwc19faXRlbV9faW5uZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktU1RFUFMtSElHSExJR0hULUNPTE9SKTtcbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwgLndldWktc3RlcHNfX2l0ZW0ge1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsIC53ZXVpLXN0ZXBzX19pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICBoZWlnaHQ6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICBmbGV4LXNocmluazogMDtcbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbCAud2V1aS1zdGVwc19faXRlbTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDAuNXB4O1xuICBmbGV4OiAxO1xuICBtYXJnaW46IDAgdmFyKC0td2V1aS1TVEVQUy1IT1JJWk9OQUwtRE9ULUdBUCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktU1RFUFMtREVGQVVMVC1DT0xPUik7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwgLndldWktc3RlcHNfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIGZsZXg6IG5vbmU7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwgLndldWktc3RlcHNfX2l0ZW06bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsIC53ZXVpLXN0ZXBzX19pdGVtOmZpcnN0LWNoaWxkOm5vdCgud2V1aS1zdGVwc19faXRlbV9zdWNjZXNzKTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsIC53ZXVpLXN0ZXBzX19pdGVtX19pbm5lciB7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwgLndldWktc3RlcHNfX2l0ZW1fc3VjY2Vzczo6YmVmb3JlLFxuLndldWktc3RlcHNfaG9yaXpvbmFsIC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3M6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsIC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3MgKyAud2V1aS1zdGVwc19faXRlbTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLXByaW1hcnkge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLXByaW1hcnkgLndldWktc3RlcHNfX2l0ZW0ge1xuICBmbGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtcHJpbWFyeSAud2V1aS1zdGVwc19faXRlbTo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICBjb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLXByaW1hcnkgLndldWktc3RlcHNfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIGZsZXg6IG5vbmU7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtcHJpbWFyeSAud2V1aS1zdGVwc19faXRlbTpsYXN0LWNoaWxkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLXByaW1hcnkgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogMzZweDtcbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbC1wcmltYXJ5IC53ZXVpLXN0ZXBzX19pdGVtX19pbm5lcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogdmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSk7XG4gIGhlaWdodDogdmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktU1RFUFMtREVGQVVMVC1DT0xPUik7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLXByaW1hcnkgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIHdpZHRoOiBjYWxjKHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpICsgIDIgKiB2YXIoLS13ZXVpLVNURVBTLUhPUklaT05BTC1ET1QtR0FQKSk7XG4gIGhlaWdodDogY2FsYyh2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKSArICAyICogdmFyKC0td2V1aS1TVEVQUy1IT1JJWk9OQUwtRE9ULUdBUCkpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygtNTAlICsgdmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSkgLyAyKSwgLTUwJSk7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtcHJpbWFyeSAud2V1aS1zdGVwc19faXRlbV9zdWNjZXNzOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLXdldWktU1RFUFMtSElHSExJR0hULUNPTE9SKTtcbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbC1wcmltYXJ5IC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3MgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUik7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtcHJpbWFyeSAud2V1aS1zdGVwc19faXRlbV9zdWNjZXNzICsgLndldWktc3RlcHNfX2l0ZW0gLndldWktc3RlcHNfX2l0ZW1fX2lubmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUik7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtY2VudGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLWNlbnRlciAud2V1aS1zdGVwc19faXRlbSB7XG4gIGZsZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbC1jZW50ZXIgLndldWktc3RlcHNfX2l0ZW06OmFmdGVyLFxuLndldWktc3RlcHNfaG9yaXpvbmFsLWNlbnRlciAud2V1aS1zdGVwc19faXRlbTo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICBjb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLWNlbnRlciAud2V1aS1zdGVwc19faXRlbTo6YmVmb3JlIHtcbiAgcmlnaHQ6IDUwJTtcbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbC1jZW50ZXIgLndldWktc3RlcHNfX2l0ZW06OmFmdGVyIHtcbiAgbGVmdDogNTAlO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLWNlbnRlciAud2V1aS1zdGVwc19faXRlbTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbC1jZW50ZXIgLndldWktc3RlcHNfX2l0ZW06bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLWNlbnRlciAud2V1aS1zdGVwc19faXRlbV9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmctdG9wOiAzNnB4O1xufVxuLndldWktc3RlcHNfaG9yaXpvbmFsLWNlbnRlciAud2V1aS1zdGVwc19faXRlbV9faW5uZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICBoZWlnaHQ6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtY2VudGVyIC53ZXVpLXN0ZXBzX19pdGVtX19pbm5lcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICB3aWR0aDogY2FsYyh2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKSArICAyICogdmFyKC0td2V1aS1TVEVQUy1IT1JJWk9OQUwtRE9ULUdBUCkpO1xuICBoZWlnaHQ6IGNhbGModmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSkgKyAgMiAqIHZhcigtLXdldWktU1RFUFMtSE9SSVpPTkFMLURPVC1HQVApKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtY2VudGVyIC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3M6OmJlZm9yZSxcbi53ZXVpLXN0ZXBzX2hvcml6b25hbC1jZW50ZXIgLndldWktc3RlcHNfX2l0ZW1fc3VjY2Vzczo6YWZ0ZXIsXG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtY2VudGVyIC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3MgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyOjpiZWZvcmUsXG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtY2VudGVyIC53ZXVpLXN0ZXBzX19pdGVtX3N1Y2Nlc3MgKyAud2V1aS1zdGVwc19faXRlbTo6YmVmb3JlLFxuLndldWktc3RlcHNfaG9yaXpvbmFsLWNlbnRlciAud2V1aS1zdGVwc19faXRlbV9zdWNjZXNzICsgLndldWktc3RlcHNfX2l0ZW0gLndldWktc3RlcHNfX2l0ZW1fX2lubmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUik7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xucGFnZSxcbmJvZHkge1xuICAtLXdldWktY2VsbE1hcmdpbkxSOiAxNnB4O1xuICAtLXdldWktY2VsbFBhZGRpbmdMUjogMTZweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cCB7XG4gIGJvcmRlcjogMDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxscyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS13ZXVpLWNlbGxNYXJnaW5MUik7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0td2V1aS1jZWxsTWFyZ2luTFIpO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbHM6OmJlZm9yZSxcbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxzOjphZnRlciB7XG4gIGxlZnQ6IHZhcigtLXdldWktY2VsbFBhZGRpbmdMUik7XG4gIHJpZ2h0OiB2YXIoLS13ZXVpLWNlbGxQYWRkaW5nTFIpO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbCB7XG4gIHBhZGRpbmc6IDE2cHggdmFyKC0td2V1aS1jZWxsUGFkZGluZ0xSKTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGw6OmJlZm9yZSB7XG4gIGxlZnQ6IHZhcigtLXdldWktY2VsbFBhZGRpbmdMUik7XG4gIHJpZ2h0OiB2YXIoLS13ZXVpLWNlbGxQYWRkaW5nTFIpO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbDpub3QoLndldWktY2VsbF92ZXJ0aWNhbCkgLndldWktY2VsbF9faGQge1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbDpub3QoLndldWktY2VsbF92ZXJ0aWNhbCkgLndldWktY2VsbF9fZnQge1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsc19fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIHBhZGRpbmc6IDAgMzJweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtOmZpcnN0LWNoaWxkIC53ZXVpLWNlbGxzX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsc19fdGlwcyB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgcGFkZGluZzogMCBjYWxjKHZhcigtLXdldWktY2VsbE1hcmdpbkxSKSArIHZhcigtLXdldWktY2VsbFBhZGRpbmdMUikpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxzX190aXBzIGEge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbHNfX3RpcHNfd2FybiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1sYWJlbCB7XG4gIG1heC13aWR0aDogNWVtO1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfYWNjZXNzOmFjdGl2ZTo6YWZ0ZXIsXG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX2FjdGl2ZTphY3RpdmU6OmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF93YXJuIGlucHV0IHtcbiAgY29sb3I6IHZhcigtLXdldWktUkVEKTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWljb24td2FybiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3N3aXRjaDphY3RpdmU6OmFmdGVyLFxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF92Y29kZTphY3RpdmU6OmFmdGVyLFxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9yZWFkb25seTphY3RpdmU6OmFmdGVyLFxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9kaXNhYmxlZDphY3RpdmU6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIGlucHV0LFxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gdGV4dGFyZWEsXG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSBsYWJlbFtmb3JdIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF93cmFwIHtcbiAgYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3dyYXAgLndldWktY2VsbF9faGQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF93cmFwIC53ZXVpLWxhYmVsIHtcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF93cmFwIC53ZXVpLWNlbGxfX2JkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9fY29udHJvbCB7XG4gIG1hcmdpbjogOHB4IDAgOHB4IDE2cHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX19jb250cm9sX2ZsZXgge1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDMwdnc7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS12Y29kZS1idG4ge1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktRkctNSk7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS12Y29kZS1idG46OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3Zjb2RlLndldWktY2VsbF93cmFwIHtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfdmNvZGUud2V1aS1jZWxsX3dyYXAgLndldWktbGFiZWwge1xuICBtYXJnaW4tdG9wOiAxMnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF92Y29kZS53ZXVpLWNlbGxfd3JhcCAud2V1aS1pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbWluLWhlaWdodDogMS44ODIzNTI5NGVtO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbHNfY2hlY2tib3ggLndldWktY2hlY2tfX2xhYmVsOjpiZWZvcmUge1xuICBsZWZ0OiBjYWxjKDQwcHggKyB2YXIoLS13ZXVpLWNlbGxQYWRkaW5nTFIpKTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfc2VsZWN0IHtcbiAgcGFkZGluZzogMDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfc2VsZWN0LWJlZm9yZSAud2V1aS1jZWxsX19oZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3N3aXRjaCB7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtLXByaW1hcnkge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0tcHJpbWFyeSAud2V1aS1jZWxscyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktQkctMSk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtLXByaW1hcnkgLndldWktY2VsbHM6OmJlZm9yZSxcbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtLXByaW1hcnkgLndldWktY2VsbHM6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtLXByaW1hcnkgLndldWktY2VsbF9hY2Nlc3M6YWN0aXZlOjphZnRlcixcbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtLXByaW1hcnkgLndldWktY2VsbF9hY3RpdmU6YWN0aXZlOjphZnRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4ud2V1aS1mb3JtIHtcbiAgcGFkZGluZzogNTZweCAwIDA7XG4gIHBhZGRpbmc6IGNhbGMoNTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcGFkZGluZzogY2FsYyg1NnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApKSBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbn1cbi53ZXVpLWZvcm0gLndldWktZm9vdGVyLFxuLndldWktZm9ybSAud2V1aS1mb290ZXJfX2xpbmsge1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ud2V1aS1mb3JtX19iZCB7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ud2V1aS1mb3JtX190ZXh0LWFyZWEge1xuICBwYWRkaW5nOiAwIDMycHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud2V1aS1mb3JtX19jb250cm9sLWFyZWEge1xuICBmbGV4OiAxO1xuICBtYXJnaW46IDQ4cHggMDtcbn1cbi53ZXVpLWZvcm1fX3RpcHMtYXJlYSxcbi53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBwYWRkaW5nOiAwIDMycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tdG9wOiA1MnB4O1xufVxuLndldWktZm9ybV9fb3ByLWFyZWEge1xuICBwYWRkaW5nOiAwIDMycHg7XG59XG4ud2V1aS1mb3JtX19vcHItYXJlYTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogOTZweDtcbn1cbi53ZXVpLWZvcm1fX29wci1hcmVhICsgLndldWktZm9ybV9fdGlwcy1hcmVhIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi53ZXVpLWZvcm1fX3RpcHMtYXJlYSArIC53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLndldWktZm9ybV9fdGlwcy1hcmVhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuLndldWktZm9ybV9fdGl0bGUge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM2O1xufVxuLndldWktZm9ybV9fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cbi53ZXVpLWZvcm1fX3RpcHMge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLndldWktZm9ybV9fdGlwcyBhLFxuLndldWktZm9ybV9fdGlwcyBuYXZpZ2F0b3Ige1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbn1cbi53ZXVpLWZvcm1fX3RpcHMgbmF2aWdhdG9yIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1hcnRpY2xlIHtcbiAgcGFkZGluZzogNDhweCAyNHB4O1xuICBwYWRkaW5nOiA0OHB4IGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIGNhbGMoNDhweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKSBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBwYWRkaW5nOiA0OHB4IGNhbGMoMjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBjYWxjKDQ4cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpIGNhbGMoMjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS42O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cbi53ZXVpLWFydGljbGUgc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHg7XG59XG4ud2V1aS1hcnRpY2xlIHNlY3Rpb24gc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG59XG4ud2V1aS1hcnRpY2xlIHNlY3Rpb24gc2VjdGlvbiBzZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cbi53ZXVpLWFydGljbGUgaDEsXG4ud2V1aS1hcnRpY2xlIGgyLFxuLndldWktYXJ0aWNsZSBoMyxcbi53ZXVpLWFydGljbGUgaDQsXG4ud2V1aS1hcnRpY2xlIGg1LFxuLndldWktYXJ0aWNsZSBoNiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1hcnRpY2xlIGgxIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud2V1aS1hcnRpY2xlIGgyIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLndldWktYXJ0aWNsZSBoMyB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuLndldWktYXJ0aWNsZSBoNCB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuLndldWktYXJ0aWNsZSBoNSxcbi53ZXVpLWFydGljbGUgaDYge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDE3cHg7XG59XG4ud2V1aS1hcnRpY2xlICoge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbi53ZXVpLWFydGljbGUgaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cbi53ZXVpLWFydGljbGUgcCB7XG4gIG1hcmdpbjogMCAwIDI0cHg7XG59XG4ud2V1aS1hcnRpY2xlIG9sLFxuLndldWktYXJ0aWNsZSB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cbi53ZXVpLWFydGljbGUgb2wgb2wsXG4ud2V1aS1hcnRpY2xlIHVsIG9sLFxuLndldWktYXJ0aWNsZSBvbCB1bCxcbi53ZXVpLWFydGljbGUgdWwgdWwge1xuICBtYXJnaW46IDAuNWVtIDAgMC41ZW0gMS4yZW07XG59XG4ud2V1aS1hcnRpY2xlIG9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cbi53ZXVpLWFydGljbGUgdWwge1xuICBsaXN0LXN0eWxlOiBkaXNjO1xufVxuLndldWktYXJ0aWNsZSBsaSB7XG4gIG1hcmdpbjogMC41ZW0gMDtcbn1cbi53ZXVpLWFydGljbGUgLndldWktYXJ0aWNsZV9fbGlzdF9pbnNpZGUge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi53ZXVpLWFydGljbGUgLndldWktYXJ0aWNsZV9fbGlzdF9pbnNpZGUgbGkge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG4ud2V1aS1hcnRpY2xlIC53ZXVpLWFydGljbGVfX2xpc3Rfbm9uZSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLndldWktYXJ0aWNsZSAud2V1aS1hcnRpY2xlX19saXN0X25vbmUgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXRhYmJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTEpO1xufVxuLndldWktdGFiYmFyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS10YWJiYXJfX2l0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMTtcbiAgcGFkZGluZzogOHB4IDA7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDhweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoOHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgZm9udC1zaXplOiAwO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ud2V1aS10YWJiYXJfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcGFkZGluZy1sZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xufVxuLndldWktdGFiYmFyX19pdGVtOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICBwYWRkaW5nLXJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbn1cbi53ZXVpLXRhYmJhcl9faXRlbS53ZXVpLWJhcl9faXRlbV9vbiAud2V1aS10YWJiYXJfX2ljb24sXG4ud2V1aS10YWJiYXJfX2l0ZW0ud2V1aS1iYXJfX2l0ZW1fb24gLndldWktdGFiYmFyX19pY29uID4gaSxcbi53ZXVpLXRhYmJhcl9faXRlbS53ZXVpLWJhcl9faXRlbV9vbiAud2V1aS10YWJiYXJfX2xhYmVsIHtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktdGFiYmFyX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiAyLjhlbTtcbiAgaGVpZ2h0OiAyLjhlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xufVxuaS53ZXVpLXRhYmJhcl9faWNvbixcbi53ZXVpLXRhYmJhcl9faWNvbiA+IGkge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xufVxuLndldWktdGFiYmFyX19pY29uIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ud2V1aS10YWJiYXJfX2xhYmVsIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktbmF2YmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1MDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIHBhZGRpbmctdG9wOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbn1cbi53ZXVpLW5hdmJhcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1uYXZiYXIgKyAud2V1aS10YWJfX3BhbmVsIHtcbiAgcGFkZGluZy1ib3R0b206IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xufVxuLndldWktbmF2YmFyX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMTtcbiAgcGFkZGluZzogMTZweCAwO1xuICBwYWRkaW5nLXRvcDogY2FsYygxNnB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcCkpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxNnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQxMTc2NDcxO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ud2V1aS1uYXZiYXJfX2l0ZW06YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy1DT0xPUi1BQ1RJVkUpO1xufVxuLndldWktbmF2YmFyX19pdGVtLndldWktYmFyX19pdGVtX29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy1DT0xPUi1BQ1RJVkUpO1xufVxuLndldWktbmF2YmFyX19pdGVtOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMC41KTtcbn1cbi53ZXVpLW5hdmJhcl9faXRlbTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG59XG4ud2V1aS1uYXZiYXJfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xufVxuLndldWktbmF2YmFyX19pdGVtOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLXRhYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi53ZXVpLXRhYl9fcGFuZWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbGV4OiAxO1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuLndldWktdGFiX19jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndldWktcHJvZ3Jlc3NfX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMCk7XG4gIGhlaWdodDogM3B4O1xuICBmbGV4OiAxO1xufVxuLndldWktcHJvZ3Jlc3NfX2lubmVyLWJhciB7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktcHJvZ3Jlc3NfX29wciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgZm9udC1zaXplOiAwO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1wYW5lbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLXBhbmVsOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi53ZXVpLXBhbmVsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1wYW5lbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1wYW5lbCAud2V1aS1jZWxsczo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktcGFuZWxfX2hkIHtcbiAgcGFkZGluZzogMTZweCAxNnB4IDEzcHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLXBhbmVsX19oZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG4gIGxlZnQ6IDE1cHg7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLW1lZGlhLWJveCB7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLW1lZGlhLWJveDo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICBsZWZ0OiAxNnB4O1xufVxuLndldWktbWVkaWEtYm94OmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuYS53ZXVpLW1lZGlhLWJveCB7XG4gIGNvbG9yOiAjMDAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5hLndldWktbWVkaWEtYm94OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctQ09MT1ItQUNUSVZFKTtcbn1cbi53ZXVpLW1lZGlhLWJveF9fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG4ud2V1aS1tZWRpYS1ib3hfX2Rlc2Mge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG4ud2V1aS1tZWRpYS1ib3hfX2luZm8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLW1lZGlhLWJveF9faW5mb19fbWV0YSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG59XG4ud2V1aS1tZWRpYS1ib3hfX2luZm9fX21ldGFfZXh0cmEge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTIpO1xufVxuLndldWktbWVkaWEtYm94X2FwcG1zZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud2V1aS1tZWRpYS1ib3hfYXBwbXNnIC53ZXVpLW1lZGlhLWJveF9faGQge1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud2V1aS1tZWRpYS1ib3hfYXBwbXNnIC53ZXVpLW1lZGlhLWJveF9fdGh1bWIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi53ZXVpLW1lZGlhLWJveF9hcHBtc2cgLndldWktbWVkaWEtYm94X19iZCB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cbi53ZXVpLW1lZGlhLWJveF9zbWFsbC1hcHBtc2cge1xuICBwYWRkaW5nOiAwO1xufVxuLndldWktbWVkaWEtYm94X3NtYWxsLWFwcG1zZyAud2V1aS1jZWxscyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1tZWRpYS1ib3hfc21hbGwtYXBwbXNnIC53ZXVpLWNlbGxzOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1ncmlkcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWdyaWRzOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1ncmlkczo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuLndldWktZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi53ZXVpLWdyaWQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMC41KTtcbn1cbi53ZXVpLWdyaWQ6OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktZ3JpZDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1ncmlkX19pY29uIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4ud2V1aS1ncmlkX19pY29uIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLndldWktZ3JpZF9faWNvbiArIC53ZXVpLWdyaWRfX2xhYmVsIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuLndldWktZ3JpZF9fbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktZm9vdGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAud2V1aS1mb290ZXIsXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLWZvb3RlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS1mb290ZXIsXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIC53ZXVpLWZvb3RlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgfVxufVxuLndldWktZm9vdGVyIGEsXG4ud2V1aS1mb290ZXIgbmF2aWdhdG9yIHtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG59XG4ud2V1aS1mb290ZXIgbmF2aWdhdG9yIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLndldWktZm9vdGVyX2ZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNnB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgbGVmdDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICBsZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICByaWdodDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xufVxuLndldWktZm9vdGVyX19saW5rcyB7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi53ZXVpLWZvb3Rlcl9fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luOiAwIDhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ud2V1aS1mb290ZXJfX2xpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDFweDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7XG4gIGxlZnQ6IC04cHg7XG4gIHRvcDogMC4zNmVtO1xuICBib3R0b206IDAuMzZlbTtcbn1cbi53ZXVpLWZvb3Rlcl9fbGluazpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWZvb3Rlcl9fdGV4dCB7XG4gIHBhZGRpbmc6IDAgMTZweDtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi53ZXVpLWZsZXhfX2l0ZW0ge1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDA7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTAwMDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDE2cHg7XG4gIHJpZ2h0OiAxNnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDkwJTtcbiAgb3V0bGluZTogMDtcbn1cbi53ZXVpLWRpYWxvZ19faGQge1xuICBwYWRkaW5nOiAzMnB4IDI0cHggMTZweDtcbn1cbi53ZXVpLWRpYWxvZ19fdGl0bGUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktZGlhbG9nX19iZCB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgcGFkZGluZzogMCAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICBmb250LXNpemU6IDE3cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWRpYWxvZ19fYmQ6Zmlyc3QtY2hpbGQge1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAzMnB4IDI0cHggMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi53ZXVpLWRpYWxvZ19fZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ud2V1aS1kaWFsb2dfX2Z0OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0td2V1aS1ESUFMT0ctTElORS1DT0xPUik7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktZGlhbG9nX19idG4ge1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDExNzY0NzE7XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS1kaWFsb2dfX2J0bjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1kaWFsb2dfX2J0bjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SKTtcbiAgY29sb3I6IHZhcigtLXdldWktRElBTE9HLUxJTkUtQ09MT1IpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7XG59XG4ud2V1aS1kaWFsb2dfX2J0bjpmaXJzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktZGlhbG9nX19idG5fZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLUhBTEYpO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWRpYWxvZyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDMwcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi53ZXVpLXNraW5fYW5kcm9pZCAud2V1aS1kaWFsb2dfX2hkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi53ZXVpLXNraW5fYW5kcm9pZCAud2V1aS1kaWFsb2dfX2JkIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19iZDpmaXJzdC1jaGlsZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWRpYWxvZ19fZnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwIDI0cHggMTZweDtcbn1cbi53ZXVpLXNraW5fYW5kcm9pZCAud2V1aS1kaWFsb2dfX2Z0OjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBhZGRpbmc6IDAgMC44ZW07XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19idG46OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLXNraW5fYW5kcm9pZCAud2V1aS1kaWFsb2dfX2J0bjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC44ZW07XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19idG5fZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLUhBTEYpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzUycHgpIHtcbiAgLndldWktZGlhbG9nIHtcbiAgICB3aWR0aDogMzIwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAyNTVweDtcbiAgbWF4LWhlaWdodDogNzUlO1xuICB6LWluZGV4OiA1MDAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTJweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgMjRweDtcbiAgcGFkZGluZzogMCBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBwYWRkaW5nOiAwIGNhbGMoMjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG91dGxpbmU6IDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLWhlaWdodDogNTU4cHgpIHtcbiAgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgfVxufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCB7XG4gIG1pbi1oZWlnaHQ6IDY0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCAud2V1aS1idG5faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCAud2V1aS1idG5faWNvbjphY3RpdmUge1xuICBvcGFjaXR5OiAwLjU7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19zaWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOHB4O1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZF9fbWFpbiB7XG4gIGZsZXg6IDE7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19zaWRlICsgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZF9fbWFpbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMCA0MHB4O1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZF9fbWFpbiArIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUge1xuICByaWdodDogLThweDtcbiAgbGVmdDogYXV0bztcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX21haW4gKyAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19zaWRlIC53ZXVpLWljb24tYnRuLFxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZF9fbWFpbiArIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUgLndldWktYnRuX2ljb24ge1xuICByaWdodDogMDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fc3VidGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYmQge1xuICBmbGV4OiAxO1xuICBtaW4taGVpZ2h0OiAwO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDU2cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Rlc2Mge1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX190aXBzIHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IHtcbiAgcGFkZGluZzogMCAwIDY0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZnQgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMiksXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IDAgOHB4O1xuICB3aWR0aDogMTIwcHg7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2J0bi1hcmVhICsgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19hdHRhY2htZW50LWFyZWEge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMzRweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19sYXJnZSB7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIHRvcDogMTZweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19zbGlkZSAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkIHtcbiAgbWluLWhlaWdodDogMDtcbiAgcGFkZGluZzogMTJweCAxNnB4IDE2cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX3NsaWRlIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fc2xpZGUtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1CRy0wKTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfc2xpZGUgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19zbGlkZS1pY29uLFxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfc2xpZGUgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19zbGlkZS1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1GRy0zKTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19zbGlkZSAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX3NsaWRlLWljb24sXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19zbGlkZSAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX3NsaWRlLWljb24ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdldWktRkctMyk7XG4gIH1cbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19zbGlkZSAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX3NsaWRlLWljb24gLndldWktaWNvbi1hcnJvdyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgd2lkdGg6IDAuOGVtO1xuICBoZWlnaHQ6IDEuNmVtO1xuICBvcGFjaXR5OiAwO1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19idG4tYXJlYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19idG4tYXJlYSAud2V1aS1idG4ge1xuICB3aWR0aDogMTg0cHg7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYnRuLWFyZWEgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMiksXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2J0bi1hcmVhIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuIHtcbiAgbWFyZ2luOiAwIDhweDtcbiAgd2lkdGg6IDEzNnB4O1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19idG4tYXJlYSAud2V1aS1idG46bnRoLWxhc3QtY2hpbGQobisyKTpmaXJzdC1jaGlsZCxcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYnRuLWFyZWEgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMikgKyAud2V1aS1idG46Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYnRuLWFyZWEgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMik6bGFzdC1jaGlsZCxcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYnRuLWFyZWEgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMikgKyAud2V1aS1idG46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19idG4td3JhcCAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2J0bi1hcmVhIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19idG4td3JhcCAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2J0bi1hcmVhIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpLFxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX2J0bi13cmFwIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYnRuLWFyZWEgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMikgKyAud2V1aS1idG4ge1xuICB3aWR0aDogMTg0cHg7XG4gIG1hcmdpbjogMTZweCAwIDA7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYnRuLXdyYXAgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19idG4tYXJlYSAud2V1aS1idG46bnRoLWxhc3QtY2hpbGQobisyKTpmaXJzdC1jaGlsZCxcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19idG4td3JhcCAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2J0bi1hcmVhIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi53ZXVpLWljb24tbW9yZSB7XG4gIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFICAlM0NwYXRoIGZpbGwtb3BhY2l0eT0nLjknIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTUgMTAuMjVhMS43NSAxLjc1IDAgMSAxIDAgMy41IDEuNzUgMS43NSAwIDAgMSAwLTMuNXptNyAwYTEuNzUgMS43NSAwIDEgMSAwIDMuNSAxLjc1IDEuNzUgMCAwIDEgMC0zLjV6bTcgMGExLjc1IDEuNzUgMCAxIDEgMCAzLjUgMS43NSAxLjc1IDAgMCAxIDAtMy41eicvJTNFJTNDL3N2ZyUzRVwiKSBuby1yZXBlYXQgNTAlIDUwJTtcbn1cbi53ZXVpLWljb24tc2xpZGUtZG93biB7XG4gIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyUzRSAgJTNDZGVmcyUzRSAgICAlM0NyZWN0IGlkPSdkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYScgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB4PScwJyB5PScwJyByeD0nMTInLyUzRSAgJTNDL2RlZnMlM0UgICUzQ2cgZmlsbD0nbm9uZScgZmlsbC1ydWxlPSdldmVub2RkJyUzRSAgICAlM0NtYXNrIGlkPSdkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYicgZmlsbD0nJTIzZmZmJyUzRSAgICAgICUzQ3VzZSB4bGluazpocmVmPSclMjNkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYScvJTNFICAgICUzQy9tYXNrJTNFICAgICUzQ3VzZSBmaWxsPSclMjMwMDAnIGZpbGwtb3BhY2l0eT0nLjA1JyB4bGluazpocmVmPSclMjNkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYScvJTNFICAgICUzQ2cgZmlsbC1vcGFjaXR5PScuOScgbWFzaz0ndXJsKCUyM2RkYTkwMjYzLWEyOTAtNDU5NC05MjZmLTZhYmE4Y2I0Nzc5Zi1iKSclM0UgICAgICAlM0NwYXRoIGZpbGw9JyUyMzAwMCcgZD0nTTExLjQwNyAxNS40NjRMNi42OTMgMTAuNzVsMS4xNzktMS4xNzkgNC4xMjUgNC4xMjUgNC4xMjQtNC4xMjVMMTcuMyAxMC43NWwtNC43MTQgNC43MTRhLjgzMy44MzMgMCAwIDEtMS4xNzkgMHonLyUzRSAgICAlM0MvZyUzRSAgJTNDL2clM0UlM0Mvc3ZnJTNFXCIpO1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCAud2V1aS1pY29uLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCAud2V1aS1pY29uLWJ0bjphY3RpdmUge1xuICBvcGFjaXR5OiAwLjU7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkIC53ZXVpLWljb24tYnRuOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgbWluLWhlaWdodDogNDRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi53ZXVpLWljb24tYnRuLndldWktaWNvbi1idG4ge1xuICBvdXRsaW5lOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtc2l6ZTogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbn1cbi53ZXVpLWljb24tYnRuX2dvYmFjay53ZXVpLWljb24tYnRuX2dvYmFjayB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHdpZHRoOiAwLjcxcmVtO1xuICBoZWlnaHQ6IDEuNDJyZW07XG4gIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEwJTIwMTkuNDM4TDguOTU1JTIwMjAuNWwtNy42NjYtNy43OWExLjAyJTIwMS4wMiUyMDAlMjAwMTAtMS40Mkw4Ljk1NSUyMDMuNSUyMDEwJTIwNC41NjMlMjAyLjY4MiUyMDEyJTIwMTAlMjAxOS40Mzh6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgbWFzay1zaXplOiAxMDAlO1xufVxuLndldWktaWNvbi1idG5fY2xvc2Uud2V1aS1pY29uLWJ0bl9jbG9zZSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHdpZHRoOiAxLjQycmVtO1xuICBoZWlnaHQ6IDEuNDJyZW07XG4gIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyLjI1JTIwMTAuNjkzTDYuMDU3JTIwNC41JTIwNSUyMDUuNTU3bDYuMTkzJTIwNi4xOTNMNSUyMDE3Ljk0MyUyMDYuMDU3JTIwMTlsNi4xOTMtNi4xOTNMMTguNDQzJTIwMTlsMS4wNTctMS4wNTctNi4xOTMtNi4xOTNMMTkuNSUyMDUuNTU3JTIwMTguNDQzJTIwNC41eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0VcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG4gIG1hc2stc2l6ZTogMTAwJTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktdG9hc3Qge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU1MDA7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IDEzLjZlbTtcbiAgaGVpZ2h0OiAxMy42ZW07XG4gIHRvcDogNDAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTQpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLndldWktdG9hc3RfdGV4dCB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi13aWR0aDogMTUycHg7XG4gIG1heC13aWR0aDogMjE2cHg7XG4gIHBhZGRpbmc6IDEycHggMDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuLndldWktdG9hc3RfdGV4dCAud2V1aS10b2FzdF9fY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMCAyMHB4O1xufVxuLndldWktaWNvbl90b2FzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLWljb25fdG9hc3Qge1xuICB3aWR0aDogNGVtO1xuICBoZWlnaHQ6IDRlbTtcbn1cbi53ZXVpLWljb25fdG9hc3Qud2V1aS1pY29uLXN1Y2Nlc3Mtbm8tY2lyY2xlIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbn1cbi53ZXVpLWljb25fdG9hc3Qud2V1aS1pY29uLXdhcm4ge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLWxvYWRpbmcge1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgZm9udC1zaXplOiA0MHB4O1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLXByaW1hcnktbG9hZGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBmb250LXNpemU6IDQwcHg7XG4gIGNvbG9yOiAjZWRlZGVkO1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLXByaW1hcnktbG9hZGluZzo6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiA0cHggMCA0cHggNHB4O1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLXByaW1hcnktbG9hZGluZzo6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6IDRweCA0cHggNHB4IDA7XG59XG4ud2V1aS1pY29uX3RvYXN0LndldWktcHJpbWFyeS1sb2FkaW5nIC53ZXVpLXByaW1hcnktbG9hZGluZ19fZG90IHtcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG59XG4ud2V1aS10b2FzdF9fY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgcGFkZGluZzogMCAxMnB4O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cbi53ZXVpLXRvYXN0X3RleHQtbW9yZSAud2V1aS1pY29uX3RvYXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cbi53ZXVpLXRvYXN0X3RleHQtbW9yZSAud2V1aS10b2FzdF9fY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktbWFzayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG4ud2V1aS1tYXNrX3RyYW5zcGFyZW50IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWFjdGlvbnNoZWV0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDUwMDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTJweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG91dGxpbmU6IDA7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNTZweDtcbiAgcGFkZGluZzogOHB4IDI0cHg7XG4gIHBhZGRpbmc6IDhweCBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSA4cHggY2FsYygyNHB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgcGFkZGluZzogOHB4IGNhbGMoMjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSA4cHggY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktQkctMik7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X190aXRsZSAud2V1aS1hY3Rpb25zaGVldF9fdGl0bGUtdGV4dCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xufVxuLndldWktYWN0aW9uc2hlZXRfX21lbnUge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X19hY3Rpb24ge1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xufVxuLndldWktYWN0aW9uc2hlZXRfX2FjdGlvbiAud2V1aS1hY3Rpb25zaGVldF9fY2VsbDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fYWN0aW9uIC53ZXVpLWFjdGlvbnNoZWV0X19jZWxsLndldWktYWN0aW9uc2hlZXRfX2NlbGxfdGlwczpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTJweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTJweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTZweDtcbiAgcGFkZGluZzogMTZweCBjYWxjKDE2cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSAxNnB4IGNhbGMoMTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHBhZGRpbmc6IDE2cHggY2FsYygxNnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIDE2cHggY2FsYygxNnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X19jZWxsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbDpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X19jZWxsX190aXBzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbF90aXBzIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xufVxuLndldWktYWN0aW9uc2hlZXRfX2NlbGxfd2FybiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktYWN0aW9uc2hlZXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiAyNzRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWFjdGlvbnNoZWV0X19hY3Rpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWFjdGlvbnNoZWV0X19tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwIDZweCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWFjdGlvbnNoZWV0X19jZWxsIHtcbiAgcGFkZGluZzogMTZweDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktYWN0aW9uc2hlZXRfX2NlbGw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktYWN0aW9uc2hlZXRfX2NlbGw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X3RvZ2dsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1sb2FkbW9yZSB7XG4gIHdpZHRoOiA2NSU7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi53ZXVpLWxvYWRtb3JlIC53ZXVpLWxvYWRpbmcsXG4ud2V1aS1sb2FkbW9yZSAud2V1aS1wcmltYXJ5LWxvYWRpbmcge1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbi53ZXVpLWxvYWRtb3JlX190aXBzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xufVxuLndldWktbG9hZG1vcmVfbGluZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLndldWktbG9hZG1vcmVfbGluZSAud2V1aS1sb2FkbW9yZV9fdGlwcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMC45ZW07XG4gIHBhZGRpbmc6IDAgOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xufVxuLndldWktbG9hZG1vcmVfZG90IC53ZXVpLWxvYWRtb3JlX190aXBzOjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiAwO1xuICB0b3A6IC0wLjE2ZW07XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjE1ZW0gMC40ZW07XG4gIG1pbi13aWR0aDogMC42NjY2NjY2N2VtO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi53ZXVpLWJhZGdlX2RvdCB7XG4gIHBhZGRpbmc6IDAuNGVtO1xuICBtaW4td2lkdGg6IDA7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXRvcHRpcHMge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgdG9wOiA4cHg7XG4gIGxlZnQ6IDhweDtcbiAgcmlnaHQ6IDhweDtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIHotaW5kZXg6IDU1MDA7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuLndldWktdG9wdGlwc193YXJuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud3gtcm9vdCxcbmJvZHkge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItRkc6ICNGRkZGRkY7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItRkc6ICNGRkZGRkY7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC0td2V1aS1pbmZvcm1hdGlvbkJhci1GRzogI0ZGRkZGRjtcbiAgfVxufVxuLnd4LXJvb3QsXG5ib2R5IHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLUxJTks6ICNGRkZGRkY7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItTElOSzogI0ZGRkZGRjtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLUxJTks6ICNGRkZGRkY7XG4gIH1cbn1cbi53eC1yb290LFxuYm9keSB7XG4gIC0td2V1aS1pbmZvcm1hdGlvbkJhci1JQ09OOiAjRkZGRkZGO1xufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10sXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLUlDT046ICNGRkZGRkY7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC0td2V1aS1pbmZvcm1hdGlvbkJhci1JQ09OOiAjRkZGRkZGO1xuICB9XG59XG4ud3gtcm9vdCxcbmJvZHkge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItQkc6ICNmYTUxNTE7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItQkc6ICNmYTUxNTE7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC0td2V1aS1pbmZvcm1hdGlvbkJhci1CRzogI2ZhNTE1MTtcbiAgfVxufVxuLnd4LXJvb3QsXG5ib2R5IHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUZHOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10sXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUZHOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC0td2V1aS1pbmZvcm1hdGlvbkJhci13YXJuV2Vhay1GRzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICB9XG59XG4ud3gtcm9vdCxcbmJvZHkge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstTElOSzogIzU3NmI5NTtcbn1cbi53eC1yb290W2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1pbmZvcm1hdGlvbkJhci13YXJuV2Vhay1MSU5LOiAjN2Q5MGE5O1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSksXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstTElOSzogIzdkOTBhOTtcbiAgfVxufVxuLnd4LXJvb3QsXG5ib2R5IHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUlDT046ICNmYTUxNTE7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstSUNPTjogI2ZhNTE1MTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUlDT046ICNmYTUxNTE7XG4gIH1cbn1cbi53eC1yb290LFxuYm9keSB7XG4gIC0td2V1aS1pbmZvcm1hdGlvbkJhci13YXJuV2Vhay1CRzogcmdiYSgyNTAsIDgxLCA4MSwgMC4xKTtcbn1cbi53eC1yb290W2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1pbmZvcm1hdGlvbkJhci13YXJuV2Vhay1CRzogcmdiYSgyNTAsIDgxLCA4MSwgMC4xKTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUJHOiByZ2JhKDI1MCwgODEsIDgxLCAwLjEpO1xuICB9XG59XG4ud3gtcm9vdCxcbmJvZHkge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItbm9Db2xvci1CRzogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10sXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLW5vQ29sb3ItQkc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLW5vQ29sb3ItQkc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgfVxufVxuLnd4LXJvb3QsXG5ib2R5IHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNTdHJvbmctQkc6ICNmYTlkM2I7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1N0cm9uZy1CRzogI2M4N2QyZjtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNTdHJvbmctQkc6ICNjODdkMmY7XG4gIH1cbn1cbi53eC1yb290LFxuYm9keSB7XG4gIC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzV2Vhay1GRzogcmdiYSgwLCAwLCAwLCAwLjU1KTtcbn1cbi53eC1yb290W2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzV2Vhay1GRzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSksXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstRkc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgfVxufVxuLnd4LXJvb3QsXG5ib2R5IHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUxJTks6ICM1NzZiOTU7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstTElOSzogIzdkOTBhOTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUxJTks6ICM3ZDkwYTk7XG4gIH1cbn1cbi53eC1yb290LFxuYm9keSB7XG4gIC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzV2Vhay1JQ09OOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10sXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUlDT046IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUlDT046IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgfVxufVxuLnd4LXJvb3QsXG5ib2R5IHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUJHOiAjZjdmN2Y3O1xufVxuLnd4LXJvb3RbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10sXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUJHOiAjMWUxZTFlO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSksXG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstQkc6ICMxZTFlMWU7XG4gIH1cbn1cbi53ZXVpLWluZm9ybWF0aW9uLWJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA4cHg7XG4gIGxlZnQ6IDhweDtcbiAgcmlnaHQ6IDhweDtcbiAgcGFkZGluZzogMTJweCAxNnB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgei1pbmRleDogNTUwMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItRkcpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLUJHKTtcbn1cbi53ZXVpLWluZm9ybWF0aW9uLWJhciAud2V1aS1idG5faWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG4ud2V1aS1pbmZvcm1hdGlvbi1iYXIgLndldWktYnRuX2ljb246YWN0aXZlIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItSUNPTik7XG59XG4ud2V1aS1pbmZvcm1hdGlvbi1iYXIgLndldWktbGluayB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLUxJTkspO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyIC53ZXVpLWJ0bl9pY29uIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItRkcpO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyLFxuLndldWktaW5mb3JtYXRpb24tYmFyX19oZCxcbi53ZXVpLWluZm9ybWF0aW9uLWJhcl9fZnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX19oZCBbY2xhc3MqPVwid2V1aS1pY29uLVwiXSB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX19iZCB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cbi53ZXVpLWluZm9ybWF0aW9uLWJhcl9fYmQ6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWluZm9ybWF0aW9uLWJhcl93YXJuLXdlYWsge1xuICBjb2xvcjogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci13YXJuV2Vhay1GRyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstQkcpO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3dhcm4td2VhayBbY2xhc3MqPVwid2V1aS1pY29uLVwiXSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUlDT04pO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3dhcm4td2VhayAud2V1aS1saW5rIHtcbiAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstTElOSyk7XG59XG4ud2V1aS1pbmZvcm1hdGlvbi1iYXJfd2Fybi13ZWFrIC53ZXVpLWJ0bl9pY29uIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstRkcpO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3dhcm4tbm8tY29sb3Ige1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLW5vQ29sb3ItQkcpO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3RpcHMtc3Ryb25nIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzU3Ryb25nLUJHKTtcbn1cbi53ZXVpLWluZm9ybWF0aW9uLWJhcl90aXBzLXdlYWsge1xuICBjb2xvcjogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzV2Vhay1GRyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstQkcpO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3RpcHMtd2VhayBbY2xhc3MqPVwid2V1aS1pY29uLVwiXSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUlDT04pO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3RpcHMtd2VhayAud2V1aS1saW5rIHtcbiAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstTElOSyk7XG59XG4ud2V1aS1pbmZvcm1hdGlvbi1iYXJfdGlwcy13ZWFrIC53ZXVpLWJ0bl9pY29uIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstRkcpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1saXN0LXRpcHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLXRvcDogMjRweDtcbiAgcGFkZGluZy1ib3R0b206IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLWxpc3QtdGlwczo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktbGlzdC10aXBzOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi53ZXVpLWxpc3QtdGlwc19faXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW46IDE2cHggMDtcbn1cbi53ZXVpLWxpc3QtdGlwc19faXRlbTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMjJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IC0wLjFlbTtcbn1cbi53ZXVpLWxpc3QtdGlwc19faXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2xpc3QgKyAud2V1aS1saXN0LXRpcHMgPiAud2V1aS1saXN0LXRpcHNfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiA2cHg7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXNlYXJjaC1iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0wKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi53ZXVpLXNlYXJjaC1iYXIud2V1aS1zZWFyY2gtYmFyX2ZvY3VzaW5nIC53ZXVpLXNlYXJjaC1iYXJfX2NhbmNlbC1idG4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi53ZXVpLXNlYXJjaC1iYXIud2V1aS1zZWFyY2gtYmFyX2ZvY3VzaW5nIC53ZXVpLXNlYXJjaC1iYXJfX2xhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLXNlYXJjaC1iYXIgLndldWktaWNvbi1zZWFyY2gge1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiAxLjZlbTtcbiAgaGVpZ2h0OiAxLjZlbTtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLndldWktc2VhcmNoLWJhcl9fZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4ud2V1aS1zZWFyY2gtYmFyX19ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud2V1aS1zZWFyY2gtYmFyX19ib3ggLndldWktc2VhcmNoLWJhcl9faW5wdXQge1xuICBwYWRkaW5nOiA4cHggMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMS4xNDI4NTcxNGVtO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTRlbTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjYXJldC1jb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktc2VhcmNoLWJhcl9fYm94IC53ZXVpLXNlYXJjaC1iYXJfX2lucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi53ZXVpLXNlYXJjaC1iYXJfX2JveCAud2V1aS1pY29uLWNsZWFyIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIG1hc2stc2l6ZTogMmVtO1xuICBtYXNrLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSA4cHgpIDA7XG4gIG1pbi13aWR0aDogNDRweDtcbn1cbi53ZXVpLXNlYXJjaC1iYXJfX2JveCAud2V1aS1pY29uLWNsZWFyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA0NHB4O1xufVxuLndldWktc2VhcmNoLWJhcl9fbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZm9udC1zaXplOiAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1CRy0yKTtcbn1cbi53ZXVpLXNlYXJjaC1iYXJfX2xhYmVsIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi53ZXVpLXNlYXJjaC1iYXJfX2NhbmNlbC1idG4ge1xuICBmbGV4LXNocmluazogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktc2VhcmNoLWJhcl9faW5wdXQ6bm90KDp2YWxpZCkgKyAud2V1aS1pY29uLWNsZWFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29yYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1waWNrZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDUwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgcGFkZGluZy1yaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwJSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICBvdXRsaW5lOiAwO1xufVxuLndldWktcGlja2VyIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGQge1xuICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG59XG4ud2V1aS1waWNrZXIgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19iZCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLndldWktcGlja2VyX19oZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIHBhZGRpbmc6IDE2cHggY2FsYygxNnB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgMTZweCBjYWxjKDE2cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBwYWRkaW5nOiAxNnB4IGNhbGMoMTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSAxNnB4IGNhbGMoMTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLndldWktcGlja2VyX19oZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1waWNrZXJfX2JkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBoZWlnaHQ6IDI0MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktcGlja2VyX19ncm91cCB7XG4gIGZsZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDE3cHg7XG59XG4ud2V1aS1waWNrZXJfX2dyb3VwOmZpcnN0LWNoaWxkIC53ZXVpLXBpY2tlcl9faW5kaWNhdG9yIHtcbiAgbGVmdDogOHB4O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA4cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDhweDtcbn1cbi53ZXVpLXBpY2tlcl9fZ3JvdXA6bGFzdC1jaGlsZCAud2V1aS1waWNrZXJfX2luZGljYXRvciB7XG4gIHJpZ2h0OiA4cHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA4cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA4cHg7XG59XG4ud2V1aS1waWNrZXJfX21hc2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHotaW5kZXg6IDM7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AsIGJvdHRvbTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDExMnB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAud2V1aS1waWNrZXJfX21hc2ssXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLXBpY2tlcl9fbWFzayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyNSwgMC45NSksIHJnYmEoMjUsIDI1LCAyNSwgMC42KSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1LCAyNSwgMjUsIDAuOTUpLCByZ2JhKDI1LCAyNSwgMjUsIDAuNikpO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgLndldWktcGlja2VyX19tYXNrLFxuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS1waWNrZXJfX21hc2sge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyNSwgMC45NSksIHJnYmEoMjUsIDI1LCAyNSwgMC42KSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1LCAyNSwgMjUsIDAuOTUpLCByZ2JhKDI1LCAyNSwgMjUsIDAuNikpO1xuICB9XG59XG4ud2V1aS1waWNrZXJfX2luZGljYXRvciB7XG4gIGhlaWdodDogNTZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDExMnB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1CRy0zKTtcbn1cbi53ZXVpLXBpY2tlcl9fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMjtcbn1cbi53ZXVpLXBpY2tlcl9faXRlbSB7XG4gIGhlaWdodDogNTZweDtcbiAgbGluZS1oZWlnaHQ6IDU2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktcGlja2VyX19pdGVtX2Rpc2FibGVkIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbkBrZXlmcmFtZXMgd2V1aVNsaWRlVXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG4ud2V1aS1hbmltYXRlX3NsaWRlLXVwLFxuLndldWktYW5pbWF0ZS1zbGlkZS11cCB7XG4gIGFuaW1hdGlvbjogd2V1aVNsaWRlVXAgZWFzZSAwLjNzIGZvcndhcmRzO1xufVxuQGtleWZyYW1lcyB3ZXVpU2xpZGVEb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxufVxuLndldWktYW5pbWF0ZV9zbGlkZS1kb3duLFxuLndldWktYW5pbWF0ZS1zbGlkZS1kb3duIHtcbiAgYW5pbWF0aW9uOiB3ZXVpU2xpZGVEb3duIGVhc2UgMC4zcyBmb3J3YXJkcztcbn1cbkBrZXlmcmFtZXMgd2V1aUZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi53ZXVpLWFuaW1hdGVfZmFkZS1pbixcbi53ZXVpLWFuaW1hdGUtZmFkZS1pbiB7XG4gIGFuaW1hdGlvbjogd2V1aUZhZGVJbiBlYXNlIDAuM3MgZm9yd2FyZHM7XG59XG5Aa2V5ZnJhbWVzIHdldWlGYWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLndldWktYW5pbWF0ZV9mYWRlLW91dCxcbi53ZXVpLWFuaW1hdGUtZmFkZS1vdXQge1xuICBhbmltYXRpb246IHdldWlGYWRlT3V0IGVhc2UgMC4zcyBmb3J3YXJkcztcbn1cbi53ZXVpLXRyYW5zaXRpb24ud2V1aS1tYXNrIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzLCB2aXNpYmlsaXR5IDAuM3M7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi53ZXVpLXRyYW5zaXRpb24ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuLndldWktdHJhbnNpdGlvbl9zaG93LndldWktbWFzayB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ud2V1aS10cmFuc2l0aW9uX3Nob3cud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWFncmVlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LXNpemU6IDE0cHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi53ZXVpLWFncmVlIGEsXG4ud2V1aS1hZ3JlZSBuYXZpZ2F0b3Ige1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbn1cbi53ZXVpLWFncmVlIG5hdmlnYXRvciB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi53ZXVpLWFncmVlX190ZXh0IHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIG1pbi13aWR0aDogMDtcbn1cbi53ZXVpLWFncmVlX19jaGVja2JveCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG1hc2stcG9zaXRpb246IDAgMDtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiAxMDAlO1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTAwMCUyMiUyMGhlaWdodCUzRCUyMjEwMDAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMCUyMDkxNi42NjdDMjY5Ljg4MSUyMDkxNi42NjclMjA4My4zMzMlMjA3MzAuMTE5JTIwODMuMzMzJTIwNTAwJTIwODMuMzMzJTIwMjY5Ljg4MSUyMDI2OS44ODElMjA4My4zMzMlMjA1MDAlMjA4My4zMzNjMjMwLjExOSUyMDAlMjA0MTYuNjY3JTIwMTg2LjU0OCUyMDQxNi42NjclMjA0MTYuNjY3JTIwMCUyMDIzMC4xMTktMTg2LjU0OCUyMDQxNi42NjctNDE2LjY2NyUyMDQxNi42Njd6bTAtNTBjMjAyLjUwNCUyMDAlMjAzNjYuNjY3LTE2NC4xNjMlMjAzNjYuNjY3LTM2Ni42NjclMjAwLTIwMi41MDQtMTY0LjE2My0zNjYuNjY3LTM2Ni42NjctMzY2LjY2Ny0yMDIuNTA0JTIwMC0zNjYuNjY3JTIwMTY0LjE2My0zNjYuNjY3JTIwMzY2LjY2NyUyMDAlMjAyMDIuNTA0JTIwMTY0LjE2MyUyMDM2Ni42NjclMjAzNjYuNjY3JTIwMzY2LjY2N3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbC1vcGFjaXR5JTNEJTIyLjklMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1hZ3JlZV9fY2hlY2tib3gtY2hlY2sge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktYWdyZWVfX2NoZWNrYm94OmNoZWNrZWQsXG4ud2V1aS1hZ3JlZV9fY2hlY2tib3gtY2hlY2tbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLWFncmVlX19jaGVja2JveCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0xLjE3Ny03Ljg2bC0yLjc2NS0yLjc2N0w3JTIwMTIuNDMxbDMuMTE5JTIwMy4xMjFhMSUyMDElMjAwJTIwMDAxLjQxNCUyMDBsNS45NTItNS45NS0xLjA2Mi0xLjA2Mi01LjYlMjA1LjZ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktYWdyZWVfYW5pbWF0ZSB7XG4gIGFuaW1hdGlvbjogd2V1aUFncmVlIDAuM3MgMTtcbn1cbkBrZXlmcmFtZXMgd2V1aUFncmVlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxNiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOHB4KTtcbiAgfVxuICAyOCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTZweCk7XG4gIH1cbiAgNDQlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgNTklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE2cHgpO1xuICB9XG4gIDczJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDgyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE2cHgpO1xuICB9XG4gIDk0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktcHJpbWFyeS1sb2FkaW5nIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29sb3I6ICM2MDYwNjA7XG4gIGFuaW1hdGlvbjogY2lyY2xlTG9hZGluZyAxcyBzdGVwcyg2MCwgZW5kKSBpbmZpbml0ZTtcbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZzo6YmVmb3JlLFxuLndldWktcHJpbWFyeS1sb2FkaW5nOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMC41ZW07XG4gIGhlaWdodDogMWVtO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDAuMDg3NWVtIHNvbGlkO1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZzo6YmVmb3JlIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDFlbTtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMDAwMDAwIDglLCByZ2JhKDAsIDAsIDAsIDAuMykgOTUlKTtcbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZzo6YWZ0ZXIge1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDFlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDFlbTtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDApIDglLCByZ2JhKDAsIDAsIDAsIDAuMykgOTUlKTtcbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZ19fZG90IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjA0Mzc1ZW07XG4gIHdpZHRoOiAwLjA4NzVlbTtcbiAgaGVpZ2h0OiAwLjA4NzVlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEwMCU7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG59XG5Aa2V5ZnJhbWVzIGNpcmNsZUxvYWRpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDM2MGRlZyk7XG4gIH1cbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZ19icmFuZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZ190cmFuc3BhcmVudCB7XG4gIGNvbG9yOiAjZWRlZGVkO1xufVxuLndldWktbG9hZGluZyB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQyUzRnhtbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSdVVEYtOCclM0YlM0UlM0Nzdmcgd2lkdGg9JzgwcHgnIGhlaWdodD0nODBweCcgdmlld0JveD0nMCAwIDgwIDgwJyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnJTNFJTNDdGl0bGUlM0Vsb2FkaW5nJTNDL3RpdGxlJTNFJTNDZGVmcyUzRSUzQ2xpbmVhckdyYWRpZW50IHgxPSc5NC4wODY5MTQxJTI1JyB5MT0nMCUyNScgeDI9Jzk0LjA4NjkxNDElMjUnIHkyPSc5MC41NTkwODIlMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0xJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBzdG9wLW9wYWNpdHk9JzAnIG9mZnNldD0nMCUyNSclM0UlM0Mvc3RvcCUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBzdG9wLW9wYWNpdHk9JzAuMycgb2Zmc2V0PScxMDAlMjUnJTNFJTNDL3N0b3AlM0UlM0MvbGluZWFyR3JhZGllbnQlM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nMTAwJTI1JyB5MT0nOC42NzM3MDYwNSUyNScgeDI9JzEwMCUyNScgeTI9JzkwLjYyODY2MjElMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0yJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBvZmZzZXQ9JzAlMjUnJTNFJTNDL3N0b3AlM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyMzYwNjA2MCcgc3RvcC1vcGFjaXR5PScwLjMnIG9mZnNldD0nMTAwJTI1JyUzRSUzQy9zdG9wJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDL2RlZnMlM0UlM0NnIHN0cm9rZT0nbm9uZScgc3Ryb2tlLXdpZHRoPScxJyBmaWxsPSdub25lJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnIG9wYWNpdHk9JzAuOSclM0UlM0NnJTNFJTNDcGF0aCBkPSdNNDAsMCBDNjIuMDkxMzksMCA4MCwxNy45MDg2MSA4MCw0MCBDODAsNjIuMDkxMzkgNjIuMDkxMzksODAgNDAsODAgTDQwLDczIEM1OC4yMjUzOTY3LDczIDczLDU4LjIyNTM5NjcgNzMsNDAgQzczLDIxLjc3NDYwMzMgNTguMjI1Mzk2Nyw3IDQwLDcgTDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTEpJyUzRSUzQy9wYXRoJTNFJTNDcGF0aCBkPSdNNDAsMCBMNDAsNyBDMjEuNzc0NjAzMyw3IDcsMjEuNzc0NjAzMyA3LDQwIEM3LDU4LjIyNTM5NjcgMjEuNzc0NjAzMyw3MyA0MCw3MyBMNDAsODAgQzE3LjkwODYxLDgwIDAsNjIuMDkxMzkgMCw0MCBDMCwxNy45MDg2MSAxNy45MDg2MSwwIDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTIpJyUzRSUzQy9wYXRoJTNFJTNDY2lyY2xlIGlkPSdPdmFsJyBmaWxsPSclMjM2MDYwNjAnIGN4PSc0MC41JyBjeT0nMy41JyByPSczLjUnJTNFJTNDL2NpcmNsZSUzRSUzQy9nJTNFJTNDYW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSd0cmFuc2Zvcm0nIGJlZ2luPScwcycgZHVyPScxcycgdHlwZT0ncm90YXRlJyB2YWx1ZXM9JzAgNDAgNDA7MzYwIDQwIDQwJyByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJTBBXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuLndldWktbG9hZGluZy53ZXVpLWxvYWRpbmdfdHJhbnNwYXJlbnQsXG4ud2V1aS1sb2FkaW5nLndldWktaWNvbl90b2FzdCxcbi53ZXVpLWJ0bl9sb2FkaW5nLndldWktYnRuX3ByaW1hcnkgLndldWktbG9hZGluZyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0MlM0Z4bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnJTNGJTNFJTNDc3ZnIHdpZHRoPSc4MHB4JyBoZWlnaHQ9JzgwcHgnIHZpZXdCb3g9JzAgMCA4MCA4MCcgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJyUzRSUzQ3RpdGxlJTNFbG9hZGluZyUzQy90aXRsZSUzRSUzQ2RlZnMlM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nOTQuMDg2OTE0MSUyNScgeTE9JzAlMjUnIHgyPSc5NC4wODY5MTQxJTI1JyB5Mj0nOTAuNTU5MDgyJTI1JyBpZD0nbGluZWFyR3JhZGllbnQtMSclM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyM2VkZWRlZCcgc3RvcC1vcGFjaXR5PScwJyBvZmZzZXQ9JzAlMjUnJTNFJTNDL3N0b3AlM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyM2VkZWRlZCcgc3RvcC1vcGFjaXR5PScwLjMnIG9mZnNldD0nMTAwJTI1JyUzRSUzQy9zdG9wJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDbGluZWFyR3JhZGllbnQgeDE9JzEwMCUyNScgeTE9JzguNjczNzA2MDUlMjUnIHgyPScxMDAlMjUnIHkyPSc5MC42Mjg2NjIxJTI1JyBpZD0nbGluZWFyR3JhZGllbnQtMiclM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyM2VkZWRlZCcgb2Zmc2V0PScwJTI1JyUzRSUzQy9zdG9wJTNFJTNDc3RvcCBzdG9wLWNvbG9yPSclMjNlZGVkZWQnIHN0b3Atb3BhY2l0eT0nMC4zJyBvZmZzZXQ9JzEwMCUyNSclM0UlM0Mvc3RvcCUzRSUzQy9saW5lYXJHcmFkaWVudCUzRSUzQy9kZWZzJTNFJTNDZyBzdHJva2U9J25vbmUnIHN0cm9rZS13aWR0aD0nMScgZmlsbD0nbm9uZScgZmlsbC1ydWxlPSdldmVub2RkJyBvcGFjaXR5PScwLjknJTNFJTNDZyUzRSUzQ3BhdGggZD0nTTQwLDAgQzYyLjA5MTM5LDAgODAsMTcuOTA4NjEgODAsNDAgQzgwLDYyLjA5MTM5IDYyLjA5MTM5LDgwIDQwLDgwIEw0MCw3MyBDNTguMjI1Mzk2Nyw3MyA3Myw1OC4yMjUzOTY3IDczLDQwIEM3MywyMS43NzQ2MDMzIDU4LjIyNTM5NjcsNyA0MCw3IEw0MCwwIFonIGZpbGw9J3VybCglMjNsaW5lYXJHcmFkaWVudC0xKSclM0UlM0MvcGF0aCUzRSUzQ3BhdGggZD0nTTQwLDAgTDQwLDcgQzIxLjc3NDYwMzMsNyA3LDIxLjc3NDYwMzMgNyw0MCBDNyw1OC4yMjUzOTY3IDIxLjc3NDYwMzMsNzMgNDAsNzMgTDQwLDgwIEMxNy45MDg2MSw4MCAwLDYyLjA5MTM5IDAsNDAgQzAsMTcuOTA4NjEgMTcuOTA4NjEsMCA0MCwwIFonIGZpbGw9J3VybCglMjNsaW5lYXJHcmFkaWVudC0yKSclM0UlM0MvcGF0aCUzRSUzQ2NpcmNsZSBpZD0nT3ZhbCcgZmlsbD0nJTIzZWRlZGVkJyBjeD0nNDAuNScgY3k9JzMuNScgcj0nMy41JyUzRSUzQy9jaXJjbGUlM0UlM0MvZyUzRSUzQ2FuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0ndHJhbnNmb3JtJyBiZWdpbj0nMHMnIGR1cj0nMXMnIHR5cGU9J3JvdGF0ZScgdmFsdWVzPScwIDQwIDQwOzM2MCA0MCA0MCcgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLyUzRSUzQy9nJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbn1cbi53ZXVpLW1hc2stbG9hZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQyUzRnhtbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSdVVEYtOCclM0YlM0UlM0Nzdmcgd2lkdGg9JzgwcHgnIGhlaWdodD0nODBweCcgdmlld0JveD0nMCAwIDgwIDgwJyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnJTNFJTNDdGl0bGUlM0Vsb2FkaW5nJTNDL3RpdGxlJTNFJTNDZGVmcyUzRSUzQ2xpbmVhckdyYWRpZW50IHgxPSc5NC4wODY5MTQxJTI1JyB5MT0nMCUyNScgeDI9Jzk0LjA4NjkxNDElMjUnIHkyPSc5MC41NTkwODIlMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0xJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBzdG9wLW9wYWNpdHk9JzAnIG9mZnNldD0nMCUyNSclM0UlM0Mvc3RvcCUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBzdG9wLW9wYWNpdHk9JzAuMycgb2Zmc2V0PScxMDAlMjUnJTNFJTNDL3N0b3AlM0UlM0MvbGluZWFyR3JhZGllbnQlM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nMTAwJTI1JyB5MT0nOC42NzM3MDYwNSUyNScgeDI9JzEwMCUyNScgeTI9JzkwLjYyODY2MjElMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0yJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBvZmZzZXQ9JzAlMjUnJTNFJTNDL3N0b3AlM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyMzYwNjA2MCcgc3RvcC1vcGFjaXR5PScwLjMnIG9mZnNldD0nMTAwJTI1JyUzRSUzQy9zdG9wJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDL2RlZnMlM0UlM0NnIHN0cm9rZT0nbm9uZScgc3Ryb2tlLXdpZHRoPScxJyBmaWxsPSdub25lJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnIG9wYWNpdHk9JzAuOSclM0UlM0NnJTNFJTNDcGF0aCBkPSdNNDAsMCBDNjIuMDkxMzksMCA4MCwxNy45MDg2MSA4MCw0MCBDODAsNjIuMDkxMzkgNjIuMDkxMzksODAgNDAsODAgTDQwLDczIEM1OC4yMjUzOTY3LDczIDczLDU4LjIyNTM5NjcgNzMsNDAgQzczLDIxLjc3NDYwMzMgNTguMjI1Mzk2Nyw3IDQwLDcgTDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTEpJyUzRSUzQy9wYXRoJTNFJTNDcGF0aCBkPSdNNDAsMCBMNDAsNyBDMjEuNzc0NjAzMyw3IDcsMjEuNzc0NjAzMyA3LDQwIEM3LDU4LjIyNTM5NjcgMjEuNzc0NjAzMyw3MyA0MCw3MyBMNDAsODAgQzE3LjkwODYxLDgwIDAsNjIuMDkxMzkgMCw0MCBDMCwxNy45MDg2MSAxNy45MDg2MSwwIDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTIpJyUzRSUzQy9wYXRoJTNFJTNDY2lyY2xlIGlkPSdPdmFsJyBmaWxsPSclMjM2MDYwNjAnIGN4PSc0MC41JyBjeT0nMy41JyByPSczLjUnJTNFJTNDL2NpcmNsZSUzRSUzQy9nJTNFJTNDYW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSd0cmFuc2Zvcm0nIGJlZ2luPScwcycgZHVyPScxcycgdHlwZT0ncm90YXRlJyB2YWx1ZXM9JzAgNDAgNDA7MzYwIDQwIDQwJyByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJTBBXCIpIDAgMCBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6ICM2MDYwNjA7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgd2V1aUxvYWRpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgd2V1aUxvYWRpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDM2MGRlZyk7XG4gIH1cbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktc2xpZGVyIHtcbiAgcGFkZGluZzogMTVweCAxOHB4O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi53ZXVpLXNsaWRlcl9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xufVxuLndldWktc2xpZGVyX190cmFjayB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG4gIHdpZHRoOiAwO1xufVxuLndldWktc2xpZGVyX19oYW5kbGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNHB4O1xuICBtYXJnaW4tdG9wOiAtMTRweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDAgNHB4IHZhcigtLXdldWktRkctMyk7XG59XG4ud2V1aS1zbGlkZXItYm94IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi53ZXVpLXNsaWRlci1ib3ggLndldWktc2xpZGVyIHtcbiAgZmxleDogMTtcbn1cbi53ZXVpLXNsaWRlci1ib3hfX3ZhbHVlIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBtaW4td2lkdGg6IDI0cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbiIsIkBpbXBvcnQgJ2xlc3MtdmFycy9saWdodCc7XG5AaW1wb3J0ICdsZXNzLXZhcnMvZGFyayc7XG5AaW1wb3J0ICdsZXNzLXZhcnMvY2FyZS1saWdodCc7XG5AaW1wb3J0ICdsZXNzLXZhcnMvY2FyZS1kYXJrJztcbkBpbXBvcnQgJ3ZhcnMvbGlnaHQnO1xuQGltcG9ydCAndmFycy9kYXJrJztcbkBpbXBvcnQgJ3ZhcnMvY2FyZS1saWdodCc7XG5AaW1wb3J0ICd2YXJzL2NhcmUtZGFyayc7XG5cbi5kYXJrKEBydWxlKSB7XG4gIC53eC1yb290W2RhdGEtd2V1aS10aGVtZT0nZGFyayddICYsXG4gIGJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gJiB7XG4gICAgQHJ1bGUoKTtcbiAgfVxuXG4gIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAud3gtcm9vdDpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgJixcbiAgICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAmIHtcbiAgICAgIEBydWxlKCk7XG4gICAgfVxuICB9XG59XG4uc2V0Q29sb3IoQHZhciwgQGNvbG9yKSB7XG4gIC5zZXRDb2xvcihAdmFyLCBAY29sb3IsIEBjb2xvcik7XG59XG4uc2V0Q29sb3IoQHZhciwgQGxpZ2h0LCBAZGFyaykge1xuICAuX3NldENvbG9yKHtcbiAgICBAe3Zhcn06IEBsaWdodDtcbiAgfSwge1xuICAgIEB7dmFyfTogQGRhcms7XG4gIH0pO1xufVxuLl9zZXRDb2xvcihAbGlnaHRSdWxlLCBAZGFya1J1bGUpIHtcbiAgLnd4LXJvb3QsXG4gIGJvZHkge1xuICAgIEBsaWdodFJ1bGUoKTtcbiAgfVxuICAud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbiAgYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gICAgQGRhcmtSdWxlKCk7XG4gIH1cblxuICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgLnd4LXJvb3Q6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICAgIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAgIEBkYXJrUnVsZSgpO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZShAcnVsZSkge1xuICAud3gtcm9vdFtkYXRhLXdldWktbW9kZT0nY2FyZSddICYsXG4gIGJvZHlbZGF0YS13ZXVpLW1vZGU9J2NhcmUnXSAmIHtcbiAgICBAcnVsZSgpO1xuICB9XG59XG4uc2V0Q2FyZUNvbG9yKEB2YXIsIEBjb2xvcikge1xuICAuc2V0Q2FyZUNvbG9yKEB2YXIsIEBjb2xvciwgQGNvbG9yKTtcbn1cbi5zZXRDYXJlQ29sb3IoQHZhciwgQGxpZ2h0LCBAZGFyaykge1xuICAuX3NldENhcmVDb2xvcih7XG4gICAgQHt2YXJ9OiBAbGlnaHQ7XG4gIH0sIHtcbiAgICBAe3Zhcn06IEBkYXJrO1xuICB9KTtcbn1cbi5fc2V0Q2FyZUNvbG9yKEBsaWdodFJ1bGUsIEBkYXJrUnVsZSkge1xuICAud3gtcm9vdFtkYXRhLXdldWktbW9kZT0nY2FyZSddLFxuICBib2R5W2RhdGEtd2V1aS1tb2RlPSdjYXJlJ10ge1xuICAgIEBsaWdodFJ1bGUoKTtcbiAgfVxuICAud3gtcm9vdFtkYXRhLXdldWktbW9kZT0nY2FyZSddW2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuICBib2R5W2RhdGEtd2V1aS1tb2RlPSdjYXJlJ11bZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAgIEBkYXJrUnVsZSgpO1xuICB9XG5cbiAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC53eC1yb290W2RhdGEtd2V1aS1tb2RlPSdjYXJlJ106bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pLFxuICAgIGJvZHlbZGF0YS13ZXVpLW1vZGU9J2NhcmUnXTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgICAgQGRhcmtSdWxlKCk7XG4gICAgfVxuICB9XG59XG5cblxuLy8g5a6a5LmJ5bGA6YOo5L2c55So5Z+f55qE6aKc6Imy5Y+Y6YePXG4uc2V0VGhpc0NvbG9yKEB2YXIsIEBjb2xvcikge1xuICAuc2V0Q29sb3IoQHZhciwgQGNvbG9yLCBAY29sb3IpO1xufVxuLnNldFRoaXNDb2xvcihAdmFyLCBAbGlnaHQsIEBkYXJrKSB7XG4gIC5fc2V0VGhpc0NvbG9yKHtcbiAgICBAe3Zhcn06IEBsaWdodDtcbiAgfSwge1xuICAgIEB7dmFyfTogQGRhcms7XG4gIH0pO1xufVxuLl9zZXRUaGlzQ29sb3IoQGxpZ2h0UnVsZSwgQGRhcmtSdWxlKSB7XG4gICYge1xuICAgIEBsaWdodFJ1bGUoKTtcbiAgfVxuICAud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAmLFxuICBib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddICYge1xuICAgIEBkYXJrUnVsZSgpO1xuICB9XG5cbiAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAmLFxuICAgIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pICYge1xuICAgICAgQGRhcmtSdWxlKCk7XG4gICAgfVxuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcImZuXCI7XG5cbmh0bWwge1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC1mYW1pbHk6IEB3ZXVpRm9udERlZmF1bHQ7XG59XG5cbioge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG91dGxpbmU6IDA7XG59XG5cbmEgaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAuc2V0VGFwQ29sb3IoKTtcbn1cbmlucHV0LFxudGV4dGFyZWEge1xuICBjYXJldC1jb2xvcjogQHdldWlDb2xvclByaW1hcnk7XG59XG46OnBsYWNlaG9sZGVyLCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbi5zZXRUYXBDb2xvcihAYzpyZ2JhKDAsMCwwLDApKSB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogQGM7XG59XG5cblxuXG5cbiIsIkBpbXBvcnQgJ2ZuJztcblxuYm9keSxcbi53eC1yb290IHtcbiAgLnZhcnNMaWdodCgpO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC53eC1yb290Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC52YXJzRGFyaygpO1xuICB9XG59XG4ud3gtcm9vdFtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSxcbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAudmFyc0RhcmsoKTtcbn1cblxuXG4ud3gtcm9vdFtkYXRhLXdldWktbW9kZT0nY2FyZSddLFxuYm9keVtkYXRhLXdldWktbW9kZT0nY2FyZSddIHtcbiAgLnZhcnNDYXJlTGlnaHQoKTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAud3gtcm9vdFtkYXRhLXdldWktbW9kZT0nY2FyZSddOm5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSxcbiAgYm9keVtkYXRhLXdldWktbW9kZT0nY2FyZSddOm5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSB7XG4gICAgLnZhcnNDYXJlRGFyaygpO1xuICB9XG59XG4ud3gtcm9vdFtkYXRhLXdldWktbW9kZT0nY2FyZSddW2RhdGEtd2V1aS10aGVtZT0nZGFyayddLFxuYm9keVtkYXRhLXdldWktbW9kZT0nY2FyZSddW2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLnZhcnNDYXJlRGFyaygpO1xufVxuIiwiLnZhcnNMaWdodCgpIHtcbiAgLS13ZXVpLUJHLTA6ICNlZGVkZWQ7XG4gIC0td2V1aS1CRy0xOiAjZjdmN2Y3O1xuICAtLXdldWktQkctMjogI2ZmZjtcbiAgLS13ZXVpLUJHLTM6ICNmN2Y3Zjc7XG4gIC0td2V1aS1CRy00OiAjNGM0YzRjO1xuICAtLXdldWktQkctNTogI2ZmZjtcbiAgLS13ZXVpLUZHLTA6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgLS13ZXVpLUZHLUhBTEY6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgLS13ZXVpLUZHLTE6IHJnYmEoMCwgMCwgMCwgMC41NSk7XG4gIC0td2V1aS1GRy0yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIC0td2V1aS1GRy0zOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC0td2V1aS1GRy00OiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAtLXdldWktRkctNTogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLS13ZXVpLVJFRDogI2ZhNTE1MTtcbiAgLS13ZXVpLU9SQU5HRVJFRDogI2ZmNjE0NjtcbiAgLS13ZXVpLU9SQU5HRTogI2ZhOWQzYjtcbiAgLS13ZXVpLVlFTExPVzogI2ZmYzMwMDtcbiAgLS13ZXVpLUdSRUVOOiAjOTFkMzAwO1xuICAtLXdldWktTElHSFRHUkVFTjogIzk1ZWM2OTtcbiAgLS13ZXVpLUJSQU5EOiAjMDdjMTYwO1xuICAtLXdldWktQkxVRTogIzEwYWVmZjtcbiAgLS13ZXVpLUlORElHTzogIzE0ODVlZTtcbiAgLS13ZXVpLVBVUlBMRTogIzY0NjdmMDtcbiAgLS13ZXVpLVdISVRFOiAjZmZmO1xuICAtLXdldWktTElOSzogIzU3NmI5NTtcbiAgLS13ZXVpLVRFWFRHUkVFTjogIzA2YWU1NjtcbiAgLS13ZXVpLUZHOiAjMDAwO1xuICAtLXdldWktQkc6ICNmZmY7XG4gIC0td2V1aS1UQUctVEVYVC1SRUQ6IHJnYmEoMjUwLCA4MSwgODEsIDAuNik7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1SRUQ6IHJnYmEoMjUwLCA4MSwgODEsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1PUkFOR0U6ICNmYTlkM2I7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1PUkFOR0U6IHJnYmEoMjUwLCAxNTcsIDU5LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtR1JFRU46ICMwNmFlNTY7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1HUkVFTjogcmdiYSg2LCAxNzQsIDg2LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtQkxVRTogIzEwYWVmZjtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMQUNLOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAtLXdldWktUkVET1JBTkdFOiAjZmY2MTQ2O1xufVxuIiwiLnZhcnNEYXJrKCkge1xuICAtLXdldWktQkctMDogIzExMTtcbiAgLS13ZXVpLUJHLTE6ICMxZTFlMWU7XG4gIC0td2V1aS1CRy0yOiAjMTkxOTE5O1xuICAtLXdldWktQkctMzogIzIwMjAyMDtcbiAgLS13ZXVpLUJHLTQ6ICM0MDQwNDA7XG4gIC0td2V1aS1CRy01OiAjMmMyYzJjO1xuICAtLXdldWktRkctMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAtLXdldWktRkctSEFMRjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAtLXdldWktRkctMTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtLXdldWktRkctMjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAtLXdldWktRkctMzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtLXdldWktRkctNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgLS13ZXVpLUZHLTU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgLS13ZXVpLVJFRDogI2ZhNTE1MTtcbiAgLS13ZXVpLU9SQU5HRVJFRDogI2ZmNjE0NjtcbiAgLS13ZXVpLU9SQU5HRTogI2M4N2QyZjtcbiAgLS13ZXVpLVlFTExPVzogI2NjOWMwMDtcbiAgLS13ZXVpLUdSRUVOOiAjNzRhODAwO1xuICAtLXdldWktTElHSFRHUkVFTjogIzNlYjU3NTtcbiAgLS13ZXVpLUJSQU5EOiAjMDdjMTYwO1xuICAtLXdldWktQkxVRTogIzEwYWVmZjtcbiAgLS13ZXVpLUlORElHTzogIzExOTZmZjtcbiAgLS13ZXVpLVBVUlBMRTogIzgxODNmZjtcbiAgLS13ZXVpLVdISVRFOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIC0td2V1aS1MSU5LOiAjN2Q5MGE5O1xuICAtLXdldWktVEVYVEdSRUVOOiAjMjU5YzVjO1xuICAtLXdldWktRkc6ICNmZmY7XG4gIC0td2V1aS1CRzogIzAwMDtcbiAgLS13ZXVpLVRBRy1URVhULVJFRDogcmdiYSgyNTAsIDgxLCA4MSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELVJFRDogcmdiYSgyNTAsIDgxLCA4MSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuNik7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1PUkFOR0U6IHJnYmEoMjUwLCAxNTcsIDU5LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMQUNLOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAtLXdldWktUkVET1JBTkdFOiAjZmY2MTQ2O1xufTtcbiIsIi52YXJzQ2FyZUxpZ2h0KCkge1xuICAtLXdldWktQkctMDogI2VkZWRlZDtcbiAgLS13ZXVpLUJHLTE6ICNmN2Y3Zjc7XG4gIC0td2V1aS1CRy0yOiAjZmZmO1xuICAtLXdldWktQkctMzogI2Y3ZjdmNztcbiAgLS13ZXVpLUJHLTQ6ICM0YzRjNGM7XG4gIC0td2V1aS1CRy01OiAjZmZmO1xuICAtLXdldWktRkctMDogcmdiYSgwLCAwLCAwLCAxKTtcbiAgLS13ZXVpLUZHLUhBTEY6IHJnYmEoMCwgMCwgMCwgMSk7XG4gIC0td2V1aS1GRy0xOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIC0td2V1aS1GRy0yOiByZ2JhKDAsIDAsIDAsIDAuNDIpO1xuICAtLXdldWktRkctMzogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtLXdldWktRkctNDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLS13ZXVpLUZHLTU6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIC0td2V1aS1SRUQ6ICNkYzM2MzY7XG4gIC0td2V1aS1PUkFOR0VSRUQ6ICNkMTQ3MzA7XG4gIC0td2V1aS1PUkFOR0U6ICNlMTc3MTk7XG4gIC0td2V1aS1ZRUxMT1c6ICNiYjhlMDA7XG4gIC0td2V1aS1HUkVFTjogIzRmODQwMDtcbiAgLS13ZXVpLUxJR0hUR1JFRU46ICMyZTg4MDA7XG4gIC0td2V1aS1CUkFORDogIzAxODk0MjtcbiAgLS13ZXVpLUJMVUU6ICMwMDdkYmI7XG4gIC0td2V1aS1JTkRJR086ICMwMDc1ZTI7XG4gIC0td2V1aS1QVVJQTEU6ICM2MjY1ZjE7XG4gIC0td2V1aS1XSElURTogI2ZmZjtcbiAgLS13ZXVpLUxJTks6ICM1NzZiOTU7XG4gIC0td2V1aS1URVhUR1JFRU46ICMwNmFlNTY7XG4gIC0td2V1aS1GRzogIzAwMDtcbiAgLS13ZXVpLUJHOiAjZmZmO1xuICAtLXdldWktVEFHLVRFWFQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtT1JBTkdFOiAjZTE3NzE5O1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtT1JBTkdFOiByZ2JhKDIyNSwgMTE5LCAyNSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUdSRUVOOiAjMDZhZTU2O1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMVUU6ICMwMDdkYmI7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1CTFVFOiByZ2JhKDAsIDEyNSwgMTg3LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMQUNLOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAtLXdldWktUkVET1JBTkdFOiAjZDE0NzMwO1xufVxuIiwiLnZhcnNDYXJlRGFyaygpIHtcbiAgLS13ZXVpLUJHLTA6ICMxMTE7XG4gIC0td2V1aS1CRy0xOiAjMWUxZTFlO1xuICAtLXdldWktQkctMjogIzE5MTkxOTtcbiAgLS13ZXVpLUJHLTM6ICMyMDIwMjA7XG4gIC0td2V1aS1CRy00OiAjNDA0MDQwO1xuICAtLXdldWktQkctNTogIzJjMmMyYztcbiAgLS13ZXVpLUZHLTA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG4gIC0td2V1aS1GRy1IQUxGOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpO1xuICAtLXdldWktRkctMTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcbiAgLS13ZXVpLUZHLTI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG4gIC0td2V1aS1GRy0zOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIC0td2V1aS1GRy00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAtLXdldWktRkctNTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtLXdldWktUkVEOiAjZmE1MTUxO1xuICAtLXdldWktT1JBTkdFUkVEOiAjZmY2MTQ2O1xuICAtLXdldWktT1JBTkdFOiAjYzg3ZDJmO1xuICAtLXdldWktWUVMTE9XOiAjY2M5YzAwO1xuICAtLXdldWktR1JFRU46ICM3NGE4MDA7XG4gIC0td2V1aS1MSUdIVEdSRUVOOiAjM2ViNTc1O1xuICAtLXdldWktQlJBTkQ6ICMwN2MxNjA7XG4gIC0td2V1aS1CTFVFOiAjMTBhZWZmO1xuICAtLXdldWktSU5ESUdPOiAjMTE5NmZmO1xuICAtLXdldWktUFVSUExFOiAjODE4M2ZmO1xuICAtLXdldWktV0hJVEU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgLS13ZXVpLUxJTks6ICM3ZDkwYTk7XG4gIC0td2V1aS1URVhUR1JFRU46ICMyNTljNWM7XG4gIC0td2V1aS1GRzogI2ZmZjtcbiAgLS13ZXVpLUJHOiAjMDAwO1xuICAtLXdldWktVEFHLVRFWFQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtUkVEOiByZ2JhKDI1MCwgODEsIDgxLCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtT1JBTkdFOiByZ2JhKDI1MCwgMTU3LCA1OSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1HUkVFTjogcmdiYSg2LCAxNzQsIDg2LCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjYpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxVRTogcmdiYSgxNiwgMTc0LCAyNTUsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1CTEFDSzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIC0td2V1aS1SRURPUkFOR0U6ICNmZjYxNDY7XG59O1xuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnMgKi9cblxuQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGUvY29sb3JcIjtcblxuW2NsYXNzXj1cIndldWktaWNvbi1cIl0sXG5bY2xhc3MqPVwiIHdldWktaWNvbi1cIl0ge1xuICAmJiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIHdpZHRoOiAyLjRlbTtcbiAgICBoZWlnaHQ6IDIuNGVtO1xuICAgIG1hc2stcG9zaXRpb246IDUwJSA1MCU7XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXNpemU6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICB9XG59XG5cblxuLy8gaWNvbiBtYXBcbi53ZXVpLWljb24tY2lyY2xlIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEwMDAlMjIlMjBoZWlnaHQlM0QlMjIxMDAwJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk01MDAlMjA5MTYuNjY3QzI2OS44ODElMjA5MTYuNjY3JTIwODMuMzMzJTIwNzMwLjExOSUyMDgzLjMzMyUyMDUwMCUyMDgzLjMzMyUyMDI2OS44ODElMjAyNjkuODgxJTIwODMuMzMzJTIwNTAwJTIwODMuMzMzYzIzMC4xMTklMjAwJTIwNDE2LjY2NyUyMDE4Ni41NDglMjA0MTYuNjY3JTIwNDE2LjY2NyUyMDAlMjAyMzAuMTE5LTE4Ni41NDglMjA0MTYuNjY3LTQxNi42NjclMjA0MTYuNjY3em0wLTUwYzIwMi41MDQlMjAwJTIwMzY2LjY2Ny0xNjQuMTYzJTIwMzY2LjY2Ny0zNjYuNjY3JTIwMC0yMDIuNTA0LTE2NC4xNjMtMzY2LjY2Ny0zNjYuNjY3LTM2Ni42NjctMjAyLjUwNCUyMDAtMzY2LjY2NyUyMDE2NC4xNjMtMzY2LjY2NyUyMDM2Ni42NjclMjAwJTIwMjAyLjUwNCUyMDE2NC4xNjMlMjAzNjYuNjY3JTIwMzY2LjY2NyUyMDM2Ni42Njd6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGZpbGwtb3BhY2l0eSUzRCUyMi45JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tZG93bmxvYWQge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTEuMjUlMjAxMi4wNGwtMS43Mi0xLjcyLTEuMDYlMjAxLjA2JTIwMi44MjglMjAyLjgzYTElMjAxJTIwMCUyMDAwMS40MTQtLjAwMWwyLjgyOC0yLjgyOC0xLjA2LTEuMDYxLTEuNzMlMjAxLjczVjdoLTEuNXY1LjA0em0wLTUuMDRWMmgxLjV2NWg2LjI1MWMuNTUlMjAwJTIwLjk5OS40NDYuOTk5Ljk5NnYxMy4wMDhhLjk5OC45OTglMjAwJTIwMDEtLjk5Ni45OTZINC45OTZBLjk5OC45OTglMjAwJTIwMDE0JTIwMjEuMDA0VjcuOTk2QTElMjAxJTIwMCUyMDAxNC45OTklMjA3aDYuMjUxeiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWluZm8ge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0tLjc1LTEydjdoMS41di03aC0xLjV6TTEyJTIwOWExJTIwMSUyMDAlMjAxMDAtMiUyMDElMjAxJTIwMCUyMDAwMCUyMDJ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tc2FmZS1zdWNjZXNzIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEwMDAlMjAxMDAwJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNTAwLjklMjA0LjZDMzE1LjUlMjA0Ni43JTIwMTgwLjQlMjA5My4xJTIwNTcuNiUyMDEzMmMwJTIwMTI5LjMuMiUyMDIzMS43LjIlMjAzMzkuNyUyMDAlMjAzMDQuMiUyMDI0OC4zJTIwNDcxLjYlMjA0NDMuMSUyMDUyMy43QzY5NS43JTIwOTQzLjMlMjA5NDQlMjA3NzUuOSUyMDk0NCUyMDQ3MS43YzAtMTA4JTIwLjItMjEwLjQuMi0zMzkuN0M4MjEuNCUyMDkzLjElMjA2ODYuMyUyMDQ2LjclMjA1MDAuOSUyMDQuNnptMjQ4LjMlMjAzNDkuMWwtMjk5LjclMjAyOTVjLTIuMSUyMDItNS4zJTIwMi03LjQtLjFMMzA0LjQlMjA1MDYuMWMtMi0yLjEtMi4zLTUuNy0uNi04bDE4LjMtMjQuOWMxLjctMi4zJTIwNS0yLjglMjA3LjItMWwxMTIuMiUyMDg2YzIuMyUyMDEuOCUyMDYlMjAxLjclMjA4LjEtLjFsMjc0LjctMjI4LjljMi4yLTEuOCUyMDUuNy0xLjclMjA3LjcuM2wxNyUyMDE2LjhjMi4yJTIwMi4xJTIwMi4yJTIwNS4zLjIlMjA3LjR6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGNsaXAtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBmaWxsJTNEJTIyJTIzMDcwMjAyJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tc2FmZS13YXJuIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDEwMDAlMjAxMDAwJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNTAwLjklMjA0LjVjLTE4NS40JTIwNDItMzIwLjQlMjA4OC40LTQ0My4yJTIwMTI3LjMlMjAwJTIwMTI5LjMuMiUyMDIzMS43LjIlMjAzMzkuNiUyMDAlMjAzMDQuMSUyMDI0OC4yJTIwNDcxLjQlMjA0NDMlMjA1MjMuNiUyMDE5NC43LTUyLjIlMjA0NDMtMjE5LjUlMjA0NDMtNTIzLjYlMjAwLTEwNy45LjItMjEwLjMuMi0zMzkuNkM4MjEuMyUyMDkyLjklMjA2ODYuMiUyMDQ2LjUlMjA1MDAuOSUyMDQuNXptLTI2LjElMjAyNzEuMWg1Mi4xYzUuOCUyMDAlMjAxMC4zJTIwNC43JTIwMTAuMSUyMDEwLjRsLTExLjYlMjAzMTMuOGMtLjElMjAyLjgtMi41JTIwNS4yLTUuNCUyMDUuMmgtMzguMmMtMi45JTIwMC01LjMtMi4zLTUuNC01LjJMNDY0LjglMjAyODZjLS4yLTUuOCUyMDQuMy0xMC40JTIwMTAtMTAuNHptMjYuMSUyMDQ0OC4zYy0yMC4yJTIwMC0zNi41LTE2LjMtMzYuNS0zNi41czE2LjMtMzYuNSUyMDM2LjUtMzYuNSUyMDM2LjUlMjAxNi4zJTIwMzYuNSUyMDM2LjUtMTYuNCUyMDM2LjUtMzYuNSUyMDM2LjV6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGNsaXAtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBmaWxsJTNEJTIyJTIzMDIwMjAyJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tc3VjY2VzcyB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0xLjE3Ny03Ljg2bC0yLjc2NS0yLjc2N0w3JTIwMTIuNDMxbDMuMTE5JTIwMy4xMjFhMSUyMDElMjAwJTIwMDAxLjQxNCUyMDBsNS45NTItNS45NS0xLjA2Mi0xLjA2Mi01LjYlMjA1LjZ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tc3VjY2Vzcy1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnptLTEuMTcyLTYuMjQybDUuODA5LTUuODA4Ljg0OC44NDktNS45NSUyMDUuOTVhMSUyMDElMjAwJTIwMDEtMS40MTQlMjAwTDclMjAxMi40MjZsLjg0OS0uODQ5JTIwMi45OCUyMDIuOTh6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNOC42NTclMjAxOC40MzVMMyUyMDEyLjc3OGwxLjQxNC0xLjQxNCUyMDQuOTUlMjA0Ljk1TDIwLjY3OCUyMDVsMS40MTQlMjAxLjQxNC0xMi4wMiUyMDEyLjAyMWExJTIwMSUyMDAlMjAwMS0xLjQxNSUyMDB6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLXdhaXRpbmcge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuNzUlMjAxMS4zOFY2aC0xLjV2Nmw0LjI0MyUyMDQuMjQzJTIwMS4wNi0xLjA2LTMuODAzLTMuODA0ek0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLXdhaXRpbmctY2lyY2xlIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyLjYlMjAxMS41MDNsMy44OTElMjAzLjg5MS0uODQ4Ljg0OUwxMS40JTIwMTJWNmgxLjJ2NS41MDN6TTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMC0xLjJhOC44JTIwOC44JTIwMCUyMDEwMC0xNy42JTIwOC44JTIwOC44JTIwMCUyMDAwMCUyMDE3LjZ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24td2FybiB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0uNzYzLTE1Ljg2NGwuMTElMjA3LjU5NmgxLjMwNWwuMTEtNy41OTZoLTEuNTI1em0uNzU5JTIwMTAuOTY3Yy41MTIlMjAwJTIwLjkwMi0uMzgzLjkwMi0uODgyJTIwMC0uNS0uMzktLjg4Mi0uOTAyLS44ODJhLjg3OC44NzglMjAwJTIwMDAtLjg5Ni44ODJjMCUyMC40OTkuMzk2Ljg4Mi44OTYuODgyeiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLW91dGxpbmVkLXdhcm4ge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGNsaXAtcnVsZT0nZXZlbm9kZCcgZD0nTTIgMTJDMiAxNy41MjI4IDYuNDc3MTUgMjIgMTIgMjJDMTcuNTIyOCAyMiAyMiAxNy41MjI4IDIyIDEyQzIyIDYuNDc3MTUgMTcuNTIyOCAyIDEyIDJDNi40NzcxNSAyIDIgNi40NzcxNSAyIDEyWk0yMC44IDEyQzIwLjggMTYuODYwMSAxNi44NjAxIDIwLjggMTIgMjAuOEM3LjEzOTg5IDIwLjggMy4yIDE2Ljg2MDEgMy4yIDEyQzMuMiA3LjEzOTg5IDcuMTM5ODkgMy4yIDEyIDMuMkMxNi44NjAxIDMuMiAyMC44IDcuMTM5ODkgMjAuOCAxMlpNMTIuNjU5MiA2LjQzMTE1TDEyLjU3MTMgMTMuNDkxN0gxMS40Mjg3TDExLjM0MDggNi40MzExNUgxMi42NTkyWk0xMS4xNjUgMTYuMjM4M0MxMS4xNjUgMTYuNzA3IDExLjUzMTIgMTcuMDczMiAxMiAxNy4wNzMyQzEyLjQ3NjEgMTcuMDczMiAxMi44MzUgMTYuNzA3IDEyLjgzNSAxNi4yMzgzQzEyLjgzNSAxNS43NjIyIDEyLjQ3NjEgMTUuNDAzMyAxMiAxNS40MDMzQzExLjUzMTIgMTUuNDAzMyAxMS4xNjUgMTUuNzYyMiAxMS4xNjUgMTYuMjM4M1onIGZpbGw9J2JsYWNrJyAvJTNFJTNDL3N2ZyUzRSUwQVwiKTtcbn1cbi53ZXVpLWljb24taW5mby1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnpNMTEuNCUyMDEwaDEuMnY3aC0xLjJ2LTd6bS42LTFhMSUyMDElMjAwJTIwMTEwLTIlMjAxJTIwMSUyMDAlMjAwMTAlMjAyeiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWNhbmNlbCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NnJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMC0xLjJhOC44JTIwOC44JTIwMCUyMDEwMC0xNy42JTIwOC44JTIwOC44JTIwMCUyMDAwMCUyMDE3LjZ6JTIyJTIwZmlsbC1ydWxlJTNEJTIybm9uemVybyUyMiUyRiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyLjg0OSUyMDEybDMuMTElMjAzLjExMS0uODQ4Ljg0OUwxMiUyMDEyLjg0OWwtMy4xMTElMjAzLjExLS44NDktLjg0OEwxMS4xNTElMjAxMmwtMy4xMS0zLjExMS44NDgtLjg0OUwxMiUyMDExLjE1MWwzLjExMS0zLjExLjg0OS44NDhMMTIuODQ5JTIwMTJ6JTIyJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLXNlYXJjaCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xNi4zMSUyMDE1LjU2MWw0LjExNCUyMDQuMTE1LS44NDguODQ4LTQuMTIzLTQuMTIzYTclMjA3JTIwMCUyMDExLjg1Ny0uODR6TTE2LjglMjAxMWE1LjglMjA1LjglMjAwJTIwMTAtMTEuNiUyMDAlMjA1LjglMjA1LjglMjAwJTIwMDAxMS42JTIwMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tY2xlYXIge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTMuMDYlMjAxMmwzLjAwNi0zLjAwNS0xLjA2LTEuMDZMMTIlMjAxMC45MzglMjA4Ljk5NSUyMDcuOTM0bC0xLjA2JTIwMS4wNkwxMC45MzglMjAxMmwtMy4wMDUlMjAzLjAwNSUyMDEuMDYlMjAxLjA2TDEyJTIwMTMuMDYybDMuMDA1JTIwMy4wMDUlMjAxLjA2LTEuMDZMMTMuMDYyJTIwMTJ6TTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1iYWNrIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMS45OTktNi41NjNMMTAuNjglMjAxMiUyMDE0JTIwOC41NjIlMjAxMi45NTMlMjA3LjUlMjA5LjI5JTIwMTEuMjc3YTEuMDQ1JTIwMS4wNDUlMjAwJTIwMDAwJTIwMS40NDZsMy42NjMlMjAzLjc3N0wxNCUyMDE1LjQzN3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tZGVsZXRlIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTYuNzc0JTIwNi40bC44MTIlMjAxMy42NDhhLjguOCUyMDAlMjAwMC43OTguNzUyaDcuMjMyYS44LjglMjAwJTIwMDAuNzk4LS43NTJMMTcuMjI2JTIwNi40SDYuNzc0em0xMS42NTUlMjAwbC0uODE3JTIwMTMuNzE5QTIlMjAyJTIwMCUyMDAxMTUuNjE2JTIwMjJIOC4zODRhMiUyMDIlMjAwJTIwMDEtMS45OTYtMS44ODFMNS41NzElMjA2LjRIMy41di0uN2EuNS41JTIwMCUyMDAxLjUtLjVoMTZhLjUuNSUyMDAlMjAwMS41LjV2LjdoLTIuMDcxek0xNCUyMDNhLjUuNSUyMDAlMjAwMS41LjV2LjdoLTV2LS43QS41LjUlMjAwJTIwMDExMCUyMDNoNHpNOS41JTIwOWgxLjJsLjUlMjA5SDEwbC0uNS05em0zLjglMjAwaDEuMmwtLjUlMjA5aC0xLjJsLjUtOXolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLW5vLWNpcmNsZS10aGluIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTguODY0JTIwMTYuNjE3bC01LjMwMy01LjMwMy0xLjA2MSUyMDEuMDYlMjA1LjY1NyUyMDUuNjU3YTElMjAxJTIwMCUyMDAwMS40MTQlMjAwTDIxLjIzOCUyMDYuMzY0bC0xLjA2LTEuMDZMOC44NjQlMjAxNi42MTZ6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWFycm93IHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTIuNDU0JTIwNi41OGwxLjA2LTEuMDYlMjA1Ljc4JTIwNS43NzlhLjk5Ni45OTYlMjAwJTIwMDEwJTIwMS40MTNsLTUuNzglMjA1Ljc3OS0xLjA2LTEuMDYxJTIwNS40MjUtNS40MjUtNS40MjUtNS40MjR6JTIyJTIwZmlsbCUzRCUyMiUyM0IyQjJCMiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1hcnJvdy1ib2xkIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHdpZHRoJTNEJTIyMTIlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEwLjE1NyUyMDEyLjcxMUw0LjUlMjAxOC4zNjhsLTEuNDE0LTEuNDE0JTIwNC45NS00Ljk1LTQuOTUtNC45NUw0LjUlMjA1LjY0bDUuNjU3JTIwNS42NTdhMSUyMDElMjAwJTIwMDEwJTIwMS40MTR6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWJhY2stYXJyb3cge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMy4zNDMlMjAxMmw3LjA3MSUyMDcuMDcxTDklMjAyMC40ODVsLTcuNzc4LTcuNzc4YTElMjAxJTIwMCUyMDAxMC0xLjQxNEw5JTIwMy41MTVsMS40MTQlMjAxLjQxNEwzLjM0NCUyMDEyeiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1iYWNrLWFycm93LXRoaW4ge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTAlMjAxOS40MzhMOC45NTUlMjAyMC41bC03LjY2Ni03Ljc5YTEuMDIlMjAxLjAyJTIwMCUyMDAxMC0xLjQyTDguOTU1JTIwMy41JTIwMTAlMjA0LjU2MyUyMDIuNjgyJTIwMTIlMjAxMCUyMDE5LjQzOHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tY2xvc2Uge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGNsaXAtcnVsZT0nZXZlbm9kZCcgZD0nTTEyLjI1IDEwLjY5MzJMNi4wNTY4MiA0LjVMNSA1LjU1NjgyTDExLjE5MzIgMTEuNzVMNSAxNy45NDMyTDYuMDU2ODIgMTlMMTIuMjUgMTIuODA2OEwxOC40NDMyIDE5TDE5LjUgMTcuOTQzMkwxMy4zMDY4IDExLjc1TDE5LjUgNS41NTY4MkwxOC40NDMyIDQuNUwxMi4yNSAxMC42OTMyWicgZmlsbD0nYmxhY2snIC8lM0UlM0Mvc3ZnJTNFJTBBXCIpO1xufVxuLndldWktaWNvbi1jbG9zZS10aGluIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyLjI1JTIwMTAuNjkzTDYuMDU3JTIwNC41JTIwNSUyMDUuNTU3bDYuMTkzJTIwNi4xOTNMNSUyMDE3Ljk0MyUyMDYuMDU3JTIwMTlsNi4xOTMtNi4xOTNMMTguNDQzJTIwMTlsMS4wNTctMS4wNTctNi4xOTMtNi4xOTNMMTkuNSUyMDUuNTU3JTIwMTguNDQzJTIwNC41eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1iYWNrLWNpcmNsZSB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bTAtMS4yYTguOCUyMDguOCUyMDAlMjAxMDAtMTcuNiUyMDguOCUyMDguOCUyMDAlMjAwMDAlMjAxNy42em0xLjk5OS01LjM2M0wxMi45NTMlMjAxNi41JTIwOS4yOSUyMDEyLjcyM2ExLjA0NSUyMDEuMDQ1JTIwMCUyMDAxMC0xLjQ0NkwxMi45NTMlMjA3LjUlMjAxNCUyMDguNTYzJTIwMTAuNjglMjAxMiUyMDE0JTIwMTUuNDM4eiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG5cbi8vIGljb24gc2V0dGluZ1xuLndldWktaWNvbi1zdWNjZXNzIHtcbiAgY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xufVxuLndldWktaWNvbi13YWl0aW5nIHtcbiAgY29sb3I6IHZhcigtLXdldWktQkxVRSk7XG59XG4ud2V1aS1pY29uLXdhcm4ge1xuICBjb2xvcjogQHdldWlDb2xvcldhcm47XG59XG4ud2V1aS1pY29uLWluZm8ge1xuICBjb2xvcjogdmFyKC0td2V1aS1CTFVFKTtcbn1cblxuLndldWktaWNvbi1zdWNjZXNzLWNpcmNsZSB7XG4gIGNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcbn1cbi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUsXG4ud2V1aS1pY29uLXN1Y2Nlc3Mtbm8tY2lyY2xlLXRoaW4ge1xuICBjb2xvcjogQHdldWlDb2xvclByaW1hcnk7XG59XG4ud2V1aS1pY29uLXdhaXRpbmctY2lyY2xlIHtcbiAgY29sb3I6IHZhcigtLXdldWktQkxVRSk7XG59XG4ud2V1aS1pY29uLWNpcmNsZSB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XG59XG4ud2V1aS1pY29uLWRvd25sb2FkIHtcbiAgY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xufVxuXG4ud2V1aS1pY29uLWluZm8tY2lyY2xlIHtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGlwcztcbn1cblxuLndldWktaWNvbi1zYWZlLXN1Y2Nlc3Mge1xuICBjb2xvcjogQHdldWlDb2xvclByaW1hcnk7XG59XG4ud2V1aS1pY29uLXNhZmUtd2FybiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVlFTExPVyk7XG59XG5cbi53ZXVpLWljb24tY2FuY2VsIHtcbiAgY29sb3I6IEB3ZXVpQ29sb3JXYXJuO1xufVxuXG4ud2V1aS1pY29uLXNlYXJjaCB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG59XG5cbi53ZXVpLWljb24tY2xlYXIge1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcbiAgfVxufVxuXG4ud2V1aS1pY29uLWRlbGV0ZSB7XG4gICYud2V1aS1pY29uX2dhbGxlcnktZGVsZXRlIHtcbiAgICBjb2xvcjogdmFyKC0td2V1aS1XSElURSk7XG4gIH1cbn1cbi53ZXVpLWljb24tYXJyb3csXG4ud2V1aS1pY29uLWFycm93LWJvbGQsXG4ud2V1aS1pY29uLWJhY2stYXJyb3csXG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbiB7XG4gICYmIHtcbiAgICB3aWR0aDogMS4yZW07XG4gIH1cbn1cbi53ZXVpLWljb24tYXJyb3csXG4ud2V1aS1pY29uLWFycm93LWJvbGQge1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xufVxuLndldWktaWNvbi1iYWNrLWFycm93LFxuLndldWktaWNvbi1iYWNrLWFycm93LXRoaW4ge1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbn1cbi53ZXVpLWljb24tYmFjayxcbi53ZXVpLWljb24tYmFjay1jaXJjbGUge1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbn1cblxuLndldWktaWNvbl9tc2cge1xuICAmJiB7XG4gICAgd2lkdGg6IDYuNGVtO1xuICAgIGhlaWdodDogNi40ZW07XG4gICAgJi53ZXVpLWljb24td2FybiB7XG4gICAgICBjb2xvcjogQHdldWlDb2xvcldhcm47XG4gICAgfVxuICAgICYud2V1aS1pY29uLWluZm8tY2lyY2xlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS13ZXVpLUJMVUUpO1xuICAgIH1cbiAgfVxufVxuLndldWktaWNvbl9tc2ctcHJpbWFyeSB7XG4gICYmIHtcbiAgICB3aWR0aDogNi40ZW07XG4gICAgaGVpZ2h0OiA2LjRlbTtcbiAgICAmLndldWktaWNvbi13YXJuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS13ZXVpLVlFTExPVyk7XG4gICAgfVxuICB9XG59XG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiZm5cIjtcblxuLndldWktaGlkZGVuX2FicyB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDsvLzFweOaYr+S4uuS6huWFvOWuuWlvczE1XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktYTExeV9yZWYge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktaGlkZGVuLXNwYWNlOmVtcHR5IHtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMDBBMFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbi53ZXVpLWExMXktY29tYm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1hMTF5LWNvbWJvX19oZWxwZXIge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS1hMTF5LWNvbWJvX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4ud2V1aS13YS1ob3RhcmVhLWVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgbWluLXdpZHRoOiA0NHB4O1xuICBtaW4taGVpZ2h0OiA0NHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLndldWktd2EtaG90YXJlYS1lbF9fd3JwLFxuLndldWktd2EtaG90YXJlYSxcbi53ZXVpLXdhLWhvdGFyZWFfYmVmb3JlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8vIOWmguaenOaYr+WQiOazleeahOeCueWHu+W1jOWll++8jOS+i+WmgmxhYmVsW2Zvcl3ph4znmoTlh7rnjrDpk77mjqXvvIzpnIDopoHmiorlsYLnuqfmj5Dpq5hcbiAgYSxcbiAgYnV0dG9uLFxuICBuYXZpZ2F0b3Ige1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG4ud2V1aS13YS1ob3RhcmVhX2JlZm9yZTo6YmVmb3JlLFxuLndldWktd2EtaG90YXJlYTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgLndldWktd2EtaG90YXJlYS1lbDtcbn1cblxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWxpbmsge1xuICBjb2xvcjogQHdldWlMaW5rQ29sb3JEZWZhdWx0O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcbiAgfVxuICAmOmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IEB3ZXVpQnRuV2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiBAd2V1aUJ0bkZvbnRTaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IEB3ZXVpQnRuRm9udENvbG9yO1xuICBsaW5lLWhlaWdodDogdW5pdCgoKEB3ZXVpQnRuSGVpZ2h0IC0gMjQpIC8gQHdldWlCdG5Gb250U2l6ZSkpO1xuICBib3JkZXItcmFkaXVzOiBAd2V1aUJ0bkJvcmRlclJhZGl1cztcbiAgLnNldFRhcENvbG9yKCk7XG5cbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgJjphY3RpdmUge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CVE4tQUNUSVZFLU1BU0spO1xuICAgICAgYm9yZGVyLXJhZGl1czogQHdldWlCdG5Cb3JkZXJSYWRpdXM7XG4gICAgfVxuXG4gICAgJi53ZXVpLWJ0bl9sb2FkaW5nLFxuICAgICYud2V1aS1idG5fZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53ZXVpLWJ0bl9ibG9jayB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLndldWktYnRuX2lubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1idG5fZGVmYXVsdCB7XG4gIGNvbG9yOiBAd2V1aUJ0bkRlZmF1bHRGb250Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQnRuRGVmYXVsdEJnO1xuICAmOm5vdCgud2V1aS1idG5fZGlzYWJsZWQpOnZpc2l0ZWQge1xuICAgIGNvbG9yOiBAd2V1aUJ0bkRlZmF1bHRGb250Q29sb3I7XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1idG5fcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQnRuUHJpbWFyeUJnO1xuICAmOm5vdCgud2V1aS1idG5fZGlzYWJsZWQpOnZpc2l0ZWQge1xuICAgIGNvbG9yOiBAd2V1aUJ0blByaW1hcnlGb250Q29sb3I7XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1idG5fd2FybiB7XG4gIGNvbG9yOiBAd2V1aUJ0bldhcm5Gb250Q29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQnRuV2FybkJnO1xuICAmOm5vdCgud2V1aS1idG5fZGlzYWJsZWQpOnZpc2l0ZWQge1xuICAgIGNvbG9yOiBAd2V1aUJ0bldhcm5Gb250Q29sb3I7XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1idG5fb3ZlcmxheSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQExJR0hUX0JHXzU7XG4gICY6bm90KC53ZXVpLWJ0bl9kaXNhYmxlZCk6dmlzaXRlZCB7XG4gICAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktYnRuX2Rpc2FibGVkLFxuLndldWktYnRuW2Rpc2FibGVkXSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTEpO1xufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWJ0bl9sb2FkaW5nIHtcbiAgLndldWktbG9hZGluZyB7XG4gICAgbWFyZ2luOiAtMC4yZW0gOHB4IDAgMDtcbiAgfVxuICAud2V1aS1tYXNrLWxvYWRpbmcge1xuICAgIG1hcmdpbjogLTAuMmVtIDhweCAwIDA7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgfVxuICAud2V1aS1wcmltYXJ5LWxvYWRpbmcge1xuICAgIG1hcmdpbjogLTAuMmVtIDhweCAwIDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbiAgfVxuICAmLndldWktYnRuX3ByaW1hcnkge1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcbiAgfVxufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWJ0bl9jZWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiBAd2V1aUJ0bkZvbnRTaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IEB3ZXVpQnRuRm9udENvbG9yO1xuICBsaW5lLWhlaWdodDogQHdldWlCdG5DZWxsTGluZUhlaWdodDtcbiAgcGFkZGluZzogQHdldWlCdG5DZWxsR2FwO1xuICAuc2V0VGFwQ29sb3IoKTtcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTUpO1xuICAmICsgJiB7XG4gICAgbWFyZ2luLXRvcDogQHdldWlCdG5EZWZhdWx0R2FwO1xuICB9XG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XG4gIH1cbn1cbi53ZXVpLWJ0bl9jZWxsX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW46IC0wLjJlbSAwLjM0ZW0gMCAwO1xufVxuLndldWktYnRuX2NlbGwtZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktYnRuX2NlbGwtcHJpbWFyeSB7XG4gIGNvbG9yOiBAd2V1aUxpbmtDb2xvckRlZmF1bHQ7XG59XG4ud2V1aS1idG5fY2VsbC13YXJuIHtcbiAgY29sb3I6IEB3ZXVpQ29sb3JXYXJuO1xufVxuXG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG5Ad2V1aUJvdHRvbUZpeGVkT3ByTWFza0hlaWdodDo4MHB4O1xuXG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX2NvbnRlbnQge1xuICBtaW4taGVpZ2h0OiAwO1xuICBmbGV4OiAxO1xuICBwYWRkaW5nLWJvdHRvbTogQHdldWlCb3R0b21GaXhlZE9wck1hc2tIZWlnaHQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9fdG9vbCB7XG4gIHBhZGRpbmc6IDE2cHggMzJweCAyNHB4O1xuICBwYWRkaW5nOiAxNnB4IGNhbGMoMzJweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIikgY2FsYygzMnB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xuICBwYWRkaW5nOiAxNnB4IGNhbGMoMzJweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKSBjYWxjKDMycHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwO1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiBAd2V1aUJvdHRvbUZpeGVkT3ByTWFza0hlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiB+XCJjYWxjKDEwMCUgLSAxcHgpXCI7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZV9fdG9vbCB7XG4gIC5kYXJrKHtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMjUsMjUsMjUsMSk7XG4gIH0pO1xuICAmOjpiZWZvcmUge1xuICAgIC5kYXJrKHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMjUsMjUsMjUsMSksIHJnYmEoMjUsMjUsMjUsMCkpO1xuICAgIH0pO1xuICB9XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX3RpcHMge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBwYWRkaW5nOiAwIDMycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4vLyDmjInpkq7nu4TmsLTlubPluIPlsYDkuI7lnoLnm7TluIPlsYDliIfmjaJcbi53ZXVpLWJvdHRvbS1maXhlZC1vcHItcGFnZSB7XG4gIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIge1xuICAgIC53ZXVpQnRuV3JhcExheW91dERlZmF1bHQoKTtcbiAgfVxufVxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX2J0bi13cmFwIHtcbiAgLndldWktYm90dG9tLWZpeGVkLW9wciB7XG4gICAgLndldWlCdG5XcmFwTGF5b3V0V3JhcCgpO1xuICB9XG59XG5cblxuLy8g5paw54mI5bqV6YOo5oKs5rWu77yM5pSv5oyB6KGo5Y2V5ZKM5Y2K5bGPXG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uge1xuICAmLndldWktZm9ybSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAud2V1aS1mb3JtX19iZCB7XG4gICAgICBwYWRkaW5nLXRvcDogNTZweDtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDU2cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtdG9wKVwiKTtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDU2cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcClcIik7XG4gICAgfVxuICAgIC53ZXVpLWZvcm1fX2Z0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICAud2V1aS1mb3JtX19jb250cm9sLWFyZWEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCxcbiAgICAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2JkLFxuICAgIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpO1xuICAgIH1cbiAgICAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2JkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICAgIH1cbiAgICAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2NHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IH5cImNhbGMoNjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKVwiO1xuICAgICAgcGFkZGluZy1ib3R0b206IH5cImNhbGMoNjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSlcIjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyDml6fniYjljYrlsY/lupXpg6jmgqzmta5cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQge1xuICAmLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGQge1xuICAgICAgcGFkZGluZzogMCAyNHB4O1xuICAgICAgcGFkZGluZzogMCBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIDAgY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xuICAgICAgcGFkZGluZzogMCBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKSAwIGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gICAgfVxuICAgIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYmQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19mdCB7XG4gICAgICBwYWRkaW5nOiAwOyAvLyDlupXpg6jmgqzmta7mjInpkq7nmoTljYrlsY/kuI3pnIDopoFmdO+8jOS9humYsuatouW8gOWPkeiAheWwgeijhee7hOS7tuaXtuW8uuWItuWMheWQq2Z06KaB5oqKcGFkZGluZ+iuvuS4ujBcbiAgICB9XG4gICAgLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgIH1cbiAgICAud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogMCAyNHB4O1xuICAgICAgcGFkZGluZzogMCBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIDAgY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xuICAgICAgcGFkZGluZzogMCBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKSAwIGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gICAgfVxuICAgIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIge1xuICAgICAgcGFkZGluZzogMTZweCAwIDY0cHg7XG4gICAgICBwYWRkaW5nOiAxNnB4IDAgflwiY2FsYyg2NHB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpXCI7XG4gICAgICBwYWRkaW5nOiAxNnB4IDAgflwiY2FsYyg2NHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKVwiO1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbi53ZXVpQnRuV3JhcExheW91dERlZmF1bHQoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIC53ZXVpLWJ0biB7XG4gICAgd2lkdGg6IEB3ZXVpQnRuV2lkdGg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIH1cbiAgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMiksXG4gIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuIHtcbiAgICBtYXJnaW46IDAgOHB4O1xuICAgIHdpZHRoOiAxMzZweDtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuLndldWlCdG5XcmFwTGF5b3V0V3JhcCgpIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMiksXG4gIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuIHtcbiAgICB3aWR0aDogMTg0cHg7XG4gICAgbWFyZ2luOiAxNnB4IDAgMDtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuQGltcG9ydCBcIndldWktYnRuX2dsb2JhbFwiO1xuQGltcG9ydCBcIndldWktYnRuX2RlZmF1bHRcIjtcbkBpbXBvcnQgXCJ3ZXVpLWJ0bl9wcmltYXJ5XCI7XG5AaW1wb3J0IFwid2V1aS1idG5fd2FyblwiO1xuQGltcG9ydCBcIndldWktYnRuX292ZXJsYXlcIjtcbkBpbXBvcnQgXCJ3ZXVpLWJ0bl9kaXNhYmxlZFwiO1xuQGltcG9ydCBcIndldWktYnRuX2xvYWRpbmdcIjtcbkBpbXBvcnQgXCJ3ZXVpLWJ0bl9jZWxsXCI7XG5AaW1wb3J0IFwid2V1aS1idG5fYm90dG9tLWZpeGVkXCI7XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgJi53ZXVpLWJ0biB7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG4gIH1cbiAgJi53ZXVpLWJ0bl9pbmxpbmUsXG4gICYud2V1aS1idG5fbWluaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLndldWktYnRuX21lZGl1bSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMTBweCAyNHB4O1xuICBsaW5lLWhlaWdodDogflwiY2FsYygodmFyKC0td2V1aS1CVE4tSEVJR0hULU1FRElVTSkgLSAyMCkgLyAxNClcIjtcbn1cblxuLndldWktYnRuX21pbmkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBsaW5lLWhlaWdodDogflwiY2FsYygoMzIgLSAxMikgLyAxNClcIjtcbiAgcGFkZGluZzogNnB4IDEycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuXG4ud2V1aS1idG5feG1pbmkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiA0cHggMTJweDtcbiAgbGluZS1oZWlnaHQ6IH5cImNhbGMoKDI4IC0gOCkgLyAxNClcIjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cblxuXG4vKiBnYXAgYmV0d2VlbiBidG4gKi9cbi53ZXVpLWJ0biB7XG4gICYgKyAud2V1aS1idG4ge1xuICAgIG1hcmdpbi10b3A6IEB3ZXVpQnRuRGVmYXVsdEdhcDtcbiAgfVxuICAmLndldWktYnRuX21pbmkgKyAud2V1aS1idG4ud2V1aS1idG5fbWluaSB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgfVxuICAmLndldWktYnRuX3htaW5pICsgLndldWktYnRuLndldWktYnRuX3htaW5pIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICB9XG59XG5cbi53ZXVpLWJ0bi53ZXVpLWJ0bl9pbmxpbmUgKyAud2V1aS1idG4ud2V1aS1idG5faW5saW5lIHtcbiAgbWFyZ2luLWxlZnQ6IEB3ZXVpQnRuRGVmYXVsdEdhcDtcbn1cblxuLndldWktYnRuLWFyZWEge1xuICBtYXJnaW46IDQ4cHggQHdldWlCdG5EZWZhdWx0R2FwIDhweDtcbn1cbi53ZXVpLWJ0bi1hcmVhX2lubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC53ZXVpLWJ0biB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IEB3ZXVpQnRuRGVmYXVsdEdhcDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4OiAxO1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi53ZXVpLWJ0bl9yZXNldCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbi53ZXVpLWJ0bl9pY29uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwO1xuICAmOmFjdGl2ZSB7XG4gICAgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xuICAgICAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gICAgfVxuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLypcbnotaW5kZXg6XG4wOiAud2V1aS1zd2lwZWQtYnRuXG4xOiAud2V1aS1jZWxsX3N3aXBlZCAud2V1aS1jZWxsX19iZFxuMjogLndldWktY2VsbHPlkowud2V1aS1jZWxs55qEMXB457q/XG4qL1xuXG4ud2V1aS1jZWxscyB7XG4gIG1hcmdpbi10b3A6IEB3ZXVpQ2VsbHNNYXJnaW5Ub3A7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ2VsbEJnO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvL+WboOS4uuavj+S4qmNlbGznmoRib3JkZXLkvb/nlKhiZWZvcmXlhYPntKBsZWZ05pCe55qE77yMaWXkuIvkvKrlhYPntKDnmoRjb250YWluaW5nIGJsb2Nr5Lyw6K6h6Lef5qCH5YeG5LiN5ZCM77yM5ZyoY2VsbOS4iueUqG9o5LiN55Sf5pWIXG5cbiAgLy8gb25lcHhcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjpiZWZvcmUge1xuICAgIC5zZXRUb3BMaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcblxuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIC5zZXRCb3R0b21MaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcblxuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuLndldWktY2VsbHNfX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICBwYWRkaW5nLWxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XG4gIHBhZGRpbmctcmlnaHQ6IEB3ZXVpQ2VsbEdhcEg7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIGZvbnQtc2l6ZTogQHdldWlDZWxsVGlwc0ZvbnRTaXplO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gICYgKyAud2V1aS1jZWxscyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ud2V1aS1jZWxsc19fdGlwcyB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcbiAgcGFkZGluZy1sZWZ0OiBAd2V1aUNlbGxHYXBIO1xuICBwYWRkaW5nLXJpZ2h0OiBAd2V1aUNlbGxHYXBIO1xuICBmb250LXNpemU6IEB3ZXVpQ2VsbFRpcHNGb250U2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgYSxcbiAgbmF2aWdhdG9yIHtcbiAgICBjb2xvcjogQHdldWlMaW5rQ29sb3JEZWZhdWx0O1xuICB9XG4gIG5hdmlnYXRvciB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5cbi53ZXVpLWNlbGwge1xuICBwYWRkaW5nOiBAd2V1aUNlbGxHYXBWO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8v6L+Z5Liq5piv5Li65LqG5YW85a65Y2VsbHPlrrnlmahvbmVweOaWueahiOiiq2JlZm9yZeaMoeS9j+iAjOWBmueahFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaW5lLWhlaWdodDogQHdldWlDZWxsTGluZUhlaWdodDtcbiAgZm9udC1zaXplOiBAd2V1aUNlbGxGb250U2l6ZTsgLy9jZWxs5Lit6Ze05pyJ5pWI6auY5bqmMjNweO+8jOi3n+WuouaIt+err+m7mOiupOWbvuagh+WwuuWvuOS4gOiHtFxuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbiAgJjo6YmVmb3JlIHtcbiAgICAuc2V0VG9wTGluZShAd2V1aUNlbGxCb3JkZXJDb2xvcik7XG5cbiAgICBsZWZ0OiBAd2V1aUNlbGxHYXBIO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4ud2V1aS1jZWxsX2FjdGl2ZSB7XG4gICY6YWN0aXZlIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1GRy0zKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuLndldWktY2VsbF9wcmltYXJ5IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ud2V1aS1jZWxsX3ZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgLndldWktY2VsbF9faGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgfVxuICAud2V1aS1jZWxsX19oZCxcbiAgLndldWktY2VsbF9fYmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4ud2V1aS1jZWxsX19iZCB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cbi53ZXVpLWNlbGxfX2Z0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIGJ1dHRvbiB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxufVxuLndldWktY2VsbF9fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG59XG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGUvY29sb3JcIjtcblxuLnNldFRvcExpbmUoQGM6IEB3ZXVpTGluZUNvbG9yTGlnaHQpIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAYztcbiAgY29sb3I6IEBjO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG5cbi5zZXRCb3R0b21MaW5lKEBjOiBAd2V1aUxpbmVDb2xvckxpZ2h0KSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGM7XG4gIGNvbG9yOiBAYztcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuXG4uc2V0TGVmdExpbmUoQGM6IEB3ZXVpTGluZUNvbG9yTGlnaHQpIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMXB4O1xuICBib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgQGM7XG4gIGNvbG9yOiBAYztcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuXG4uc2V0UmlnaHRMaW5lKEBjOiBAd2V1aUxpbmVDb2xvckxpZ2h0KSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgQGM7XG4gIGNvbG9yOiBAYztcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWNlbGxfc3dpcGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gID4gLndldWktY2VsbF9fYmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ2VsbEJnO1xuICB9XG4gID4gLndldWktY2VsbF9fZnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY29sb3I6ICNmZmY7IC8vIOWbuuWumuiJsuWAvFxuICB9XG59XG4ud2V1aS1zd2lwZWQtYnRuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogQHdldWlDZWxsR2FwViAxZW07XG4gIGxpbmUtaGVpZ2h0OiBAd2V1aUNlbGxMaW5lSGVpZ2h0O1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi53ZXVpLXN3aXBlZC1idG5fZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvckRlZmF1bHQ7XG59XG4ud2V1aS1zd2lwZWQtYnRuX3dhcm4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUNvbG9yV2Fybjtcbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1jZWxsX2FjY2VzcyB7XG4gIC5zZXRUYXBDb2xvcigpO1xuXG4gIGNvbG9yOiBpbmhlcml0O1xuICAmOmFjdGl2ZSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXdldWktRkctMyk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbiAgLndldWktY2VsbF9fZnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBtYXNrLXBvc2l0aW9uOiAwIDA7XG4gICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgbWFzay1zaXplOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGlwcztcbiAgICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMiUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0yLjQ1NCUyMDYuNThsMS4wNi0xLjA2JTIwNS43OCUyMDUuNzc5YS45OTYuOTk2JTIwMCUyMDAxMCUyMDEuNDEzbC01Ljc4JTIwNS43NzktMS4wNi0xLjA2MSUyMDUuNDI1LTUuNDI1LTUuNDI1LTUuNDI0eiUyMiUyMGZpbGwlM0QlMjIlMjNCMkIyQjIlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICB9XG4gIH1cbn1cbi53ZXVpLWNlbGxfbGluayB7XG4gIGNvbG9yOiBAd2V1aUxpbmtDb2xvckRlZmF1bHQ7XG5cbiAgLy8g55Sx5LqOd2V1aS1jZWxsOmZpcnN0LWNoaWxk55qEOmJlZm9yZeS4uumakOiXj++8jOaJgOS7pei/memHjOimgemHjeaWsOaYvuekuuWHuuadpVxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktY2hlY2tfX2xhYmVsIHtcbiAgLnNldFRhcENvbG9yKCk7XG4gICYud2V1aS1jZWxsX3JlYWRvbmx5LFxuICAmLndldWktY2VsbF9kaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIH1cbn1cblxuLndldWktY2hlY2sge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICZbZGlzYWJsZWRdICsgLndldWktaWNvbi1jaGVja2VkIHtcbiAgICBvcGFjaXR5OiAwLjE7XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vLi4vYmFzZS9mblwiO1xuXG4vLyBtZXRob2QyIGFjY2Vzc2JpbGl0eVxuLndldWktY2VsbHNfcmFkaW8ge1xuICAud2V1aS1jZWxsX19mdCB7XG4gICAgcGFkZGluZy1sZWZ0OiBAd2V1aUNlbGxJbm5lckdhcEg7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG59XG4ud2V1aS1jaGVjayB7XG4gIC8vIHJhZGlvXG4gIC53ZXVpLWNlbGxzX3JhZGlvICYge1xuICAgICYgKyAud2V1aS1pY29uLWNoZWNrZWQge1xuICAgICAgbWluLXdpZHRoOiAxNnB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOmNoZWNrZWQsXG4gICAgJlthcmlhLWNoZWNrZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICYgKyAud2V1aS1pY29uLWNoZWNrZWQge1xuICAgICAgICBjb2xvcjogQHdldWlDb2xvclByaW1hcnk7XG4gICAgICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk04LjY1NyUyMDE4LjQzNUwzJTIwMTIuNzc4bDEuNDE0LTEuNDE0JTIwNC45NSUyMDQuOTVMMjAuNjc4JTIwNWwxLjQxNCUyMDEuNDE0LTEyLjAyJTIwMTIuMDIxYTElMjAxJTIwMCUyMDAxLTEuNDE1JTIwMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1jZWxsc19jaGVja2JveCB7XG4gIC53ZXVpLWNoZWNrX19sYWJlbCB7XG4gICAgJjo6YmVmb3JlIHsgbGVmdDogNTVweDsgfVxuICB9XG4gIC53ZXVpLWNlbGxfX2hkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAd2V1aUNlbGxJbm5lckdhcEg7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG4gIC53ZXVpLWljb24tY2hlY2tlZCB7XG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGlwcztcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTAwMCUyMiUyMGhlaWdodCUzRCUyMjEwMDAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMCUyMDkxNi42NjdDMjY5Ljg4MSUyMDkxNi42NjclMjA4My4zMzMlMjA3MzAuMTE5JTIwODMuMzMzJTIwNTAwJTIwODMuMzMzJTIwMjY5Ljg4MSUyMDI2OS44ODElMjA4My4zMzMlMjA1MDAlMjA4My4zMzNjMjMwLjExOSUyMDAlMjA0MTYuNjY3JTIwMTg2LjU0OCUyMDQxNi42NjclMjA0MTYuNjY3JTIwMCUyMDIzMC4xMTktMTg2LjU0OCUyMDQxNi42NjctNDE2LjY2NyUyMDQxNi42Njd6bTAtNTBjMjAyLjUwNCUyMDAlMjAzNjYuNjY3LTE2NC4xNjMlMjAzNjYuNjY3LTM2Ni42NjclMjAwLTIwMi41MDQtMTY0LjE2My0zNjYuNjY3LTM2Ni42NjctMzY2LjY2Ny0yMDIuNTA0JTIwMC0zNjYuNjY3JTIwMTY0LjE2My0zNjYuNjY3JTIwMzY2LjY2NyUyMDAlMjAyMDIuNTA0JTIwMTY0LjE2MyUyMDM2Ni42NjclMjAzNjYuNjY3JTIwMzY2LjY2N3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbC1vcGFjaXR5JTNEJTIyLjklMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xuICB9XG59XG5cbi8vIG1ldGhvZDIgYWNjZXNzYmlsaXR5XG4ud2V1aS1jaGVjayB7XG4gIC8vIGNoZWNrYm94XG4gIC53ZXVpLWNlbGxzX2NoZWNrYm94ICYge1xuICAgICY6Y2hlY2tlZCxcbiAgICAmW2FyaWEtY2hlY2tlZD1cInRydWVcIl0ge1xuICAgICAgJiArIC53ZXVpLWljb24tY2hlY2tlZCB7XG4gICAgICAgIGNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcbiAgICAgICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptLTEuMTc3LTcuODZsLTIuNzY1LTIuNzY3TDclMjAxMi40MzFsMy4xMTklMjAzLjEyMWExJTIwMSUyMDAlMjAwMDEuNDE0JTIwMGw1Ljk1Mi01Ljk1LTEuMDYyLTEuMDYyLTUuNiUyMDUuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKlxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbipcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IEB3ZXVpQ2VsbExhYmVsV2lkdGg7XG4gIC50ZXh0X3dyYXAoKTtcbn1cbi53ZXVpLWlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGhlaWdodDogdW5pdChAd2V1aUNlbGxMaW5lSGVpZ2h0LCBlbSk7XG4gIGxpbmUtaGVpZ2h0OiBAd2V1aUNlbGxMaW5lSGVpZ2h0O1xuXG4gIC8vIGhpZGVzIHRoZSBzcGluLWJ1dHRvblxuICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gICY6Zm9jdXMge1xuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgJiArIC53ZXVpLWJ0bl9pbnB1dC1jbGVhciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndldWktdGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAwO1xuICByZXNpemU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGhlaWdodDogODBweDtcbiAgb3V0bGluZTogMDtcbn1cblxuLndldWktdGV4dGFyZWEtY291bnRlciB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IDE0cHg7XG4gIC53ZXVpLWNlbGxfd2FybiAmIHtcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JXYXJuO1xuICB9XG59XG5cbi53ZXVpLWNlbGxfd2FybiB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvcldhcm47XG4gIC53ZXVpLWljb24td2FybiB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxufVxuLndldWktY2VsbF9yZWFkb25seSxcbi53ZXVpLWNlbGxfZGlzYWJsZWQge1xuICAud2V1aS1pbnB1dCxcbiAgLndldWktdGV4dGFyZWEge1xuICAgICY6ZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gICAgfVxuICB9XG59XG4ud2V1aS1idG5faW5wdXQtY2xlYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xuICAgIHdpZHRoOiAxOHB4O1xuICB9XG59XG5cblxuLy8gdG9kbzog5Lul5LiL5Li65YW85a655pyA5byA5aeL54mI5pys55qE6KGo5Y2V77yM5paw6KGo5Y2V44CB5Y+N6Imy6KGo5Y2V5Z2H5LiN6ZyA6KaBXG4ud2V1aS1jZWxsc19mb3JtIHtcbiAgLndldWktY2VsbF9zd2l0Y2gsXG4gIC53ZXVpLWNlbGxfdmNvZGUsXG4gIC53ZXVpLWNlbGxfcmVhZG9ubHksXG4gIC53ZXVpLWNlbGxfZGlzYWJsZWQge1xuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuICAud2V1aS1jZWxsX19mdCB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG4gIC53ZXVpLWljb24td2FybiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBpbnB1dCxcbiAgdGV4dGFyZWEsXG4gIGxhYmVsW2Zvcl0ge1xuICAgIC5zZXRUYXBDb2xvcigpO1xuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuLmVsbGlwc2lzKEB3OmF1dG8pIHtcbiAgd2lkdGg6IEB3O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cbi5lbGxpcHNpc0xuKEBsaW5lKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiBAbGluZTtcbn1cbi50ZXh0X3dyYXAoKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuLmh5cGhlbnMoKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWZvcm0tcHJldmlldyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgJjo6YmVmb3JlIHtcbiAgICAuc2V0VG9wTGluZShAd2V1aUNlbGxCb3JkZXJDb2xvcik7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIC5zZXRCb3R0b21MaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcbiAgfVxufVxuLndldWktZm9ybS1wcmV2aWV3X19oZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogQHdldWlDZWxsR2FwVjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAyLjVlbTtcbiAgJjo6YWZ0ZXIge1xuICAgIC5zZXRCb3R0b21MaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcblxuICAgIGxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XG4gIH1cbiAgLndldWktZm9ybS1wcmV2aWV3X192YWx1ZSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gIH1cbn1cbi53ZXVpLWZvcm0tcHJldmlld19fYmQge1xuICBwYWRkaW5nOiBAd2V1aUNlbGxHYXBWO1xuICBmb250LXNpemU6IDAuOWVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcbiAgbGluZS1oZWlnaHQ6IDI7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2Z0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgJjo6YmVmb3JlIHtcbiAgICAuc2V0VG9wTGluZShAd2V1aURpYWxvZ0xpbmVDb2xvcik7XG4gIH1cbn1cbi53ZXVpLWZvcm0tcHJldmlld19faXRlbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2xhYmVsIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xuICB3aWR0aDogNC4yZW07XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX3ZhbHVlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMTtcbiAgY29sb3I6IEB3ZXVpRGlhbG9nTGlua0NvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC5zZXRUYXBDb2xvcigpO1xuICBidXR0b24mIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgb3V0bGluZTogMDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpRGlhbG9nTGlua0FjdGl2ZUJjO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICAuc2V0TGVmdExpbmUoQHdldWlEaWFsb2dMaW5lQ29sb3IpO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2J0bl9kZWZhdWx0IHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctSEFMRik7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2J0bl9wcmltYXJ5IHtcbiAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcbn1cblxuLy8g5YiX6KGo5Z2X77yM5LiA6Iis5pS+bXNn57uE5Lu255qE6Ieq5a6a5LmJ5Yy65Z+fXG4ud2V1aS1mb3JtLXByZXZpZXdfX2xpc3Qge1xuICBwYWRkaW5nLXRvcDogMjRweDtcbiAgcGFkZGluZy1ib3R0b206IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgLnNldFRvcExpbmUodmFyKC0td2V1aS1GRy0zKSk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAud2V1aS1mb3JtLXByZXZpZXdfX2xhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiA2ZW07XG4gIH1cbiAgLndldWktZm9ybS1wcmV2aWV3X192YWx1ZSB7IGh5cGhlbnM6IGF1dG87IH1cbiAgLndldWktZm9ybS1wcmV2aWV3X19pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICY6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XG4gIH1cbiAgJiA+IC53ZXVpLWNlbGxzX190aXRsZSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktY2VsbF9zZWxlY3Qge1xuICBwYWRkaW5nOiAwO1xuICAud2V1aS1jZWxsX19iZCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIG1hc2stcG9zaXRpb246IDAgMDtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXNpemU6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xuICAgICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTIuNDU0JTIwNi41OGwxLjA2LTEuMDYlMjA1Ljc4JTIwNS43NzlhLjk5Ni45OTYlMjAwJTIwMDEwJTIwMS40MTNsLTUuNzglMjA1Ljc3OS0xLjA2LTEuMDYxJTIwNS40MjUtNS40MjUtNS40MjUtNS40MjR6JTIyJTIwZmlsbCUzRCUyMiUyM0IyQjJCMiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogQHdldWlDZWxsR2FwSDtcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgIH1cbiAgfVxufVxuXG4ud2V1aS1zZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIG1pbi1oZWlnaHQ6IEB3ZXVpQ2VsbEhlaWdodDtcbiAgbGluZS1oZWlnaHQ6IEB3ZXVpQ2VsbEhlaWdodDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLWxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XG4gIHBhZGRpbmctcmlnaHQ6IEB3ZXVpQ2VsbEdhcEggKyAyNHB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLndldWktY2VsbF9zZWxlY3QtYmVmb3JlIHtcbiAgLndldWktY2VsbF9faGQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgLnNldFJpZ2h0TGluZShAd2V1aUNlbGxCb3JkZXJDb2xvcik7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgbWFzay1wb3NpdGlvbjogMCAwO1xuICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIG1hc2stc2l6ZTogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMi40NTQlMjA2LjU4bDEuMDYtMS4wNiUyMDUuNzglMjA1Ljc3OWEuOTk2Ljk5NiUyMDAlMjAwMTAlMjAxLjQxM2wtNS43OCUyMDUuNzc5LTEuMDYtMS4wNjElMjA1LjQyNS01LjQyNS01LjQyNS01LjQyNHolMjIlMjBmaWxsJTNEJTIyJTIzQjJCMkIyJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiBAd2V1aUNlbGxHYXBIO1xuICAgICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgfVxuICB9XG4gIC53ZXVpLWNlbGxfX2JkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLndldWktc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IDVlbTtcbiAgICB3aWR0aDogQHdldWlDZWxsTGFiZWxXaWR0aDtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgfVxufVxuXG4ud2V1aS1jZWxsX3NlbGVjdC1hZnRlciB7XG4gIC53ZXVpLWNlbGxfX2hkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XG4gIH1cbiAgLndldWktc2VsZWN0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKlxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbipcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKlxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWNlbGxfdmNvZGUge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4ud2V1aS12Y29kZS1pbWcge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBoZWlnaHQ6IEB3ZXVpQ2VsbEhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLndldWktdmNvZGUtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IEB3ZXVpQ2VsbEhlaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgcGFkZGluZzogMCAwLjZlbSAwIDAuN2VtO1xuICBsaW5lLWhlaWdodDogQHdldWlDZWxsSGVpZ2h0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IEB3ZXVpQ2VsbEZvbnRTaXplO1xuICBjb2xvcjogQHdldWlEaWFsb2dMaW5rQ29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjo6YmVmb3JlIHtcbiAgICAuc2V0TGVmdExpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XG4gIH1cbiAgYnV0dG9uJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkstQUNUSVZFKTtcbiAgfVxufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbkB3ZXVpR2FsbGVyeU9wckhlaWdodDogNjBweDtcbi53ZXVpLWdhbGxlcnkge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgLy8g5Zu65a6a6Imy5YC8XG4gIHotaW5kZXg6IDEwMDA7XG59XG4ud2V1aS1nYWxsZXJ5X19pbWcsXG4ud2V1aS1nYWxsZXJ5X19vcHIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcmlnaHQ6IDA7XG4gIHJpZ2h0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICByaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG59XG4ud2V1aS1nYWxsZXJ5X19pbWcge1xuICB0b3A6IDA7XG4gIHRvcDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcCk7XG4gIHRvcDogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICBib3R0b206IEB3ZXVpR2FsbGVyeU9wckhlaWdodDtcbiAgYm90dG9tOiBjYWxjKEB3ZXVpR2FsbGVyeU9wckhlaWdodCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpO1xuICBib3R0b206IGNhbGMoQHdldWlHYWxsZXJ5T3BySGVpZ2h0IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbn1cbi53ZXVpLWdhbGxlcnlfX29wciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQwZDBkOyAgLy8g5Zu65a6a6Imy5YC8XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcbiAgbGluZS1oZWlnaHQ6IEB3ZXVpR2FsbGVyeU9wckhlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLndldWktZ2FsbGVyeV9fZGVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XG4gIHBhZGRpbmctYm90dG9tOiBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XG4gICY6YWN0aXZlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1jZWxsX3N3aXRjaCB7XG4gIHBhZGRpbmctdG9wOiAoQHdldWlDZWxsSGVpZ2h0IC0gQHdldWlTd2l0Y2hIZWlnaHQpIC8gMjtcbiAgcGFkZGluZy1ib3R0b206IChAd2V1aUNlbGxIZWlnaHQgLSBAd2V1aVN3aXRjaEhlaWdodCkgLyAyO1xuICAmLndldWktY2VsbF9yZWFkb25seSxcbiAgJi53ZXVpLWNlbGxfZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB9XG59XG4ud2V1aS1zd2l0Y2gge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLndldWktc3dpdGNoLFxuLndldWktc3dpdGNoLWNwX19ib3gge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA1MnB4O1xuICBoZWlnaHQ6IEB3ZXVpU3dpdGNoSGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDJweDtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzLCBib3JkZXIgMC4xcztcblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMnB4O1xuICAgIGxlZnQ6IDJweDtcbiAgICB3aWR0aDogQHdldWlTd2l0Y2hIZWlnaHQgLSA0O1xuICAgIGhlaWdodDogQHdldWlTd2l0Y2hIZWlnaHQgLSA0O1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgLy8g5Zu65a6a6Imy5YC8XG4gICAgYm94LXNoYWRvdzogMCAycHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAuNCwgMC40LCAwLjI1LCAxLjM1KTtcbiAgfVxufVxuLndldWktc3dpdGNoOmNoZWNrZWQsXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0OmNoZWNrZWQgKyAud2V1aS1zd2l0Y2gtY3BfX2JveCxcbi53ZXVpLXN3aXRjaC1jcF9faW5wdXRbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlDb2xvclByaW1hcnk7XG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cbi53ZXVpLXN3aXRjaFtkaXNhYmxlZF0sXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0W2Rpc2FibGVkXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94LFxuLndldWktc3dpdGNoLWNwX19pbnB1dFthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94IHtcbiAgb3BhY2l0eTogMC4xO1xufVxuXG5cbi8vIOWFvOWuueWwj+eoi+W6jy9JRSBFZGdl55qE54mI5pysXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktc3dpdGNoLWNwX19ib3gge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1jZWxsX3VwbG9hZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDI0cHg7XG59XG4ud2V1aS11cGxvYWRlciB7XG4gIGZsZXg6IDE7XG59XG4ud2V1aS11cGxvYWRlcl9faGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi53ZXVpLXVwbG9hZGVyX190aXRsZSB7XG4gIGZsZXg6IDE7XG59XG4ud2V1aS11cGxvYWRlcl9faW5mbyB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XG59XG5cbi53ZXVpLXVwbG9hZGVyX19iZCB7XG4gIG1hcmdpbi1ib3R0b206IEB3ZXVpQ2VsbEdhcEggLSAoQHdldWlDZWxsR2FwViArIEB3ZXVpVXBsb2FkZXJGaWxlU3BhY2luZyk7XG4gIG1hcmdpbi1yaWdodDogLUB3ZXVpVXBsb2FkZXJGaWxlU3BhY2luZztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLXVwbG9hZGVyX19maWxlcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IEB3ZXVpVXBsb2FkZXJGaWxlU3BhY2luZztcbiAgbWFyZ2luLWJvdHRvbTogQHdldWlVcGxvYWRlckZpbGVTcGFjaW5nO1xuICB3aWR0aDogQHdldWlVcGxvYWRlclNpemU7XG4gIGhlaWdodDogQHdldWlVcGxvYWRlclNpemU7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuLndldWktdXBsb2FkZXJfX2ZpbGVfc3RhdHVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyAvLyDlm7rlrproibLlgLxcbiAgfVxuICAud2V1aS11cGxvYWRlcl9fZmlsZS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLndldWktdXBsb2FkZXJfX2ZpbGUtY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcbiAgLndldWktaWNvbi13YXJuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbi53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3gge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IEB3ZXVpVXBsb2FkZXJGaWxlU3BhY2luZztcbiAgbWFyZ2luLWJvdHRvbTogQHdldWlVcGxvYWRlckZpbGVTcGFjaW5nO1xuICB3aWR0aDogQHdldWlVcGxvYWRlclNpemU7XG4gIGhlaWdodDogQHdldWlVcGxvYWRlclNpemU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gIC5kYXJrKHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmUyZTJlO1xuICB9KTtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNhM2EzO1xuICAgIC5kYXJrKHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDZkNmQ7XG4gICAgfSk7XG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICB3aWR0aDogQHdldWlVcGxvYWRlckJvcmRlcldpZHRoICsgMTtcbiAgICBoZWlnaHQ6IDMzLjMzJTtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgICBoZWlnaHQ6IEB3ZXVpVXBsb2FkZXJCb3JkZXJXaWR0aCArIDE7XG4gIH1cbiAgJjphY3RpdmUge1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuICB9XG59XG4ud2V1aS11cGxvYWRlcl9faW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgLnNldFRhcENvbG9yKCk7XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcbkBpbXBvcnQgXCIuLi93ZXVpLWJ1dHRvbi93ZXVpLWJ1dHRvblwiO1xuXG5hIHtcbiAgLndldWktbXNnX19kZXNjICYsXG4gIC53ZXVpLW1zZ19fZGVzYy1wcmltYXJ5ICYsXG4gIC53ZXVpLW1zZ19fdGlwcyAmIHtcbiAgICBjb2xvcjogQHdldWlMaW5rQ29sb3JEZWZhdWx0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cbn1cbi53ZXVpLW1zZyB7XG4gIHBhZGRpbmctdG9wOiBAd2V1aU1zZ1BhZGRpbmdUb3A7XG4gIHBhZGRpbmc6IGNhbGMoQHdldWlNc2dQYWRkaW5nVG9wIH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcClcIikgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHBhZGRpbmc6IGNhbGMoQHdldWlNc2dQYWRkaW5nVG9wIH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApXCIpIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG59XG4ud2V1aS1tc2dfX2ljb24tYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG59XG4ud2V1aS1tc2dfX3RleHQtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgZmxleDogMTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgLmh5cGhlbnM7XG4gICY6Zmlyc3QtY2hpbGQgeyBwYWRkaW5nLXRvcDogOTZweDsgfVxufVxuLndldWktbXNnX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IEB3ZXVpTXNnVGl0bGVHYXA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XG59XG4ud2V1aS1tc2dfX2Rlc2Mge1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLndldWktbXNnX19kZXNjLXByaW1hcnkge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4ud2V1aS1tc2dfX2N1c3RvbS1hcmVhIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAud2V1aS1tc2dfX3RpdGxlICsgJiB7XG4gICAgbWFyZ2luLXRvcDogNDhweDtcbiAgfVxuICAud2V1aS1tc2dfX2Rlc2MgKyAmLFxuICAud2V1aS1tc2dfX2Rlc2MtcHJpbWFyeSArICYge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbiAgLndldWktY2VsbHNfX2dyb3VwX2Zvcm0ge1xuICAgIC53ZXVpLWNlbGxzIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbn1cbi53ZXVpLW1zZ19fb3ByLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAud2V1aS1idG4tYXJlYSB7IG1hcmdpbjogMDsgfVxuICAud2V1aS1idG4gKyAud2V1aS1idG4geyBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG4gICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDk2cHg7IH1cbiAgJiArIC53ZXVpLW1zZ19fZXh0cmEtYXJlYSB7XG4gICAgbWFyZ2luLXRvcDogNDhweDtcbiAgfVxufVxuLndldWktbXNnX190aXBzLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nOiAwIDQwcHg7XG4gIC5oeXBoZW5zO1xuICAud2V1aS1tc2dfX29wci1hcmVhICsgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDY0cHg7XG4gIH1cbn1cbi53ZXVpLW1zZ19fdGlwcyB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcbn1cbi53ZXVpLW1zZ19fZXh0cmEtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xuICBhLFxuICBuYXZpZ2F0b3Ige1xuICAgIGNvbG9yOiBAd2V1aUxpbmtDb2xvckRlZmF1bHQ7XG4gIH1cbiAgbmF2aWdhdG9yIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbn1cblxuLy8g6YOo5YiG5Zy65pmv6ZyA6KaB5Y675o6J5aS06YOo6Ze06LedXG4ud2V1aS1tc2dfYWxpZ24tdG9wIHtcbiAgLndldWktbXNnX190ZXh0LWFyZWEge1xuICAgICY6Zmlyc3QtY2hpbGQgeyBwYWRkaW5nLXRvcDogMDsgfVxuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuXG4vKipcbuerlueJiOeahOe6v+S4iuS4i+err+WSjOaWh+Wtl+WMuuWfn+Wvuem9kFxu5qiq54mI55qE57q/5bem5Y+z56uv6Ze06Led5Zu65a6aNHB4XG4qKi9cblxuYm9keSxcbnBhZ2Uge1xuICAtLXdldWktU1RFUFMtREVGQVVMVC1DT0xPUjogdmFyKC0td2V1aS1GRy0zKTtcbiAgLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUjogdmFyKC0td2V1aS1CUkFORCk7XG4gIC0td2V1aS1TVEVQUy1GT05ULVNJWkU6IDE3O1xuICAtLXdldWktU1RFUFMtTElORUhFSUdIVDogMS40O1xuICAtLXdldWktU1RFUFMtRE9ULVNJWkU6IH5cImNhbGMoOCAvIHZhcigtLXdldWktU1RFUFMtRk9OVC1TSVpFKSAqIDFlbSlcIjtcbiAgLS13ZXVpLVNURVBTLUlDT04tU0laRTogNDA7XG4gIC0td2V1aS1TVEVQUy1WRVJUSUNBTC1ET1QtR0FQOiB+XCJjYWxjKCgxZW0gLSB2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKSkgLyAyKVwiO1xuICAtLXdldWktU1RFUFMtSE9SSVpPTkFMLURPVC1HQVA6IDRweDtcbn1cblxuLndldWktc3RlcHMge1xuICBsaW5lLWhlaWdodDogdmFyKC0td2V1aS1TVEVQUy1MSU5FSEVJR0hUKTtcbiAgZm9udC1zaXplOiB+XCJjYWxjKDFweCAqIHZhcigtLXdldWktU1RFUFMtRk9OVC1TSVpFKSlcIjtcbn1cbi53ZXVpLXN0ZXBzX19pdGVtX190aXRsZSxcbi53ZXVpLXN0ZXBzX19pdGVtX19kZXNjIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ud2V1aS1zdGVwc19faXRlbV9fdGl0bGUge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLndldWktc3RlcHNfX2l0ZW1fX2Rlc2Mge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xuICBtYXJnaW4tdG9wOiA0cHg7XG59XG5cbi53ZXVpLXN0ZXBzX3ZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAud2V1aS1zdGVwc19faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMnB4O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgLnNldExlZnRMaW5lKHZhcigtLXdldWktU1RFUFMtREVGQVVMVC1DT0xPUikpO1xuXG4gICAgICB0b3A6IH5cImNhbGMoKHZhcigtLXdldWktU1RFUFMtTElORUhFSUdIVCkgLSAodmFyKC0td2V1aS1TVEVQUy1MSU5FSEVJR0hUKSAtIDEpIC8gMikgKiAxZW0pXCI7IC8vIOe6v+eahOmhtumDqOi3n+aWh+Wtl+WMuuWfn+W6lemDqOWvuem9kFxuICAgICAgYm90dG9tOiB+XCJjYWxjKCh2YXIoLS13ZXVpLVNURVBTLUxJTkVIRUlHSFQpIC0gMSkgLyAyICogLTFlbSlcIjsgLy8g57q/55qE5bqV6YOo6Lef5LiL5Liq5q2l6aqk55qE5paH5a2X5Yy65Z+f6aG26YOo5a+56b2QXG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgJjpub3QoLndldWktc3RlcHNfX2l0ZW1fc3VjY2Vzcykge1xuICAgICAgICAud2V1aS1zdGVwc19faXRlbV9faW5uZXIge1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAud2V1aS1zdGVwc19faXRlbV9faW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyAvLyDnm5blnKjnur/nmoTkuIrlsYJcbiAgICBwYWRkaW5nLWxlZnQ6IDM2cHg7XG5cbiAgICAvLyBiZWZvcmXnlKjmnaXnlLvlnIbngrlcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiB2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKTtcbiAgICAgIGhlaWdodDogdmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiB+XCJjYWxjKHZhcigtLXdldWktU1RFUFMtTElORUhFSUdIVCkgLyAyICogMWVtKVwiO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IC8vIOWSjOatpemqpOaWh+acrOesrOS4gOihjOWeguebtOWxheS4rVxuICAgIH1cbiAgfVxuICAud2V1aS1zdGVwc19faWNvbiB7XG4gICAgZm9udC1zaXplOiB+XCJjYWxjKDFweCAqIHZhcigtLXdldWktU1RFUFMtRk9OVC1TSVpFKSlcIjtcbiAgICB3aWR0aDogflwiY2FsYyh2YXIoLS13ZXVpLVNURVBTLUlDT04tU0laRSkgLyB2YXIoLS13ZXVpLVNURVBTLUZPTlQtU0laRSkgKiAxZW0pXCI7XG4gICAgaGVpZ2h0OiB+XCJjYWxjKHZhcigtLXdldWktU1RFUFMtSUNPTi1TSVpFKSAvIHZhcigtLXdldWktU1RFUFMtRk9OVC1TSVpFKSAqIDFlbSlcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogflwiY2FsYyh2YXIoLS13ZXVpLVNURVBTLUxJTkVIRUlHSFQpIC8gMiAqIDFlbSlcIjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBtYXJnaW4tdG9wOiB+XCJjYWxjKCh2YXIoLS13ZXVpLVNURVBTLUlDT04tU0laRSkgLyB2YXIoLS13ZXVpLVNURVBTLUZPTlQtU0laRSkgKiAxZW0gLSAxZW0pIC8gMiAtIC4yOGVtKVwiOyAvLyDlkozmlofmnKznrKzkuIDooYzpobblr7npvZDvvIzkuI3og73nm7TmjqV0b3Aw77yM5Zug5Li65LiK5LiL6YO96ZyA6KaB55uW5L2P57q/77yM5pyA5ZCO55qEMC4yOGVt5piv5Zu+5qCH55qE56m655m95Yy65Z+f5aSa5L2Z5Ye65p2lXG4gIH1cbiAgLndldWktc3RlcHNfX2l0ZW1faWNvbiB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogflwiY2FsYyh2YXIoLS13ZXVpLVNURVBTLVZFUlRJQ0FMLURPVC1HQVApICsgdmFyKC0td2V1aS1TVEVQUy1JQ09OLVNJWkUpIC8gdmFyKC0td2V1aS1TVEVQUy1GT05ULVNJWkUpICogMWVtIC0gLjE0ZW0pXCI7IC8vIOacgOWQjueahDAuMTRlbeaYr+WboOS4uuWbvuagh+eahOepuueZveWMuuWfn+mcgOimgeiuoeeul+i/m+WOu1xuICAgIH1cbiAgICAud2V1aS1zdGVwc19faXRlbV9faW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndldWktc3RlcHNfX2l0ZW1faWNvbi1wcmV2IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiB+XCJjYWxjKHZhcigtLXdldWktU1RFUFMtVkVSVElDQUwtRE9ULUdBUCkgLSAodmFyKC0td2V1aS1TVEVQUy1MSU5FSEVJR0hUKSAtIDEpIC8gMiAqIDFlbSArIC4xNGVtKVwiOyAvLyDmnIDlkI4wLjE0ZW3mmK/lm6DkuLrlm77moIfnmoTnqbrnmb3ljLrln5/pnIDopoHorqHnrpfov5vljrtcbiAgICB9XG4gIH1cbiAgLndldWktc3RlcHNfX2l0ZW1fc3VjY2VzcyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xuICAgIH1cbiAgICAud2V1aS1zdGVwc19faXRlbV9faW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xuICAgICAgfVxuICAgIH1cbiAgICAmICsgLndldWktc3RlcHNfX2l0ZW0ge1xuICAgICAgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndldWktc3RlcHNfaG9yaXpvbmFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgLndldWktc3RlcHNfX2l0ZW0ge1xuICAgIGZsZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiB2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKTtcbiAgICAgIGhlaWdodDogdmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SKTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAwLjVweDtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXJnaW46IDAgdmFyKC0td2V1aS1TVEVQUy1IT1JJWk9OQUwtRE9ULUdBUCk7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAmOm5vdCgud2V1aS1zdGVwc19faXRlbV9zdWNjZXNzKSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53ZXVpLXN0ZXBzX19pdGVtX19pbm5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgfVxuICAud2V1aS1zdGVwc19faXRlbV9zdWNjZXNzIHtcbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xuICAgIH1cbiAgICAmICsgLndldWktc3RlcHNfX2l0ZW0ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuLy8g5Lul5LiL5Lik56eN5omp5bGV5pqC5pe25LiN5pS+5Ye65p2lXG4ud2V1aS1zdGVwc19ob3Jpem9uYWwtcHJpbWFyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC53ZXVpLXN0ZXBzX19pdGVtIHtcbiAgICBmbGV4OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgLnNldFRvcExpbmUodmFyKC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SKSk7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBmbGV4OiBub25lO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDM2cHg7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgd2lkdGg6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVNURVBTLURFRkFVTFQtQ09MT1IpO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gICAgICB3aWR0aDogflwiY2FsYyh2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKSArICAyICogdmFyKC0td2V1aS1TVEVQUy1IT1JJWk9OQUwtRE9ULUdBUCkpXCI7XG4gICAgICBoZWlnaHQ6IH5cImNhbGModmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSkgKyAgMiAqIHZhcigtLXdldWktU1RFUFMtSE9SSVpPTkFMLURPVC1HQVApKVwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKH5cImNhbGMoLTUwJSArIHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpIC8gMilcIiwgLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgLndldWktc3RlcHNfX2l0ZW1fc3VjY2VzcyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xuICAgIH1cbiAgICAud2V1aS1zdGVwc19faXRlbV9faW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1TVEVQUy1ISUdITElHSFQtQ09MT1IpO1xuICAgICAgfVxuICAgIH1cbiAgICAmICsgLndldWktc3RlcHNfX2l0ZW0ge1xuICAgICAgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53ZXVpLXN0ZXBzX2hvcml6b25hbC1jZW50ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC53ZXVpLXN0ZXBzX19pdGVtIHtcbiAgICBmbGV4OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjphZnRlcixcbiAgICAmOjpiZWZvcmUge1xuICAgICAgLnNldFRvcExpbmUodmFyKC0td2V1aS1TVEVQUy1ERUZBVUxULUNPTE9SKSk7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogNTAlO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndldWktc3RlcHNfX2l0ZW1fX2lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nLXRvcDogMzZweDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB3aWR0aDogdmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLXdldWktU1RFUFMtRE9ULVNJWkUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktU1RFUFMtREVGQVVMVC1DT0xPUik7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gICAgICB3aWR0aDogflwiY2FsYyh2YXIoLS13ZXVpLVNURVBTLURPVC1TSVpFKSArICAyICogdmFyKC0td2V1aS1TVEVQUy1IT1JJWk9OQUwtRE9ULUdBUCkpXCI7XG4gICAgICBoZWlnaHQ6IH5cImNhbGModmFyKC0td2V1aS1TVEVQUy1ET1QtU0laRSkgKyAgMiAqIHZhcigtLXdldWktU1RFUFMtSE9SSVpPTkFMLURPVC1HQVApKVwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgLndldWktc3RlcHNfX2l0ZW1fc3VjY2VzcyB7XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyLFxuICAgIC53ZXVpLXN0ZXBzX19pdGVtX19pbm5lcjo6YmVmb3JlLFxuICAgICYgKyAud2V1aS1zdGVwc19faXRlbTo6YmVmb3JlLFxuICAgICYgKyAud2V1aS1zdGVwc19faXRlbSAud2V1aS1zdGVwc19faXRlbV9faW5uZXI6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLVNURVBTLUhJR0hMSUdIVC1DT0xPUik7XG4gICAgfVxuICB9XG59XG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG5wYWdlLFxuYm9keSB7XG4gIC0td2V1aS1jZWxsTWFyZ2luTFI6IDE2cHg7XG4gIC0td2V1aS1jZWxsUGFkZGluZ0xSOiAxNnB4O1xufVxuXG4ud2V1aS1jZWxsc19fZ3JvdXAge1xuICBib3JkZXI6IDA7XG4gICY6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XG59XG5cblxuLy8g5pmu6YCa6KGo5Y2VXG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG5cbiAgLy8g6KGo5Y2V57uEXG4gIC53ZXVpLWNlbGxzIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0td2V1aS1jZWxsTWFyZ2luTFIpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0td2V1aS1jZWxsTWFyZ2luTFIpO1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiB2YXIoLS13ZXVpLWNlbGxQYWRkaW5nTFIpO1xuICAgICAgcmlnaHQ6IHZhcigtLXdldWktY2VsbFBhZGRpbmdMUik7XG4gICAgfVxuICB9XG4gIC53ZXVpLWNlbGwge1xuICAgIHBhZGRpbmc6IDE2cHggdmFyKC0td2V1aS1jZWxsUGFkZGluZ0xSKTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogdmFyKC0td2V1aS1jZWxsUGFkZGluZ0xSKTtcbiAgICAgIHJpZ2h0OiB2YXIoLS13ZXVpLWNlbGxQYWRkaW5nTFIpO1xuICAgIH1cbiAgICAmOm5vdCgud2V1aS1jZWxsX3ZlcnRpY2FsKSB7XG4gICAgICAud2V1aS1jZWxsX19oZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgICB9XG4gICAgICAud2V1aS1jZWxsX19mdCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIOihqOWNlee7hOagh+mimFxuICAud2V1aS1jZWxsc19fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIHBhZGRpbmc6IDAgMzJweDtcbiAgfVxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAud2V1aS1jZWxsc19fdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuXG4gIC8vIOihqOWNlee7hOaPkOekulxuICAud2V1aS1jZWxsc19fdGlwcyB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIHBhZGRpbmc6IDAgflwiY2FsYyh2YXIoLS13ZXVpLWNlbGxNYXJnaW5MUikgKyB2YXIoLS13ZXVpLWNlbGxQYWRkaW5nTFIpKVwiO1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cbiAgLndldWktY2VsbHNfX3RpcHNfd2FybiB7XG4gICAgY29sb3I6IHZhcigtLXdldWktUkVEKTtcbiAgfVxuXG5cbiAgLy8g6KGo5Y2V5qCH6aKYXG4gIC53ZXVpLWxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IDVlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxuXG5cbiAgLy8g54K55Ye75oCBXG4gIC53ZXVpLWNlbGxfYWNjZXNzLFxuICAud2V1aS1jZWxsX2FjdGl2ZSB7XG4gICAgJjphY3RpdmUge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyDmiqXplJlcbiAgLndldWktY2VsbF93YXJuIHtcbiAgICBpbnB1dCB7XG4gICAgICBjb2xvcjogQHdldWlDb2xvcldhcm47XG4gICAgfVxuICB9XG4gIC53ZXVpLWljb24td2FybiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG5cbiAgLy8g5oq55Y6754K55Ye75oCBXG4gIC53ZXVpLWNlbGxfc3dpdGNoLFxuICAud2V1aS1jZWxsX3Zjb2RlLFxuICAud2V1aS1jZWxsX3JlYWRvbmx5LFxuICAud2V1aS1jZWxsX2Rpc2FibGVkIHtcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGlucHV0LFxuICB0ZXh0YXJlYSxcbiAgbGFiZWxbZm9yXSB7XG4gICAgLnNldFRhcENvbG9yKCk7XG4gIH1cblxuXG4gIC8vIOmAguiAgeWMluS4i+ihqOWNlemhueaKmOihjO+8jOmAgueUqOmrmOW6puS4jeWkp+S6jum7mOiupGNlbGzlhoXlrrnpq5jluqbnmoTlhYPntKDlubbmjpJcbiAgLy8g6buY6K6kY2VsbOWGheWuuemrmOW6pu+8mmNlbGzpu5jorqTpq5jluqY1NnB477yM6Zmk5Y675LiK5LiLcGFkZGluZ+WQhDE2cHjvvIzpu5jorqTlhoXlrrnpq5jluqbkuLrooYzpq5gxLjTvvIgyNHB477yJXG4gIC53ZXVpLWNlbGxfd3JhcCB7XG4gICAgYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gICAgcGFkZGluZy10b3A6IDhweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICAgIC53ZXVpLWNlbGxfX2hkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICAgIC53ZXVpLWxhYmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICB9XG4gICAgLndldWktY2VsbF9fYmQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC53ZXVpLWNlbGxfX2NvbnRyb2wge1xuICAgIG1hcmdpbjogOHB4IDAgOHB4IDE2cHg7XG4gIH1cbiAgLndldWktY2VsbF9fY29udHJvbF9mbGV4IHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMzB2dztcbiAgfVxuXG5cbiAgLy8g6aqM6K+B56CBXG4gIC53ZXVpLXZjb2RlLWJ0biB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGNvbG9yOiBAd2V1aUJ0bkRlZmF1bHRGb250Q29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCdG5EZWZhdWx0Qmc7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8g6aqM6K+B56CBY2VsbOmAguiAgeWMlu+8mueUseS6juWwj+aMiemSrumrmOW6pjMycHjlpKfkuo7pu5jorqTlhoXlrrnpq5jluqbvvIzmiYDku6XpnIDopoHmiopjZWxs55qEcGFkZGluZ+aUueWwj+S7peS/neaMgWNlbGzpu5jorqTpq5jluqY1NnB455qE6KeE6IyDXG4gIC53ZXVpLWNlbGxfdmNvZGUge1xuICAgICYud2V1aS1jZWxsX3dyYXAge1xuICAgICAgcGFkZGluZy10b3A6IDRweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgICAud2V1aS1sYWJlbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICB9XG4gICAgICAud2V1aS1pbnB1dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbWluLWhlaWdodDogdW5pdCgoMzIvMTcpLCBlbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyDlpI3pgInmoYZcbiAgLndldWktY2VsbHNfY2hlY2tib3gge1xuICAgIC53ZXVpLWNoZWNrX19sYWJlbCB7XG4gICAgICAmOjpiZWZvcmUgeyBsZWZ0OiB+XCJjYWxjKDQwcHggKyB2YXIoLS13ZXVpLWNlbGxQYWRkaW5nTFIpKVwiOyB9XG4gICAgfVxuICB9XG5cblxuICAvLyDpgInmi6nmoYZcbiAgLndldWktY2VsbF9zZWxlY3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLndldWktY2VsbF9zZWxlY3QtYmVmb3JlIHtcbiAgICAud2V1aS1jZWxsX19oZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIOW8gOWFs1xuICAud2V1aS1jZWxsX3N3aXRjaCB7XG4gICAgcGFkZGluZzogMTJweCAxNnB4O1xuICB9XG59XG5cblxuLy8g5Y+N6Imy6KGo5Y2VXG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybS1wcmltYXJ5IHtcbiAgbWFyZ2luLXRvcDogMzJweDtcbiAgLndldWktY2VsbHMge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdldWktQkctMSk7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC53ZXVpLWNlbGxfYWNjZXNzLFxuICAud2V1aS1jZWxsX2FjdGl2ZSB7XG4gICAgJjphY3RpdmUge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5AaW1wb3J0IFwiLi4vd2V1aS1jZWxsL3dldWktY2VsbHNfX2dyb3VwXCI7XG5cbi53ZXVpLWZvcm0ge1xuICBwYWRkaW5nOiA1NnB4IDAgMDtcbiAgcGFkZGluZzogY2FsYyg1NnB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcClcIikgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHBhZGRpbmc6IGNhbGMoNTZweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKVwiKSBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcblxuICAud2V1aS1mb290ZXIsXG4gIC53ZXVpLWZvb3Rlcl9fbGluayB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG4ud2V1aS1mb3JtX19iZCB7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi53ZXVpLWZvcm1fX3RleHQtYXJlYSB7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWZvcm1fX2NvbnRyb2wtYXJlYSB7XG4gIGZsZXg6IDE7XG4gIG1hcmdpbjogNDhweCAwO1xufVxuLndldWktZm9ybV9fdGlwcy1hcmVhLFxuLndldWktZm9ybV9fZXh0cmEtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLndldWktZm9ybV9fZXh0cmEtYXJlYSB7XG4gIG1hcmdpbi10b3A6IDUycHg7XG59XG4ud2V1aS1mb3JtX19vcHItYXJlYSB7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5NnB4O1xuICB9XG4gICYgKyAud2V1aS1mb3JtX190aXBzLWFyZWEge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLndldWktZm9ybV9fdGlwcy1hcmVhIHtcbiAgJiArIC53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG4ud2V1aS1mb3JtX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzY7XG59XG4ud2V1aS1mb3JtX19kZXNjIHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuLndldWktZm9ybV9fdGlwcyB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYSxcbiAgbmF2aWdhdG9yIHtcbiAgICBjb2xvcjogQHdldWlMaW5rQ29sb3JEZWZhdWx0O1xuICB9XG4gIG5hdmlnYXRvciB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktYXJ0aWNsZSB7XG4gIHBhZGRpbmc6IDQ4cHggMjRweDtcbiAgcGFkZGluZzogNDhweCBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIGNhbGMoNDhweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpIGNhbGMoMjRweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KVwiKTtcbiAgcGFkZGluZzogNDhweCBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKSBjYWxjKDQ4cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIikgY2FsYygyNHB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KVwiKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgLmh5cGhlbnM7XG4gIHNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gICAgc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgICAgc2VjdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYgeyBsaW5lLWhlaWdodDogMS40OyB9XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIH1cbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgfVxuICAqIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cbiAgaW1nIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbjogMCAwIDI0cHg7XG4gIH1cbiAgb2wsXG4gIHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMS4yZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAmIG9sLFxuICAgICYgdWwge1xuICAgICAgbWFyZ2luOiAwLjVlbSAwIDAuNWVtIDEuMmVtO1xuICAgIH1cbiAgfVxuICBvbCB7XG4gICAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgfVxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogZGlzYztcbiAgfVxuICBsaSB7XG4gICAgbWFyZ2luOiAwLjVlbSAwO1xuICB9XG4gIC53ZXVpLWFydGljbGVfX2xpc3RfaW5zaWRlIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgfVxuICB9XG4gIC53ZXVpLWFydGljbGVfX2xpc3Rfbm9uZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuICAgIFxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLXRhYmJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JQcmltYXJ5O1xuXG4gICY6OmJlZm9yZSB7XG4gICAgLnNldFRvcExpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XG4gIH1cbn1cblxuLndldWktdGFiYmFyX19pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyg4cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoOHB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpO1xuICBmb250LXNpemU6IDA7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLnNldFRhcENvbG9yKCk7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gICAgcGFkZGluZy1sZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgfVxuXG4gICYud2V1aS1iYXJfX2l0ZW1fb24ge1xuICAgIC53ZXVpLXRhYmJhcl9faWNvbixcbiAgICAud2V1aS10YWJiYXJfX2ljb24gPiBpLFxuICAgIC53ZXVpLXRhYmJhcl9fbGFiZWwge1xuICAgICAgY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xuICAgIH1cbiAgfVxufVxuXG4ud2V1aS10YWJiYXJfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IHVuaXQoKChAd2V1aVRhYkJhckhlaWdodCAtIDgqMiAtIDEwKjEuNCAtIDIpLzEwKSwgZW0pO1xuICBoZWlnaHQ6IHVuaXQoKChAd2V1aVRhYkJhckhlaWdodCAtIDgqMiAtIDEwKjEuNCAtIDIpLzEwKSwgZW0pO1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG5cbiAgaSYsXG4gID4gaSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4ud2V1aS10YWJiYXJfX2xhYmVsIHtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1uYXZiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgcGFkZGluZy10b3A6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICBwYWRkaW5nLXRvcDogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuXG4gICY6OmFmdGVyIHtcbiAgICAuc2V0Qm90dG9tTGluZShAd2V1aUxpbmVDb2xvckxpZ2h0KTtcbiAgfVxuXG4gICYgKyAud2V1aS10YWJfX3BhbmVsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XG4gICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgfVxufVxuXG4ud2V1aS1uYXZiYXJfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiAxNnB4IDA7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDE2cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtdG9wKVwiKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTZweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKVwiKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGxpbmUtaGVpZ2h0OiB1bml0KCgoQHdldWlOYXZCYXJIZWlnaHQgLSAzMikgLyAxNykpO1xuICAuc2V0VGFwQ29sb3IoKTtcblxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCZ0NvbG9yQWN0aXZlO1xuICB9XG5cbiAgJi53ZXVpLWJhcl9faXRlbV9vbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCZ0NvbG9yQWN0aXZlO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIC5zZXRSaWdodExpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcbkBpbXBvcnQgXCJ3ZXVpLXRhYmJhclwiO1xuQGltcG9ydCBcIndldWktbmF2YmFyXCI7XG5cbi53ZXVpLXRhYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLndldWktdGFiX19wYW5lbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXg6IDE7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG4ud2V1aS10YWJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLXByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLndldWktcHJvZ3Jlc3NfX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpUHJvZ3Jlc3NCZztcbiAgaGVpZ2h0OiBAd2V1aVByb2dyZXNzSGVpZ2h0O1xuICBmbGV4OiAxO1xufVxuXG4ud2V1aS1wcm9ncmVzc19faW5uZXItYmFyIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlQcm9ncmVzc0NvbG9yO1xufVxuXG4ud2V1aS1wcm9ncmVzc19fb3ByIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBmb250LXNpemU6IDA7XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuXG4ud2V1aS1wYW5lbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICY6OmJlZm9yZSB7XG4gICAgLnNldFRvcExpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIC5zZXRCb3R0b21MaW5lKEB3ZXVpTGluZUNvbG9yTGlnaHQpO1xuICB9XG4gIC53ZXVpLWNlbGxzIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ud2V1aS1wYW5lbF9faGQge1xuICBwYWRkaW5nOiAxNnB4IDE2cHggMTNweDtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjphZnRlciB7XG4gICAgLnNldEJvdHRvbUxpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XG5cbiAgICBsZWZ0OiAxNXB4O1xuICB9XG59XG5cblxuXG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1tZWRpYS1ib3gge1xuICBwYWRkaW5nOiAxNnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6OmJlZm9yZSB7XG4gICAgLnNldFRvcExpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XG5cbiAgICBsZWZ0OiAxNnB4O1xuICB9XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGEmIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICAuc2V0VGFwQ29sb3IoKTtcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XG4gICAgfVxuICB9XG59XG4ud2V1aS1tZWRpYS1ib3hfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XG4gIC5lbGxpcHNpcygpO1xuICAuaHlwaGVucztcbn1cbi53ZXVpLW1lZGlhLWJveF9fZGVzYyB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgLmVsbGlwc2lzTG4oMik7XG4gIC5oeXBoZW5zO1xufVxuLndldWktbWVkaWEtYm94X19pbmZvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGlwcztcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLW1lZGlhLWJveF9faW5mb19fbWV0YSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG59XG4ud2V1aS1tZWRpYS1ib3hfX2luZm9fX21ldGFfZXh0cmEge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBAd2V1aVRleHRDb2xvclRpcHM7XG59XG4ud2V1aS1tZWRpYS1ib3hfYXBwbXNnIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLndldWktbWVkaWEtYm94X19oZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLndldWktbWVkaWEtYm94X190aHVtYiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG4gIC53ZXVpLW1lZGlhLWJveF9fYmQge1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG4ud2V1aS1tZWRpYS1ib3hfc21hbGwtYXBwbXNnIHtcbiAgcGFkZGluZzogMDtcbiAgLndldWktY2VsbHMge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktZ3JpZHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjo6YmVmb3JlIHtcbiAgICAuc2V0VG9wTGluZShAd2V1aUdyaWRCb3JkZXJDb2xvcik7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIC5zZXRMZWZ0TGluZShAd2V1aUdyaWRCb3JkZXJDb2xvcik7XG4gIH1cbn1cblxuLndldWktZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgd2lkdGg6IDEwMCUgLyBAd2V1aUdyaWRDb2x1bW5Db3VudDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAmOjpiZWZvcmUge1xuICAgIC5zZXRSaWdodExpbmUoQHdldWlHcmlkQm9yZGVyQ29sb3IpO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICAuc2V0Qm90dG9tTGluZShAd2V1aUdyaWRCb3JkZXJDb2xvcik7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCZ0NvbG9yQWN0aXZlO1xuICB9XG59XG5cbi53ZXVpLWdyaWRfX2ljb24ge1xuICB3aWR0aDogQHdldWlHcmlkSWNvblNpemU7XG4gIGhlaWdodDogQHdldWlHcmlkSWNvblNpemU7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgJiArIC53ZXVpLWdyaWRfX2xhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cbn1cblxuLndldWktZ3JpZF9fbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbiAgZm9udC1zaXplOiBAd2V1aUdyaWRGb250U2l6ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktZm9vdGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLmRhcmsoe1xuICAgIGNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtcbiAgfSk7XG5cbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGEsXG4gIG5hdmlnYXRvciB7XG4gICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcbiAgfVxuICBuYXZpZ2F0b3Ige1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuLndldWktZm9vdGVyX2ZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNnB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIik7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE2cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIik7XG4gIGxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIHJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbn1cbi53ZXVpLWZvb3Rlcl9fbGlua3Mge1xuICBmb250LXNpemU6IDA7XG59XG4ud2V1aS1mb290ZXJfX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbjogMCA4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICAmOjpiZWZvcmUge1xuICAgIC5zZXRMZWZ0TGluZSgpO1xuXG4gICAgbGVmdDogLThweDtcbiAgICB0b3A6IDAuMzZlbTtcbiAgICBib3R0b206IDAuMzZlbTtcbiAgfVxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbi53ZXVpLWZvb3Rlcl9fdGV4dCB7XG4gIHBhZGRpbmc6IDAgMTZweDtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndldWktZmxleF9faXRlbSB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1kaWFsb2cge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDUwMDA7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAxNnB4O1xuICByaWdodDogMTZweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpRGlhbG9nQmFja2dyb3VuZENvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogOTAlO1xuICBvdXRsaW5lOiAwO1xufVxuLndldWktZGlhbG9nX19oZCB7XG4gIHBhZGRpbmc6IDMycHggQHdldWlEaWFsb2dHYXBXaWR0aCAxNnB4O1xufVxuLndldWktZGlhbG9nX190aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1kaWFsb2dfX2JkIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBwYWRkaW5nOiAwIEB3ZXVpRGlhbG9nR2FwV2lkdGg7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgLmh5cGhlbnM7XG5cbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAzMnB4IEB3ZXVpRGlhbG9nR2FwV2lkdGggMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4ud2V1aS1kaWFsb2dfX2Z0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgLnNldFRvcExpbmUoQHdldWlEaWFsb2dMaW5lQ29sb3IpO1xuICB9XG59XG4ud2V1aS1kaWFsb2dfX2J0biB7XG4gIGZsZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogKDU2LTMyKS8xNztcbiAgcGFkZGluZzogMTZweCAwO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGNvbG9yOiBAd2V1aURpYWxvZ0xpbmtDb2xvcjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAuc2V0VGFwQ29sb3IoKTtcblxuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpRGlhbG9nTGlua0FjdGl2ZUJjO1xuICB9XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOy8v5YW85a655bCP56iL5bqP5peB55m954K55Ye75peg5pWIXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICAuc2V0TGVmdExpbmUoQHdldWlEaWFsb2dMaW5lQ29sb3IpO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4ud2V1aS1kaWFsb2dfX2J0bl9kZWZhdWx0IHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctSEFMRik7XG59XG5cbi53ZXVpLXNraW5fYW5kcm9pZCB7XG4gIC53ZXVpLWRpYWxvZyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3gtc2hhZG93OiAwIDZweCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG4gIC53ZXVpLWRpYWxvZ19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG4gIC53ZXVpLWRpYWxvZ19faGQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLndldWktZGlhbG9nX19iZCB7XG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XG4gICAgfVxuICB9XG4gIC53ZXVpLWRpYWxvZ19fZnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogMCBAd2V1aURpYWxvZ0dhcFdpZHRoIDE2cHg7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLndldWktZGlhbG9nX19idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHBhZGRpbmc6IDAgMC44ZW07XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOGVtO1xuICAgIH1cbiAgfVxuICAud2V1aS1kaWFsb2dfX2J0bl9kZWZhdWx0IHtcbiAgICBjb2xvcjogdmFyKC0td2V1aS1GRy1IQUxGKTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNTJweCkge1xuICAud2V1aS1kaWFsb2cge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbWluLWhlaWdodDogMjU1cHg7XG4gIG1heC1oZWlnaHQ6IDc1JTtcbiAgei1pbmRleDogNTAwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEycHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwIDI0cHg7XG4gIHBhZGRpbmc6IDAgY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gIHBhZGRpbmc6IDAgY2FsYygyNHB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG91dGxpbmU6IDA7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWRldmljZS1oZWlnaHQ6IDU1OHB4KSB7XG4gICAgbWF4LWhlaWdodDogflwiY2FsYygxMDAlIC0gMTZweClcIjtcbiAgfVxufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCB7XG4gIG1pbi1oZWlnaHQ6IDY0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gIC53ZXVpLWJ0bl9pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICY6YWN0aXZlIHsgb3BhY2l0eTogMC41OyB9XG4gIH1cbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04cHg7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19tYWluIHtcbiAgZmxleDogMTtcbiAgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZF9fc2lkZSArICYge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwIDQwcHg7XG4gIH1cbiAgJiArIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUge1xuICAgIHJpZ2h0OiAtOHB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgLy/lhbzlrrnogIHniYjmnKxcbiAgICAud2V1aS1pY29uLWJ0bixcbiAgICAud2V1aS1idG5faWNvbiB7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fc3VidGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19iZCB7XG4gIGZsZXg6IDE7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgLmh5cGhlbnMoKTtcblxuICBwYWRkaW5nLWJvdHRvbTogNTZweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX3RpcHMge1xuICBwYWRkaW5nLXRvcDogMTZweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZnQge1xuICBwYWRkaW5nOiAwIDAgNjRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC8vIOWFvOWuueaXp+eJiOayoeaciS53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYnRuLWFyZWHnmoTlnLrmma9cbiAgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMiksXG4gIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXJnaW46IDAgOHB4O1xuICAgIHdpZHRoOiAxMjBweDtcbiAgfVxufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19idG4tYXJlYSB7XG4gICYgKyAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2F0dGFjaG1lbnQtYXJlYSB7XG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMzRweDtcbiAgfVxufVxuXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfbGFyZ2Uge1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICB0b3A6IDE2cHg7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfc2xpZGUge1xuICAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDEycHggMTZweCAxNnB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fc2xpZGUtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTJweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLUJHLTApO1xuICAgIC5kYXJrKHtcbiAgICAgIGJhY2tncm91bmQ6dmFyKC0td2V1aS1GRy0zKTtcbiAgICB9KTtcblxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAud2V1aS1pY29uLWFycm93IHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIHdpZHRoOiAwLjhlbTtcbiAgICAgIGhlaWdodDogMS42ZW07XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIOaMiemSrue7hOawtOW5s+W4g+WxgOS4juWeguebtOW4g+WxgOWIh+aNolxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19idG4tYXJlYSB7XG4gIC53ZXVpQnRuV3JhcExheW91dERlZmF1bHQoKTtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19idG4td3JhcCB7XG4gIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYnRuLWFyZWEge1xuICAgIC53ZXVpQnRuV3JhcExheW91dFdyYXAoKTtcbiAgfVxufVxuXG5cbi53ZXVpLWljb24tbW9yZSB7XG4gIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFICAlM0NwYXRoIGZpbGwtb3BhY2l0eT0nLjknIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTUgMTAuMjVhMS43NSAxLjc1IDAgMSAxIDAgMy41IDEuNzUgMS43NSAwIDAgMSAwLTMuNXptNyAwYTEuNzUgMS43NSAwIDEgMSAwIDMuNSAxLjc1IDEuNzUgMCAwIDEgMC0zLjV6bTcgMGExLjc1IDEuNzUgMCAxIDEgMCAzLjUgMS43NSAxLjc1IDAgMCAxIDAtMy41eicvJTNFJTNDL3N2ZyUzRVwiKSBuby1yZXBlYXQgNTAlIDUwJTtcbn1cbi53ZXVpLWljb24tc2xpZGUtZG93biB7XG4gIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyUzRSAgJTNDZGVmcyUzRSAgICAlM0NyZWN0IGlkPSdkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYScgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB4PScwJyB5PScwJyByeD0nMTInLyUzRSAgJTNDL2RlZnMlM0UgICUzQ2cgZmlsbD0nbm9uZScgZmlsbC1ydWxlPSdldmVub2RkJyUzRSAgICAlM0NtYXNrIGlkPSdkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYicgZmlsbD0nJTIzZmZmJyUzRSAgICAgICUzQ3VzZSB4bGluazpocmVmPSclMjNkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYScvJTNFICAgICUzQy9tYXNrJTNFICAgICUzQ3VzZSBmaWxsPSclMjMwMDAnIGZpbGwtb3BhY2l0eT0nLjA1JyB4bGluazpocmVmPSclMjNkZGE5MDI2My1hMjkwLTQ1OTQtOTI2Zi02YWJhOGNiNDc3OWYtYScvJTNFICAgICUzQ2cgZmlsbC1vcGFjaXR5PScuOScgbWFzaz0ndXJsKCUyM2RkYTkwMjYzLWEyOTAtNDU5NC05MjZmLTZhYmE4Y2I0Nzc5Zi1iKSclM0UgICAgICAlM0NwYXRoIGZpbGw9JyUyMzAwMCcgZD0nTTExLjQwNyAxNS40NjRMNi42OTMgMTAuNzVsMS4xNzktMS4xNzkgNC4xMjUgNC4xMjUgNC4xMjQtNC4xMjVMMTcuMyAxMC43NWwtNC43MTQgNC43MTRhLjgzMy44MzMgMCAwIDEtMS4xNzkgMHonLyUzRSAgICAlM0MvZyUzRSAgJTNDL2clM0UlM0Mvc3ZnJTNFXCIpO1xufVxuXG5cbi8vIOS4i+mdouaYr+WFvOWuueaXp+eJiOacrOeUqOeahFxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCB7XG4gIC53ZXVpLWljb24tYnRuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICY6YWN0aXZlIHsgb3BhY2l0eTogMC41OyB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59XG4ud2V1aS1pY29uLWJ0biB7XG4gICYmIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbi53ZXVpLWljb24tYnRuX2dvYmFjayB7XG4gICYmIHtcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgd2lkdGg6IDAuNzFyZW07IC8vIOWtl+WPtzE3cHjkuIvnmoQxMnB4XG4gICAgaGVpZ2h0OiAxLjQycmVtO1xuICAgIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEwJTIwMTkuNDM4TDguOTU1JTIwMjAuNWwtNy42NjYtNy43OWExLjAyJTIwMS4wMiUyMDAlMjAwMTAtMS40Mkw4Ljk1NSUyMDMuNSUyMDEwJTIwNC41NjMlMjAyLjY4MiUyMDEyJTIwMTAlMjAxOS40Mzh6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgICBtYXNrLXNpemU6IDEwMCU7XG4gIH1cbn1cbi53ZXVpLWljb24tYnRuX2Nsb3NlIHtcbiAgJiYge1xuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB3aWR0aDogMS40MnJlbTtcbiAgICBoZWlnaHQ6IDEuNDJyZW07XG4gICAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuMjUlMjAxMC42OTNMNi4wNTclMjA0LjUlMjA1JTIwNS41NTdsNi4xOTMlMjA2LjE5M0w1JTIwMTcuOTQzJTIwNi4wNTclMjAxOWw2LjE5My02LjE5M0wxOC40NDMlMjAxOWwxLjA1Ny0xLjA1Ny02LjE5My02LjE5M0wxOS41JTIwNS41NTclMjAxOC40NDMlMjA0LjV6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgICBtYXNrLXNpemU6IDEwMCU7XG4gIH1cbn1cblxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLXRvYXN0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1NTAwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiAxMy42ZW07XG4gIGhlaWdodDogMTMuNmVtO1xuICB0b3A6IDQwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy00KTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi53ZXVpLXRvYXN0X3RleHQge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4td2lkdGg6IDE1MnB4O1xuICBtYXgtd2lkdGg6IDIxNnB4O1xuICBwYWRkaW5nOiAxMnB4IDA7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgLndldWktdG9hc3RfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cbi53ZXVpLWljb25fdG9hc3Qge1xuICAvLyDph43nva53ZXVpLWljb27mnYPph41cbiAgJiYge1xuICAgIHdpZHRoOiA0ZW07XG4gICAgaGVpZ2h0OiA0ZW07XG4gIH1cblxuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgJi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIH1cbiAgJi53ZXVpLWljb24td2FybiB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgfVxuICAmLndldWktbG9hZGluZyB7XG4gICAgd2lkdGg6IDFlbTtcbiAgICBoZWlnaHQ6IDFlbTtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gIH1cbiAgJi53ZXVpLXByaW1hcnktbG9hZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBjb2xvcjogI2VkZWRlZDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXdpZHRoOiA0cHggMCA0cHggNHB4O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IDRweCA0cHggNHB4IDA7XG4gICAgfVxuICAgIC53ZXVpLXByaW1hcnktbG9hZGluZ19fZG90IHtcbiAgICAgIHdpZHRoOiA0cHg7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgIH1cbiAgfVxufVxuXG4ud2V1aS10b2FzdF9fY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgcGFkZGluZzogMCAxMnB4O1xuICAuaHlwaGVucztcbn1cblxuLy8g5aSa6KGM5paH5pys5Zy65pmvXG4ud2V1aS10b2FzdF90ZXh0LW1vcmUge1xuICAud2V1aS1pY29uX3RvYXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG4gIC53ZXVpLXRvYXN0X19jb250ZW50IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxufVxuXG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktbWFzayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbi53ZXVpLW1hc2tfdHJhbnNwYXJlbnQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuQHdldWlBY3Rpb25TaGVldEFuZHJvaWRCb3JkZXJSYWRpdXM6IDJweDtcblxuLndldWktYWN0aW9uc2hlZXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwJSk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogNTAwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvclByaW1hcnk7XG4gIC8vc2xpZGUgdXAgYW5pbWF0aW9uXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMnB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3V0bGluZTogMDtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X190aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiA4cHggMjRweDtcbiAgcGFkZGluZzogOHB4IGNhbGMoMjRweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgOHB4IGNhbGMoMjRweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KVwiKTtcbiAgcGFkZGluZzogOHB4IGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIDhweCBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktQkctMik7XG4gICY6OmJlZm9yZSB7XG4gICAgLnNldEJvdHRvbUxpbmUoQHdldWlDZWxsQm9yZGVyQ29sb3IpO1xuICB9XG4gIC53ZXVpLWFjdGlvbnNoZWV0X190aXRsZS10ZXh0IHtcbiAgICAuZWxsaXBzaXNMbigyKTtcbiAgfVxufVxuLndldWktYWN0aW9uc2hlZXRfX21lbnUge1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X19hY3Rpb24ge1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICAud2V1aS1hY3Rpb25zaGVldF9fY2VsbCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKEB3ZXVpQ2VsbEdhcFYgflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKEB3ZXVpQ2VsbEdhcFYgflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIik7XG4gICAgfVxuICAgICYud2V1aS1hY3Rpb25zaGVldF9fY2VsbF90aXBzIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDEycHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTJweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53ZXVpLWFjdGlvbnNoZWV0X19jZWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBAd2V1aUNlbGxHYXBWO1xuICBwYWRkaW5nOiBAd2V1aUNlbGxHYXBWIGNhbGMoQHdldWlDZWxsR2FwViB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgQHdldWlDZWxsR2FwViBjYWxjKEB3ZXVpQ2VsbEdhcFYgflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gIHBhZGRpbmc6IEB3ZXVpQ2VsbEdhcFYgY2FsYyhAd2V1aUNlbGxHYXBWIH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgQHdldWlDZWxsR2FwViBjYWxjKEB3ZXVpQ2VsbEdhcFYgflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IEB3ZXVpQ2VsbExpbmVIZWlnaHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICY6OmJlZm9yZSB7XG4gICAgLnNldFRvcExpbmUoQHdldWlDZWxsQm9yZGVyQ29sb3IpO1xuICB9XG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XG4gIH1cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbF9fdGlwcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xufVxuLndldWktYWN0aW9uc2hlZXRfX2NlbGxfdGlwcyB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X19jZWxsX3dhcm4ge1xuICBjb2xvcjogQHdldWlDb2xvcldhcm47XG59XG5cblxuLy9hbmRyb2lkIGFjdGlvblNoZWV0XG4ud2V1aS1za2luX2FuZHJvaWQge1xuICAud2V1aS1hY3Rpb25zaGVldCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLy9wYWRkaW5nOiAwIDQwcHg7XG4gICAgd2lkdGg6IDI3NHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIC8vc2xpZGUgdXAgYW5pbWF0aW9uXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAud2V1aS1hY3Rpb25zaGVldF9fYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC53ZXVpLWFjdGlvbnNoZWV0X19tZW51IHtcbiAgICBib3JkZXItcmFkaXVzOiBAd2V1aUFjdGlvblNoZWV0QW5kcm9pZEJvcmRlclJhZGl1cztcbiAgICBib3gtc2hhZG93OiAwIDZweCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB9XG4gIC53ZXVpLWFjdGlvbnNoZWV0X19jZWxsIHtcbiAgICBwYWRkaW5nOiBAd2V1aUNlbGxHYXBWO1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBsaW5lLWhlaWdodDogQHdldWlDZWxsTGluZUhlaWdodDtcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogQHdldWlBY3Rpb25TaGVldEFuZHJvaWRCb3JkZXJSYWRpdXM7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogQHdldWlBY3Rpb25TaGVldEFuZHJvaWRCb3JkZXJSYWRpdXM7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAd2V1aUFjdGlvblNoZWV0QW5kcm9pZEJvcmRlclJhZGl1cztcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBAd2V1aUFjdGlvblNoZWV0QW5kcm9pZEJvcmRlclJhZGl1cztcbiAgICB9XG4gIH1cbn1cblxuLy9hY3Rpb25TaGVldCBhbmlhbXRpb25cbi53ZXVpLWFjdGlvbnNoZWV0X3RvZ2dsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG5cbi53ZXVpLWxvYWRtb3JlIHtcbiAgd2lkdGg6IDY1JTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwO1xuXG4gIC53ZXVpLWxvYWRpbmcsXG4gIC53ZXVpLXByaW1hcnktbG9hZGluZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIH1cbn1cbi53ZXVpLWxvYWRtb3JlX190aXBzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xufVxuXG4ud2V1aS1sb2FkbW9yZV9saW5lIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEB3ZXVpTGluZUNvbG9yTGlnaHQ7XG4gIG1hcmdpbi10b3A6IDMycHg7XG4gIC53ZXVpLWxvYWRtb3JlX190aXBzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMC45ZW07XG4gICAgcGFkZGluZzogMCA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgfVxufVxuLndldWktbG9hZG1vcmVfZG90IHtcbiAgLndldWktbG9hZG1vcmVfX3RpcHMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIHdpZHRoOiA0cHg7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpTGluZUNvbG9yTGlnaHQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICAgIHRvcDogLTAuMTZlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4xNWVtIDAuNGVtO1xuICBtaW4td2lkdGg6IHVuaXQoKDgvMTIpLCBlbSk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ29sb3JXYXJuO1xuICBjb2xvcjogI2ZmZjsgLy8g5Zu65a6a6Imy5YC8XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLndldWktYmFkZ2VfZG90IHtcbiAgcGFkZGluZzogMC40ZW07XG4gIG1pbi13aWR0aDogMDtcbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS10b3B0aXBzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRvcDogOHB4O1xuICBsZWZ0OiA4cHg7XG4gIHJpZ2h0OiA4cHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmOyAvLyDlm7rlrproibLlgLxcbiAgei1pbmRleDogNTUwMDtcbiAgLnRleHRfd3JhcCgpO1xufVxuLndldWktdG9wdGlwc193YXJuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlDb2xvcldhcm47XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuXG4uc2V0Q29sb3IoLS13ZXVpLWluZm9ybWF0aW9uQmFyLUZHLCNGRkZGRkYsI0ZGRkZGRik7XG4uc2V0Q29sb3IoLS13ZXVpLWluZm9ybWF0aW9uQmFyLUxJTkssI0ZGRkZGRiwjRkZGRkZGKTtcbi5zZXRDb2xvcigtLXdldWktaW5mb3JtYXRpb25CYXItSUNPTiwjRkZGRkZGLCNGRkZGRkYpO1xuLnNldENvbG9yKC0td2V1aS1pbmZvcm1hdGlvbkJhci1CRyxATElHSFRfUkVELEBEQVJLX1JFRCk7XG5cbi5zZXRDb2xvcigtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstRkcsQExJR0hUX0ZHXzEsQERBUktfRkdfMSk7XG4uc2V0Q29sb3IoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUxJTkssQExJR0hUX0xJTkssQERBUktfTElOSyk7XG4uc2V0Q29sb3IoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUlDT04sQExJR0hUX1JFRCxAREFSS19SRUQpO1xuLnNldENvbG9yKC0td2V1aS1pbmZvcm1hdGlvbkJhci13YXJuV2Vhay1CRyxATElHSFRfVEFHX0JBQ0tHUk9VTkRfUkVELEBEQVJLX1RBR19CQUNLR1JPVU5EX1JFRCk7XG5cbi5zZXRDb2xvcigtLXdldWktaW5mb3JtYXRpb25CYXItbm9Db2xvci1CRyxATElHSFRfRkdfMixAREFSS19GR18yKTtcblxuLnNldENvbG9yKC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzU3Ryb25nLUJHLEBMSUdIVF9PUkFOR0UsQERBUktfT1JBTkdFKTtcblxuLnNldENvbG9yKC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzV2Vhay1GRyxATElHSFRfRkdfMSxAREFSS19GR18xKTtcbi5zZXRDb2xvcigtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstTElOSyxATElHSFRfTElOSyxAREFSS19MSU5LKTtcbi5zZXRDb2xvcigtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstSUNPTixATElHSFRfRkdfMSxAREFSS19GR18xKTtcbi5zZXRDb2xvcigtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstQkcsQExJR0hUX0JHXzEsQERBUktfQkdfMSk7XG5cblxuXG4ud2V1aS1pbmZvcm1hdGlvbi1iYXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogOHB4O1xuICBsZWZ0OiA4cHg7XG4gIHJpZ2h0OiA4cHg7XG4gIHBhZGRpbmc6IDEycHggMTZweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHotaW5kZXg6IDU1MDA7XG4gIC50ZXh0X3dyYXAoKTtcblxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG5cbiAgLndldWktYnRuX2ljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuICB9XG5cbiAgLy8g5o2i6ImyXG4gIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLUZHKTtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci1CRyk7XG5cbiAgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLUlDT04pO1xuICB9XG5cbiAgLndldWktbGluayB7XG4gICAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItTElOSyk7XG4gIH1cblxuICAud2V1aS1idG5faWNvbiB7XG4gICAgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xuICAgICAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItRkcpO1xuICAgIH1cbiAgfVxufVxuLndldWktaW5mb3JtYXRpb24tYmFyLFxuLndldWktaW5mb3JtYXRpb24tYmFyX19oZCxcbi53ZXVpLWluZm9ybWF0aW9uLWJhcl9fZnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX19oZCB7XG4gIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxufVxuLndldWktaW5mb3JtYXRpb24tYmFyX19iZCB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3dhcm4td2VhayB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUZHKTtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci13YXJuV2Vhay1CRyk7XG5cbiAgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXdhcm5XZWFrLUlDT04pO1xuICB9XG5cbiAgLndldWktbGluayB7XG4gICAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstTElOSyk7XG4gIH1cblxuICAud2V1aS1idG5faWNvbiB7XG4gICAgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xuICAgICAgY29sb3I6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItd2FybldlYWstRkcpO1xuICAgIH1cbiAgfVxufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3dhcm4tbm8tY29sb3Ige1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLW5vQ29sb3ItQkcpO1xufVxuLndldWktaW5mb3JtYXRpb24tYmFyX3RpcHMtc3Ryb25nIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzU3Ryb25nLUJHKTtcbn1cbi53ZXVpLWluZm9ybWF0aW9uLWJhcl90aXBzLXdlYWsge1xuICBjb2xvcjogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzV2Vhay1GRyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktaW5mb3JtYXRpb25CYXItdGlwc1dlYWstQkcpO1xuXG4gIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgICBjb2xvcjogdmFyKC0td2V1aS1pbmZvcm1hdGlvbkJhci10aXBzV2Vhay1JQ09OKTtcbiAgfVxuXG4gIC53ZXVpLWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUxJTkspO1xuICB9XG5cbiAgLndldWktYnRuX2ljb24ge1xuICAgIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgICAgIGNvbG9yOiB2YXIoLS13ZXVpLWluZm9ybWF0aW9uQmFyLXRpcHNXZWFrLUZHKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1saXN0LXRpcHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLXRvcDogMjRweDtcbiAgcGFkZGluZy1ib3R0b206IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC5zZXRUb3BMaW5lKHZhcigtLXdldWktRkctMykpO1xuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cbi53ZXVpLWxpc3QtdGlwc19faXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW46IDE2cHggMDtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAyMlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLTAuMWVtO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLndldWktZm9ybS1wcmV2aWV3X19saXN0ICsgLndldWktbGlzdC10aXBzID4gJiB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgfVxuICB9XG59XG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5Ad2V1aVNlYXJjaElucHV0SGVpZ2h0OjMycHg7XG5cbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XG4ud2V1aS1zZWFyY2gtYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvckRlZmF1bHQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICYud2V1aS1zZWFyY2gtYmFyX2ZvY3VzaW5nIHtcbiAgICAud2V1aS1zZWFyY2gtYmFyX19jYW5jZWwtYnRuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAud2V1aS1zZWFyY2gtYmFyX19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC53ZXVpLWljb24tc2VhcmNoIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgd2lkdGg6IDEuNmVtO1xuICAgIGhlaWdodDogMS42ZW07XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxufVxuLndldWktc2VhcmNoLWJhcl9fZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4ud2V1aS1zZWFyY2gtYmFyX19ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgLndldWktc2VhcmNoLWJhcl9faW5wdXQge1xuICAgIHBhZGRpbmc6IDhweCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdW5pdCgoQHdldWlTZWFyY2hJbnB1dEhlaWdodCAtIDE2cHgpKS8xNGVtO1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IHVuaXQoKEB3ZXVpU2VhcmNoSW5wdXRIZWlnaHQgLSAxNnB4KSkvMTRlbTtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjYXJldC1jb2xvcjogQHdldWlDb2xvclByaW1hcnk7XG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuICAud2V1aS1pY29uLWNsZWFyIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgd2lkdGg6IDJlbTtcbiAgICBoZWlnaHQ6IDJlbTtcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgIG1hc2stc2l6ZTogMmVtO1xuICAgIG1hc2stcG9zaXRpb246IH5cImNhbGMoMTAwJSAtIDhweClcIiAwO1xuICAgIG1pbi13aWR0aDogNDRweDtcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgfVxuICB9XG59XG4ud2V1aS1zZWFyY2gtYmFyX19sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBmb250LXNpemU6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktQkctMik7XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuLndldWktc2VhcmNoLWJhcl9fY2FuY2VsLWJ0biB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcbn1cbi53ZXVpLXNlYXJjaC1iYXJfX2lucHV0Om5vdCg6dmFsaWQpICsgLndldWktaWNvbi1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8v5bmy5o6JaW5wdXRbc2VhcmNoXem7mOiupOeahGNsZWFyIGJ1dHRvblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuQHBpY2tlckl0ZW1IZWlnaHQ6IDU2cHg7XG4ud2V1aS1waWNrZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDUwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgcGFkZGluZy1yaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwJSk7XG4gIC8vc2xpZGUgdXAgYW5pbWF0aW9uXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICBvdXRsaW5lOiAwO1xuXG4gIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGQge1xuICAgIHBhZGRpbmctbGVmdDogMjRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICB9XG4gIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYmQge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG59XG5cbi53ZXVpLXBpY2tlcl9faGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxNnB4O1xuICBwYWRkaW5nOiAxNnB4IGNhbGMoMTZweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgMTZweCBjYWxjKDE2cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XG4gIHBhZGRpbmc6IDE2cHggY2FsYygxNnB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgMTZweCBjYWxjKDE2cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICAmOjphZnRlciB7XG4gICAgLnNldEJvdHRvbUxpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XG4gIH1cbn1cblxuLndldWktcGlja2VyX19iZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgaGVpZ2h0OiAyNDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLndldWktcGlja2VyX19ncm91cCB7XG4gIGZsZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDE3cHg7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIC53ZXVpLXBpY2tlcl9faW5kaWNhdG9yIHtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDhweDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDhweDtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAud2V1aS1waWNrZXJfX2luZGljYXRvciB7XG4gICAgICByaWdodDogOHB4O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDhweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA4cHg7XG4gICAgfVxuICB9XG59XG5cbi53ZXVpLXBpY2tlcl9fbWFzayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpKSwgbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KSk7XG4gIC5kYXJrKHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1LCAyNSwgMjUsIDAuOTUpLCByZ2JhKDI1LCAyNSwgMjUsIDAuNikpLCBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgyNSwgMjUsIDI1LCAwLjk1KSwgcmdiYSgyNSwgMjUsIDI1LCAwLjYpKTtcbiAgfSk7XG4gICAgXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCwgYm90dG9tO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgKDIgKiBAcGlja2VySXRlbUhlaWdodCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cblxuLndldWktcGlja2VyX19pbmRpY2F0b3Ige1xuICBoZWlnaHQ6IEBwaWNrZXJJdGVtSGVpZ2h0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTEycHg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLUJHLTMpO1xufVxuXG4ud2V1aS1waWNrZXJfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi53ZXVpLXBpY2tlcl9faXRlbSB7XG4gIGhlaWdodDogQHBpY2tlckl0ZW1IZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBAcGlja2VySXRlbUhlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi53ZXVpLXBpY2tlcl9faXRlbV9kaXNhYmxlZCB7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuQGtleWZyYW1lcyB3ZXVpU2xpZGVVcCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4ud2V1aS1hbmltYXRlX3NsaWRlLXVwLFxuLndldWktYW5pbWF0ZS1zbGlkZS11cCB7XG4gIGFuaW1hdGlvbjogd2V1aVNsaWRlVXAgZWFzZSAwLjNzIGZvcndhcmRzO1xufVxuXG5Aa2V5ZnJhbWVzIHdldWlTbGlkZURvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuLndldWktYW5pbWF0ZV9zbGlkZS1kb3duLFxuLndldWktYW5pbWF0ZS1zbGlkZS1kb3duIHtcbiAgYW5pbWF0aW9uOiB3ZXVpU2xpZGVEb3duIGVhc2UgMC4zcyBmb3J3YXJkcztcbn1cblxuQGtleWZyYW1lcyB3ZXVpRmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ud2V1aS1hbmltYXRlX2ZhZGUtaW4sXG4ud2V1aS1hbmltYXRlLWZhZGUtaW4ge1xuICBhbmltYXRpb246IHdldWlGYWRlSW4gZWFzZSAwLjNzIGZvcndhcmRzO1xufVxuXG5Aa2V5ZnJhbWVzIHdldWlGYWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ud2V1aS1hbmltYXRlX2ZhZGUtb3V0LFxuLndldWktYW5pbWF0ZS1mYWRlLW91dCB7XG4gIGFuaW1hdGlvbjogd2V1aUZhZGVPdXQgZWFzZSAwLjNzIGZvcndhcmRzO1xufVxuXG5cbi8vIHRyYW5zaXRpb25cbi8v5qih5oCB5by556qXL+aPkOekuue7hOS7tumAmueUqOaYvuekulxuLndldWktdHJhbnNpdGlvbiB7XG4gICYud2V1aS1tYXNrIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHZpc2liaWxpdHkgMC4zcztcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAmLndldWktaGFsZi1zY3JlZW4tZGlhbG9nIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cbn1cbi53ZXVpLXRyYW5zaXRpb25fc2hvdyB7XG4gICYud2V1aS1tYXNrIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgJi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG4ud2V1aS1hZ3JlZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAuaHlwaGVucztcblxuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LXNpemU6IDE0cHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcblxuICBhLFxuICBuYXZpZ2F0b3Ige1xuICAgIGNvbG9yOiBAd2V1aUxpbmtDb2xvckRlZmF1bHQ7XG4gIH1cbiAgbmF2aWdhdG9yIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbn1cbi53ZXVpLWFncmVlX190ZXh0IHtcbiAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgbWluLXdpZHRoOiAwO1xufVxuLndldWktYWdyZWVfX2NoZWNrYm94IHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgbWFzay1wb3NpdGlvbjogMCAwO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IDEwMCU7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMDAwJTIyJTIwaGVpZ2h0JTNEJTIyMTAwMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNTAwJTIwOTE2LjY2N0MyNjkuODgxJTIwOTE2LjY2NyUyMDgzLjMzMyUyMDczMC4xMTklMjA4My4zMzMlMjA1MDAlMjA4My4zMzMlMjAyNjkuODgxJTIwMjY5Ljg4MSUyMDgzLjMzMyUyMDUwMCUyMDgzLjMzM2MyMzAuMTE5JTIwMCUyMDQxNi42NjclMjAxODYuNTQ4JTIwNDE2LjY2NyUyMDQxNi42NjclMjAwJTIwMjMwLjExOS0xODYuNTQ4JTIwNDE2LjY2Ny00MTYuNjY3JTIwNDE2LjY2N3ptMC01MGMyMDIuNTA0JTIwMCUyMDM2Ni42NjctMTY0LjE2MyUyMDM2Ni42NjctMzY2LjY2NyUyMDAtMjAyLjUwNC0xNjQuMTYzLTM2Ni42NjctMzY2LjY2Ny0zNjYuNjY3LTIwMi41MDQlMjAwLTM2Ni42NjclMjAxNjQuMTYzLTM2Ni42NjclMjAzNjYuNjY3JTIwMCUyMDIwMi41MDQlMjAxNjQuMTYzJTIwMzY2LjY2NyUyMDM2Ni42NjclMjAzNjYuNjY3eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBmaWxsLW9wYWNpdHklM0QlMjIuOSUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG4gIGNvbG9yOiBAd2V1aUxpbmVDb2xvckRhcms7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLndldWktYWdyZWVfX2NoZWNrYm94LWNoZWNrIHsgLy8g5YW85a655bCP56iL5bqPXG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS1hZ3JlZV9fY2hlY2tib3g6Y2hlY2tlZCxcbi53ZXVpLWFncmVlX19jaGVja2JveC1jaGVja1thcmlhLWNoZWNrZWQ9XCJ0cnVlXCJdICsgLndldWktYWdyZWVfX2NoZWNrYm94IHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptLTEuMTc3LTcuODZsLTIuNzY1LTIuNzY3TDclMjAxMi40MzFsMy4xMTklMjAzLjEyMWExJTIwMSUyMDAlMjAwMDEuNDE0JTIwMGw1Ljk1Mi01Ljk1LTEuMDYyLTEuMDYyLTUuNiUyMDUuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xuICBjb2xvcjogQHdldWlDb2xvclByaW1hcnk7XG59XG4ud2V1aS1hZ3JlZV9hbmltYXRlIHtcbiAgYW5pbWF0aW9uOiB3ZXVpQWdyZWUgMC4zcyAxO1xufVxuXG5Aa2V5ZnJhbWVzIHdldWlBZ3JlZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxNiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOHB4KTtcbiAgfVxuXG4gIDI4JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNnB4KTtcbiAgfVxuXG4gIDQ0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgNTklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE2cHgpO1xuICB9XG5cbiAgNzMlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA4MiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNnB4KTtcbiAgfVxuXG4gIDk0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbiIsIi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xuXG5cbi8vIGNzc+eUu+eahOWchuWciGxvYWRpbmdcblxuLy8g6buY6K6k6ImyXG4ud2V1aS1wcmltYXJ5LWxvYWRpbmcge1xuICBmb250LXNpemU6IDE2cHg7XG4gIC5zZXRDaXJjbGVMb2FkaW5nKCM2MDYwNjAsMWVtLDAuMDg3NWVtKTtcbn1cblxuLy8g6Lef6ZqP57O757uf5YiH5o2i55qE5ZOB54mM6ImyXG4ud2V1aS1wcmltYXJ5LWxvYWRpbmdfYnJhbmQge1xuICBjb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG59XG5cbi8vIOWbuuWumueZveiJsuWNiumAj+aYjlxuLndldWktcHJpbWFyeS1sb2FkaW5nX3RyYW5zcGFyZW50IHtcbiAgY29sb3I6ICNlZGVkZWQ7XG59XG5cblxuIiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbi5zZXRDaXJjbGVMb2FkaW5nKEBjb2xvcjpjdXJyZW50Q29sb3IsQHNpemU6ODBweCxAd2lkZTo3cHgpIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IEBzaXplO1xuICBoZWlnaHQ6IEBzaXplO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb2xvcjogQGNvbG9yO1xuICBhbmltYXRpb246IGNpcmNsZUxvYWRpbmcgMXMgc3RlcHMoNjAsIGVuZCkgaW5maW5pdGU7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogQHNpemUvMjtcbiAgICBoZWlnaHQ6IEBzaXplO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm9yZGVyOiBAd2lkZSBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IEBzaXplO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IEBzaXplO1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAxKSA4JSwgcmdiYSgwLCAwLCAwLCAwLjMpIDk1JSk7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBAc2l6ZTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogQHNpemU7XG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDApIDglLCByZ2JhKDAsIDAsIDAsIDAuMykgOTUlKTtcbiAgfVxuICAmX19kb3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtQHdpZGUvMjtcbiAgICB3aWR0aDogQHdpZGU7XG4gICAgaGVpZ2h0OiBAd2lkZTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTAwJTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIH1cblxuICBAa2V5ZnJhbWVzIGNpcmNsZUxvYWRpbmcge1xuICAgIDAlIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDM2MGRlZyk7XG4gICAgfVxuICB9XG59XG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcbkBpbXBvcnQgXCIuL3dldWktcHJpbWFyeS1sb2FkaW5nXCI7XG5cbi53ZXVpLWxvYWRpbmcge1xuICBmb250LXNpemU6IDE2cHg7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0MlM0Z4bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnJTNGJTNFJTNDc3ZnIHdpZHRoPSc4MHB4JyBoZWlnaHQ9JzgwcHgnIHZpZXdCb3g9JzAgMCA4MCA4MCcgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJyUzRSUzQ3RpdGxlJTNFbG9hZGluZyUzQy90aXRsZSUzRSUzQ2RlZnMlM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nOTQuMDg2OTE0MSUyNScgeTE9JzAlMjUnIHgyPSc5NC4wODY5MTQxJTI1JyB5Mj0nOTAuNTU5MDgyJTI1JyBpZD0nbGluZWFyR3JhZGllbnQtMSclM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyMzYwNjA2MCcgc3RvcC1vcGFjaXR5PScwJyBvZmZzZXQ9JzAlMjUnJTNFJTNDL3N0b3AlM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyMzYwNjA2MCcgc3RvcC1vcGFjaXR5PScwLjMnIG9mZnNldD0nMTAwJTI1JyUzRSUzQy9zdG9wJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDbGluZWFyR3JhZGllbnQgeDE9JzEwMCUyNScgeTE9JzguNjczNzA2MDUlMjUnIHgyPScxMDAlMjUnIHkyPSc5MC42Mjg2NjIxJTI1JyBpZD0nbGluZWFyR3JhZGllbnQtMiclM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyMzYwNjA2MCcgb2Zmc2V0PScwJTI1JyUzRSUzQy9zdG9wJTNFJTNDc3RvcCBzdG9wLWNvbG9yPSclMjM2MDYwNjAnIHN0b3Atb3BhY2l0eT0nMC4zJyBvZmZzZXQ9JzEwMCUyNSclM0UlM0Mvc3RvcCUzRSUzQy9saW5lYXJHcmFkaWVudCUzRSUzQy9kZWZzJTNFJTNDZyBzdHJva2U9J25vbmUnIHN0cm9rZS13aWR0aD0nMScgZmlsbD0nbm9uZScgZmlsbC1ydWxlPSdldmVub2RkJyBvcGFjaXR5PScwLjknJTNFJTNDZyUzRSUzQ3BhdGggZD0nTTQwLDAgQzYyLjA5MTM5LDAgODAsMTcuOTA4NjEgODAsNDAgQzgwLDYyLjA5MTM5IDYyLjA5MTM5LDgwIDQwLDgwIEw0MCw3MyBDNTguMjI1Mzk2Nyw3MyA3Myw1OC4yMjUzOTY3IDczLDQwIEM3MywyMS43NzQ2MDMzIDU4LjIyNTM5NjcsNyA0MCw3IEw0MCwwIFonIGZpbGw9J3VybCglMjNsaW5lYXJHcmFkaWVudC0xKSclM0UlM0MvcGF0aCUzRSUzQ3BhdGggZD0nTTQwLDAgTDQwLDcgQzIxLjc3NDYwMzMsNyA3LDIxLjc3NDYwMzMgNyw0MCBDNyw1OC4yMjUzOTY3IDIxLjc3NDYwMzMsNzMgNDAsNzMgTDQwLDgwIEMxNy45MDg2MSw4MCAwLDYyLjA5MTM5IDAsNDAgQzAsMTcuOTA4NjEgMTcuOTA4NjEsMCA0MCwwIFonIGZpbGw9J3VybCglMjNsaW5lYXJHcmFkaWVudC0yKSclM0UlM0MvcGF0aCUzRSUzQ2NpcmNsZSBpZD0nT3ZhbCcgZmlsbD0nJTIzNjA2MDYwJyBjeD0nNDAuNScgY3k9JzMuNScgcj0nMy41JyUzRSUzQy9jaXJjbGUlM0UlM0MvZyUzRSUzQ2FuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0ndHJhbnNmb3JtJyBiZWdpbj0nMHMnIGR1cj0nMXMnIHR5cGU9J3JvdGF0ZScgdmFsdWVzPScwIDQwIDQwOzM2MCA0MCA0MCcgcmVwZWF0Q291bnQ9J2luZGVmaW5pdGUnLyUzRSUzQy9nJTNFJTNDL3N2ZyUzRSUwQVwiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcblxuICAmLndldWktbG9hZGluZ190cmFuc3BhcmVudCxcbiAgJi53ZXVpLWljb25fdG9hc3QsXG4gIC53ZXVpLWJ0bl9sb2FkaW5nLndldWktYnRuX3ByaW1hcnkgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQyUzRnhtbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSdVVEYtOCclM0YlM0UlM0Nzdmcgd2lkdGg9JzgwcHgnIGhlaWdodD0nODBweCcgdmlld0JveD0nMCAwIDgwIDgwJyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnJTNFJTNDdGl0bGUlM0Vsb2FkaW5nJTNDL3RpdGxlJTNFJTNDZGVmcyUzRSUzQ2xpbmVhckdyYWRpZW50IHgxPSc5NC4wODY5MTQxJTI1JyB5MT0nMCUyNScgeDI9Jzk0LjA4NjkxNDElMjUnIHkyPSc5MC41NTkwODIlMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0xJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzZWRlZGVkJyBzdG9wLW9wYWNpdHk9JzAnIG9mZnNldD0nMCUyNSclM0UlM0Mvc3RvcCUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzZWRlZGVkJyBzdG9wLW9wYWNpdHk9JzAuMycgb2Zmc2V0PScxMDAlMjUnJTNFJTNDL3N0b3AlM0UlM0MvbGluZWFyR3JhZGllbnQlM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nMTAwJTI1JyB5MT0nOC42NzM3MDYwNSUyNScgeDI9JzEwMCUyNScgeTI9JzkwLjYyODY2MjElMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0yJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzZWRlZGVkJyBvZmZzZXQ9JzAlMjUnJTNFJTNDL3N0b3AlM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyM2VkZWRlZCcgc3RvcC1vcGFjaXR5PScwLjMnIG9mZnNldD0nMTAwJTI1JyUzRSUzQy9zdG9wJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDL2RlZnMlM0UlM0NnIHN0cm9rZT0nbm9uZScgc3Ryb2tlLXdpZHRoPScxJyBmaWxsPSdub25lJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnIG9wYWNpdHk9JzAuOSclM0UlM0NnJTNFJTNDcGF0aCBkPSdNNDAsMCBDNjIuMDkxMzksMCA4MCwxNy45MDg2MSA4MCw0MCBDODAsNjIuMDkxMzkgNjIuMDkxMzksODAgNDAsODAgTDQwLDczIEM1OC4yMjUzOTY3LDczIDczLDU4LjIyNTM5NjcgNzMsNDAgQzczLDIxLjc3NDYwMzMgNTguMjI1Mzk2Nyw3IDQwLDcgTDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTEpJyUzRSUzQy9wYXRoJTNFJTNDcGF0aCBkPSdNNDAsMCBMNDAsNyBDMjEuNzc0NjAzMyw3IDcsMjEuNzc0NjAzMyA3LDQwIEM3LDU4LjIyNTM5NjcgMjEuNzc0NjAzMyw3MyA0MCw3MyBMNDAsODAgQzE3LjkwODYxLDgwIDAsNjIuMDkxMzkgMCw0MCBDMCwxNy45MDg2MSAxNy45MDg2MSwwIDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTIpJyUzRSUzQy9wYXRoJTNFJTNDY2lyY2xlIGlkPSdPdmFsJyBmaWxsPSclMjNlZGVkZWQnIGN4PSc0MC41JyBjeT0nMy41JyByPSczLjUnJTNFJTNDL2NpcmNsZSUzRSUzQy9nJTNFJTNDYW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSd0cmFuc2Zvcm0nIGJlZ2luPScwcycgZHVyPScxcycgdHlwZT0ncm90YXRlJyB2YWx1ZXM9JzAgNDAgNDA7MzYwIDQwIDQwJyByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJTBBXCIpO1xuICB9XG59XG5cbi53ZXVpLW1hc2stbG9hZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQyUzRnhtbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSdVVEYtOCclM0YlM0UlM0Nzdmcgd2lkdGg9JzgwcHgnIGhlaWdodD0nODBweCcgdmlld0JveD0nMCAwIDgwIDgwJyB2ZXJzaW9uPScxLjEnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnJTNFJTNDdGl0bGUlM0Vsb2FkaW5nJTNDL3RpdGxlJTNFJTNDZGVmcyUzRSUzQ2xpbmVhckdyYWRpZW50IHgxPSc5NC4wODY5MTQxJTI1JyB5MT0nMCUyNScgeDI9Jzk0LjA4NjkxNDElMjUnIHkyPSc5MC41NTkwODIlMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0xJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBzdG9wLW9wYWNpdHk9JzAnIG9mZnNldD0nMCUyNSclM0UlM0Mvc3RvcCUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBzdG9wLW9wYWNpdHk9JzAuMycgb2Zmc2V0PScxMDAlMjUnJTNFJTNDL3N0b3AlM0UlM0MvbGluZWFyR3JhZGllbnQlM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nMTAwJTI1JyB5MT0nOC42NzM3MDYwNSUyNScgeDI9JzEwMCUyNScgeTI9JzkwLjYyODY2MjElMjUnIGlkPSdsaW5lYXJHcmFkaWVudC0yJyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNjA2MDYwJyBvZmZzZXQ9JzAlMjUnJTNFJTNDL3N0b3AlM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyMzYwNjA2MCcgc3RvcC1vcGFjaXR5PScwLjMnIG9mZnNldD0nMTAwJTI1JyUzRSUzQy9zdG9wJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDL2RlZnMlM0UlM0NnIHN0cm9rZT0nbm9uZScgc3Ryb2tlLXdpZHRoPScxJyBmaWxsPSdub25lJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnIG9wYWNpdHk9JzAuOSclM0UlM0NnJTNFJTNDcGF0aCBkPSdNNDAsMCBDNjIuMDkxMzksMCA4MCwxNy45MDg2MSA4MCw0MCBDODAsNjIuMDkxMzkgNjIuMDkxMzksODAgNDAsODAgTDQwLDczIEM1OC4yMjUzOTY3LDczIDczLDU4LjIyNTM5NjcgNzMsNDAgQzczLDIxLjc3NDYwMzMgNTguMjI1Mzk2Nyw3IDQwLDcgTDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTEpJyUzRSUzQy9wYXRoJTNFJTNDcGF0aCBkPSdNNDAsMCBMNDAsNyBDMjEuNzc0NjAzMyw3IDcsMjEuNzc0NjAzMyA3LDQwIEM3LDU4LjIyNTM5NjcgMjEuNzc0NjAzMyw3MyA0MCw3MyBMNDAsODAgQzE3LjkwODYxLDgwIDAsNjIuMDkxMzkgMCw0MCBDMCwxNy45MDg2MSAxNy45MDg2MSwwIDQwLDAgWicgZmlsbD0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTIpJyUzRSUzQy9wYXRoJTNFJTNDY2lyY2xlIGlkPSdPdmFsJyBmaWxsPSclMjM2MDYwNjAnIGN4PSc0MC41JyBjeT0nMy41JyByPSczLjUnJTNFJTNDL2NpcmNsZSUzRSUzQy9nJTNFJTNDYW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVOYW1lPSd0cmFuc2Zvcm0nIGJlZ2luPScwcycgZHVyPScxcycgdHlwZT0ncm90YXRlJyB2YWx1ZXM9JzAgNDAgNDA7MzYwIDQwIDQwJyByZXBlYXRDb3VudD0naW5kZWZpbml0ZScvJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJTBBXCIpIDAgMCBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgY29sb3I6ICM2MDYwNjA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB3ZXVpTG9hZGluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgd2V1aUxvYWRpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMzYwZGVnKTtcbiAgfVxufVxuXG4iLCIvKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcblxuLndldWktc2xpZGVyIHtcbiAgcGFkZGluZzogMTVweCAxOHB4O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLndldWktc2xpZGVyX19pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpTGluZUNvbG9yTGlnaHQ7XG59XG5cbi53ZXVpLXNsaWRlcl9fdHJhY2sge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xuICB3aWR0aDogMDtcbn1cblxuLndldWktc2xpZGVyX19oYW5kbGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNHB4O1xuICBtYXJnaW4tdG9wOiAtMTRweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyAvLyDlm7rlrproibLlgLxcbiAgYm94LXNoYWRvdzogMCAwIDRweCB2YXIoLS13ZXVpLUZHLTMpO1xufVxuXG5cbi53ZXVpLXNsaWRlci1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAud2V1aS1zbGlkZXIge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbi53ZXVpLXNsaWRlci1ib3hfX3ZhbHVlIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBtaW4td2lkdGg6IDI0cHg7XG4gIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuIl19 */
