/*!
 * WeUI v2.5.0 (https://github.com/weui/weui)
 * Copyright 2025 Tencent, Inc.
 * Licensed under the MIT license
 */
body {
  --weui-BTN-DISABLED-FONT-COLOR: rgba(0, 0, 0, 0.2);
}

body[data-weui-theme='dark'] {
  --weui-BTN-DISABLED-FONT-COLOR: rgba(255, 255, 255, 0.2);
}

@media (prefers-color-scheme:dark) {
  body:not([data-weui-theme='light']) {
    --weui-BTN-DISABLED-FONT-COLOR: rgba(255, 255, 255, 0.2);
  }
}

body {
  --weui-BTN-DEFAULT-BG: #f2f2f2;
}

body[data-weui-theme='dark'] {
  --weui-BTN-DEFAULT-BG: rgba(255, 255, 255, 0.08);
}

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

body {
  --weui-BTN-DEFAULT-COLOR: #06ae56;
}

body[data-weui-theme='dark'] {
  --weui-BTN-DEFAULT-COLOR: rgba(255, 255, 255, 0.8);
}

@media (prefers-color-scheme:dark) {
  body:not([data-weui-theme='light']) {
    --weui-BTN-DEFAULT-COLOR: rgba(255, 255, 255, 0.8);
  }
}

body {
  --weui-BTN-DEFAULT-ACTIVE-BG: #e6e6e6;
}

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

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

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

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

@media (prefers-color-scheme:dark) {
  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: -apple-system-font,"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 {
  --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.5);
  --weui-FG-2: rgba(0, 0, 0, 0.3);
  --weui-FG-3: rgba(0, 0, 0, 0.1);
  --weui-RED: #fa5151;
  --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-LINK-ACTIVE: rgba(87, 107, 149, 0.5);
  --weui-TEXTGREEN: #06ae56;
  --weui-FG: black;
  --weui-BG: white;
  --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);
}

@media (prefers-color-scheme:dark) {
  body:not([data-weui-theme='light']) {
    --weui-BG-0: #111111;
    --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.05);
    --weui-RED: #fa5151;
    --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-LINK-ACTIVE: rgba(125, 144, 169, 0.5);
    --weui-TEXTGREEN: #259c5c;
    --weui-FG: white;
    --weui-BG: black;
    --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);
  }
}

body[data-weui-theme='dark'] {
  --weui-BG-0: #111111;
  --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.05);
  --weui-RED: #fa5151;
  --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-LINK-ACTIVE: rgba(125, 144, 169, 0.5);
  --weui-TEXTGREEN: #259c5c;
  --weui-FG: white;
  --weui-BG: black;
  --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);
}

body {
  --weui-BG-COLOR-ACTIVE: #ececec;
}

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

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

[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-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%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2010.586l5.657-5.657%201.414%201.414L13.414%2012l5.657%205.657-1.414%201.414L12%2013.414l-5.657%205.657-1.414-1.414L10.586%2012%204.929%206.343%206.343%204.93%2012%2010.586z%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%2010.586l5.657-5.657%201.414%201.414L13.414%2012l5.657%205.657-1.414%201.414L12%2013.414l-5.657%205.657-1.414-1.414L10.586%2012%204.929%206.343%206.343%204.93%2012%2010.586z%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
}

.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.5);
  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.5);
  color: var(--weui-FG-1);
}

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

.weui-icon-arrow,.weui-icon-arrow-bold,.weui-icon-back-arrow,.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 {
  width: 6.4em;
  height: 6.4em;
}

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

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

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

.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-hidden-space:empty:before {
  content: "\00A0";
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.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%;
  background: rgba(255,255,255,0);
}

.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 {
  position: relative;
  z-index: 1;
}

.weui-wa-hotarea_before:before,.weui-wa-hotarea: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%;
  background: rgba(255,255,255,0);
}

.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-btn {
  position: relative;
  display: block;
  width: 184px;
  margin-left: auto;
  margin-right: auto;
  padding: 8px 24px;
  box-sizing: border-box;
  font-weight: 700;
  font-size: 17px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  line-height: 1.88235294;
  border-radius: 8px;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.weui-btn_block {
  width: auto;
}

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

.weui-btn_default {
  color: #06ae56;
  color: var(--weui-BTN-DEFAULT-COLOR);
  background-color: #f2f2f2;
  background-color: var(--weui-BTN-DEFAULT-BG);
}

.weui-btn_default:not(.weui-btn_disabled):visited {
  color: #06ae56;
  color: var(--weui-BTN-DEFAULT-COLOR);
}

.weui-btn_default:not(.weui-btn_disabled):active {
  background-color: #e6e6e6;
  background-color: var(--weui-BTN-DEFAULT-ACTIVE-BG);
}

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

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

.weui-btn_primary:not(.weui-btn_disabled):active {
  background-color: #06ae56;
  background-color: var(--weui-TAG-TEXT-GREEN);
}

.weui-btn_warn {
  color: #fa5151;
  color: var(--weui-RED);
  background-color: #f2f2f2;
  background-color: var(--weui-BTN-DEFAULT-BG);
}

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

.weui-btn_warn:not(.weui-btn_disabled):active {
  background-color: #e6e6e6;
  background-color: var(--weui-BTN-DEFAULT-ACTIVE-BG);
}

.weui-btn_disabled,.weui-btn[disabled] {
  color: rgba(0,0,0,0.2);
  color: var(--weui-BTN-DISABLED-FONT-COLOR);
  background-color: #f2f2f2;
  background-color: var(--weui-BTN-DEFAULT-BG);
}

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

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

.weui-btn_loading.weui-btn_primary {
  background-color: #06ae56;
  background-color: var(--weui-TAG-TEXT-GREEN);
  color: #fff;
  color: var(--weui-WHITE);
}

.weui-btn_loading.weui-btn_default {
  background-color: #e6e6e6;
  background-color: var(--weui-BTN-DEFAULT-ACTIVE-BG);
}

.weui-btn_loading.weui-btn_warn {
  background-color: #e6e6e6;
  background-color: var(--weui-BTN-DEFAULT-ACTIVE-BG);
}

.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 {
  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;
}

.weui-bottom-fixed-opr: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);
}

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

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

body[data-weui-theme='dark'] .weui-bottom-fixed-opr: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) {
  body:not([data-weui-theme='light']) .weui-bottom-fixed-opr:before {
    background: -webkit-linear-gradient(bottom,#191919,rgba(25,25,25,0));
    background: linear-gradient(to top,#191919,rgba(25,25,25,0));
  }
}

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

.weui-half-screen-dialog.weui-half-screen-dialog_bottom-fixed .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.weui-half-screen-dialog_bottom-fixed .weui-half-screen-dialog__bd {
  padding-bottom: 64px;
}

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

.weui-half-screen-dialog.weui-half-screen-dialog_bottom-fixed .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.weui-half-screen-dialog_bottom-fixed .weui-bottom-fixed-opr-page {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  min-height: 0;
}

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

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_mini {
  display: inline-block;
  width: auto;
  padding: 0 12px;
  line-height: 2;
  font-size: 16px;
  border-radius: 6px;
}

.weui-btn_xmini {
  display: inline-block;
  width: auto;
  padding: 0 12px;
  line-height: 2;
  font-size: 14px;
  border-radius: 2.8px;
}

.weui-btn:not(.weui-btn_mini)+.weui-btn:not(.weui-btn_mini) {
  margin-top: 16px;
}

.weui-btn.weui-btn_inline+.weui-btn.weui-btn_inline {
  margin-top: auto;
  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;
}

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

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

.weui-cells {
  margin-top: 8px;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  line-height: 1.41176471;
  font-size: 17px;
  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.5);
  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.5);
  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;
}

.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 {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

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

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

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

.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: block;
  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 {
  background-color: #ececec;
  background-color: var(--weui-BG-COLOR-ACTIVE);
}

.weui-cell_access .weui-cell__ft {
  padding-right: 22px;
  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);
  font-size: 17px;
}

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

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

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

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

.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-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;
  line-height: inherit;
  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-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-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.5);
  -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.5);
  color: var(--weui-FG-1);
}

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

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

.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.5);
  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;
  min-width: 4em;
  color: rgba(0,0,0,0.5);
  color: var(--weui-FG-1);
  text-align: justify;
  text-align-last: justify;
}

.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;
  text-align-last: unset;
  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-select {
  padding-right: 30px;
}

.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;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-cell_select-before {
  -webkit-box-align: initial;
  -webkit-align-items: initial;
  align-items: initial;
  padding-right: 16px;
}

.weui-cell_select-before .weui-select {
  width: 105px;
  box-sizing: border-box;
}

.weui-cell_select-before .weui-cell__hd {
  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;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

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

.weui-cell_select-before.weui-cell_access .weui-cell__hd {
  line-height: 56px;
  padding-left: 32px;
}

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

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

.weui-cell_select-after.weui-cell_access .weui-cell__bd {
  line-height: 56px;
}

.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: rgba(87,107,149,0.5);
  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;
  padding-bottom: 0;
  padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
  background-color: #0d0d0d;
  color: #fff;
  color: var(--weui-WHITE);
  line-height: 60px;
  text-align: center;
}

.weui-gallery__del {
  display: block;
}

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

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

.weui-switch,.weui-switch-cp__box {
  position: relative;
  width: 52px;
  height: 32px;
  border: 2px solid rgba(0,0,0,0.1);
  border: 2px solid var(--weui-FG-3);
  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:before,.weui-switch-cp__box:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  border-radius: 15px;
  background-color: #f7f7f7;
  background-color: var(--weui-BG-3);
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.45,1,0.4,1);
  transition: -webkit-transform 0.35s cubic-bezier(0.45,1,0.4,1);
  transition: transform 0.35s cubic-bezier(0.45,1,0.4,1);
  transition: transform 0.35s cubic-bezier(0.45,1,0.4,1),-webkit-transform 0.35s cubic-bezier(0.45,1,0.4,1);
}

.weui-switch:after,.weui-switch-cp__box:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 28px;
  height: 28px;
  border-radius: 15px;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,0.4);
  -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 {
  border-color: #07c160;
  border-color: var(--weui-BRAND);
  background-color: #07c160;
  background-color: var(--weui-BRAND);
}

.weui-switch:checked:before,.weui-switch-cp__input:checked+.weui-switch-cp__box:before,.weui-switch-cp__input[aria-checked="true"]+.weui-switch-cp__box:before {
  -webkit-transform: scale(0);
  transform: scale(0);
}

.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-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: 16px;
  -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;
}

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

@media (prefers-color-scheme:dark) {
  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;
}

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) {
  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: 32px;
}

.weui-uploader__input-box:after {
  width: 32px;
  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: 400;
  font-size: 22px;
  color: #191919;
  -webkit-text-stroke: 0.02em;
}

body[data-weui-theme='dark'] .weui-msg__title {
  color: #D1D1D1;
}

@media (prefers-color-scheme:dark) {
  body:not([data-weui-theme='light']) .weui-msg__title {
    color: #D1D1D1;
  }
}

@supports (-webkit-overflow-scrolling:touch) {
  .weui-msg__title {
    font-weight: 500;
    -webkit-text-stroke: initial;
  }
}

.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.5);
  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:before,.weui-msg__custom-area .weui-cells__group_form .weui-cells:after {
  left: 0;
  right: 0;
}

.weui-msg__custom-area .weui-cells__group_form .weui-cell {
  padding-left: 0;
  padding-right: 0;
}

.weui-msg__custom-area .weui-cells__group_form .weui-cell:before {
  left: 0;
  right: 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: 12px;
  color: rgba(0,0,0,0.5);
  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.5);
  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;
}

.weui-cells__group {
  border: 0;
}

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

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

.weui-cells__group_form .weui-cells:before,.weui-cells__group_form .weui-cell:before {
  left: 32px;
  right: 32px;
}

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

.weui-cells__group_form .weui-cells:after {
  left: 32px;
  right: 32px;
}

.weui-cells__group_form .weui-cell {
  padding: 16px 32px;
}

.weui-cells__group_form .weui-cell:not(.weui-cell_link) {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-cells__group_form .weui-cell__hd {
  padding-right: 16px;
}

.weui-cells__group_form .weui-cell__ft {
  padding-left: 16px;
}

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

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

.weui-cells__group_form .weui-cells__tips {
  margin-top: 8px;
  padding: 0 32px;
  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-cell_select {
  padding: 0;
}

.weui-cells__group_form .weui-cell_select .weui-select {
  padding: 0 32px;
}

.weui-cells__group_form .weui-cell_select .weui-cell__bd:after {
  right: 32px;
}

.weui-cells__group_form .weui-cell_select-before .weui-label {
  margin-right: 24px;
}

.weui-cells__group_form .weui-cell_select-before .weui-select {
  padding-right: 24px;
  box-sizing: initial;
}

.weui-cells__group_form .weui-cell_select-after {
  padding-left: 32px;
}

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

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

.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: 2em;
  color: #06ae56;
  color: var(--weui-BTN-DEFAULT-COLOR);
  background-color: #f2f2f2;
  background-color: var(--weui-BTN-DEFAULT-BG);
}

.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-cell_vcode.weui-cell_wrap .weui-btn_reset {
  margin-right: 12px;
}

.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 .weui-agree {
  padding: 0;
}

.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 40px;
}

.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.5);
  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: 24px 16px;
  padding: 24px calc(16px + constant(safe-area-inset-right)) calc(24px + constant(safe-area-inset-bottom)) calc(16px + constant(safe-area-inset-left));
  padding: 24px calc(16px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));
  font-size: 17px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.weui-article section {
  margin-bottom: 1.5em;
}

.weui-article h1 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 0.9em;
  line-height: 1.4;
}

.weui-article h2 {
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 0.34em;
  line-height: 1.4;
}

.weui-article h3 {
  font-weight: 700;
  font-size: 15px;
  margin-bottom: 0.34em;
  line-height: 1.4;
}

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

.weui-article p {
  margin: 0 0 0.8em;
}

.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.5);
  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.5);
  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__hd {
  padding: 16px 16px 13px;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  font-size: 15px;
  font-weight: 300;
  position: relative;
}

.weui-panel__hd:after {
  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.3);
  color: var(--weui-FG-2);
  font-size: 14px;
  line-height: 1.4;
  text-align: center;
}

.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;
}

#introduction {
  height: 120px;
}

#position {
  height: 100px;
}

.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%;
}

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

.weui-dialog__title {
  font-weight: 700;
  font-size: 17px;
  line-height: 1.4;
}

.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.5);
  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);
  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.5);
  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;
  max-height: 75%;
  z-index: 5000;
  line-height: 1.4;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  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));
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
}

@media only screen and (max-height:558px) {
  .weui-half-screen-dialog {
    max-height: none;
  }
}

.weui-half-screen-dialog__hd {
  font-size: 8px;
  height: 8em;
  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-icon-btn {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.weui-half-screen-dialog__hd .weui-icon-btn: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 {
  right: 0;
}

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

.weui-half-screen-dialog__subtitle {
  display: block;
  color: rgba(0,0,0,0.5);
  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;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
  padding-top: 4px;
  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 {
  width: 184px;
  padding-left: 16px;
  padding-right: 16px;
}

.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 {
  margin: 0 8px;
  width: 136px;
}

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

.weui-half-screen-dialog__ft .weui-btn:nth-last-child(n+2):last-child,.weui-half-screen-dialog__ft .weui-btn:nth-last-child(n+2)+.weui-btn:last-child {
  margin-right: 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-half-screen-dialog__attachment-area {
  margin-top: 24px;
  margin-bottom: -34px;
}

.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-more {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  -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%;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: currentColor;
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
}

.weui-icon-btn_goback {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  display: inline-block;
  vertical-align: middle;
  width: 12px;
  height: 24px;
  -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: cover;
  mask-size: cover;
  background-color: currentColor;
}

.weui-icon-btn_close {
  color: rgba(0,0,0,0.9);
  color: var(--weui-FG-0);
  display: inline-block;
  vertical-align: middle;
  width: 14px;
  height: 24px;
  -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: cover;
  mask-size: cover;
  background-color: currentColor;
}

.weui-toast {
  position: fixed;
  z-index: 5000;
  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;
}

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

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

.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: 36px;
  height: 36px;
}

.weui-icon_toast.weui-primary-loading {
  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;
}

.weui-actionsheet__title {
  position: relative;
  height: 56px;
  padding: 0 24px;
  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.5);
  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);
  padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
}

.weui-actionsheet__cell {
  position: relative;
  padding: 16px;
  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_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.9);
  color: var(--weui-FG-0);
}

.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 0.55em;
  background-color: #fff;
  background-color: var(--weui-BG-2);
  color: rgba(0,0,0,0.5);
  color: var(--weui-FG-1);
}

.weui-loadmore_dot .weui-loadmore__tips {
  padding: 0 0.16em;
}

.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: 5000;
  word-wrap: break-word;
  word-break: break-all;
}

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

.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.5);
  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.5);
  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-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
  -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;
}

.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%;
}

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

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

.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% 92px;
  background-repeat: no-repeat;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

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) {
  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 {
  width: 100%;
  height: 56px;
  position: absolute;
  left: 0;
  top: 92px;
  z-index: 3;
}

.weui-picker__indicator: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-picker__indicator: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__content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.weui-picker__item {
  height: 48px;
  line-height: 48px;
  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.5);
  color: var(--weui-FG-1);
}

@-webkit-keyframes slideUp {
  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 slideUp {
  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 {
  -webkit-animation: slideUp ease 0.3s forwards;
  animation: slideUp ease 0.3s forwards;
}

@-webkit-keyframes slideDown {
  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 slideDown {
  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 {
  -webkit-animation: slideDown ease 0.3s forwards;
  animation: slideDown ease 0.3s forwards;
}

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

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

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

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

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

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

.weui-agree {
  display: block;
  padding: 8px 15px 0;
  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.5);
  color: var(--weui-FG-1);
  margin-left: 2px;
}

.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;
  margin-top: -0.2em;
}

.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.125em 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.0625em;
  width: 0.125em;
  height: 0.125em;
  border-top-right-radius: 0.125em;
  border-bottom-right-radius: 0.125em;
  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: 10px;
  width: 2em;
  height: 2em;
  display: inline-block;
  vertical-align: middle;
  -webkit-animation: weuiLoading 1s steps(12,end) infinite;
  animation: weuiLoading 1s steps(12,end) infinite;
  background: transparent url("data:image/svg+xml;charset=utf8, %3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 100 100'%3E%3Cpath fill='none' d='M0 0h100v100H0z'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23E9E9E9' rx='5' ry='5' transform='translate(0 -30)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23989697' rx='5' ry='5' transform='rotate(30 105.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%239B999A' rx='5' ry='5' transform='rotate(60 75.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23A3A1A2' rx='5' ry='5' transform='rotate(90 65 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23ABA9AA' rx='5' ry='5' transform='rotate(120 58.66 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23B2B2B2' rx='5' ry='5' transform='rotate(150 54.02 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23BAB8B9' rx='5' ry='5' transform='rotate(180 50 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23C2C0C1' rx='5' ry='5' transform='rotate(-150 45.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23CBCBCB' rx='5' ry='5' transform='rotate(-120 41.34 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23D2D2D2' rx='5' ry='5' transform='rotate(-90 35 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23DADADA' rx='5' ry='5' transform='rotate(-60 24.02 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='%23E2E2E2' rx='5' ry='5' transform='rotate(-30 -5.98 65)'/%3E%3C/svg%3E") no-repeat;
  background-size: 100%;
}

.weui-loading.weui-loading_transparent,.weui-btn_loading.weui-btn_primary .weui-loading {
  background-image: url("data:image/svg+xml;charset=utf8, %3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 100 100'%3E%3Cpath fill='none' d='M0 0h100v100H0z'/%3E%3Crect xmlns='http://www.w3.org/2000/svg' width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.56)' rx='5' ry='5' transform='translate(0 -30)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.5)' rx='5' ry='5' transform='rotate(30 105.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.43)' rx='5' ry='5' transform='rotate(60 75.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.38)' rx='5' ry='5' transform='rotate(90 65 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.32)' rx='5' ry='5' transform='rotate(120 58.66 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.28)' rx='5' ry='5' transform='rotate(150 54.02 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.25)' rx='5' ry='5' transform='rotate(180 50 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.2)' rx='5' ry='5' transform='rotate(-150 45.98 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.17)' rx='5' ry='5' transform='rotate(-120 41.34 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.14)' rx='5' ry='5' transform='rotate(-90 35 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.1)' rx='5' ry='5' transform='rotate(-60 24.02 65)'/%3E%3Crect width='7' height='20' x='46.5' y='40' fill='rgba(255,255,255,.03)' rx='5' ry='5' transform='rotate(-30 -5.98 65)'/%3E%3C/svg%3E");
}

@-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.5);
  color: var(--weui-FG-1);
  text-align: center;
  font-size: 14px;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlL2Jhc2UvdGhlbWUvZm4ubGVzcyIsInN0eWxlL3dldWkuY3NzIiwic3R5bGUvYmFzZS9yZXNldC5sZXNzIiwic3R5bGUvYmFzZS9taXhpbi9tb2JpbGUubGVzcyIsInN0eWxlL2Jhc2UvdGhlbWUvaW5kZXgubGVzcyIsInN0eWxlL2Jhc2UvdGhlbWUvdmFycy9saWdodC5sZXNzIiwic3R5bGUvYmFzZS90aGVtZS92YXJzL2RhcmsubGVzcyIsInN0eWxlL2ljb24vd2V1aS1pY29uLmxlc3MiLCJzdHlsZS9iYXNlL2ExMXkubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRleHQvd2V1aS1saW5rLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1idXR0b24vd2V1aS1idG5fZ2xvYmFsLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1idXR0b24vd2V1aS1idG5fZGVmYXVsdC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYnV0dG9uL3dldWktYnRuX3ByaW1hcnkubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWJ1dHRvbi93ZXVpLWJ0bl93YXJuLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1idXR0b24vd2V1aS1idG5fZGlzYWJsZWQubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWJ1dHRvbi93ZXVpLWJ0bl9sb2FkaW5nLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1idXR0b24vd2V1aS1idG5fY2VsbC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYnV0dG9uL3dldWktYnRuX2JvdHRvbS1maXhlZC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYnV0dG9uL3dldWktYnV0dG9uLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktY2VsbF9nbG9iYWwubGVzcyIsInN0eWxlL2Jhc2UvbWl4aW4vc2V0T25lcHgubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1jZWxsX3N3aXBlZC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWFjY2Vzcy5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWNoZWNrL3dldWktY2hlY2tfY29tbW9uLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktY2hlY2svd2V1aS1yYWRpby5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWNoZWNrL3dldWktY2hlY2tib3gubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1mb3JtL3dldWktZm9ybV9jb21tb24ubGVzcyIsInN0eWxlL2Jhc2UvbWl4aW4vdGV4dC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLWZvcm0vd2V1aS1mb3JtLXByZXZpZXcubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWNlbGwvd2V1aS1mb3JtL3dldWktc2VsZWN0Lmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktZm9ybS93ZXVpLXZjb2RlLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktZ2FsbGVyeS5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLXN3aXRjaC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktY2VsbC93ZXVpLXVwbG9hZGVyLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1wYWdlL3dldWktbXNnLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1jZWxsL3dldWktY2VsbHNfX2dyb3VwLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1wYWdlL3dldWktZm9ybS5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktcGFnZS93ZXVpLWFydGljbGUubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRhYi93ZXVpLXRhYmJhci5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktdGFiL3dldWktbmF2YmFyLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10YWIvd2V1aS10YWIubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXByb2dyZXNzL3dldWktcHJvZ3Jlc3MubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXBhbmVsL3dldWktcGFuZWwubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLW1lZGlhLWJveC93ZXVpLW1lZGlhLWJveC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktZ3JpZC93ZXVpLWdyaWQubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWZvb3Rlci93ZXVpLWZvb3Rlci5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktZmxleC93ZXVpLWZsZXgubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRpcHMvd2V1aS1kaWFsb2cubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRpcHMvd2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRpcHMvd2V1aS10b2FzdC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktdGlwcy93ZXVpLW1hc2subGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRpcHMvd2V1aS1hY3Rpb25zaGVldC5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktdGlwcy93ZXVpLWxvYWRtb3JlLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10aXBzL3dldWktYmFkZ2UubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXRpcHMvd2V1aS10b3B0aXBzLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS10aXBzL3dldWktbGlzdC10aXBzLmxlc3MiLCJzdHlsZS93aWRnZXQvd2V1aS1zZWFyY2hiYXIvd2V1aS1zZWFyY2hiYXIubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXBpY2tlci93ZXVpLXBpY2tlci5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktYW5pbWF0ZS93ZXVpLWFuaW1hdGUubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWFncmVlL3dldWktYWdyZWUubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLWxvYWRpbmcvd2V1aS1wcmltYXJ5LWxvYWRpbmcubGVzcyIsInN0eWxlL2Jhc2UvbWl4aW4vc2V0TG9hZGluZy5sZXNzIiwic3R5bGUvd2lkZ2V0L3dldWktbG9hZGluZy93ZXVpLWxvYWRpbmcubGVzcyIsInN0eWxlL3dpZGdldC93ZXVpLXNsaWRlci93ZXVpLXNsaWRlci5sZXNzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBMkJJO0VBTlEsa0RBQUE7Q0NpS1g7QUR4Skc7RUFQUSx3REFBQTtDQ2tLWDtBRHZKRztFQUNJO0lBWkksd0RBQUE7R0NzS1Q7Q0FDRjtBRG5LRztFQU5RLDhCQUFBO0NDNEtYO0FEbktHO0VBUFEsZ0RBQUE7Q0M2S1g7QURsS0c7RUFDSTtJQVpJLGdEQUFBO0dDaUxUO0NBQ0Y7QUQ5S0c7RUFOUSxpQ0FBQTtDQ3VMWDtBRDlLRztFQVBRLGtEQUFBO0NDd0xYO0FEN0tHO0VBQ0k7SUFaSSxrREFBQTtHQzRMVDtDQUNGO0FEekxHO0VBTlEscUNBQUE7Q0NrTVg7QUR6TEc7RUFQUSx3REFBQTtDQ21NWDtBRHhMRztFQUNJO0lBWkksd0RBQUE7R0N1TVQ7Q0FDRjtBRHBNRztFQU5RLDRDQUFBO0NDeVFYO0FEaFFHO0VBUFEsa0RBQUE7Q0MwUVg7QUQvUEc7RUFDSTtJQVpJLGtEQUFBO0dDOFFUO0NBQ0Y7QUNwUkQ7RUFDSSwwQkFBQTtFQUNBLDhCQUFBO0NEc1JIO0FDblJEO0VBQ0ksZ0JBQUE7RUFDQSw2REFBQTtDRHFSSDtBQ2xSRDtFQUNJLFNBQUE7RUFDQSxVQUFBO0VBQ0EsVUFBQTtDRG9SSDtBQ2pSRDtFQUNJLFNBQUE7Q0RtUkg7QUNoUkQ7RUFDSSxxQkFBQTtFQ3RCQSw2Q0FBQTtDRnlTSDtBQ2hSRDs7RUFFSSw4QkFBQTtDRGtSSDtBQ2hSRDtFQUNJLHVCQUFBO0NEa1JIO0FDblJEO0VBQ0ksdUJBQUE7Q0RrUkg7QUdoVUQ7RUNBSSxvQkFBQTtFQUNBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSwrQkFBQTtFQUNBLGtDQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0VBQ0EsbUJBQUE7RUFDQSxzQkFBQTtFQUNBLHNCQUFBO0VBQ0EscUJB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NENBQUE7WUFBQSxvQ0FBQTtHN0QwNElMO0NBQ0Y7QThENTZJRDtFQUNJLGtCQUFBO0VBQ0EseUJBQUE7VUFBQSxpQkFBQTtDOUQ2N0lIO0E4RDE3SUQ7RUFDSSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxrQ0FBQTtDOUQ0N0lIO0E4RHo3SUQ7RUFDSSxZQUFBO0VBQ0EsbUNBQUE7RUFDQSxRQUFBO0M5RDI3SUg7QThEeDdJRDtFQUNJLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0Esb0NBQUE7QzlEMDdJSDtBOER0N0lEO0VBQ0ksb0JBQUE7RUFBQSxxQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtFQUFBLDJCQUFBO1VBQUEsbUJBQUE7QzlEdzdJSDtBOEQxN0lEO0VBSVEsbUJBQUE7RUFBQSxlQUFBO1VBQUEsT0FBQTtDOUR5N0lQO0E4RHQ3SUQ7RUFDSSxrQkFBQTtFQUNBLGVBQUE7RUFDQSx1QkFBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtDOUR3N0lIIiwiZmlsZSI6InN0eWxlL3dldWkuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAndmFycy9saWdodCc7XHJcbkBpbXBvcnQgJ3ZhcnMvZGFyayc7XHJcblxyXG4uZGFyayhAcnVsZSkge1xyXG4gICAgYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAmIHtcclxuICAgICAgICBAcnVsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcclxuICAgICAgICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAmIHtcclxuICAgICAgICAgICAgQHJ1bGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZXRDb2xvcihAdmFyLCBAY29sb3IpIHtcclxuICAgIC5zZXRDb2xvcihAdmFyLCBAY29sb3IsIEBjb2xvcik7XHJcbn1cclxuXHJcbi5zZXRDb2xvcihAdmFyLCBAbGlnaHQsIEBkYXJrKSB7XHJcbiAgICAuX3NldENvbG9yKHtcclxuICAgICAgICAgICAgQHt2YXJ9OiBAbGlnaHQ7XHJcbiAgICB9LCB7XHJcbiAgICAgICAgICAgIEB7dmFyfTogQGRhcms7XHJcbiAgICB9KTtcclxufVxyXG4uX3NldENvbG9yKEBsaWdodFJ1bGUsIEBkYXJrUnVsZSkge1xyXG4gICAgYm9keSB7XHJcbiAgICAgICAgQGxpZ2h0UnVsZSgpO1xyXG4gICAgfVxyXG4gICAgYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XHJcbiAgICAgICAgQGRhcmtSdWxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xyXG4gICAgICAgIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcclxuICAgICAgICAgICAgQGRhcmtSdWxlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKlxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbipcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5ib2R5IHtcbiAgLS13ZXVpLUJUTi1ESVNBQkxFRC1GT05ULUNPTE9SOiByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLUJUTi1ESVNBQkxFRC1GT05ULUNPTE9SOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktQlROLURJU0FCTEVELUZPTlQtQ09MT1I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgfVxufVxuYm9keSB7XG4gIC0td2V1aS1CVE4tREVGQVVMVC1CRzogI2YyZjJmMjtcbn1cbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktQlROLURFRkFVTFQtQkc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktQlROLURFRkFVTFQtQkc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIH1cbn1cbmJvZHkge1xuICAtLXdldWktQlROLURFRkFVTFQtQ09MT1I6ICMwNmFlNTY7XG59XG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLUJUTi1ERUZBVUxULUNPTE9SOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktQlROLURFRkFVTFQtQ09MT1I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgfVxufVxuYm9keSB7XG4gIC0td2V1aS1CVE4tREVGQVVMVC1BQ1RJVkUtQkc6ICNlNmU2ZTY7XG59XG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLUJUTi1ERUZBVUxULUFDVElWRS1CRzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyNik7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktQlROLURFRkFVTFQtQUNUSVZFLUJHOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTI2KTtcbiAgfVxufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5ib2R5IHtcbiAgLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcbiAgLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktRElBTE9HLUxJTkUtQ09MT1I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgfVxufVxuaHRtbCB7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0tZm9udCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xufVxuKiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbn1cbmEgaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIGNhcmV0LWNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbn1cbmJvZHkge1xuICAtLXdldWktQkctMDogI2VkZWRlZDtcbiAgLS13ZXVpLUJHLTE6ICNmN2Y3Zjc7XG4gIC0td2V1aS1CRy0yOiAjZmZmO1xuICAtLXdldWktQkctMzogI2Y3ZjdmNztcbiAgLS13ZXVpLUJHLTQ6ICM0YzRjNGM7XG4gIC0td2V1aS1CRy01OiAjZmZmO1xuICAtLXdldWktRkctMDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICAtLXdldWktRkctSEFMRjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICAtLXdldWktRkctMTogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAtLXdldWktRkctMjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAtLXdldWktRkctMzogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtLXdldWktUkVEOiAjZmE1MTUxO1xuICAtLXdldWktT1JBTkdFOiAjZmE5ZDNiO1xuICAtLXdldWktWUVMTE9XOiAjZmZjMzAwO1xuICAtLXdldWktR1JFRU46ICM5MWQzMDA7XG4gIC0td2V1aS1MSUdIVEdSRUVOOiAjOTVlYzY5O1xuICAtLXdldWktQlJBTkQ6ICMwN2MxNjA7XG4gIC0td2V1aS1CTFVFOiAjMTBhZWZmO1xuICAtLXdldWktSU5ESUdPOiAjMTQ4NWVlO1xuICAtLXdldWktUFVSUExFOiAjNjQ2N2YwO1xuICAtLXdldWktV0hJVEU6ICNmZmY7XG4gIC0td2V1aS1MSU5LOiAjNTc2Yjk1O1xuICAtLXdldWktTElOSy1BQ1RJVkU6IHJnYmEoODcsIDEwNywgMTQ5LCAwLjUpO1xuICAtLXdldWktVEVYVEdSRUVOOiAjMDZhZTU2O1xuICAtLXdldWktRkc6IGJsYWNrO1xuICAtLXdldWktQkc6IHdoaXRlO1xuICAtLXdldWktVEFHLVRFWFQtT1JBTkdFOiAjZmE5ZDNiO1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtT1JBTkdFOiByZ2JhKDI1MCwgMTU3LCA1OSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUdSRUVOOiAjMDZhZTU2O1xuICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMVUU6ICMxMGFlZmY7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC4xKTtcbiAgLS13ZXVpLVRBRy1URVhULUJMQUNLOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1CTEFDSzogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xuICAgIC0td2V1aS1CRy0wOiAjMTExMTExO1xuICAgIC0td2V1aS1CRy0xOiAjMWUxZTFlO1xuICAgIC0td2V1aS1CRy0yOiAjMTkxOTE5O1xuICAgIC0td2V1aS1CRy0zOiAjMjAyMDIwO1xuICAgIC0td2V1aS1CRy00OiAjNDA0MDQwO1xuICAgIC0td2V1aS1CRy01OiAjMmMyYzJjO1xuICAgIC0td2V1aS1GRy0wOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgLS13ZXVpLUZHLUhBTEY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgICAtLXdldWktRkctMTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgIC0td2V1aS1GRy0yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgLS13ZXVpLUZHLTM6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gICAgLS13ZXVpLVJFRDogI2ZhNTE1MTtcbiAgICAtLXdldWktT1JBTkdFOiAjYzg3ZDJmO1xuICAgIC0td2V1aS1ZRUxMT1c6ICNjYzljMDA7XG4gICAgLS13ZXVpLUdSRUVOOiAjNzRhODAwO1xuICAgIC0td2V1aS1MSUdIVEdSRUVOOiAjM2ViNTc1O1xuICAgIC0td2V1aS1CUkFORDogIzA3YzE2MDtcbiAgICAtLXdldWktQkxVRTogIzEwYWVmZjtcbiAgICAtLXdldWktSU5ESUdPOiAjMTE5NmZmO1xuICAgIC0td2V1aS1QVVJQTEU6ICM4MTgzZmY7XG4gICAgLS13ZXVpLVdISVRFOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgLS13ZXVpLUxJTks6ICM3ZDkwYTk7XG4gICAgLS13ZXVpLUxJTkstQUNUSVZFOiByZ2JhKDEyNSwgMTQ0LCAxNjksIDAuNSk7XG4gICAgLS13ZXVpLVRFWFRHUkVFTjogIzI1OWM1YztcbiAgICAtLXdldWktRkc6IHdoaXRlO1xuICAgIC0td2V1aS1CRzogYmxhY2s7XG4gICAgLS13ZXVpLVRBRy1URVhULU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuNik7XG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuMSk7XG4gICAgLS13ZXVpLVRBRy1URVhULUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuNik7XG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuMSk7XG4gICAgLS13ZXVpLVRBRy1URVhULUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjYpO1xuICAgIC0td2V1aS1UQUctQkFDS0dST1VORC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC4xKTtcbiAgICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIH1cbn1cbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10ge1xuICAtLXdldWktQkctMDogIzExMTExMTtcbiAgLS13ZXVpLUJHLTE6ICMxZTFlMWU7XG4gIC0td2V1aS1CRy0yOiAjMTkxOTE5O1xuICAtLXdldWktQkctMzogIzIwMjAyMDtcbiAgLS13ZXVpLUJHLTQ6ICM0MDQwNDA7XG4gIC0td2V1aS1CRy01OiAjMmMyYzJjO1xuICAtLXdldWktRkctMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAtLXdldWktRkctSEFMRjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAtLXdldWktRkctMTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtLXdldWktRkctMjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAtLXdldWktRkctMzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgLS13ZXVpLVJFRDogI2ZhNTE1MTtcbiAgLS13ZXVpLU9SQU5HRTogI2M4N2QyZjtcbiAgLS13ZXVpLVlFTExPVzogI2NjOWMwMDtcbiAgLS13ZXVpLUdSRUVOOiAjNzRhODAwO1xuICAtLXdldWktTElHSFRHUkVFTjogIzNlYjU3NTtcbiAgLS13ZXVpLUJSQU5EOiAjMDdjMTYwO1xuICAtLXdldWktQkxVRTogIzEwYWVmZjtcbiAgLS13ZXVpLUlORElHTzogIzExOTZmZjtcbiAgLS13ZXVpLVBVUlBMRTogIzgxODNmZjtcbiAgLS13ZXVpLVdISVRFOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIC0td2V1aS1MSU5LOiAjN2Q5MGE5O1xuICAtLXdldWktTElOSy1BQ1RJVkU6IHJnYmEoMTI1LCAxNDQsIDE2OSwgMC41KTtcbiAgLS13ZXVpLVRFWFRHUkVFTjogIzI1OWM1YztcbiAgLS13ZXVpLUZHOiB3aGl0ZTtcbiAgLS13ZXVpLUJHOiBibGFjaztcbiAgLS13ZXVpLVRBRy1URVhULU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuNik7XG4gIC0td2V1aS1UQUctQkFDS0dST1VORC1PUkFOR0U6IHJnYmEoMjUwLCAxNTcsIDU5LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuMSk7XG4gIC0td2V1aS1UQUctVEVYVC1CTFVFOiByZ2JhKDE2LCAxNzQsIDI1NSwgMC42KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjEpO1xuICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMQUNLOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzICovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbmJvZHkge1xuICAtLXdldWktQkctQ09MT1ItQUNUSVZFOiAjZWNlY2VjO1xufVxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSB7XG4gIC0td2V1aS1CRy1DT0xPUi1BQ1RJVkU6ICMzNzM3Mzc7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIHtcbiAgICAtLXdldWktQkctQ09MT1ItQUNUSVZFOiAjMzczNzM3O1xuICB9XG59XG5bY2xhc3NePVwid2V1aS1pY29uLVwiXSxcbltjbGFzcyo9XCIgd2V1aS1pY29uLVwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogMi40ZW07XG4gIGhlaWdodDogMi40ZW07XG4gIG1hc2stcG9zaXRpb246IDUwJSA1MCU7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xufVxuLndldWktaWNvbi1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTAwMCUyMiUyMGhlaWdodCUzRCUyMjEwMDAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMCUyMDkxNi42NjdDMjY5Ljg4MSUyMDkxNi42NjclMjA4My4zMzMlMjA3MzAuMTE5JTIwODMuMzMzJTIwNTAwJTIwODMuMzMzJTIwMjY5Ljg4MSUyMDI2OS44ODElMjA4My4zMzMlMjA1MDAlMjA4My4zMzNjMjMwLjExOSUyMDAlMjA0MTYuNjY3JTIwMTg2LjU0OCUyMDQxNi42NjclMjA0MTYuNjY3JTIwMCUyMDIzMC4xMTktMTg2LjU0OCUyMDQxNi42NjctNDE2LjY2NyUyMDQxNi42Njd6bTAtNTBjMjAyLjUwNCUyMDAlMjAzNjYuNjY3LTE2NC4xNjMlMjAzNjYuNjY3LTM2Ni42NjclMjAwLTIwMi41MDQtMTY0LjE2My0zNjYuNjY3LTM2Ni42NjctMzY2LjY2Ny0yMDIuNTA0JTIwMC0zNjYuNjY3JTIwMTY0LjE2My0zNjYuNjY3JTIwMzY2LjY2NyUyMDAlMjAyMDIuNTA0JTIwMTY0LjE2MyUyMDM2Ni42NjclMjAzNjYuNjY3JTIwMzY2LjY2N3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbC1vcGFjaXR5JTNEJTIyLjklMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1kb3dubG9hZCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMS4yNSUyMDEyLjA0bC0xLjcyLTEuNzItMS4wNiUyMDEuMDYlMjAyLjgyOCUyMDIuODNhMSUyMDElMjAwJTIwMDAxLjQxNC0uMDAxbDIuODI4LTIuODI4LTEuMDYtMS4wNjEtMS43MyUyMDEuNzNWN2gtMS41djUuMDR6bTAtNS4wNFYyaDEuNXY1aDYuMjUxYy41NSUyMDAlMjAuOTk5LjQ0Ni45OTkuOTk2djEzLjAwOGEuOTk4Ljk5OCUyMDAlMjAwMS0uOTk2Ljk5Nkg0Ljk5NkEuOTk4Ljk5OCUyMDAlMjAwMTQlMjAyMS4wMDRWNy45OTZBMSUyMDElMjAwJTIwMDE0Ljk5OSUyMDdoNi4yNTF6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24taW5mbyB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0uNzUtMTJ2N2gxLjV2LTdoLTEuNXpNMTIlMjA5YTElMjAxJTIwMCUyMDEwMC0yJTIwMSUyMDElMjAwJTIwMDAwJTIwMnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zYWZlLXN1Y2Nlc3Mge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTAwMCUyMDEwMDAlMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk01MDAuOSUyMDQuNkMzMTUuNSUyMDQ2LjclMjAxODAuNCUyMDkzLjElMjA1Ny42JTIwMTMyYzAlMjAxMjkuMy4yJTIwMjMxLjcuMiUyMDMzOS43JTIwMCUyMDMwNC4yJTIwMjQ4LjMlMjA0NzEuNiUyMDQ0My4xJTIwNTIzLjdDNjk1LjclMjA5NDMuMyUyMDk0NCUyMDc3NS45JTIwOTQ0JTIwNDcxLjdjMC0xMDglMjAuMi0yMTAuNC4yLTMzOS43QzgyMS40JTIwOTMuMSUyMDY4Ni4zJTIwNDYuNyUyMDUwMC45JTIwNC42em0yNDguMyUyMDM0OS4xbC0yOTkuNyUyMDI5NWMtMi4xJTIwMi01LjMlMjAyLTcuNC0uMUwzMDQuNCUyMDUwNi4xYy0yLTIuMS0yLjMtNS43LS42LThsMTguMy0yNC45YzEuNy0yLjMlMjA1LTIuOCUyMDcuMi0xbDExMi4yJTIwODZjMi4zJTIwMS44JTIwNiUyMDEuNyUyMDguMS0uMWwyNzQuNy0yMjguOWMyLjItMS44JTIwNS43LTEuNyUyMDcuNy4zbDE3JTIwMTYuOGMyLjIlMjAyLjElMjAyLjIlMjA1LjMuMiUyMDcuNHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwY2xpcC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGZpbGwlM0QlMjIlMjMwNzAyMDIlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zYWZlLXdhcm4ge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTAwMCUyMDEwMDAlMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk01MDAuOSUyMDQuNWMtMTg1LjQlMjA0Mi0zMjAuNCUyMDg4LjQtNDQzLjIlMjAxMjcuMyUyMDAlMjAxMjkuMy4yJTIwMjMxLjcuMiUyMDMzOS42JTIwMCUyMDMwNC4xJTIwMjQ4LjIlMjA0NzEuNCUyMDQ0MyUyMDUyMy42JTIwMTk0LjctNTIuMiUyMDQ0My0yMTkuNSUyMDQ0My01MjMuNiUyMDAtMTA3LjkuMi0yMTAuMy4yLTMzOS42QzgyMS4zJTIwOTIuOSUyMDY4Ni4yJTIwNDYuNSUyMDUwMC45JTIwNC41em0tMjYuMSUyMDI3MS4xaDUyLjFjNS44JTIwMCUyMDEwLjMlMjA0LjclMjAxMC4xJTIwMTAuNGwtMTEuNiUyMDMxMy44Yy0uMSUyMDIuOC0yLjUlMjA1LjItNS40JTIwNS4yaC0zOC4yYy0yLjklMjAwLTUuMy0yLjMtNS40LTUuMkw0NjQuOCUyMDI4NmMtLjItNS44JTIwNC4zLTEwLjQlMjAxMC0xMC40em0yNi4xJTIwNDQ4LjNjLTIwLjIlMjAwLTM2LjUtMTYuMy0zNi41LTM2LjVzMTYuMy0zNi41JTIwMzYuNS0zNi41JTIwMzYuNSUyMDE2LjMlMjAzNi41JTIwMzYuNS0xNi40JTIwMzYuNS0zNi41JTIwMzYuNXolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwY2xpcC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGZpbGwlM0QlMjIlMjMwMjAyMDIlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptLTEuMTc3LTcuODZsLTIuNzY1LTIuNzY3TDclMjAxMi40MzFsMy4xMTklMjAzLjEyMWExJTIwMSUyMDAlMjAwMDEuNDE0JTIwMGw1Ljk1Mi01Ljk1LTEuMDYyLTEuMDYyLTUuNiUyMDUuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLWNpcmNsZSB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bTAtMS4yYTguOCUyMDguOCUyMDAlMjAxMDAtMTcuNiUyMDguOCUyMDguOCUyMDAlMjAwMDAlMjAxNy42em0tMS4xNzItNi4yNDJsNS44MDktNS44MDguODQ4Ljg0OS01Ljk1JTIwNS45NWExJTIwMSUyMDAlMjAwMS0xLjQxNCUyMDBMNyUyMDEyLjQyNmwuODQ5LS44NDklMjAyLjk4JTIwMi45OHolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLW5vLWNpcmNsZSB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk04LjY1NyUyMDE4LjQzNUwzJTIwMTIuNzc4bDEuNDE0LTEuNDE0JTIwNC45NSUyMDQuOTVMMjAuNjc4JTIwNWwxLjQxNCUyMDEuNDE0LTEyLjAyJTIwMTIuMDIxYTElMjAxJTIwMCUyMDAxLTEuNDE1JTIwMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24td2FpdGluZyB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMi43NSUyMDExLjM4VjZoLTEuNXY2bDQuMjQzJTIwNC4yNDMlMjAxLjA2LTEuMDYtMy44MDMtMy44MDR6TTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24td2FpdGluZy1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuNiUyMDExLjUwM2wzLjg5MSUyMDMuODkxLS44NDguODQ5TDExLjQlMjAxMlY2aDEuMnY1LjUwM3pNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi13YXJuIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptLS43NjMtMTUuODY0bC4xMSUyMDcuNTk2aDEuMzA1bC4xMS03LjU5NmgtMS41MjV6bS43NTklMjAxMC45NjdjLjUxMiUyMDAlMjAuOTAyLS4zODMuOTAyLS44ODIlMjAwLS41LS4zOS0uODgyLS45MDItLjg4MmEuODc4Ljg3OCUyMDAlMjAwMC0uODk2Ljg4MmMwJTIwLjQ5OS4zOTYuODgyLjg5Ni44ODJ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24taW5mby1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnpNMTEuNCUyMDEwaDEuMnY3aC0xLjJ2LTd6bS42LTFhMSUyMDElMjAwJTIwMTEwLTIlMjAxJTIwMSUyMDAlMjAwMTAlMjAyeiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWNhbmNlbCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NnJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMC0xLjJhOC44JTIwOC44JTIwMCUyMDEwMC0xNy42JTIwOC44JTIwOC44JTIwMCUyMDAwMCUyMDE3LjZ6JTIyJTIwZmlsbC1ydWxlJTNEJTIybm9uemVybyUyMiUyRiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyLjg0OSUyMDEybDMuMTElMjAzLjExMS0uODQ4Ljg0OUwxMiUyMDEyLjg0OWwtMy4xMTElMjAzLjExLS44NDktLjg0OEwxMS4xNTElMjAxMmwtMy4xMS0zLjExMS44NDgtLjg0OUwxMiUyMDExLjE1MWwzLjExMS0zLjExLjg0OS44NDhMMTIuODQ5JTIwMTJ6JTIyJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLXNlYXJjaCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xNi4zMSUyMDE1LjU2MWw0LjExNCUyMDQuMTE1LS44NDguODQ4LTQuMTIzLTQuMTIzYTclMjA3JTIwMCUyMDExLjg1Ny0uODR6TTE2LjglMjAxMWE1LjglMjA1LjglMjAwJTIwMTAtMTEuNiUyMDAlMjA1LjglMjA1LjglMjAwJTIwMDAxMS42JTIwMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tY2xlYXIge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTMuMDYlMjAxMmwzLjAwNi0zLjAwNS0xLjA2LTEuMDZMMTIlMjAxMC45MzglMjA4Ljk5NSUyMDcuOTM0bC0xLjA2JTIwMS4wNkwxMC45MzglMjAxMmwtMy4wMDUlMjAzLjAwNSUyMDEuMDYlMjAxLjA2TDEyJTIwMTMuMDYybDMuMDA1JTIwMy4wMDUlMjAxLjA2LTEuMDZMMTMuMDYyJTIwMTJ6TTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1iYWNrIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMS45OTktNi41NjNMMTAuNjglMjAxMiUyMDE0JTIwOC41NjIlMjAxMi45NTMlMjA3LjUlMjA5LjI5JTIwMTEuMjc3YTEuMDQ1JTIwMS4wNDUlMjAwJTIwMDAwJTIwMS40NDZsMy42NjMlMjAzLjc3N0wxNCUyMDE1LjQzN3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tZGVsZXRlIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTYuNzc0JTIwNi40bC44MTIlMjAxMy42NDhhLjguOCUyMDAlMjAwMC43OTguNzUyaDcuMjMyYS44LjglMjAwJTIwMDAuNzk4LS43NTJMMTcuMjI2JTIwNi40SDYuNzc0em0xMS42NTUlMjAwbC0uODE3JTIwMTMuNzE5QTIlMjAyJTIwMCUyMDAxMTUuNjE2JTIwMjJIOC4zODRhMiUyMDIlMjAwJTIwMDEtMS45OTYtMS44ODFMNS41NzElMjA2LjRIMy41di0uN2EuNS41JTIwMCUyMDAxLjUtLjVoMTZhLjUuNSUyMDAlMjAwMS41LjV2LjdoLTIuMDcxek0xNCUyMDNhLjUuNSUyMDAlMjAwMS41LjV2LjdoLTV2LS43QS41LjUlMjAwJTIwMDExMCUyMDNoNHpNOS41JTIwOWgxLjJsLjUlMjA5SDEwbC0uNS05em0zLjglMjAwaDEuMmwtLjUlMjA5aC0xLjJsLjUtOXolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLW5vLWNpcmNsZS10aGluIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTguODY0JTIwMTYuNjE3bC01LjMwMy01LjMwMy0xLjA2MSUyMDEuMDYlMjA1LjY1NyUyMDUuNjU3YTElMjAxJTIwMCUyMDAwMS40MTQlMjAwTDIxLjIzOCUyMDYuMzY0bC0xLjA2LTEuMDZMOC44NjQlMjAxNi42MTZ6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWFycm93IHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTIuNDU0JTIwNi41OGwxLjA2LTEuMDYlMjA1Ljc4JTIwNS43NzlhLjk5Ni45OTYlMjAwJTIwMDEwJTIwMS40MTNsLTUuNzglMjA1Ljc3OS0xLjA2LTEuMDYxJTIwNS40MjUtNS40MjUtNS40MjUtNS40MjR6JTIyJTIwZmlsbCUzRCUyMiUyM0IyQjJCMiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1hcnJvdy1ib2xkIHtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHdpZHRoJTNEJTIyMTIlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEwLjE1NyUyMDEyLjcxMUw0LjUlMjAxOC4zNjhsLTEuNDE0LTEuNDE0JTIwNC45NS00Ljk1LTQuOTUtNC45NUw0LjUlMjA1LjY0bDUuNjU3JTIwNS42NTdhMSUyMDElMjAwJTIwMDEwJTIwMS40MTR6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1pY29uLWJhY2stYXJyb3cge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMy4zNDMlMjAxMmw3LjA3MSUyMDcuMDcxTDklMjAyMC40ODVsLTcuNzc4LTcuNzc4YTElMjAxJTIwMCUyMDAxMC0xLjQxNEw5JTIwMy41MTVsMS40MTQlMjAxLjQxNEwzLjM0NCUyMDEyeiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1iYWNrLWFycm93LXRoaW4ge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTAlMjAxOS40MzhMOC45NTUlMjAyMC41bC03LjY2Ni03Ljc5YTEuMDIlMjAxLjAyJTIwMCUyMDAxMC0xLjQyTDguOTU1JTIwMy41JTIwMTAlMjA0LjU2MyUyMDIuNjgyJTIwMTIlMjAxMCUyMDE5LjQzOHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tY2xvc2Uge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAxMC41ODZsNS42NTctNS42NTclMjAxLjQxNCUyMDEuNDE0TDEzLjQxNCUyMDEybDUuNjU3JTIwNS42NTctMS40MTQlMjAxLjQxNEwxMiUyMDEzLjQxNGwtNS42NTclMjA1LjY1Ny0xLjQxNC0xLjQxNEwxMC41ODYlMjAxMiUyMDQuOTI5JTIwNi4zNDMlMjA2LjM0MyUyMDQuOTMlMjAxMiUyMDEwLjU4NnolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tY2xvc2UtdGhpbiB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMi4yNSUyMDEwLjY5M0w2LjA1NyUyMDQuNSUyMDUlMjA1LjU1N2w2LjE5MyUyMDYuMTkzTDUlMjAxNy45NDMlMjA2LjA1NyUyMDE5bDYuMTkzLTYuMTkzTDE4LjQ0MyUyMDE5bDEuMDU3LTEuMDU3LTYuMTkzLTYuMTkzTDE5LjUlMjA1LjU1NyUyMDE4LjQ0MyUyMDQuNXolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbn1cbi53ZXVpLWljb24tYmFjay1jaXJjbGUge1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnptMS45OTktNS4zNjNMMTIuOTUzJTIwMTYuNSUyMDkuMjklMjAxMi43MjNhMS4wNDUlMjAxLjA0NSUyMDAlMjAwMTAtMS40NDZMMTIuOTUzJTIwNy41JTIwMTQlMjA4LjU2MyUyMDEwLjY4JTIwMTIlMjAxNCUyMDE1LjQzOHolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLndldWktaWNvbi1zdWNjZXNzIHtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktaWNvbi13YWl0aW5nIHtcbiAgY29sb3I6IHZhcigtLXdldWktQkxVRSk7XG59XG4ud2V1aS1pY29uLXdhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLndldWktaWNvbi1pbmZvIHtcbiAgY29sb3I6IHZhcigtLXdldWktQkxVRSk7XG59XG4ud2V1aS1pY29uLXN1Y2Nlc3MtY2lyY2xlIHtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktaWNvbi1zdWNjZXNzLW5vLWNpcmNsZSxcbi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUtdGhpbiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbi53ZXVpLWljb24td2FpdGluZy1jaXJjbGUge1xuICBjb2xvcjogdmFyKC0td2V1aS1CTFVFKTtcbn1cbi53ZXVpLWljb24tY2lyY2xlIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG59XG4ud2V1aS1pY29uLWRvd25sb2FkIHtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktaWNvbi1pbmZvLWNpcmNsZSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xufVxuLndldWktaWNvbi1zYWZlLXN1Y2Nlc3Mge1xuICBjb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG59XG4ud2V1aS1pY29uLXNhZmUtd2FybiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVlFTExPVyk7XG59XG4ud2V1aS1pY29uLWNhbmNlbCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG59XG4ud2V1aS1pY29uLXNlYXJjaCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xufVxuLndldWktaWNvbi1jbGVhciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xufVxuLndldWktaWNvbi1jbGVhcjphY3RpdmUge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWljb24tZGVsZXRlLndldWktaWNvbl9nYWxsZXJ5LWRlbGV0ZSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcbn1cbi53ZXVpLWljb24tYXJyb3csXG4ud2V1aS1pY29uLWFycm93LWJvbGQsXG4ud2V1aS1pY29uLWJhY2stYXJyb3csXG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbiB7XG4gIHdpZHRoOiAxLjJlbTtcbn1cbi53ZXVpLWljb24tYXJyb3csXG4ud2V1aS1pY29uLWFycm93LWJvbGQge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbn1cbi53ZXVpLWljb24tYmFjay1hcnJvdyxcbi53ZXVpLWljb24tYmFjay1hcnJvdy10aGluIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1pY29uLWJhY2ssXG4ud2V1aS1pY29uLWJhY2stY2lyY2xlIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1pY29uX21zZyB7XG4gIHdpZHRoOiA2LjRlbTtcbiAgaGVpZ2h0OiA2LjRlbTtcbn1cbi53ZXVpLWljb25fbXNnLndldWktaWNvbi13YXJuIHtcbiAgY29sb3I6IHZhcigtLXdldWktUkVEKTtcbn1cbi53ZXVpLWljb25fbXNnLndldWktaWNvbi1pbmZvLWNpcmNsZSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJMVUUpO1xufVxuLndldWktaWNvbl9tc2ctcHJpbWFyeSB7XG4gIHdpZHRoOiA2LjRlbTtcbiAgaGVpZ2h0OiA2LjRlbTtcbn1cbi53ZXVpLWljb25fbXNnLXByaW1hcnkud2V1aS1pY29uLXdhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1ZRUxMT1cpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1oaWRkZW5fYWJzIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWhpZGRlbi1zcGFjZTplbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMDBBMFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktd2EtaG90YXJlYS1lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgbWluLWhlaWdodDogNDRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbn1cbi53ZXVpLXdhLWhvdGFyZWEtZWxfX3dycCxcbi53ZXVpLXdhLWhvdGFyZWEsXG4ud2V1aS13YS1ob3RhcmVhX2JlZm9yZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLXdhLWhvdGFyZWEtZWxfX3dycCBhLFxuLndldWktd2EtaG90YXJlYSBhLFxuLndldWktd2EtaG90YXJlYV9iZWZvcmUgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi53ZXVpLXdhLWhvdGFyZWFfYmVmb3JlOmJlZm9yZSxcbi53ZXVpLXdhLWhvdGFyZWE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBtaW4td2lkdGg6IDQ0cHg7XG4gIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWxpbmsge1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLndldWktbGluazp2aXNpdGVkIHtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDE4NHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiA4cHggMjRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxLjg4MjM1Mjk0O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi53ZXVpLWJ0bl9ibG9jayB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLndldWktYnRuX2lubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktYnRuX2RlZmF1bHQge1xuICBjb2xvcjogdmFyKC0td2V1aS1CVE4tREVGQVVMVC1DT0xPUik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQlROLURFRkFVTFQtQkcpO1xufVxuLndldWktYnRuX2RlZmF1bHQ6bm90KC53ZXVpLWJ0bl9kaXNhYmxlZCk6dmlzaXRlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJUTi1ERUZBVUxULUNPTE9SKTtcbn1cbi53ZXVpLWJ0bl9kZWZhdWx0Om5vdCgud2V1aS1idG5fZGlzYWJsZWQpOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQlROLURFRkFVTFQtQUNUSVZFLUJHKTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktYnRuX3ByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbn1cbi53ZXVpLWJ0bl9wcmltYXJ5Om5vdCgud2V1aS1idG5fZGlzYWJsZWQpOnZpc2l0ZWQge1xuICBjb2xvcjogI2ZmZjtcbn1cbi53ZXVpLWJ0bl9wcmltYXJ5Om5vdCgud2V1aS1idG5fZGlzYWJsZWQpOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktVEFHLVRFWFQtR1JFRU4pO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fd2FybiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQlROLURFRkFVTFQtQkcpO1xufVxuLndldWktYnRuX3dhcm46bm90KC53ZXVpLWJ0bl9kaXNhYmxlZCk6dmlzaXRlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG59XG4ud2V1aS1idG5fd2Fybjpub3QoLndldWktYnRuX2Rpc2FibGVkKTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJUTi1ERUZBVUxULUFDVElWRS1CRyk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWJ0bl9kaXNhYmxlZCxcbi53ZXVpLWJ0bltkaXNhYmxlZF0ge1xuICBjb2xvcjogdmFyKC0td2V1aS1CVE4tRElTQUJMRUQtRk9OVC1DT0xPUik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQlROLURFRkFVTFQtQkcpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fbG9hZGluZyAud2V1aS1sb2FkaW5nIHtcbiAgbWFyZ2luOiAtMC4yZW0gMC4zNGVtIDAgMDtcbn1cbi53ZXVpLWJ0bl9sb2FkaW5nIC53ZXVpLXByaW1hcnktbG9hZGluZyB7XG4gIG1hcmdpbjogLTAuMmVtIDhweCAwIDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ud2V1aS1idG5fbG9hZGluZy53ZXVpLWJ0bl9wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1UQUctVEVYVC1HUkVFTik7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcbn1cbi53ZXVpLWJ0bl9sb2FkaW5nLndldWktYnRuX2RlZmF1bHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJUTi1ERUZBVUxULUFDVElWRS1CRyk7XG59XG4ud2V1aS1idG5fbG9hZGluZy53ZXVpLWJ0bl93YXJuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CVE4tREVGQVVMVC1BQ1RJVkUtQkcpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1idG5fY2VsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbiAgcGFkZGluZzogMTZweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTUpO1xufVxuLndldWktYnRuX2NlbGwgKyAud2V1aS1idG5fY2VsbCB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG4ud2V1aS1idG5fY2VsbDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1idG5fY2VsbF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFyZ2luOiAtMC4yZW0gMC4zNGVtIDAgMDtcbn1cbi53ZXVpLWJ0bl9jZWxsLWRlZmF1bHQge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbn1cbi53ZXVpLWJ0bl9jZWxsLXByaW1hcnkge1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbn1cbi53ZXVpLWJ0bl9jZWxsLXdhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2Uge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByLXBhZ2VfX2NvbnRlbnQge1xuICBtaW4taGVpZ2h0OiAwO1xuICBmbGV4OiAxO1xuICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuLndldWktYm90dG9tLWZpeGVkLW9wciB7XG4gIHBhZGRpbmc6IDE2cHggMzJweCAyNHB4O1xuICBwYWRkaW5nOiAxNnB4IGNhbGMoMzJweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKSBjYWxjKDMycHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBwYWRkaW5nOiAxNnB4IGNhbGMoMzJweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpIGNhbGMoMzJweCArIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1ib3R0b20tZml4ZWQtb3ByOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogODBweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgI2ZmZmZmZiwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiBjYWxjKDEwMCUgLSAxcHgpO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktYm90dG9tLWZpeGVkLW9wciB7XG4gIGJhY2tncm91bmQ6ICMxOTE5MTk7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIge1xuICAgIGJhY2tncm91bmQ6ICMxOTE5MTk7XG4gIH1cbn1cbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktYm90dG9tLWZpeGVkLW9wcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAjMTkxOTE5LCByZ2JhKDI1LCAyNSwgMjUsIDApKTtcbn1cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgLndldWktYm90dG9tLWZpeGVkLW9wcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICMxOTE5MTksIHJnYmEoMjUsIDI1LCAyNSwgMCkpO1xuICB9XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVkIHtcbiAgcGFkZGluZzogMDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZy53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCB7XG4gIHBhZGRpbmc6IDAgMjRweDtcbiAgcGFkZGluZzogMCBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSAwIGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIHBhZGRpbmc6IDAgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIDAgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVkIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYmQge1xuICBwYWRkaW5nLWJvdHRvbTogNjRweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZy53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19mdCB7XG4gIHBhZGRpbmc6IDAgMjRweCA2NHB4O1xuICBwYWRkaW5nOiAwIGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIDY0cHggY2FsYygyNHB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgcGFkZGluZzogMCBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgNjRweCBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZy53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQgLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX19jb250ZW50IHtcbiAgcGFkZGluZzogMCAyNHB4O1xuICBwYWRkaW5nOiAwIGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIDAgY2FsYygyNHB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgcGFkZGluZzogMCBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgMCBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZy53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQgLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlIHtcbiAgZmxleDogMTtcbiAgbWluLWhlaWdodDogMDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZy53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19ib3R0b20tZml4ZWQgLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlIC53ZXVpLWJvdHRvbS1maXhlZC1vcHIge1xuICBwYWRkaW5nOiAxNnB4IDAgMDtcbn1cbmJ1dHRvbi53ZXVpLWJ0bixcbmlucHV0LndldWktYnRuIHtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBvdXRsaW5lOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5idXR0b24ud2V1aS1idG46Zm9jdXMsXG5pbnB1dC53ZXVpLWJ0bjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5idXR0b24ud2V1aS1idG5faW5saW5lLFxuaW5wdXQud2V1aS1idG5faW5saW5lLFxuYnV0dG9uLndldWktYnRuX21pbmksXG5pbnB1dC53ZXVpLWJ0bl9taW5pIHtcbiAgd2lkdGg6IGF1dG87XG59XG4ud2V1aS1idG5fbWluaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDAgMTJweDtcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuLndldWktYnRuX3htaW5pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogMCAxMnB4O1xuICBsaW5lLWhlaWdodDogMjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBib3JkZXItcmFkaXVzOiAyLjhweDtcbn1cbi8qIGdhcCBiZXR3ZWVuIGJ0biAqL1xuLndldWktYnRuOm5vdCgud2V1aS1idG5fbWluaSkgKyAud2V1aS1idG46bm90KC53ZXVpLWJ0bl9taW5pKSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG4ud2V1aS1idG4ud2V1aS1idG5faW5saW5lICsgLndldWktYnRuLndldWktYnRuX2lubGluZSB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAxNnB4O1xufVxuLndldWktYnRuLWFyZWEge1xuICBtYXJnaW46IDQ4cHggMTZweCA4cHg7XG59XG4ud2V1aS1idG4tYXJlYV9pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndldWktYnRuLWFyZWFfaW5saW5lIC53ZXVpLWJ0biB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsZXg6IDE7XG59XG4ud2V1aS1idG4tYXJlYV9pbmxpbmUgLndldWktYnRuOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4ud2V1aS1idG5fcmVzZXQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdXRsaW5lOiAwO1xufVxuLndldWktYnRuX2ljb24ge1xuICBmb250LXNpemU6IDA7XG59XG4ud2V1aS1idG5faWNvbjphY3RpdmUgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbnotaW5kZXg6XG4wOiAud2V1aS1zd2lwZWQtYnRuXG4xOiAud2V1aS1jZWxsX3N3aXBlZCAud2V1aS1jZWxsX19iZFxuMjogLndldWktY2VsbHPlkowud2V1aS1jZWxs55qEMXB457q/XG4qL1xuLndldWktY2VsbHMge1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIGxpbmUtaGVpZ2h0OiAxLjQxMTc2NDcxO1xuICBmb250LXNpemU6IDE3cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLWNlbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgei1pbmRleDogMjtcbn1cbi53ZXVpLWNlbGxzOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICB6LWluZGV4OiAyO1xufVxuLndldWktY2VsbHNfX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1jZWxsc19fdGl0bGUgKyAud2V1aS1jZWxscyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1jZWxsc19fdGlwcyB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLndldWktY2VsbHNfX3RpcHMgYSxcbi53ZXVpLWNlbGxzX190aXBzIG5hdmlnYXRvciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktY2VsbHNfX3RpcHMgbmF2aWdhdG9yIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLndldWktY2VsbCB7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi53ZXVpLWNlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xuICBsZWZ0OiAxNnB4O1xuICB6LWluZGV4OiAyO1xufVxuLndldWktY2VsbDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktY2VsbF9hY3RpdmU6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy1DT0xPUi1BQ1RJVkUpO1xufVxuLndldWktY2VsbF9wcmltYXJ5IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ud2V1aS1jZWxsX19iZCB7XG4gIGZsZXg6IDE7XG59XG4ud2V1aS1jZWxsX19mdCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktY2VsbF9zd2lwZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMDtcbn1cbi53ZXVpLWNlbGxfc3dpcGVkID4gLndldWktY2VsbF9fYmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG59XG4ud2V1aS1jZWxsX3N3aXBlZCA+IC53ZXVpLWNlbGxfX2Z0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAjZmZmO1xufVxuLndldWktc3dpcGVkLWJ0biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxNnB4IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDExNzY0NzE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLndldWktc3dpcGVkLWJ0bl9kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0wKTtcbn1cbi53ZXVpLXN3aXBlZC1idG5fd2FybiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktUkVEKTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktY2VsbF9hY2Nlc3Mge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLndldWktY2VsbF9hY2Nlc3M6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy1DT0xPUi1BQ1RJVkUpO1xufVxuLndldWktY2VsbF9hY2Nlc3MgLndldWktY2VsbF9fZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAyMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1jZWxsX2FjY2VzcyAud2V1aS1jZWxsX19mdDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXNrLXBvc2l0aW9uOiAwIDA7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTIuNDU0JTIwNi41OGwxLjA2LTEuMDYlMjA1Ljc4JTIwNS43NzlhLjk5Ni45OTYlMjAwJTIwMDEwJTIwMS40MTNsLTUuNzglMjA1Ljc3OS0xLjA2LTEuMDYxJTIwNS40MjUtNS40MjUtNS40MjUtNS40MjR6JTIyJTIwZmlsbCUzRCUyMiUyM0IyQjJCMiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgbWFyZ2luLXRvcDogLTEycHg7XG59XG4ud2V1aS1jZWxsX2xpbmsge1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbiAgZm9udC1zaXplOiAxN3B4O1xufVxuLndldWktY2VsbF9saW5rOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWNoZWNrX19sYWJlbCB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi53ZXVpLWNoZWNrX19sYWJlbDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1jaGVjayB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktY2VsbHNfcmFkaW8gLndldWktY2VsbF9fZnQge1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi53ZXVpLWNlbGxzX3JhZGlvIC53ZXVpLWNoZWNrICsgLndldWktaWNvbi1jaGVja2VkIHtcbiAgbWluLXdpZHRoOiAxNnB4O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ud2V1aS1jZWxsc19yYWRpbyAud2V1aS1jaGVjazpjaGVja2VkICsgLndldWktaWNvbi1jaGVja2VkLFxuLndldWktY2VsbHNfcmFkaW8gLndldWktY2hlY2tbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLWljb24tY2hlY2tlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTguNjU3JTIwMTguNDM1TDMlMjAxMi43NzhsMS40MTQtMS40MTQlMjA0Ljk1JTIwNC45NUwyMC42NzglMjA1bDEuNDE0JTIwMS40MTQtMTIuMDIlMjAxMi4wMjFhMSUyMDElMjAwJTIwMDEtMS40MTUlMjAweiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1jZWxsc19jaGVja2JveCAud2V1aS1jaGVja19fbGFiZWw6YmVmb3JlIHtcbiAgbGVmdDogNTVweDtcbn1cbi53ZXVpLWNlbGxzX2NoZWNrYm94IC53ZXVpLWNlbGxfX2hkIHtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgZm9udC1zaXplOiAwO1xufVxuLndldWktY2VsbHNfY2hlY2tib3ggLndldWktaWNvbi1jaGVja2VkIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMDAwJTIyJTIwaGVpZ2h0JTNEJTIyMTAwMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNTAwJTIwOTE2LjY2N0MyNjkuODgxJTIwOTE2LjY2NyUyMDgzLjMzMyUyMDczMC4xMTklMjA4My4zMzMlMjA1MDAlMjA4My4zMzMlMjAyNjkuODgxJTIwMjY5Ljg4MSUyMDgzLjMzMyUyMDUwMCUyMDgzLjMzM2MyMzAuMTE5JTIwMCUyMDQxNi42NjclMjAxODYuNTQ4JTIwNDE2LjY2NyUyMDQxNi42NjclMjAwJTIwMjMwLjExOS0xODYuNTQ4JTIwNDE2LjY2Ny00MTYuNjY3JTIwNDE2LjY2N3ptMC01MGMyMDIuNTA0JTIwMCUyMDM2Ni42NjctMTY0LjE2MyUyMDM2Ni42NjctMzY2LjY2NyUyMDAtMjAyLjUwNC0xNjQuMTYzLTM2Ni42NjctMzY2LjY2Ny0zNjYuNjY3LTIwMi41MDQlMjAwLTM2Ni42NjclMjAxNjQuMTYzLTM2Ni42NjclMjAzNjYuNjY3JTIwMCUyMDIwMi41MDQlMjAxNjQuMTYzJTIwMzY2LjY2NyUyMDM2Ni42NjclMjAzNjYuNjY3eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBmaWxsLW9wYWNpdHklM0QlMjIuOSUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG59XG4ud2V1aS1jZWxsc19jaGVja2JveCAud2V1aS1jaGVjazpjaGVja2VkICsgLndldWktaWNvbi1jaGVja2VkLFxuLndldWktY2VsbHNfY2hlY2tib3ggLndldWktY2hlY2tbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLWljb24tY2hlY2tlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptLTEuMTc3LTcuODZsLTIuNzY1LTIuNzY3TDclMjAxMi40MzFsMy4xMTklMjAzLjEyMWExJTIwMSUyMDAlMjAwMDEuNDE0JTIwMGw1Ljk1Mi01Ljk1LTEuMDYyLTEuMDYyLTUuNiUyMDUuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDVweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG59XG4ud2V1aS1pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGhlaWdodDogMS40MTE3NjQ3MWVtO1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbn1cbi53ZXVpLWlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuLndldWktaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cbi53ZXVpLWlucHV0OmZvY3VzOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pICsgLndldWktYnRuX2lucHV0LWNsZWFyIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLndldWktdGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAwO1xuICByZXNpemU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgb3V0bGluZTogMDtcbn1cbi53ZXVpLXRleHRhcmVhLWNvdW50ZXIge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbi53ZXVpLWNlbGxfd2FybiAud2V1aS10ZXh0YXJlYS1jb3VudGVyIHtcbiAgY29sb3I6IHZhcigtLXdldWktUkVEKTtcbn1cbi53ZXVpLWNlbGxzX2Zvcm0gLndldWktY2VsbF9zd2l0Y2g6YWN0aXZlLFxuLndldWktY2VsbHNfZm9ybSAud2V1aS1jZWxsX3Zjb2RlOmFjdGl2ZSxcbi53ZXVpLWNlbGxzX2Zvcm0gLndldWktY2VsbF9yZWFkb25seTphY3RpdmUsXG4ud2V1aS1jZWxsc19mb3JtIC53ZXVpLWNlbGxfZGlzYWJsZWQ6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ud2V1aS1jZWxsc19mb3JtIC53ZXVpLWNlbGxfX2Z0IHtcbiAgZm9udC1zaXplOiAwO1xufVxuLndldWktY2VsbHNfZm9ybSAud2V1aS1pY29uLXdhcm4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktY2VsbHNfZm9ybSBpbnB1dCxcbi53ZXVpLWNlbGxzX2Zvcm0gdGV4dGFyZWEsXG4ud2V1aS1jZWxsc19mb3JtIGxhYmVsW2Zvcl0ge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ud2V1aS1jZWxsX3dhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLndldWktY2VsbF93YXJuIC53ZXVpLWljb24td2FybiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi53ZXVpLWNlbGxfcmVhZG9ubHkgLndldWktaW5wdXQ6ZGlzYWJsZWQsXG4ud2V1aS1jZWxsX2Rpc2FibGVkIC53ZXVpLWlucHV0OmRpc2FibGVkLFxuLndldWktY2VsbF9yZWFkb25seSAud2V1aS10ZXh0YXJlYTpkaXNhYmxlZCxcbi53ZXVpLWNlbGxfZGlzYWJsZWQgLndldWktdGV4dGFyZWE6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWNlbGxfcmVhZG9ubHkgLndldWktaW5wdXRbZGlzYWJsZWRdLFxuLndldWktY2VsbF9kaXNhYmxlZCAud2V1aS1pbnB1dFtkaXNhYmxlZF0sXG4ud2V1aS1jZWxsX3JlYWRvbmx5IC53ZXVpLXRleHRhcmVhW2Rpc2FibGVkXSxcbi53ZXVpLWNlbGxfZGlzYWJsZWQgLndldWktdGV4dGFyZWFbZGlzYWJsZWRdLFxuLndldWktY2VsbF9yZWFkb25seSAud2V1aS1pbnB1dFtyZWFkb25seV0sXG4ud2V1aS1jZWxsX2Rpc2FibGVkIC53ZXVpLWlucHV0W3JlYWRvbmx5XSxcbi53ZXVpLWNlbGxfcmVhZG9ubHkgLndldWktdGV4dGFyZWFbcmVhZG9ubHldLFxuLndldWktY2VsbF9kaXNhYmxlZCAud2V1aS10ZXh0YXJlYVtyZWFkb25seV0ge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWJ0bl9pbnB1dC1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xufVxuLndldWktYnRuX2lucHV0LWNsZWFyIFtjbGFzcyo9XCJ3ZXVpLWljb24tXCJdIHtcbiAgd2lkdGg6IDE4cHg7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWZvcm0tcHJldmlldyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbn1cbi53ZXVpLWZvcm0tcHJldmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXc6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2hkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxNnB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbGluZS1oZWlnaHQ6IDIuNWVtO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19oZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgbGVmdDogMTZweDtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19faGQgLndldWktZm9ybS1wcmV2aWV3X192YWx1ZSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxLjZlbTtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fYmQge1xuICBwYWRkaW5nOiAxNnB4O1xuICBmb250LXNpemU6IDAuOWVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIGxpbmUtaGVpZ2h0OiAyO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19mdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0td2V1aS1ESUFMT0ctTElORS1DT0xPUik7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19pdGVtIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fbGFiZWwge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIG1pbi13aWR0aDogNGVtO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgdGV4dC1hbGlnbi1sYXN0OiBqdXN0aWZ5O1xufVxuLndldWktZm9ybS1wcmV2aWV3X192YWx1ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2J0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDE7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbmJ1dHRvbi53ZXVpLWZvcm0tcHJldmlld19fYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctQ09MT1ItQUNUSVZFKTtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fYnRuOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMXB4O1xuICBib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0td2V1aS1ESUFMT0ctTElORS1DT0xPUik7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLURJQUxPRy1MSU5FLUNPTE9SKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19idG46Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19idG5fZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLUhBTEYpO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19idG5fcHJpbWFyeSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19saXN0IHtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fbGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2xpc3Q6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19saXN0IC53ZXVpLWZvcm0tcHJldmlld19fbGFiZWwge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWFsaWduLWxhc3Q6IHVuc2V0O1xuICB3aWR0aDogNmVtO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19saXN0IC53ZXVpLWZvcm0tcHJldmlld19fdmFsdWUge1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLndldWktZm9ybS1wcmV2aWV3X19saXN0IC53ZXVpLWZvcm0tcHJldmlld19faXRlbSB7XG4gIG1hcmdpbi10b3A6IDEycHg7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2xpc3QgLndldWktZm9ybS1wcmV2aWV3X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi53ZXVpLWZvcm0tcHJldmlld19fbGlzdCA+IC53ZXVpLWNlbGxzX190aXRsZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWNlbGxfc2VsZWN0IHtcbiAgcGFkZGluZzogMDtcbn1cbi53ZXVpLWNlbGxfc2VsZWN0IC53ZXVpLXNlbGVjdCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG4ud2V1aS1jZWxsX3NlbGVjdCAud2V1aS1jZWxsX19iZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXNrLXBvc2l0aW9uOiAwIDA7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTIuNDU0JTIwNi41OGwxLjA2LTEuMDYlMjA1Ljc4JTIwNS43NzlhLjk5Ni45OTYlMjAwJTIwMDEwJTIwMS40MTNsLTUuNzglMjA1Ljc3OS0xLjA2LTEuMDYxJTIwNS40MjUtNS40MjUtNS40MjUtNS40MjR6JTIyJTIwZmlsbCUzRCUyMiUyM0IyQjJCMiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTZweDtcbiAgbWFyZ2luLXRvcDogLTEycHg7XG59XG4ud2V1aS1zZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIG1pbi1oZWlnaHQ6IDU2cHg7XG4gIGxpbmUtaGVpZ2h0OiA1NnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUge1xuICBhbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cbi53ZXVpLWNlbGxfc2VsZWN0LWJlZm9yZSAud2V1aS1zZWxlY3Qge1xuICB3aWR0aDogMTA1cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUgLndldWktY2VsbF9faGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUgLndldWktY2VsbF9faGQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMXB4O1xuICBib3R0b206IDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUgLndldWktY2VsbF9faGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hc2stcG9zaXRpb246IDAgMDtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xuICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMi40NTQlMjA2LjU4bDEuMDYtMS4wNiUyMDUuNzglMjA1Ljc3OWEuOTk2Ljk5NiUyMDAlMjAwMTAlMjAxLjQxM2wtNS43OCUyMDUuNzc5LTEuMDYtMS4wNjElMjA1LjQyNS01LjQyNS01LjQyNS01LjQyNHolMjIlMjBmaWxsJTNEJTIyJTIzQjJCMkIyJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxNnB4O1xuICBtYXJnaW4tdG9wOiAtMTJweDtcbn1cbi53ZXVpLWNlbGxfc2VsZWN0LWJlZm9yZSAud2V1aS1jZWxsX19iZCB7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi53ZXVpLWNlbGxfc2VsZWN0LWJlZm9yZSAud2V1aS1jZWxsX19iZDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUud2V1aS1jZWxsX2FjY2VzcyAud2V1aS1jZWxsX19oZCB7XG4gIGxpbmUtaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG59XG4ud2V1aS1jZWxsX3NlbGVjdC1hZnRlciB7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbn1cbi53ZXVpLWNlbGxfc2VsZWN0LWFmdGVyIC53ZXVpLXNlbGVjdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi53ZXVpLWNlbGxfc2VsZWN0LWFmdGVyLndldWktY2VsbF9hY2Nlc3MgLndldWktY2VsbF9fYmQge1xuICBsaW5lLWhlaWdodDogNTZweDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKlxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbipcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKlxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1jZWxsX3Zjb2RlIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLndldWktdmNvZGUtaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgaGVpZ2h0OiA1NnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLndldWktdmNvZGUtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDU2cHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIHBhZGRpbmc6IDAgMC42ZW0gMCAwLjdlbTtcbiAgbGluZS1oZWlnaHQ6IDU2cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53ZXVpLXZjb2RlLWJ0bjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuYnV0dG9uLndldWktdmNvZGUtYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbn1cbi53ZXVpLXZjb2RlLWJ0bjphY3RpdmUge1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LLUFDVElWRSk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWdhbGxlcnkge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgei1pbmRleDogMTAwMDtcbn1cbi53ZXVpLWdhbGxlcnlfX2ltZyxcbi53ZXVpLWdhbGxlcnlfX29wciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgbGVmdDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICBsZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICByaWdodDogMDtcbiAgcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIHJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbn1cbi53ZXVpLWdhbGxlcnlfX2ltZyB7XG4gIHRvcDogMDtcbiAgdG9wOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCk7XG4gIGJvdHRvbTogNjBweDtcbiAgYm90dG9tOiBjYWxjKDYwcHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIGJvdHRvbTogY2FsYyg2MHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG4ud2V1aS1nYWxsZXJ5X19vcHIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkMGQwZDtcbiAgY29sb3I6IHZhcigtLXdldWktV0hJVEUpO1xuICBsaW5lLWhlaWdodDogNjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLndldWktZ2FsbGVyeV9fZGVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWNlbGxfc3dpdGNoIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xufVxuLndldWktc3dpdGNoIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbi53ZXVpLXN3aXRjaCxcbi53ZXVpLXN3aXRjaC1jcF9fYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNTJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMsIGJvcmRlciAwLjFzO1xufVxuLndldWktc3dpdGNoOmJlZm9yZSxcbi53ZXVpLXN3aXRjaC1jcF9fYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0zKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLjQ1LCAxLCAwLjQsIDEpO1xufVxuLndldWktc3dpdGNoOmFmdGVyLFxuLndldWktc3dpdGNoLWNwX19ib3g6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMC40LCAwLjQsIDAuMjUsIDEuMzUpO1xufVxuLndldWktc3dpdGNoOmNoZWNrZWQsXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0OmNoZWNrZWQgKyAud2V1aS1zd2l0Y2gtY3BfX2JveCxcbi53ZXVpLXN3aXRjaC1jcF9faW5wdXRbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS13ZXVpLUJSQU5EKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG59XG4ud2V1aS1zd2l0Y2g6Y2hlY2tlZDpiZWZvcmUsXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0OmNoZWNrZWQgKyAud2V1aS1zd2l0Y2gtY3BfX2JveDpiZWZvcmUsXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0W2FyaWEtY2hlY2tlZD1cInRydWVcIl0gKyAud2V1aS1zd2l0Y2gtY3BfX2JveDpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuLndldWktc3dpdGNoOmNoZWNrZWQ6YWZ0ZXIsXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0OmNoZWNrZWQgKyAud2V1aS1zd2l0Y2gtY3BfX2JveDphZnRlcixcbi53ZXVpLXN3aXRjaC1jcF9faW5wdXRbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLXN3aXRjaC1jcF9fYm94OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xufVxuLndldWktc3dpdGNoLWNwX19pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLXN3aXRjaC1jcF9fYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWNlbGxfdXBsb2FkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbn1cbi53ZXVpLXVwbG9hZGVyIHtcbiAgZmxleDogMTtcbn1cbi53ZXVpLXVwbG9hZGVyX19oZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLndldWktdXBsb2FkZXJfX3RpdGxlIHtcbiAgZmxleDogMTtcbn1cbi53ZXVpLXVwbG9hZGVyX19pbmZvIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG59XG4ud2V1aS11cGxvYWRlcl9fYmQge1xuICBtYXJnaW4tYm90dG9tOiAtOHB4O1xuICBtYXJnaW4tcmlnaHQ6IC04cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZXMge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLndldWktdXBsb2FkZXJfX2ZpbGUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgd2lkdGg6IDk2cHg7XG4gIGhlaWdodDogOTZweDtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZV9zdGF0dXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZV9zdGF0dXM6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG4ud2V1aS11cGxvYWRlcl9fZmlsZV9zdGF0dXMgLndldWktdXBsb2FkZXJfX2ZpbGUtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLndldWktdXBsb2FkZXJfX2ZpbGUtY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcbn1cbi53ZXVpLXVwbG9hZGVyX19maWxlLWNvbnRlbnQgLndldWktaWNvbi13YXJuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLndldWktdXBsb2FkZXJfX2lucHV0LWJveCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIHdpZHRoOiA5NnB4O1xuICBoZWlnaHQ6IDk2cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG59XG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmUyZTJlO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS11cGxvYWRlcl9faW5wdXQtYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmUyZTJlO1xuICB9XG59XG4ud2V1aS11cGxvYWRlcl9faW5wdXQtYm94OmJlZm9yZSxcbi53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3g6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMztcbn1cbmJvZHlbZGF0YS13ZXVpLXRoZW1lPSdkYXJrJ10gLndldWktdXBsb2FkZXJfX2lucHV0LWJveDpiZWZvcmUsXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3g6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ2ZDZkO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS11cGxvYWRlcl9faW5wdXQtYm94OmJlZm9yZSxcbiAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkgLndldWktdXBsb2FkZXJfX2lucHV0LWJveDphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZkNmQ2ZDtcbiAgfVxufVxuLndldWktdXBsb2FkZXJfX2lucHV0LWJveDpiZWZvcmUge1xuICB3aWR0aDogMnB4O1xuICBoZWlnaHQ6IDMycHg7XG59XG4ud2V1aS11cGxvYWRlcl9faW5wdXQtYm94OmFmdGVyIHtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMnB4O1xufVxuLndldWktdXBsb2FkZXJfX2lucHV0LWJveDphY3RpdmU6YmVmb3JlLFxuLndldWktdXBsb2FkZXJfX2lucHV0LWJveDphY3RpdmU6YWZ0ZXIge1xuICBvcGFjaXR5OiAwLjc7XG59XG4ud2V1aS11cGxvYWRlcl9faW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1tc2dfX2Rlc2MgYSxcbi53ZXVpLW1zZ19fZGVzYy1wcmltYXJ5IGEsXG4ud2V1aS1tc2dfX3RpcHMgYSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi53ZXVpLW1zZyB7XG4gIHBhZGRpbmctdG9wOiA0OHB4O1xuICBwYWRkaW5nOiBjYWxjKDQ4cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtdG9wKSkgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHBhZGRpbmc6IGNhbGMoNDhweCArIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKSkgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbn1cbi53ZXVpLW1zZ19faWNvbi1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbn1cbi53ZXVpLW1zZ19fdGV4dC1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgcGFkZGluZzogMCAzMnB4O1xuICBmbGV4OiAxO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cbi53ZXVpLW1zZ19fdGV4dC1hcmVhOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDk2cHg7XG59XG4ud2V1aS1tc2dfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBjb2xvcjogIzE5MTkxOTtcbiAgLXdlYmtpdC10ZXh0LXN0cm9rZTogMC4wMmVtO1xufVxuYm9keVtkYXRhLXdldWktdGhlbWU9J2RhcmsnXSAud2V1aS1tc2dfX3RpdGxlIHtcbiAgY29sb3I6ICNEMUQxRDE7XG59XG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIGJvZHk6bm90KFtkYXRhLXdldWktdGhlbWU9J2xpZ2h0J10pIC53ZXVpLW1zZ19fdGl0bGUge1xuICAgIGNvbG9yOiAjRDFEMUQxO1xuICB9XG59XG5Ac3VwcG9ydHMgKC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoKSB7XG4gIC53ZXVpLW1zZ19fdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgLXdlYmtpdC10ZXh0LXN0cm9rZTogaW5pdGlhbDtcbiAgfVxufVxuLndldWktbXNnX19kZXNjIHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi53ZXVpLW1zZ19fZGVzYy1wcmltYXJ5IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi53ZXVpLW1zZ19fY3VzdG9tLWFyZWEge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGh5cGhlbnM6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4ud2V1aS1tc2dfX3RpdGxlICsgLndldWktbXNnX19jdXN0b20tYXJlYSB7XG4gIG1hcmdpbi10b3A6IDQ4cHg7XG59XG4ud2V1aS1tc2dfX2Rlc2MgKyAud2V1aS1tc2dfX2N1c3RvbS1hcmVhLFxuLndldWktbXNnX19kZXNjLXByaW1hcnkgKyAud2V1aS1tc2dfX2N1c3RvbS1hcmVhIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi53ZXVpLW1zZ19fY3VzdG9tLWFyZWEgLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbHM6YmVmb3JlLFxuLndldWktbXNnX19jdXN0b20tYXJlYSAud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsczphZnRlciB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuLndldWktbXNnX19jdXN0b20tYXJlYSAud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLndldWktbXNnX19jdXN0b20tYXJlYSAud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsOmJlZm9yZSB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuLndldWktbXNnX19vcHItYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4ud2V1aS1tc2dfX29wci1hcmVhIC53ZXVpLWJ0bi1hcmVhIHtcbiAgbWFyZ2luOiAwO1xufVxuLndldWktbXNnX19vcHItYXJlYSAud2V1aS1idG4gKyAud2V1aS1idG4ge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLndldWktbXNnX19vcHItYXJlYTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogOTZweDtcbn1cbi53ZXVpLW1zZ19fb3ByLWFyZWEgKyAud2V1aS1tc2dfX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tdG9wOiA0OHB4O1xufVxuLndldWktbXNnX190aXBzLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICBwYWRkaW5nOiAwIDQwcHg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLndldWktbXNnX19vcHItYXJlYSArIC53ZXVpLW1zZ19fdGlwcy1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogNDhweDtcbn1cbi53ZXVpLW1zZ19fdGlwcy1hcmVhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiA2NHB4O1xufVxuLndldWktbXNnX190aXBzIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLW1zZ19fZXh0cmEtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLW1zZ19fZXh0cmEtYXJlYSBhLFxuLndldWktbXNnX19leHRyYS1hcmVhIG5hdmlnYXRvciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktbXNnX19leHRyYS1hcmVhIG5hdmlnYXRvciB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi53ZXVpLW1zZ19hbGlnbi10b3AgLndldWktbXNnX190ZXh0LWFyZWE6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1jZWxsc19fZ3JvdXAge1xuICBib3JkZXI6IDA7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybTpmaXJzdC1jaGlsZCAud2V1aS1jZWxsc19fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbHNfX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBwYWRkaW5nOiAwIDMycHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsczpiZWZvcmUsXG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsOmJlZm9yZSB7XG4gIGxlZnQ6IDMycHg7XG4gIHJpZ2h0OiAzMnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbHNfY2hlY2tib3ggLndldWktY2hlY2tfX2xhYmVsOmJlZm9yZSB7XG4gIGxlZnQ6IDcycHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsczphZnRlciB7XG4gIGxlZnQ6IDMycHg7XG4gIHJpZ2h0OiAzMnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbCB7XG4gIHBhZGRpbmc6IDE2cHggMzJweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGw6bm90KC53ZXVpLWNlbGxfbGluaykge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfX2hkIHtcbiAgcGFkZGluZy1yaWdodDogMTZweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfX2Z0IHtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF93YXJuIGlucHV0IHtcbiAgY29sb3I6IHZhcigtLXdldWktUkVEKTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWxhYmVsIHtcbiAgbWF4LXdpZHRoOiA1ZW07XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbHNfX3RpcHMge1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIHBhZGRpbmc6IDAgMzJweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsc19fdGlwcyBhIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxzX190aXBzX3dhcm4ge1xuICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9zZWxlY3Qge1xuICBwYWRkaW5nOiAwO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9zZWxlY3QgLndldWktc2VsZWN0IHtcbiAgcGFkZGluZzogMCAzMnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9zZWxlY3QgLndldWktY2VsbF9fYmQ6YWZ0ZXIge1xuICByaWdodDogMzJweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfc2VsZWN0LWJlZm9yZSAud2V1aS1sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMjRweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfc2VsZWN0LWJlZm9yZSAud2V1aS1zZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICBib3gtc2l6aW5nOiBpbml0aWFsO1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9zZWxlY3QtYWZ0ZXIge1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3NlbGVjdC1hZnRlciAud2V1aS1zZWxlY3Qge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3N3aXRjaCB7XG4gIHBhZGRpbmc6IDEycHggMzJweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfd3JhcCB7XG4gIGFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICBwYWRkaW5nLXRvcDogOHB4O1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF93cmFwIC53ZXVpLWNlbGxfX2hkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfd3JhcCAud2V1aS1sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfd3JhcCAud2V1aS1jZWxsX19iZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfX2NvbnRyb2wge1xuICBtYXJnaW46IDhweCAwIDhweCAxNnB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF9fY29udHJvbF9mbGV4IHtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAzMHZ3O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktdmNvZGUtYnRuIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nOiAwIDEycHg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUJUTi1ERUZBVUxULUNPTE9SKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CVE4tREVGQVVMVC1CRyk7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS12Y29kZS1idG46YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWNlbGxzX19ncm91cF9mb3JtIC53ZXVpLWNlbGxfdmNvZGUud2V1aS1jZWxsX3dyYXAge1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xufVxuLndldWktY2VsbHNfX2dyb3VwX2Zvcm0gLndldWktY2VsbF92Y29kZS53ZXVpLWNlbGxfd3JhcCAud2V1aS1sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDEycHg7XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3Zjb2RlLndldWktY2VsbF93cmFwIC53ZXVpLWlucHV0IHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBtaW4taGVpZ2h0OiAxLjg4MjM1Mjk0ZW07XG59XG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSAud2V1aS1jZWxsX3Zjb2RlLndldWktY2VsbF93cmFwIC53ZXVpLWJ0bl9yZXNldCB7XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbn1cbi53ZXVpLWZvcm0ge1xuICBwYWRkaW5nOiA1NnB4IDAgMDtcbiAgcGFkZGluZzogY2FsYyg1NnB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcCkpIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICBwYWRkaW5nOiBjYWxjKDU2cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkpIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xufVxuLndldWktZm9ybSAud2V1aS1mb290ZXIsXG4ud2V1aS1mb3JtIC53ZXVpLWZvb3Rlcl9fbGluayB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbi53ZXVpLWZvcm0gLndldWktYWdyZWUge1xuICBwYWRkaW5nOiAwO1xufVxuLndldWktZm9ybV9fdGV4dC1hcmVhIHtcbiAgcGFkZGluZzogMCAzMnB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLndldWktZm9ybV9fY29udHJvbC1hcmVhIHtcbiAgZmxleDogMTtcbiAgbWFyZ2luOiA0OHB4IDAgNDBweDtcbn1cbi53ZXVpLWZvcm1fX3RpcHMtYXJlYSxcbi53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBwYWRkaW5nOiAwIDMycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tdG9wOiA1MnB4O1xufVxuLndldWktZm9ybV9fb3ByLWFyZWEge1xuICBwYWRkaW5nOiAwIDMycHg7XG59XG4ud2V1aS1mb3JtX19vcHItYXJlYTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogOTZweDtcbn1cbi53ZXVpLWZvcm1fX29wci1hcmVhICsgLndldWktZm9ybV9fdGlwcy1hcmVhIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi53ZXVpLWZvcm1fX3RpcHMtYXJlYSArIC53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLndldWktZm9ybV9fdGlwcy1hcmVhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuLndldWktZm9ybV9fdGl0bGUge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM2O1xufVxuLndldWktZm9ybV9fZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cbi53ZXVpLWZvcm1fX3RpcHMge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLndldWktZm9ybV9fdGlwcyBhLFxuLndldWktZm9ybV9fdGlwcyBuYXZpZ2F0b3Ige1xuICBjb2xvcjogdmFyKC0td2V1aS1MSU5LKTtcbn1cbi53ZXVpLWZvcm1fX3RpcHMgbmF2aWdhdG9yIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1hcnRpY2xlIHtcbiAgcGFkZGluZzogMjRweCAxNnB4O1xuICBwYWRkaW5nOiAyNHB4IGNhbGMoMTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIGNhbGMoMjRweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKSBjYWxjKDE2cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBwYWRkaW5nOiAyNHB4IGNhbGMoMTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBjYWxjKDI0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpIGNhbGMoMTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbn1cbi53ZXVpLWFydGljbGUgc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuLndldWktYXJ0aWNsZSBoMSB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC45ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1hcnRpY2xlIGgyIHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjM0ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1hcnRpY2xlIGgzIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwLjM0ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1hcnRpY2xlICoge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbi53ZXVpLWFydGljbGUgcCB7XG4gIG1hcmdpbjogMCAwIDAuOGVtO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXRhYmJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTEpO1xufVxuLndldWktdGFiYmFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbn1cbi53ZXVpLXRhYmJhcl9faXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiA4cHggMDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoOHB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyg4cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICBmb250LXNpemU6IDA7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi53ZXVpLXRhYmJhcl9faXRlbTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG59XG4ud2V1aS10YWJiYXJfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xufVxuLndldWktdGFiYmFyX19pdGVtLndldWktYmFyX19pdGVtX29uIC53ZXVpLXRhYmJhcl9faWNvbixcbi53ZXVpLXRhYmJhcl9faXRlbS53ZXVpLWJhcl9faXRlbV9vbiAud2V1aS10YWJiYXJfX2ljb24gPiBpLFxuLndldWktdGFiYmFyX19pdGVtLndldWktYmFyX19pdGVtX29uIC53ZXVpLXRhYmJhcl9fbGFiZWwge1xuICBjb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG59XG4ud2V1aS10YWJiYXJfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IDIuOGVtO1xuICBoZWlnaHQ6IDIuOGVtO1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG59XG5pLndldWktdGFiYmFyX19pY29uLFxuLndldWktdGFiYmFyX19pY29uID4gaSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG59XG4ud2V1aS10YWJiYXJfX2ljb24gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi53ZXVpLXRhYmJhcl9fbGFiZWwge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1uYXZiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgcGFkZGluZy10b3A6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICBwYWRkaW5nLXRvcDogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApO1xufVxuLndldWktbmF2YmFyOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktbmF2YmFyICsgLndldWktdGFiX19wYW5lbCB7XG4gIHBhZGRpbmctYm90dG9tOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbn1cbi53ZXVpLW5hdmJhcl9faXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuLndldWktbmF2YmFyX19pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctQ09MT1ItQUNUSVZFKTtcbn1cbi53ZXVpLW5hdmJhcl9faXRlbS53ZXVpLWJhcl9faXRlbV9vbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctQ09MT1ItQUNUSVZFKTtcbn1cbi53ZXVpLW5hdmJhcl9faXRlbTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMC41KTtcbn1cbi53ZXVpLW5hdmJhcl9faXRlbTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG59XG4ud2V1aS1uYXZiYXJfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xufVxuLndldWktbmF2YmFyX19pdGVtOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktdGFiIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLndldWktdGFiX19wYW5lbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXg6IDE7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG4ud2V1aS10YWJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud2V1aS1wcm9ncmVzc19fYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0wKTtcbiAgaGVpZ2h0OiAzcHg7XG4gIGZsZXg6IDE7XG59XG4ud2V1aS1wcm9ncmVzc19faW5uZXItYmFyIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG59XG4ud2V1aS1wcm9ncmVzc19fb3ByIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBmb250LXNpemU6IDA7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXBhbmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktcGFuZWw6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLndldWktcGFuZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktcGFuZWw6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1wYW5lbF9faGQge1xuICBwYWRkaW5nOiAxNnB4IDE2cHggMTNweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndldWktcGFuZWxfX2hkOmFmdGVyIHtcbiAgbGVmdDogMTVweDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktbWVkaWEtYm94IHtcbiAgcGFkZGluZzogMTZweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndldWktbWVkaWEtYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbiAgbGVmdDogMTZweDtcbn1cbi53ZXVpLW1lZGlhLWJveDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuYS53ZXVpLW1lZGlhLWJveCB7XG4gIGNvbG9yOiAjMDAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5hLndldWktbWVkaWEtYm94OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctQ09MT1ItQUNUSVZFKTtcbn1cbi53ZXVpLW1lZGlhLWJveF9fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG4ud2V1aS1tZWRpYS1ib3hfX2Rlc2Mge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG4ud2V1aS1tZWRpYS1ib3hfX2luZm8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0yKTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLW1lZGlhLWJveF9faW5mb19fbWV0YSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG59XG4ud2V1aS1tZWRpYS1ib3hfX2luZm9fX21ldGFfZXh0cmEge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTIpO1xufVxuLndldWktbWVkaWEtYm94X2FwcG1zZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud2V1aS1tZWRpYS1ib3hfYXBwbXNnIC53ZXVpLW1lZGlhLWJveF9faGQge1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud2V1aS1tZWRpYS1ib3hfYXBwbXNnIC53ZXVpLW1lZGlhLWJveF9fdGh1bWIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi53ZXVpLW1lZGlhLWJveF9hcHBtc2cgLndldWktbWVkaWEtYm94X19iZCB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cbi53ZXVpLW1lZGlhLWJveF9zbWFsbC1hcHBtc2cge1xuICBwYWRkaW5nOiAwO1xufVxuLndldWktbWVkaWEtYm94X3NtYWxsLWFwcG1zZyAud2V1aS1jZWxscyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1tZWRpYS1ib3hfc21hbGwtYXBwbXNnIC53ZXVpLWNlbGxzOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWdyaWRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktZ3JpZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktZ3JpZHM6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuLndldWktZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi53ZXVpLWdyaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDFweDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwLjUpO1xufVxuLndldWktZ3JpZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbn1cbi53ZXVpLWdyaWQ6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy1DT0xPUi1BQ1RJVkUpO1xufVxuLndldWktZ3JpZF9faWNvbiB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLndldWktZ3JpZF9faWNvbiBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi53ZXVpLWdyaWRfX2ljb24gKyAud2V1aS1ncmlkX19sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cbi53ZXVpLWdyaWRfX2xhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWZvb3RlciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWZvb3RlciBhLFxuLndldWktZm9vdGVyIG5hdmlnYXRvciB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUxJTkspO1xufVxuLndldWktZm9vdGVyIG5hdmlnYXRvciB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi53ZXVpLWZvb3Rlcl9maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTZweCArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIGxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIHJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbn1cbi53ZXVpLWZvb3Rlcl9fbGlua3Mge1xuICBmb250LXNpemU6IDA7XG59XG4ud2V1aS1mb290ZXJfX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbjogMCA4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLndldWktZm9vdGVyX19saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDFweDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7XG4gIGxlZnQ6IC04cHg7XG4gIHRvcDogMC4zNmVtO1xuICBib3R0b206IDAuMzZlbTtcbn1cbi53ZXVpLWZvb3Rlcl9fbGluazpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktZm9vdGVyX190ZXh0IHtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBmb250LXNpemU6IDEycHg7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndldWktZmxleF9faXRlbSB7XG4gIGZsZXg6IDE7XG59XG4jaW50cm9kdWN0aW9uIHtcbiAgaGVpZ2h0OiAxMjBweDtcbn1cbiNwb3NpdGlvbiB7XG4gIGhlaWdodDogMTAwcHg7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTAwMDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDE2cHg7XG4gIHJpZ2h0OiAxNnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDkwJTtcbn1cbi53ZXVpLWRpYWxvZ19faGQge1xuICBwYWRkaW5nOiAzMnB4IDI0cHggMTZweDtcbn1cbi53ZXVpLWRpYWxvZ19fdGl0bGUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1kaWFsb2dfX2JkIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBwYWRkaW5nOiAwIDI0cHg7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xufVxuLndldWktZGlhbG9nX19iZDpmaXJzdC1jaGlsZCB7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDMycHggMjRweCAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLndldWktZGlhbG9nX19mdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbn1cbi53ZXVpLWRpYWxvZ19fZnQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRElBTE9HLUxJTkUtQ09MT1IpO1xuICBjb2xvcjogdmFyKC0td2V1aS1ESUFMT0ctTElORS1DT0xPUik7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbn1cbi53ZXVpLWRpYWxvZ19fYnRuIHtcbiAgZmxleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjQxMTc2NDcxO1xuICBwYWRkaW5nOiAxNnB4IDA7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS1kaWFsb2dfX2J0bjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1kaWFsb2dfX2J0bjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDFweDtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLXdldWktRElBTE9HLUxJTkUtQ09MT1IpO1xuICBjb2xvcjogdmFyKC0td2V1aS1ESUFMT0ctTElORS1DT0xPUik7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMC41KTtcbn1cbi53ZXVpLWRpYWxvZ19fYnRuOmZpcnN0LWNoaWxkOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLWRpYWxvZ19fYnRuX2RlZmF1bHQge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy1IQUxGKTtcbn1cbi53ZXVpLXNraW5fYW5kcm9pZCAud2V1aS1kaWFsb2cge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3gtc2hhZG93OiAwIDZweCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWRpYWxvZ19fdGl0bGUge1xuICBmb250LXNpemU6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19oZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19iZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWRpYWxvZ19fYmQ6Zmlyc3QtY2hpbGQge1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcbn1cbi53ZXVpLXNraW5fYW5kcm9pZCAud2V1aS1kaWFsb2dfX2Z0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBsaW5lLWhlaWdodDogNDBweDtcbiAgbWluLWhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMCAyNHB4IDE2cHg7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19mdDphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBhZGRpbmc6IDAgMC44ZW07XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktZGlhbG9nX19idG46YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWRpYWxvZ19fYnRuOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjhlbTtcbn1cbi53ZXVpLXNraW5fYW5kcm9pZCAud2V1aS1kaWFsb2dfX2J0bl9kZWZhdWx0IHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctSEFMRik7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNTJweCkge1xuICAud2V1aS1kaWFsb2cge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG1heC1oZWlnaHQ6IDc1JTtcbiAgei1pbmRleDogNTAwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTJweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgMjRweDtcbiAgcGFkZGluZzogMCBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBjYWxjKDI0cHggKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICBwYWRkaW5nOiAwIGNhbGMoMjRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgY2FsYygyNHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA1NThweCkge1xuICAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2cge1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gIH1cbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGQge1xuICBmb250LXNpemU6IDhweDtcbiAgaGVpZ2h0OiA4ZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZCAud2V1aS1pY29uLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkIC53ZXVpLWljb24tYnRuOmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04cHg7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19tYWluIHtcbiAgZmxleDogMTtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUgKyAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19tYWluIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIDQwcHg7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19tYWluICsgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZF9fc2lkZSB7XG4gIHJpZ2h0OiAtOHB4O1xuICBsZWZ0OiBhdXRvO1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZF9fbWFpbiArIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUgLndldWktaWNvbi1idG4ge1xuICByaWdodDogMDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fc3VidGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fYmQge1xuICBmbGV4OiAxO1xuICBtaW4taGVpZ2h0OiAwO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcbiAgaHlwaGVuczogYXV0bztcbiAgcGFkZGluZy10b3A6IDRweDtcbiAgcGFkZGluZy1ib3R0b206IDU2cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Rlc2Mge1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX190aXBzIHtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMik7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IHtcbiAgcGFkZGluZzogMCAwIDY0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZnQgLndldWktYnRuIHtcbiAgd2lkdGg6IDE4NHB4O1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpLFxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19mdCAud2V1aS1idG46bnRoLWxhc3QtY2hpbGQobisyKSArIC53ZXVpLWJ0biB7XG4gIG1hcmdpbjogMCA4cHg7XG4gIHdpZHRoOiAxMzZweDtcbn1cbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZnQgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMik6Zmlyc3QtY2hpbGQsXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpOmxhc3QtY2hpbGQsXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpICsgLndldWktYnRuOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2J0bi1hcmVhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2J0bi1hcmVhICsgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19hdHRhY2htZW50LWFyZWEge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMzRweDtcbn1cbi53ZXVpLWljb24tYnRuIHtcbiAgb3V0bGluZTogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBmb250LXNpemU6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG59XG4ud2V1aS1pY29uLW1vcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnJTNFICAlM0NwYXRoIGZpbGwtb3BhY2l0eT0nLjknIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTUgMTAuMjVhMS43NSAxLjc1IDAgMSAxIDAgMy41IDEuNzUgMS43NSAwIDAgMSAwLTMuNXptNyAwYTEuNzUgMS43NSAwIDEgMSAwIDMuNSAxLjc1IDEuNzUgMCAwIDEgMC0zLjV6bTcgMGExLjc1IDEuNzUgMCAxIDEgMCAzLjUgMS43NSAxLjc1IDAgMCAxIDAtMy41eicvJTNFJTNDL3N2ZyUzRVwiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgLXdlYmtpdC1tYXNrLXNpemU6IGNvdmVyO1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktaWNvbi1idG5fZ29iYWNrIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTAlMjAxOS40MzhMOC45NTUlMjAyMC41bC03LjY2Ni03Ljc5YTEuMDIlMjAxLjAyJTIwMCUyMDAxMC0xLjQyTDguOTU1JTIwMy41JTIwMTAlMjA0LjU2MyUyMDIuNjgyJTIwMTIlMjAxMCUyMDE5LjQzOHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xuICAtd2Via2l0LW1hc2stc2l6ZTogY292ZXI7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cbi53ZXVpLWljb24tYnRuX2Nsb3NlIHtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuMjUlMjAxMC42OTNMNi4wNTclMjA0LjUlMjA1JTIwNS41NTdsNi4xOTMlMjA2LjE5M0w1JTIwMTcuOTQzJTIwNi4wNTclMjAxOWw2LjE5My02LjE5M0wxOC40NDMlMjAxOWwxLjA1Ny0xLjA1Ny02LjE5My02LjE5M0wxOS41JTIwNS41NTclMjAxOC40NDMlMjA0LjV6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgLXdlYmtpdC1tYXNrLXNpemU6IGNvdmVyO1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXRvYXN0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1MDAwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiAxMy42ZW07XG4gIGhlaWdodDogMTMuNmVtO1xuICB0b3A6IDQwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy00KTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi53ZXVpLXRvYXN0X3RleHQge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4td2lkdGg6IDE1MnB4O1xuICBtYXgtd2lkdGg6IDIxNnB4O1xuICBwYWRkaW5nOiAxMnB4IDA7XG59XG4ud2V1aS10b2FzdF90ZXh0IC53ZXVpLXRvYXN0X19jb250ZW50IHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLndldWktaWNvbl90b2FzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLWljb24td2FybiB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4ud2V1aS1pY29uX3RvYXN0LndldWktbG9hZGluZyB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG59XG4ud2V1aS1pY29uX3RvYXN0LndldWktcHJpbWFyeS1sb2FkaW5nIHtcbiAgZm9udC1zaXplOiA0MHB4O1xuICBjb2xvcjogI0VERURFRDtcbn1cbi53ZXVpLWljb25fdG9hc3Qud2V1aS1wcmltYXJ5LWxvYWRpbmc6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiA0cHggMCA0cHggNHB4O1xufVxuLndldWktaWNvbl90b2FzdC53ZXVpLXByaW1hcnktbG9hZGluZzphZnRlciB7XG4gIGJvcmRlci13aWR0aDogNHB4IDRweCA0cHggMDtcbn1cbi53ZXVpLWljb25fdG9hc3Qud2V1aS1wcmltYXJ5LWxvYWRpbmcgLndldWktcHJpbWFyeS1sb2FkaW5nX19kb3Qge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDRweDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbn1cbi53ZXVpLXRvYXN0X19jb250ZW50IHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBwYWRkaW5nOiAwIDEycHg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuLndldWktdG9hc3RfdGV4dC1tb3JlIC53ZXVpLWljb25fdG9hc3Qge1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xufVxuLndldWktdG9hc3RfdGV4dC1tb3JlIC53ZXVpLXRvYXN0X19jb250ZW50IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1tYXNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbi53ZXVpLW1hc2tfdHJhbnNwYXJlbnQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktYWN0aW9uc2hlZXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwJSk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogNTAwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMnB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X190aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiAwIDI0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdldWktQkctMik7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fdGl0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktYWN0aW9uc2hlZXRfX3RpdGxlIC53ZXVpLWFjdGlvbnNoZWV0X190aXRsZS10ZXh0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fbWVudSB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xufVxuLndldWktYWN0aW9uc2hlZXRfX2FjdGlvbiB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XG4gIHBhZGRpbmctYm90dG9tOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X19jZWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDExNzY0NzE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbDphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLUNPTE9SLUFDVElWRSk7XG59XG4ud2V1aS1hY3Rpb25zaGVldF9fY2VsbDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktYWN0aW9uc2hlZXRfX2NlbGxfd2FybiB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktYWN0aW9uc2hlZXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIGJvdHRvbTogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiAyNzRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWFjdGlvbnNoZWV0X19hY3Rpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWFjdGlvbnNoZWV0X19tZW51IHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwIDZweCAzMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLndldWktc2tpbl9hbmRyb2lkIC53ZXVpLWFjdGlvbnNoZWV0X19jZWxsIHtcbiAgcGFkZGluZzogMTZweDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40MTE3NjQ3MTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktYWN0aW9uc2hlZXRfX2NlbGw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG59XG4ud2V1aS1za2luX2FuZHJvaWQgLndldWktYWN0aW9uc2hlZXRfX2NlbGw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcbn1cbi53ZXVpLWFjdGlvbnNoZWV0X3RvZ2dsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG4ud2V1aS1sb2FkbW9yZSB7XG4gIHdpZHRoOiA2NSU7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMDtcbn1cbi53ZXVpLWxvYWRtb3JlIC53ZXVpLWxvYWRpbmcsXG4ud2V1aS1sb2FkbW9yZSAud2V1aS1wcmltYXJ5LWxvYWRpbmcge1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbi53ZXVpLWxvYWRtb3JlX190aXBzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktbG9hZG1vcmVfbGluZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLndldWktbG9hZG1vcmVfbGluZSAud2V1aS1sb2FkbW9yZV9fdGlwcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMC45ZW07XG4gIHBhZGRpbmc6IDAgMC41NWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbn1cbi53ZXVpLWxvYWRtb3JlX2RvdCAud2V1aS1sb2FkbW9yZV9fdGlwcyB7XG4gIHBhZGRpbmc6IDAgMC4xNmVtO1xufVxuLndldWktbG9hZG1vcmVfZG90IC53ZXVpLWxvYWRtb3JlX190aXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IDA7XG4gIHRvcDogLTAuMTZlbTtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMTVlbSAwLjRlbTtcbiAgbWluLXdpZHRoOiAwLjY2NjY2NjY3ZW07XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktUkVEKTtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLndldWktYmFkZ2VfZG90IHtcbiAgcGFkZGluZzogMC40ZW07XG4gIG1pbi13aWR0aDogMDtcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktdG9wdGlwcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0b3A6IDhweDtcbiAgbGVmdDogOHB4O1xuICByaWdodDogOHB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgei1pbmRleDogNTAwMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG59XG4ud2V1aS10b3B0aXBzX3dhcm4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLVJFRCk7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLWxpc3QtdGlwcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctdG9wOiAyNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndldWktbGlzdC10aXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0td2V1aS1GRy0zKTtcbiAgY29sb3I6IHZhcigtLXdldWktRkctMyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcbn1cbi53ZXVpLWxpc3QtdGlwczpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4ud2V1aS1saXN0LXRpcHNfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgbWFyZ2luOiAxNnB4IDA7XG59XG4ud2V1aS1saXN0LXRpcHNfX2l0ZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMjJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IC0wLjFlbTtcbn1cbi53ZXVpLWxpc3QtdGlwc19faXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud2V1aS1mb3JtLXByZXZpZXdfX2xpc3QgKyAud2V1aS1saXN0LXRpcHMgPiAud2V1aS1saXN0LXRpcHNfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiA2cHg7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXNlYXJjaC1iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0wKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi53ZXVpLXNlYXJjaC1iYXIud2V1aS1zZWFyY2gtYmFyX2ZvY3VzaW5nIC53ZXVpLXNlYXJjaC1iYXJfX2NhbmNlbC1idG4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi53ZXVpLXNlYXJjaC1iYXIud2V1aS1zZWFyY2gtYmFyX2ZvY3VzaW5nIC53ZXVpLXNlYXJjaC1iYXJfX2xhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53ZXVpLXNlYXJjaC1iYXIgLndldWktaWNvbi1zZWFyY2gge1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiAxLjZlbTtcbiAgaGVpZ2h0OiAxLjZlbTtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLndldWktc2VhcmNoLWJhcl9fZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4ud2V1aS1zZWFyY2gtYmFyX19ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud2V1aS1zZWFyY2gtYmFyX19ib3ggLndldWktc2VhcmNoLWJhcl9faW5wdXQge1xuICBwYWRkaW5nOiA4cHggMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMS4xNDI4NTcxNGVtO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTRlbTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjYXJldC1jb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xufVxuLndldWktc2VhcmNoLWJhcl9fYm94IC53ZXVpLXNlYXJjaC1iYXJfX2lucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi53ZXVpLXNlYXJjaC1iYXJfX2JveCAud2V1aS1pY29uLWNsZWFyIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIG1hc2stc2l6ZTogMmVtO1xuICBtYXNrLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSA4cHgpIDA7XG4gIG1pbi13aWR0aDogNDRweDtcbn1cbi53ZXVpLXNlYXJjaC1iYXJfX2JveCAud2V1aS1pY29uLWNsZWFyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDQ0cHg7XG59XG4ud2V1aS1zZWFyY2gtYmFyX19sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBmb250LXNpemU6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZXVpLUJHLTIpO1xufVxuLndldWktc2VhcmNoLWJhcl9fbGFiZWwgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLndldWktc2VhcmNoLWJhcl9fY2FuY2VsLWJ0biB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tbGVmdDogOHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG59XG4ud2V1aS1zZWFyY2gtYmFyX19pbnB1dDpub3QoOnZhbGlkKSArIC53ZXVpLWljb24tY2xlYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXBpY2tlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogNTAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcbiAgcGFkZGluZy1ib3R0b206IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbn1cbi53ZXVpLXBpY2tlcl9faGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxNnB4O1xuICBwYWRkaW5nOiAxNnB4IGNhbGMoMTZweCArIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpIDE2cHggY2FsYygxNnB4ICsgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgcGFkZGluZzogMTZweCBjYWxjKDE2cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgMTZweCBjYWxjKDE2cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi53ZXVpLXBpY2tlcl9faGQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1waWNrZXJfX2JkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xuICBoZWlnaHQ6IDI0MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktcGlja2VyX19ncm91cCB7XG4gIGZsZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLndldWktcGlja2VyX19ncm91cDpmaXJzdC1jaGlsZCAud2V1aS1waWNrZXJfX2l0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgcGFkZGluZy1sZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xufVxuLndldWktcGlja2VyX19ncm91cDpsYXN0LWNoaWxkIC53ZXVpLXBpY2tlcl9faXRlbSB7XG4gIHBhZGRpbmctcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xufVxuLndldWktcGlja2VyX19tYXNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB6LWluZGV4OiAzO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikpLCBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wLCBib3R0b207XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSA5MnB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIC53ZXVpLXBpY2tlcl9fbWFzayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyNSwgMC45NSksIHJnYmEoMjUsIDI1LCAyNSwgMC42KSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1LCAyNSwgMjUsIDAuOTUpLCByZ2JhKDI1LCAyNSwgMjUsIDAuNikpO1xufVxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICBib2R5Om5vdChbZGF0YS13ZXVpLXRoZW1lPSdsaWdodCddKSAud2V1aS1waWNrZXJfX21hc2sge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyNSwgMC45NSksIHJnYmEoMjUsIDI1LCAyNSwgMC42KSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1LCAyNSwgMjUsIDAuOTUpLCByZ2JhKDI1LCAyNSwgMjUsIDAuNikpO1xuICB9XG59XG4ud2V1aS1waWNrZXJfX2luZGljYXRvciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDU2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA5MnB4O1xuICB6LWluZGV4OiAzO1xufVxuLndldWktcGlja2VyX19pbmRpY2F0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13ZXVpLUZHLTMpO1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xufVxuLndldWktcGlja2VyX19pbmRpY2F0b3I6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXdldWktRkctMyk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDAuNSk7XG59XG4ud2V1aS1waWNrZXJfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4ud2V1aS1waWNrZXJfX2l0ZW0ge1xuICBoZWlnaHQ6IDQ4cHg7XG4gIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi53ZXVpLXBpY2tlcl9faXRlbV9kaXNhYmxlZCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xufVxuLypcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXG4qIFxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiogXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiogXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiogXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5Aa2V5ZnJhbWVzIHNsaWRlVXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG4ud2V1aS1hbmltYXRlLXNsaWRlLXVwIHtcbiAgYW5pbWF0aW9uOiBzbGlkZVVwIGVhc2UgMC4zcyBmb3J3YXJkcztcbn1cbkBrZXlmcmFtZXMgc2xpZGVEb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxufVxuLndldWktYW5pbWF0ZS1zbGlkZS1kb3duIHtcbiAgYW5pbWF0aW9uOiBzbGlkZURvd24gZWFzZSAwLjNzIGZvcndhcmRzO1xufVxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4ud2V1aS1hbmltYXRlLWZhZGUtaW4ge1xuICBhbmltYXRpb246IGZhZGVJbiBlYXNlIDAuM3MgZm9yd2FyZHM7XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4ud2V1aS1hbmltYXRlLWZhZGUtb3V0IHtcbiAgYW5pbWF0aW9uOiBmYWRlT3V0IGVhc2UgMC4zcyBmb3J3YXJkcztcbn1cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktYWdyZWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogOHB4IDE1cHggMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ud2V1aS1hZ3JlZSBhLFxuLndldWktYWdyZWUgbmF2aWdhdG9yIHtcbiAgY29sb3I6IHZhcigtLXdldWktTElOSyk7XG59XG4ud2V1aS1hZ3JlZSBuYXZpZ2F0b3Ige1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4ud2V1aS1hZ3JlZV9fdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xuICBtYXJnaW4tbGVmdDogMnB4O1xufVxuLndldWktYWdyZWVfX2NoZWNrYm94IHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgbWFzay1wb3NpdGlvbjogMCAwO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IDEwMCU7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMDAwJTIyJTIwaGVpZ2h0JTNEJTIyMTAwMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNTAwJTIwOTE2LjY2N0MyNjkuODgxJTIwOTE2LjY2NyUyMDgzLjMzMyUyMDczMC4xMTklMjA4My4zMzMlMjA1MDAlMjA4My4zMzMlMjAyNjkuODgxJTIwMjY5Ljg4MSUyMDgzLjMzMyUyMDUwMCUyMDgzLjMzM2MyMzAuMTE5JTIwMCUyMDQxNi42NjclMjAxODYuNTQ4JTIwNDE2LjY2NyUyMDQxNi42NjclMjAwJTIwMjMwLjExOS0xODYuNTQ4JTIwNDE2LjY2Ny00MTYuNjY3JTIwNDE2LjY2N3ptMC01MGMyMDIuNTA0JTIwMCUyMDM2Ni42NjctMTY0LjE2MyUyMDM2Ni42NjctMzY2LjY2NyUyMDAtMjAyLjUwNC0xNjQuMTYzLTM2Ni42NjctMzY2LjY2Ny0zNjYuNjY3LTIwMi41MDQlMjAwLTM2Ni42NjclMjAxNjQuMTYzLTM2Ni42NjclMjAzNjYuNjY3JTIwMCUyMDIwMi41MDQlMjAxNjQuMTYzJTIwMzY2LjY2NyUyMDM2Ni42NjclMjAzNjYuNjY3eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBmaWxsLW9wYWNpdHklM0QlMjIuOSUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XG4gIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBtYXJnaW4tdG9wOiAtMC4yZW07XG59XG4ud2V1aS1hZ3JlZV9fY2hlY2tib3gtY2hlY2sge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLndldWktYWdyZWVfX2NoZWNrYm94OmNoZWNrZWQsXG4ud2V1aS1hZ3JlZV9fY2hlY2tib3gtY2hlY2tbYXJpYS1jaGVja2VkPVwidHJ1ZVwiXSArIC53ZXVpLWFncmVlX19jaGVja2JveCB7XG4gIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0xLjE3Ny03Ljg2bC0yLjc2NS0yLjc2N0w3JTIwMTIuNDMxbDMuMTE5JTIwMy4xMjFhMSUyMDElMjAwJTIwMDAxLjQxNCUyMDBsNS45NTItNS45NS0xLjA2Mi0xLjA2Mi01LjYlMjA1LjZ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcbiAgY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xufVxuLndldWktYWdyZWVfYW5pbWF0ZSB7XG4gIGFuaW1hdGlvbjogd2V1aUFncmVlIDAuM3MgMTtcbn1cbkBrZXlmcmFtZXMgd2V1aUFncmVlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxNiUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOHB4KTtcbiAgfVxuICAyOCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTZweCk7XG4gIH1cbiAgNDQlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgNTklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE2cHgpO1xuICB9XG4gIDczJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDgyJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE2cHgpO1xuICB9XG4gIDk0JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi8qXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxuKiBcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4qIFxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Vcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4qIFxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4qIFxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuLndldWktcHJpbWFyeS1sb2FkaW5nIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29sb3I6ICM2MDYwNjA7XG4gIGFuaW1hdGlvbjogY2lyY2xlTG9hZGluZyAxcyBzdGVwcyg2MCwgZW5kKSBpbmZpbml0ZTtcbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZzpiZWZvcmUsXG4ud2V1aS1wcmltYXJ5LWxvYWRpbmc6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAuNWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAwLjEyNWVtIHNvbGlkO1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cbi53ZXVpLXByaW1hcnktbG9hZGluZzpiZWZvcmUge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDFlbTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMWVtO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMwMDAwMDAgOCUsIHJnYmEoMCwgMCwgMCwgMC4zKSA5NSUpO1xufVxuLndldWktcHJpbWFyeS1sb2FkaW5nOmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxZW07XG4gIC13ZWJraXQtbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwKSA4JSwgcmdiYSgwLCAwLCAwLCAwLjMpIDk1JSk7XG59XG4ud2V1aS1wcmltYXJ5LWxvYWRpbmdfX2RvdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNjI1ZW07XG4gIHdpZHRoOiAwLjEyNWVtO1xuICBoZWlnaHQ6IDAuMTI1ZW07XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjEyNWVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4xMjVlbTtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xufVxuQGtleWZyYW1lcyBjaXJjbGVMb2FkaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAzNjBkZWcpO1xuICB9XG59XG4ud2V1aS1wcmltYXJ5LWxvYWRpbmdfYnJhbmQge1xuICBjb2xvcjogdmFyKC0td2V1aS1CUkFORCk7XG59XG4ud2V1aS1wcmltYXJ5LWxvYWRpbmdfdHJhbnNwYXJlbnQge1xuICBjb2xvcjogI0VERURFRDtcbn1cbi53ZXVpLWxvYWRpbmcge1xuICBmb250LXNpemU6IDEwcHg7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogMmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGFuaW1hdGlvbjogd2V1aUxvYWRpbmcgMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsICUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMjAnIGhlaWdodD0nMTIwJyB2aWV3Qm94PScwIDAgMTAwIDEwMCclM0UlM0NwYXRoIGZpbGw9J25vbmUnIGQ9J00wIDBoMTAwdjEwMEgweicvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyM0U5RTlFOScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgwIC0zMCknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjM5ODk2OTcnIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoMzAgMTA1Ljk4IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyMzlCOTk5QScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSg2MCA3NS45OCA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjNBM0ExQTInIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoOTAgNjUgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzQUJBOUFBJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKDEyMCA1OC42NiA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjNCMkIyQjInIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoMTUwIDU0LjAyIDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyM0JBQjhCOScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgNTAgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzQzJDMEMxJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKC0xNTAgNDUuOTggNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzQ0JDQkNCJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKC0xMjAgNDEuMzQgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzRDJEMkQyJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKC05MCAzNSA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjNEQURBREEnIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoLTYwIDI0LjAyIDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyM0UyRTJFMicgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgtMzAgLTUuOTggNjUpJy8lM0UlM0Mvc3ZnJTNFXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuLndldWktbG9hZGluZy53ZXVpLWxvYWRpbmdfdHJhbnNwYXJlbnQsXG4ud2V1aS1idG5fbG9hZGluZy53ZXVpLWJ0bl9wcmltYXJ5IC53ZXVpLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCAlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTIwJyBoZWlnaHQ9JzEyMCcgdmlld0JveD0nMCAwIDEwMCAxMDAnJTNFJTNDcGF0aCBmaWxsPSdub25lJyBkPSdNMCAwaDEwMHYxMDBIMHonLyUzRSUzQ3JlY3QgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjU2KScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgwIC0zMCknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC41KScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgzMCAxMDUuOTggNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0ncmdiYSgyNTUsMjU1LDI1NSwuNDMpJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKDYwIDc1Ljk4IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjM4KScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSg5MCA2NSA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC4zMiknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoMTIwIDU4LjY2IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjI4KScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgxNTAgNTQuMDIgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0ncmdiYSgyNTUsMjU1LDI1NSwuMjUpJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKDE4MCA1MCA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC4yKScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgtMTUwIDQ1Ljk4IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjE3KScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgtMTIwIDQxLjM0IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjE0KScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgtOTAgMzUgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0ncmdiYSgyNTUsMjU1LDI1NSwuMSknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoLTYwIDI0LjAyIDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjAzKScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgtMzAgLTUuOTggNjUpJy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuQC13ZWJraXQta2V5ZnJhbWVzIHdldWlMb2FkaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAzNjBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHdldWlMb2FkaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAzNjBkZWcpO1xuICB9XG59XG4vKlxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cbiogXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuKiBcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuKiBcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuKiBcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cbi53ZXVpLXNsaWRlciB7XG4gIHBhZGRpbmc6IDE1cHggMThweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ud2V1aS1zbGlkZXJfX2lubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1GRy0zKTtcbn1cbi53ZXVpLXNsaWRlcl9fdHJhY2sge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQlJBTkQpO1xuICB3aWR0aDogMDtcbn1cbi53ZXVpLXNsaWRlcl9faGFuZGxlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTRweDtcbiAgbWFyZ2luLXRvcDogLTE0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDRweCB2YXIoLS13ZXVpLUZHLTMpO1xufVxuLndldWktc2xpZGVyLWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ud2V1aS1zbGlkZXItYm94IC53ZXVpLXNsaWRlciB7XG4gIGZsZXg6IDE7XG59XG4ud2V1aS1zbGlkZXItYm94X192YWx1ZSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgbWluLXdpZHRoOiAyNHB4O1xuICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDE0cHg7XG59XG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiZm5cIjtcclxuXHJcbmh0bWwge1xyXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgIGZvbnQtZmFtaWx5OiBAd2V1aUZvbnREZWZhdWx0O1xyXG59XHJcblxyXG4qIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG5hIGltZyB7XHJcbiAgICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbmEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgLnNldFRhcENvbG9yKCk7XHJcbn1cclxuaW5wdXQsXHJcbnRleHRhcmVhIHtcclxuICAgIGNhcmV0LWNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcclxufVxyXG46OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbi5zZXRUYXBDb2xvcihAYzpyZ2JhKDAsMCwwLDApKSB7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IEBjO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG4iLCJAaW1wb3J0ICdmbic7XHJcblxyXG5ib2R5IHtcclxuICAgIC52YXJzTGlnaHQoKTtcclxufVxyXG5cclxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xyXG4gICAgYm9keTpub3QoW2RhdGEtd2V1aS10aGVtZT0nbGlnaHQnXSkge1xyXG4gICAgICAgIC52YXJzRGFyaygpO1xyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5W2RhdGEtd2V1aS10aGVtZT0nZGFyayddIHtcclxuICAgIC52YXJzRGFyaygpO1xyXG59XHJcbiIsIi52YXJzTGlnaHQoKSB7XHJcbiAgICAtLXdldWktQkctMDogI2VkZWRlZDtcclxuICAgIC0td2V1aS1CRy0xOiAjZjdmN2Y3O1xyXG4gICAgLS13ZXVpLUJHLTI6ICNmZmY7XHJcbiAgICAtLXdldWktQkctMzogI2Y3ZjdmNztcclxuICAgIC0td2V1aS1CRy00OiAjNGM0YzRjO1xyXG4gICAgLS13ZXVpLUJHLTU6ICNmZmY7XHJcbiAgICAtLXdldWktRkctMDogcmdiYSgwLCAwLCAwLCAwLjkpO1xyXG4gICAgLS13ZXVpLUZHLUhBTEY6IHJnYmEoMCwgMCwgMCwgMC45KTtcclxuICAgIC0td2V1aS1GRy0xOiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgICAtLXdldWktRkctMjogcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gICAgLS13ZXVpLUZHLTM6IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIC0td2V1aS1SRUQ6ICNmYTUxNTE7XHJcbiAgICAtLXdldWktT1JBTkdFOiAjZmE5ZDNiO1xyXG4gICAgLS13ZXVpLVlFTExPVzogI2ZmYzMwMDtcclxuICAgIC0td2V1aS1HUkVFTjogIzkxZDMwMDtcclxuICAgIC0td2V1aS1MSUdIVEdSRUVOOiAjOTVlYzY5O1xyXG4gICAgLS13ZXVpLUJSQU5EOiAjMDdjMTYwO1xyXG4gICAgLS13ZXVpLUJMVUU6ICMxMGFlZmY7XHJcbiAgICAtLXdldWktSU5ESUdPOiAjMTQ4NWVlO1xyXG4gICAgLS13ZXVpLVBVUlBMRTogIzY0NjdmMDtcclxuICAgIC0td2V1aS1XSElURTogI2ZmZjtcclxuICAgIC0td2V1aS1MSU5LOiAjNTc2Yjk1O1xyXG4gICAgLS13ZXVpLUxJTkstQUNUSVZFOiBmYWRlKCM1NzZiOTUsIDUwJSk7XHJcbiAgICAtLXdldWktVEVYVEdSRUVOOiAjMDZhZTU2O1xyXG4gICAgLS13ZXVpLUZHOiBibGFjaztcclxuICAgIC0td2V1aS1CRzogd2hpdGU7XHJcbiAgICAtLXdldWktVEFHLVRFWFQtT1JBTkdFOiAjZmE5ZDNiO1xyXG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuMSk7XHJcbiAgICAtLXdldWktVEFHLVRFWFQtR1JFRU46ICMwNmFlNTY7XHJcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtR1JFRU46IHJnYmEoNiwgMTc0LCA4NiwgMC4xKTtcclxuICAgIC0td2V1aS1UQUctVEVYVC1CTFVFOiAjMTBhZWZmO1xyXG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUJMVUU6IHJnYmEoMTYsIDE3NCwgMjU1LCAwLjEpO1xyXG4gICAgLS13ZXVpLVRBRy1URVhULUJMQUNLOiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxBQ0s6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbn1cclxuIiwiLnZhcnNEYXJrKCkge1xyXG4gICAgLS13ZXVpLUJHLTA6ICMxMTExMTE7XHJcbiAgICAtLXdldWktQkctMTogIzFlMWUxZTtcclxuICAgIC0td2V1aS1CRy0yOiAjMTkxOTE5O1xyXG4gICAgLS13ZXVpLUJHLTM6ICMyMDIwMjA7XHJcbiAgICAtLXdldWktQkctNDogIzQwNDA0MDtcclxuICAgIC0td2V1aS1CRy01OiAjMmMyYzJjO1xyXG4gICAgLS13ZXVpLUZHLTA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcclxuICAgIC0td2V1aS1GRy1IQUxGOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XHJcbiAgICAtLXdldWktRkctMTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gICAgLS13ZXVpLUZHLTI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuICAgIC0td2V1aS1GRy0zOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xyXG4gICAgLS13ZXVpLVJFRDogI2ZhNTE1MTtcclxuICAgIC0td2V1aS1PUkFOR0U6ICNjODdkMmY7XHJcbiAgICAtLXdldWktWUVMTE9XOiAjY2M5YzAwO1xyXG4gICAgLS13ZXVpLUdSRUVOOiAjNzRhODAwO1xyXG4gICAgLS13ZXVpLUxJR0hUR1JFRU46ICMzZWI1NzU7XHJcbiAgICAtLXdldWktQlJBTkQ6ICMwN2MxNjA7XHJcbiAgICAtLXdldWktQkxVRTogIzEwYWVmZjtcclxuICAgIC0td2V1aS1JTkRJR086ICMxMTk2ZmY7XHJcbiAgICAtLXdldWktUFVSUExFOiAjODE4M2ZmO1xyXG4gICAgLS13ZXVpLVdISVRFOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XHJcbiAgICAtLXdldWktTElOSzogIzdkOTBhOTtcclxuICAgIC0td2V1aS1MSU5LLUFDVElWRTogZmFkZSgjN2Q5MGE5LCA1MCUpO1xyXG4gICAgLS13ZXVpLVRFWFRHUkVFTjogIzI1OWM1YztcclxuICAgIC0td2V1aS1GRzogd2hpdGU7XHJcbiAgICAtLXdldWktQkc6IGJsYWNrO1xyXG4gICAgLS13ZXVpLVRBRy1URVhULU9SQU5HRTogcmdiYSgyNTAsIDE1NywgNTksIDAuNik7XHJcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtT1JBTkdFOiByZ2JhKDI1MCwgMTU3LCA1OSwgMC4xKTtcclxuICAgIC0td2V1aS1UQUctVEVYVC1HUkVFTjogcmdiYSg2LCAxNzQsIDg2LCAwLjYpO1xyXG4gICAgLS13ZXVpLVRBRy1CQUNLR1JPVU5ELUdSRUVOOiByZ2JhKDYsIDE3NCwgODYsIDAuMSk7XHJcbiAgICAtLXdldWktVEFHLVRFWFQtQkxVRTogcmdiYSgxNiwgMTc0LCAyNTUsIDAuNik7XHJcbiAgICAtLXdldWktVEFHLUJBQ0tHUk9VTkQtQkxVRTogcmdiYSgxNiwgMTc0LCAyNTUsIDAuMSk7XHJcbiAgICAtLXdldWktVEFHLVRFWFQtQkxBQ0s6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICAgIC0td2V1aS1UQUctQkFDS0dST1VORC1CTEFDSzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcclxufTtcclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZHVwbGljYXRlLXNlbGVjdG9ycyAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2Jhc2UvdmFyaWFibGUvY29sb3JcIjtcclxuXHJcbltjbGFzc149XCJ3ZXVpLWljb24tXCJdLFxyXG5bY2xhc3MqPVwiIHdldWktaWNvbi1cIl0ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGZvbnQtc2l6ZToxMHB4O1xyXG4gICAgd2lkdGg6IDIuNGVtO1xyXG4gICAgaGVpZ2h0OiAyLjRlbTtcclxuICAgIG1hc2stcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgbWFzay1zaXplOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xyXG5cclxuICAgIC8vIOW5s+a7keWNh+e6p1xyXG4gICAgLy8mOm5vdChbY2xhc3NePVwid2V1aS1pY29uX1wiXSk6bm90KFtjbGFzcyo9XCIgd2V1aS1pY29uX1wiXSl7XHJcbiAgICAvLyAgICBmb250LXNpemU6MTRweDtcclxuICAgIC8vICAgIG1hcmdpbi1sZWZ0OiAuMmVtO1xyXG4gICAgLy8gICAgbWFyZ2luLXJpZ2h0OiAuMmVtO1xyXG4gICAgLy99XHJcbn1cclxuXHJcblxyXG4vLyBpY29uIG1hcFxyXG4ud2V1aS1pY29uLWNpcmNsZSB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTAwMCUyMiUyMGhlaWdodCUzRCUyMjEwMDAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMCUyMDkxNi42NjdDMjY5Ljg4MSUyMDkxNi42NjclMjA4My4zMzMlMjA3MzAuMTE5JTIwODMuMzMzJTIwNTAwJTIwODMuMzMzJTIwMjY5Ljg4MSUyMDI2OS44ODElMjA4My4zMzMlMjA1MDAlMjA4My4zMzNjMjMwLjExOSUyMDAlMjA0MTYuNjY3JTIwMTg2LjU0OCUyMDQxNi42NjclMjA0MTYuNjY3JTIwMCUyMDIzMC4xMTktMTg2LjU0OCUyMDQxNi42NjctNDE2LjY2NyUyMDQxNi42Njd6bTAtNTBjMjAyLjUwNCUyMDAlMjAzNjYuNjY3LTE2NC4xNjMlMjAzNjYuNjY3LTM2Ni42NjclMjAwLTIwMi41MDQtMTY0LjE2My0zNjYuNjY3LTM2Ni42NjctMzY2LjY2Ny0yMDIuNTA0JTIwMC0zNjYuNjY3JTIwMTY0LjE2My0zNjYuNjY3JTIwMzY2LjY2NyUyMDAlMjAyMDIuNTA0JTIwMTY0LjE2MyUyMDM2Ni42NjclMjAzNjYuNjY3JTIwMzY2LjY2N3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbC1vcGFjaXR5JTNEJTIyLjklMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tZG93bmxvYWQge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTExLjI1JTIwMTIuMDRsLTEuNzItMS43Mi0xLjA2JTIwMS4wNiUyMDIuODI4JTIwMi44M2ExJTIwMSUyMDAlMjAwMDEuNDE0LS4wMDFsMi44MjgtMi44MjgtMS4wNi0xLjA2MS0xLjczJTIwMS43M1Y3aC0xLjV2NS4wNHptMC01LjA0VjJoMS41djVoNi4yNTFjLjU1JTIwMCUyMC45OTkuNDQ2Ljk5OS45OTZ2MTMuMDA4YS45OTguOTk4JTIwMCUyMDAxLS45OTYuOTk2SDQuOTk2QS45OTguOTk4JTIwMCUyMDAxNCUyMDIxLjAwNFY3Ljk5NkExJTIwMSUyMDAlMjAwMTQuOTk5JTIwN2g2LjI1MXolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24taW5mbyB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0tLjc1LTEydjdoMS41di03aC0xLjV6TTEyJTIwOWExJTIwMSUyMDAlMjAxMDAtMiUyMDElMjAxJTIwMCUyMDAwMCUyMDJ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxufVxyXG4ud2V1aS1pY29uLXNhZmUtc3VjY2VzcyB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTAwMCUyMDEwMDAlMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk01MDAuOSUyMDQuNkMzMTUuNSUyMDQ2LjclMjAxODAuNCUyMDkzLjElMjA1Ny42JTIwMTMyYzAlMjAxMjkuMy4yJTIwMjMxLjcuMiUyMDMzOS43JTIwMCUyMDMwNC4yJTIwMjQ4LjMlMjA0NzEuNiUyMDQ0My4xJTIwNTIzLjdDNjk1LjclMjA5NDMuMyUyMDk0NCUyMDc3NS45JTIwOTQ0JTIwNDcxLjdjMC0xMDglMjAuMi0yMTAuNC4yLTMzOS43QzgyMS40JTIwOTMuMSUyMDY4Ni4zJTIwNDYuNyUyMDUwMC45JTIwNC42em0yNDguMyUyMDM0OS4xbC0yOTkuNyUyMDI5NWMtMi4xJTIwMi01LjMlMjAyLTcuNC0uMUwzMDQuNCUyMDUwNi4xYy0yLTIuMS0yLjMtNS43LS42LThsMTguMy0yNC45YzEuNy0yLjMlMjA1LTIuOCUyMDcuMi0xbDExMi4yJTIwODZjMi4zJTIwMS44JTIwNiUyMDEuNyUyMDguMS0uMWwyNzQuNy0yMjguOWMyLjItMS44JTIwNS43LTEuNyUyMDcuNy4zbDE3JTIwMTYuOGMyLjIlMjAyLjElMjAyLjIlMjA1LjMuMiUyMDcuNHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwY2xpcC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyMGZpbGwlM0QlMjIlMjMwNzAyMDIlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tc2FmZS13YXJuIHtcclxuICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlMjB2aWV3Qm94JTNEJTIyMCUyMDAlMjAxMDAwJTIwMTAwMCUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMC45JTIwNC41Yy0xODUuNCUyMDQyLTMyMC40JTIwODguNC00NDMuMiUyMDEyNy4zJTIwMCUyMDEyOS4zLjIlMjAyMzEuNy4yJTIwMzM5LjYlMjAwJTIwMzA0LjElMjAyNDguMiUyMDQ3MS40JTIwNDQzJTIwNTIzLjYlMjAxOTQuNy01Mi4yJTIwNDQzLTIxOS41JTIwNDQzLTUyMy42JTIwMC0xMDcuOS4yLTIxMC4zLjItMzM5LjZDODIxLjMlMjA5Mi45JTIwNjg2LjIlMjA0Ni41JTIwNTAwLjklMjA0LjV6bS0yNi4xJTIwMjcxLjFoNTIuMWM1LjglMjAwJTIwMTAuMyUyMDQuNyUyMDEwLjElMjAxMC40bC0xMS42JTIwMzEzLjhjLS4xJTIwMi44LTIuNSUyMDUuMi01LjQlMjA1LjJoLTM4LjJjLTIuOSUyMDAtNS4zLTIuMy01LjQtNS4yTDQ2NC44JTIwMjg2Yy0uMi01LjglMjA0LjMtMTAuNCUyMDEwLTEwLjR6bTI2LjElMjA0NDguM2MtMjAuMiUyMDAtMzYuNS0xNi4zLTM2LjUtMzYuNXMxNi4zLTM2LjUlMjAzNi41LTM2LjUlMjAzNi41JTIwMTYuMyUyMDM2LjUlMjAzNi41LTE2LjQlMjAzNi41LTM2LjUlMjAzNi41eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBjbGlwLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbCUzRCUyMiUyMzAyMDIwMiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbn1cclxuLndldWktaWNvbi1zdWNjZXNzIHtcclxuICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0xLjE3Ny03Ljg2bC0yLjc2NS0yLjc2N0w3JTIwMTIuNDMxbDMuMTE5JTIwMy4xMjFhMSUyMDElMjAwJTIwMDAxLjQxNCUyMDBsNS45NTItNS45NS0xLjA2Mi0xLjA2Mi01LjYlMjA1LjZ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxufVxyXG4ud2V1aS1pY29uLXN1Y2Nlc3MtY2lyY2xlIHtcclxuICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bTAtMS4yYTguOCUyMDguOCUyMDAlMjAxMDAtMTcuNiUyMDguOCUyMDguOCUyMDAlMjAwMDAlMjAxNy42em0tMS4xNzItNi4yNDJsNS44MDktNS44MDguODQ4Ljg0OS01Ljk1JTIwNS45NWExJTIwMSUyMDAlMjAwMS0xLjQxNCUyMDBMNyUyMDEyLjQyNmwuODQ5LS44NDklMjAyLjk4JTIwMi45OHolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTguNjU3JTIwMTguNDM1TDMlMjAxMi43NzhsMS40MTQtMS40MTQlMjA0Ljk1JTIwNC45NUwyMC42NzglMjA1bDEuNDE0JTIwMS40MTQtMTIuMDIlMjAxMi4wMjFhMSUyMDElMjAwJTIwMDEtMS40MTUlMjAweiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24td2FpdGluZyB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuNzUlMjAxMS4zOFY2aC0xLjV2Nmw0LjI0MyUyMDQuMjQzJTIwMS4wNi0xLjA2LTMuODAzLTMuODA0ek0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbn1cclxuLndldWktaWNvbi13YWl0aW5nLWNpcmNsZSB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuNiUyMDExLjUwM2wzLjg5MSUyMDMuODkxLS44NDguODQ5TDExLjQlMjAxMlY2aDEuMnY1LjUwM3pNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24td2FybiB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0tLjc2My0xNS44NjRsLjExJTIwNy41OTZoMS4zMDVsLjExLTcuNTk2aC0xLjUyNXptLjc1OSUyMDEwLjk2N2MuNTEyJTIwMCUyMC45MDItLjM4My45MDItLjg4MiUyMDAtLjUtLjM5LS44ODItLjkwMi0uODgyYS44NzguODc4JTIwMCUyMDAwLS44OTYuODgyYzAlMjAuNDk5LjM5Ni44ODIuODk2Ljg4MnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24taW5mby1jaXJjbGUge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMC0xLjJhOC44JTIwOC44JTIwMCUyMDEwMC0xNy42JTIwOC44JTIwOC44JTIwMCUyMDAwMCUyMDE3LjZ6TTExLjQlMjAxMGgxLjJ2N2gtMS4ydi03em0uNi0xYTElMjAxJTIwMCUyMDExMC0yJTIwMSUyMDElMjAwJTIwMDEwJTIwMnolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tY2FuY2VsIHtcclxuICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NnJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMC0xLjJhOC44JTIwOC44JTIwMCUyMDEwMC0xNy42JTIwOC44JTIwOC44JTIwMCUyMDAwMCUyMDE3LjZ6JTIyJTIwZmlsbC1ydWxlJTNEJTIybm9uemVybyUyMiUyRiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyLjg0OSUyMDEybDMuMTElMjAzLjExMS0uODQ4Ljg0OUwxMiUyMDEyLjg0OWwtMy4xMTElMjAzLjExLS44NDktLjg0OEwxMS4xNTElMjAxMmwtMy4xMS0zLjExMS44NDgtLjg0OUwxMiUyMDExLjE1MWwzLjExMS0zLjExLjg0OS44NDhMMTIuODQ5JTIwMTJ6JTIyJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRSk7XHJcbn1cclxuLndldWktaWNvbi1zZWFyY2gge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTE2LjMxJTIwMTUuNTYxbDQuMTE0JTIwNC4xMTUtLjg0OC44NDgtNC4xMjMtNC4xMjNhNyUyMDclMjAwJTIwMTEuODU3LS44NHpNMTYuOCUyMDExYTUuOCUyMDUuOCUyMDAlMjAxMC0xMS42JTIwMCUyMDUuOCUyMDUuOCUyMDAlMjAwMDExLjYlMjAweiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tY2xlYXIge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEzLjA2JTIwMTJsMy4wMDYtMy4wMDUtMS4wNi0xLjA2TDEyJTIwMTAuOTM4JTIwOC45OTUlMjA3LjkzNGwtMS4wNiUyMDEuMDZMMTAuOTM4JTIwMTJsLTMuMDA1JTIwMy4wMDUlMjAxLjA2JTIwMS4wNkwxMiUyMDEzLjA2MmwzLjAwNSUyMDMuMDA1JTIwMS4wNi0xLjA2TDEzLjA2MiUyMDEyek0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxufVxyXG4ud2V1aS1pY29uLWJhY2sge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyJTIwMjJDNi40NzclMjAyMiUyMDIlMjAxNy41MjMlMjAyJTIwMTJTNi40NzclMjAyJTIwMTIlMjAyczEwJTIwNC40NzclMjAxMCUyMDEwLTQuNDc3JTIwMTAtMTAlMjAxMHptMS45OTktNi41NjNMMTAuNjglMjAxMiUyMDE0JTIwOC41NjIlMjAxMi45NTMlMjA3LjUlMjA5LjI5JTIwMTEuMjc3YTEuMDQ1JTIwMS4wNDUlMjAwJTIwMDAwJTIwMS40NDZsMy42NjMlMjAzLjc3N0wxNCUyMDE1LjQzN3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxufVxyXG4ud2V1aS1pY29uLWRlbGV0ZSB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNi43NzQlMjA2LjRsLjgxMiUyMDEzLjY0OGEuOC44JTIwMCUyMDAwLjc5OC43NTJoNy4yMzJhLjguOCUyMDAlMjAwMC43OTgtLjc1MkwxNy4yMjYlMjA2LjRINi43NzR6bTExLjY1NSUyMDBsLS44MTclMjAxMy43MTlBMiUyMDIlMjAwJTIwMDExNS42MTYlMjAyMkg4LjM4NGEyJTIwMiUyMDAlMjAwMS0xLjk5Ni0xLjg4MUw1LjU3MSUyMDYuNEgzLjV2LS43YS41LjUlMjAwJTIwMDEuNS0uNWgxNmEuNS41JTIwMCUyMDAxLjUuNXYuN2gtMi4wNzF6TTE0JTIwM2EuNS41JTIwMCUyMDAxLjUuNXYuN2gtNXYtLjdBLjUuNSUyMDAlMjAwMTEwJTIwM2g0ek05LjUlMjA5aDEuMmwuNSUyMDlIMTBsLS41LTl6bTMuOCUyMDBoMS4ybC0uNSUyMDloLTEuMmwuNS05eiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbn1cclxuLndldWktaWNvbi1zdWNjZXNzLW5vLWNpcmNsZS10aGluIHtcclxuICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk04Ljg2NCUyMDE2LjYxN2wtNS4zMDMtNS4zMDMtMS4wNjElMjAxLjA2JTIwNS42NTclMjA1LjY1N2ExJTIwMSUyMDAlMjAwMDEuNDE0JTIwMEwyMS4yMzglMjA2LjM2NGwtMS4wNi0xLjA2TDguODY0JTIwMTYuNjE2eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tYXJyb3cge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTIuNDU0JTIwNi41OGwxLjA2LTEuMDYlMjA1Ljc4JTIwNS43NzlhLjk5Ni45OTYlMjAwJTIwMDEwJTIwMS40MTNsLTUuNzglMjA1Ljc3OS0xLjA2LTEuMDYxJTIwNS40MjUtNS40MjUtNS40MjUtNS40MjR6JTIyJTIwZmlsbCUzRCUyMiUyM0IyQjJCMiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tYXJyb3ctYm9sZCB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMGhlaWdodCUzRCUyMjI0JTIyJTIwd2lkdGglM0QlMjIxMiUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTAuMTU3JTIwMTIuNzExTDQuNSUyMDE4LjM2OGwtMS40MTQtMS40MTQlMjA0Ljk1LTQuOTUtNC45NS00Ljk1TDQuNSUyMDUuNjRsNS42NTclMjA1LjY1N2ExJTIwMSUyMDAlMjAwMTAlMjAxLjQxNHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxufVxyXG4ud2V1aS1pY29uLWJhY2stYXJyb3cge1xyXG4gICAgbWFzay1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjEyJTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTMuMzQzJTIwMTJsNy4wNzElMjA3LjA3MUw5JTIwMjAuNDg1bC03Ljc3OC03Ljc3OGExJTIwMSUyMDAlMjAwMTAtMS40MTRMOSUyMDMuNTE1bDEuNDE0JTIwMS40MTRMMy4zNDQlMjAxMnolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxufVxyXG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbiB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTAlMjAxOS40MzhMOC45NTUlMjAyMC41bC03LjY2Ni03Ljc5YTEuMDIlMjAxLjAyJTIwMCUyMDAxMC0xLjQyTDguOTU1JTIwMy41JTIwMTAlMjA0LjU2MyUyMDIuNjgyJTIwMTIlMjAxMCUyMDE5LjQzOHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxufVxyXG4ud2V1aS1pY29uLWNsb3NlIHtcclxuICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDEwLjU4Nmw1LjY1Ny01LjY1NyUyMDEuNDE0JTIwMS40MTRMMTMuNDE0JTIwMTJsNS42NTclMjA1LjY1Ny0xLjQxNCUyMDEuNDE0TDEyJTIwMTMuNDE0bC01LjY1NyUyMDUuNjU3LTEuNDE0LTEuNDE0TDEwLjU4NiUyMDEyJTIwNC45MjklMjA2LjM0MyUyMDYuMzQzJTIwNC45MyUyMDEyJTIwMTAuNTg2eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcbi53ZXVpLWljb24tY2xvc2UtdGhpbiB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIuMjUlMjAxMC42OTNMNi4wNTclMjA0LjUlMjA1JTIwNS41NTdsNi4xOTMlMjA2LjE5M0w1JTIwMTcuOTQzJTIwNi4wNTclMjAxOWw2LjE5My02LjE5M0wxOC40NDMlMjAxOWwxLjA1Ny0xLjA1Ny02LjE5My02LjE5M0wxOS41JTIwNS41NTclMjAxOC40NDMlMjA0LjV6JTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbn1cclxuLndldWktaWNvbi1iYWNrLWNpcmNsZSB7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0wLTEuMmE4LjglMjA4LjglMjAwJTIwMTAwLTE3LjYlMjA4LjglMjA4LjglMjAwJTIwMDAwJTIwMTcuNnptMS45OTktNS4zNjNMMTIuOTUzJTIwMTYuNSUyMDkuMjklMjAxMi43MjNhMS4wNDUlMjAxLjA0NSUyMDAlMjAwMTAtMS40NDZMMTIuOTUzJTIwNy41JTIwMTQlMjA4LjU2MyUyMDEwLjY4JTIwMTIlMjAxNCUyMDE1LjQzOHolMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG59XHJcblxyXG4vLyBpY29uIHNldHRpbmdcclxuLndldWktaWNvbi1zdWNjZXNzIHtcclxuICAgIGNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcclxufVxyXG4ud2V1aS1pY29uLXdhaXRpbmcge1xyXG4gICAgY29sb3I6IHZhcigtLXdldWktQkxVRSk7XHJcbn1cclxuLndldWktaWNvbi13YXJuIHtcclxuICAgIGNvbG9yOiBAd2V1aUNvbG9yV2FybjtcclxufVxyXG4ud2V1aS1pY29uLWluZm8ge1xyXG4gICAgY29sb3I6IHZhcigtLXdldWktQkxVRSk7XHJcbn1cclxuXHJcbi53ZXVpLWljb24tc3VjY2Vzcy1jaXJjbGUge1xyXG4gICAgY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xyXG59XHJcbi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUsXHJcbi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUtdGhpbiB7XHJcbiAgICBjb2xvcjogQHdldWlDb2xvclByaW1hcnk7XHJcbn1cclxuLndldWktaWNvbi13YWl0aW5nLWNpcmNsZSB7XHJcbiAgICBjb2xvcjogdmFyKC0td2V1aS1CTFVFKTtcclxufVxyXG4ud2V1aS1pY29uLWNpcmNsZSB7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xyXG59XHJcbi53ZXVpLWljb24tZG93bmxvYWQge1xyXG4gICAgY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xyXG59XHJcblxyXG4ud2V1aS1pY29uLWluZm8tY2lyY2xlIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XHJcbn1cclxuXHJcbi53ZXVpLWljb24tc2FmZS1zdWNjZXNzIHtcclxuICAgIGNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcclxufVxyXG4ud2V1aS1pY29uLXNhZmUtd2FybiB7XHJcbiAgICBjb2xvcjogdmFyKC0td2V1aS1ZRUxMT1cpO1xyXG59XHJcblxyXG4ud2V1aS1pY29uLWNhbmNlbCB7XHJcbiAgICBjb2xvcjogQHdldWlDb2xvcldhcm47XHJcbn1cclxuXHJcbi53ZXVpLWljb24tc2VhcmNoIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbn1cclxuXHJcbi53ZXVpLWljb24tY2xlYXIge1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGlwcztcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1pY29uLWRlbGV0ZSB7XHJcbiAgICAmLndldWktaWNvbl9nYWxsZXJ5LWRlbGV0ZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXdldWktV0hJVEUpO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLWljb24tYXJyb3csXHJcbi53ZXVpLWljb24tYXJyb3ctYm9sZCxcclxuLndldWktaWNvbi1iYWNrLWFycm93LFxyXG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbiB7XHJcbiAgICB3aWR0aDogMS4yZW07XHJcbn1cclxuLndldWktaWNvbi1hcnJvdyxcclxuLndldWktaWNvbi1hcnJvdy1ib2xkIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XHJcbn1cclxuLndldWktaWNvbi1iYWNrLWFycm93LFxyXG4ud2V1aS1pY29uLWJhY2stYXJyb3ctdGhpbiB7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcclxufVxyXG4ud2V1aS1pY29uLWJhY2ssXHJcbi53ZXVpLWljb24tYmFjay1jaXJjbGUge1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbn1cclxuXHJcbi53ZXVpLWljb25fbXNnIHtcclxuICAgIHdpZHRoOiA2LjRlbTtcclxuICAgIGhlaWdodDogNi40ZW07XHJcbiAgICAmLndldWktaWNvbi13YXJuIHtcclxuICAgICAgICBjb2xvcjogQHdldWlDb2xvcldhcm47XHJcbiAgICB9XHJcbiAgICAmLndldWktaWNvbi1pbmZvLWNpcmNsZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS13ZXVpLUJMVUUpO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLWljb25fbXNnLXByaW1hcnkge1xyXG4gICAgd2lkdGg6IDYuNGVtO1xyXG4gICAgaGVpZ2h0OiA2LjRlbTtcclxuICAgICYud2V1aS1pY29uLXdhcm4ge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS13ZXVpLVlFTExPVyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCJmblwiO1xyXG5cclxuLndldWktaGlkZGVuX2Fic3tcclxuICBvcGFjaXR5OjA7XHJcbiAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgd2lkdGg6MXB4Oy8vMXB45piv5Li65LqG5YW85a65aW9zMTVcclxuICBoZWlnaHQ6MXB4O1xyXG4gIG92ZXJmbG93OmhpZGRlbjtcclxufVxyXG4ud2V1aS1oaWRkZW4tc3BhY2U6ZW1wdHl7XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBjb250ZW50OlwiXFwwMEEwXCI7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHdpZHRoOjFweDtcclxuICAgIGhlaWdodDoxcHg7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgfVxyXG59XHJcbi53ZXVpLXdhLWhvdGFyZWEtZWx7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDo1MCU7XHJcbiAgICBsZWZ0OjUwJTtcclxuICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuICAgIG1pbi13aWR0aDo0NHB4O1xyXG4gICAgbWluLWhlaWdodDo0NHB4O1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGhlaWdodDoxMDAlO1xyXG4gICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDApO1xyXG59XHJcbi53ZXVpLXdhLWhvdGFyZWEtZWxfX3dycCxcclxuLndldWktd2EtaG90YXJlYSxcclxuLndldWktd2EtaG90YXJlYV9iZWZvcmV7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcblxyXG4gIC8vIOWmguaenOaYr+WQiOazleeahOeCueWHu+W1jOWll++8jOS+i+WmgmxhYmVsW2Zvcl3ph4znmoTlh7rnjrDpk77mjqXvvIzpnIDopoHmiorlsYLnuqfmj5Dpq5hcclxuICBhe1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OjE7XHJcbiAgfVxyXG59XHJcbi53ZXVpLXdhLWhvdGFyZWFfYmVmb3JlOmJlZm9yZSxcclxuLndldWktd2EtaG90YXJlYTphZnRlcntcclxuICBjb250ZW50OlwiXCI7XHJcbiAgLndldWktd2EtaG90YXJlYS1lbDtcclxufVxyXG5cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWxpbmsge1xyXG4gICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgICY6dmlzaXRlZCB7XHJcbiAgICAgICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktYnRuIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IEB3ZXVpQnRuV2lkdGg7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIHBhZGRpbmc6IDhweCAyNHB4O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXNpemU6IEB3ZXVpQnRuRm9udFNpemU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogQHdldWlCdG5Gb250Q29sb3I7XHJcbiAgICBsaW5lLWhlaWdodDogdW5pdCgoQHdldWlCdG5IZWlnaHQgLSAxNikgLyBAd2V1aUJ0bkZvbnRTaXplKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IEB3ZXVpQnRuQm9yZGVyUmFkaXVzO1xyXG4gICAgLnNldFRhcENvbG9yKCk7XHJcbn1cclxuLndldWktYnRuX2Jsb2NrIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG59XHJcbi53ZXVpLWJ0bl9pbmxpbmUge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1idG5fZGVmYXVsdCB7XHJcbiAgICBjb2xvcjogQHdldWlCdG5EZWZhdWx0Rm9udENvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCdG5EZWZhdWx0Qmc7XHJcbiAgICAmOm5vdCgud2V1aS1idG5fZGlzYWJsZWQpOnZpc2l0ZWQge1xyXG4gICAgICAgIGNvbG9yOiBAd2V1aUJ0bkRlZmF1bHRGb250Q29sb3I7XHJcbiAgICB9XHJcbiAgICAmOm5vdCgud2V1aS1idG5fZGlzYWJsZWQpOmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCdG5EZWZhdWx0QWN0aXZlQmc7XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWJ0bl9wcmltYXJ5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQnRuUHJpbWFyeUJnO1xyXG4gICAgJjpub3QoLndldWktYnRuX2Rpc2FibGVkKTp2aXNpdGVkIHtcclxuICAgICAgICBjb2xvcjogQHdldWlCdG5QcmltYXJ5Rm9udENvbG9yO1xyXG4gICAgfVxyXG4gICAgJjpub3QoLndldWktYnRuX2Rpc2FibGVkKTphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQnRuUHJpbWFyeUFjdGl2ZUJnO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1idG5fd2FybiB7XHJcbiAgICBjb2xvcjogQHdldWlCdG5XYXJuRm9udENvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCdG5XYXJuQmc7XHJcbiAgICAmOm5vdCgud2V1aS1idG5fZGlzYWJsZWQpOnZpc2l0ZWQge1xyXG4gICAgICAgIGNvbG9yOiBAd2V1aUJ0bldhcm5Gb250Q29sb3I7XHJcbiAgICB9XHJcbiAgICAmOm5vdCgud2V1aS1idG5fZGlzYWJsZWQpOmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCdG5XYXJuQWN0aXZlQmc7XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWJ0bl9kaXNhYmxlZCwud2V1aS1idG5bZGlzYWJsZWRdIHtcclxuICAgIGNvbG9yOiBAd2V1aUJ0bkRpc2FibGVkRm9udENvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCdG5EaXNhYmxlZEJnO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1idG5fbG9hZGluZyB7XHJcbiAgICAud2V1aS1sb2FkaW5nIHtcclxuICAgICAgICBtYXJnaW46IC0wLjJlbSAwLjM0ZW0gMCAwO1xyXG4gICAgfVxyXG4gICAgLndldWktcHJpbWFyeS1sb2FkaW5nIHtcclxuICAgICAgICBtYXJnaW46IC0uMmVtIDhweCAwIDA7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG4gICAgfVxyXG4gICAgJi53ZXVpLWJ0bl9wcmltYXJ5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJ0blByaW1hcnlBY3RpdmVCZztcclxuICAgICAgICBjb2xvcjogdmFyKC0td2V1aS1XSElURSk7XHJcbiAgICB9XHJcbiAgICAmLndldWktYnRuX2RlZmF1bHQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQnRuRGVmYXVsdEFjdGl2ZUJnO1xyXG4gICAgfVxyXG4gICAgJi53ZXVpLWJ0bl93YXJuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJ0bldhcm5BY3RpdmVCZztcclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktYnRuX2NlbGwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBmb250LXNpemU6IEB3ZXVpQnRuRm9udFNpemU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogQHdldWlCdG5Gb250Q29sb3I7XHJcbiAgICBsaW5lLWhlaWdodDogQHdldWlCdG5DZWxsTGluZUhlaWdodDtcclxuICAgIHBhZGRpbmc6IEB3ZXVpQnRuQ2VsbEdhcDtcclxuICAgIC5zZXRUYXBDb2xvcigpO1xyXG5cclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTUpO1xyXG4gICAgJiArICYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IEB3ZXVpQnRuRGVmYXVsdEdhcDtcclxuICAgIH1cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XHJcbiAgICB9XHJcbn1cclxuLndldWktYnRuX2NlbGxfX2ljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgbWFyZ2luOiAtMC4yZW0gMC4zNGVtIDAgMDtcclxufVxyXG4ud2V1aS1idG5fY2VsbC1kZWZhdWx0IHtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xyXG59XHJcbi53ZXVpLWJ0bl9jZWxsLXByaW1hcnkge1xyXG4gICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcclxufVxyXG4ud2V1aS1idG5fY2VsbC13YXJuIHtcclxuICAgIGNvbG9yOiBAd2V1aUNvbG9yV2FybjtcclxufVxyXG5cclxuXHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG5Ad2V1aUJvdHRvbUZpeGVkT3ByTWFza0hlaWdodDo4MHB4O1xyXG5cclxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdle1xyXG4gIGhlaWdodDoxMDAlO1xyXG4gIGRpc3BsYXk6ZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XHJcbn1cclxuLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX19jb250ZW50e1xyXG4gIG1pbi1oZWlnaHQ6MDtcclxuICBmbGV4OjE7XHJcbiAgcGFkZGluZy1ib3R0b206QHdldWlCb3R0b21GaXhlZE9wck1hc2tIZWlnaHQ7XHJcbiAgYm94LXNpemluZzpib3JkZXItYm94O1xyXG4gIG92ZXJmbG93LXk6YXV0bztcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtcclxufVxyXG4ud2V1aS1ib3R0b20tZml4ZWQtb3Bye1xyXG4gIHBhZGRpbmc6MTZweCAzMnB4IDI0cHg7XHJcbiAgcGFkZGluZzoxNnB4IGNhbGMoMzJweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIikgY2FsYygzMnB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xyXG4gIHBhZGRpbmc6MTZweCBjYWxjKDMycHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKSBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIikgY2FsYygzMnB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KVwiKTtcclxuICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMSk7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBjb250ZW50OlwiXCI7XHJcbiAgICBoZWlnaHQ6QHdldWlCb3R0b21GaXhlZE9wck1hc2tIZWlnaHQ7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDI1NSwyNTUsMjU1LDEpLCByZ2JhKDI1NSwyNTUsMjU1LDApKTtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgYm90dG9tOn5cImNhbGMoMTAwJSAtIDFweClcIjtcclxuICAgIGxlZnQ6MDtcclxuICAgIHJpZ2h0OjA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICB9XHJcbn1cclxuXHJcbi53ZXVpLWJvdHRvbS1maXhlZC1vcHJ7XHJcbiAgLmRhcmsoe1xyXG4gICAgYmFja2dyb3VuZDpyZ2JhKDI1LDI1LDI1LDEpO1xyXG4gIH0pO1xyXG4gICY6YmVmb3Jle1xyXG4gICAgLmRhcmsoe1xyXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDI1LDI1LDI1LDEpLCByZ2JhKDI1LDI1LDI1LDApKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9ne1xyXG4gICYud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfYm90dG9tLWZpeGVke1xyXG4gICAgcGFkZGluZzowO1xyXG4gICAgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19oZHtcclxuICAgICAgcGFkZGluZzowIDI0cHg7XHJcbiAgICAgIHBhZGRpbmc6MCBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIDAgY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xyXG4gICAgICBwYWRkaW5nOjAgY2FsYygyNHB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgMCBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xyXG4gICAgfVxyXG4gICAgLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19iZHtcclxuICAgICAgcGFkZGluZy1ib3R0b206NjRweDtcclxuICAgIH1cclxuICAgIC53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZnR7XHJcbiAgICAgIHBhZGRpbmc6MCAyNHB4IDY0cHg7XHJcbiAgICAgIHBhZGRpbmc6MCBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIDY0cHggY2FsYygyNHB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xyXG4gICAgICBwYWRkaW5nOjAgY2FsYygyNHB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgNjRweCBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xyXG4gICAgfVxyXG4gICAgLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdlX19jb250ZW50e1xyXG4gICAgICBwYWRkaW5nOjAgMjRweDtcclxuICAgICAgcGFkZGluZzowIGNhbGMoMjRweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgMCBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XHJcbiAgICAgIHBhZGRpbmc6MCBjYWxjKDI0cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKSAwIGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XHJcbiAgICB9XHJcblxyXG4gICAgLndldWktYm90dG9tLWZpeGVkLW9wci1wYWdle1xyXG4gICAgICBmbGV4OjE7XHJcbiAgICAgIG1pbi1oZWlnaHQ6MDtcclxuICAgICAgLndldWktYm90dG9tLWZpeGVkLW9wcntcclxuICAgICAgICBwYWRkaW5nOjE2cHggMCAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5AaW1wb3J0IFwid2V1aS1idG5fZ2xvYmFsXCI7XHJcbkBpbXBvcnQgXCJ3ZXVpLWJ0bl9kZWZhdWx0XCI7XHJcbkBpbXBvcnQgXCJ3ZXVpLWJ0bl9wcmltYXJ5XCI7XHJcbkBpbXBvcnQgXCJ3ZXVpLWJ0bl93YXJuXCI7XHJcbkBpbXBvcnQgXCJ3ZXVpLWJ0bl9kaXNhYmxlZFwiO1xyXG5AaW1wb3J0IFwid2V1aS1idG5fbG9hZGluZ1wiO1xyXG5AaW1wb3J0IFwid2V1aS1idG5fY2VsbFwiO1xyXG5AaW1wb3J0IFwid2V1aS1idG5fYm90dG9tLWZpeGVkXCI7XHJcblxyXG5idXR0b24sXHJcbmlucHV0IHtcclxuICAgICYud2V1aS1idG4ge1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMDtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLndldWktYnRuX2lubGluZSxcclxuICAgICYud2V1aS1idG5fbWluaSB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLWJ0bl9taW5pIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgcGFkZGluZzogMCAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IHVuaXQoQHdldWlCdG5NaW5pSGVpZ2h0L0B3ZXVpQnRuTWluaUZvbnRTaXplKTtcclxuICAgIGZvbnQtc2l6ZTogQHdldWlCdG5NaW5pRm9udFNpemU7XHJcbiAgICBib3JkZXItcmFkaXVzOjZweDtcclxufVxyXG5cclxuLndldWktYnRuX3htaW5pe1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogYXV0bztcclxuICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgbGluZS1oZWlnaHQ6IDI7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6Mi44cHg7XHJcbn1cclxuXHJcblxyXG5cclxuLyogZ2FwIGJldHdlZW4gYnRuICovXHJcbi53ZXVpLWJ0bjpub3QoLndldWktYnRuX21pbmkpICsgLndldWktYnRuOm5vdCgud2V1aS1idG5fbWluaSkge1xyXG4gICAgbWFyZ2luLXRvcDogQHdldWlCdG5EZWZhdWx0R2FwO1xyXG59XHJcblxyXG4ud2V1aS1idG4ud2V1aS1idG5faW5saW5lICsgLndldWktYnRuLndldWktYnRuX2lubGluZSB7XHJcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgbWFyZ2luLWxlZnQ6IEB3ZXVpQnRuRGVmYXVsdEdhcDtcclxufVxyXG5cclxuLndldWktYnRuLWFyZWEge1xyXG4gICAgbWFyZ2luOiA0OHB4IEB3ZXVpQnRuRGVmYXVsdEdhcCA4cHg7XHJcbn1cclxuLndldWktYnRuLWFyZWFfaW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAud2V1aS1idG4ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBAd2V1aUJ0bkRlZmF1bHRHYXA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1idG5fcmVzZXQge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgb3V0bGluZTogMDtcclxufVxyXG4ud2V1aS1idG5faWNvbiB7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgW2NsYXNzKj1cIndldWktaWNvbi1cIl0ge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2V1aS1GRy0xKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi8qXHJcbnotaW5kZXg6XHJcbjA6IC53ZXVpLXN3aXBlZC1idG5cclxuMTogLndldWktY2VsbF9zd2lwZWQgLndldWktY2VsbF9fYmRcclxuMjogLndldWktY2VsbHPlkowud2V1aS1jZWxs55qEMXB457q/XHJcbiovXHJcblxyXG4ud2V1aS1jZWxscyB7XHJcbiAgICBtYXJnaW4tdG9wOiBAd2V1aUNlbGxzTWFyZ2luVG9wO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlDZWxsQmc7XHJcbiAgICBsaW5lLWhlaWdodDogQHdldWlDZWxsTGluZUhlaWdodDtcclxuICAgIGZvbnQtc2l6ZTogQHdldWlDZWxsRm9udFNpemU7IC8vY2VsbOS4remXtOacieaViOmrmOW6pjIzcHjvvIzot5/lrqLmiLfnq6/pu5jorqTlm77moIflsLrlr7jkuIDoh7RcclxuICAgIG92ZXJmbG93OiBoaWRkZW47IC8v5Zug5Li65q+P5LiqY2VsbOeahGJvcmRlcuS9v+eUqGJlZm9yZeWFg+e0oGxlZnTmkJ7nmoTvvIxpZeS4i+S8quWFg+e0oOeahGNvbnRhaW5pbmcgYmxvY2vkvLDorqHot5/moIflh4bkuI3lkIzvvIzlnKhjZWxs5LiK55Sob2jkuI3nlJ/mlYhcclxuXHJcbiAgICAvLyBvbmVweFxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC5zZXRUb3BMaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcclxuXHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIC5zZXRCb3R0b21MaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcclxuXHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxufVxyXG5cclxuLndldWktY2VsbHNfX3RpdGxlIHtcclxuICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiBAd2V1aUNlbGxHYXBIO1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcclxuICAgIGZvbnQtc2l6ZTogQHdldWlDZWxsVGlwc0ZvbnRTaXplO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuXHJcbiAgICAmICsgLndldWktY2VsbHMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLWNlbGxzX190aXBzIHtcclxuICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiBAd2V1aUNlbGxHYXBIO1xyXG4gICAgZm9udC1zaXplOiBAd2V1aUNlbGxUaXBzRm9udFNpemU7XHJcbiAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgYSxcclxuICAgIG5hdmlnYXRvciB7XHJcbiAgICAgICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcclxuICAgIH1cclxuICAgIG5hdmlnYXRvciB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1jZWxsIHtcclxuICAgIHBhZGRpbmc6IEB3ZXVpQ2VsbEdhcFY7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8v6L+Z5Liq5piv5Li65LqG5YW85a65Y2VsbHPlrrnlmahvbmVweOaWueahiOiiq2JlZm9yZeaMoeS9j+iAjOWBmueahFxyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgLnNldFRvcExpbmUoQHdldWlDZWxsQm9yZGVyQ29sb3IpO1xyXG5cclxuICAgICAgICBsZWZ0OiBAd2V1aUNlbGxHYXBIO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi53ZXVpLWNlbGxfYWN0aXZlIHtcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XHJcbiAgICB9XHJcbn1cclxuLndldWktY2VsbF9wcmltYXJ5IHtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG59XHJcbi53ZXVpLWNlbGxfX2JkIHtcclxuICAgIGZsZXg6IDE7XHJcblxyXG59XHJcbi53ZXVpLWNlbGxfX2Z0IHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vdmFyaWFibGUvY29sb3JcIjtcclxuXHJcbi5zZXRUb3BMaW5lKEBjOiBAd2V1aUxpbmVDb2xvckxpZ2h0KSB7XHJcbiAgICBjb250ZW50OiBcIiBcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEBjO1xyXG4gICAgY29sb3I6IEBjO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMC41KTtcclxufVxyXG5cclxuLnNldEJvdHRvbUxpbmUoQGM6IEB3ZXVpTGluZUNvbG9yTGlnaHQpIHtcclxuICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGM7XHJcbiAgICBjb2xvcjogQGM7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjUpO1xyXG59XHJcblxyXG4uc2V0TGVmdExpbmUoQGM6IEB3ZXVpTGluZUNvbG9yTGlnaHQpIHtcclxuICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxcHg7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIEBjO1xyXG4gICAgY29sb3I6IEBjO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMC41KTtcclxufVxyXG5cclxuLnNldFJpZ2h0TGluZShAYzogQHdldWlMaW5lQ29sb3JMaWdodCkge1xyXG4gICAgY29udGVudDogXCIgXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxcHg7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBAYztcclxuICAgIGNvbG9yOiBAYztcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcclxuICAgIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWNlbGxfc3dpcGVkIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgID4gLndldWktY2VsbF9fYmQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ2VsbEJnO1xyXG4gICAgfVxyXG4gICAgPiAud2V1aS1jZWxsX19mdCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBjb2xvcjogI2ZmZjsgLy8g5Zu65a6a6Imy5YC8XHJcbiAgICB9XHJcbn1cclxuLndldWktc3dpcGVkLWJ0biB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IEB3ZXVpQ2VsbEdhcFYgMWVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IEB3ZXVpQ2VsbExpbmVIZWlnaHQ7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxufVxyXG4ud2V1aS1zd2lwZWQtYnRuX2RlZmF1bHQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCZ0NvbG9yRGVmYXVsdDtcclxufVxyXG4ud2V1aS1zd2lwZWQtYnRuX3dhcm4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlDb2xvcldhcm47XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWNlbGxfYWNjZXNzIHtcclxuICAgIC5zZXRUYXBDb2xvcigpO1xyXG5cclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvckFjdGl2ZTtcclxuICAgIH1cclxuICAgIC53ZXVpLWNlbGxfX2Z0IHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIG1hc2stcG9zaXRpb246IDAgMDtcclxuICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgbWFzay1zaXplOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XHJcbiAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMiUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0yLjQ1NCUyMDYuNThsMS4wNi0xLjA2JTIwNS43OCUyMDUuNzc5YS45OTYuOTk2JTIwMCUyMDAxMCUyMDEuNDEzbC01Ljc4JTIwNS43NzktMS4wNi0xLjA2MSUyMDUuNDI1LTUuNDI1LTUuNDI1LTUuNDI0eiUyMiUyMGZpbGwlM0QlMjIlMjNCMkIyQjIlMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ud2V1aS1jZWxsX2xpbmsge1xyXG4gICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcclxuICAgIGZvbnQtc2l6ZTogMTdweDtcclxuXHJcbiAgICAvLyDnlLHkuo53ZXVpLWNlbGw6Zmlyc3QtY2hpbGTnmoQ6YmVmb3Jl5Li66ZqQ6JeP77yM5omA5Lul6L+Z6YeM6KaB6YeN5paw5pi+56S65Ye65p2lXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktY2hlY2tfX2xhYmVsIHtcclxuICAgIC5zZXRUYXBDb2xvcigpO1xyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvckFjdGl2ZTtcclxuICAgIH1cclxufVxyXG5cclxuLndldWktY2hlY2sge1xyXG4gICAgb3BhY2l0eTowO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6MDtcclxuICAgIGhlaWdodDowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4vLyBtZXRob2QyIGFjY2Vzc2JpbGl0eVxyXG4ud2V1aS1jZWxsc19yYWRpbyB7XHJcbiAgICAud2V1aS1jZWxsX19mdCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBAd2V1aUNlbGxJbm5lckdhcEg7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLWNoZWNrIHtcclxuICAgIC8vIHJhZGlvXHJcbiAgICAud2V1aS1jZWxsc19yYWRpbyAmIHtcclxuICAgICAgICAmICsgLndldWktaWNvbi1jaGVja2VkIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6Y2hlY2tlZCxcclxuICAgICAgICAmW2FyaWEtY2hlY2tlZD1cInRydWVcIl0ge1xyXG4gICAgICAgICAgICAmICsgLndldWktaWNvbi1jaGVja2VkIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcclxuICAgICAgICAgICAgICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk04LjY1NyUyMDE4LjQzNUwzJTIwMTIuNzc4bDEuNDE0LTEuNDE0JTIwNC45NSUyMDQuOTVMMjAuNjc4JTIwNWwxLjQxNCUyMDEuNDE0LTEyLjAyJTIwMTIuMDIxYTElMjAxJTIwMCUyMDAxLTEuNDE1JTIwMHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktY2VsbHNfY2hlY2tib3gge1xyXG4gICAgLndldWktY2hlY2tfX2xhYmVsIHtcclxuICAgICAgICAmOmJlZm9yZSB7IGxlZnQ6IDU1cHg7IH1cclxuICAgIH1cclxuICAgIC53ZXVpLWNlbGxfX2hkIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBAd2V1aUNlbGxJbm5lckdhcEg7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgfVxyXG4gICAgLndldWktaWNvbi1jaGVja2VkIHtcclxuICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xyXG4gICAgICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxMDAwJTIyJTIwaGVpZ2h0JTNEJTIyMTAwMCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNNTAwJTIwOTE2LjY2N0MyNjkuODgxJTIwOTE2LjY2NyUyMDgzLjMzMyUyMDczMC4xMTklMjA4My4zMzMlMjA1MDAlMjA4My4zMzMlMjAyNjkuODgxJTIwMjY5Ljg4MSUyMDgzLjMzMyUyMDUwMCUyMDgzLjMzM2MyMzAuMTE5JTIwMCUyMDQxNi42NjclMjAxODYuNTQ4JTIwNDE2LjY2NyUyMDQxNi42NjclMjAwJTIwMjMwLjExOS0xODYuNTQ4JTIwNDE2LjY2Ny00MTYuNjY3JTIwNDE2LjY2N3ptMC01MGMyMDIuNTA0JTIwMCUyMDM2Ni42NjctMTY0LjE2MyUyMDM2Ni42NjctMzY2LjY2NyUyMDAtMjAyLjUwNC0xNjQuMTYzLTM2Ni42NjctMzY2LjY2Ny0zNjYuNjY3LTIwMi41MDQlMjAwLTM2Ni42NjclMjAxNjQuMTYzLTM2Ni42NjclMjAzNjYuNjY3JTIwMCUyMDIwMi41MDQlMjAxNjQuMTYzJTIwMzY2LjY2NyUyMDM2Ni42NjclMjAzNjYuNjY3eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMjBmaWxsLW9wYWNpdHklM0QlMjIuOSUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIG1ldGhvZDIgYWNjZXNzYmlsaXR5XHJcbi53ZXVpLWNoZWNrIHtcclxuICAgIC8vIGNoZWNrYm94XHJcbiAgICAud2V1aS1jZWxsc19jaGVja2JveCAmIHtcclxuICAgICAgICAmOmNoZWNrZWQsXHJcbiAgICAgICAgJlthcmlhLWNoZWNrZWQ9XCJ0cnVlXCJdIHtcclxuICAgICAgICAgICAgJiArIC53ZXVpLWljb24tY2hlY2tlZCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogQHdldWlDb2xvclByaW1hcnk7XHJcbiAgICAgICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMjQlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTIlMjAyMkM2LjQ3NyUyMDIyJTIwMiUyMDE3LjUyMyUyMDIlMjAxMlM2LjQ3NyUyMDIlMjAxMiUyMDJzMTAlMjA0LjQ3NyUyMDEwJTIwMTAtNC40NzclMjAxMC0xMCUyMDEwem0tMS4xNzctNy44NmwtMi43NjUtMi43NjdMNyUyMDEyLjQzMWwzLjExOSUyMDMuMTIxYTElMjAxJTIwMCUyMDAwMS40MTQlMjAwbDUuOTUyLTUuOTUtMS4wNjItMS4wNjItNS42JTIwNS42eiUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IEB3ZXVpQ2VsbExhYmVsV2lkdGg7XHJcbiAgICAudGV4dF93cmFwKCk7XHJcbn1cclxuLndldWktaW5wdXQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGhlaWdodDogdW5pdChAd2V1aUNlbGxMaW5lSGVpZ2h0LCBlbSk7XHJcbiAgICBsaW5lLWhlaWdodDogQHdldWlDZWxsTGluZUhlaWdodDtcclxuXHJcbiAgICAvLyBoaWRlcyB0aGUgc3Bpbi1idXR0b25cclxuICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXHJcbiAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcclxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XHJcbiAgICAgICAgICAgICYgKyAud2V1aS1idG5faW5wdXQtY2xlYXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS10ZXh0YXJlYSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHJlc2l6ZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4ud2V1aS10ZXh0YXJlYS1jb3VudGVyIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpcHM7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIC53ZXVpLWNlbGxfd2FybiAmIHtcclxuICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JXYXJuO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1jZWxsc19mb3JtIHtcclxuICAgIC53ZXVpLWNlbGxfc3dpdGNoLFxyXG4gICAgLndldWktY2VsbF92Y29kZSxcclxuICAgIC53ZXVpLWNlbGxfcmVhZG9ubHksXHJcbiAgICAud2V1aS1jZWxsX2Rpc2FibGVkIHtcclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53ZXVpLWNlbGxfX2Z0IHtcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICB9XHJcbiAgICAud2V1aS1pY29uLXdhcm4ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBpbnB1dCxcclxuICAgIHRleHRhcmVhLFxyXG4gICAgbGFiZWxbZm9yXSB7XHJcbiAgICAgICAgLnNldFRhcENvbG9yKCk7XHJcbiAgICB9XHJcbn1cclxuLndldWktY2VsbF93YXJuIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvcldhcm47XHJcbiAgICAud2V1aS1pY29uLXdhcm4geyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cclxufVxyXG4ud2V1aS1jZWxsX3JlYWRvbmx5LFxyXG4ud2V1aS1jZWxsX2Rpc2FibGVkIHtcclxuICAgIC53ZXVpLWlucHV0LFxyXG4gICAgLndldWktdGV4dGFyZWEge1xyXG4gICAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2Rpc2FibGVkXSxcclxuICAgICAgICAmW3JlYWRvbmx5XSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi53ZXVpLWJ0bl9pbnB1dC1jbGVhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XHJcbiAgICBbY2xhc3MqPVwid2V1aS1pY29uLVwiXSB7XHJcbiAgICAgICAgd2lkdGg6IDE4cHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuLmVsbGlwc2lzKEB3OmF1dG8pIHtcclxuICAgIHdpZHRoOiBAdztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcclxufVxyXG5cclxuLmVsbGlwc2lzTG4oQGxpbmUpIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIC13ZWJraXQtbGluZS1jbGFtcDogQGxpbmU7XHJcbn1cclxuLnRleHRfd3JhcCgpIHtcclxuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxufVxyXG4uaHlwaGVucygpIHtcclxuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgIC13ZWJraXQtaHlwaGVuczogYXV0bztcclxuICAgIGh5cGhlbnM6IGF1dG87XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWZvcm0tcHJldmlldyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC5zZXRUb3BMaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIC5zZXRCb3R0b21MaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcclxuICAgIH1cclxufVxyXG4ud2V1aS1mb3JtLXByZXZpZXdfX2hkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IEB3ZXVpQ2VsbEdhcFY7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyLjVlbTtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIC5zZXRCb3R0b21MaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcclxuXHJcbiAgICAgICAgbGVmdDogQHdldWlDZWxsR2FwSDtcclxuICAgIH1cclxuICAgIC53ZXVpLWZvcm0tcHJldmlld19fdmFsdWUge1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXNpemU6IDEuNmVtO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLWZvcm0tcHJldmlld19fYmQge1xyXG4gICAgcGFkZGluZzogQHdldWlDZWxsR2FwVjtcclxuICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICBsaW5lLWhlaWdodDogMjtcclxufVxyXG4ud2V1aS1mb3JtLXByZXZpZXdfX2Z0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICAuc2V0VG9wTGluZShAd2V1aURpYWxvZ0xpbmVDb2xvcik7XHJcbiAgICB9XHJcbn1cclxuLndldWktZm9ybS1wcmV2aWV3X19pdGVtIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuLndldWktZm9ybS1wcmV2aWV3X19sYWJlbCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbi1yaWdodDogMWVtO1xyXG4gICAgbWluLXdpZHRoOiA0ZW07XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xyXG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxuICAgIHRleHQtYWxpZ24tbGFzdDoganVzdGlmeTtcclxufVxyXG4ud2V1aS1mb3JtLXByZXZpZXdfX3ZhbHVlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcclxuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xyXG59XHJcbi53ZXVpLWZvcm0tcHJldmlld19fYnRuIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxleDogMTtcclxuICAgIGNvbG9yOiBAd2V1aURpYWxvZ0xpbmtDb2xvcjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIC5zZXRUYXBDb2xvcigpO1xyXG4gICAgYnV0dG9uJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgfVxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpRGlhbG9nTGlua0FjdGl2ZUJjO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgLnNldExlZnRMaW5lKEB3ZXVpRGlhbG9nTGluZUNvbG9yKTtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ud2V1aS1mb3JtLXByZXZpZXdfX2J0bl9kZWZhdWx0IHtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLUhBTEYpO1xyXG59XHJcbi53ZXVpLWZvcm0tcHJldmlld19fYnRuX3ByaW1hcnkge1xyXG4gICAgY29sb3I6IEB3ZXVpTGlua0NvbG9yRGVmYXVsdDtcclxufVxyXG5cclxuLy8g5YiX6KGo5Z2X77yM5LiA6Iis5pS+bXNn57uE5Lu255qE6Ieq5a6a5LmJ5Yy65Z+fXHJcbi53ZXVpLWZvcm0tcHJldmlld19fbGlzdHtcclxuICBwYWRkaW5nLXRvcDoyNHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOjI0cHg7XHJcbiAgbGluZS1oZWlnaHQ6MS40O1xyXG4gIGZvbnQtc2l6ZToxNHB4O1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICY6YmVmb3Jle1xyXG4gICAgY29udGVudDpcIlwiO1xyXG4gICAgLnNldFRvcExpbmUodmFyKC0td2V1aS1GRy0zKSk7XHJcbiAgfVxyXG4gICY6bGFzdC1jaGlsZHtcclxuICAgIHBhZGRpbmctYm90dG9tOjA7XHJcbiAgfVxyXG4gIC53ZXVpLWZvcm0tcHJldmlld19fbGFiZWx7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICB0ZXh0LWFsaWduLWxhc3Q6dW5zZXQ7XHJcbiAgICB3aWR0aDo2ZW07XHJcbiAgfVxyXG4gIC53ZXVpLWZvcm0tcHJldmlld19fdmFsdWV7aHlwaGVuczphdXRvO31cclxuICAud2V1aS1mb3JtLXByZXZpZXdfX2l0ZW17XHJcbiAgICBtYXJnaW4tdG9wOjEycHg7XHJcbiAgICAmOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MDt9XHJcbiAgfVxyXG4gICY+LndldWktY2VsbHNfX3RpdGxle1xyXG4gICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWNlbGxfc2VsZWN0IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICAud2V1aS1zZWxlY3Qge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAud2V1aS1jZWxsX19iZCB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiAwIDA7XHJcbiAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIG1hc2stc2l6ZTogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xyXG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMi40NTQlMjA2LjU4bDEuMDYtMS4wNiUyMDUuNzglMjA1Ljc3OWEuOTk2Ljk5NiUyMDAlMjAwMTAlMjAxLjQxM2wtNS43OCUyMDUuNzc5LTEuMDYtMS4wNjElMjA1LjQyNS01LjQyNS01LjQyNS01LjQyNHolMjIlMjBmaWxsJTNEJTIyJTIzQjJCMkIyJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBAd2V1aUNlbGxHYXBIO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLXNlbGVjdCB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIG1pbi1oZWlnaHQ6IEB3ZXVpQ2VsbEhlaWdodDtcclxuICAgIGxpbmUtaGVpZ2h0OiBAd2V1aUNlbGxIZWlnaHQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcGFkZGluZy1sZWZ0OiBAd2V1aUNlbGxHYXBIO1xyXG4gICAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XHJcbn1cclxuXHJcbi53ZXVpLWNlbGxfc2VsZWN0LWJlZm9yZSB7XHJcbiAgICBhbGlnbi1pdGVtczppbml0aWFsO1xyXG4gICAgcGFkZGluZy1yaWdodDogQHdldWlDZWxsR2FwSDtcclxuICAgIC53ZXVpLXNlbGVjdCB7XHJcbiAgICAgICAgd2lkdGg6IEB3ZXVpQ2VsbExhYmVsV2lkdGg7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIH1cclxuICAgIC53ZXVpLWNlbGxfX2hkIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIC5zZXRSaWdodExpbmUoQHdldWlDZWxsQm9yZGVyQ29sb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiAwIDA7XHJcbiAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIG1hc2stc2l6ZTogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xyXG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMi40NTQlMjA2LjU4bDEuMDYtMS4wNiUyMDUuNzglMjA1Ljc3OWEuOTk2Ljk5NiUyMDAlMjAwMTAlMjAxLjQxM2wtNS43OCUyMDUuNzc5LTEuMDYtMS4wNjElMjA1LjQyNS01LjQyNS01LjQyNS01LjQyNHolMjIlMjBmaWxsJTNEJTIyJTIzQjJCMkIyJTIyJTIwZmlsbC1ydWxlJTNEJTIyZXZlbm9kZCUyMiUyRiUzRSUzQyUyRnN2ZyUzRSk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBAd2V1aUNlbGxHYXBIO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAud2V1aS1jZWxsX19iZCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBAd2V1aUNlbGxHYXBIO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xyXG4gICAgfVxyXG4gICAgJi53ZXVpLWNlbGxfYWNjZXNzIHtcclxuICAgICAgICAud2V1aS1jZWxsX19oZCB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1jZWxsX3NlbGVjdC1hZnRlciB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IEB3ZXVpQ2VsbEdhcEg7XHJcbiAgICAud2V1aS1zZWxlY3Qge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH1cclxuICAgICYud2V1aS1jZWxsX2FjY2VzcyB7XHJcbiAgICAgICAgLndldWktY2VsbF9fYmQge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbipcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKlxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWNlbGxfdmNvZGUge1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbn1cclxuLndldWktdmNvZGUtaW1nIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICBoZWlnaHQ6IEB3ZXVpQ2VsbEhlaWdodDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi53ZXVpLXZjb2RlLWJ0biB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IEB3ZXVpQ2VsbEhlaWdodDtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICBwYWRkaW5nOiAwIDAuNmVtIDAgMC43ZW07XHJcbiAgICBsaW5lLWhlaWdodDogQHdldWlDZWxsSGVpZ2h0O1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGZvbnQtc2l6ZTogQHdldWlDZWxsRm9udFNpemU7XHJcbiAgICBjb2xvcjogQHdldWlEaWFsb2dMaW5rQ29sb3I7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgLnNldExlZnRMaW5lKEB3ZXVpTGluZUNvbG9yTGlnaHQpO1xyXG4gICAgfVxyXG4gICAgYnV0dG9uJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICB9XHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXdldWktTElOSy1BQ1RJVkUpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG5Ad2V1aUdhbGxlcnlPcHJIZWlnaHQ6IDYwcHg7XHJcbi53ZXVpLWdhbGxlcnkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IC8vIOWbuuWumuiJsuWAvFxyXG4gICAgei1pbmRleDogMTAwMDtcclxufVxyXG4ud2V1aS1nYWxsZXJ5X19pbWcsXHJcbi53ZXVpLWdhbGxlcnlfX29wciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbGVmdDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xyXG4gICAgbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbiAgICByaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbn1cclxuLndldWktZ2FsbGVyeV9faW1nIHtcclxuICAgIHRvcDogMDtcclxuICAgIHRvcDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcCk7XHJcbiAgICB0b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcclxuICAgIGJvdHRvbTogQHdldWlHYWxsZXJ5T3BySGVpZ2h0O1xyXG4gICAgYm90dG9tOiBjYWxjKEB3ZXVpR2FsbGVyeU9wckhlaWdodCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpO1xyXG4gICAgYm90dG9tOiBjYWxjKEB3ZXVpR2FsbGVyeU9wckhlaWdodCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbn1cclxuLndldWktZ2FsbGVyeV9fb3ByIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xyXG4gICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDBkMGQ7ICAvLyDlm7rlrproibLlgLxcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcclxuICAgIGxpbmUtaGVpZ2h0OiBAd2V1aUdhbGxlcnlPcHJIZWlnaHQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuLndldWktZ2FsbGVyeV9fZGVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1jZWxsX3N3aXRjaCB7XHJcbiAgICBwYWRkaW5nLXRvcDogKEB3ZXVpQ2VsbEhlaWdodCAtIEB3ZXVpU3dpdGNoSGVpZ2h0KSAvIDI7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogKEB3ZXVpQ2VsbEhlaWdodCAtIEB3ZXVpU3dpdGNoSGVpZ2h0KSAvIDI7XHJcbn1cclxuLndldWktc3dpdGNoIHtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuLndldWktc3dpdGNoLFxyXG4ud2V1aS1zd2l0Y2gtY3BfX2JveCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogNTJweDtcclxuICAgIGhlaWdodDogQHdldWlTd2l0Y2hIZWlnaHQ7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCBAd2V1aUxpbmVDb2xvckxpZ2h0O1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzLCBib3JkZXIgMC4xcztcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLjQ1LCAxLCAwLjQsIDEpO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiBAd2V1aVN3aXRjaEhlaWdodCAtIDQ7XHJcbiAgICAgICAgaGVpZ2h0OiBAd2V1aVN3aXRjaEhlaWdodCAtIDQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyAvLyDlm7rlrproibLlgLxcclxuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMC40LCAwLjQsIDAuMjUsIDEuMzUpO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLXN3aXRjaDpjaGVja2VkLFxyXG4ud2V1aS1zd2l0Y2gtY3BfX2lucHV0OmNoZWNrZWQgKyAud2V1aS1zd2l0Y2gtY3BfX2JveCxcclxuLndldWktc3dpdGNoLWNwX19pbnB1dFthcmlhLWNoZWNrZWQ9XCJ0cnVlXCJdICsgLndldWktc3dpdGNoLWNwX19ib3gge1xyXG4gICAgYm9yZGVyLWNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIOWFvOWuueWwj+eoi+W6jy9JRSBFZGdl55qE54mI5pysXHJcbi53ZXVpLXN3aXRjaC1jcF9faW5wdXQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6MDtcclxuICAgIGhlaWdodDowO1xyXG4gICAgb3BhY2l0eTowO1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG59XHJcbi53ZXVpLXN3aXRjaC1jcF9fYm94IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1jZWxsX3VwbG9hZGVyIHtcclxuICBwYWRkaW5nLWJvdHRvbToyNHB4O1xyXG59XHJcbi53ZXVpLXVwbG9hZGVyIHtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuLndldWktdXBsb2FkZXJfX2hkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogQHdldWlDZWxsR2FwVjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuLndldWktdXBsb2FkZXJfX3RpdGxlIHtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuLndldWktdXBsb2FkZXJfX2luZm8ge1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGlwcztcclxufVxyXG5cclxuLndldWktdXBsb2FkZXJfX2JkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IEB3ZXVpQ2VsbEdhcEggLSAoQHdldWlDZWxsR2FwViArIEB3ZXVpVXBsb2FkZXJGaWxlU3BhY2luZyk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC1Ad2V1aVVwbG9hZGVyRmlsZVNwYWNpbmc7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi53ZXVpLXVwbG9hZGVyX19maWxlcyB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbi53ZXVpLXVwbG9hZGVyX19maWxlIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBAd2V1aVVwbG9hZGVyRmlsZVNwYWNpbmc7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBAd2V1aVVwbG9hZGVyRmlsZVNwYWNpbmc7XHJcbiAgICB3aWR0aDogQHdldWlVcGxvYWRlclNpemU7XHJcbiAgICBoZWlnaHQ6IEB3ZXVpVXBsb2FkZXJTaXplO1xyXG4gICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG59XHJcbi53ZXVpLXVwbG9hZGVyX19maWxlX3N0YXR1cyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7IC8vIOWbuuWumuiJsuWAvFxyXG4gICAgfVxyXG4gICAgLndldWktdXBsb2FkZXJfX2ZpbGUtY29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuLndldWktdXBsb2FkZXJfX2ZpbGUtY29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLVdISVRFKTtcclxuICAgIC53ZXVpLWljb24td2FybiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLXVwbG9hZGVyX19pbnB1dC1ib3gge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IEB3ZXVpVXBsb2FkZXJGaWxlU3BhY2luZztcclxuICAgIG1hcmdpbi1ib3R0b206IEB3ZXVpVXBsb2FkZXJGaWxlU3BhY2luZztcclxuICAgIHdpZHRoOiBAd2V1aVVwbG9hZGVyU2l6ZTtcclxuICAgIGhlaWdodDogQHdldWlVcGxvYWRlclNpemU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcclxuICAgIC5kYXJrKHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmUyZTJlO1xyXG4gICAgfSk7XHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMztcclxuICAgICAgICAuZGFyayh7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2ZDZkNmQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IEB3ZXVpVXBsb2FkZXJCb3JkZXJXaWR0aCArIDE7XHJcbiAgICAgICAgaGVpZ2h0OiBAd2V1aVVwbG9hZGVyU2l6ZSAvIDM7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogQHdldWlVcGxvYWRlclNpemUgLyAzO1xyXG4gICAgICAgIGhlaWdodDogQHdldWlVcGxvYWRlckJvcmRlcldpZHRoICsgMTtcclxuICAgIH1cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ud2V1aS11cGxvYWRlcl9faW5wdXQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAuc2V0VGFwQ29sb3IoKTtcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5AaW1wb3J0IFwiLi4vd2V1aS1idXR0b24vd2V1aS1idXR0b25cIjtcclxuXHJcbmF7XHJcbiAgLndldWktbXNnX19kZXNjICYsXHJcbiAgLndldWktbXNnX19kZXNjLXByaW1hcnkgJixcclxuICAud2V1aS1tc2dfX3RpcHMgJntcclxuICAgIGNvbG9yOiBAd2V1aUxpbmtDb2xvckRlZmF1bHQ7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgfVxyXG59XHJcbi53ZXVpLW1zZyB7XHJcbiAgICBwYWRkaW5nLXRvcDogQHdldWlNc2dQYWRkaW5nVG9wO1xyXG4gICAgcGFkZGluZzogY2FsYyhAd2V1aU1zZ1BhZGRpbmdUb3AgflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtdG9wKVwiKSBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcclxuICAgIHBhZGRpbmc6IGNhbGMoQHdldWlNc2dQYWRkaW5nVG9wIH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApXCIpIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xyXG59XHJcbi53ZXVpLW1zZ19faWNvbi1hcmVhIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XHJcbn1cclxuLndldWktbXNnX190ZXh0LWFyZWEge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcclxuICAgIHBhZGRpbmc6IDAgMzJweDtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG4gICAgLmh5cGhlbnM7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHsgcGFkZGluZy10b3A6IDk2cHg7IH1cclxufVxyXG4ud2V1aS1tc2dfX3RpdGxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IEB3ZXVpTXNnVGl0bGVHYXA7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgY29sb3I6ICMxOTE5MTk7XHJcbiAgICAuZGFyayh7XHJcbiAgICAgIGNvbG9yOiAjRDFEMUQxO1xyXG4gICAgfSk7XHJcbiAgICAtd2Via2l0LXRleHQtc3Ryb2tlOiAuMDJlbTtcclxufVxyXG5Ac3VwcG9ydHMgKC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoKXtcclxuICAud2V1aS1tc2dfX3RpdGxlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAtd2Via2l0LXRleHQtc3Ryb2tlOiBpbml0aWFsO1xyXG4gIH1cclxufVxyXG4ud2V1aS1tc2dfX2Rlc2Mge1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgZm9udC13ZWlnaHQ6NDAwO1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcbi53ZXVpLW1zZ19fZGVzYy1wcmltYXJ5IHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcbi53ZXVpLW1zZ19fY3VzdG9tLWFyZWF7XHJcbiAgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICBoeXBoZW5zOmF1dG87XHJcbiAgbWFyZ2luLWJvdHRvbToxNnB4O1xyXG4gIC53ZXVpLW1zZ19fdGl0bGUgKyAme1xyXG4gICAgbWFyZ2luLXRvcDo0OHB4O1xyXG4gIH1cclxuICAud2V1aS1tc2dfX2Rlc2MgKyAmLFxyXG4gIC53ZXVpLW1zZ19fZGVzYy1wcmltYXJ5ICsgJntcclxuICAgIG1hcmdpbi10b3A6NDBweDtcclxuICB9XHJcbiAgLndldWktY2VsbHNfX2dyb3VwX2Zvcm17XHJcbiAgICAud2V1aS1jZWxsc3tcclxuICAgICAgJjpiZWZvcmUsJjphZnRlcntcclxuICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndldWktY2VsbHtcclxuICAgICAgcGFkZGluZy1sZWZ0OjA7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6MDtcclxuICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLndldWktbXNnX19vcHItYXJlYSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgLndldWktYnRuLWFyZWEgeyBtYXJnaW46IDA7IH1cclxuICAgIC53ZXVpLWJ0biArIC53ZXVpLWJ0biB7IG1hcmdpbi1ib3R0b206IDE2cHg7IH1cclxuICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDk2cHg7IH1cclxuICAgICYgKyAud2V1aS1tc2dfX2V4dHJhLWFyZWEge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XHJcbiAgICB9XHJcbn1cclxuLndldWktbXNnX190aXBzLWFyZWEge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgIHBhZGRpbmc6IDAgNDBweDtcclxuICAgIC5oeXBoZW5zO1xyXG4gICAgLndldWktbXNnX19vcHItYXJlYSArICYge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY0cHg7XHJcbiAgICB9XHJcbn1cclxuLndldWktbXNnX190aXBzIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbn1cclxuLndldWktbXNnX19leHRyYS1hcmVhIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICBwYWRkaW5nOjAgMzJweDtcclxuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICBhLFxyXG4gICAgbmF2aWdhdG9yIHtcclxuICAgICAgICBjb2xvcjogQHdldWlMaW5rQ29sb3JEZWZhdWx0O1xyXG4gICAgfVxyXG4gICAgbmF2aWdhdG9yIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIOmDqOWIhuWcuuaZr+mcgOimgeWOu+aOieWktOmDqOmXtOi3nVxyXG4ud2V1aS1tc2dfYWxpZ24tdG9we1xyXG4gIC53ZXVpLW1zZ19fdGV4dC1hcmVhe1xyXG4gICAgJjpmaXJzdC1jaGlsZHtwYWRkaW5nLXRvcDowO31cclxuICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWNlbGxzX19ncm91cHtcclxuICBib3JkZXI6MDtcclxufVxyXG4ud2V1aS1jZWxsc19fZ3JvdXBfZm9ybSB7XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgLndldWktY2VsbHNfX3RpdGxlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndldWktY2VsbHNfX3RpdGxlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDMycHg7XHJcbiAgICB9XHJcbiAgXHJcblxyXG4gICAgLndldWktY2VsbHMsXHJcbiAgICAud2V1aS1jZWxsIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDMycHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53ZXVpLWNlbGxzX2NoZWNrYm94IHtcclxuICAgICAgICAud2V1aS1jaGVja19fbGFiZWwge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7IGxlZnQ6IDcycHg7IH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAud2V1aS1jZWxscyB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDMycHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53ZXVpLWNlbGwge1xyXG4gICAgICAgIHBhZGRpbmc6IDE2cHggMzJweDtcclxuICAgICAgICAmOm5vdCgud2V1aS1jZWxsX2xpbmspIHtcclxuICAgICAgICAgICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndldWktY2VsbF9faGQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XHJcbiAgICB9XHJcbiAgICAud2V1aS1jZWxsX19mdCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xyXG4gICAgfVxyXG4gICAgLndldWktY2VsbF93YXJuIHtcclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAd2V1aUNvbG9yV2FybjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC53ZXVpLWxhYmVsIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDVlbTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLndldWktY2VsbHNfX3RpcHMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDMycHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXdldWktRkctMik7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndldWktY2VsbHNfX3RpcHNfd2FybntcclxuICAgICAgICBjb2xvcjogdmFyKC0td2V1aS1SRUQpO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG5cclxuICAgIC53ZXVpLWNlbGxfc2VsZWN0IHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIC53ZXVpLXNlbGVjdCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndldWktY2VsbF9fYmQ6YWZ0ZXIge1xyXG4gICAgICAgICAgICByaWdodDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAud2V1aS1jZWxsX3NlbGVjdC1iZWZvcmUge1xyXG4gICAgICAgIC53ZXVpLWxhYmVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAud2V1aS1zZWxlY3Qge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBpbml0aWFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53ZXVpLWNlbGxfc2VsZWN0LWFmdGVyIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbiAgICAgICAgLndldWktc2VsZWN0IHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLndldWktY2VsbF9zd2l0Y2gge1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHggMzJweDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8g6YCC6ICB5YyW5LiL6KGo5Y2V6aG55oqY6KGM77yM6YCC55So6auY5bqm5LiN5aSn5LqO6buY6K6kY2VsbOWGheWuuemrmOW6pueahOWFg+e0oOW5tuaOklxyXG4gICAgLy8g6buY6K6kY2VsbOWGheWuuemrmOW6pu+8mmNlbGzpu5jorqTpq5jluqY1NnB477yM6Zmk5Y675LiK5LiLcGFkZGluZ+WQhDE2cHjvvIzpu5jorqTlhoXlrrnpq5jluqbkuLrooYzpq5gxLjTvvIgyNHB477yJXHJcbiAgICAud2V1aS1jZWxsX3dyYXB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBpbml0aWFsO1xyXG4gICAgICBwYWRkaW5nLXRvcDo4cHg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOjhweDtcclxuICAgICAgLndldWktY2VsbF9faGR7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDowO1xyXG4gICAgICB9XHJcbiAgICAgIC53ZXVpLWxhYmVse1xyXG4gICAgICAgIG1hcmdpbi10b3A6OHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC53ZXVpLWNlbGxfX2Jke1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndldWktY2VsbF9fY29udHJvbHtcclxuICAgICAgbWFyZ2luOjhweCAwIDhweCAxNnB4O1xyXG4gICAgfVxyXG4gICAgLndldWktY2VsbF9fY29udHJvbF9mbGV4e1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICBtaW4td2lkdGg6IDMwdnc7XHJcbiAgICB9XHJcblxyXG4gICAgLy8g6aqM6K+B56CBXHJcbiAgICAud2V1aS12Y29kZS1idG4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyZW07XHJcbiAgICAgICAgY29sb3I6IEB3ZXVpQnRuRGVmYXVsdEZvbnRDb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJ0bkRlZmF1bHRCZztcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIOmqjOivgeeggWNlbGzpgILogIHljJbvvJrnlLHkuo7lsI/mjInpkq7pq5jluqYzMnB45aSn5LqO6buY6K6k5YaF5a656auY5bqm77yM5omA5Lul6ZyA6KaB5oqKY2VsbOeahHBhZGRpbmfmlLnlsI/ku6Xkv53mjIFjZWxs6buY6K6k6auY5bqmNTZweOeahOinhOiMg1xyXG4gICAgLndldWktY2VsbF92Y29kZXtcclxuICAgICAgJi53ZXVpLWNlbGxfd3JhcHtcclxuICAgICAgICBwYWRkaW5nLXRvcDo0cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206NHB4O1xyXG4gICAgICAgIC53ZXVpLWxhYmVse1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDoxMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAud2V1aS1pbnB1dHtcclxuICAgICAgICAgIGZvbnQtc2l6ZToxN3B4O1xyXG4gICAgICAgICAgbWluLWhlaWdodDp1bml0KDMyLzE3LGVtKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndldWktYnRuX3Jlc2V0e1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuQGltcG9ydCBcIi4uL3dldWktY2VsbC93ZXVpLWNlbGxzX19ncm91cFwiO1xyXG5cclxuLndldWktZm9ybSB7XHJcbiAgICBwYWRkaW5nOiA1NnB4IDAgMDtcclxuICAgIHBhZGRpbmc6IGNhbGMoNTZweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApXCIpIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCkgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xyXG4gICAgcGFkZGluZzogY2FsYyg1NnB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApXCIpIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xyXG5cclxuICAgIC53ZXVpLWZvb3RlcixcclxuICAgIC53ZXVpLWZvb3Rlcl9fbGluayB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG4gICAgLndldWktYWdyZWUge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbn1cclxuLndldWktZm9ybV9fdGV4dC1hcmVhIHtcclxuICAgIHBhZGRpbmc6IDAgMzJweDtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi53ZXVpLWZvcm1fX2NvbnRyb2wtYXJlYSB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgbWFyZ2luOiA0OHB4IDAgNDBweDtcclxufVxyXG4ud2V1aS1mb3JtX190aXBzLWFyZWEsXHJcbi53ZXVpLWZvcm1fX2V4dHJhLWFyZWEge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgIHBhZGRpbmc6IDAgMzJweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4ud2V1aS1mb3JtX19leHRyYS1hcmVhIHtcclxuICBtYXJnaW4tdG9wOjUycHg7XHJcbn1cclxuLndldWktZm9ybV9fb3ByLWFyZWEge1xyXG4gICAgcGFkZGluZzogMCAzMnB4O1xyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA5NnB4O1xyXG4gICAgfVxyXG4gICAgJiArIC53ZXVpLWZvcm1fX3RpcHMtYXJlYXtcclxuICAgICAgbWFyZ2luLXRvcDoxNnB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICB9XHJcbn1cclxuLndldWktZm9ybV9fdGlwcy1hcmVhe1xyXG4gICYgKyAud2V1aS1mb3JtX19leHRyYS1hcmVhIHtcclxuICAgIG1hcmdpbi10b3A6MzJweDtcclxuICB9XHJcbiAgJjpsYXN0LWNoaWxke1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICB9XHJcbn1cclxuLndldWktZm9ybV9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM2O1xyXG59XHJcbi53ZXVpLWZvcm1fX2Rlc2Mge1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgbWFyZ2luLXRvcDogMTZweDtcclxufVxyXG4ud2V1aS1mb3JtX190aXBzIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBhLFxyXG4gICAgbmF2aWdhdG9yIHtcclxuICAgICAgICBjb2xvcjogQHdldWlMaW5rQ29sb3JEZWZhdWx0O1xyXG4gICAgfVxyXG4gICAgbmF2aWdhdG9yIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWFydGljbGUge1xyXG4gICAgcGFkZGluZzogMjRweCAxNnB4O1xyXG4gICAgcGFkZGluZzogMjRweCBjYWxjKDE2cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIGNhbGMoMjRweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpIGNhbGMoMTZweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KVwiKTtcclxuICAgIHBhZGRpbmc6IDI0cHggY2FsYygxNnB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgY2FsYygyNHB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpIGNhbGMoMTZweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XHJcbiAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcclxuICAgIC5oeXBoZW5zO1xyXG4gICAgc2VjdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XHJcbiAgICB9XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45ZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjM0ZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjM0ZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIH1cclxuICAgICoge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDAuOGVtO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS10YWJiYXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDUwMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvclByaW1hcnk7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC5zZXRUb3BMaW5lKEB3ZXVpTGluZUNvbG9yTGlnaHQpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS10YWJiYXJfX2l0ZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgcGFkZGluZzogOHB4IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyg4cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDhweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKVwiKTtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAuc2V0VGFwQ29sb3IoKTtcclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi53ZXVpLWJhcl9faXRlbV9vbiB7XHJcbiAgICAgICAgLndldWktdGFiYmFyX19pY29uLFxyXG4gICAgICAgIC53ZXVpLXRhYmJhcl9faWNvbiA+IGksXHJcbiAgICAgICAgLndldWktdGFiYmFyX19sYWJlbCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLXRhYmJhcl9faWNvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LXNpemU6MTBweDtcclxuICAgIHdpZHRoOiB1bml0KChAd2V1aVRhYkJhckhlaWdodCAtIDgqMiAtIDEwKjEuNCAtIDIpLzEwLGVtKTtcclxuICAgIGhlaWdodDogdW5pdCgoQHdldWlUYWJCYXJIZWlnaHQgLSA4KjIgLSAxMCoxLjQgLSAyKS8xMCxlbSk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcblxyXG4gICAgaSYsXHJcbiAgICA+IGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS10YWJiYXJfX2xhYmVsIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xyXG4gICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktbmF2YmFyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA1MDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xyXG4gICAgcGFkZGluZy10b3A6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC10b3ApO1xyXG4gICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICAuc2V0Qm90dG9tTGluZShAd2V1aUxpbmVDb2xvckxpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICAmICsgLndldWktdGFiX19wYW5lbCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLW5hdmJhcl9faXRlbSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZsZXg6IDE7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogY2FsYygxNnB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LXRvcClcIik7XHJcbiAgICBwYWRkaW5nLXRvcDogY2FsYygxNnB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApXCIpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgbGluZS1oZWlnaHQ6IHVuaXQoKEB3ZXVpTmF2QmFySGVpZ2h0IC0gMzIpIC8gMTcpO1xyXG4gICAgLnNldFRhcENvbG9yKCk7XHJcblxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvckFjdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAmLndldWktYmFyX19pdGVtX29uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgLnNldFJpZ2h0TGluZShAd2V1aUxpbmVDb2xvckxpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcbkBpbXBvcnQgXCJ3ZXVpLXRhYmJhclwiO1xyXG5AaW1wb3J0IFwid2V1aS1uYXZiYXJcIjtcclxuXHJcbi53ZXVpLXRhYiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi53ZXVpLXRhYl9fcGFuZWwge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxufVxyXG4ud2V1aS10YWJfX2NvbnRlbnQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktcHJvZ3Jlc3Mge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi53ZXVpLXByb2dyZXNzX19iYXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlQcm9ncmVzc0JnO1xyXG4gICAgaGVpZ2h0OiBAd2V1aVByb2dyZXNzSGVpZ2h0O1xyXG4gICAgZmxleDogMTtcclxufVxyXG5cclxuLndldWktcHJvZ3Jlc3NfX2lubmVyLWJhciB7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpUHJvZ3Jlc3NDb2xvcjtcclxufVxyXG5cclxuLndldWktcHJvZ3Jlc3NfX29wciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG5cclxuLndldWktcGFuZWwge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgLnNldFRvcExpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICAuc2V0Qm90dG9tTGluZShAd2V1aUxpbmVDb2xvckxpZ2h0KTtcclxuICAgIH1cclxufVxyXG5cclxuLndldWktcGFuZWxfX2hkIHtcclxuICAgIHBhZGRpbmc6IDE2cHggMTZweCAxM3B4O1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbiAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgLy8uc2V0Qm90dG9tTGluZShAd2V1aUxpbmVDb2xvckxpZ2h0KTtcclxuXHJcbiAgICAgICAgbGVmdDogMTVweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLW1lZGlhLWJveCB7XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC5zZXRUb3BMaW5lKEB3ZXVpTGluZUNvbG9yTGlnaHQpO1xyXG5cclxuICAgICAgICBsZWZ0OiAxNnB4O1xyXG4gICAgfVxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhJiB7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgLnNldFRhcENvbG9yKCk7XHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi53ZXVpLW1lZGlhLWJveF9fdGl0bGUge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbiAgICAuZWxsaXBzaXMoKTtcclxuICAgIC5oeXBoZW5zO1xyXG59XHJcbi53ZXVpLW1lZGlhLWJveF9fZGVzYyB7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIHBhZGRpbmctdG9wOiA0cHg7XHJcbiAgICAuZWxsaXBzaXNMbigyKTtcclxuICAgIC5oeXBoZW5zO1xyXG59XHJcbi53ZXVpLW1lZGlhLWJveF9faW5mbyB7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogMTZweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xyXG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi53ZXVpLW1lZGlhLWJveF9faW5mb19fbWV0YSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcclxufVxyXG4ud2V1aS1tZWRpYS1ib3hfX2luZm9fX21ldGFfZXh0cmEge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxZW07XHJcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIEB3ZXVpVGV4dENvbG9yVGlwcztcclxufVxyXG4ud2V1aS1tZWRpYS1ib3hfYXBwbXNnIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLndldWktbWVkaWEtYm94X19oZCB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xyXG4gICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAud2V1aS1tZWRpYS1ib3hfX3RodW1iIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICB9XHJcbiAgICAud2V1aS1tZWRpYS1ib3hfX2JkIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIG1pbi13aWR0aDogMDtcclxuICAgIH1cclxufVxyXG4ud2V1aS1tZWRpYS1ib3hfc21hbGwtYXBwbXNnIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICAud2V1aS1jZWxscyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1ncmlkcyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICAuc2V0VG9wTGluZShAd2V1aUdyaWRCb3JkZXJDb2xvcik7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICAuc2V0TGVmdExpbmUoQHdldWlHcmlkQm9yZGVyQ29sb3IpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1ncmlkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcGFkZGluZzogMjBweCAxMHB4O1xyXG4gICAgd2lkdGg6IDEwMCUgLyBAd2V1aUdyaWRDb2x1bW5Db3VudDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC5zZXRSaWdodExpbmUoQHdldWlHcmlkQm9yZGVyQ29sb3IpO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgLnNldEJvdHRvbUxpbmUoQHdldWlHcmlkQm9yZGVyQ29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLWdyaWRfX2ljb24ge1xyXG4gICAgd2lkdGg6IEB3ZXVpR3JpZEljb25TaXplO1xyXG4gICAgaGVpZ2h0OiBAd2V1aUdyaWRJY29uU2l6ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICYgKyAud2V1aS1ncmlkX19sYWJlbCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1ncmlkX19sYWJlbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xyXG4gICAgZm9udC1zaXplOiBAd2V1aUdyaWRGb250U2l6ZTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWZvb3RlciB7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXBzO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGEsXHJcbiAgICBuYXZpZ2F0b3Ige1xyXG4gICAgICAgIGNvbG9yOiBAd2V1aUxpbmtDb2xvckRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgICBuYXZpZ2F0b3Ige1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIH1cclxufVxyXG4ud2V1aS1mb290ZXJfZml4ZWQtYm90dG9tIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE2cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNnB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSlcIik7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNnB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pXCIpO1xyXG4gICAgbGVmdDogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xyXG4gICAgbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcclxuICAgIHJpZ2h0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xyXG4gICAgcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xyXG59XHJcbi53ZXVpLWZvb3Rlcl9fbGlua3Mge1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG59XHJcbi53ZXVpLWZvb3Rlcl9fbGluayB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgbWFyZ2luOiAwIDhweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICAuc2V0TGVmdExpbmUoKTtcclxuXHJcbiAgICAgICAgbGVmdDogLThweDtcclxuICAgICAgICB0b3A6IDAuMzZlbTtcclxuICAgICAgICBib3R0b206IDAuMzZlbTtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLndldWktZm9vdGVyX190ZXh0IHtcclxuICAgIHBhZGRpbmc6IDAgMTZweDtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcbi53ZXVpLWZsZXhfX2l0ZW0ge1xyXG4gICAgZmxleDogMTtcclxufVxyXG4jaW50cm9kdWN0aW9uIHtcclxuICAgIGhlaWdodDogMTIwcHg7XHJcbn1cclxuI3Bvc2l0aW9uIHtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWRpYWxvZyB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiA1MDAwO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAxNnB4O1xyXG4gICAgcmlnaHQ6IDE2cHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpRGlhbG9nQmFja2dyb3VuZENvbG9yO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbWF4LWhlaWdodDogOTAlO1xyXG59XHJcbi53ZXVpLWRpYWxvZ19faGQge1xyXG4gICAgcGFkZGluZzogMzJweCBAd2V1aURpYWxvZ0dhcFdpZHRoIDE2cHg7XHJcbn1cclxuLndldWktZGlhbG9nX190aXRsZSB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG4ud2V1aS1kaWFsb2dfX2JkIHtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgICBwYWRkaW5nOiAwIEB3ZXVpRGlhbG9nR2FwV2lkdGg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIC5oeXBoZW5zO1xyXG5cclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDMycHggQHdldWlEaWFsb2dHYXBXaWR0aCAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xyXG4gICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuLndldWktZGlhbG9nX19mdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgLnNldFRvcExpbmUoQHdldWlEaWFsb2dMaW5lQ29sb3IpO1xyXG4gICAgfVxyXG5cclxufVxyXG4ud2V1aS1kaWFsb2dfX2J0biB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDogKDU2LTMyKS8xNztcclxuICAgIHBhZGRpbmc6MTZweCAwO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgY29sb3I6IEB3ZXVpRGlhbG9nTGlua0NvbG9yO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIC5zZXRUYXBDb2xvcigpO1xyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpRGlhbG9nTGlua0FjdGl2ZUJjO1xyXG4gICAgfVxyXG5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OmhpZGRlbjsvL+WFvOWuueWwj+eoi+W6j+aXgeeZveeCueWHu+aXoOaViFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgLnNldExlZnRMaW5lKEB3ZXVpRGlhbG9nTGluZUNvbG9yKTtcclxuICAgIH1cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ud2V1aS1kaWFsb2dfX2J0bl9kZWZhdWx0IHtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLUhBTEYpO1xyXG59XHJcblxyXG4ud2V1aS1za2luX2FuZHJvaWQge1xyXG4gICAgLndldWktZGlhbG9nIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNnB4IDMwcHggMCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICB9XHJcbiAgICAud2V1aS1kaWFsb2dfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIH1cclxuICAgIC53ZXVpLWRpYWxvZ19faGQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgICAud2V1aS1kaWFsb2dfX2JkIHtcclxuICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53ZXVpLWRpYWxvZ19fZnQge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCBAd2V1aURpYWxvZ0dhcFdpZHRoIDE2cHg7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndldWktZGlhbG9nX19idG4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMC44ZW07XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuOGVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53ZXVpLWRpYWxvZ19fYnRuX2RlZmF1bHQge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLUhBTEYpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNTJweCkge1xyXG4gICAgLndldWktZGlhbG9nIHtcclxuICAgICAgICB3aWR0aDogMzIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZyB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBtYXgtaGVpZ2h0OiA3NSU7XHJcbiAgICB6LWluZGV4OiA1MDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMnB4O1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDEycHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMCAyNHB4O1xyXG4gICAgcGFkZGluZzogMCBjYWxjKDI0cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGNhbGMoMjRweCB+XCIrIGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1sZWZ0KVwiKTtcclxuICAgIHBhZGRpbmc6IDAgY2FsYygyNHB4IH5cIisgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodClcIikgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGNhbGMoMjRweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XHJcbiAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNTU4cHgpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGQge1xyXG4gICAgZm9udC1zaXplOiA4cHg7XHJcbiAgICBoZWlnaHQ6IDhlbTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC1zaHJpbms6MDtcclxuXHJcbiAgICAud2V1aS1pY29uLWJ0biB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAmOmFjdGl2ZSB7IG9wYWNpdHk6IDAuNTsgfVxyXG4gICAgfVxyXG59XHJcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19faGRfX3NpZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogLThweDtcclxufVxyXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19tYWluIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19zaWRlICsgJiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgNDBweDtcclxuICAgIH1cclxuICAgICYgKyAud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2hkX19zaWRlIHtcclxuICAgICAgICByaWdodDogLThweDtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICAgIC53ZXVpLWljb24tYnRuIHtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fdGl0bGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogdmFyKC0td2V1aS1GRy0wKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXNpemU6IDE1cHg7XHJcbn1cclxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19zdWJ0aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTEpO1xyXG4gICAgZm9udC1zaXplOiAxMHB4O1xyXG59XHJcblxyXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2JkIHtcclxuICAgIGZsZXg6MTtcclxuICAgIG1pbi1oZWlnaHQ6MDtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBkaXNwbGF5OmZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XHJcblxyXG4gICAgLmh5cGhlbnMoKTtcclxuICAgIHBhZGRpbmctdG9wOiA0cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTZweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xyXG59XHJcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fZGVzYyB7XHJcbiAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgY29sb3I6IHZhcigtLXdldWktRkctMCk7XHJcbiAgICBsaW5lLWhlaWdodDogMS40O1xyXG59XHJcbi53ZXVpLWhhbGYtc2NyZWVuLWRpYWxvZ19fdGlwcyB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTZweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTIpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG4ud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2Z0IHtcclxuICAgIHBhZGRpbmc6IDAgMCA2NHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgLndldWktYnRue1xyXG4gICAgICAgIHdpZHRoOiBAd2V1aUJ0bldpZHRoO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDoxNnB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MTZweDtcclxuICAgIH1cclxuICAgIC53ZXVpLWJ0bjpudGgtbGFzdC1jaGlsZChuKzIpLFxyXG4gICAgLndldWktYnRuOm50aC1sYXN0LWNoaWxkKG4rMikgKyAud2V1aS1idG4ge1xyXG4gICAgICAgIG1hcmdpbjogMCA4cHg7XHJcbiAgICAgICAgd2lkdGg6IDEzNnB4O1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDowO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLndldWktaGFsZi1zY3JlZW4tZGlhbG9nX19idG4tYXJlYXtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgJisud2V1aS1oYWxmLXNjcmVlbi1kaWFsb2dfX2F0dGFjaG1lbnQtYXJlYXtcclxuICAgIG1hcmdpbi10b3A6MjRweDtcclxuICAgIG1hcmdpbi1ib3R0b206LTM0cHg7XHJcbiAgfVxyXG59XHJcbi53ZXVpLWljb24tYnRuIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICBib3JkZXItd2lkdGg6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiB2YXIoLS13ZXVpLUZHLTApO1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgd2lkdGg6YXV0bztcclxuICAgIGhlaWdodDphdXRvO1xyXG59XHJcbi53ZXVpLWljb24tbW9yZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgd2lkdGg6IDI0cHg7XHJcbiAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICBtYXNrOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyUzRSAgJTNDcGF0aCBmaWxsLW9wYWNpdHk9Jy45JyBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J001IDEwLjI1YTEuNzUgMS43NSAwIDEgMSAwIDMuNSAxLjc1IDEuNzUgMCAwIDEgMC0zLjV6bTcgMGExLjc1IDEuNzUgMCAxIDEgMCAzLjUgMS43NSAxLjc1IDAgMCAxIDAtMy41em03IDBhMS43NSAxLjc1IDAgMSAxIDAgMy41IDEuNzUgMS43NSAwIDAgMSAwLTMuNXonLyUzRSUzQy9zdmclM0VcIikgbm8tcmVwZWF0IDUwJSA1MCU7XHJcbiAgICAtd2Via2l0LW1hc2stc2l6ZTogY292ZXI7XHJcbiAgICBtYXNrLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbn1cclxuLndldWktaWNvbi1idG5fZ29iYWNrIHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiAxMnB4O1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgbWFzazogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTIlMjIlMjBoZWlnaHQlM0QlMjIyNCUyMiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTAlMjAxOS40MzhMOC45NTUlMjAyMC41bC03LjY2Ni03Ljc5YTEuMDIlMjAxLjAyJTIwMCUyMDAxMC0xLjQyTDguOTU1JTIwMy41JTIwMTAlMjA0LjU2MyUyMDIuNjgyJTIwMTIlMjAxMCUyMDE5LjQzOHolMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTJGJTNFJTNDJTJGc3ZnJTNFXCIpIG5vLXJlcGVhdCA1MCUgNTAlO1xyXG4gICAgLXdlYmtpdC1tYXNrLXNpemU6IGNvdmVyO1xyXG4gICAgbWFzay1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcclxufVxyXG4ud2V1aS1pY29uLWJ0bl9jbG9zZSB7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIG1hc2s6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB3aWR0aCUzRCUyMjI0JTIyJTIwaGVpZ2h0JTNEJTIyMjQlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEyLjI1JTIwMTAuNjkzTDYuMDU3JTIwNC41JTIwNSUyMDUuNTU3bDYuMTkzJTIwNi4xOTNMNSUyMDE3Ljk0MyUyMDYuMDU3JTIwMTlsNi4xOTMtNi4xOTNMMTguNDQzJTIwMTlsMS4wNTctMS4wNTctNi4xOTMtNi4xOTNMMTkuNSUyMDUuNTU3JTIwMTguNDQzJTIwNC41eiUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlMkYlM0UlM0MlMkZzdmclM0VcIikgbm8tcmVwZWF0IDUwJSA1MCU7XHJcbiAgICAtd2Via2l0LW1hc2stc2l6ZTogY292ZXI7XHJcbiAgICBtYXNrLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xyXG59XHJcblxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktdG9hc3Qge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDogNTAwMDtcclxuICAgIGZvbnQtc2l6ZToxMHB4O1xyXG4gICAgd2lkdGg6IDEzLjZlbTtcclxuICAgIGhlaWdodDogMTMuNmVtO1xyXG4gICAgdG9wOiA0MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTQpO1xyXG4gICAgYm94LXNpemluZzpib3JkZXItYm94O1xyXG4gICAgbGluZS1oZWlnaHQ6MS40O1xyXG59XHJcbi53ZXVpLXRvYXN0X3RleHQge1xyXG4gIHdpZHRoOmF1dG87XHJcbiAgaGVpZ2h0OmF1dG87XHJcbiAgbWluLXdpZHRoOjE1MnB4O1xyXG4gIG1heC13aWR0aDoyMTZweDtcclxuICBwYWRkaW5nOjEycHggMDtcclxuICAud2V1aS10b2FzdF9fY29udGVudCB7XHJcbiAgICBmb250LXNpemU6MTRweDtcclxuICB9XHJcbn1cclxuLndldWktaWNvbl90b2FzdCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbToxNnB4O1xyXG4gICAgJi53ZXVpLWljb24tc3VjY2Vzcy1uby1jaXJjbGUge1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbiAgICB9XHJcbiAgICAmLndldWktaWNvbi13YXJuIHtcclxuICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xyXG4gICAgfVxyXG4gICAgJi53ZXVpLWxvYWRpbmcge1xyXG4gICAgICB3aWR0aDozNnB4O1xyXG4gICAgICBoZWlnaHQ6MzZweDtcclxuICAgIH1cclxuICAgICYud2V1aS1wcmltYXJ5LWxvYWRpbmcge1xyXG4gICAgICBmb250LXNpemU6NDBweDtcclxuICAgICAgY29sb3I6I0VERURFRDtcclxuICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOjRweCAwIDRweCA0cHg7XHJcbiAgICAgIH1cclxuICAgICAgJjphZnRlcntcclxuICAgICAgICBib3JkZXItd2lkdGg6NHB4IDRweCA0cHggMDtcclxuICAgICAgfVxyXG4gICAgICAud2V1aS1wcmltYXJ5LWxvYWRpbmdfX2RvdHtcclxuICAgICAgICB3aWR0aDo0cHg7XHJcbiAgICAgICAgaGVpZ2h0OjRweDtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLXRvYXN0X19jb250ZW50IHtcclxuICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgIHBhZGRpbmc6MCAxMnB4O1xyXG4gICAgLmh5cGhlbnM7XHJcbn1cclxuXHJcbi8vIOWkmuihjOaWh+acrOWcuuaZr1xyXG4ud2V1aS10b2FzdF90ZXh0LW1vcmV7XHJcbiAgLndldWktaWNvbl90b2FzdHtcclxuICAgIG1hcmdpbi1ib3R0b206MTJweDtcclxuICB9XHJcbiAgLndldWktdG9hc3RfX2NvbnRlbnR7XHJcbiAgICBmb250LXNpemU6MTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OjEuNjtcclxuICB9XHJcbn1cclxuXHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1tYXNrIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbn1cclxuXHJcbi53ZXVpLW1hc2tfdHJhbnNwYXJlbnQge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJvdHRvbTogMDtcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5Ad2V1aUFjdGlvblNoZWV0QW5kcm9pZEJvcmRlclJhZGl1czogMnB4O1xyXG5cclxuLndldWktYWN0aW9uc2hlZXQge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgei1pbmRleDogNTAwMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogQHdldWlCZ0NvbG9yUHJpbWFyeTtcclxuICAgIC8vc2xpZGUgdXAgYW5pbWF0aW9uXHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEycHg7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuLndldWktYWN0aW9uc2hlZXRfX3RpdGxlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogNTZweDtcclxuICAgIHBhZGRpbmc6IDAgMjRweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXdldWktQkctMik7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgLnNldEJvdHRvbUxpbmUoQHdldWlDZWxsQm9yZGVyQ29sb3IpO1xyXG4gICAgfVxyXG4gICAgLndldWktYWN0aW9uc2hlZXRfX3RpdGxlLXRleHQge1xyXG4gICAgICAgIC5lbGxpcHNpc0xuKDIpO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLWFjdGlvbnNoZWV0X19tZW51IHtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcclxufVxyXG4ud2V1aS1hY3Rpb25zaGVldF9fYWN0aW9uIHtcclxuICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XHJcbn1cclxuLndldWktYWN0aW9uc2hlZXRfX2NlbGwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogQHdldWlDZWxsR2FwVjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgIGxpbmUtaGVpZ2h0OiBAd2V1aUNlbGxMaW5lSGVpZ2h0O1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC5zZXRUb3BMaW5lKEB3ZXVpQ2VsbEJvcmRlckNvbG9yKTtcclxuICAgIH1cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUJnQ29sb3JBY3RpdmU7XHJcbiAgICB9XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi53ZXVpLWFjdGlvbnNoZWV0X19jZWxsX3dhcm4ge1xyXG4gICAgY29sb3I6IEB3ZXVpQ29sb3JXYXJuO1xyXG59XHJcblxyXG5cclxuLy9hbmRyb2lkIGFjdGlvblNoZWV0XHJcbi53ZXVpLXNraW5fYW5kcm9pZCB7XHJcbiAgICAud2V1aS1hY3Rpb25zaGVldCB7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgLy9wYWRkaW5nOiAwIDQwcHg7XHJcbiAgICAgICAgd2lkdGg6IDI3NHB4O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIC8vc2xpZGUgdXAgYW5pbWF0aW9uXHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgIH1cclxuICAgIC53ZXVpLWFjdGlvbnNoZWV0X19hY3Rpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAud2V1aS1hY3Rpb25zaGVldF9fbWVudSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogQHdldWlBY3Rpb25TaGVldEFuZHJvaWRCb3JkZXJSYWRpdXM7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCA2cHggMzBweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIH1cclxuICAgIC53ZXVpLWFjdGlvbnNoZWV0X19jZWxsIHtcclxuICAgICAgICBwYWRkaW5nOiBAd2V1aUNlbGxHYXBWO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogQHdldWlDZWxsTGluZUhlaWdodDtcclxuICAgICAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JUaXRsZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBAd2V1aUFjdGlvblNoZWV0QW5kcm9pZEJvcmRlclJhZGl1cztcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IEB3ZXVpQWN0aW9uU2hlZXRBbmRyb2lkQm9yZGVyUmFkaXVzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBAd2V1aUFjdGlvblNoZWV0QW5kcm9pZEJvcmRlclJhZGl1cztcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IEB3ZXVpQWN0aW9uU2hlZXRBbmRyb2lkQm9yZGVyUmFkaXVzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9hY3Rpb25TaGVldCBhbmlhbXRpb25cclxuLndldWktYWN0aW9uc2hlZXRfdG9nZ2xlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1sb2FkbW9yZSB7XHJcbiAgICB3aWR0aDogNjUlO1xyXG4gICAgbWFyZ2luOiAyMHB4IGF1dG87XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6MDtcclxuXHJcbiAgICAud2V1aS1sb2FkaW5nLFxyXG4gICAgLndldWktcHJpbWFyeS1sb2FkaW5ne1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6OHB4O1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLWxvYWRtb3JlX190aXBzIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS42O1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbn1cclxuXHJcbi53ZXVpLWxvYWRtb3JlX2xpbmUge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEB3ZXVpTGluZUNvbG9yTGlnaHQ7XHJcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xyXG4gICAgLndldWktbG9hZG1vcmVfX3RpcHMge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IC0wLjllbTtcclxuICAgICAgICBwYWRkaW5nOiAwIDAuNTVlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xyXG4gICAgICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICB9XHJcbn1cclxuLndldWktbG9hZG1vcmVfZG90IHtcclxuICAgIC53ZXVpLWxvYWRtb3JlX190aXBzIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDAuMTZlbTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgICAgICB3aWR0aDogNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUxpbmVDb2xvckxpZ2h0O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IDA7XHJcbiAgICAgICAgICAgIHRvcDogLTAuMTZlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDAuMTVlbSAwLjRlbTtcclxuICAgIG1pbi13aWR0aDogdW5pdCg4LzEyLGVtKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUNvbG9yV2FybjtcclxuICAgIGNvbG9yOiAjZmZmOyAvLyDlm7rlrproibLlgLxcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcbi53ZXVpLWJhZGdlX2RvdCB7XHJcbiAgICBwYWRkaW5nOiAwLjRlbTtcclxuICAgIG1pbi13aWR0aDogMDtcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuLndldWktdG9wdGlwcyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gICAgdG9wOiA4cHg7XHJcbiAgICBsZWZ0OiA4cHg7XHJcbiAgICByaWdodDogOHB4O1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiAjZmZmOyAvLyDlm7rlrproibLlgLxcclxuICAgIHotaW5kZXg6IDUwMDA7XHJcbiAgICAudGV4dF93cmFwKCk7XHJcbn1cclxuLndldWktdG9wdGlwc193YXJuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ29sb3JXYXJuO1xyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1saXN0LXRpcHN7XHJcbiAgbGlzdC1zdHlsZTpub25lO1xyXG4gIHBhZGRpbmctdG9wOjI0cHg7XHJcbiAgcGFkZGluZy1ib3R0b206MjRweDtcclxuICBsaW5lLWhlaWdodDoxLjQ7XHJcbiAgZm9udC1zaXplOjE0cHg7XHJcbiAgY29sb3I6dmFyKC0td2V1aS1GRy0xKTtcclxuXHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBjb250ZW50OlwiXCI7XHJcbiAgICAuc2V0VG9wTGluZSh2YXIoLS13ZXVpLUZHLTMpKTtcclxuICB9XHJcbiAgJjpsYXN0LWNoaWxke1xyXG4gICAgcGFkZGluZy1ib3R0b206MDtcclxuICB9XHJcbn1cclxuLndldWktbGlzdC10aXBzX19pdGVte1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIHBhZGRpbmctbGVmdDoxNXB4O1xyXG4gIG1hcmdpbjoxNnB4IDA7XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBjb250ZW50OlwiXFwyMDIyXCI7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIGxlZnQ6MDtcclxuICAgIHRvcDotLjFlbTtcclxuICB9XHJcbiAgJjpmaXJzdC1jaGlsZHtcclxuICAgIG1hcmdpbi10b3A6MDtcclxuICB9XHJcbiAgLndldWktZm9ybS1wcmV2aWV3X19saXN0ICsgLndldWktbGlzdC10aXBzID4gJntcclxuICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgIG1hcmdpbi10b3A6NnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQHdldWlTZWFyY2hJbnB1dEhlaWdodDozMnB4O1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuLndldWktc2VhcmNoLWJhciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiA4cHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQmdDb2xvckRlZmF1bHQ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgJi53ZXVpLXNlYXJjaC1iYXJfZm9jdXNpbmcge1xyXG4gICAgICAgIC53ZXVpLXNlYXJjaC1iYXJfX2NhbmNlbC1idG4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgLndldWktc2VhcmNoLWJhcl9fbGFiZWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2V1aS1pY29uLXNlYXJjaCB7XHJcbiAgICAgIGZvbnQtc2l6ZToxMHB4O1xyXG4gICAgICB3aWR0aDogMS42ZW07XHJcbiAgICAgIGhlaWdodDogMS42ZW07XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICBmbGV4LXNocmluazowO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLXNlYXJjaC1iYXJfX2Zvcm0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZmxleDogMTtcclxuICAgIG1pbi13aWR0aDowO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2V1aS1CRy0yKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG4ud2V1aS1zZWFyY2gtYmFyX19ib3gge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGRpc3BsYXk6ZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcclxuXHJcbiAgICAud2V1aS1zZWFyY2gtYmFyX19pbnB1dCB7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiB1bml0KEB3ZXVpU2VhcmNoSW5wdXRIZWlnaHQgLSAxNnB4KS8xNGVtO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXQoQHdldWlTZWFyY2hJbnB1dEhlaWdodCAtIDE2cHgpLzE0ZW07XHJcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY2FyZXQtY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xyXG4gICAgICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvclRpdGxlO1xyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53ZXVpLWljb24tY2xlYXIge1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOjA7XHJcbiAgICAgICAgZm9udC1zaXplOjEwcHg7XHJcbiAgICAgICAgd2lkdGg6IDJlbTtcclxuICAgICAgICBoZWlnaHQ6IDJlbTtcclxuICAgICAgICBtYXJnaW4tbGVmdDo4cHg7XHJcbiAgICAgICAgbWFzay1zaXplOiAyZW07XHJcbiAgICAgICAgbWFzay1wb3NpdGlvbjp+XCJjYWxjKDEwMCUgLSA4cHgpXCIgMDtcclxuICAgICAgICBtaW4td2lkdGg6NDRweDtcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgY29udGVudDpcIlwiO1xyXG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgICAgd2lkdGg6NDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLndldWktc2VhcmNoLWJhcl9fbGFiZWwge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBjb2xvcjogQHdldWlUZXh0Q29sb3JEZXNjO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0td2V1aS1CRy0yKTtcclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxufVxyXG4ud2V1aS1zZWFyY2gtYmFyX19jYW5jZWwtYnRuIHtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjhweDtcclxuICAgIGNvbG9yOiBAd2V1aUxpbmtDb2xvckRlZmF1bHQ7XHJcbn1cclxuLndldWktc2VhcmNoLWJhcl9faW5wdXQ6bm90KDp2YWxpZCkgKyAud2V1aS1pY29uLWNsZWFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8v5bmy5o6JaW5wdXRbc2VhcmNoXem7mOiupOeahGNsZWFyIGJ1dHRvblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1kZWNvcmF0aW9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbkBwaWNrZXJJdGVtSGVpZ2h0OiA0OHB4O1xyXG4ud2V1aS1waWNrZXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHotaW5kZXg6IDUwMDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZXVpLUJHLTIpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xyXG4gICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xyXG4gICAgLy9zbGlkZSB1cCBhbmltYXRpb25cclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xyXG59XHJcblxyXG4ud2V1aS1waWNrZXJfX2hkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgcGFkZGluZzogMTZweCBjYWxjKDE2cHggflwiKyBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtcmlnaHQpXCIpIDE2cHggY2FsYygxNnB4IH5cIisgY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWxlZnQpXCIpO1xyXG4gICAgcGFkZGluZzogMTZweCBjYWxjKDE2cHggflwiKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KVwiKSAxNnB4IGNhbGMoMTZweCB+XCIrIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdClcIik7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgLnNldEJvdHRvbUxpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLXBpY2tlcl9fYmQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdldWktQkctMik7XHJcbiAgICBoZWlnaHQ6IDI0MHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLndldWktcGlja2VyX19ncm91cCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgLndldWktcGlja2VyX19pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIC53ZXVpLXBpY2tlcl9faXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGNvbnN0YW50KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLndldWktcGlja2VyX19tYXNrIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgei1pbmRleDogMztcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNikpO1xyXG4gICAgLmRhcmsoe1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyNSwgMC45NSksIHJnYmEoMjUsIDI1LCAyNSwgMC42KSksIGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDI1LCAyNSwgMjUsIDAuOTUpLCByZ2JhKDI1LCAyNSwgMjUsIDAuNikpO1xyXG4gICAgfSk7XHJcbiAgICBcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCwgYm90dG9tO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDkycHg7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG59XHJcblxyXG4ud2V1aS1waWNrZXJfX2luZGljYXRvciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogNTZweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDkycHg7XHJcbiAgICB6LWluZGV4OiAzO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIC5zZXRUb3BMaW5lKEB3ZXVpTGluZUNvbG9yTGlnaHQpO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgLnNldEJvdHRvbUxpbmUoQHdldWlMaW5lQ29sb3JMaWdodCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLXBpY2tlcl9fY29udGVudCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi53ZXVpLXBpY2tlcl9faXRlbSB7XHJcbiAgICBoZWlnaHQ6IEBwaWNrZXJJdGVtSGVpZ2h0O1xyXG4gICAgbGluZS1oZWlnaHQ6IEBwaWNrZXJJdGVtSGVpZ2h0O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yVGl0bGU7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ud2V1aS1waWNrZXJfX2l0ZW1fZGlzYWJsZWQge1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcclxufVxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG5AaW1wb3J0IFwiLi4vLi4vYmFzZS9mblwiO1xyXG5cclxuQGtleWZyYW1lcyBzbGlkZVVwIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53ZXVpLWFuaW1hdGUtc2xpZGUtdXAge1xyXG4gICAgYW5pbWF0aW9uOiBzbGlkZVVwIGVhc2UgMC4zcyBmb3J3YXJkcztcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZURvd24ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLndldWktYW5pbWF0ZS1zbGlkZS1kb3duIHtcclxuICAgIGFuaW1hdGlvbjogc2xpZGVEb3duIGVhc2UgMC4zcyBmb3J3YXJkcztcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1hbmltYXRlLWZhZGUtaW4ge1xyXG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gZWFzZSAwLjNzIGZvcndhcmRzO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2V1aS1hbmltYXRlLWZhZGUtb3V0IHtcclxuICAgIGFuaW1hdGlvbjogZmFkZU91dCBlYXNlIDAuM3MgZm9yd2FyZHM7XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuXHJcbi53ZXVpLWFncmVlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogOHB4IDE1cHggMDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuXHJcbiAgICBhLFxyXG4gICAgbmF2aWdhdG9yIHtcclxuICAgICAgICBjb2xvcjogQHdldWlMaW5rQ29sb3JEZWZhdWx0O1xyXG4gICAgfVxyXG4gICAgbmF2aWdhdG9yIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICB9XHJcbn1cclxuLndldWktYWdyZWVfX3RleHQge1xyXG4gICAgY29sb3I6IEB3ZXVpVGV4dENvbG9yRGVzYztcclxuICAgIG1hcmdpbi1sZWZ0OiAycHg7XHJcbn1cclxuLndldWktYWdyZWVfX2NoZWNrYm94IHtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcclxuICAgIG1hc2stcG9zaXRpb246IDAgMDtcclxuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBtYXNrLXNpemU6IDEwMCU7XHJcbiAgICBtYXNrLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHdpZHRoJTNEJTIyMTAwMCUyMiUyMGhlaWdodCUzRCUyMjEwMDAlMjIlMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUwMCUyMDkxNi42NjdDMjY5Ljg4MSUyMDkxNi42NjclMjA4My4zMzMlMjA3MzAuMTE5JTIwODMuMzMzJTIwNTAwJTIwODMuMzMzJTIwMjY5Ljg4MSUyMDI2OS44ODElMjA4My4zMzMlMjA1MDAlMjA4My4zMzNjMjMwLjExOSUyMDAlMjA0MTYuNjY3JTIwMTg2LjU0OCUyMDQxNi42NjclMjA0MTYuNjY3JTIwMCUyMDIzMC4xMTktMTg2LjU0OCUyMDQxNi42NjctNDE2LjY2NyUyMDQxNi42Njd6bTAtNTBjMjAyLjUwNCUyMDAlMjAzNjYuNjY3LTE2NC4xNjMlMjAzNjYuNjY3LTM2Ni42NjclMjAwLTIwMi41MDQtMTY0LjE2My0zNjYuNjY3LTM2Ni42NjctMzY2LjY2Ny0yMDIuNTA0JTIwMC0zNjYuNjY3JTIwMTY0LjE2My0zNjYuNjY3JTIwMzY2LjY2NyUyMDAlMjAyMDIuNTA0JTIwMTY0LjE2MyUyMDM2Ni42NjclMjAzNjYuNjY3JTIwMzY2LjY2N3olMjIlMjBmaWxsLXJ1bGUlM0QlMjJldmVub2RkJTIyJTIwZmlsbC1vcGFjaXR5JTNEJTIyLjklMjIlMkYlM0UlM0MlMkZzdmclM0UpO1xyXG4gICAgY29sb3I6IEB3ZXVpTGluZUNvbG9yRGFyaztcclxuICAgIHdpZHRoOiAxZW07XHJcbiAgICBoZWlnaHQ6IDFlbTtcclxuICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgIG1hcmdpbi10b3A6IC0wLjJlbTtcclxufVxyXG4ud2V1aS1hZ3JlZV9fY2hlY2tib3gtY2hlY2sgeyAvLyDlhbzlrrnlsI/nqIvluo9cclxuICAgIG9wYWNpdHk6MDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOjFweDtcclxuICAgIGhlaWdodDoxcHg7XHJcbiAgICBvdmVyZmxvdzpoaWRkZW47XHJcbn1cclxuLndldWktYWdyZWVfX2NoZWNrYm94OmNoZWNrZWQsXHJcbi53ZXVpLWFncmVlX19jaGVja2JveC1jaGVja1thcmlhLWNoZWNrZWQ9XCJ0cnVlXCJdICsgLndldWktYWdyZWVfX2NoZWNrYm94IHtcclxuICAgIG1hc2staW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIyNCUyMiUyMGhlaWdodCUzRCUyMjI0JTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMiUyMDIyQzYuNDc3JTIwMjIlMjAyJTIwMTcuNTIzJTIwMiUyMDEyUzYuNDc3JTIwMiUyMDEyJTIwMnMxMCUyMDQuNDc3JTIwMTAlMjAxMC00LjQ3NyUyMDEwLTEwJTIwMTB6bS0xLjE3Ny03Ljg2bC0yLjc2NS0yLjc2N0w3JTIwMTIuNDMxbDMuMTE5JTIwMy4xMjFhMSUyMDElMjAwJTIwMDAxLjQxNCUyMDBsNS45NTItNS45NS0xLjA2Mi0xLjA2Mi01LjYlMjA1LjZ6JTIyJTJGJTNFJTNDJTJGc3ZnJTNFKTtcclxuICAgIGNvbG9yOiBAd2V1aUNvbG9yUHJpbWFyeTtcclxufVxyXG4ud2V1aS1hZ3JlZV9hbmltYXRlIHtcclxuICAgIGFuaW1hdGlvbjogd2V1aUFncmVlIDAuM3MgMTtcclxufVxyXG5cclxuQGtleWZyYW1lcyB3ZXVpQWdyZWUge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIH1cclxuXHJcbiAgICAxNiUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOHB4KTtcclxuICAgIH1cclxuXHJcbiAgICAyOCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTZweCk7XHJcbiAgICB9XHJcblxyXG4gICAgNDQlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgNTklIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE2cHgpO1xyXG4gICAgfVxyXG5cclxuICAgIDczJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG5cclxuICAgIDgyJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE2cHgpO1xyXG4gICAgfVxyXG5cclxuICAgIDk0JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDhweCk7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4vLyDpu5jorqToibJcclxuLndldWktcHJpbWFyeS1sb2FkaW5ne1xyXG4gIGZvbnQtc2l6ZToxNnB4O1xyXG4gIC5zZXRDaXJjbGVMb2FkaW5nKCM2MDYwNjAsMWVtLDAuMTI1ZW0pO1xyXG59XHJcblxyXG4vLyDot5/pmo/ns7vnu5/liIfmjaLnmoTlk4HniYzoibJcclxuLndldWktcHJpbWFyeS1sb2FkaW5nX2JyYW5ke1xyXG4gIGNvbG9yOnZhcigtLXdldWktQlJBTkQpO1xyXG59XHJcblxyXG4vLyDlm7rlrprnmb3oibLljYrpgI/mmI5cclxuLndldWktcHJpbWFyeS1sb2FkaW5nX3RyYW5zcGFyZW50e1xyXG4gIGNvbG9yOiNFREVERUQ7XHJcbn1cclxuXHJcblxyXG4iLCIvKlxyXG4qIFRlbmNlbnQgaXMgcGxlYXNlZCB0byBzdXBwb3J0IHRoZSBvcGVuIHNvdXJjZSBjb21tdW5pdHkgYnkgbWFraW5nIFdlVUkgYXZhaWxhYmxlLlxyXG4qIFxyXG4qIENvcHlyaWdodCAoQykgMjAxNyBUSEwgQTI5IExpbWl0ZWQsIGEgVGVuY2VudCBjb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4qIFxyXG4qIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZVxyXG4qIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxyXG4qIFxyXG4qICAgICAgIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcclxuKiBcclxuKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzXHJcbiogZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCxcclxuKiBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXHJcbiogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbiovXHJcblxyXG4uc2V0Q2lyY2xlTG9hZGluZyhAY29sb3I6Y3VycmVudENvbG9yLEBzaXplOjgwcHgsQHdpZGU6N3B4KXtcclxuICBkaXNwbGF5OmlubGluZS1mbGV4O1xyXG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gIHdpZHRoOkBzaXplO1xyXG4gIGhlaWdodDpAc2l6ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcbiAgY29sb3I6QGNvbG9yO1xyXG4gIGFuaW1hdGlvbjogY2lyY2xlTG9hZGluZyAxcyBzdGVwcyg2MCxlbmQpIGluZmluaXRlO1xyXG5cclxuICAmOmJlZm9yZSwmOmFmdGVye1xyXG4gICAgY29udGVudDpcIlwiO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHdpZHRoOkBzaXplLzI7XHJcbiAgICBoZWlnaHQ6QHNpemU7XHJcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcbiAgICBib3JkZXI6QHdpZGUgc29saWQ7XHJcbiAgICBib3JkZXItY29sb3I6Y3VycmVudENvbG9yO1xyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmV7XHJcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6MDtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6QHNpemU7XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOkBzaXplO1xyXG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOmxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwwLDAsMSkgOCUsIHJnYmEoMCwwLDAsLjMpIDk1JSk7XHJcbiAgfVxyXG4gICY6YWZ0ZXJ7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDowO1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6QHNpemU7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czpAc2l6ZTtcclxuICAgIC13ZWJraXQtbWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsMCwwLDApIDglICwgcmdiYSgwLDAsMCwuMykgOTUlKTtcclxuICB9XHJcbiAgJl9fZG90e1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6MDtcclxuICAgIGxlZnQ6NTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6LUB3aWRlLzI7XHJcbiAgICB3aWR0aDpAd2lkZTtcclxuICAgIGhlaWdodDpAd2lkZTtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOkB3aWRlO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6QHdpZGU7XHJcbiAgICBiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtcclxuICB9XHJcblxyXG4gIEBrZXlmcmFtZXMgY2lyY2xlTG9hZGluZyB7XHJcbiAgICAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMzYwZGVnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLypcclxuKiBUZW5jZW50IGlzIHBsZWFzZWQgdG8gc3VwcG9ydCB0aGUgb3BlbiBzb3VyY2UgY29tbXVuaXR5IGJ5IG1ha2luZyBXZVVJIGF2YWlsYWJsZS5cclxuKiBcclxuKiBDb3B5cmlnaHQgKEMpIDIwMTcgVEhMIEEyOSBMaW1pdGVkLCBhIFRlbmNlbnQgY29tcGFueS4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuKiBcclxuKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UgKHRoZSBcIkxpY2Vuc2VcIik7IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2VcclxuKiB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcclxuKiBcclxuKiAgICAgICBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXHJcbiogXHJcbiogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpc1xyXG4qIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsXHJcbiogZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxyXG4qIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxyXG4qL1xyXG5cclxuQGltcG9ydCBcIi4uLy4uL2Jhc2UvZm5cIjtcclxuQGltcG9ydCBcIi4vd2V1aS1wcmltYXJ5LWxvYWRpbmdcIjtcclxuXHJcbi53ZXVpLWxvYWRpbmcge1xyXG4gICAgZm9udC1zaXplOjEwcHg7XHJcbiAgICB3aWR0aDogMmVtO1xyXG4gICAgaGVpZ2h0OiAyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgYW5pbWF0aW9uOiB3ZXVpTG9hZGluZyAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsICUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMjAnIGhlaWdodD0nMTIwJyB2aWV3Qm94PScwIDAgMTAwIDEwMCclM0UlM0NwYXRoIGZpbGw9J25vbmUnIGQ9J00wIDBoMTAwdjEwMEgweicvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyM0U5RTlFOScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgwIC0zMCknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjM5ODk2OTcnIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoMzAgMTA1Ljk4IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyMzlCOTk5QScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSg2MCA3NS45OCA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjNBM0ExQTInIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoOTAgNjUgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzQUJBOUFBJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKDEyMCA1OC42NiA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjNCMkIyQjInIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoMTUwIDU0LjAyIDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyM0JBQjhCOScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgNTAgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzQzJDMEMxJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKC0xNTAgNDUuOTggNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzQ0JDQkNCJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKC0xMjAgNDEuMzQgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0nJTIzRDJEMkQyJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKC05MCAzNSA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSclMjNEQURBREEnIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoLTYwIDI0LjAyIDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9JyUyM0UyRTJFMicgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgtMzAgLTUuOTggNjUpJy8lM0UlM0Mvc3ZnJTNFXCIpIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuXHJcbiAgICAmLndldWktbG9hZGluZ190cmFuc3BhcmVudCxcclxuICAgIC53ZXVpLWJ0bl9sb2FkaW5nLndldWktYnRuX3ByaW1hcnkgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwgJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyMCcgaGVpZ2h0PScxMjAnIHZpZXdCb3g9JzAgMCAxMDAgMTAwJyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgZD0nTTAgMGgxMDB2MTAwSDB6Jy8lM0UlM0NyZWN0IHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC41NiknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMCAtMzApJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0ncmdiYSgyNTUsMjU1LDI1NSwuNSknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoMzAgMTA1Ljk4IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjQzKScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSg2MCA3NS45OCA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC4zOCknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoOTAgNjUgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0ncmdiYSgyNTUsMjU1LDI1NSwuMzIpJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKDEyMCA1OC42NiA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC4yOCknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoMTUwIDU0LjAyIDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjI1KScgcng9JzUnIHJ5PSc1JyB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgNTAgNjUpJy8lM0UlM0NyZWN0IHdpZHRoPSc3JyBoZWlnaHQ9JzIwJyB4PSc0Ni41JyB5PSc0MCcgZmlsbD0ncmdiYSgyNTUsMjU1LDI1NSwuMiknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoLTE1MCA0NS45OCA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC4xNyknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoLTEyMCA0MS4zNCA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC4xNCknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoLTkwIDM1IDY1KScvJTNFJTNDcmVjdCB3aWR0aD0nNycgaGVpZ2h0PScyMCcgeD0nNDYuNScgeT0nNDAnIGZpbGw9J3JnYmEoMjU1LDI1NSwyNTUsLjEpJyByeD0nNScgcnk9JzUnIHRyYW5zZm9ybT0ncm90YXRlKC02MCAyNC4wMiA2NSknLyUzRSUzQ3JlY3Qgd2lkdGg9JzcnIGhlaWdodD0nMjAnIHg9JzQ2LjUnIHk9JzQwJyBmaWxsPSdyZ2JhKDI1NSwyNTUsMjU1LC4wMyknIHJ4PSc1JyByeT0nNScgdHJhbnNmb3JtPSdyb3RhdGUoLTMwIC01Ljk4IDY1KScvJTNFJTNDL3N2ZyUzRVwiKTtcclxuICAgIH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHdldWlMb2FkaW5nIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMzYwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB3ZXVpTG9hZGluZyB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgIH1cclxuXHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDM2MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi8qXHJcbiogVGVuY2VudCBpcyBwbGVhc2VkIHRvIHN1cHBvcnQgdGhlIG9wZW4gc291cmNlIGNvbW11bml0eSBieSBtYWtpbmcgV2VVSSBhdmFpbGFibGUuXHJcbiogXHJcbiogQ29weXJpZ2h0IChDKSAyMDE3IFRITCBBMjkgTGltaXRlZCwgYSBUZW5jZW50IGNvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiogXHJcbiogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlICh0aGUgXCJMaWNlbnNlXCIpOyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlXHJcbiogd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XHJcbiogXHJcbiogICAgICAgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxyXG4qIFxyXG4qIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXNcclxuKiBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELFxyXG4qIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcclxuKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cclxuKi9cclxuXHJcbkBpbXBvcnQgXCIuLi8uLi9iYXNlL2ZuXCI7XHJcblxyXG4ud2V1aS1zbGlkZXIge1xyXG4gICAgcGFkZGluZzogMTVweCAxOHB4O1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbn1cclxuXHJcbi53ZXVpLXNsaWRlcl9faW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAd2V1aUxpbmVDb2xvckxpZ2h0O1xyXG59XHJcblxyXG4ud2V1aS1zbGlkZXJfX3RyYWNrIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IEB3ZXVpQ29sb3JQcmltYXJ5O1xyXG4gICAgd2lkdGg6IDA7XHJcbn1cclxuXHJcbi53ZXVpLXNsaWRlcl9faGFuZGxlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB3aWR0aDogMjhweDtcclxuICAgIGhlaWdodDogMjhweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTRweDtcclxuICAgIG1hcmdpbi10b3A6IC0xNHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgLy8g5Zu65a6a6Imy5YC8XHJcbiAgICBib3gtc2hhZG93OiAwIDAgNHB4IHZhcigtLXdldWktRkctMyk7XHJcbn1cclxuXHJcblxyXG4ud2V1aS1zbGlkZXItYm94IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLndldWktc2xpZGVyIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG59XHJcbi53ZXVpLXNsaWRlci1ib3hfX3ZhbHVlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcclxuICAgIG1pbi13aWR0aDogMjRweDtcclxuICAgIGNvbG9yOiBAd2V1aVRleHRDb2xvckRlc2M7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbn1cclxuIl19 */
