@charset "UTF-8";
.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}
.mapboxgl-canvas{position:absolute;left:0;top:0}
.mapboxgl-map:-webkit-full-screen{width:100%;height:100%}
.mapboxgl-canary{background-color:salmon}
.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}
.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}
.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:-webkit-grabbing;cursor:grabbing}
.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}
.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}
.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}
.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{position:absolute;pointer-events:none;z-index:2}
.mapboxgl-ctrl-top-left{top:0;left:0}
.mapboxgl-ctrl-top-right{top:0;right:0}
.mapboxgl-ctrl-bottom-left{bottom:0;left:0}
.mapboxgl-ctrl-bottom-right{right:0;bottom:0}
.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}
.mapboxgl-ctrl-top-left .mapboxgl-ctrl{margin:10px 0 0 10px;float:left}
.mapboxgl-ctrl-top-right .mapboxgl-ctrl{margin:10px 10px 0 0;float:right}
.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{margin:0 0 10px 10px;float:left}
.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{margin:0 10px 10px 0;float:right}
.mapboxgl-ctrl-group{border-radius:4px;background:#fff}
.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}
@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}
.mapboxgl-ctrl-group button{width:29px;height:29px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:transparent;cursor:pointer}
.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}
.mapboxgl-ctrl button .mapboxgl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:50%}
@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}
.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}
.mapboxgl-ctrl button:disabled{cursor:not-allowed}
.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}
.mapboxgl-ctrl button:not(:disabled):hover{background-color:rgba(0,0,0,.05)}
.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}
.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}
.mapboxgl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}
.mapboxgl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}
.mapboxgl-ctrl-group button:focus:only-child{border-radius:inherit}
.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E %3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E %3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E %3C/svg%3E")}
@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E %3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E %3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E %3C/svg%3E")}}
@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E %3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E %3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E %3C/svg%3E")}}
.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E %3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E %3C/svg%3E")}
@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E %3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E %3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E %3C/svg%3E")}}
@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E %3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E %3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E %3C/svg%3E")}}
.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E %3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E %3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E %3C/svg%3E")}
@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E %3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E %3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E %3C/svg%3E")}}
@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E %3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E %3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E %3C/svg%3E")}}
.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}
.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{-webkit-animation:mapboxgl-spin 2s linear infinite;animation:mapboxgl-spin 2s linear infinite}
@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}}
@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E %3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E %3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E %3Ccircle id='dot' cx='10' cy='10' r='2'/%3E %3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E %3C/svg%3E")}}
@-webkit-keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
a.mapboxgl-ctrl-logo{width:88px;height:23px;margin:0 0 -4px -4px;display:block;background-repeat:no-repeat;cursor:pointer;overflow:hidden;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E %3Cdefs%3E %3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E %3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E %3C/defs%3E %3Cmask id='clip'%3E %3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/mask%3E %3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E %3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E %3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E %3C/g%3E %3Cg id='fill' opacity='0.9' fill='%23fff'%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/g%3E %3C/svg%3E")}
a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}
@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E %3Cdefs%3E %3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E %3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E %3C/defs%3E %3Cmask id='clip'%3E %3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/mask%3E %3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E %3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E %3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E %3C/g%3E %3Cg id='fill' opacity='1' fill='%23fff'%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/g%3E %3C/svg%3E")}}
@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E %3Cdefs%3E %3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E %3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E %3C/defs%3E %3Cmask id='clip'%3E %3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/mask%3E %3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E %3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E %3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E %3C/g%3E %3Cg id='fill' opacity='1' fill='%23000'%3E %3Cuse xlink:href='%23logo'/%3E %3Cuse xlink:href='%23text'/%3E %3C/g%3E %3C/svg%3E")}}
.mapboxgl-ctrl.mapboxgl-ctrl-attrib{padding:0 5px;background-color:hsla(0,0%,100%,.5);margin:0}
@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E %3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E %3C/svg%3E");background-color:hsla(0,0%,100%,.5);width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner,.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:rgba(0,0,0,.05)}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;right:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;left:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}
@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E %3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E %3C/svg%3E")}}
@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E %3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E %3C/svg%3E")}}
.mapboxgl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}
.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}
.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}
.mapboxgl-attrib-empty{display:none}
.mapboxgl-ctrl-scale{background-color:hsla(0,0%,100%,.75);font-size:10px;border:2px solid #333;border-top:#333;padding:0 5px;color:#333;box-sizing:border-box}
.mapboxgl-popup{position:absolute;top:0;left:0;display:flex;will-change:transform;pointer-events:none}
.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}
.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}
.mapboxgl-popup-anchor-left{flex-direction:row}
.mapboxgl-popup-anchor-right{flex-direction:row-reverse}
.mapboxgl-popup-tip{width:0;height:0;border:10px solid transparent;z-index:1}
.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-top:none;border-bottom-color:#fff}
.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}
.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}
.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}
.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}
.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}
.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}
.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-right:none;border-left-color:#fff}
.mapboxgl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:transparent}
.mapboxgl-popup-close-button:hover{background-color:rgba(0,0,0,.05)}
.mapboxgl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:10px 10px 15px;pointer-events:auto}
.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}
.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}
.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}
.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}
.mapboxgl-popup-track-pointer{display:none}
.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}
.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}
.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}
.mapboxgl-marker{position:absolute;top:0;left:0;will-change:transform;opacity:1;transition:opacity .2s}
.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}
.mapboxgl-user-location-dot:before{content:"";position:absolute;-webkit-animation:mapboxgl-user-location-dot-pulse 2s infinite;animation:mapboxgl-user-location-dot-pulse 2s infinite}
.mapboxgl-user-location-dot:after{border-radius:50%;border:2px solid #fff;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px;box-sizing:border-box;box-shadow:0 0 3px rgba(0,0,0,.35)}
@-webkit-keyframes mapboxgl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}
@keyframes mapboxgl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}
.mapboxgl-user-location-dot-stale{background-color:#aaa}
.mapboxgl-user-location-dot-stale:after{display:none}
.mapboxgl-user-location-accuracy-circle{background-color:rgba(29,161,242,.2);width:1px;height:1px;border-radius:100%}
.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}
.mapboxgl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}
@media print{.mapbox-improve-map{display:none}}
/* Basics */
.mapboxgl-ctrl-geocoder,
.mapboxgl-ctrl-geocoder *,
.mapboxgl-ctrl-geocoder *:after,
.mapboxgl-ctrl-geocoder *:before {
  box-sizing: border-box;
}
.mapboxgl-ctrl-geocoder {
  font-size: 18px;
  line-height: 24px;
  font-family: "Open Sans", "Helvetica Neue", Arial, Helvetica, sans-serif;
  position: relative;
  background-color: #fff;
  width: 100%;
  min-width: 240px;
  z-index: 1;
  border-radius: 4px;
  transition: width .25s, min-width .25s;
}
.mapboxgl-ctrl-geocoder--input {
  font: inherit;
  width: 100%;
  border: 0;
  background-color: transparent;
  margin: 0;
  height: 50px;
  color: #404040; /* fallback */
  color: rgba(0, 0, 0, 0.75);
  padding: 6px 45px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.mapboxgl-ctrl-geocoder--input::-ms-clear {
  display: none; /* hide input clear button in IE */
}
.mapboxgl-ctrl-geocoder--input:focus {
  color: #404040; /* fallback */
  color: rgba(0, 0, 0, 0.75);
  outline: 0;
  box-shadow: none;
  outline: thin dotted;
}
.mapboxgl-ctrl-geocoder .mapboxgl-ctrl-geocoder--pin-right > * {
  z-index: 2;
  position: absolute;
  right: 8px;
  top: 7px;
  display: none;
}
.mapboxgl-ctrl-geocoder,
.mapboxgl-ctrl-geocoder .suggestions {
  box-shadow: 0 0 10px 2px rgba(0,0,0,.1);
}
/* Collapsed */
.mapboxgl-ctrl-geocoder.mapboxgl-ctrl-geocoder--collapsed {
  width: 50px;
  min-width: 50px;
  transition: width .25s, min-width .25s;
}
/* Suggestions */
.mapboxgl-ctrl-geocoder .suggestions {
  background-color: #fff;
  border-radius: 4px;
  left: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  width: 100%;
  top: 110%; /* fallback */
  top: calc(100% + 6px);
  z-index: 1000;
  overflow: hidden;
  font-size: 15px;
}
.mapboxgl-ctrl-bottom-left .suggestions,
.mapboxgl-ctrl-bottom-right .suggestions {
  top: auto;
  bottom: 100%;
}
.mapboxgl-ctrl-geocoder .suggestions > li > a {
  cursor: default;
  display: block;
  padding: 6px 12px;
  color: #404040;
}
.mapboxgl-ctrl-geocoder .suggestions > .active > a,
.mapboxgl-ctrl-geocoder .suggestions > li > a:hover {
  color: #404040;
  background-color: #f3f3f3;
  text-decoration: none;
  cursor: pointer;
}
.mapboxgl-ctrl-geocoder--suggestion-title {
  font-weight: bold;
}
.mapboxgl-ctrl-geocoder--suggestion-title,
.mapboxgl-ctrl-geocoder--suggestion-address {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
/* Icons */
.mapboxgl-ctrl-geocoder--icon {
  display: inline-block;
  vertical-align: middle;
  speak: none;
  fill: #757575;
  top: 15px;
}
.mapboxgl-ctrl-geocoder--icon-search {
  position: absolute;
  top: 13px;
  left: 12px;
  width: 23px;
  height: 23px;
}
.mapboxgl-ctrl-geocoder--button {
  padding: 0;
  margin: 0;
  border: none;
  cursor: pointer;
  background: #fff;
  line-height: 1;
}
.mapboxgl-ctrl-geocoder--icon-close {
  width: 20px;
  height: 20px;
  margin-top: 8px;
  margin-right: 3px;
}
.mapboxgl-ctrl-geocoder--button:hover .mapboxgl-ctrl-geocoder--icon-close {
  fill: #909090;
}
.mapboxgl-ctrl-geocoder--icon-loading {
  width: 26px;
  height: 26px;
  margin-top: 5px;
  margin-right: 0px;
  -webkit-animation: rotate 0.8s infinite cubic-bezier(0.45, 0.05, 0.55, 0.95);
  animation: rotate 0.8s infinite cubic-bezier(0.45, 0.05, 0.55, 0.95);
}
/* Animation */
@-webkit-keyframes rotate {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes rotate {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
/* Media queries*/
@media screen and (min-width: 640px) {

  .mapboxgl-ctrl-geocoder.mapboxgl-ctrl-geocoder--collapsed {
    width: 36px;
    min-width: 36px;
  }

  .mapboxgl-ctrl-geocoder {
    width: 33.3333%;
    font-size: 15px;
    line-height: 20px;
    max-width: 360px;
  }
  .mapboxgl-ctrl-geocoder .suggestions {
    font-size: 13px;
  }

  .mapboxgl-ctrl-geocoder--icon {
    top: 8px;
  }

  .mapboxgl-ctrl-geocoder--icon-close {
    width: 16px;
    height: 16px;
    margin-top: 3px;
    margin-right: 0;
  }

  .mapboxgl-ctrl-geocoder--icon-search {
    left: 7px;
    width: 20px;
    height: 20px;
  }

  .mapboxgl-ctrl-geocoder--input {
    height: 36px;
    padding: 6px 35px;
  }

  .mapboxgl-ctrl-geocoder--icon-loading {
    width: 26px;
    height: 26px;
    margin-top: -2px;
    margin-right: -5px;
  }

  .mapbox-gl-geocoder--error{
    color:#909090;
    padding: 6px 12px;
    font-size: 16px;
    text-align: center
  }

}
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  border: 0;
}
button,
select,
input,
textarea {
  font-family: inherit;
  border-radius: 0;
}
input[type=text]::-ms-clear {
  display: none;
}
/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
sup {
  vertical-align: super;
}
sub {
  vertical-align: sub;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
* {
  box-sizing: border-box;
}
button {
  margin: 0;
}
html {
  font-size: 100%;
}
body {
  font-weight: 400;
  font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
code {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
}
strong {
  font-weight: 600;
}
@media screen and (-ms-high-contrast: active) {
  svg {
    fill: ButtonText;
  }
}
h1 {
  font-size: 2.625rem;
  font-weight: 300;
  line-height: 1.199;
  letter-spacing: 0;
}
h2 {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
}
h3 {
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0;
}
h4 {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
}
h5 {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.375;
  letter-spacing: 0;
}
h6 {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
}
a {
  color: #0062ff;
}
em {
  font-style: italic;
}
@-webkit-keyframes skeleton {
  0% {
    right: auto;
    left: 0;
    width: 0%;
    opacity: 0.3;
  }
  20% {
    right: auto;
    left: 0;
    width: 100%;
    opacity: 1;
  }
  28% {
    right: 0;
    left: auto;
    width: 100%;
  }
  51% {
    right: 0;
    left: auto;
    width: 0%;
  }
  58% {
    right: 0;
    left: auto;
    width: 0%;
  }
  82% {
    right: 0;
    left: auto;
    width: 100%;
  }
  83% {
    right: auto;
    left: 0;
    width: 100%;
  }
  96% {
    right: auto;
    left: 0;
    width: 0%;
  }
  100% {
    right: auto;
    left: 0;
    width: 0%;
    opacity: 0.3;
  }
}
@keyframes skeleton {
  0% {
    right: auto;
    left: 0;
    width: 0%;
    opacity: 0.3;
  }
  20% {
    right: auto;
    left: 0;
    width: 100%;
    opacity: 1;
  }
  28% {
    right: 0;
    left: auto;
    width: 100%;
  }
  51% {
    right: 0;
    left: auto;
    width: 0%;
  }
  58% {
    right: 0;
    left: auto;
    width: 0%;
  }
  82% {
    right: 0;
    left: auto;
    width: 100%;
  }
  83% {
    right: auto;
    left: 0;
    width: 100%;
  }
  96% {
    right: auto;
    left: 0;
    width: 0%;
  }
  100% {
    right: auto;
    left: 0;
    width: 0%;
    opacity: 0.3;
  }
}
.bx--text-truncate--end {
  display: inline-block;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--text-truncate--front {
  display: inline-block;
  width: 100%;
  overflow: hidden;
  direction: rtl;
  white-space: nowrap;
  text-overflow: ellipsis;
}
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Light Italic"), local("IBMPlexMono-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1gMoW.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Italic"), local("IBMPlexMono-Italic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa1Xdm.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono SemiBold Italic"), local("IBMPlexMono-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1gMoW.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono Light"), local("IBMPlexMono-Light"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwlBFhA.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono"), local("IBMPlexMono"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1i8q0Q.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono SemiBold"), local("IBMPlexMono-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlBFhA.woff) format("woff");
  font-display: auto;
}
/* cyrillic-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Light Italic"), local("IBMPlexMono-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1jcoQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Light Italic"), local("IBMPlexMono-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1hMoQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Light Italic"), local("IBMPlexMono-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1j8oQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Light Italic"), local("IBMPlexMono-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1jsoQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Light Italic"), local("IBMPlexMono-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSflV1gMoQPttozw.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Italic"), local("IBMPlexMono-Italic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa2HdgregdFOFh.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Italic"), local("IBMPlexMono-Italic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa0XdgregdFOFh.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Italic"), local("IBMPlexMono-Italic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa2ndgregdFOFh.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Italic"), local("IBMPlexMono-Italic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa23dgregdFOFh.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono Italic"), local("IBMPlexMono-Italic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6pfjptAgt5VM-kVkqdyU8n1ioa1XdgregdFA.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono SemiBold Italic"), local("IBMPlexMono-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1jcoQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono SemiBold Italic"), local("IBMPlexMono-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1hMoQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono SemiBold Italic"), local("IBMPlexMono-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1j8oQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono SemiBold Italic"), local("IBMPlexMono-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1jsoQPttoz6Pz.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: italic;
  src: local("IBM Plex Mono SemiBold Italic"), local("IBMPlexMono-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6sfjptAgt5VM-kVkqdyU8n1ioSClN1gMoQPttozw.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono Light"), local("IBMPlexMono-Light"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwl1FgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono Light"), local("IBMPlexMono-Light"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwlRFgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono Light"), local("IBMPlexMono-Light"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwl9FgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono Light"), local("IBMPlexMono-Light"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwl5FgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono Light"), local("IBMPlexMono-Light"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3oQIwlBFgsAXHNk.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono"), local("IBMPlexMono"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1iIq131nj-otFQ.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono"), local("IBMPlexMono"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1isq131nj-otFQ.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono"), local("IBMPlexMono"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1iAq131nj-otFQ.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono"), local("IBMPlexMono"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1iEq131nj-otFQ.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono"), local("IBMPlexMono"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F63fjptAgt5VM-kVkqdyU8n1i8q131nj-o.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono SemiBold"), local("IBMPlexMono-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl1FgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono SemiBold"), local("IBMPlexMono-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlRFgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono SemiBold"), local("IBMPlexMono-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl9FgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono SemiBold"), local("IBMPlexMono-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl5FgsAXHNlYzg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Mono";
  font-style: normal;
  src: local("IBM Plex Mono SemiBold"), local("IBMPlexMono-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexmono/v4/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlBFgsAXHNk.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Light Italic"), local("IBMPlexSans-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcdvfo.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Italic"), local("IBMPlexSans-Italic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuF6ZP.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans SemiBold Italic"), local("IBMPlexSans-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcdvfo.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIFscg.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans"), local("IBMPlexSans"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdHeEw.woff) format("woff");
  font-display: auto;
}
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans SemiBold"), local("IBMPlexSans-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIFscg.woff) format("woff");
  font-display: auto;
}
/* cyrillic-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Light Italic"), local("IBMPlexSans-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRce_fuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Light Italic"), local("IBMPlexSans-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRccvfuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Light Italic"), local("IBMPlexSans-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcdffuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Light Italic"), local("IBMPlexSans-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRceffuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Light Italic"), local("IBMPlexSans-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcePfuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Light Italic"), local("IBMPlexSans-LightItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmvIRcdvfuJGl18Q.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Italic"), local("IBMPlexSans-Italic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuGqZJW9XjDlN8.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Italic"), local("IBMPlexSans-Italic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuE6ZJW9XjDlN8.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Italic"), local("IBMPlexSans-Italic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuFKZJW9XjDlN8.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Italic"), local("IBMPlexSans-Italic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuGKZJW9XjDlN8.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Italic"), local("IBMPlexSans-Italic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuGaZJW9XjDlN8.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans Italic"), local("IBMPlexSans-Italic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX-KVElMYYaJe8bpLHnCwDKhdTuF6ZJW9XjDg.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans SemiBold Italic"), local("IBMPlexSans-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJce_fuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans SemiBold Italic"), local("IBMPlexSans-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJccvfuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans SemiBold Italic"), local("IBMPlexSans-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcdffuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans SemiBold Italic"), local("IBMPlexSans-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJceffuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans SemiBold Italic"), local("IBMPlexSans-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcePfuJGl18QRY.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: italic;
  src: local("IBM Plex Sans SemiBold Italic"), local("IBMPlexSans-SemiBoldItalic"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX7KVElMYYaJe8bpLHnCwDKhdTmyIJcdvfuJGl18Q.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIxsdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIVsdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIJsdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AI5sdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AI9sdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 300;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans Light"), local("IBMPlexSans-Light"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjXr8AIFsdP3pBms.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans"), local("IBMPlexSans"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdzeFaxOedfTDw.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans"), local("IBMPlexSans"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdXeFaxOedfTDw.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans"), local("IBMPlexSans"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdLeFaxOedfTDw.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans"), local("IBMPlexSans"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhd7eFaxOedfTDw.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans"), local("IBMPlexSans"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhd_eFaxOedfTDw.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 400;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans"), local("IBMPlexSans"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYXgKVElMYYaJe8bpLHnCwDKhdHeFaxOedc.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans SemiBold"), local("IBMPlexSans-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIxsdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans SemiBold"), local("IBMPlexSans-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIVsdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans SemiBold"), local("IBMPlexSans-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIJsdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans SemiBold"), local("IBMPlexSans-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AI5sdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans SemiBold"), local("IBMPlexSans-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AI9sdP3pBmtF8A.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-weight: 600;
  font-family: "IBM Plex Sans";
  font-style: normal;
  src: local("IBM Plex Sans SemiBold"), local("IBMPlexSans-SemiBold"), url(https://fonts.gstatic.com/s/ibmplexsans/v6/zYX9KVElMYYaJe8bpLHnCwDKjQ76AIFsdP3pBms.woff2) format("woff2");
  font-display: auto;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.bx--assistive-text,
.bx--visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--body {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  color: #161616;
  line-height: 1;
  background-color: #f4f4f4;
}
body {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  color: #161616;
  line-height: 1;
  background-color: #f4f4f4;
}
.bx--grid {
  margin-right: auto;
  margin-left: auto;
  max-width: 99rem;
  padding-right: 1rem;
  padding-left: 1rem;
}
@media (min-width: 42rem) {
  .bx--grid {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
@media (min-width: 99rem) {
  .bx--grid {
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}
@media (min-width: 99rem) {
  .bx--grid--full-width {
    max-width: 100%;
  }
}
.bx--row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
}
.bx--row-padding [class*=bx--col],
.bx--col-padding {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.bx--grid--condensed [class*=bx--col] {
  padding-top: 0.03125rem;
  padding-bottom: 0.03125rem;
}
.bx--col {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col, .bx--grid--condensed .bx--col {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col, .bx--grid--narrow .bx--col {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-sm-0 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-sm-0, .bx--grid--condensed .bx--col-sm-0 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-sm-0, .bx--grid--narrow .bx--col-sm-0 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-sm-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-sm-1, .bx--grid--condensed .bx--col-sm-1 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-sm-1, .bx--grid--narrow .bx--col-sm-1 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-sm-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-sm-2, .bx--grid--condensed .bx--col-sm-2 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-sm-2, .bx--grid--narrow .bx--col-sm-2 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-sm-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-sm-3, .bx--grid--condensed .bx--col-sm-3 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-sm-3, .bx--grid--narrow .bx--col-sm-3 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-sm-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-sm-4, .bx--grid--condensed .bx--col-sm-4 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-sm-4, .bx--grid--narrow .bx--col-sm-4 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-sm,
.bx--col-sm--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-sm, .bx--grid--condensed .bx--col-sm,
.bx--row--condensed .bx--col-sm--auto,
.bx--grid--condensed .bx--col-sm--auto {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-sm, .bx--grid--narrow .bx--col-sm,
.bx--row--narrow .bx--col-sm--auto,
.bx--grid--narrow .bx--col-sm--auto {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col,
.bx--col-sm {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}
.bx--col--auto,
.bx--col-sm--auto {
  flex: 1 0 0%;
  width: auto;
  max-width: 100%;
}
.bx--col-sm-0 {
  display: none;
}
.bx--col-sm-1 {
  display: block;
  flex: 0 0 25%;
  max-width: 25%;
}
.bx--col-sm-2 {
  display: block;
  flex: 0 0 50%;
  max-width: 50%;
}
.bx--col-sm-3 {
  display: block;
  flex: 0 0 75%;
  max-width: 75%;
}
.bx--col-sm-4 {
  display: block;
  flex: 0 0 100%;
  max-width: 100%;
}
.bx--offset-sm-0 {
  margin-left: 0;
}
.bx--offset-sm-1 {
  margin-left: 25%;
}
.bx--offset-sm-2 {
  margin-left: 50%;
}
.bx--offset-sm-3 {
  margin-left: 75%;
}
.bx--col-md-0 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-0, .bx--grid--condensed .bx--col-md-0 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-0, .bx--grid--narrow .bx--col-md-0 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-1, .bx--grid--condensed .bx--col-md-1 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-1, .bx--grid--narrow .bx--col-md-1 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-2, .bx--grid--condensed .bx--col-md-2 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-2, .bx--grid--narrow .bx--col-md-2 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-3, .bx--grid--condensed .bx--col-md-3 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-3, .bx--grid--narrow .bx--col-md-3 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-4, .bx--grid--condensed .bx--col-md-4 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-4, .bx--grid--narrow .bx--col-md-4 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-5, .bx--grid--condensed .bx--col-md-5 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-5, .bx--grid--narrow .bx--col-md-5 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-6, .bx--grid--condensed .bx--col-md-6 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-6, .bx--grid--narrow .bx--col-md-6 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-7, .bx--grid--condensed .bx--col-md-7 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-7, .bx--grid--narrow .bx--col-md-7 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md-8, .bx--grid--condensed .bx--col-md-8 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md-8, .bx--grid--narrow .bx--col-md-8 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-md,
.bx--col-md--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-md, .bx--grid--condensed .bx--col-md,
.bx--row--condensed .bx--col-md--auto,
.bx--grid--condensed .bx--col-md--auto {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-md, .bx--grid--narrow .bx--col-md,
.bx--row--narrow .bx--col-md--auto,
.bx--grid--narrow .bx--col-md--auto {
  padding-right: 1rem;
  padding-left: 0;
}
@media (min-width: 42rem) {
  .bx--col,
.bx--col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .bx--col--auto,
.bx--col-md--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%;
  }

  .bx--col-md-0 {
    display: none;
  }

  .bx--col-md-1 {
    display: block;
    flex: 0 0 12.5%;
    max-width: 12.5%;
  }

  .bx--col-md-2 {
    display: block;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .bx--col-md-3 {
    display: block;
    flex: 0 0 37.5%;
    max-width: 37.5%;
  }

  .bx--col-md-4 {
    display: block;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .bx--col-md-5 {
    display: block;
    flex: 0 0 62.5%;
    max-width: 62.5%;
  }

  .bx--col-md-6 {
    display: block;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .bx--col-md-7 {
    display: block;
    flex: 0 0 87.5%;
    max-width: 87.5%;
  }

  .bx--col-md-8 {
    display: block;
    flex: 0 0 100%;
    max-width: 100%;
  }

  .bx--offset-md-0 {
    margin-left: 0;
  }

  .bx--offset-md-1 {
    margin-left: 12.5%;
  }

  .bx--offset-md-2 {
    margin-left: 25%;
  }

  .bx--offset-md-3 {
    margin-left: 37.5%;
  }

  .bx--offset-md-4 {
    margin-left: 50%;
  }

  .bx--offset-md-5 {
    margin-left: 62.5%;
  }

  .bx--offset-md-6 {
    margin-left: 75%;
  }

  .bx--offset-md-7 {
    margin-left: 87.5%;
  }
}
.bx--col-lg-0 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-0, .bx--grid--condensed .bx--col-lg-0 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-0, .bx--grid--narrow .bx--col-lg-0 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-1, .bx--grid--condensed .bx--col-lg-1 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-1, .bx--grid--narrow .bx--col-lg-1 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-2, .bx--grid--condensed .bx--col-lg-2 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-2, .bx--grid--narrow .bx--col-lg-2 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-3, .bx--grid--condensed .bx--col-lg-3 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-3, .bx--grid--narrow .bx--col-lg-3 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-4, .bx--grid--condensed .bx--col-lg-4 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-4, .bx--grid--narrow .bx--col-lg-4 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-5, .bx--grid--condensed .bx--col-lg-5 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-5, .bx--grid--narrow .bx--col-lg-5 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-6, .bx--grid--condensed .bx--col-lg-6 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-6, .bx--grid--narrow .bx--col-lg-6 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-7, .bx--grid--condensed .bx--col-lg-7 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-7, .bx--grid--narrow .bx--col-lg-7 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-8, .bx--grid--condensed .bx--col-lg-8 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-8, .bx--grid--narrow .bx--col-lg-8 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-9 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-9, .bx--grid--condensed .bx--col-lg-9 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-9, .bx--grid--narrow .bx--col-lg-9 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-10 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-10, .bx--grid--condensed .bx--col-lg-10 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-10, .bx--grid--narrow .bx--col-lg-10 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-11 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-11, .bx--grid--condensed .bx--col-lg-11 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-11, .bx--grid--narrow .bx--col-lg-11 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg-12 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg-12, .bx--grid--condensed .bx--col-lg-12 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg-12, .bx--grid--narrow .bx--col-lg-12 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-lg,
.bx--col-lg--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-lg, .bx--grid--condensed .bx--col-lg,
.bx--row--condensed .bx--col-lg--auto,
.bx--grid--condensed .bx--col-lg--auto {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-lg, .bx--grid--narrow .bx--col-lg,
.bx--row--narrow .bx--col-lg--auto,
.bx--grid--narrow .bx--col-lg--auto {
  padding-right: 1rem;
  padding-left: 0;
}
@media (min-width: 66rem) {
  .bx--col,
.bx--col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .bx--col--auto,
.bx--col-lg--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%;
  }

  .bx--col-lg-0 {
    display: none;
  }

  .bx--col-lg-1 {
    display: block;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .bx--col-lg-2 {
    display: block;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .bx--col-lg-3 {
    display: block;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .bx--col-lg-4 {
    display: block;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .bx--col-lg-5 {
    display: block;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .bx--col-lg-6 {
    display: block;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .bx--col-lg-7 {
    display: block;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .bx--col-lg-8 {
    display: block;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .bx--col-lg-9 {
    display: block;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .bx--col-lg-10 {
    display: block;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .bx--col-lg-11 {
    display: block;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .bx--col-lg-12 {
    display: block;
    flex: 0 0 100%;
    max-width: 100%;
  }

  .bx--offset-lg-0 {
    margin-left: 0;
  }

  .bx--offset-lg-1 {
    margin-left: 8.3333333333%;
  }

  .bx--offset-lg-2 {
    margin-left: 16.6666666667%;
  }

  .bx--offset-lg-3 {
    margin-left: 25%;
  }

  .bx--offset-lg-4 {
    margin-left: 33.3333333333%;
  }

  .bx--offset-lg-5 {
    margin-left: 41.6666666667%;
  }

  .bx--offset-lg-6 {
    margin-left: 50%;
  }

  .bx--offset-lg-7 {
    margin-left: 58.3333333333%;
  }

  .bx--offset-lg-8 {
    margin-left: 66.6666666667%;
  }

  .bx--offset-lg-9 {
    margin-left: 75%;
  }

  .bx--offset-lg-10 {
    margin-left: 83.3333333333%;
  }

  .bx--offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
.bx--col-xlg-0 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-0, .bx--grid--condensed .bx--col-xlg-0 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-0, .bx--grid--narrow .bx--col-xlg-0 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-1, .bx--grid--condensed .bx--col-xlg-1 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-1, .bx--grid--narrow .bx--col-xlg-1 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-2, .bx--grid--condensed .bx--col-xlg-2 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-2, .bx--grid--narrow .bx--col-xlg-2 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-3, .bx--grid--condensed .bx--col-xlg-3 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-3, .bx--grid--narrow .bx--col-xlg-3 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-4, .bx--grid--condensed .bx--col-xlg-4 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-4, .bx--grid--narrow .bx--col-xlg-4 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-5, .bx--grid--condensed .bx--col-xlg-5 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-5, .bx--grid--narrow .bx--col-xlg-5 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-6, .bx--grid--condensed .bx--col-xlg-6 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-6, .bx--grid--narrow .bx--col-xlg-6 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-7, .bx--grid--condensed .bx--col-xlg-7 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-7, .bx--grid--narrow .bx--col-xlg-7 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-8, .bx--grid--condensed .bx--col-xlg-8 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-8, .bx--grid--narrow .bx--col-xlg-8 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-9 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-9, .bx--grid--condensed .bx--col-xlg-9 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-9, .bx--grid--narrow .bx--col-xlg-9 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-10 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-10, .bx--grid--condensed .bx--col-xlg-10 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-10, .bx--grid--narrow .bx--col-xlg-10 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-11 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-11, .bx--grid--condensed .bx--col-xlg-11 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-11, .bx--grid--narrow .bx--col-xlg-11 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg-12 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg-12, .bx--grid--condensed .bx--col-xlg-12 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg-12, .bx--grid--narrow .bx--col-xlg-12 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-xlg,
.bx--col-xlg--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-xlg, .bx--grid--condensed .bx--col-xlg,
.bx--row--condensed .bx--col-xlg--auto,
.bx--grid--condensed .bx--col-xlg--auto {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-xlg, .bx--grid--narrow .bx--col-xlg,
.bx--row--narrow .bx--col-xlg--auto,
.bx--grid--narrow .bx--col-xlg--auto {
  padding-right: 1rem;
  padding-left: 0;
}
@media (min-width: 82rem) {
  .bx--col,
.bx--col-xlg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .bx--col--auto,
.bx--col-xlg--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%;
  }

  .bx--col-xlg-0 {
    display: none;
  }

  .bx--col-xlg-1 {
    display: block;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .bx--col-xlg-2 {
    display: block;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .bx--col-xlg-3 {
    display: block;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .bx--col-xlg-4 {
    display: block;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .bx--col-xlg-5 {
    display: block;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .bx--col-xlg-6 {
    display: block;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .bx--col-xlg-7 {
    display: block;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .bx--col-xlg-8 {
    display: block;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .bx--col-xlg-9 {
    display: block;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .bx--col-xlg-10 {
    display: block;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .bx--col-xlg-11 {
    display: block;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .bx--col-xlg-12 {
    display: block;
    flex: 0 0 100%;
    max-width: 100%;
  }

  .bx--offset-xlg-0 {
    margin-left: 0;
  }

  .bx--offset-xlg-1 {
    margin-left: 8.3333333333%;
  }

  .bx--offset-xlg-2 {
    margin-left: 16.6666666667%;
  }

  .bx--offset-xlg-3 {
    margin-left: 25%;
  }

  .bx--offset-xlg-4 {
    margin-left: 33.3333333333%;
  }

  .bx--offset-xlg-5 {
    margin-left: 41.6666666667%;
  }

  .bx--offset-xlg-6 {
    margin-left: 50%;
  }

  .bx--offset-xlg-7 {
    margin-left: 58.3333333333%;
  }

  .bx--offset-xlg-8 {
    margin-left: 66.6666666667%;
  }

  .bx--offset-xlg-9 {
    margin-left: 75%;
  }

  .bx--offset-xlg-10 {
    margin-left: 83.3333333333%;
  }

  .bx--offset-xlg-11 {
    margin-left: 91.6666666667%;
  }
}
.bx--col-max-0 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-0, .bx--grid--condensed .bx--col-max-0 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-0, .bx--grid--narrow .bx--col-max-0 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-1 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-1, .bx--grid--condensed .bx--col-max-1 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-1, .bx--grid--narrow .bx--col-max-1 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-2 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-2, .bx--grid--condensed .bx--col-max-2 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-2, .bx--grid--narrow .bx--col-max-2 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-3 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-3, .bx--grid--condensed .bx--col-max-3 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-3, .bx--grid--narrow .bx--col-max-3 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-4 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-4, .bx--grid--condensed .bx--col-max-4 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-4, .bx--grid--narrow .bx--col-max-4 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-5 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-5, .bx--grid--condensed .bx--col-max-5 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-5, .bx--grid--narrow .bx--col-max-5 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-6 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-6, .bx--grid--condensed .bx--col-max-6 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-6, .bx--grid--narrow .bx--col-max-6 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-7 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-7, .bx--grid--condensed .bx--col-max-7 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-7, .bx--grid--narrow .bx--col-max-7 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-8 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-8, .bx--grid--condensed .bx--col-max-8 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-8, .bx--grid--narrow .bx--col-max-8 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-9 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-9, .bx--grid--condensed .bx--col-max-9 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-9, .bx--grid--narrow .bx--col-max-9 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-10 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-10, .bx--grid--condensed .bx--col-max-10 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-10, .bx--grid--narrow .bx--col-max-10 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-11 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-11, .bx--grid--condensed .bx--col-max-11 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-11, .bx--grid--narrow .bx--col-max-11 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max-12 {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max-12, .bx--grid--condensed .bx--col-max-12 {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max-12, .bx--grid--narrow .bx--col-max-12 {
  padding-right: 1rem;
  padding-left: 0;
}
.bx--col-max,
.bx--col-max--auto {
  width: 100%;
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--row--condensed .bx--col-max, .bx--grid--condensed .bx--col-max,
.bx--row--condensed .bx--col-max--auto,
.bx--grid--condensed .bx--col-max--auto {
  padding-right: 0.03125rem;
  padding-left: 0.03125rem;
}
.bx--row--narrow .bx--col-max, .bx--grid--narrow .bx--col-max,
.bx--row--narrow .bx--col-max--auto,
.bx--grid--narrow .bx--col-max--auto {
  padding-right: 1rem;
  padding-left: 0;
}
@media (min-width: 99rem) {
  .bx--col,
.bx--col-max {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .bx--col--auto,
.bx--col-max--auto {
    flex: 1 0 0%;
    width: auto;
    max-width: 100%;
  }

  .bx--col-max-0 {
    display: none;
  }

  .bx--col-max-1 {
    display: block;
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .bx--col-max-2 {
    display: block;
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .bx--col-max-3 {
    display: block;
    flex: 0 0 25%;
    max-width: 25%;
  }

  .bx--col-max-4 {
    display: block;
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .bx--col-max-5 {
    display: block;
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .bx--col-max-6 {
    display: block;
    flex: 0 0 50%;
    max-width: 50%;
  }

  .bx--col-max-7 {
    display: block;
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .bx--col-max-8 {
    display: block;
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .bx--col-max-9 {
    display: block;
    flex: 0 0 75%;
    max-width: 75%;
  }

  .bx--col-max-10 {
    display: block;
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .bx--col-max-11 {
    display: block;
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .bx--col-max-12 {
    display: block;
    flex: 0 0 100%;
    max-width: 100%;
  }

  .bx--offset-max-0 {
    margin-left: 0;
  }

  .bx--offset-max-1 {
    margin-left: 8.3333333333%;
  }

  .bx--offset-max-2 {
    margin-left: 16.6666666667%;
  }

  .bx--offset-max-3 {
    margin-left: 25%;
  }

  .bx--offset-max-4 {
    margin-left: 33.3333333333%;
  }

  .bx--offset-max-5 {
    margin-left: 41.6666666667%;
  }

  .bx--offset-max-6 {
    margin-left: 50%;
  }

  .bx--offset-max-7 {
    margin-left: 58.3333333333%;
  }

  .bx--offset-max-8 {
    margin-left: 66.6666666667%;
  }

  .bx--offset-max-9 {
    margin-left: 75%;
  }

  .bx--offset-max-10 {
    margin-left: 83.3333333333%;
  }

  .bx--offset-max-11 {
    margin-left: 91.6666666667%;
  }
}
.bx--no-gutter,
.bx--row.bx--no-gutter [class*=bx--col] {
  padding-right: 0;
  padding-left: 0;
}
.bx--no-gutter--start,
.bx--row.bx--no-gutter--start [class*=bx--col] {
  padding-left: 0;
}
.bx--no-gutter--end,
.bx--row.bx--no-gutter--end [class*=bx--col] {
  padding-right: 0;
}
.bx--no-gutter--left,
.bx--row.bx--no-gutter--left [class*=bx--col] {
  padding-left: 0;
}
.bx--no-gutter--right,
.bx--row.bx--no-gutter--right [class*=bx--col] {
  padding-right: 0;
}
.bx--hang--start {
  padding-left: 1rem;
}
.bx--hang--end {
  padding-right: 1rem;
}
.bx--hang--left {
  padding-left: 1rem;
}
.bx--hang--right {
  padding-right: 1rem;
}
.bx--aspect-ratio {
  position: relative;
}
.bx--aspect-ratio::before {
  float: left;
  width: 1px;
  height: 0;
  margin-left: -1px;
  content: "";
}
.bx--aspect-ratio::after {
  display: table;
  clear: both;
  content: "";
}
.bx--aspect-ratio--16x9::before {
  padding-top: 56.25%;
}
.bx--aspect-ratio--9x16::before {
  padding-top: 177.7777777778%;
}
.bx--aspect-ratio--2x1::before {
  padding-top: 50%;
}
.bx--aspect-ratio--1x2::before {
  padding-top: 200%;
}
.bx--aspect-ratio--4x3::before {
  padding-top: 75%;
}
.bx--aspect-ratio--3x4::before {
  padding-top: 133.3333333333%;
}
.bx--aspect-ratio--1x1::before {
  padding-top: 100%;
}
.bx--aspect-ratio--object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.bx--btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  max-width: 20rem;
  min-height: 3rem;
  margin: 0;
  padding: calc(0.875rem - 3px) 63px calc(0.875rem - 3px) 15px;
  text-align: left;
  text-decoration: none;
  vertical-align: top;
  border-radius: 0;
  outline: none;
  cursor: pointer;
  transition: background 70ms cubic-bezier(0, 0, 0.38, 0.9), box-shadow 70ms cubic-bezier(0, 0, 0.38, 0.9), border-color 70ms cubic-bezier(0, 0, 0.38, 0.9), outline 70ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--btn:disabled, .bx--btn:hover:disabled, .bx--btn:focus:disabled, .bx--btn.bx--btn--disabled, .bx--btn.bx--btn--disabled:hover, .bx--btn.bx--btn--disabled:focus {
  color: #8d8d8d;
  background: #c6c6c6;
  border-color: #c6c6c6;
  box-shadow: none;
  cursor: not-allowed;
}
.bx--btn .bx--btn__icon {
  position: absolute;
  right: 1rem;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}
.bx--btn::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.bx--btn--primary {
  color: #ffffff;
  background-color: #0f62fe;
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
}
.bx--btn--primary:hover {
  background-color: #0353e9;
}
.bx--btn--primary:focus {
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 1px #0f62fe, inset 0 0 0 2px #f4f4f4;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--primary:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn--primary:active {
  background-color: #002d9c;
}
.bx--btn--primary .bx--btn__icon,
.bx--btn--primary .bx--btn__icon path {
  fill: currentColor;
}
.bx--btn--primary:hover {
  color: #ffffff;
}
.bx--btn--secondary {
  color: #ffffff;
  background-color: #393939;
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
}
.bx--btn--secondary:hover {
  background-color: #4c4c4c;
}
.bx--btn--secondary:focus {
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 1px #0f62fe, inset 0 0 0 2px #f4f4f4;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--secondary:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn--secondary:active {
  background-color: #6f6f6f;
}
.bx--btn--secondary .bx--btn__icon,
.bx--btn--secondary .bx--btn__icon path {
  fill: currentColor;
}
.bx--btn--secondary:hover, .bx--btn--secondary:focus {
  color: #ffffff;
}
.bx--btn--tertiary {
  color: #0f62fe;
  background-color: transparent;
  border-color: #0f62fe;
  border-style: solid;
  border-width: 1px;
}
.bx--btn--tertiary:hover {
  background-color: #0353e9;
}
.bx--btn--tertiary:focus {
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 1px #0f62fe, inset 0 0 0 2px #f4f4f4;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--tertiary:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn--tertiary:active {
  background-color: #002d9c;
}
.bx--btn--tertiary .bx--btn__icon,
.bx--btn--tertiary .bx--btn__icon path {
  fill: currentColor;
}
.bx--btn--tertiary:hover {
  color: #ffffff;
}
.bx--btn--tertiary:focus {
  color: #ffffff;
  background-color: #0f62fe;
}
.bx--btn--tertiary:active {
  background-color: #002d9c;
  border-color: transparent;
}
.bx--btn--tertiary:disabled, .bx--btn--tertiary:hover:disabled, .bx--btn--tertiary:focus:disabled, .bx--btn--tertiary.bx--btn--disabled, .bx--btn--tertiary.bx--btn--disabled:hover, .bx--btn--tertiary.bx--btn--disabled:focus {
  color: #8d8d8d;
  background: transparent;
  outline: none;
}
.bx--btn--ghost {
  color: #0f62fe;
  background-color: transparent;
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
  padding: calc(0.875rem - 3px) 16px;
}
.bx--btn--ghost:hover {
  background-color: #e5e5e5;
}
.bx--btn--ghost:focus {
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 1px #0f62fe, inset 0 0 0 2px #f4f4f4;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--ghost:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn--ghost:active {
  background-color: #c6c6c6;
}
.bx--btn--ghost .bx--btn__icon,
.bx--btn--ghost .bx--btn__icon path {
  fill: currentColor;
}
.bx--btn--ghost .bx--btn__icon {
  position: static;
  margin-left: 0.5rem;
}
.bx--btn--ghost:hover, .bx--btn--ghost:active {
  color: #0043ce;
}
.bx--btn--ghost:active {
  background-color: #c6c6c6;
}
.bx--btn--ghost:disabled, .bx--btn--ghost:hover:disabled, .bx--btn--ghost:focus:disabled, .bx--btn--ghost.bx--btn--disabled, .bx--btn--ghost.bx--btn--disabled:hover, .bx--btn--ghost.bx--btn--disabled:focus {
  color: #8d8d8d;
  background: transparent;
  border-color: transparent;
  outline: none;
}
.bx--btn--ghost.bx--btn--sm {
  padding: calc(0.375rem - 3px) 16px;
}
.bx--btn--ghost.bx--btn--field {
  padding: calc(0.675rem - 3px) 16px;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus {
  outline: 1px solid #0f62fe;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus {
  outline: 1px solid transparent;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--a11y::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--a11y::after {
  transition: none;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger::after {
  content: attr(aria-label);
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--a11y::after {
  content: none;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--visible::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--visible::after, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover::after, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus::after {
  opacity: 1;
}
@-webkit-keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--visible .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--visible + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--visible .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--visible + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover.bx--tooltip--a11y::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus .bx--assistive-text,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus + .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--hidden .bx--assistive-text, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger svg, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:hover svg, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus svg {
  fill: currentColor;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--btn--disabled.bx--tooltip--a11y::before, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--btn--disabled.bx--tooltip--a11y::after, .bx--btn.bx--btn--icon-only.bx--tooltip__trigger.bx--btn--disabled .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  opacity: 0;
  clip: rect(0, 0, 0, 0);
}
.bx--btn.bx--btn--icon-only.bx--btn--ghost:focus svg,
.bx--btn.bx--btn--icon-only.bx--btn--ghost:hover svg {
  fill: #161616;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus {
  border-color: #0f62fe;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:active:not([disabled]) {
  border-color: transparent;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger:focus svg {
  outline-color: transparent;
}
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger[disabled]:hover,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger[disabled]:focus,
.bx--btn.bx--btn--icon-only.bx--tooltip__trigger[disabled]:active {
  cursor: not-allowed;
  fill: #8d8d8d;
}
.bx--btn--icon-only--top {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--btn--icon-only--top:focus {
  outline: 1px solid #0f62fe;
}
.bx--btn--icon-only--top:focus {
  outline: 1px solid transparent;
}
.bx--btn--icon-only--top:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--btn--icon-only--top.bx--tooltip--a11y::before, .bx--btn--icon-only--top.bx--tooltip--a11y::after {
  transition: none;
}
.bx--btn--icon-only--top::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--btn--icon-only--top::after {
  content: attr(aria-label);
}
.bx--btn--icon-only--top.bx--tooltip--a11y::after {
  content: none;
}
.bx--btn--icon-only--top.bx--tooltip--visible::before, .bx--btn--icon-only--top.bx--tooltip--visible::after, .bx--btn--icon-only--top:hover::before, .bx--btn--icon-only--top:hover::after, .bx--btn--icon-only--top:focus::before, .bx--btn--icon-only--top:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--btn--icon-only--top.bx--tooltip--visible .bx--assistive-text,
.bx--btn--icon-only--top.bx--tooltip--visible + .bx--assistive-text, .bx--btn--icon-only--top:hover .bx--assistive-text,
.bx--btn--icon-only--top:hover + .bx--assistive-text, .bx--btn--icon-only--top:focus .bx--assistive-text,
.bx--btn--icon-only--top:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--btn--icon-only--top.bx--tooltip--visible .bx--assistive-text,
.bx--btn--icon-only--top.bx--tooltip--visible + .bx--assistive-text, .bx--btn--icon-only--top.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--btn--icon-only--top:hover .bx--assistive-text,
.bx--btn--icon-only--top:hover + .bx--assistive-text, .bx--btn--icon-only--top:hover.bx--tooltip--a11y::before, .bx--btn--icon-only--top:focus .bx--assistive-text,
.bx--btn--icon-only--top:focus + .bx--assistive-text, .bx--btn--icon-only--top:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--btn--icon-only--top.bx--tooltip--hidden .bx--assistive-text, .bx--btn--icon-only--top.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--btn--icon-only--top.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--btn--icon-only--top::before, .bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--btn--icon-only--top::before {
  top: -0.5rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--btn--icon-only--top::after,
.bx--btn--icon-only--top .bx--assistive-text,
.bx--btn--icon-only--top + .bx--assistive-text {
  top: -0.8125rem;
  left: 50%;
  transform: translate(-50%, -100%);
}
.bx--btn--icon-only--bottom::before, .bx--btn--icon-only--bottom::after,
.bx--btn--icon-only--bottom .bx--assistive-text,
.bx--btn--icon-only--bottom + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--btn--icon-only--bottom::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--btn--icon-only--bottom::after,
.bx--btn--icon-only--bottom .bx--assistive-text,
.bx--btn--icon-only--bottom + .bx--assistive-text {
  bottom: -0.8125rem;
  transform: translate(-50%, 100%);
}
.bx--btn--icon-only {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}
.bx--btn--icon-only .bx--btn__icon {
  position: static;
}
.bx--btn--icon-only.bx--btn--ghost .bx--btn__icon {
  margin: 0;
}
.bx--btn path[data-icon-path=inner-path] {
  fill: none;
}
.bx--btn.bx--btn--icon-only.bx--btn--ghost .bx--btn__icon,
.bx--btn.bx--btn--icon-only.bx--btn--ghost:hover .bx--btn__icon {
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn.bx--btn--icon-only.bx--btn--ghost .bx--btn__icon path,
.bx--btn.bx--btn--icon-only.bx--btn--ghost:hover .bx--btn__icon path {
    fill: ButtonText;
  }
}
.bx--btn--ghost.bx--btn--icon-only .bx--btn__icon path,
.bx--btn--ghost.bx--btn--icon-only .bx--btn__icon {
  fill: #161616;
}
.bx--btn--ghost.bx--btn--icon-only[disabled] .bx--btn__icon path,
.bx--btn--ghost.bx--btn--icon-only[disabled] .bx--btn__icon,
.bx--btn.bx--btn--icon-only.bx--btn--ghost[disabled]:hover .bx--btn__icon {
  fill: #8d8d8d;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--ghost.bx--btn--icon-only[disabled] .bx--btn__icon path path,
.bx--btn--ghost.bx--btn--icon-only[disabled] .bx--btn__icon path,
.bx--btn.bx--btn--icon-only.bx--btn--ghost[disabled]:hover .bx--btn__icon path {
    fill: GrayText;
  }
}
.bx--btn--ghost.bx--btn--icon-only[disabled] {
  cursor: not-allowed;
}
.bx--btn--field.bx--btn--icon-only {
  padding-right: 0.6875rem;
  padding-left: 0.6875rem;
}
.bx--btn--sm.bx--btn--icon-only {
  padding-right: 0.4375rem;
  padding-left: 0.4375rem;
}
.bx--btn--danger {
  color: #ffffff;
  background-color: #da1e28;
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
}
.bx--btn--danger:hover {
  background-color: #b81921;
}
.bx--btn--danger:focus {
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 1px #0f62fe, inset 0 0 0 2px #f4f4f4;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--danger:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn--danger:active {
  background-color: #750e13;
}
.bx--btn--danger .bx--btn__icon,
.bx--btn--danger .bx--btn__icon path {
  fill: currentColor;
}
.bx--btn--danger:hover {
  color: #ffffff;
}
.bx--btn--danger-tertiary, .bx--btn--danger--tertiary {
  color: #da1e28;
  background-color: transparent;
  border-color: #da1e28;
  border-style: solid;
  border-width: 1px;
}
.bx--btn--danger-tertiary:hover, .bx--btn--danger--tertiary:hover {
  background-color: #b81921;
}
.bx--btn--danger-tertiary:focus, .bx--btn--danger--tertiary:focus {
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 1px #0f62fe, inset 0 0 0 2px #f4f4f4;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--danger-tertiary:focus, .bx--btn--danger--tertiary:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn--danger-tertiary:active, .bx--btn--danger--tertiary:active {
  background-color: #750e13;
}
.bx--btn--danger-tertiary .bx--btn__icon,
.bx--btn--danger-tertiary .bx--btn__icon path, .bx--btn--danger--tertiary .bx--btn__icon,
.bx--btn--danger--tertiary .bx--btn__icon path {
  fill: currentColor;
}
.bx--btn--danger-tertiary:hover, .bx--btn--danger--tertiary:hover {
  color: #ffffff;
  border-color: #b81921;
}
.bx--btn--danger-tertiary:focus, .bx--btn--danger--tertiary:focus {
  color: #ffffff;
  background-color: #da1e28;
}
.bx--btn--danger-tertiary:active, .bx--btn--danger--tertiary:active {
  color: #ffffff;
  border-color: #750e13;
}
.bx--btn--danger-ghost, .bx--btn--danger--ghost {
  color: #da1e28;
  background-color: transparent;
  border-color: transparent;
  border-style: solid;
  border-width: 1px;
  padding: calc(0.875rem - 3px) 16px;
}
.bx--btn--danger-ghost:hover, .bx--btn--danger--ghost:hover {
  background-color: #b81921;
}
.bx--btn--danger-ghost:focus, .bx--btn--danger--ghost:focus {
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 1px #0f62fe, inset 0 0 0 2px #f4f4f4;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--btn--danger-ghost:focus, .bx--btn--danger--ghost:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--btn--danger-ghost:active, .bx--btn--danger--ghost:active {
  background-color: #750e13;
}
.bx--btn--danger-ghost .bx--btn__icon,
.bx--btn--danger-ghost .bx--btn__icon path, .bx--btn--danger--ghost .bx--btn__icon,
.bx--btn--danger--ghost .bx--btn__icon path {
  fill: currentColor;
}
.bx--btn--danger-ghost .bx--btn__icon, .bx--btn--danger--ghost .bx--btn__icon {
  position: static;
  margin-left: 0.5rem;
}
.bx--btn--danger-ghost:hover, .bx--btn--danger-ghost:active, .bx--btn--danger--ghost:hover, .bx--btn--danger--ghost:active {
  color: #ffffff;
}
.bx--btn--danger-ghost:disabled, .bx--btn--danger-ghost:hover:disabled, .bx--btn--danger-ghost:focus:disabled, .bx--btn--danger-ghost.bx--btn--disabled, .bx--btn--danger-ghost.bx--btn--disabled:hover, .bx--btn--danger-ghost.bx--btn--disabled:focus, .bx--btn--danger--ghost:disabled, .bx--btn--danger--ghost:hover:disabled, .bx--btn--danger--ghost:focus:disabled, .bx--btn--danger--ghost.bx--btn--disabled, .bx--btn--danger--ghost.bx--btn--disabled:hover, .bx--btn--danger--ghost.bx--btn--disabled:focus {
  color: #c6c6c6;
  background: transparent;
  border-color: transparent;
  outline: none;
}
.bx--btn--danger-ghost.bx--btn--sm, .bx--btn--danger--ghost.bx--btn--sm {
  padding: calc(0.375rem - 3px) 16px;
}
.bx--btn--danger-ghost.bx--btn--field, .bx--btn--danger--ghost.bx--btn--field {
  padding: calc(0.675rem - 3px) 16px;
}
.bx--btn--sm {
  min-height: 2rem;
  padding: calc(0.375rem - 3px) 60px calc(0.375rem - 3px) 12px;
}
.bx--btn--xl:not(.bx--btn--icon-only) {
  align-items: baseline;
  padding-top: 1rem;
  padding-right: 4rem;
  padding-left: 1rem;
  min-height: 5rem;
}
.bx--btn--lg:not(.bx--btn--icon-only) {
  align-items: baseline;
  padding-top: 1rem;
  padding-right: 4rem;
  padding-left: 1rem;
  min-height: 4rem;
}
.bx--btn--field {
  min-height: 2.5rem;
  padding: calc(0.675rem - 3px) 60px calc(0.675rem - 3px) 12px;
}
.bx--btn.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 9.375rem;
}
.bx--btn.bx--skeleton:hover, .bx--btn.bx--skeleton:focus, .bx--btn.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--btn.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--btn.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--btn-set {
  display: flex;
}
.bx--btn-set--stacked {
  flex-direction: column;
}
.bx--btn-set .bx--btn {
  width: 100%;
  max-width: 12.25rem;
}
.bx--btn-set .bx--btn:not(:focus) {
  box-shadow: -0.0625rem 0 0 0 #e0e0e0;
}
.bx--btn-set .bx--btn:first-of-type:not(:focus) {
  box-shadow: inherit;
}
.bx--btn-set .bx--btn:focus + .bx--btn {
  box-shadow: inherit;
}
.bx--btn-set--stacked .bx--btn:not(:focus) {
  box-shadow: 0 -0.0625rem 0 0 #e0e0e0;
}
.bx--btn-set--stacked .bx--btn:first-of-type:not(:focus) {
  box-shadow: inherit;
}
.bx--btn-set .bx--btn.bx--btn--disabled {
  box-shadow: -0.0625rem 0 0 0 #8d8d8d;
}
.bx--btn-set .bx--btn.bx--btn--disabled:first-of-type {
  box-shadow: none;
}
.bx--btn-set--stacked .bx--btn.bx--btn--disabled {
  box-shadow: 0 -0.0625rem 0 0 #8d8d8d;
}
.bx--btn-set--stacked .bx--btn.bx--btn--disabled:first-of-type {
  box-shadow: none;
}
@-webkit-keyframes hide-feedback {
  0% {
    visibility: inherit;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes hide-feedback {
  0% {
    visibility: inherit;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
@-webkit-keyframes show-feedback {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  100% {
    visibility: inherit;
    opacity: 1;
  }
}
@keyframes show-feedback {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  100% {
    visibility: inherit;
    opacity: 1;
  }
}
.bx--btn--copy {
  position: relative;
  overflow: visible;
}
.bx--btn--copy .bx--btn__icon {
  margin-left: 0.3125rem;
}
.bx--btn--copy__feedback {
  position: absolute;
  top: 1.2rem;
  left: 50%;
  display: none;
}
.bx--btn--copy__feedback:focus {
  border: 2px solid #da1e28;
}
.bx--btn--copy__feedback::before {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  top: 1.1rem;
  z-index: 2;
  padding: 0.25rem;
  color: #ffffff;
  font-weight: 400;
  white-space: nowrap;
  border-radius: 4px;
  transform: translateX(-50%);
  content: attr(data-feedback);
  pointer-events: none;
}
.bx--btn--copy__feedback::after {
  top: 0.85rem;
  left: -0.3rem;
  z-index: 1;
  width: 0.6rem;
  height: 0.6rem;
  border-right: 1px solid #393939;
  border-bottom: 1px solid #393939;
  transform: rotate(-135deg);
  content: "";
}
.bx--btn--copy__feedback::before, .bx--btn--copy__feedback::after {
  position: absolute;
  display: block;
  background: #393939;
}
.bx--btn--copy__feedback--displayed {
  display: inline-flex;
}
.bx--copy-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  background-color: #ffffff;
  border: none;
  cursor: pointer;
}
.bx--copy-btn:hover {
  background-color: #e5e5e5;
}
.bx--copy-btn:active {
  background-color: #c6c6c6;
}
.bx--copy-btn::before {
  position: absolute;
  z-index: 6000;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  display: none;
}
.bx--copy-btn .bx--copy-btn__feedback {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: none;
  box-sizing: content-box;
  margin: auto;
  overflow: visible;
  clip: auto;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--copy-btn .bx--copy-btn__feedback {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--copy-btn .bx--copy-btn__feedback {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--copy-btn .bx--copy-btn__feedback {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--copy-btn .bx--copy-btn__feedback {
    border: 1px solid transparent;
  }
}
.bx--copy-btn::before, .bx--copy-btn::after,
.bx--copy-btn .bx--assistive-text,
.bx--copy-btn + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--copy-btn::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--copy-btn::after,
.bx--copy-btn .bx--assistive-text,
.bx--copy-btn + .bx--assistive-text {
  bottom: -0.8125rem;
  transform: translate(-50%, 100%);
}
.bx--copy-btn:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  outline-color: #0f62fe;
}
.bx--copy-btn.bx--copy-btn--animating::before, .bx--copy-btn.bx--copy-btn--animating .bx--copy-btn__feedback {
  display: block;
}
.bx--copy-btn.bx--copy-btn--animating.bx--copy-btn--fade-out::before, .bx--copy-btn.bx--copy-btn--animating.bx--copy-btn--fade-out .bx--copy-btn__feedback {
  -webkit-animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) hide-feedback;
          animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) hide-feedback;
}
.bx--copy-btn.bx--copy-btn--animating.bx--copy-btn--fade-in::before, .bx--copy-btn.bx--copy-btn--animating.bx--copy-btn--fade-in .bx--copy-btn__feedback {
  -webkit-animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) show-feedback;
          animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) show-feedback;
}
.bx--copy {
  font-size: 0;
}
.bx--fieldset {
  margin-bottom: 2rem;
}
.bx--form-item {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
}
.bx--label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  display: inline-block;
  margin-bottom: 0.5rem;
  color: #525252;
  font-weight: 400;
  line-height: 1rem;
  vertical-align: baseline;
}
.bx--label .bx--tooltip__trigger {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
}
.bx--label.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 4.6875rem;
  height: 0.875rem;
}
.bx--label.bx--skeleton:hover, .bx--label.bx--skeleton:focus, .bx--label.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--label.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--label.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
input[type=number] {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
}
input[data-invalid]:not(:focus),
.bx--number[data-invalid] input[type=number]:not(:focus),
.bx--text-input__field-wrapper[data-invalid] > .bx--text-input--invalid:not(:focus),
.bx--text-area__wrapper[data-invalid] > .bx--text-area--invalid:not(:focus),
.bx--select-input__wrapper[data-invalid] .bx--select-input:not(:focus),
.bx--list-box[data-invalid]:not(:focus),
.bx--combo-box[data-invalid] .bx--text-input:not(:focus) {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
}
input[data-invalid] ~ .bx--form-requirement,
.bx--number[data-invalid] .bx--number__input-wrapper ~ .bx--form-requirement,
.bx--number__input-wrapper--warning ~ .bx--form-requirement,
.bx--date-picker-input__wrapper ~ .bx--form-requirement,
.bx--time-picker--invalid ~ .bx--form-requirement,
.bx--text-input__field-wrapper[data-invalid] ~ .bx--form-requirement,
.bx--text-input__field-wrapper--warning ~ .bx--form-requirement,
.bx--text-input__field-wrapper--warning > .bx--text-input ~ .bx--form-requirement,
.bx--text-area__wrapper[data-invalid] ~ .bx--form-requirement,
.bx--select-input__wrapper[data-invalid] ~ .bx--form-requirement,
.bx--time-picker[data-invalid] ~ .bx--form-requirement,
.bx--list-box[data-invalid] ~ .bx--form-requirement,
.bx--list-box--warning ~ .bx--form-requirement {
  display: block;
  max-height: 12.5rem;
  overflow: visible;
  font-weight: 400;
}
input[data-invalid] ~ .bx--form-requirement,
.bx--number[data-invalid] .bx--number__input-wrapper ~ .bx--form-requirement,
.bx--date-picker-input__wrapper ~ .bx--form-requirement,
.bx--time-picker--invalid ~ .bx--form-requirement,
.bx--text-input__field-wrapper[data-invalid] ~ .bx--form-requirement,
.bx--text-area__wrapper[data-invalid] ~ .bx--form-requirement,
.bx--select-input__wrapper[data-invalid] ~ .bx--form-requirement,
.bx--time-picker[data-invalid] ~ .bx--form-requirement,
.bx--list-box[data-invalid] ~ .bx--form-requirement {
  color: #da1e28;
}
.bx--form--fluid .bx--text-input__field-wrapper[data-invalid],
.bx--form--fluid .bx--text-input__field-wrapper--warning {
  display: block;
}
.bx--form--fluid .bx--fieldset {
  margin: 0;
}
.bx--form--fluid input[data-invalid] {
  outline: none;
}
.bx--form--fluid .bx--form-requirement {
  margin: 0;
  padding: 0.5rem 2.5rem 0.5rem 1rem;
}
input:not(output):not([data-invalid]):-moz-ui-invalid {
  box-shadow: none;
}
.bx--form-requirement {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  display: none;
  max-height: 0;
  margin: 0.25rem 0 0;
  overflow: hidden;
}
.bx--select--inline .bx--form__helper-text {
  margin-top: 0;
}
.bx--form__helper-text {
  font-size: 0.75rem;
  line-height: 1.34;
  letter-spacing: 0.32px;
  z-index: 0;
  width: 100%;
  margin-top: 0.25rem;
  color: #525252;
  opacity: 1;
}
.bx--label--disabled,
.bx--form__helper-text--disabled {
  color: #c6c6c6;
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg);
  }
}
@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg);
  }
}
/* Stroke animations */
@-webkit-keyframes init-stroke {
  0% {
    stroke-dashoffset: 240;
  }
  100% {
    stroke-dashoffset: 40;
  }
}
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240;
  }
  100% {
    stroke-dashoffset: 40;
  }
}
@-webkit-keyframes stroke-end {
  0% {
    stroke-dashoffset: 40;
  }
  100% {
    stroke-dashoffset: 240;
  }
}
@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40;
  }
  100% {
    stroke-dashoffset: 240;
  }
}
.bx--loading {
  -webkit-animation-name: rotate;
          animation-name: rotate;
  -webkit-animation-duration: 690ms;
          animation-duration: 690ms;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  width: 10.5rem;
  height: 10.5rem;
}
.bx--loading svg circle {
  -webkit-animation-name: init-stroke;
          animation-name: init-stroke;
  -webkit-animation-duration: 10ms;
          animation-duration: 10ms;
  -webkit-animation-timing-function: cubic-bezier(0.2, 0, 0.38, 0.9);
          animation-timing-function: cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--loading__svg {
  fill: transparent;
}
.bx--loading__svg circle {
  stroke-width: 8;
  stroke-linecap: butt;
  stroke-dasharray: 240;
}
.bx--loading__stroke {
  stroke: #0f62fe;
  stroke-dashoffset: 40;
}
.bx--loading--small .bx--loading__stroke {
  stroke-dashoffset: 99;
}
.bx--loading--stop {
  -webkit-animation: rotate-end-p1 700ms cubic-bezier(0.2, 0, 1, 0.9) forwards, rotate-end-p2 700ms cubic-bezier(0.2, 0, 1, 0.9) 700ms forwards;
          animation: rotate-end-p1 700ms cubic-bezier(0.2, 0, 1, 0.9) forwards, rotate-end-p2 700ms cubic-bezier(0.2, 0, 1, 0.9) 700ms forwards;
}
.bx--loading--stop svg circle {
  -webkit-animation-name: stroke-end;
          animation-name: stroke-end;
  -webkit-animation-duration: 700ms;
          animation-duration: 700ms;
  -webkit-animation-timing-function: cubic-bezier(0.2, 0, 1, 0.9);
          animation-timing-function: cubic-bezier(0.2, 0, 1, 0.9);
  -webkit-animation-delay: 700ms;
          animation-delay: 700ms;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.bx--loading--small {
  width: 2rem;
  height: 2rem;
}
.bx--loading--small circle {
  stroke-width: 12;
}
.bx--loading--small .bx--loading__svg {
  stroke: #0f62fe;
}
.bx--loading__background {
  stroke: #e0e0e0;
  stroke-dashoffset: 0;
}
.bx--loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 6000;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background-color: rgba(22, 22, 22, 0.5);
  transition: background-color 720ms cubic-bezier(0.4, 0.14, 0.3, 1);
}
.bx--loading-overlay--stop {
  display: none;
}
.bx--file {
  width: 100%;
}
.bx--file--invalid {
  margin-right: 0.5rem;
  fill: #da1e28;
}
.bx--file--label {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-bottom: 0.5rem;
  color: #161616;
}
.bx--file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--file-btn {
  display: inline-flex;
  margin: 0;
  padding-right: 4rem;
}
.bx--file-browse-btn {
  display: inline-block;
  width: 100%;
  max-width: 20rem;
  margin-bottom: 0.5rem;
  color: #0f62fe;
  outline: 2px solid transparent;
  outline-offset: -2px;
  cursor: pointer;
  transition: 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--file-browse-btn:focus, .bx--file-browse-btn:hover {
  outline: 2px solid #0f62fe;
}
.bx--file-browse-btn:hover, .bx--file-browse-btn:focus, .bx--file-browse-btn:active, .bx--file-browse-btn:active:visited {
  text-decoration: underline;
}
.bx--file-browse-btn:active {
  color: #161616;
}
.bx--file-browse-btn--disabled {
  color: #c6c6c6;
  text-decoration: none;
  cursor: no-drop;
}
.bx--file-browse-btn--disabled:hover, .bx--file-browse-btn--disabled:focus {
  color: #c6c6c6;
  text-decoration: none;
  outline: none;
}
.bx--file-browse-btn--disabled .bx--file__drop-container {
  border: 1px dashed #ffffff;
}
.bx--label-description {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-bottom: 1rem;
  color: #525252;
}
.bx--file-btn ~ .bx--file-container {
  margin-top: 1.5rem;
}
.bx--btn ~ .bx--file-container {
  margin-top: 1rem;
}
.bx--file .bx--file-container,
.bx--file ~ .bx--file-container {
  margin-top: 0.5rem;
}
.bx--file__selected-file {
  display: grid;
  grid-auto-rows: auto;
  grid-gap: 1rem;
  grid-template-columns: 1fr auto;
  align-items: center;
  max-width: 20rem;
  min-height: 3rem;
  margin-bottom: 0.5rem;
  word-break: break-word;
  background-color: #ffffff;
}
.bx--file__selected-file:last-child {
  margin-bottom: 0;
}
.bx--file__selected-file .bx--form-requirement {
  display: block;
  grid-column: 1/-1;
  max-height: none;
  margin: 0;
}
.bx--file__selected-file .bx--loading {
  width: 2rem;
  height: 2rem;
  margin-right: -0.5rem;
}
.bx--file__selected-file .bx--inline-loading__animation .bx--loading {
  margin-right: 0;
}
.bx--file__selected-file .bx--file-filename {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-left: 1rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--file__selected-file--field {
  min-height: 2.5rem;
}
.bx--file__selected-file--sm {
  min-height: 2rem;
}
.bx--file__selected-file--invalid__wrapper {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
  max-width: 20rem;
  margin-bottom: 0.5rem;
  background-color: #ffffff;
  outline-width: 1px;
}
.bx--file__selected-file--invalid {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
  padding: 1rem 0;
}
.bx--file__selected-file--invalid .bx--form-requirement {
  padding-top: 1rem;
  border-top: 1px solid #e0e0e0;
}
.bx--file__selected-file--invalid .bx--form-requirement__title,
.bx--file__selected-file--invalid .bx--form-requirement__supplement {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  padding: 0 1rem;
}
.bx--file__selected-file--invalid .bx--form-requirement__title {
  color: #da1e28;
}
.bx--file__selected-file--invalid .bx--form-requirement__supplement {
  color: #161616;
}
.bx--file__selected-file--invalid + .bx--form-requirement {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  display: block;
  max-height: 12.5rem;
  padding: 0.5rem 1rem;
  overflow: visible;
  color: #da1e28;
  font-weight: 400;
}
.bx--file__selected-file--invalid + .bx--form-requirement .bx--form-requirement__supplement {
  padding-bottom: 0.5rem;
  color: #161616;
}
.bx--file__state-container {
  display: flex;
  justify-content: center;
  min-width: 1.5rem;
  padding-right: 1rem;
}
.bx--file__state-container .bx--loading__svg {
  stroke: #161616;
}
.bx--file__state-container .bx--file-complete {
  cursor: pointer;
  fill: #0f62fe;
}
.bx--file__state-container .bx--file-complete:focus {
  outline: 1px solid #0f62fe;
}
.bx--file__state-container .bx--file-complete [data-icon-path=inner-path] {
  opacity: 1;
  fill: #ffffff;
}
.bx--file__state-container .bx--file-invalid {
  width: 1rem;
  height: 1rem;
  margin-right: 0.5rem;
  fill: #da1e28;
}
.bx--file__state-container .bx--file-close {
  display: flex;
  width: 1rem;
  height: 1rem;
  padding: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  fill: #161616;
}
.bx--file__state-container .bx--file-close:focus {
  outline: 1px solid #0f62fe;
}
.bx--file__state-container .bx--file-close svg path {
  fill: #161616;
}
.bx--file__state-container .bx--inline-loading__animation {
  margin-right: -0.5rem;
}
.bx--file__drop-container {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  height: 6rem;
  padding: 1rem;
  overflow: hidden;
  border: 1px dashed #8d8d8d;
}
.bx--file__drop-container--drag-over {
  background: none;
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--form-item.bx--checkbox-wrapper {
  margin-bottom: 0.25rem;
}
.bx--form-item.bx--checkbox-wrapper:first-of-type {
  margin-top: 0.1875rem;
}
.bx--label + .bx--form-item.bx--checkbox-wrapper {
  margin-top: -0.125rem;
}
.bx--form-item.bx--checkbox-wrapper:last-of-type {
  margin-bottom: 0.1875rem;
}
.bx--checkbox {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--checkbox-label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: relative;
  display: flex;
  min-height: 1.5rem;
  padding-left: 1.25rem;
  line-height: 1.5rem;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--checkbox-label-text {
  padding-left: 0.375rem;
}
.bx--checkbox-label::before,
.bx--checkbox-label::after {
  box-sizing: border-box;
}
.bx--checkbox-label::before {
  position: absolute;
  top: 0.125rem;
  left: 0;
  width: 1rem;
  height: 1rem;
  margin: 0.125rem;
  background-color: transparent;
  border: 1px solid #161616;
  border-radius: 1px;
  content: "";
}
.bx--checkbox-label::after {
  position: absolute;
  top: 0.5rem;
  left: 0.375rem;
  width: 0.5625rem;
  height: 0.3125rem;
  margin-top: -0.1875rem;
  background: none;
  border-bottom: 2px solid #ffffff;
  border-left: 2px solid #ffffff;
  transform: scale(0) rotate(-45deg);
  transform-origin: bottom right;
  content: "";
}
.bx--checkbox:checked + .bx--checkbox-label::before,
.bx--checkbox:indeterminate + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state=true]::before,
.bx--checkbox-label[data-contained-checkbox-state=mixed]::before {
  background-color: #161616;
  border-color: #161616;
  border-width: 1px;
}
.bx--checkbox:checked + .bx--checkbox-label::after,
.bx--checkbox-label[data-contained-checkbox-state=true]::after {
  transform: scale(1) rotate(-45deg);
}
.bx--checkbox:indeterminate + .bx--checkbox-label::after,
.bx--checkbox-label[data-contained-checkbox-state=mixed]::after {
  top: 0.6875rem;
  width: 0.5rem;
  border-bottom: 2px solid #ffffff;
  border-left: 0 solid #ffffff;
  transform: scale(1) rotate(0deg);
}
.bx--checkbox:focus + .bx--checkbox-label::before,
.bx--checkbox-label__focus::before,
.bx--checkbox:checked:focus + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state=true].bx--checkbox-label__focus::before,
.bx--checkbox:indeterminate:focus + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state=mixed].bx--checkbox-label__focus::before {
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #0f62fe;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--checkbox:focus + .bx--checkbox-label::before,
.bx--checkbox-label__focus::before,
.bx--checkbox:checked:focus + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state=true].bx--checkbox-label__focus::before,
.bx--checkbox:indeterminate:focus + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state=mixed].bx--checkbox-label__focus::before {
    outline: 1px solid highlightText;
    outline-offset: 2px;
  }
}
.bx--checkbox:disabled + .bx--checkbox-label,
.bx--checkbox-label[data-contained-checkbox-disabled=true] {
  color: #c6c6c6;
  cursor: not-allowed;
}
.bx--checkbox:disabled + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-disabled=true]::before {
  border-color: #c6c6c6;
}
.bx--checkbox:checked:disabled + .bx--checkbox-label::before,
.bx--checkbox:indeterminate:disabled + .bx--checkbox-label::before,
.bx--checkbox-label[data-contained-checkbox-state=true][data-contained-checkbox-disabled=true]::before,
.bx--checkbox-label[data-contained-checkbox-state=mixed][data-contained-checkbox-disabled=true]::before {
  background-color: #c6c6c6;
}
.bx--checkbox-label-text.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 6.25rem;
  height: 1rem;
  margin: auto 0 auto 0.375rem;
}
.bx--checkbox-label-text.bx--skeleton:hover, .bx--checkbox-label-text.bx--skeleton:focus, .bx--checkbox-label-text.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--checkbox-label-text.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--checkbox-label-text.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--list-box__wrapper--inline {
  display: inline-grid;
  grid-gap: 0.25rem;
  grid-template: auto auto/auto auto;
  align-items: center;
}
.bx--list-box__wrapper--inline .bx--label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
.bx--list-box__wrapper--inline .bx--label,
.bx--list-box__wrapper--inline .bx--form__helper-text,
.bx--list-box__wrapper--inline .bx--form-requirement {
  margin: 0;
}
.bx--list-box__wrapper--inline .bx--form__helper-text {
  max-width: none;
}
.bx--list-box__wrapper--inline .bx--form-requirement {
  grid-column: 2;
}
.bx--list-box {
  position: relative;
  width: 100%;
  height: 2.5rem;
  max-height: 2.5rem;
  color: #161616;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  cursor: pointer;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--list-box:hover {
  background-color: #e5e5e5;
}
.bx--list-box--xl {
  height: 3rem;
  max-height: 3rem;
}
.bx--list-box--sm {
  height: 2rem;
  max-height: 2rem;
}
.bx--list-box--expanded {
  border-bottom-color: #e0e0e0;
}
.bx--list-box--expanded:hover {
  background-color: #ffffff;
}
.bx--list-box--expanded:hover.bx--list-box--light:hover {
  background-color: #f4f4f4;
}
.bx--list-box .bx--text-input {
  height: 100%;
}
.bx--list-box__invalid-icon {
  position: absolute;
  top: 50%;
  right: 2.5rem;
  transform: translateY(-50%);
  fill: #da1e28;
}
.bx--list-box__invalid-icon--warning {
  fill: #f1c21b;
}
.bx--list-box__invalid-icon--warning path[data-icon-path=inner-path] {
  opacity: 1;
  fill: #000000;
}
.bx--list-box[data-invalid] .bx--list-box__field,
.bx--list-box.bx--list-box--warning .bx--list-box__field {
  padding-right: 4rem;
  border-bottom: 0;
}
.bx--list-box[data-invalid].bx--list-box--inline .bx--list-box__field {
  padding-right: 3.5rem;
}
.bx--list-box--light {
  background-color: #f4f4f4;
}
.bx--list-box--light .bx--list-box__menu {
  background: #f4f4f4;
}
.bx--list-box--light .bx--list-box__menu-item__option {
  border-top-color: #e0e0e0;
}
.bx--list-box--light.bx--list-box--expanded {
  border-bottom-color: transparent;
}
.bx--list-box--disabled:hover {
  background-color: #ffffff;
}
.bx--list-box--light.bx--list-box--disabled {
  background-color: #f4f4f4;
}
.bx--list-box--disabled,
.bx--list-box--disabled .bx--list-box__field,
.bx--list-box--disabled .bx--list-box__field:focus {
  border-bottom-color: transparent;
  outline: none;
}
.bx--list-box--disabled .bx--list-box__label,
.bx--list-box--disabled.bx--list-box--inline .bx--list-box__label {
  color: #c6c6c6;
}
.bx--list-box--disabled .bx--list-box__menu-icon > svg {
  fill: #c6c6c6;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box--disabled .bx--list-box__menu-icon > svg {
    fill: GrayText;
  }
}
.bx--list-box--disabled,
.bx--list-box--disabled .bx--list-box__field,
.bx--list-box--disabled .bx--list-box__menu-icon {
  cursor: not-allowed;
}
.bx--list-box--disabled .bx--list-box__menu-item,
.bx--list-box--disabled .bx--list-box__menu-item:hover,
.bx--list-box--disabled .bx--list-box__menu-item--highlighted {
  color: #c6c6c6;
  text-decoration: none;
}
.bx--list-box--disabled .bx--list-box__selection:hover {
  cursor: not-allowed;
}
.bx--list-box--disabled.bx--list-box[data-invalid] .bx--list-box__field {
  padding-right: 3rem;
}
.bx--list-box--disabled.bx--list-box[data-invalid].bx--list-box--inline .bx--list-box__field {
  padding-right: 2rem;
}
.bx--list-box.bx--list-box--inline {
  background-color: transparent;
  border-width: 0;
}
.bx--list-box.bx--list-box--inline:hover {
  background-color: #e5e5e5;
}
.bx--list-box.bx--list-box--inline.bx--list-box--expanded {
  border-bottom-width: 0;
}
.bx--list-box.bx--list-box--inline.bx--list-box--expanded .bx--list-box__field[aria-expanded=true] {
  border-width: 0;
}
.bx--list-box.bx--list-box--inline.bx--list-box--disabled:hover {
  background-color: transparent;
}
.bx--list-box.bx--list-box--inline.bx--list-box--expanded:hover {
  background-color: #f4f4f4;
}
.bx--list-box.bx--list-box--inline .bx--list-box__field {
  padding: 0 2rem 0 0.5rem;
}
.bx--list-box.bx--list-box--inline .bx--list-box__menu-icon {
  right: 0.5rem;
}
.bx--list-box.bx--list-box--inline .bx--list-box__invalid-icon {
  right: 2rem;
}
.bx--list-box--inline .bx--list-box__label {
  color: #161616;
}
.bx--list-box--inline .bx--list-box__field {
  height: 100%;
}
.bx--dropdown--inline .bx--list-box__field {
  max-width: 30rem;
}
.bx--dropdown--inline .bx--list-box__menu {
  min-width: 18rem;
  max-width: 30rem;
}
.bx--list-box__field {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  position: relative;
  display: inline-flex;
  align-items: center;
  height: calc(100% + 1px);
  padding: 0 3rem 0 1rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  vertical-align: top;
  outline: none;
  cursor: pointer;
}
.bx--list-box__field::-moz-focus-inner {
  border: 0;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__field {
    border: 1px solid ButtonText;
  }
}
.bx--list-box__field:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__field:focus {
    border: 2px solid ButtonText;
  }
}
.bx--list-box__field[disabled] {
  color: #c6c6c6;
  outline: none;
}
.bx--list-box__field .bx--text-input {
  padding-right: 4.5rem;
}
.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input,
.bx--list-box--warning .bx--list-box__field .bx--text-input {
  padding-right: 6.125rem;
}
.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input + .bx--list-box__invalid-icon,
.bx--list-box--warning .bx--list-box__field .bx--text-input + .bx--list-box__invalid-icon {
  right: 4.125rem;
}
.bx--list-box__field .bx--text-input--empty {
  padding-right: 3rem;
}
.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input--empty,
.bx--list-box--warning .bx--list-box__field .bx--text-input--empty {
  padding-right: 4.5rem;
}
.bx--list-box[data-invalid] .bx--list-box__field .bx--text-input--empty + .bx--list-box__invalid-icon,
.bx--list-box--warning .bx--list-box__field .bx--text-input--empty + .bx--list-box__invalid-icon {
  right: 2.5rem;
}
.bx--list-box__label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  overflow: hidden;
  color: #161616;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--list-box__menu-icon {
  position: absolute;
  top: 0;
  right: 1rem;
  display: flex;
  align-items: center;
  height: 100%;
  cursor: pointer;
  transition: transform 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--list-box__menu-icon > svg {
  height: 100%;
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__menu-icon > svg {
    fill: ButtonText;
  }
}
.bx--list-box__menu-icon--open {
  transform: rotate(180deg);
}
.bx--list-box__selection {
  position: absolute;
  top: 50%;
  /* to preserve .5rem space between icons according to spec top/transform used to center the combobox clear selection icon in IE11 */
  right: 2.0625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.875rem;
  height: 1.875rem;
  transform: translateY(-50%);
  cursor: pointer;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--list-box__selection:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--list-box__selection:focus:hover {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--list-box__selection > svg {
  fill: #525252;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__selection > svg {
    fill: ButtonText;
  }
}
.bx--list-box--disabled .bx--list-box__selection:focus {
  outline: none;
}
.bx--list-box__selection--multi {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  position: static;
  top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: auto;
  height: 1.5rem;
  margin-right: 0.625rem;
  padding: 0.5rem;
  padding-right: 0.125rem;
  color: #ffffff;
  line-height: 0;
  background-color: #393939;
  border-radius: 0.75rem;
  transform: none;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__selection--multi {
    border: 1px solid transparent;
  }
}
.bx--list-box__selection--multi > svg {
  width: 1.25rem;
  height: 1.25rem;
  margin-left: 0.25rem;
  padding: 0.125rem;
  fill: #ffffff;
}
.bx--list-box__selection--multi > svg:hover {
  background-color: #4c4c4c;
  border-radius: 50%;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__selection--multi > svg {
    fill: ButtonText;
  }
}
.bx--list-box--disabled .bx--list-box__selection--multi {
  color: #ffffff;
  background-color: #c6c6c6;
}
.bx--list-box--disabled .bx--list-box__selection--multi .bx--tag__close-icon:hover {
  background-color: #c6c6c6;
}
.bx--list-box--disabled .bx--list-box__selection--multi > svg {
  fill: #ffffff;
}
.bx--list-box--disabled .bx--list-box__selection--multi > svg:hover {
  background-color: initial;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box--disabled .bx--list-box__selection--multi {
    fill: GrayText;
  }
}
.bx--list-box__selection--multi:hover {
  outline: none;
}
.bx--list-box__menu {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  position: absolute;
  right: 0;
  left: 0;
  z-index: 6000;
  width: 100%;
  overflow-y: auto;
  background-color: #ffffff;
  transition: max-height 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--list-box__menu:focus {
  outline: 1px solid #0f62fe;
}
.bx--list-box .bx--list-box__field[aria-expanded=false] + .bx--list-box__menu {
  max-height: 0;
}
.bx--list-box--expanded .bx--list-box__menu {
  max-height: 13.75rem;
}
.bx--list-box--expanded.bx--list-box--xl .bx--list-box__menu {
  max-height: 16.5rem;
}
.bx--list-box--expanded.bx--list-box--sm .bx--list-box__menu {
  max-height: 11rem;
}
.bx--list-box__menu-item {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: relative;
  height: 2.5rem;
  color: #525252;
  cursor: pointer;
  transition: background 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--list-box__menu-item:hover {
  background-color: #e5e5e5;
}
.bx--list-box__menu-item:active {
  background-color: #e0e0e0;
}
.bx--list-box--sm .bx--list-box__menu-item {
  height: 2rem;
}
.bx--list-box--xl .bx--list-box__menu-item {
  height: 3rem;
}
.bx--list-box--disabled .bx--list-box__menu-item:hover {
  background-color: transparent;
}
.bx--list-box--light .bx--list-box__menu-item:active {
  background-color: #e0e0e0;
}
.bx--list-box--disabled .bx--list-box__menu-item__option:hover {
  border-top-color: #e0e0e0;
}
.bx--list-box__menu-item:first-of-type .bx--list-box__menu-item__option {
  border-top-color: transparent;
}
.bx--list-box__menu-item:hover .bx--list-box__menu-item__option {
  color: #161616;
}
.bx--list-box__menu-item:hover + .bx--list-box__menu-item .bx--list-box__menu-item__option {
  border-top-color: transparent;
}
.bx--list-box--disabled .bx--list-box__menu-item:hover + .bx--list-box__menu-item .bx--list-box__menu-item__option {
  border-top-color: #e0e0e0;
}
.bx--list-box__menu-item__option {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: block;
  height: 2.5rem;
  margin: 0 1rem;
  padding: 0.6875rem 0;
  padding-right: 1.5rem;
  overflow: hidden;
  color: #525252;
  font-weight: normal;
  line-height: 1rem;
  white-space: nowrap;
  text-decoration: none;
  text-overflow: ellipsis;
  border-top: 1px solid transparent;
  border-top-color: #e0e0e0;
  border-bottom: 1px solid transparent;
  transition: border-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--list-box__menu-item__option:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  margin: 0;
  padding: 0.6875rem 1rem;
  border-color: transparent;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__menu-item__option:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--list-box__menu-item__option:hover {
  color: #161616;
  border-color: transparent;
}
.bx--list-box--sm .bx--list-box__menu-item__option {
  height: 2rem;
  padding-top: 0.4375rem;
  padding-bottom: 0.4375rem;
}
.bx--list-box--xl .bx--list-box__menu-item__option {
  height: 3rem;
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
}
.bx--list-box--disabled .bx--list-box__menu-item:hover .bx--list-box__menu-item__option,
.bx--list-box--disabled .bx--list-box__menu-item__option {
  color: #c6c6c6;
}
.bx--list-box.bx--list-box--inline .bx--list-box__menu-item__option {
  margin: 0 0.5rem;
}
.bx--list-box.bx--list-box--inline .bx--list-box__menu-item__option:focus {
  margin: 0;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.bx--list-box__menu-item--highlighted {
  color: #161616;
  background-color: #e5e5e5;
  border-color: transparent;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--list-box__menu-item--highlighted {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--list-box__menu-item--highlighted .bx--list-box__menu-item__option,
.bx--list-box__menu-item--highlighted + .bx--list-box__menu-item .bx--list-box__menu-item__option {
  border-top-color: transparent;
}
.bx--list-box__menu-item--highlighted .bx--list-box__menu-item__option {
  color: #161616;
}
.bx--list-box__menu-item--active {
  color: #161616;
  background-color: #e0e0e0;
  border-bottom-color: #e0e0e0;
}
.bx--list-box--light .bx--list-box__menu-item--active {
  background-color: #e0e0e0;
  border-bottom-color: #e0e0e0;
}
.bx--list-box__menu-item--active:hover {
  background-color: #e5e5e5;
  border-bottom-color: #e5e5e5;
}
.bx--list-box__menu-item--active .bx--list-box__menu-item__option {
  color: #161616;
}
.bx--list-box__menu-item--active + .bx--list-box__menu-item > .bx--list-box__menu-item__option {
  border-top-color: transparent;
}
.bx--list-box__menu-item__selected-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: none;
  transform: translateY(-50%);
  fill: #161616;
}
.bx--list-box--inline .bx--list-box__menu-item__selected-icon {
  right: 0.5rem;
}
.bx--list-box__menu-item--active .bx--list-box__menu-item__selected-icon {
  display: block;
}
.bx--list-box__menu-item .bx--checkbox-label {
  width: 100%;
}
.bx--list-box__menu-item .bx--checkbox-label-text {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--list-box--up .bx--list-box__menu {
  bottom: 2.5rem;
}
.bx--list-box--up.bx--dropdown--sm .bx--list-box__menu,
.bx--list-box--up.bx--list-box--sm .bx--list-box__menu {
  bottom: 2rem;
}
.bx--list-box--up.bx--dropdown--xl .bx--list-box__menu,
.bx--list-box--up.bx--list-box--xl .bx--list-box__menu {
  bottom: 3rem;
}
.bx--list-box input[role=combobox],
.bx--list-box input[type=text] {
  min-width: 0;
  background-color: inherit;
}
.bx--combo-box .bx--text-input::-ms-clear {
  display: none;
}
.bx--combo-box.bx--list-box--expanded .bx--text-input {
  border-bottom-color: #e0e0e0;
}
.bx--combo-box .bx--list-box__field,
.bx--combo-box.bx--list-box[data-invalid] .bx--list-box__field,
.bx--combo-box.bx--list-box--warning .bx--list-box__field,
.bx--combo-box.bx--list-box--disabled.bx--list-box[data-invalid] .bx--list-box__field,
.bx--combo-box.bx--list-box--disabled.bx--list-box--warning .bx--list-box__field {
  padding: 0;
}
.bx--radio-button-group {
  display: flex;
  align-items: center;
  margin-top: 0.375rem;
}
.bx--label + .bx--form-item .bx--radio-button-group {
  margin-top: 0;
}
.bx--radio-button-group--vertical {
  flex-direction: column;
  align-items: flex-start;
}
.bx--radio-button-group--vertical.bx--radio-button-group--label-left {
  align-items: flex-end;
}
.bx--radio-button-group--vertical .bx--radio-button__label {
  margin-right: 0;
  line-height: 1.25rem;
}
.bx--radio-button-group--vertical .bx--radio-button__label:not(:last-of-type) {
  margin-bottom: 0.5rem;
}
.bx--radio-button {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
  visibility: inherit;
}
.bx--radio-button__label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  margin-right: 1rem;
  cursor: pointer;
}
.bx--radio-button__appearance {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  margin: 2px 0.5rem 2px 0.5rem;
  background-color: transparent;
  border: 1px solid #161616;
  border-radius: 50%;
}
.bx--radio-button:checked + .bx--radio-button__label .bx--radio-button__appearance {
  display: flex;
  align-items: center;
  justify-content: center;
  border-color: #161616;
}
.bx--radio-button:checked + .bx--radio-button__label .bx--radio-button__appearance::before {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  background-color: #161616;
  border-radius: 50%;
  transform: scale(0.5);
  content: "";
}
@media screen and (-ms-high-contrast: active) {
  .bx--radio-button:checked + .bx--radio-button__label .bx--radio-button__appearance::before {
    background-color: WindowText;
  }
}
@media screen and (prefers-contrast) {
  .bx--radio-button:checked + .bx--radio-button__label .bx--radio-button__appearance::before {
    border: 2px solid WindowText;
  }
}
.bx--radio-button:disabled + .bx--radio-button__label {
  color: #c6c6c6;
  cursor: not-allowed;
}
.bx--radio-button:disabled + .bx--radio-button__label .bx--radio-button__appearance,
.bx--radio-button:disabled:checked + .bx--radio-button__label .bx--radio-button__appearance {
  border-color: #c6c6c6;
}
.bx--radio-button:disabled + .bx--radio-button__label .bx--radio-button__appearance::before,
.bx--radio-button:disabled:checked + .bx--radio-button__label .bx--radio-button__appearance::before {
  background-color: #c6c6c6;
}
.bx--radio-button:focus + .bx--radio-button__label .bx--radio-button__appearance {
  outline: 1px solid transparent;
  box-shadow: 0 0 0 2px #0f62fe;
}
.bx--radio-button__label.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 6.25rem;
  height: 1.125rem;
}
.bx--radio-button__label.bx--skeleton:hover, .bx--radio-button__label.bx--skeleton:focus, .bx--radio-button__label.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--radio-button__label.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--radio-button__label.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--radio-button__label.bx--skeleton .bx--radio-button__appearance {
  display: none;
}
.bx--radio-button-wrapper .bx--radio-button__label {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}
.bx--radio-button-wrapper:not(:last-of-type) {
  margin-right: 1rem;
}
.bx--radio-button-group--vertical .bx--radio-button-wrapper:not(:last-of-type) {
  margin-right: 0;
  margin-bottom: 0.5rem;
}
.bx--radio-button-group--label-right .bx--radio-button__label,
.bx--radio-button-wrapper.bx--radio-button-wrapper--label-right .bx--radio-button__label {
  flex-direction: row;
}
.bx--radio-button-group--label-left .bx--radio-button__label,
.bx--radio-button-wrapper.bx--radio-button-wrapper--label-left .bx--radio-button__label {
  flex-direction: row-reverse;
}
.bx--radio-button-group--label-left .bx--radio-button__appearance,
.bx--radio-button-wrapper.bx--radio-button-wrapper--label-left .bx--radio-button__appearance {
  margin-right: 0;
  margin-left: 0.5rem;
}
.bx--toggle {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--toggle:focus {
  outline: none;
}
.bx--toggle__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  position: relative;
  display: flex;
  align-items: center;
  margin: 0.5rem 0;
  cursor: pointer;
}
.bx--toggle__appearance {
  position: relative;
  width: 3rem;
  height: 1.5rem;
}
.bx--toggle__appearance::before {
  position: absolute;
  top: 0;
  display: block;
  box-sizing: border-box;
  width: 3rem;
  height: 1.5rem;
  background-color: #8d8d8d;
  border-radius: 0.9375rem;
  box-shadow: 0 0 0 1px transparent, 0 0 0 3px transparent;
  cursor: pointer;
  transition: box-shadow 70ms cubic-bezier(0.2, 0, 1, 0.9), background-color 70ms cubic-bezier(0.2, 0, 1, 0.9);
  content: "";
  will-change: box-shadow;
}
.bx--toggle__appearance::after {
  position: absolute;
  top: 0.1875rem;
  left: 0.1875rem;
  display: block;
  box-sizing: border-box;
  width: 1.125rem;
  height: 1.125rem;
  background-color: #ffffff;
  border-radius: 50%;
  cursor: pointer;
  transition: transform 70ms cubic-bezier(0.2, 0, 1, 0.9);
  content: "";
}
.bx--toggle__check {
  position: absolute;
  top: 0.375rem;
  left: 0.375rem;
  z-index: 1;
  width: 0.375rem;
  height: 0.3125rem;
  transform: scale(0.2);
  transition: 70ms cubic-bezier(0.2, 0, 1, 0.9);
  fill: #ffffff;
}
.bx--toggle__text--left,
.bx--toggle__text--right {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: relative;
  margin-left: 0.5rem;
}
.bx--toggle__text--left {
  position: absolute;
  left: 3rem;
}
.bx--toggle:checked + .bx--toggle__label .bx--toggle__text--left,
.bx--toggle:not(:checked) + .bx--toggle__label .bx--toggle__text--right {
  visibility: hidden;
}
.bx--toggle:checked + .bx--toggle__label .bx--toggle__text--right,
.bx--toggle:not(:checked) + .bx--toggle__label .bx--toggle__text--left {
  display: inline;
}
.bx--toggle:checked + .bx--toggle__label .bx--toggle__appearance::before {
  background-color: #24a148;
}
.bx--toggle:checked + .bx--toggle__label .bx--toggle__appearance::after {
  background-color: #ffffff;
  transform: translateX(1.5rem);
}
.bx--toggle + .bx--toggle__label .bx--toggle__appearance::before {
  box-shadow: 0 0 0 1px transparent, 0 0 0 3px transparent;
}
.bx--toggle:focus + .bx--toggle__label,
.bx--toggle:active + .bx--toggle__label .bx--toggle__appearance::before {
  box-shadow: 0 0 0 1px #f4f4f4, 0 0 0 3px #0f62fe;
}
.bx--toggle:disabled + .bx--toggle__label {
  cursor: not-allowed;
}
.bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance::before {
  background-color: #ffffff;
}
.bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance::after {
  background-color: #c6c6c6;
}
.bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance::before, .bx--toggle:disabled + .bx--toggle__label .bx--toggle__appearance::after {
  cursor: not-allowed;
  transition: 70ms cubic-bezier(0.2, 0, 1, 0.9);
}
.bx--toggle:disabled + .bx--toggle__label .bx--toggle__text--left,
.bx--toggle:disabled + .bx--toggle__label .bx--toggle__text--right {
  color: #c6c6c6;
}
.bx--toggle:disabled:active + .bx--toggle__label .bx--toggle__appearance:before {
  box-shadow: none;
}
.bx--toggle:disabled + .bx--toggle__label .bx--toggle__check {
  fill: #c6c6c6;
}
.bx--toggle--small + .bx--toggle__label .bx--toggle__appearance {
  width: 2rem;
  height: 1rem;
}
.bx--toggle--small + .bx--toggle__label .bx--toggle__appearance::before {
  top: 0;
  box-sizing: border-box;
  width: 2rem;
  height: 1rem;
  border-radius: 0.9375rem;
}
.bx--toggle--small + .bx--toggle__label .bx--toggle__appearance::after {
  top: 0.1875rem;
  left: 0.1875rem;
  width: 0.625rem;
  height: 0.625rem;
}
.bx--toggle--small:checked + .bx--toggle__label .bx--toggle__check {
  transform: scale(1) translateX(1rem);
  fill: #24a148;
}
.bx--toggle--small + .bx--toggle__label .bx--toggle__text--left {
  left: 2rem;
}
.bx--toggle--small:checked + .bx--toggle__label .bx--toggle__appearance::after {
  margin-left: 0;
  transform: translateX(1.0625rem);
}
.bx--toggle-input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--toggle-input:focus {
  outline: none;
}
.bx--toggle-input__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: #525252;
  cursor: pointer;
}
.bx--toggle__switch {
  position: relative;
  display: flex;
  align-items: center;
  width: 3rem;
  height: 1.5rem;
  cursor: pointer;
}
.bx--toggle__switch::before {
  position: absolute;
  top: 0;
  display: block;
  box-sizing: border-box;
  width: 3rem;
  height: 1.5rem;
  background-color: #8d8d8d;
  border-radius: 0.9375rem;
  box-shadow: 0 0 0 1px transparent, 0 0 0 3px transparent;
  transition: box-shadow 70ms cubic-bezier(0.2, 0, 1, 0.9), background-color 70ms cubic-bezier(0.2, 0, 1, 0.9);
  content: "";
  will-change: box-shadow;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--toggle__switch::before {
    border: 1px solid ButtonText;
  }
}
.bx--toggle__switch::after {
  position: absolute;
  top: 0.1875rem;
  left: 0.1875rem;
  display: block;
  box-sizing: border-box;
  width: 1.125rem;
  height: 1.125rem;
  background-color: #ffffff;
  border-radius: 50%;
  transition: transform 70ms cubic-bezier(0.2, 0, 1, 0.9);
  content: "";
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--toggle__switch::after {
    border: 3px solid ButtonText;
  }
}
.bx--toggle-input__label .bx--toggle__switch {
  margin-top: 1rem;
}
.bx--toggle__text--off,
.bx--toggle__text--on {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: absolute;
  top: 50%;
  margin-left: 3.5rem;
  white-space: nowrap;
  transform: translateY(-50%);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--toggle-input:checked + .bx--toggle-input__label > .bx--toggle__switch > .bx--toggle__text--off,
.bx--toggle-input:not(:checked) + .bx--toggle-input__label > .bx--toggle__switch > .bx--toggle__text--on {
  visibility: hidden;
}
.bx--toggle-input:checked + .bx--toggle-input__label > .bx--toggle__switch::before {
  background-color: #24a148;
}
.bx--toggle-input:checked + .bx--toggle-input__label > .bx--toggle__switch::after {
  background-color: #ffffff;
  transform: translateX(1.5rem);
}
.bx--toggle-input:focus + .bx--toggle-input__label > .bx--toggle__switch::before,
.bx--toggle-input:active + .bx--toggle-input__label > .bx--toggle__switch::before {
  box-shadow: 0 0 0 1px #f4f4f4, 0 0 0 3px #0f62fe;
}
.bx--toggle-input:disabled + .bx--toggle-input__label {
  color: #c6c6c6;
  cursor: not-allowed;
}
.bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch {
  cursor: not-allowed;
}
.bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::before {
  background-color: #ffffff;
}
.bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::after {
  background-color: #c6c6c6;
}
.bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::before, .bx--toggle-input:disabled + .bx--toggle-input__label > .bx--toggle__switch::after {
  cursor: not-allowed;
  transition: 70ms cubic-bezier(0.2, 0, 1, 0.9);
}
.bx--toggle-input:disabled:active + .bx--toggle-input__label > .bx--toggle__switch::before {
  box-shadow: none;
}
.bx--toggle-input--small + .bx--toggle-input__label > .bx--toggle__switch {
  width: 2rem;
  height: 1rem;
}
.bx--toggle-input--small + .bx--toggle-input__label > .bx--toggle__switch::before {
  width: 2rem;
  height: 1rem;
  border-radius: 0.9375rem;
}
.bx--toggle-input--small + .bx--toggle-input__label > .bx--toggle__switch::after {
  width: 0.625rem;
  height: 0.625rem;
}
.bx--toggle-input--small + .bx--toggle-input__label .bx--toggle__text--off,
.bx--toggle-input--small + .bx--toggle-input__label .bx--toggle__text--on {
  margin-left: 2.5rem;
}
.bx--toggle-input--small:checked + .bx--toggle-input__label > .bx--toggle__switch::after {
  transform: translateX(1.0625rem);
}
.bx--toggle-input--small:checked + .bx--toggle-input__label .bx--toggle__check {
  transform: scale(1) translateX(1rem);
  fill: #24a148;
}
.bx--toggle-input--small:disabled:checked + .bx--toggle-input__label .bx--toggle__check {
  fill: #ffffff;
}
.bx--toggle__label.bx--skeleton {
  flex-direction: column;
  align-items: flex-start;
}
.bx--toggle__label.bx--skeleton .bx--toggle__label-text {
  margin-bottom: 0.5rem;
}
.bx--search {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.bx--search .bx--label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--search-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  order: 1;
  width: 100%;
  padding: 0 2.5rem;
  color: #161616;
  text-overflow: ellipsis;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.bx--search-input:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--search-input::-moz-placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--search-input::placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--search-input::-ms-clear {
  display: none;
}
.bx--search-input[disabled] {
  color: #c6c6c6;
  background-color: #ffffff;
  border-bottom: 1px solid transparent;
  cursor: not-allowed;
}
.bx--search-input[disabled]::-moz-placeholder {
  color: #c6c6c6;
}
.bx--search-input[disabled]::placeholder {
  color: #c6c6c6;
}
.bx--search--light .bx--search-input {
  background: #f4f4f4;
}
.bx--search--sm .bx--search-input {
  height: 2rem;
  padding: 0 2rem;
}
.bx--search--sm .bx--search-magnifier {
  left: 0.5rem;
}
.bx--search--lg .bx--search-input {
  height: 2.5rem;
  padding: 0 2.5rem;
}
.bx--search--lg .bx--search-magnifier {
  left: 0.75rem;
}
.bx--search--xl .bx--search-input {
  height: 3rem;
  padding: 0 3rem;
}
.bx--search-magnifier {
  position: absolute;
  top: 50%;
  left: 1rem;
  z-index: 2;
  width: 1rem;
  height: 1rem;
  transform: translateY(-50%);
  pointer-events: none;
  fill: #525252;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--search-magnifier {
    fill: ButtonText;
  }
}
.bx--search-close {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: absolute;
  top: 0;
  right: 0;
}
.bx--search-close::-moz-focus-inner {
  border: 0;
}
.bx--search-close::before {
  position: absolute;
  top: 0.0625rem;
  left: 0;
  display: block;
  width: 2px;
  height: calc(100% - 2px);
  background-color: #ffffff;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  content: "";
}
.bx--search-close:hover {
  border-bottom: 1px solid #8d8d8d;
}
.bx--search-close:hover::before {
  background-color: #e5e5e5;
}
.bx--search-button {
  flex-shrink: 0;
  margin-left: 0.125rem;
  background-color: #ffffff;
}
.bx--search-button svg {
  vertical-align: middle;
  fill: currentColor;
}
.bx--search-close svg {
  fill: inherit;
}
@media screen and (prefers-contrast) {
  .bx--search-close svg {
    fill: ButtonText;
  }
}
.bx--search-close,
.bx--search-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-color: transparent;
  border-style: solid;
  border-width: 1px 0;
  visibility: inherit;
  cursor: pointer;
  opacity: 1;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9), border 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
.bx--search-close:hover,
.bx--search-button:hover {
  background-color: #e5e5e5;
}
.bx--search-close:focus,
.bx--search-button:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--search-close:active,
.bx--search-button:active {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  background-color: #e0e0e0;
}
.bx--search--disabled .bx--search-close {
  outline: none;
  cursor: not-allowed;
}
.bx--search--disabled .bx--search-close:hover {
  background-color: transparent;
  border-bottom-color: transparent;
}
.bx--search--disabled .bx--search-close:hover::before {
  background-color: transparent;
}
.bx--search--disabled svg {
  fill: #c6c6c6;
}
.bx--search-close:focus::before,
.bx--search-close:active::before {
  background-color: #0f62fe;
}
.bx--search-input:focus ~ .bx--search-close:hover {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--search--sm .bx--search-close,
.bx--search--sm ~ .bx--search-button {
  width: 2rem;
  height: 2rem;
}
.bx--search--lg .bx--search-close,
.bx--search--lg ~ .bx--search-button {
  width: 2.5rem;
  height: 2.5rem;
}
.bx--search--xl .bx--search-close,
.bx--search--xl ~ .bx--search-button {
  width: 3rem;
  height: 3rem;
}
.bx--search-close--hidden {
  visibility: hidden;
  opacity: 0;
}
.bx--search--xl.bx--skeleton .bx--search-input,
.bx--search--lg.bx--skeleton .bx--search-input,
.bx--search--sm.bx--skeleton .bx--search-input {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 100%;
}
.bx--search--xl.bx--skeleton .bx--search-input:hover, .bx--search--xl.bx--skeleton .bx--search-input:focus, .bx--search--xl.bx--skeleton .bx--search-input:active,
.bx--search--lg.bx--skeleton .bx--search-input:hover,
.bx--search--lg.bx--skeleton .bx--search-input:focus,
.bx--search--lg.bx--skeleton .bx--search-input:active,
.bx--search--sm.bx--skeleton .bx--search-input:hover,
.bx--search--sm.bx--skeleton .bx--search-input:focus,
.bx--search--sm.bx--skeleton .bx--search-input:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--search--xl.bx--skeleton .bx--search-input::before,
.bx--search--lg.bx--skeleton .bx--search-input::before,
.bx--search--sm.bx--skeleton .bx--search-input::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--search--xl.bx--skeleton .bx--search-input::before,
.bx--search--lg.bx--skeleton .bx--search-input::before,
.bx--search--sm.bx--skeleton .bx--search-input::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--search--xl.bx--skeleton .bx--search-input::-moz-placeholder, .bx--search--lg.bx--skeleton .bx--search-input::-moz-placeholder, .bx--search--sm.bx--skeleton .bx--search-input::-moz-placeholder {
  color: transparent;
}
.bx--search--xl.bx--skeleton .bx--search-input::placeholder,
.bx--search--lg.bx--skeleton .bx--search-input::placeholder,
.bx--search--sm.bx--skeleton .bx--search-input::placeholder {
  color: transparent;
}
.bx--select {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.bx--select-input__wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.bx--select-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: block;
  width: 14rem;
  min-width: 8rem;
  max-width: 28rem;
  height: 2.5rem;
  padding: 0 3rem 0 1rem;
  color: #161616;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  border-radius: 0;
  cursor: pointer;
  transition: outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.bx--select-input:hover {
  background-color: #e5e5e5;
}
.bx--select-input::-ms-expand {
  display: none;
}
@-moz-document url-prefix() {
  .bx--select-input:-moz-focusring, .bx--select-input::-moz-focus-inner {
    color: transparent;
    text-shadow: 0 0 0 #000000;
    background-image: none;
  }
}
.bx--select-input:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  color: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--select-input:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--select-input:disabled, .bx--select-input:hover:disabled {
  color: #c6c6c6;
  background-color: #ffffff;
  border-bottom-color: #ffffff;
  cursor: not-allowed;
}
.bx--select-input--sm {
  height: 2rem;
  max-height: 2rem;
}
.bx--select-input--xl {
  height: 3rem;
  max-height: 3rem;
}
.bx--select--disabled .bx--label,
.bx--select--disabled .bx--form__helper-text {
  color: #c6c6c6;
}
.bx--select-input__wrapper[data-invalid] .bx--select-input {
  padding-right: 5rem;
}
.bx--select-input:disabled ~ .bx--select__arrow {
  fill: #c6c6c6;
}
.bx--select--light .bx--select-input {
  background-color: #f4f4f4;
}
.bx--select--light .bx--select-input:hover {
  background-color: #e5e5e5;
}
.bx--select--light .bx--select-input:disabled, .bx--select--light .bx--select-input:hover:disabled {
  color: #c6c6c6;
  background-color: #ffffff;
  cursor: not-allowed;
}
.bx--select__arrow {
  position: absolute;
  top: 0;
  right: 1rem;
  height: 100%;
  pointer-events: none;
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--select__arrow path {
    fill: ButtonText;
  }
}
.bx--select-input__wrapper[data-invalid] .bx--select-input ~ .bx--select__invalid-icon {
  position: absolute;
  right: 3rem;
  fill: #da1e28;
}
.bx--select-optgroup,
.bx--select-option {
  color: #161616;
}
.bx--select-option[disabled] {
  cursor: not-allowed;
  opacity: 0.5;
}
@-moz-document url-prefix() {
  .bx--select-option {
    color: #161616;
    background-color: #ffffff;
  }

  .bx--select-optgroup {
    color: #161616;
  }
}
.bx--select--inline {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.bx--select--inline.bx--select--invalid .bx--label,
.bx--select--inline.bx--select--invalid .bx--form__helper-text {
  align-self: flex-start;
  margin-top: 0.8125rem;
}
.bx--select--inline .bx--form__helper-text {
  margin-bottom: 0;
  margin-left: 0.5rem;
}
.bx--select--inline .bx--label {
  margin: 0 0.5rem 0 0;
  white-space: nowrap;
}
.bx--select--inline .bx--select-input {
  padding-right: 2rem;
  padding-left: 0.5rem;
  color: #161616;
  background-color: transparent;
  border-bottom: none;
}
.bx--select--inline .bx--select-input[disabled],
.bx--select--inline .bx--select-input[disabled]:hover {
  background-color: #ffffff;
}
.bx--select--inline .bx--select__arrow {
  right: 0.5rem;
}
.bx--select--inline.bx--select--invalid .bx--select-input {
  padding-right: 3.5rem;
}
.bx--select--inline.bx--select--invalid .bx--select-input ~ .bx--select__invalid-icon {
  right: 2rem;
}
.bx--select--inline .bx--select-input:disabled {
  color: #c6c6c6;
  cursor: not-allowed;
}
.bx--select--inline .bx--select-input:disabled ~ * {
  cursor: not-allowed;
}
.bx--select.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 100%;
  height: 2.5rem;
}
.bx--select.bx--skeleton:hover, .bx--select.bx--skeleton:focus, .bx--select.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--select.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--select.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--select.bx--skeleton .bx--select-input {
  display: none;
}
.bx--text-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  width: 100%;
  height: 2.5rem;
  padding: 0 1rem;
  color: #161616;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--text-input:focus, .bx--text-input:active {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--text-input-wrapper svg[hidden] {
  display: none;
}
.bx--text-input--xl {
  height: 3rem;
}
.bx--text-input--sm {
  height: 2rem;
}
.bx--password-input {
  padding-right: 2.5rem;
}
.bx--text-input::-moz-placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--text-input::placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--text-input--light {
  background-color: #f4f4f4;
}
.bx--text-input__field-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.bx--text-input__field-wrapper .bx--text-input__invalid-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  fill: #da1e28;
}
.bx--text-input__field-wrapper .bx--text-input__invalid-icon--warning {
  fill: #f1c21b;
}
.bx--text-input__field-wrapper .bx--text-input__invalid-icon--warning path[data-icon-path=inner-path] {
  opacity: 1;
  fill: #000000;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility:focus {
  outline: 1px solid #0f62fe;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility:focus {
  outline: 1px solid transparent;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--a11y::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--a11y::after {
  transition: none;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::after {
  content: attr(aria-label);
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--a11y::after {
  content: none;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--visible::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--visible::after, .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover::after, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--visible .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--visible + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--visible .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--visible + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility:hover + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility:hover.bx--tooltip--a11y::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility:focus + .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--hidden .bx--assistive-text, .bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::before, .bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility::after,
.bx--text-input__field-wrapper .bx--text-input--password__visibility .bx--assistive-text,
.bx--text-input__field-wrapper .bx--text-input--password__visibility + .bx--assistive-text {
  bottom: -0.8125rem;
  transform: translate(-50%, 100%);
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility,
.bx--text-input__field-wrapper .bx--text-input--password__visibility__toggle.bx--tooltip__trigger {
  position: absolute;
  right: 1rem;
  width: 1rem;
  height: 1rem;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
}
.bx--text-input__field-wrapper .bx--text-input--password__visibility svg,
.bx--text-input__field-wrapper .bx--text-input--password__visibility__toggle.bx--tooltip__trigger svg {
  fill: #525252;
}
.bx--text-input__field-wrapper .bx--text-input--invalid {
  padding-right: 2.5rem;
}
.bx--text-input__field-wrapper .bx--text-input--invalid.bx--password-input {
  padding-right: 4rem;
}
.bx--text-input__field-wrapper .bx--text-input--invalid + .bx--text-input--password__visibility,
.bx--text-input__field-wrapper .bx--text-input--invalid + .bx--text-input--password__visibility__toggle {
  right: 1rem;
}
.bx--password-input-wrapper .bx--text-input__invalid-icon {
  right: 2.5rem;
}
.bx--text-input:disabled + .bx--text-input--password__visibility svg,
.bx--text-input:disabled + .bx--text-input--password__visibility__toggle svg {
  cursor: not-allowed;
  opacity: 0.5;
}
.bx--text-input:disabled {
  outline: 2px solid transparent;
  outline-offset: -2px;
  color: #c6c6c6;
  background-color: #ffffff;
  border-bottom: 1px solid transparent;
  -webkit-text-fill-color: currentColor;
  cursor: not-allowed;
}
.bx--text-input--light:disabled {
  background-color: #f4f4f4;
}
.bx--text-input:disabled::-moz-placeholder {
  color: #c6c6c6;
  opacity: 1;
}
.bx--text-input:disabled::placeholder {
  color: #c6c6c6;
  opacity: 1;
}
.bx--text-input--invalid {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
  box-shadow: none;
}
.bx--text-input--invalid .bx--text-input--password__visibility,
.bx--text-input--invalid .bx--text-input--password__visibility__toggle {
  right: 2.5rem;
}
.bx--form--fluid .bx--text-input-wrapper {
  position: relative;
  background: #ffffff;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--form--fluid .bx--label {
  position: absolute;
  top: 0.8125rem;
  left: 1rem;
  z-index: 1;
  margin: 0;
}
.bx--form--fluid .bx--form__helper-text {
  display: none;
}
.bx--form--fluid .bx--text-input {
  min-height: 4rem;
  padding: 2rem 1rem 0.8125rem;
}
.bx--text-input__divider,
.bx--form--fluid .bx--text-input__divider {
  display: none;
}
.bx--form--fluid .bx--text-input--invalid,
.bx--form--fluid .bx--text-input--warn {
  border-bottom: none;
}
.bx--form--fluid .bx--text-input--invalid + .bx--text-input__divider,
.bx--form--fluid .bx--text-input--warn + .bx--text-input__divider {
  display: block;
  margin: 0 1rem;
  border-color: #e0e0e0;
  border-style: solid;
  border-bottom: none;
}
.bx--form--fluid .bx--text-input__invalid-icon {
  top: 5rem;
}
.bx--form--fluid .bx--text-input-wrapper--light {
  background: #f4f4f4;
}
.bx--form--fluid .bx--text-input__field-wrapper[data-invalid] > .bx--text-input--invalid {
  outline: 2px solid transparent;
  outline-offset: -2px;
}
.bx--form--fluid .bx--text-input__field-wrapper[data-invalid]:not(:focus) {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
}
.bx--form--fluid .bx--text-input__field-wrapper[data-invalid] > .bx--text-input--invalid:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--text-input-wrapper--inline {
  flex-flow: row wrap;
}
.bx--label--inline {
  flex: 1;
  margin: 0.8125rem 0 0 0;
  word-break: break-word;
  overflow-wrap: break-word;
}
.bx--label--inline--sm {
  margin-top: 0.5625rem;
}
.bx--label--inline--xl {
  margin-top: 1.0625rem;
}
.bx--text-input__label-helper-wrapper {
  flex: 2;
  flex-direction: column;
  max-width: 8rem;
  margin-right: 1.5rem;
  overflow-wrap: break-word;
}
.bx--form__helper-text--inline {
  margin-top: 0.125rem;
}
.bx--text-input__field-outer-wrapper {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}
.bx--text-input__field-outer-wrapper--inline {
  flex: 8;
  flex-direction: column;
}
.bx--text-area {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  width: 100%;
  min-width: 10rem;
  height: 100%;
  min-height: 2.5rem;
  padding: 0.6875rem 1rem;
  color: #161616;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  resize: vertical;
}
.bx--text-area:focus,
.bx--text-area:active {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--text-area::-moz-placeholder {
  color: #6f6f6f;
  opacity: 1;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
}
.bx--text-area::placeholder {
  color: #6f6f6f;
  opacity: 1;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
}
.bx--text-area--light {
  background-color: #f4f4f4;
}
.bx--text-area--invalid {
  padding-right: 2.5rem;
}
.bx--text-area__wrapper {
  position: relative;
  display: flex;
  width: 100%;
}
.bx--text-area__invalid-icon {
  position: absolute;
  top: 0.75rem;
  right: 1rem;
  fill: #da1e28;
}
.bx--text-area:disabled {
  color: #c6c6c6;
  background-color: #ffffff;
  border-bottom: 1px solid transparent;
  outline: none;
  cursor: not-allowed;
}
.bx--text-area:disabled::-moz-placeholder {
  color: #c6c6c6;
}
.bx--text-area:disabled::placeholder {
  color: #c6c6c6;
}
.bx--text-area.bx--text-area--light:disabled {
  background-color: #f4f4f4;
}
bx--text-area.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  height: 6.25rem;
}
bx--text-area.bx--skeleton:hover, bx--text-area.bx--skeleton:focus, bx--text-area.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
bx--text-area.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  bx--text-area.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
bx--text-area.bx--skeleton::-moz-placeholder {
  color: transparent;
}
bx--text-area.bx--skeleton::placeholder {
  color: transparent;
}
.bx--number {
  position: relative;
  display: flex;
  flex-direction: column;
}
.bx--number input[type=number] {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: inline-flex;
  box-sizing: border-box;
  width: 100%;
  min-width: 9.375rem;
  height: 2.5rem;
  padding-right: 2rem;
  padding-left: 1rem;
  color: #161616;
  font-weight: 300;
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  border-radius: 0;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -moz-appearance: textfield;
}
.bx--number input[type=number]:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--number input[type=number]:disabled ~ .bx--number__controls {
  cursor: not-allowed;
  pointer-events: none;
}
.bx--number input[type=number]:disabled ~ .bx--number__controls svg {
  fill: #c6c6c6;
}
.bx--number input[type=number]::-ms-clear {
  display: none;
}
.bx--number input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
          appearance: none;
}
.bx--number input[type=number]:disabled,
.bx--number--readonly input[type=number] {
  color: #c6c6c6;
  background-color: #ffffff;
  border-bottom-color: transparent;
  cursor: not-allowed;
}
.bx--number__input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.bx--number__controls {
  position: absolute;
  top: 50%;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--number__controls {
    outline: 1px solid transparent;
    outline-offset: -1px;
  }
}
.bx--number__control-btn {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 1.25rem;
  color: #161616;
}
.bx--number__control-btn::-moz-focus-inner {
  border: 0;
}
.bx--number__control-btn svg {
  position: relative;
  fill: currentColor;
}
.bx--number__control-btn.up-icon svg {
  top: 0.3125rem;
}
.bx--number__control-btn.down-icon svg {
  top: -0.3125rem;
}
.bx--number__control-btn:focus {
  outline: 1px solid #0f62fe;
  color: #161616;
  outline-width: 2px;
  outline-offset: -2px;
}
.bx--number__control-btn:hover {
  color: #161616;
  cursor: pointer;
}
.bx--number__control-btn:disabled {
  color: #c6c6c6;
  cursor: not-allowed;
}
.bx--number--readonly .bx--number__control-btn {
  display: none;
}
.bx--number__invalid {
  position: absolute;
  right: 2rem;
  fill: #da1e28;
}
.bx--number__invalid--warning {
  fill: #f1c21b;
}
.bx--number__invalid--warning path[data-icon-path=inner-path] {
  opacity: 1;
  fill: #000000;
}
.bx--number--light input[type=number] {
  background-color: #f4f4f4;
}
.bx--number--light input[type=number]:disabled,
.bx--number--light .bx--number--readonly input[type=number] {
  background-color: #f4f4f4;
}
.bx--number--mobile {
  width: auto;
  min-width: 9rem;
}
.bx--number--mobile .bx--number__control-btn, .bx--number--mobile.bx--number--light .bx--number__control-btn {
  position: static;
  width: 2.5rem;
  height: 2.5rem;
  background-color: #ffffff;
}
.bx--number--mobile .bx--number__control-btn:hover, .bx--number--mobile .bx--number__control-btn:focus, .bx--number--mobile.bx--number--light .bx--number__control-btn:hover, .bx--number--mobile.bx--number--light .bx--number__control-btn:focus {
  background-color: #e5e5e5;
}
.bx--number--mobile .bx--number__control-btn:focus, .bx--number--mobile.bx--number--light .bx--number__control-btn:focus {
  outline-width: 2px;
  outline-offset: -2px;
}
.bx--number--mobile .bx--number__control-btn svg, .bx--number--mobile.bx--number--light .bx--number__control-btn svg {
  position: static;
}
.bx--number--mobile input[type=number] {
  width: auto;
  min-width: 4rem;
  margin: 0;
  padding: 0;
  text-align: center;
  background-color: #ffffff;
  border-right: 1px solid #e0e0e0;
  border-left: 1px solid #e0e0e0;
}
.bx--number--mobile.bx--number--light input[type=number] {
  background-color: #f4f4f4;
}
.bx--number--mobile.bx--number--light .bx--number__control-btn {
  background-color: #f4f4f4;
}
.bx--number--xl input[type=number] {
  height: 3rem;
}
.bx--number--xl .bx--number__control-btn {
  height: 1.5rem;
}
.bx--number--xl.bx--number--mobile .bx--number__control-btn {
  width: 3rem;
  height: 3rem;
}
.bx--number--xl .bx--number__control-btn.up-icon svg {
  top: 0.4125rem;
}
.bx--number--xl .bx--number__control-btn.down-icon svg {
  top: -0.4125rem;
}
.bx--number--sm input[type=number] {
  height: 2rem;
}
.bx--number--sm .bx--number__control-btn {
  height: 1rem;
}
.bx--number--sm.bx--number--mobile .bx--number__control-btn {
  width: 2rem;
  height: 2rem;
}
.bx--number--sm .bx--number__control-btn.up-icon svg {
  top: 0.2125rem;
}
.bx--number--sm .bx--number__control-btn.down-icon svg {
  top: -0.2125rem;
}
.bx--number--nolabel .bx--label + .bx--form__helper-text {
  margin-top: 0;
}
.bx--number.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 100%;
  height: 2.5rem;
}
.bx--number.bx--skeleton:hover, .bx--number.bx--skeleton:focus, .bx--number.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--number.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--number.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--number.bx--skeleton input[type=number] {
  display: none;
}
.bx--link {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  color: #0f62fe;
  text-decoration: none;
  outline: none;
  transition: color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--link:hover {
  color: #0043ce;
  text-decoration: underline;
}
.bx--link:active, .bx--link:active:visited, .bx--link:active:visited:hover {
  color: #161616;
  text-decoration: underline;
}
.bx--link:focus {
  outline: 1px solid #0f62fe;
}
.bx--link:visited {
  color: #0f62fe;
}
.bx--link:visited:hover {
  color: #0043ce;
}
.bx--link--disabled,
.bx--link--disabled:hover {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: inline;
  color: #c6c6c6;
  font-weight: 400;
  text-decoration: none;
  cursor: not-allowed;
}
.bx--link.bx--link--visited:visited {
  color: #8a3ffc;
}
.bx--link.bx--link--visited:visited:hover {
  color: #0043ce;
}
.bx--link.bx--link--inline {
  text-decoration: underline;
}
.bx--link.bx--link--inline:hover {
  color: #0043ce;
}
.bx--link.bx--link--inline:focus, .bx--link.bx--link--inline:visited {
  text-decoration: none;
}
.bx--link--disabled.bx--link--inline {
  text-decoration: underline;
}
.bx--link--sm {
  font-size: 0.75rem;
  line-height: 1.34;
  letter-spacing: 0.32px;
}
.bx--link--lg {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.375;
  letter-spacing: 0;
}
.bx--list--nested,
.bx--list--unordered,
.bx--list--ordered,
.bx--list--ordered--native {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  list-style: none;
}
.bx--list--ordered--native {
  list-style: decimal;
}
.bx--list__item {
  color: #161616;
}
.bx--list--nested {
  margin-left: 1.5rem;
}
.bx--list--ordered:not(.bx--list--nested) {
  counter-reset: item;
}
.bx--list--ordered:not(.bx--list--nested) > .bx--list__item {
  position: relative;
}
.bx--list--ordered:not(.bx--list--nested) > .bx--list__item::before {
  position: absolute;
  left: -1.5rem;
  content: counter(item) ".";
  counter-increment: item;
}
.bx--list--ordered.bx--list--nested,
.bx--list--ordered--native.bx--list--nested {
  list-style-type: lower-latin;
}
.bx--list--unordered > .bx--list__item {
  position: relative;
}
.bx--list--unordered > .bx--list__item::before {
  position: absolute;
  left: -1rem;
  content: "–";
}
.bx--list--unordered.bx--list--nested > .bx--list__item::before {
  left: -0.75rem;
  content: "▪";
}
.bx--table-toolbar {
  position: relative;
  display: flex;
  width: 100%;
  height: 3rem;
  overflow: hidden;
  background: #ffffff;
}
.bx--toolbar-content {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  height: 3rem;
  transform: translate3d(0, 0, 0);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), -webkit-clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9), -webkit-clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--batch-actions ~ .bx--toolbar-content {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.bx--toolbar-content .bx--search .bx--search-input {
  background-color: transparent;
}
.bx--batch-actions ~ .bx--toolbar-search-container {
  display: flex;
  align-items: center;
  opacity: 1;
  transition: opacity 110ms;
}
.bx--toolbar-search-container-expandable {
  position: relative;
  width: 3rem;
  height: 3rem;
  box-shadow: none;
  transition: flex 240ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--toolbar-search-container-expandable .bx--search {
  position: initial;
  width: 3rem;
  height: 100%;
}
.bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier {
  left: 0;
  width: 3rem;
  height: 3rem;
  padding: 1rem;
  cursor: pointer;
  transition: background 110ms cubic-bezier(0, 0, 0.38, 0.9);
  pointer-events: all;
}
.bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier:hover {
  background: #e5e5e5;
}
.bx--toolbar-search-container-expandable .bx--search .bx--label {
  visibility: hidden;
}
.bx--toolbar-search-container-expandable .bx--search .bx--search-input {
  height: 100%;
  padding: 0;
  background-color: transparent;
  border: none;
  visibility: hidden;
}
.bx--toolbar-search-container-expandable .bx--search .bx--search-close {
  width: 3rem;
  height: 3rem;
}
.bx--toolbar-search-container-expandable .bx--search .bx--search-close::before {
  top: 2px;
  height: calc(100% - 4px);
  background-color: #e5e5e5;
}
.bx--toolbar-search-container-expandable .bx--search .bx--search-close:focus::before {
  background-color: #0f62fe;
}
.bx--toolbar-search-container-active {
  flex: auto;
  transition: flex 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--toolbar-search-container-active .bx--search {
  width: 100%;
}
.bx--toolbar-search-container-active .bx--search .bx--label,
.bx--toolbar-search-container-active .bx--search .bx--search-input {
  padding: 0 3rem;
  visibility: inherit;
}
.bx--toolbar-search-container-active .bx--search .bx--search-input:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  box-shadow: inset 0 0 0 2px #0f62fe;
}
.bx--toolbar-search-container-active .bx--search .bx--search-input:focus + .bx--search-close {
  border: none;
  outline: none;
  box-shadow: none;
}
.bx--toolbar-search-container-active .bx--search .bx--search-input:not(:-moz-placeholder-shown) {
  background: #e5e5e5;
  border: none;
}
.bx--toolbar-search-container-active .bx--search .bx--search-input:not(:placeholder-shown) {
  background: #e5e5e5;
  border: none;
}
.bx--toolbar-search-container-active .bx--search .bx--search-magnifier:focus,
.bx--toolbar-search-container-active .bx--search .bx--search-magnifier:active,
.bx--toolbar-search-container-active .bx--search .bx--search-magnifier:hover {
  background: transparent;
  border: none;
  outline: none;
}
.bx--toolbar-search-container-persistent .bx--search-close,
.bx--toolbar-search-container-persistent .bx--search-close:hover,
.bx--toolbar-search-container-active .bx--search .bx--search-close,
.bx--toolbar-search-container-active .bx--search .bx--search-close:hover {
  background-color: transparent;
  border: none;
}
.bx--toolbar-search-container-persistent .bx--search-close::before {
  display: none;
}
.bx--overflow-menu.bx--toolbar-action {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  display: flex;
  width: 3rem;
  height: 3rem;
  padding: 1rem;
  cursor: pointer;
  transition: background 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu.bx--toolbar-action::-moz-focus-inner {
  border: 0;
}
.bx--toolbar-action {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  display: flex;
  width: 3rem;
  height: 3rem;
  cursor: pointer;
  transition: background 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--toolbar-action::-moz-focus-inner {
  border: 0;
}
.bx--toolbar-action:hover:not([disabled]) {
  background: #e5e5e5;
}
.bx--toolbar-action:hover[aria-expanded=true] {
  background: #ffffff;
}
.bx--toolbar-action[disabled] {
  cursor: not-allowed;
}
.bx--toolbar-action[disabled] .bx--toolbar-action__icon {
  cursor: not-allowed;
  fill: #c6c6c6;
}
.bx--toolbar-action:focus:not([disabled]),
.bx--toolbar-action:active:not([disabled]) {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--toolbar-action:focus:not([disabled]).bx--toolbar-search-container-expandable,
.bx--toolbar-action:active:not([disabled]).bx--toolbar-search-container-expandable {
  outline: none;
}
.bx--toolbar-action ~ .bx--btn {
  max-width: none;
  margin: 0;
  white-space: nowrap;
}
.bx--overflow-menu--data-table {
  height: 3rem;
}
.bx--toolbar-action__icon {
  width: auto;
  max-width: 1rem;
  height: 1rem;
  fill: #161616;
}
.bx--toolbar-search-container-persistent {
  position: relative;
  width: 100%;
  height: 3rem;
  opacity: 1;
}
.bx--toolbar-search-container-persistent + .bx--toolbar-content {
  position: relative;
  width: auto;
}
.bx--toolbar-search-container-persistent .bx--search {
  position: initial;
}
.bx--toolbar-search-container-persistent .bx--search .bx--search-magnifier {
  left: 1rem;
}
.bx--toolbar-search-container-persistent .bx--search .bx--search-input {
  height: 3rem;
  padding: 0 3rem;
  border: none;
}
.bx--toolbar-search-container-persistent .bx--search .bx--search-input:focus:not([disabled]) {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--toolbar-search-container-persistent .bx--search .bx--search-input:hover:not([disabled]) {
  background: #e5e5e5;
}
.bx--toolbar-search-container-persistent .bx--search .bx--search-input:not(:-moz-placeholder-shown) {
  background: #e5e5e5;
}
.bx--toolbar-search-container-persistent .bx--search .bx--search-input:active:not([disabled]),
.bx--toolbar-search-container-persistent .bx--search .bx--search-input:not(:placeholder-shown) {
  background: #e5e5e5;
}
.bx--toolbar-search-container-persistent .bx--search .bx--search-close {
  width: 3rem;
  height: 3rem;
}
.bx--batch-actions--active ~ .bx--toolbar-search-container,
.bx--batch-actions--active ~ .bx--toolbar-content {
  transform: translate3d(0, 48px, 0);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), -webkit-clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9), -webkit-clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
          clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
}
.bx--batch-actions {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  overflow-x: auto;
  background-color: #0f62fe;
  transform: translate3d(0, 48px, 0);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), -webkit-clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9), opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9), opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), -webkit-clip-path 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
          clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  pointer-events: none;
  will-change: transform;
}
.bx--batch-actions:focus {
  outline: 1px solid #0f62fe;
}
.bx--batch-actions--active {
  transform: translate3d(0, 0, 0);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  pointer-events: all;
}
.bx--action-list {
  position: absolute;
  right: 0;
  display: flex;
}
.bx--action-list .bx--btn {
  min-width: 0;
  padding: calc(0.875rem - 3px) 16px;
  color: #ffffff;
}
.bx--action-list .bx--btn:disabled {
  color: #8d8d8d;
}
.bx--action-list .bx--btn .bx--btn__icon {
  position: static;
  margin-left: 0.5rem;
  fill: #ffffff;
}
.bx--action-list .bx--btn .bx--btn__icon .st0 {
  fill: none;
}
.bx--batch-download {
  padding: 0.0625rem;
}
.bx--action-list .bx--btn--primary:focus::before,
.bx--action-list .bx--btn--primary::before,
.bx--action-list .bx--btn--primary:focus::after,
.bx--action-list .bx--btn--primary::after {
  display: none;
}
.bx--action-list .bx--btn--primary:focus {
  outline: 2px solid #ffffff;
  outline-offset: -0.125rem;
}
.bx--action-list .bx--btn--primary:nth-child(3):hover + .bx--btn--primary.bx--batch-summary__cancel::before,
.bx--action-list .bx--btn--primary:nth-child(3):focus + .bx--btn--primary.bx--batch-summary__cancel::before {
  opacity: 0;
}
.bx--btn--primary.bx--batch-summary__cancel::before {
  position: absolute;
  top: 0.9375rem;
  left: 0;
  display: block;
  width: 0.0625rem;
  height: 1rem;
  background-color: #ffffff;
  border: none;
  opacity: 1;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  content: "";
}
.bx--btn--primary.bx--batch-summary__cancel:hover::before {
  opacity: 0;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--batch-summary__cancel {
  position: relative;
  padding-right: 1rem;
}
.bx--batch-summary {
  position: absolute;
  left: 0;
  display: flex;
  align-items: center;
  margin-left: 1rem;
  color: #ffffff;
}
.bx--batch-summary__para {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
.bx--table-toolbar--small {
  height: 2rem;
}
.bx--table-toolbar--small .bx--toolbar-search-container-expandable,
.bx--table-toolbar--small .bx--toolbar-search-container-persistent {
  height: 2rem;
}
.bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-input,
.bx--table-toolbar--small .bx--toolbar-search-container-persistent .bx--search .bx--search-input {
  height: 2rem;
}
.bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-close,
.bx--table-toolbar--small .bx--toolbar-search-container-persistent .bx--search .bx--search-close {
  width: 2rem;
  height: 2rem;
}
.bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-magnifier,
.bx--table-toolbar--small .bx--toolbar-search-container-persistent .bx--search .bx--search-magnifier {
  width: 2rem;
  height: 2rem;
  padding: 0.5rem;
}
.bx--table-toolbar--small .bx--toolbar-search-container-expandable {
  width: 2rem;
}
.bx--table-toolbar--small .bx--toolbar-search-container-expandable .bx--search .bx--search-input {
  padding: 0 3rem;
}
.bx--table-toolbar--small .bx--toolbar-search-container-active {
  flex: auto;
  transition: flex 175ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input {
  visibility: inherit;
}
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  background: #e5e5e5;
}
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input:not(:-moz-placeholder-shown) {
  background: #e5e5e5;
}
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input:active,
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-input:not(:placeholder-shown) {
  background: #e5e5e5;
}
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-magnifier:focus,
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-magnifier:active,
.bx--table-toolbar--small .bx--toolbar-search-container-active .bx--search .bx--search-magnifier:hover {
  outline: 2px solid transparent;
  outline-offset: -2px;
  background: transparent;
}
.bx--table-toolbar--small .bx--batch-actions .bx--action-list {
  height: 2rem;
}
.bx--table-toolbar--small .bx--toolbar-action {
  width: 2rem;
  height: 2rem;
  padding: 0.5rem 0;
}
.bx--table-toolbar--small .bx--btn--primary {
  height: 2rem;
  min-height: auto;
  padding-top: calc(0.375rem - 3px);
  padding-bottom: calc(0.375rem - 3px);
}
.bx--table-toolbar--small .bx--btn--primary.bx--batch-summary__cancel::before {
  top: 0.5rem;
}
.bx--table-toolbar--small .bx--toolbar-action ~ .bx--btn {
  height: 2rem;
  overflow: hidden;
}
.bx--data-table-container {
  padding-top: 0.125rem;
}
.bx--data-table-content {
  overflow-x: auto;
}
.bx--data-table-header {
  padding: 1rem 0 1.5rem 1rem;
  background: #ffffff;
}
.bx--data-table-header__title {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  color: #161616;
}
.bx--data-table-header__description {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  color: #525252;
}
.bx--data-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
.bx--data-table thead {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  background-color: #e0e0e0;
}
.bx--data-table tbody {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  width: 100%;
  background-color: #ffffff;
}
.bx--data-table tr {
  width: 100%;
  height: 3rem;
  border: none;
}
.bx--data-table tbody tr,
.bx--data-table tbody tr td,
.bx--data-table tbody tr th {
  transition: background-color 70ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--data-table tbody tr:hover {
  background: #e5e5e5;
}
.bx--data-table tbody tr:hover td,
.bx--data-table tbody tr:hover th {
  color: #161616;
  background: #e5e5e5;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}
.bx--data-table th,
.bx--data-table td {
  text-align: left;
  vertical-align: middle;
}
.bx--data-table td {
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--data-table th {
  color: #161616;
  background-color: #e0e0e0;
}
.bx--data-table th:last-of-type {
  position: static;
  width: auto;
}
.bx--data-table .bx--table-header-label {
  padding-right: 1rem;
  padding-left: 1rem;
  text-align: left;
}
.bx--data-table td,
.bx--data-table tbody th {
  padding-right: 1rem;
  padding-left: 1rem;
  color: #525252;
  background: #ffffff;
  border-top: 1px solid #ffffff;
  border-bottom: 1px solid #e0e0e0;
}
.bx--data-table td + td:first-of-type,
.bx--data-table tbody th + td:first-of-type {
  padding-left: 0.75rem;
}
@supports (-moz-appearance: none) {
  .bx--data-table td {
    background-clip: padding-box;
  }
}
.bx--data-table td.bx--table-column-menu .bx--overflow-menu[aria-expanded=false]:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--data-table td.bx--table-column-menu .bx--overflow-menu[aria-expanded=true]:focus {
  outline: none;
}
@media screen and (hover: hover), (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .bx--data-table td.bx--table-column-menu .bx--overflow-menu .bx--overflow-menu__icon {
    opacity: 0;
  }
}
.bx--data-table td.bx--table-column-menu .bx--overflow-menu.bx--overflow-menu--open .bx--overflow-menu__icon {
  opacity: 1;
}
.bx--data-table.bx--data-table--visible-overflow-menu td.bx--table-column-menu .bx--overflow-menu .bx--overflow-menu__icon,
.bx--data-table td.bx--table-column-menu .bx--overflow-menu:hover .bx--overflow-menu__icon,
.bx--data-table td.bx--table-column-menu .bx--overflow-menu:focus .bx--overflow-menu__icon,
.bx--data-table tr:hover td.bx--table-column-menu .bx--overflow-menu .bx--overflow-menu__icon {
  opacity: 1;
}
.bx--table-row--menu-option .bx--overflow-menu-options__btn .bx--overflow-menu-options__option-content svg {
  position: relative;
  top: 0.1875rem;
  margin-right: 0.5rem;
}
.bx--data-table .bx--overflow-menu:hover,
.bx--data-table .bx--overflow-menu__trigger:hover {
  background-color: #cacaca;
}
.bx--data-table--selected .bx--overflow-menu:hover,
.bx--data-table--selected .bx--overflow-menu__trigger:hover {
  background-color: #e5e5e5;
}
.bx--data-table--compact td.bx--table-column-menu,
.bx--data-table--short td.bx--table-column-menu {
  height: 1.5rem;
  padding-top: 0;
  padding-bottom: 0;
}
.bx--data-table--short td.bx--table-column-menu {
  height: 2rem;
}
.bx--data-table--tall .bx--table-column-menu {
  padding-top: 0.5rem;
}
.bx--data-table--zebra tbody tr:not(.bx--parent-row):nth-child(odd) td {
  border-bottom: 1px solid #ffffff;
}
.bx--data-table--zebra tbody tr:not(.bx--parent-row):nth-child(even) td {
  background-color: #f4f4f4;
  border-top: 1px solid #f4f4f4;
  border-bottom: 1px solid #f4f4f4;
}
.bx--data-table--zebra tbody tr:not(.bx--parent-row):hover td {
  background-color: #e5e5e5;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}
.bx--table-column-checkbox .bx--checkbox-label {
  padding-left: 1rem;
}
.bx--data-table th.bx--table-column-checkbox {
  position: static;
  width: 2.75rem;
  padding-right: 1rem;
  padding-left: 1rem;
  background: #e0e0e0;
  transition: background-color 70ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--data-table thead th.bx--table-column-checkbox,
.bx--data-table tbody td.bx--table-column-checkbox,
.bx--data-table thead th.bx--table-expand,
.bx--data-table tbody td.bx--table-expand {
  min-width: 0;
  padding-right: 0;
  padding-left: 1rem;
}
.bx--data-table thead th.bx--table-column-checkbox,
.bx--data-table tbody td.bx--table-column-checkbox {
  width: 2.25rem;
}
.bx--data-table thead th.bx--table-expand,
.bx--data-table tbody td.bx--table-expand {
  width: 2rem;
}
.bx--data-table--tall .bx--table-column-checkbox {
  padding-top: 0.8125rem;
}
.bx--data-table--tall .bx--table-column-radio {
  padding-top: 1rem;
}
.bx--date-table tbody th.bx--table-column-checkbox:hover {
  background: #cacaca;
}
.bx--table-column-radio {
  width: 48px;
}
.bx--table-column-radio .bx--radio-button__appearance {
  margin-right: -0.125rem;
}
.bx--data-table--zebra tbody tr:nth-child(odd).bx--data-table--selected td,
tr.bx--data-table--selected td {
  color: #161616;
  background-color: #e0e0e0;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #c6c6c6;
}
.bx--data-table--zebra tbody tr:first-of-type:nth-child(odd).bx--data-table--selected td,
tr.bx--data-table--selected:first-of-type td {
  border-top: 1px solid #c6c6c6;
}
.bx--data-table--zebra tbody tr:last-of-type:nth-child(odd).bx--data-table--selected td,
.bx--data-table--zebra tbody tr:last-of-type:nth-child(even).bx--data-table--selected td,
tr.bx--data-table--selected:last-of-type td {
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
.bx--data-table--zebra tbody tr:nth-child(even).bx--data-table--selected td {
  border-bottom: 1px solid #c6c6c6;
}
.bx--data-table--zebra tbody tr:nth-child(even).bx--data-table--selected:hover td {
  border-bottom: 1px solid #cacaca;
}
.bx--data-table--zebra tbody tr:nth-child(odd).bx--data-table--selected:hover td,
.bx--data-table tbody .bx--data-table--selected:hover td {
  color: #161616;
  background: #cacaca;
  border-top: 1px solid #cacaca;
  border-bottom: 1px solid #cacaca;
}
.bx--data-table--selected .bx--overflow-menu .bx--overflow-menu__icon {
  opacity: 1;
}
.bx--data-table--compact thead tr,
.bx--data-table--compact tbody tr,
.bx--data-table--compact tbody tr th {
  height: 1.5rem;
}
.bx--data-table--compact .bx--table-header-label {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}
.bx--data-table--compact td,
.bx--data-table--compact tbody tr th {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}
.bx--data-table--compact .bx--overflow-menu {
  width: 2rem;
  height: 100%;
}
.bx--data-table.bx--data-table--compact .bx--table-column-checkbox {
  padding-top: 0;
  padding-bottom: 0;
}
.bx--data-table.bx--data-table--compact .bx--table-column-checkbox .bx--checkbox-label {
  height: 1.4375rem;
  min-height: 1.4375rem;
}
.bx--data-table--short thead tr,
.bx--data-table--short tbody tr,
.bx--data-table--short tbody tr th {
  height: 2rem;
}
.bx--data-table--short .bx--table-header-label {
  padding-top: 0.4375rem;
  padding-bottom: 0.4375rem;
}
.bx--data-table--short td,
.bx--data-table--short tbody tr th {
  padding-top: 0.4375rem;
  padding-bottom: 0.375rem;
}
.bx--data-table.bx--data-table--short .bx--table-column-checkbox {
  padding-top: 0.1875rem;
  padding-bottom: 0.1875rem;
}
.bx--data-table--short .bx--overflow-menu {
  height: 100%;
}
.bx--data-table--tall thead tr,
.bx--data-table--tall tbody tr,
.bx--data-table--tall tbody tr th {
  height: 4rem;
}
.bx--data-table--tall .bx--table-header-label {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.bx--data-table--tall td,
.bx--data-table--tall tbody tr th {
  padding-top: 1rem;
}
.bx--data-table--tall th,
.bx--data-table--tall td {
  vertical-align: top;
}
.bx--data-table--cell-secondary-text {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
}
.bx--data-table--static {
  width: auto;
}
.bx--data-table_inner-container {
  background-color: #e0e0e0;
  transform: translateZ(0);
}
.bx--data-table--sticky-header {
  display: block;
  overflow-y: scroll;
  /* When using sticky header, with a selection element in the first column, we need to set the last item to a fixed width to match the table body. We only want this to happen when the last table header does not have any text */
}
.bx--data-table--sticky-header thead,
.bx--data-table--sticky-header tbody,
.bx--data-table--sticky-header tr,
.bx--data-table--sticky-header th,
.bx--data-table--sticky-header td {
  display: flex;
}
.bx--data-table--sticky-header thead {
  position: sticky;
  top: 0;
  z-index: 1;
  width: 100%;
  overflow: scroll;
  will-change: transform;
  -ms-overflow-style: none;
}
.bx--data-table--sticky-header thead tr th {
  border-bottom: 1px solid #c6c6c6;
}
.bx--data-table--sticky-header tbody {
  flex-direction: column;
  overflow-x: scroll;
  -ms-overflow-style: none;
  will-change: transform;
}
.bx--data-table--sticky-header tr.bx--parent-row.bx--expandable-row {
  height: auto;
  min-height: 3rem;
}
.bx--data-table--sticky-header tr.bx--expandable-row:not(.bx--parent-row) {
  height: auto;
}
.bx--data-table--sticky-header .bx--table-expand {
  max-width: 3rem;
}
.bx--data-table--sticky-header thead .bx--table-expand {
  align-items: center;
}
.bx--data-table--sticky-header .bx--parent-row {
  min-height: 3rem;
}
.bx--data-table--sticky-header:not(.bx--data-table--compact):not(.bx--data-table--tall):not(.bx--data-table--short) td:not(.bx--table-column-menu):not(.bx--table-column-checkbox) {
  padding-top: 0.875rem;
}
.bx--data-table--sticky-header tr.bx--parent-row.bx--expandable-row:hover + tr[data-child-row] td {
  border-top: 1px solid #e5e5e5;
}
.bx--data-table--sticky-header tr.bx--expandable-row:last-of-type {
  overflow: hidden;
}
.bx--data-table--sticky-header tr.bx--data-table--selected:first-of-type td {
  border-top: none;
}
.bx--data-table--sticky-header thead th.bx--table-column-checkbox,
.bx--data-table--sticky-header tbody tr td.bx--table-column-checkbox {
  align-items: center;
  width: 2.25rem;
  min-width: 2.25rem;
}
.bx--data-table--sticky-header.bx--data-table--tall thead th.bx--table-column-checkbox, .bx--data-table--sticky-header.bx--data-table--tall td.bx--table-column-checkbox {
  align-items: flex-start;
}
.bx--data-table--sticky-header th.bx--table-column-checkbox ~ th:last-of-type:empty {
  max-width: 4rem;
}
.bx--data-table--sticky-header th:empty:not(.bx--table-expand) {
  max-width: 2.25rem;
}
.bx--data-table--sticky-header td.bx--table-column-menu {
  align-items: center;
  height: auto;
  padding-top: 0;
}
.bx--data-table--sticky-header thead::-webkit-scrollbar,
.bx--data-table--sticky-header tbody::-webkit-scrollbar {
  display: none;
}
@-moz-document url-prefix() {
  .bx--data-table--sticky-header thead,
.bx--data-table--sticky-header tbody {
    scrollbar-width: none;
  }
}
.bx--data-table--sticky-header tbody tr:last-of-type {
  border-bottom: 0;
}
.bx--data-table--sticky-header th:not(.bx--table-column-checkbox):not(.bx--table-column-menu):not(.bx--table-expand-v2):not(.bx--table-column-icon),
.bx--data-table--sticky-header td:not(.bx--table-column-checkbox):not(.bx--table-column-menu):not(.bx--table-expand-v2):not(.bx--table-column-icon) {
  width: 100%;
  min-width: 0;
}
.bx--data-table--sticky-header.bx--data-table--compact tr:not(.bx--expandable-row), .bx--data-table--sticky-header.bx--data-table--short tr:not(.bx--expandable-row), .bx--data-table--sticky-header.bx--data-table--tall tr:not(.bx--expandable-row) {
  height: auto;
}
.bx--data-table--sticky-header.bx--data-table--compact tr:not(.bx--expandable-row) {
  min-height: 1.5rem;
}
.bx--data-table--sticky-header.bx--data-table--short tr:not(.bx--expandable-row) {
  min-height: 2rem;
}
.bx--data-table--sticky-header.bx--data-table--tall tr:not(.bx--expandable-row) {
  min-height: 4rem;
}
.bx--data-table--sticky-header.bx--data-table--compact tr td.bx--table-expand {
  padding-top: 0.25rem;
}
.bx--data-table--sticky-header.bx--data-table--short tr td.bx--table-expand {
  padding-top: 0.5rem;
}
.bx--data-table--sticky-header .bx--table-header-label {
  display: block;
  overflow-x: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: calc(100% - 10px);
  padding-top: 0.9375rem;
  padding-bottom: 1rem;
  overflow-y: hidden;
}
.bx--data-table--sticky-header.bx--data-table--compact th .bx--table-header-label {
  padding-top: 0.1875rem;
  padding-bottom: 0;
}
.bx--data-table--sticky-header.bx--data-table--short th .bx--table-header-label {
  padding-top: 0.5rem;
  padding-bottom: 0;
}
.bx--data-table--sticky-header.bx--data-table--tall th .bx--table-header-label {
  padding-top: 1rem;
}
.bx--data-table--sticky-header.bx--data-table--tall th.bx--table-expand {
  display: flex;
  align-items: flex-start;
}
.bx--data-table--sticky-header.bx--data-table--compact tr.bx--parent-row .bx--table-column-checkbox, .bx--data-table--sticky-header.bx--data-table--short tr.bx--parent-row .bx--table-column-checkbox {
  align-items: flex-start;
}
.bx--data-table--max-width {
  max-width: 100%;
}
.bx--data-table--sticky-header {
  max-height: 18.75rem;
}
.bx--data-table .bx--form-item.bx--checkbox-wrapper:last-of-type {
  margin: 0;
}
.bx--data-table--short .bx--form-item.bx--checkbox-wrapper:last-of-type,
.bx--data-table--compact .bx--form-item.bx--checkbox-wrapper:last-of-type {
  margin: -0.1875rem 0;
}
.bx--data-table tr.bx--parent-row:first-of-type td {
  border-top: 1px solid #e0e0e0;
}
.bx--expandable-row--hidden td {
  width: auto;
  padding: 1rem;
  border-top: 0;
}
tr.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] {
  height: 0;
  transition: height 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
tr.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] td {
  padding-top: 0;
  padding-bottom: 0;
  background-color: #e5e5e5;
  border: 0;
  transition: padding 150ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
tr.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] td .bx--child-row-inner-container {
  max-height: 0;
  overflow: hidden;
}
tr.bx--parent-row.bx--expandable-row + tr[data-child-row] {
  transition: height 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
tr.bx--parent-row.bx--expandable-row + tr[data-child-row] td {
  border-bottom: 1px solid #e0e0e0;
  transition: padding-bottom 110ms cubic-bezier(0.2, 0, 0.38, 0.9), transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
tr.bx--parent-row.bx--expandable-row + tr[data-child-row] td .bx--child-row-inner-container {
  max-height: 100%;
}
.bx--parent-row.bx--expandable-row > td,
.bx--parent-row.bx--expandable-row + tr[data-child-row] > td {
  border-bottom: 1px solid #e0e0e0;
  box-shadow: 0 1px #e0e0e0;
}
.bx--parent-row:not(.bx--expandable-row) + tr[data-child-row] > td {
  box-shadow: none;
}
.bx--parent-row.bx--expandable-row > td:first-of-type {
  box-shadow: none;
}
tr.bx--parent-row:not(.bx--expandable-row) td,
tr.bx--parent-row.bx--expandable-row td,
tr.bx--parent-row.bx--expandable-row {
  transition: height 240ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
tr.bx--parent-row:not(.bx--expandable-row):first-of-type:hover td {
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
tr.bx--parent-row.bx--expandable-row:hover td {
  color: #161616;
  background-color: #e5e5e5;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
tr.bx--parent-row.bx--expandable-row:hover td:first-of-type {
  border-bottom: 1px solid #e5e5e5;
}
tr.bx--parent-row.bx--expandable-row:hover + tr[data-child-row] td {
  color: #161616;
  background-color: #e5e5e5;
  border-bottom: 1px solid #e0e0e0;
}
tr.bx--expandable-row--hover + tr[data-child-row] td {
  border-bottom: 1px solid #e0e0e0;
}
tr.bx--expandable-row--hover {
  background-color: #e5e5e5;
}
tr.bx--expandable-row--hover td {
  color: #161616;
  background-color: #e5e5e5;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
tr.bx--parent-row.bx--expandable-row.bx--expandable-row--hover td:first-of-type {
  border-bottom: 1px solid transparent;
}
.bx--data-table td.bx--table-expand {
  width: 2.5rem;
  min-width: 2.5rem;
  border-bottom: 1px solid #e0e0e0;
}
.bx--data-table td.bx--table-expand,
th.bx--table-expand {
  padding: 0 1rem;
}
.bx--data-table--tall td.bx--table-expand,
.bx--data-table--tall th.bx--table-expand {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.bx--data-table td.bx--table-expand[data-previous-value=collapsed] {
  border-bottom: 1px solid transparent;
}
.bx--table-expand[data-previous-value=collapsed] .bx--table-expand__svg {
  transform: rotate(270deg);
  transition: transform 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--table-expand__button {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 1rem;
  vertical-align: inherit;
}
.bx--table-expand__button::-moz-focus-inner {
  border: 0;
}
.bx--table-expand__button:focus {
  outline: 1px solid transparent;
}
.bx--table-expand__button:focus .bx--table-expand__svg {
  box-shadow: inset 0 0 0 1px #0f62fe;
}
.bx--table-expand__svg {
  transform: rotate(90deg);
  transition: transform 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--table-expand__svg {
    fill: ButtonText;
  }
}
tr.bx--parent-row.bx--expandable-row td.bx--table-expand + td::after {
  position: absolute;
  bottom: -0.0625rem;
  left: 0;
  width: 0.5rem;
  height: 0.0625rem;
  background: #e0e0e0;
  content: "";
}
tr.bx--parent-row.bx--expandable-row:hover td.bx--table-expand + td::after,
tr.bx--parent-row.bx--expandable-row.bx--expandable-row--hover td.bx--table-expand + td::after {
  background: #e5e5e5;
}
tr.bx--parent-row.bx--data-table--selected td.bx--table-expand + td::after {
  display: none;
}
.bx--data-table--zebra tbody tr[data-parent-row]:nth-child(4n+3) td,
.bx--data-table--zebra tbody tr[data-child-row]:nth-child(4n+4) td {
  border-bottom: 1px solid #ffffff;
}
.bx--data-table--zebra tbody tr[data-parent-row]:nth-child(4n+1) td,
.bx--data-table--zebra tbody tr[data-child-row]:nth-child(4n+2) td {
  background-color: #f4f4f4;
  border-top: 1px solid #f4f4f4;
  border-bottom: 1px solid #f4f4f4;
}
.bx--data-table--zebra tr.bx--parent-row td,
.bx--data-table--zebra tr.bx--parent-row.bx--expandable-row + tr[data-child-row] td {
  transition: transform 150ms cubic-bezier(0.2, 0, 0.38, 0.9), border-bottom 150ms cubic-bezier(0.2, 0, 0.38, 0.9), border-top 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--data-table--zebra tbody tr[data-parent-row]:hover td,
.bx--data-table--zebra tbody tr[data-parent-row]:hover + tr[data-child-row] td,
.bx--data-table--zebra tbody tr[data-child-row]:hover td {
  background-color: #e5e5e5;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}
.bx--data-table--zebra tr.bx--parent-row.bx--expandable-row.bx--expandable-row--hover td {
  background: #e5e5e5;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}
tr.bx--parent-row.bx--data-table--selected:first-of-type td {
  background: #e0e0e0;
  border-top: 1px solid #c6c6c6;
  border-bottom: 1px solid #e0e0e0;
  box-shadow: 0 1px #c6c6c6;
}
tr.bx--parent-row.bx--data-table--selected td {
  color: #161616;
  background: #e0e0e0;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #c6c6c6;
}
tr.bx--parent-row.bx--data-table--selected:last-of-type td {
  background: #e0e0e0;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #e0e0e0;
}
tr.bx--parent-row.bx--data-table--selected:not(.bx--expandable-row):hover td {
  background: #cacaca;
  border-top: 1px solid #cacaca;
  border-bottom: 1px solid #e0e0e0;
  box-shadow: 0 1px #cacaca;
}
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row td:first-of-type {
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #e0e0e0;
}
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row:hover td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row:hover td:first-of-type,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row--hover td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row--hover td:first-of-type {
  background: #cacaca;
  border-top: 1px solid #cacaca;
  border-bottom: 1px solid transparent;
  box-shadow: 0 1px #cacaca;
}
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row + tr[data-child-row] td {
  color: #161616;
  background-color: #e5e5e5;
  border-top: 1px solid #c6c6c6;
  border-bottom: 1px solid #e0e0e0;
  box-shadow: 0 1px #c6c6c6;
}
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row + tr[data-child-row]:last-of-type td {
  padding-bottom: 1.5rem;
  box-shadow: inset 0 -1px #c6c6c6;
}
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row:hover + tr[data-child-row] td,
tr.bx--parent-row.bx--data-table--selected.bx--expandable-row--hover + tr[data-child-row] td {
  background: #e0e0e0;
}
.bx--data-table--sort th {
  height: 3rem;
  border-top: none;
  border-bottom: none;
}
.bx--table-sort {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 100%;
  color: #161616;
  font: inherit;
  line-height: 1;
  background-color: #e0e0e0;
  transition: background-color 70ms cubic-bezier(0, 0, 0.38, 0.9), outline 70ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--table-sort::-moz-focus-inner {
  border: 0;
}
.bx--table-sort:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--table-sort:hover {
  background: #cacaca;
}
.bx--table-sort:focus svg,
.bx--table-sort:hover svg {
  opacity: 1;
}
.bx--data-table--sort th .bx--table-sort__flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  min-height: 3rem;
}
.bx--data-table--sort:not(.bx--data-table--compact):not(.bx--data-table--short):not(.bx--data-table--tall) th .bx--table-sort__flex {
  /* IE11 workaround for align-items: center and min-height
      https://github.com/philipwalton/flexbugs/issues/231 */
}
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .bx--data-table--sort:not(.bx--data-table--compact):not(.bx--data-table--short):not(.bx--data-table--tall) th .bx--table-sort__flex {
    height: 2.99rem;
  }
}
.bx--data-table--compact.bx--data-table--sort th .bx--table-sort__flex {
  min-height: 1.5rem;
}
.bx--data-table--short.bx--data-table--sort th .bx--table-sort__flex {
  min-height: 2rem;
}
.bx--data-table--tall.bx--data-table--sort th .bx--table-sort__flex {
  align-items: flex-start;
  min-height: 4rem;
}
.bx--table-sort .bx--table-sort__icon-inactive {
  display: block;
}
.bx--table-sort .bx--table-sort__icon {
  display: none;
}
.bx--table-sort__icon-unsorted {
  width: 1.25rem;
  min-width: 1rem;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  opacity: 0;
  fill: #161616;
}
.bx--table-sort.bx--table-sort--active {
  background: #cacaca;
}
.bx--table-sort.bx--table-sort--active .bx--table-sort__icon-unsorted {
  display: none;
}
.bx--table-sort.bx--table-sort--active .bx--table-sort__icon {
  display: block;
  opacity: 1;
}
.bx--table-sort--ascending .bx--table-sort__icon {
  transform: rotate(180deg);
}
.bx--table-sort__icon {
  width: 1.25rem;
  min-width: 1rem;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  transform: rotate(0);
  opacity: 1;
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--table-sort__icon,
.bx--table-sort__icon-unsorted {
    fill: ButtonText;
  }
}
.bx--data-table--compact.bx--data-table--sort th {
  height: 1.5rem;
}
.bx--data-table--short.bx--data-table--sort th {
  height: 2rem;
}
.bx--data-table--tall.bx--data-table--sort th {
  height: 4rem;
}
.bx--data-table--tall.bx--data-table--sort th .bx--table-sort {
  display: inline-block;
  height: 4rem;
}
.bx--data-table--tall .bx--table-sort__icon-unsorted,
.bx--data-table--tall .bx--table-sort__icon {
  margin-top: 0.8125rem;
}
.bx--inline-edit-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.bx--inline-edit-label:hover .bx--inline-edit-label__icon {
  opacity: 1;
}
.bx--inline-edit-label--inactive {
  display: none;
}
.bx--inline-edit-label__action {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.bx--inline-edit-label__action::-moz-focus-inner {
  border: 0;
}
.bx--inline-edit-label__action:hover {
  cursor: pointer;
}
.bx--inline-edit-label__action:focus {
  outline: 1px solid #0f62fe;
  padding: 0.125rem;
}
.bx--inline-edit-label__action:focus .bx--inline-edit-label__icon {
  width: auto;
  opacity: 1;
}
.bx--inline-edit-label__icon {
  opacity: 0;
  fill: #161616;
}
.bx--inline-edit-input {
  display: none;
}
.bx--inline-edit-input--active {
  display: block;
  margin-left: -0.75rem;
}
.bx--inline-edit-input--active input {
  padding-left: 0.75rem;
}
.bx--data-table--short input {
  height: 2rem;
}
.bx--data-table--short select {
  padding: 0.45rem 2.75rem 0.45rem 1rem;
}
.bx--data-table--short .bx--select__arrow {
  top: 0.875rem;
}
.bx--data-table.bx--skeleton th {
  padding-left: 1rem;
  vertical-align: middle;
}
.bx--data-table.bx--skeleton th span,
.bx--data-table.bx--skeleton td span {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  display: block;
  width: 4rem;
  height: 1rem;
}
.bx--data-table.bx--skeleton th span:hover, .bx--data-table.bx--skeleton th span:focus, .bx--data-table.bx--skeleton th span:active,
.bx--data-table.bx--skeleton td span:hover,
.bx--data-table.bx--skeleton td span:focus,
.bx--data-table.bx--skeleton td span:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--data-table.bx--skeleton th span::before,
.bx--data-table.bx--skeleton td span::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--data-table.bx--skeleton th span::before,
.bx--data-table.bx--skeleton td span::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--data-table.bx--skeleton tr:hover td {
  background: transparent;
  border-color: #e0e0e0;
}
.bx--data-table.bx--skeleton tr:hover td:first-of-type, .bx--data-table.bx--skeleton tr:hover td:last-of-type {
  border-color: #e0e0e0;
}
.bx--data-table.bx--skeleton .bx--table-sort-v2 {
  pointer-events: none;
}
.bx--data-table.bx--skeleton th span {
  background: #c6c6c6;
}
.bx--data-table.bx--skeleton th span::before {
  background: #e5e5e5;
}
.bx--data-table-container.bx--skeleton .bx--data-table-header__title {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 7.5rem;
  height: 1.5rem;
}
.bx--data-table-container.bx--skeleton .bx--data-table-header__title:hover, .bx--data-table-container.bx--skeleton .bx--data-table-header__title:focus, .bx--data-table-container.bx--skeleton .bx--data-table-header__title:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--data-table-container.bx--skeleton .bx--data-table-header__title::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--data-table-container.bx--skeleton .bx--data-table-header__title::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--data-table-container.bx--skeleton .bx--data-table-header__description {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 10rem;
  height: 1rem;
  margin-top: 0.5rem;
}
.bx--data-table-container.bx--skeleton .bx--data-table-header__description:hover, .bx--data-table-container.bx--skeleton .bx--data-table-header__description:focus, .bx--data-table-container.bx--skeleton .bx--data-table-header__description:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--data-table-container.bx--skeleton .bx--data-table-header__description::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--data-table-container.bx--skeleton .bx--data-table-header__description::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--structured-list--selection .bx--structured-list-td,
.bx--structured-list--selection .bx--structured-list-th {
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--structured-list--selection .bx--structured-list-td:first-child,
.bx--structured-list--selection .bx--structured-list-th:first-child {
  padding-right: 1rem;
  padding-left: 1rem;
}
.bx--structured-list-input {
  display: none;
}
.bx--structured-list {
  display: table;
  width: 100%;
  margin-bottom: 5rem;
  overflow-x: auto;
  overflow-y: hidden;
  background-color: transparent;
  border-collapse: collapse;
  border-spacing: 0;
}
.bx--structured-list.bx--structured-list--condensed .bx--structured-list-td, .bx--structured-list.bx--structured-list--condensed .bx--structured-list-th {
  padding: 0.5rem;
  padding-left: 0;
}
.bx--structured-list-row {
  display: table-row;
  border-bottom: 1px solid #e0e0e0;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--structured-list--selection .bx--structured-list-row:hover:not(.bx--structured-list-row--header-row):not(.bx--structured-list-row--selected) {
  background-color: #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  cursor: pointer;
}
.bx--structured-list-row.bx--structured-list-row--selected {
  background-color: #e0e0e0;
}
.bx--structured-list-row.bx--structured-list-row--header-row {
  border-bottom: 1px solid #e0e0e0;
  cursor: inherit;
}
.bx--structured-list-row:focus:not(.bx--structured-list-row--header-row) {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--structured-list--selection .bx--structured-list-row:hover:not(.bx--structured-list-row--header-row) > .bx--structured-list-td,
.bx--structured-list-row.bx--structured-list-row--selected > .bx--structured-list-td {
  color: #161616;
}
.bx--structured-list--selection .bx--structured-list-row:hover:not(.bx--structured-list-row--header-row) > .bx--structured-list-td {
  border-top: 1px solid #ffffff;
}
.bx--structured-list-thead {
  display: table-header-group;
  vertical-align: middle;
}
.bx--structured-list-th {
  padding: 1rem 1rem 0.5rem 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: table-cell;
  height: 2.5rem;
  color: #161616;
  font-weight: 600;
  text-align: left;
  text-transform: none;
  vertical-align: bottom;
}
.bx--structured-list-tbody {
  display: table-row-group;
  vertical-align: middle;
}
.bx--structured-list-td {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
  padding: 1rem 1rem 1.5rem 1rem;
  position: relative;
  display: table-cell;
  max-width: 36rem;
  color: #525252;
  transition: color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--structured-list-content--nowrap {
  white-space: nowrap;
}
.bx--structured-list-svg {
  display: inline-block;
  vertical-align: middle;
  transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: transparent;
}
.bx--structured-list-row:hover .bx--structured-list-svg {
  fill: #a8a8a8;
}
.bx--structured-list-input:checked + .bx--structured-list-row .bx--structured-list-svg,
.bx--structured-list-input:checked + .bx--structured-list-td .bx--structured-list-svg {
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--structured-list-input:checked + .bx--structured-list-row .bx--structured-list-svg,
.bx--structured-list-input:checked + .bx--structured-list-td .bx--structured-list-svg {
    fill: ButtonText;
  }
}
.bx--structured-list.bx--skeleton .bx--structured-list-th:first-child {
  width: 8%;
}
.bx--structured-list.bx--skeleton .bx--structured-list-th:nth-child(3n+2) {
  width: 30%;
}
.bx--structured-list.bx--skeleton .bx--structured-list-th:nth-child(3n+3) {
  width: 15%;
}
.bx--structured-list.bx--skeleton span {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  display: block;
  width: 75%;
  height: 1rem;
}
.bx--structured-list.bx--skeleton span:hover, .bx--structured-list.bx--skeleton span:focus, .bx--structured-list.bx--skeleton span:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--structured-list.bx--skeleton span::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--structured-list.bx--skeleton span::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--structured-list.bx--structured-list--selection.bx--skeleton .bx--structured-list-th:first-child {
  width: 5%;
}
.bx--structured-list.bx--structured-list--selection.bx--skeleton .bx--structured-list-th:first-child span {
  display: none;
}
@keyframes hide-feedback {
  0% {
    visibility: inherit;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes show-feedback {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  100% {
    visibility: inherit;
    opacity: 1;
  }
}
.bx--snippet code {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
}
.bx--snippet--inline {
  position: relative;
  display: inline;
  padding: 0;
  color: #161616;
  background-color: #ffffff;
  border: 2px solid transparent;
  border-radius: 4px;
  cursor: pointer;
}
.bx--snippet--inline:hover {
  background-color: #e0e0e0;
}
.bx--snippet--inline:active {
  background-color: #c6c6c6;
}
.bx--snippet--inline:focus {
  border: 2px solid #0f62fe;
  outline: none;
}
.bx--snippet--inline::before {
  position: absolute;
  z-index: 6000;
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
  display: none;
}
.bx--snippet--inline .bx--copy-btn__feedback {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: none;
  box-sizing: content-box;
  margin: auto;
  overflow: visible;
  clip: auto;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--snippet--inline .bx--copy-btn__feedback {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--snippet--inline .bx--copy-btn__feedback {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--snippet--inline .bx--copy-btn__feedback {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--snippet--inline .bx--copy-btn__feedback {
    border: 1px solid transparent;
  }
}
.bx--snippet--inline::before, .bx--snippet--inline::after,
.bx--snippet--inline .bx--assistive-text,
.bx--snippet--inline + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--snippet--inline::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--snippet--inline::after,
.bx--snippet--inline .bx--assistive-text,
.bx--snippet--inline + .bx--assistive-text {
  bottom: -0.8125rem;
  transform: translate(-50%, 100%);
}
.bx--snippet--inline.bx--copy-btn--animating::before,
.bx--snippet--inline.bx--copy-btn--animating .bx--copy-btn__feedback {
  display: block;
}
.bx--snippet--inline.bx--copy-btn--animating.bx--copy-btn--fade-out::before,
.bx--snippet--inline.bx--copy-btn--animating.bx--copy-btn--fade-out .bx--copy-btn__feedback {
  -webkit-animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) hide-feedback;
          animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) hide-feedback;
}
.bx--snippet--inline.bx--copy-btn--animating.bx--copy-btn--fade-in::before,
.bx--snippet--inline.bx--copy-btn--animating.bx--copy-btn--fade-in .bx--copy-btn__feedback {
  -webkit-animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) show-feedback;
          animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) show-feedback;
}
.bx--snippet--inline code {
  padding: 0 0.5rem;
}
.bx--snippet--inline.bx--snippet--no-copy {
  display: inline-block;
}
.bx--snippet--inline.bx--snippet--no-copy:hover {
  background-color: #ffffff;
  cursor: auto;
}
.bx--snippet--light.bx--snippet--inline.bx--snippet--no-copy:hover {
  background-color: #f4f4f4;
  cursor: auto;
}
.bx--snippet--single {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  position: relative;
  width: 100%;
  max-width: 37.5rem;
  background-color: #ffffff;
  min-width: 20rem;
  max-width: 47.5rem;
  height: 2.5rem;
  padding-right: 2.5rem;
}
.bx--snippet--single.bx--snippet--no-copy {
  padding: 0;
}
.bx--snippet--single.bx--snippet--no-copy::after {
  right: 1rem;
}
.bx--snippet--single .bx--snippet-container {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  padding-left: 1rem;
  overflow-x: auto;
  border-right: solid 1rem transparent;
}
.bx--snippet--single .bx--snippet-container:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--snippet--single pre {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  padding-right: 0.5rem;
  white-space: nowrap;
}
.bx--snippet--single::after {
  position: absolute;
  top: 0;
  right: 3.5rem;
  width: 1rem;
  height: 100%;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ffffff);
  content: "";
}
.bx--snippet--multi {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  position: relative;
  width: 100%;
  max-width: 37.5rem;
  background-color: #ffffff;
  min-width: 20rem;
  max-width: 100%;
  padding: 1rem;
}
.bx--snippet--multi .bx--snippet-container {
  position: relative;
  min-height: 3.5rem;
  max-height: 14.875rem;
  overflow: hidden;
  transition: max-height 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--snippet--multi.bx--snippet--expand .bx--snippet-container {
  max-height: 100%;
  padding-bottom: 1rem;
  transition: max-height 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--snippet--multi.bx--snippet--wraptext pre {
  white-space: pre-wrap;
  word-wrap: break-word;
}
.bx--snippet--multi .bx--snippet-container pre {
  padding-right: 2.5rem;
  padding-bottom: 1.5rem;
  overflow-x: auto;
}
.bx--snippet--multi.bx--snippet--no-copy .bx--snippet-container pre {
  padding-right: 0;
}
.bx--snippet--multi.bx--snippet--expand .bx--snippet-container pre {
  overflow-x: auto;
}
.bx--snippet--multi .bx--snippet-container pre::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 1rem;
  height: 100%;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0), #ffffff);
  content: "";
}
.bx--snippet--multi .bx--snippet-container pre code {
  overflow: hidden;
}
.bx--snippet__icon {
  width: 1rem;
  height: 1rem;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
.bx--snippet-button {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  overflow: visible;
  background-color: #ffffff;
  border: none;
  outline: none;
  cursor: pointer;
}
.bx--snippet-button:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  outline-color: #0f62fe;
}
.bx--snippet--multi .bx--snippet-button {
  top: 0.5rem;
  right: 0.5rem;
  width: 2rem;
  height: 2rem;
}
.bx--snippet-button:hover {
  background: #e5e5e5;
}
.bx--snippet-button:active {
  background-color: #c6c6c6;
}
.bx--btn--copy__feedback {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
  top: 0.75rem;
  right: 1.25rem;
  left: inherit;
  z-index: 6000;
  font-weight: 400;
}
.bx--btn--copy__feedback::before,
.bx--btn--copy__feedback::after {
  background: #393939;
}
.bx--btn--copy__feedback::after {
  border: none;
}
.bx--snippet .bx--copy-btn {
  position: absolute;
  top: 0;
  right: 0;
  font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
}
button.bx--btn.bx--snippet-btn--expand {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
  position: absolute;
  right: 0;
  bottom: 0.5rem;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1rem;
  color: #161616;
  background-color: #ffffff;
  border: 0;
}
button.bx--btn.bx--snippet-btn--expand .bx--snippet-btn--text {
  position: relative;
  top: -0.0625rem;
}
.bx--snippet-btn--expand--hide.bx--snippet-btn--expand {
  display: none;
}
.bx--snippet-btn--expand .bx--icon-chevron--down {
  margin-bottom: 0.0625rem;
  margin-left: 0.5rem;
  transform: rotate(0deg);
  transition: 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
button.bx--btn.bx--snippet-btn--expand:hover {
  color: #161616;
  background: #e5e5e5;
}
.bx--snippet-btn--expand:active {
  background-color: #c6c6c6;
}
.bx--snippet-btn--expand:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  border-color: transparent;
}
.bx--snippet--expand .bx--snippet-btn--expand .bx--icon-chevron--down {
  transform: rotate(180deg);
  transition: transform 240ms;
}
.bx--snippet--light,
.bx--snippet--light .bx--snippet-button,
.bx--snippet--light .bx--snippet-btn--expand,
.bx--snippet--light .bx--copy-btn {
  background-color: #f4f4f4;
}
.bx--snippet--light.bx--snippet--inline:hover,
.bx--snippet--light .bx--snippet-button:hover,
.bx--snippet--light .bx--snippet-btn--expand:hover,
.bx--snippet--light .bx--copy-btn:hover {
  background-color: #e5e5e5;
}
.bx--snippet--light.bx--snippet--inline:active,
.bx--snippet--light .bx--snippet-button:active,
.bx--snippet--light .bx--snippet-btn--expand:active,
.bx--snippet--light .bx--copy-btn:active {
  background-color: #c6c6c6;
}
.bx--snippet--light.bx--snippet--single::after,
.bx--snippet--light.bx--snippet--multi .bx--snippet-container pre::after {
  background-image: linear-gradient(to right, rgba(244, 244, 244, 0), #f4f4f4);
}
.bx--snippet--code.bx--skeleton {
  height: 6.125rem;
}
.bx--snippet--terminal.bx--skeleton {
  height: 3.5rem;
}
.bx--snippet.bx--skeleton .bx--snippet-container {
  height: 100%;
}
.bx--snippet.bx--skeleton code {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  display: block;
  width: 100%;
  height: 1rem;
}
.bx--snippet.bx--skeleton code:hover, .bx--snippet.bx--skeleton code:focus, .bx--snippet.bx--skeleton code:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--snippet.bx--skeleton code::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--snippet.bx--skeleton code::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--snippet-button .bx--btn--copy__feedback {
  top: 3.175rem;
  right: auto;
  left: 50%;
}
.bx--snippet-button .bx--btn--copy__feedback::before {
  top: 0;
}
.bx--snippet-button .bx--btn--copy__feedback::after {
  top: -0.25rem;
}
.bx--snippet--multi .bx--copy-btn {
  top: 0.5rem;
  right: 0.5rem;
  width: 2rem;
  height: 2rem;
}
.bx--snippet--multi .bx--snippet-button .bx--btn--copy__feedback {
  top: 2.675rem;
}
.bx--snippet--inline .bx--btn--copy__feedback {
  top: calc(100% - 0.25rem);
  right: auto;
  left: 50%;
}
bx--snippet--multi.bx--skeleton {
  height: 6.125rem;
}
.bx--snippet--single.bx--skeleton {
  height: 3.5rem;
}
.bx--snippet.bx--skeleton span {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  display: block;
  width: 100%;
  height: 1rem;
  margin-top: 0.5rem;
}
.bx--snippet.bx--skeleton span:hover, .bx--snippet.bx--skeleton span:focus, .bx--snippet.bx--skeleton span:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--snippet.bx--skeleton span::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--snippet.bx--skeleton span::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--snippet.bx--skeleton span:first-child {
  margin: 0;
}
.bx--snippet.bx--skeleton span:nth-child(2) {
  width: 85%;
}
.bx--snippet.bx--skeleton span:nth-child(3) {
  width: 95%;
}
.bx--snippet--single.bx--skeleton .bx--snippet-container {
  padding-bottom: 0;
}
.bx--overflow-menu,
.bx--overflow-menu__trigger {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  cursor: pointer;
  transition: outline 110ms cubic-bezier(0, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu::-moz-focus-inner,
.bx--overflow-menu__trigger::-moz-focus-inner {
  border: 0;
}
.bx--overflow-menu:focus,
.bx--overflow-menu__trigger:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--overflow-menu:focus,
.bx--overflow-menu__trigger:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--overflow-menu:hover,
.bx--overflow-menu__trigger:hover {
  background-color: #e5e5e5;
}
.bx--overflow-menu--sm {
  width: 2rem;
  height: 2rem;
}
.bx--overflow-menu--xl {
  width: 3rem;
  height: 3rem;
}
.bx--overflow-menu__trigger.bx--tooltip--a11y.bx--tooltip__trigger:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--overflow-menu__trigger.bx--tooltip--a11y.bx--tooltip__trigger:focus svg {
  outline: none;
}
.bx--overflow-menu.bx--overflow-menu--open,
.bx--overflow-menu.bx--overflow-menu--open .bx--overflow-menu__trigger {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  background-color: #ffffff;
  transition: none;
}
.bx--overflow-menu--light.bx--overflow-menu--open,
.bx--overflow-menu--light.bx--overflow-menu--open .bx--overflow-menu__trigger {
  background-color: #f4f4f4;
}
.bx--overflow-menu__icon {
  width: 1rem;
  height: 1rem;
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--overflow-menu__icon {
    fill: ButtonText;
  }
}
.bx--overflow-menu-options {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 32px;
  left: 0;
  z-index: 6000;
  display: none;
  flex-direction: column;
  align-items: flex-start;
  width: 10rem;
  list-style: none;
  background-color: #ffffff;
}
.bx--overflow-menu-options::after {
  position: absolute;
  display: block;
  background-color: #ffffff;
  transition: background-color 110ms cubic-bezier(0, 0, 0.38, 0.9);
  content: "";
}
.bx--overflow-menu.bx--overflow-menu--open:hover {
  background-color: #ffffff;
}
.bx--overflow-menu-options--light {
  background-color: #f4f4f4;
}
.bx--overflow-menu-options--light::after {
  background-color: #f4f4f4;
}
.bx--overflow-menu.bx--overflow-menu--light.bx--overflow-menu--open:hover {
  background-color: #f4f4f4;
}
.bx--overflow-menu-options[data-floating-menu-direction=bottom]::after {
  top: -0.1875rem;
  left: 0;
  width: 2.5rem;
  height: 0.1875rem;
}
.bx--overflow-menu-options[data-floating-menu-direction=top]::after {
  bottom: -0.5rem;
  left: 0;
  width: 2.5rem;
  height: 0.5rem;
}
.bx--overflow-menu-options[data-floating-menu-direction=left]::after {
  top: 0;
  right: -0.375rem;
  width: 0.375rem;
  height: 2.5rem;
}
.bx--overflow-menu-options[data-floating-menu-direction=right]::after {
  top: 0;
  left: -0.375rem;
  width: 0.375rem;
  height: 2.5rem;
}
.bx--overflow-menu-options--sm.bx--overflow-menu-options[data-floating-menu-direction=bottom]::after, .bx--overflow-menu-options--sm.bx--overflow-menu-options[data-floating-menu-direction=top]::after {
  width: 2rem;
}
.bx--overflow-menu-options--sm.bx--overflow-menu-options[data-floating-menu-direction=left]::after, .bx--overflow-menu-options--sm.bx--overflow-menu-options[data-floating-menu-direction=right]::after {
  height: 2rem;
}
.bx--overflow-menu-options--xl.bx--overflow-menu-options[data-floating-menu-direction=bottom]::after, .bx--overflow-menu-options--xl.bx--overflow-menu-options[data-floating-menu-direction=top]::after {
  width: 3rem;
}
.bx--overflow-menu-options--xl.bx--overflow-menu-options[data-floating-menu-direction=left]::after, .bx--overflow-menu-options--xl.bx--overflow-menu-options[data-floating-menu-direction=right]::after {
  height: 3rem;
}
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=top]::after,
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=bottom]::after {
  right: 0;
  left: auto;
}
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=left]::after,
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=right]::after {
  top: auto;
  bottom: 0;
}
.bx--overflow-menu-options--open {
  display: flex;
}
.bx--overflow-menu-options__content {
  width: 100%;
}
.bx--overflow-menu-options__option {
  display: flex;
  align-items: center;
  width: 100%;
  height: 2.5rem;
  padding: 0;
  background-color: transparent;
  transition: background-color 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu-options--sm .bx--overflow-menu-options__option {
  height: 2rem;
}
.bx--overflow-menu-options--xl .bx--overflow-menu-options__option {
  height: 3rem;
}
.bx--overflow-menu--divider {
  border-top: 1px solid #e0e0e0;
}
.bx--overflow-menu--light .bx--overflow-menu--divider {
  border-top: 1px solid #e0e0e0;
}
a.bx--overflow-menu-options__btn::before {
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  content: "";
}
.bx--overflow-menu-options__btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: inline-flex;
  align-items: center;
  width: 100%;
  max-width: 11.25rem;
  height: 100%;
  padding: 0 1rem;
  color: #525252;
  font-weight: 400;
  text-align: left;
  background-color: transparent;
  border: none;
  cursor: pointer;
  transition: outline 110ms cubic-bezier(0, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0, 0, 0.38, 0.9), color 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu-options__btn:hover {
  color: #161616;
}
.bx--overflow-menu-options__btn:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--overflow-menu-options__btn:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--overflow-menu-options__btn::-moz-focus-inner {
  border: none;
}
.bx--overflow-menu-options__btn svg {
  fill: #525252;
}
.bx--overflow-menu-options__btn:hover svg {
  fill: #161616;
}
.bx--overflow-menu-options__option-content {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--overflow-menu-options__option:hover {
  background-color: #e5e5e5;
}
.bx--overflow-menu-options__option--danger {
  border-top: 1px solid #e0e0e0;
}
.bx--overflow-menu--light .bx--overflow-menu-options__option--danger {
  border-top: 1px solid #e0e0e0;
}
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:hover,
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:focus {
  color: #ffffff;
  background-color: #da1e28;
}
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:hover svg,
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:focus svg {
  fill: #ffffff;
}
.bx--overflow-menu-options__option--disabled:hover {
  background-color: #ffffff;
  cursor: not-allowed;
}
.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn {
  color: #c6c6c6;
  pointer-events: none;
}
.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:hover, .bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:active, .bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:focus {
  outline: 2px solid transparent;
  outline-offset: -2px;
  background-color: #ffffff;
}
.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn svg {
  fill: #c6c6c6;
}
.bx--overflow-menu--flip {
  left: -140px;
}
.bx--overflow-menu--flip::before {
  left: 145px;
}
.bx--content-switcher {
  display: flex;
  justify-content: space-evenly;
  width: 100%;
  height: 2.5rem;
}
.bx--content-switcher--sm {
  height: 2rem;
}
.bx--content-switcher--xl {
  height: 3rem;
}
.bx--content-switcher--disabled {
  cursor: not-allowed;
}
.bx--content-switcher-btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 0.5rem 1rem;
  overflow: hidden;
  color: #525252;
  white-space: nowrap;
  text-align: left;
  text-decoration: none;
  background-color: #ffffff;
  border: none;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--content-switcher-btn:focus {
  z-index: 3;
  border-color: #0f62fe;
  box-shadow: inset 0 0 0 2px #0f62fe, inset 0 0 0 3px #ffffff;
}
.bx--content-switcher-btn:hover {
  cursor: pointer;
}
.bx--content-switcher-btn:hover, .bx--content-switcher-btn:active {
  z-index: 3;
  color: #161616;
  background-color: #e5e5e5;
}
.bx--content-switcher-btn:disabled {
  color: #c6c6c6;
  background-color: #ffffff;
  pointer-events: none;
}
.bx--content-switcher-btn:disabled:hover {
  cursor: not-allowed;
}
.bx--content-switcher--light .bx--content-switcher-btn {
  background-color: #f4f4f4;
}
.bx--content-switcher--light .bx--content-switcher-btn:hover {
  background-color: #e5e5e5;
}
.bx--content-switcher-btn:first-child {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.bx--content-switcher-btn:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.bx--content-switcher-btn::before {
  position: absolute;
  left: 0;
  z-index: 2;
  display: block;
  width: 0.0625rem;
  height: 1rem;
  background-color: #e0e0e0;
  content: "";
}
.bx--content-switcher-btn:first-of-type::before {
  display: none;
}
.bx--content-switcher--light .bx--content-switcher-btn::before {
  background-color: #e0e0e0;
}
.bx--content-switcher--light .bx--content-switcher-btn:focus::before,
.bx--content-switcher--light .bx--content-switcher-btn:focus + .bx--content-switcher-btn::before,
.bx--content-switcher--light .bx--content-switcher-btn:hover::before,
.bx--content-switcher--light .bx--content-switcher-btn:hover + .bx--content-switcher-btn::before,
.bx--content-switcher--light .bx--content-switcher--selected::before,
.bx--content-switcher--light .bx--content-switcher--selected + .bx--content-switcher-btn::before,
.bx--content-switcher-btn:focus::before,
.bx--content-switcher-btn:focus + .bx--content-switcher-btn::before,
.bx--content-switcher-btn:hover::before,
.bx--content-switcher-btn:hover + .bx--content-switcher-btn::before,
.bx--content-switcher--selected::before,
.bx--content-switcher--selected + .bx--content-switcher-btn::before {
  background-color: transparent;
}
.bx--content-switcher__icon {
  transition: fill 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #525252;
}
.bx--content-switcher__icon + span {
  margin-left: 0.5rem;
}
.bx--content-switcher__label {
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--content-switcher-btn:hover .bx--content-switcher__icon,
.bx--content-switcher-btn:focus .bx--content-switcher__icon {
  fill: #161616;
}
.bx--content-switcher--light .bx--content-switcher-btn.bx--content-switcher--selected,
.bx--content-switcher-btn.bx--content-switcher--selected {
  z-index: 3;
  color: #ffffff;
  background-color: #161616;
}
.bx--content-switcher--light .bx--content-switcher-btn.bx--content-switcher--selected:disabled,
.bx--content-switcher-btn.bx--content-switcher--selected:disabled {
  color: #c6c6c6;
  background-color: #8d8d8d;
}
.bx--content-switcher-btn.bx--content-switcher--selected .bx--content-switcher__icon {
  fill: #ffffff;
}
/* stylelint-disable */
.flatpickr-calendar {
  background: transparent;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  text-align: center;
  padding: 0;
  -webkit-animation: none;
          animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 315px;
  box-sizing: border-box;
  touch-action: manipulation;
  background: #fff;
  box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);
}
.flatpickr-calendar.open,
.flatpickr-calendar.inline {
  opacity: 1;
  visibility: inherit;
  overflow: visible;
  max-height: 640px;
}
.flatpickr-calendar.open {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 18rem;
  height: 21rem;
  padding: 0.25rem 0.25rem 0.5rem 0.25rem;
  border: none;
  margin-top: -2px;
  overflow: hidden;
  background-color: #ffffff;
}
.flatpickr-calendar.open:focus {
  outline: 1px solid #0f62fe;
}
.flatpickr-calendar.animate.open {
  -webkit-animation: fpFadeInDown 110ms cubic-bezier(0, 0, 0.38, 0.9);
          animation: fpFadeInDown 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px;
}
.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px);
}
.flatpickr-calendar.static.open {
  z-index: 999;
  display: block;
}
.flatpickr-calendar.hasWeeks {
  width: auto;
}
.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0;
}
.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #e6e6e6;
}
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto;
}
.flatpickr-calendar:focus {
  outline: 0;
}
.flatpickr-months {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.flatpickr-month {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  height: 2.5rem;
  display: flex;
  align-items: center;
  margin-bottom: 0.25rem;
  background-color: transparent;
  color: #161616;
  line-height: 1;
  text-align: center;
}
.flatpickr-prev-month,
.flatpickr-next-month {
  text-decoration: none;
  cursor: pointer;
  line-height: 16px;
  height: 28px;
  padding: 10px calc(3.57% - 1.5px);
  z-index: 3;
}
.flatpickr-prev-month,
.flatpickr-next-month {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.5rem;
  width: 2.5rem;
  padding: 0;
  fill: #161616;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  background-color: #e5e5e5;
}
.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg {
  fill: #161616;
}
.flatpickr-next-month.disabled svg,
.flatpickr-prev-month.disabled svg {
  fill: #161616;
  cursor: not-allowed;
}
.flatpickr-next-month.disabled:hover svg,
.flatpickr-prev-month.disabled:hover svg {
  fill: #161616;
}
.flatpickr-current-month {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.75rem;
  text-align: center;
}
.flatpickr-current-month .cur-month {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.flatpickr-current-month .cur-month:hover {
  background-color: #e5e5e5;
}
.numInputWrapper {
  position: relative;
  width: 3.75rem;
}
.numInputWrapper:hover {
  background-color: #e5e5e5;
}
.numInputWrapper:hover .arrowUp,
.numInputWrapper:hover .arrowDown {
  opacity: 1;
}
.numInputWrapper:hover .numInput[disabled] ~ .arrowUp,
.numInputWrapper:hover .numInput[disabled] ~ .arrowDown {
  opacity: 0;
}
.numInputWrapper .numInput {
  display: inline-block;
  width: 100%;
  padding: 0.25rem;
  margin: 0;
  border: none;
  color: #161616;
  font-size: inherit;
  font-family: inherit;
  font-weight: 600;
  background-color: #ffffff;
  cursor: default;
  -moz-appearance: textfield;
  /* Firefox */
}
.numInputWrapper .numInput:focus {
  outline: 1px solid #0f62fe;
}
.numInputWrapper .numInput[disabled], .numInputWrapper .numInput[disabled]:hover {
  color: #c6c6c6;
  background-color: #ffffff;
  pointer-events: none;
}
.numInputWrapper .numInput::-webkit-outer-spin-button, .numInputWrapper .numInput::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
  /* <-- Apparently some margin are still there even though it's hidden */
}
.numInput[disabled] ~ .arrowUp::after {
  border-bottom-color: #c6c6c6;
}
.numInput[disabled] ~ .arrowDown::after {
  border-top-color: #c6c6c6;
}
.numInputWrapper .arrowUp,
.numInputWrapper .arrowDown {
  position: absolute;
  left: 2.6rem;
  width: 0.75rem;
  height: 50%;
  border: none;
  padding: 0 0.25rem 0 0.125rem;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
}
.numInputWrapper .arrowUp::after,
.numInputWrapper .arrowDown::after {
  position: absolute;
  top: 33%;
  display: block;
  content: "";
  border-left: 0.25rem solid transparent;
  border-right: 0.25rem solid transparent;
}
.numInputWrapper .arrowUp:hover::after,
.numInputWrapper .arrowDown:hover::after {
  border-bottom-color: #0f62fe;
  border-top-color: #0f62fe;
}
.numInputWrapper .arrowUp {
  top: 0.25rem;
  border-bottom: 0;
}
.numInputWrapper .arrowUp::after {
  border-bottom: 0.25rem solid #161616;
}
.numInputWrapper .arrowDown {
  top: 0.6875rem;
}
.numInputWrapper .arrowDown::after {
  border-top: 0.25rem solid #161616;
}
.flatpickr-weekdays {
  display: flex;
  align-items: center;
  height: 2.5rem;
}
.flatpickr-weekdaycontainer {
  display: flex;
  width: 100%;
}
.flatpickr-weekday {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  cursor: default;
  color: #161616;
  flex: 1;
}
.flatpickr-days:focus {
  outline: 0;
}
.dayContainer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  height: 15.375rem;
  padding: 0;
  outline: 0;
}
.flatpickr-calendar.animate .dayContainer.slideLeft {
  -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.animate .dayContainer.slideLeft,
.flatpickr-calendar.animate .dayContainer.slideLeftNew {
  transform: translate3d(-100%, 0px, 0px);
}
.flatpickr-calendar.animate .dayContainer.slideLeftNew {
  -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.animate .dayContainer.slideRight {
  -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
  transform: translate3d(100%, 0px, 0px);
}
.flatpickr-calendar.animate .dayContainer.slideRightNew {
  -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-day {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  height: 2.5rem;
  width: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #161616;
  cursor: pointer;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.flatpickr-day:hover {
  background: #e5e5e5;
}
.flatpickr-day:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  outline-color: #0f62fe;
}
.nextMonthDay,
.prevMonthDay {
  color: #6f6f6f;
}
.flatpickr-day.today {
  position: relative;
  color: #0f62fe;
  font-weight: 600;
}
.flatpickr-day.today::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0.4375rem;
  left: 50%;
  transform: translateX(-50%);
  height: 0.25rem;
  width: 0.25rem;
  background-color: #0f62fe;
}
.flatpickr-day.today.no-border {
  border: none;
}
.flatpickr-day.today.selected {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.flatpickr-day.today.selected::after {
  display: none;
}
.flatpickr-day.inRange {
  background-color: #edf5ff;
  color: #161616;
}
.flatpickr-day.selected {
  color: #ffffff;
  background-color: #0f62fe;
}
.flatpickr-day.selected:focus {
  outline: 0.0625rem solid #f4f4f4;
  outline-offset: -0.1875rem;
}
.flatpickr-day.startRange.selected {
  box-shadow: none;
  z-index: 2;
}
.flatpickr-day.startRange.inRange:not(.selected),
.flatpickr-day.endRange.inRange {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  background: #ffffff;
  z-index: 3;
}
.flatpickr-day.endRange:hover {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  background: #ffffff;
  color: #161616;
}
.flatpickr-day.endRange.inRange.selected {
  color: #ffffff;
  background: #0f62fe;
}
.flatpickr-day.flatpickr-disabled {
  cursor: not-allowed;
  color: #c6c6c6;
}
.flatpickr-day.flatpickr-disabled:hover {
  background-color: transparent;
}
.flatpickr-input[readonly] {
  cursor: pointer;
}
@-webkit-keyframes fpFadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fpFadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fpSlideLeft {
  from {
    transform: translate3d(0px, 0px, 0px);
  }
  to {
    transform: translate3d(-100%, 0px, 0px);
  }
}
@keyframes fpSlideLeft {
  from {
    transform: translate3d(0px, 0px, 0px);
  }
  to {
    transform: translate3d(-100%, 0px, 0px);
  }
}
@-webkit-keyframes fpSlideLeftNew {
  from {
    transform: translate3d(100%, 0px, 0px);
  }
  to {
    transform: translate3d(0px, 0px, 0px);
  }
}
@keyframes fpSlideLeftNew {
  from {
    transform: translate3d(100%, 0px, 0px);
  }
  to {
    transform: translate3d(0px, 0px, 0px);
  }
}
@-webkit-keyframes fpSlideRight {
  from {
    transform: translate3d(0, 0, 0px);
  }
  to {
    transform: translate3d(100%, 0px, 0px);
  }
}
@keyframes fpSlideRight {
  from {
    transform: translate3d(0, 0, 0px);
  }
  to {
    transform: translate3d(100%, 0px, 0px);
  }
}
@-webkit-keyframes fpSlideRightNew {
  from {
    transform: translate3d(-100%, 0, 0px);
  }
  to {
    transform: translate3d(0, 0, 0px);
  }
}
@keyframes fpSlideRightNew {
  from {
    transform: translate3d(-100%, 0, 0px);
  }
  to {
    transform: translate3d(0, 0, 0px);
  }
}
@-webkit-keyframes fpFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fpFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes fpFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fpFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--date-picker {
  display: flex;
}
.bx--date-picker--light .bx--date-picker__input {
  background: #f4f4f4;
}
.bx--date-picker ~ .bx--label {
  order: 1;
}
.bx--date-picker-container {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.bx--date-picker-input__wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.bx--date-picker.bx--date-picker--simple .bx--date-picker__input {
  width: 7.5rem;
}
.bx--date-picker.bx--date-picker--simple.bx--date-picker--short .bx--date-picker__input {
  width: 5.7rem;
}
.bx--date-picker.bx--date-picker--single .bx--date-picker__input {
  width: 18rem;
}
.bx--date-picker__input {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.32px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  display: block;
  min-width: 9rem;
  height: 2.5rem;
  padding: 0 1rem;
  color: #161616;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  transition: 70ms cubic-bezier(0.2, 0, 0.38, 0.9) all;
}
.bx--date-picker__input:focus, .bx--date-picker__input.bx--focused {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--date-picker__input:disabled {
  color: #c6c6c6;
  background-color: #ffffff;
  border-bottom: 1px solid transparent;
  cursor: not-allowed;
}
.bx--date-picker__input:disabled::-moz-placeholder {
  color: #c6c6c6;
}
.bx--date-picker__input:disabled::placeholder {
  color: #c6c6c6;
}
.bx--date-picker__input:disabled:hover {
  border-bottom: 1px solid transparent;
}
.bx--date-picker__input::-moz-placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--date-picker__input::placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--date-picker__input--xl {
  height: 3rem;
}
.bx--date-picker__input--sm {
  height: 2rem;
}
.bx--date-picker__icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  z-index: 1;
  transform: translateY(-50%);
  cursor: pointer;
  fill: #161616;
}
.bx--date-picker__icon ~ .bx--date-picker__input {
  padding-right: 3rem;
}
.bx--date-picker__input:disabled ~ .bx--date-picker__icon {
  cursor: not-allowed;
  fill: #c6c6c6;
}
.bx--date-picker--range > .bx--date-picker-container:first-child {
  margin-right: 0.125rem;
}
.bx--date-picker--range .bx--date-picker-container,
.bx--date-picker--range .bx--date-picker__input {
  width: 8.96875rem;
}
.bx--date-picker.bx--skeleton input,
.bx--date-picker__input.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 100%;
}
.bx--date-picker.bx--skeleton input:hover, .bx--date-picker.bx--skeleton input:focus, .bx--date-picker.bx--skeleton input:active,
.bx--date-picker__input.bx--skeleton:hover,
.bx--date-picker__input.bx--skeleton:focus,
.bx--date-picker__input.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--date-picker.bx--skeleton input::before,
.bx--date-picker__input.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--date-picker.bx--skeleton input::before,
.bx--date-picker__input.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--date-picker.bx--skeleton input::-moz-placeholder, .bx--date-picker__input.bx--skeleton::-moz-placeholder {
  color: transparent;
}
.bx--date-picker.bx--skeleton input::placeholder,
.bx--date-picker__input.bx--skeleton::placeholder {
  color: transparent;
}
.bx--date-picker.bx--skeleton .bx--label {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 4.6875rem;
  height: 0.875rem;
}
.bx--date-picker.bx--skeleton .bx--label:hover, .bx--date-picker.bx--skeleton .bx--label:focus, .bx--date-picker.bx--skeleton .bx--label:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--date-picker.bx--skeleton .bx--label::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--date-picker.bx--skeleton .bx--label::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--dropdown__wrapper--inline {
  display: inline-grid;
  grid-gap: 0.25rem;
  grid-template: auto auto/auto -webkit-min-content;
  grid-template: auto auto/auto min-content;
  align-items: center;
}
.bx--dropdown__wrapper--inline .bx--label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
.bx--dropdown__wrapper--inline .bx--label,
.bx--dropdown__wrapper--inline .bx--form__helper-text,
.bx--dropdown__wrapper--inline .bx--form-requirement {
  margin: 0;
}
.bx--dropdown__wrapper--inline .bx--form-requirement {
  grid-column: 2;
}
.bx--dropdown {
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  display: block;
  width: 100%;
  height: 2.5rem;
  color: #161616;
  list-style: none;
  background-color: #ffffff;
  border: none;
  border-bottom: 1px solid #8d8d8d;
  outline: 2px solid transparent;
  cursor: pointer;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--dropdown:hover {
  background-color: #e5e5e5;
}
.bx--dropdown .bx--list-box__field {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  padding: 0 3rem 0 1rem;
  text-align: left;
}
.bx--dropdown .bx--list-box__field::-moz-focus-inner {
  border: 0;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--dropdown .bx--list-box__field {
    border: 1px solid transparent;
  }
}
.bx--dropdown--xl {
  height: 3rem;
  max-height: 3rem;
}
.bx--dropdown--xl .bx--dropdown__arrow {
  top: 1rem;
}
.bx--dropdown--sm {
  height: 2rem;
  max-height: 2rem;
}
.bx--dropdown--sm .bx--dropdown__arrow {
  top: 0.5rem;
}
.bx--dropdown--open {
  border-bottom-color: #e0e0e0;
}
.bx--dropdown--invalid {
  outline: 2px solid #da1e28;
  outline-offset: -2px;
}
.bx--dropdown--invalid .bx--dropdown-text {
  padding-right: 3.5rem;
}
.bx--dropdown--invalid + .bx--form-requirement {
  display: inline-block;
  max-height: 12.5rem;
  color: #da1e28;
}
.bx--dropdown__invalid-icon {
  position: absolute;
  top: 50%;
  right: 2.5rem;
  transform: translateY(-50%);
  fill: #da1e28;
}
.bx--dropdown--open:hover {
  background-color: #ffffff;
}
.bx--dropdown--open:focus {
  outline: 1px solid transparent;
}
.bx--dropdown--open .bx--dropdown-list {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  max-height: 13.75rem;
  transition: max-height 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--dropdown--light {
  background-color: #f4f4f4;
}
.bx--dropdown--up .bx--dropdown-list {
  bottom: 2rem;
}
.bx--dropdown__arrow {
  position: absolute;
  top: 0.8125rem;
  right: 1rem;
  transform-origin: 50% 45%;
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  pointer-events: none;
  fill: #161616;
}
button.bx--dropdown-text {
  width: 100%;
  color: #161616;
  text-align: left;
  background: none;
  border: none;
}
button.bx--dropdown-text:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--dropdown-text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: block;
  height: calc(100% + 1px);
  padding-right: 2.625rem;
  padding-left: 1rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--dropdown-list {
  outline: 2px solid transparent;
  outline-offset: -2px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: absolute;
  z-index: 6000;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  list-style: none;
  background-color: #ffffff;
  transition: max-height 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--dropdown--light .bx--dropdown-list {
  background-color: #f4f4f4;
}
.bx--dropdown:not(.bx--dropdown--open) .bx--dropdown-item {
  visibility: hidden;
}
.bx--dropdown-item {
  position: relative;
  visibility: inherit;
  opacity: 0;
  transition: visibility 70ms cubic-bezier(0.2, 0, 0.38, 0.9), opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--dropdown-item:hover {
  background-color: #e5e5e5;
}
.bx--dropdown-item:hover + .bx--dropdown-item .bx--dropdown-link {
  border-color: transparent;
}
.bx--dropdown-item:active {
  background-color: #e0e0e0;
}
.bx--dropdown-item:first-of-type .bx--dropdown-link {
  border-top-color: transparent;
}
.bx--dropdown-item:last-of-type .bx--dropdown-link {
  border-bottom: none;
}
.bx--dropdown-link {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: block;
  height: 2.5rem;
  margin: 0 1rem;
  padding: 0.6875rem 0;
  overflow: hidden;
  color: #525252;
  font-weight: normal;
  line-height: 1rem;
  white-space: nowrap;
  text-decoration: none;
  text-overflow: ellipsis;
  border: 1px solid transparent;
  border-top-color: #e0e0e0;
}
.bx--dropdown-link:hover {
  color: #161616;
  border-color: transparent;
}
.bx--dropdown--light .bx--dropdown-link {
  border-top-color: #e0e0e0;
}
.bx--dropdown--sm .bx--dropdown-link {
  height: 2rem;
  padding-top: 0.4375rem;
  padding-bottom: 0.4375rem;
}
.bx--dropdown--xl .bx--dropdown-link {
  height: 3rem;
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
}
.bx--dropdown--focused,
.bx--dropdown-link:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  margin: 0;
  padding: 0.6875rem 1rem;
}
.bx--dropdown-list[aria-activedescendant] .bx--dropdown-link:focus {
  margin: 0 1rem;
  padding: 0.6875rem 0;
  outline: none;
}
.bx--dropdown-list[aria-activedescendant] .bx--dropdown--focused:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  margin: 0;
  padding: 0.6875rem 1rem;
}
.bx--dropdown-list[aria-activedescendant] .bx--dropdown-item:active {
  background-color: inherit;
}
.bx--dropdown-item:hover .bx--dropdown-link {
  border-bottom-color: #e5e5e5;
}
.bx--dropdown--selected {
  display: none;
}
.bx--dropdown--open .bx--dropdown__arrow {
  transform: rotate(-180deg);
}
.bx--dropdown--open.bx--dropdown--xl .bx--dropdown-list {
  max-height: 16.5rem;
}
.bx--dropdown--open.bx--dropdown--sm .bx--dropdown-list {
  max-height: 11rem;
}
.bx--dropdown--open .bx--dropdown-item {
  opacity: 1;
}
.bx--dropdown--disabled {
  border-bottom-color: transparent;
}
.bx--dropdown--disabled:hover {
  background-color: #ffffff;
}
.bx--dropdown--disabled:focus {
  outline: none;
}
.bx--dropdown--disabled .bx--dropdown-text,
.bx--dropdown--disabled .bx--list-box__label {
  color: #c6c6c6;
}
.bx--dropdown--disabled .bx--dropdown__arrow,
.bx--dropdown--disabled .bx--list-box__menu-icon svg {
  fill: #c6c6c6;
}
.bx--dropdown--disabled.bx--dropdown--light:hover {
  background-color: #f4f4f4;
}
.bx--dropdown--disabled .bx--list-box__field,
.bx--dropdown--disabled .bx--list-box__menu-icon {
  cursor: not-allowed;
}
.bx--dropdown--auto-width {
  width: auto;
  max-width: 25rem;
}
.bx--dropdown--inline {
  display: inline-block;
  justify-self: start;
  width: auto;
  background-color: transparent;
  border-bottom-color: transparent;
  transition: background 70ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--dropdown--inline:hover {
  background-color: #e5e5e5;
}
.bx--dropdown--inline.bx--dropdown--disabled {
  background-color: transparent;
}
.bx--dropdown--inline .bx--dropdown__arrow {
  top: 0.5rem;
  right: 0.5rem;
}
.bx--dropdown--inline.bx--dropdown--open {
  background-color: transparent;
}
.bx--dropdown--inline .bx--dropdown-text {
  display: inline-block;
  height: 2rem;
  padding: 0.4375rem 2rem 0.4375rem 0.75rem;
  overflow: visible;
  color: #161616;
}
.bx--dropdown--inline.bx--dropdown--disabled .bx--dropdown-text {
  color: #c6c6c6;
}
.bx--dropdown--inline.bx--dropdown--disabled:focus .bx--dropdown-text {
  outline: 0;
}
.bx--dropdown--inline.bx--dropdown--invalid .bx--dropdown__invalid-icon {
  right: 2rem;
}
.bx--dropdown--inline.bx--dropdown--invalid .bx--dropdown-text {
  padding-right: 3.5rem;
}
.bx--dropdown--inline.bx--dropdown--open:focus .bx--dropdown-list {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.bx--dropdown--inline .bx--dropdown-link {
  font-weight: normal;
}
.bx--dropdown--show-selected .bx--dropdown--selected {
  display: block;
  color: #161616;
  background-color: #e5e5e5;
}
.bx--dropdown--show-selected .bx--dropdown--selected:hover {
  background-color: #e0e0e0;
}
.bx--dropdown--show-selected .bx--dropdown--selected .bx--dropdown-link {
  border-top-color: transparent;
}
.bx--dropdown--show-selected .bx--dropdown--selected + .bx--dropdown-item .bx--dropdown-link {
  border-top-color: transparent;
}
.bx--dropdown--show-selected .bx--dropdown--selected .bx--list-box__menu-item__selected-icon {
  display: block;
}
.bx--dropdown-v2.bx--skeleton,
.bx--dropdown.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
}
.bx--dropdown-v2.bx--skeleton:hover, .bx--dropdown-v2.bx--skeleton:focus, .bx--dropdown-v2.bx--skeleton:active,
.bx--dropdown.bx--skeleton:hover,
.bx--dropdown.bx--skeleton:focus,
.bx--dropdown.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--dropdown-v2.bx--skeleton::before,
.bx--dropdown.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--dropdown-v2.bx--skeleton::before,
.bx--dropdown.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg);
  }
}
/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240;
  }
  100% {
    stroke-dashoffset: 40;
  }
}
@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40;
  }
  100% {
    stroke-dashoffset: 240;
  }
}
.bx--modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9000;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100vh;
  background-color: transparent;
  visibility: hidden;
  opacity: 0;
  transition: background-color 720ms cubic-bezier(0.4, 0.14, 1, 1), opacity 240ms cubic-bezier(0.4, 0.14, 1, 1), visibility 0ms linear 240ms;
  content: "";
}
.bx--modal.is-visible {
  background-color: rgba(22, 22, 22, 0.5);
  visibility: inherit;
  opacity: 1;
  transition: background-color 720ms cubic-bezier(0, 0, 0.3, 1), opacity 240ms cubic-bezier(0, 0, 0.3, 1), visibility 0ms linear;
}
.bx--modal .bx--text-input,
.bx--modal .bx--text-area,
.bx--modal .bx--search-input,
.bx--modal .bx--select-input,
.bx--modal .bx--dropdown,
.bx--modal .bx--dropdown-list,
.bx--modal .bx--number input[type=number],
.bx--modal .bx--date-picker__input {
  background-color: #f4f4f4;
}
.bx--modal.is-visible .bx--modal-container {
  transform: translate3d(0, 0, 0);
  transition: transform 240ms cubic-bezier(0, 0, 0.3, 1);
}
.bx--modal-container {
  position: fixed;
  top: 0;
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-columns: auto;
  width: 100%;
  height: 100%;
  max-height: 100%;
  overflow: hidden;
  background-color: #ffffff;
  outline: 3px solid transparent;
  outline-offset: -3px;
  transform: translate3d(0, -24px, 0);
  transform-origin: top center;
  transition: transform 240ms cubic-bezier(0.4, 0.14, 1, 1);
}
@media (min-width: 42rem) {
  .bx--modal-container {
    position: static;
    width: 84%;
    height: auto;
    max-height: 90%;
  }
  .bx--modal-container .bx--modal-header,
.bx--modal-container .bx--modal-content,
.bx--modal-container .bx--modal-content__regular-content {
    padding-right: 20%;
  }
  .bx--modal-container .bx--modal-content--with-form {
    padding-right: 1rem;
  }
}
@media (min-width: 66rem) {
  .bx--modal-container {
    width: 60%;
    max-height: 84%;
  }
}
@media (min-width: 82rem) {
  .bx--modal-container {
    width: 48%;
  }
}
.bx--modal-header,
.bx--modal-content {
  padding-left: 1rem;
}
.bx--modal-header,
.bx--modal-content,
.bx--modal-content__regular-content {
  padding-right: 1rem;
}
.bx--modal-content--with-form {
  padding-right: 1rem;
}
.bx--modal-container--xs .bx--modal-header {
  padding-right: 3rem;
}
.bx--modal-container--xs .bx--modal-content,
.bx--modal-container--xs .bx--modal-content__regular-content,
.bx--modal-container--xs .bx--modal-content--with-form {
  padding-right: 1rem;
}
@media (min-width: 42rem) {
  .bx--modal-container--xs {
    width: 48%;
  }
}
@media (min-width: 66rem) {
  .bx--modal-container--xs {
    width: 32%;
    max-height: 48%;
  }
}
@media (min-width: 82rem) {
  .bx--modal-container--xs {
    width: 24%;
  }
}
.bx--modal-container--sm .bx--modal-header {
  padding-right: 3rem;
}
.bx--modal-container--sm .bx--modal-content,
.bx--modal-container--sm .bx--modal-content__regular-content,
.bx--modal-container--sm .bx--modal-content--with-form {
  padding-right: 1rem;
}
@media (min-width: 42rem) {
  .bx--modal-container--sm {
    width: 60%;
  }
}
@media (min-width: 66rem) {
  .bx--modal-container--sm {
    width: 42%;
    max-height: 72%;
  }
}
@media (min-width: 82rem) {
  .bx--modal-container--sm {
    width: 36%;
  }
  .bx--modal-container--sm .bx--modal-header,
.bx--modal-container--sm .bx--modal-content,
.bx--modal-container--sm .bx--modal-content__regular-content {
    padding-right: 20%;
  }
  .bx--modal-container--sm .bx--modal-content--with-form {
    padding-right: 1rem;
  }
}
.bx--modal-container--lg .bx--modal-header {
  padding-right: 3rem;
}
.bx--modal-container--lg .bx--modal-content,
.bx--modal-container--lg .bx--modal-content__regular-content,
.bx--modal-container--lg .bx--modal-content--with-form {
  padding-right: 1rem;
}
@media (min-width: 42rem) {
  .bx--modal-container--lg {
    width: 96%;
  }
  .bx--modal-container--lg .bx--modal-header,
.bx--modal-container--lg .bx--modal-content,
.bx--modal-container--lg .bx--modal-content__regular-content {
    padding-right: 20%;
  }
  .bx--modal-container--lg .bx--modal-content--with-form {
    padding-right: 1rem;
  }
}
@media (min-width: 66rem) {
  .bx--modal-container--lg {
    width: 84%;
    max-height: 96%;
  }
}
@media (min-width: 82rem) {
  .bx--modal-container--lg {
    width: 72%;
  }
}
.bx--modal-header {
  grid-row: 1/1;
  grid-column: 1/-1;
  margin-bottom: 0.5rem;
  padding-top: 1rem;
  padding-right: 3rem;
}
.bx--modal-header__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  margin-bottom: 0.25rem;
  color: #525252;
}
.bx--modal-header__heading {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  color: #161616;
}
.bx--modal-content {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
  grid-row: 2/-2;
  grid-column: 1/-1;
  margin-bottom: 3rem;
  padding-top: 0.5rem;
  overflow-y: auto;
  color: #161616;
  font-weight: 400;
}
.bx--modal-content:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--modal-content > * {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
}
.bx--modal-scroll-content > *:last-child {
  padding-bottom: 2rem;
}
.bx--modal-content--overflow-indicator {
  position: absolute;
  bottom: 3rem;
  left: 0;
  grid-row: 2/-2;
  grid-column: 1/-1;
  width: 100%;
  height: 2rem;
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff);
  content: "";
  pointer-events: none;
}
.bx--modal-content:focus ~ .bx--modal-content--overflow-indicator {
  width: calc(100% - 4px);
  margin: 0 2px 2px;
}
@media screen and (-ms-high-contrast: active) {
  .bx--modal-scroll-content > *:last-child {
    padding-bottom: 0;
  }

  .bx--modal-content--overflow-indicator {
    display: none;
  }
}
.bx--modal-footer {
  display: flex;
  grid-row: -1/-1;
  grid-column: 1/-1;
  justify-content: flex-end;
  height: 4rem;
  margin-top: auto;
}
.bx--modal-footer button.bx--btn {
  flex: 0 1 50%;
  max-width: none;
  height: 4rem;
  margin: 0;
  padding-top: 1rem;
  padding-bottom: 2rem;
}
.bx--modal-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 3rem;
  height: 3rem;
  padding: 0.75rem;
  overflow: hidden;
  background-color: transparent;
  border: 2px solid transparent;
  cursor: pointer;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--modal-close:hover {
  background-color: #e5e5e5;
}
.bx--modal-close:focus {
  border-color: #0f62fe;
  outline: none;
}
.bx--modal-close::-moz-focus-inner {
  border: 0;
}
.bx--modal-close__icon {
  width: 1.25rem;
  height: 1.25rem;
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--modal-close__icon {
    fill: ButtonText;
  }
}
.bx--body--with-modal-open {
  overflow: hidden;
}
.bx--body--with-modal-open .bx--tooltip {
  z-index: 9000;
}
.bx--multi-select .bx--list-box__menu {
  min-width: auto;
}
.bx--multi-select .bx--list-box__menu-item__option .bx--checkbox-wrapper {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}
.bx--multi-select .bx--list-box__menu-item__option .bx--checkbox-label {
  display: inline-block;
  width: 100%;
  padding-left: 1.75rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--multi-select .bx--list-box__menu-item__option > .bx--form-item {
  flex-direction: row;
  margin: 0;
}
.bx--multi-select .bx--list-box__menu-item .bx--checkbox:checked ~ .bx--checkbox-label-text {
  color: #161616;
}
.bx--multi-select--filterable .bx--list-box__selection--multi {
  position: absolute;
  right: auto;
  left: 0.5rem;
}
.bx--multi-select--filterable.bx--multi-select--inline,
.bx--multi-select--filterable.bx--multi-select--inline .bx--text-input {
  background-color: transparent;
  border-bottom: 0;
}
.bx--multi-select--selected .bx--text-input {
  padding-left: 3.5rem;
}
.bx--inline-notification {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  min-width: 18rem;
  max-width: 18rem;
  height: auto;
  min-height: 3rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  color: #ffffff;
}
@media (min-width: 42rem) {
  .bx--inline-notification {
    flex-wrap: nowrap;
    max-width: 38rem;
  }
}
@media (min-width: 66rem) {
  .bx--inline-notification {
    max-width: 46rem;
  }
}
@media (min-width: 99rem) {
  .bx--inline-notification {
    max-width: 52rem;
  }
}
.bx--inline-notification:not(.bx--inline-notification--low-contrast) a {
  color: #78a9ff;
}
.bx--inline-notification a {
  text-decoration: none;
}
.bx--inline-notification a:hover {
  text-decoration: underline;
}
.bx--inline-notification a:focus {
  outline: 1px solid #78a9ff;
}
.bx--inline-notification.bx--inline-notification--low-contrast a:focus {
  outline: 1px solid #0f62fe;
}
.bx--inline-notification--low-contrast {
  color: #161616;
}
.bx--inline-notification--low-contrast::before {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border-style: solid;
  border-width: 1px 1px 1px 0;
  filter: opacity(0.4);
  content: "";
  pointer-events: none;
}
.bx--inline-notification--error {
  background: #393939;
  border-left: 3px solid #fa4d56;
}
.bx--inline-notification--error .bx--inline-notification__icon,
.bx--inline-notification--error .bx--toast-notification__icon {
  fill: #fa4d56;
}
.bx--inline-notification--low-contrast.bx--inline-notification--error {
  background: #fff1f1;
  border-left: 3px solid #da1e28;
}
.bx--inline-notification--low-contrast.bx--inline-notification--error .bx--inline-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--error .bx--toast-notification__icon {
  fill: #da1e28;
}
.bx--inline-notification--low-contrast.bx--inline-notification--error::before {
  border-color: #da1e28;
}
.bx--inline-notification--success {
  background: #393939;
  border-left: 3px solid #42be65;
}
.bx--inline-notification--success .bx--inline-notification__icon,
.bx--inline-notification--success .bx--toast-notification__icon {
  fill: #42be65;
}
.bx--inline-notification--low-contrast.bx--inline-notification--success {
  background: #defbe6;
  border-left: 3px solid #24a148;
}
.bx--inline-notification--low-contrast.bx--inline-notification--success .bx--inline-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--success .bx--toast-notification__icon {
  fill: #24a148;
}
.bx--inline-notification--low-contrast.bx--inline-notification--success::before {
  border-color: #24a148;
}
.bx--inline-notification--info,
.bx--inline-notification--info-square {
  background: #393939;
  border-left: 3px solid #4589ff;
}
.bx--inline-notification--info .bx--inline-notification__icon,
.bx--inline-notification--info .bx--toast-notification__icon,
.bx--inline-notification--info-square .bx--inline-notification__icon,
.bx--inline-notification--info-square .bx--toast-notification__icon {
  fill: #4589ff;
}
.bx--inline-notification--low-contrast.bx--inline-notification--info,
.bx--inline-notification--low-contrast.bx--inline-notification--info-square {
  background: #edf5ff;
  border-left: 3px solid #0043ce;
}
.bx--inline-notification--low-contrast.bx--inline-notification--info .bx--inline-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--info .bx--toast-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--info-square .bx--inline-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--info-square .bx--toast-notification__icon {
  fill: #0043ce;
}
.bx--inline-notification--low-contrast.bx--inline-notification--info::before,
.bx--inline-notification--low-contrast.bx--inline-notification--info-square::before {
  border-color: #0043ce;
}
.bx--inline-notification--warning,
.bx--inline-notification--warning-alt {
  background: #393939;
  border-left: 3px solid #f1c21b;
}
.bx--inline-notification--warning .bx--inline-notification__icon,
.bx--inline-notification--warning .bx--toast-notification__icon,
.bx--inline-notification--warning-alt .bx--inline-notification__icon,
.bx--inline-notification--warning-alt .bx--toast-notification__icon {
  fill: #f1c21b;
}
.bx--inline-notification--low-contrast.bx--inline-notification--warning,
.bx--inline-notification--low-contrast.bx--inline-notification--warning-alt {
  background: #fdf6dd;
  border-left: 3px solid #f1c21b;
}
.bx--inline-notification--low-contrast.bx--inline-notification--warning .bx--inline-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--warning .bx--toast-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--warning-alt .bx--inline-notification__icon,
.bx--inline-notification--low-contrast.bx--inline-notification--warning-alt .bx--toast-notification__icon {
  fill: #f1c21b;
}
.bx--inline-notification--low-contrast.bx--inline-notification--warning::before,
.bx--inline-notification--low-contrast.bx--inline-notification--warning-alt::before {
  border-color: #f1c21b;
}
.bx--inline-notification--warning .bx--inline-notification__icon path[opacity="0"] {
  opacity: 1;
  fill: #000000;
}
.bx--inline-notification__details {
  display: flex;
  flex-grow: 1;
  margin: 0 3rem 0 1rem;
}
@media (min-width: 42rem) {
  .bx--inline-notification__details {
    margin: 0 1rem;
  }
}
.bx--inline-notification__icon {
  flex-shrink: 0;
  margin-top: 0.875rem;
  margin-right: 1rem;
}
.bx--inline-notification__text-wrapper {
  display: flex;
  flex-wrap: wrap;
  padding: 0.9375rem 0;
}
.bx--inline-notification__title {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin: 0 0.25rem 0 0;
}
.bx--inline-notification__subtitle {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  word-break: break-word;
}
.bx--inline-notification__action-button.bx--btn--ghost {
  height: 2rem;
  margin-bottom: 0.5rem;
  margin-left: 2.5rem;
  color: #78a9ff;
}
@media (min-width: 42rem) {
  .bx--inline-notification__action-button.bx--btn--ghost {
    margin: 0.5rem 0;
  }
}
.bx--inline-notification--low-contrast .bx--inline-notification__action-button.bx--btn--ghost {
  color: #0f62fe;
}
.bx--inline-notification__action-button.bx--btn--ghost:active,
.bx--inline-notification__action-button.bx--btn--ghost:hover {
  background-color: #4c4c4c;
}
.bx--inline-notification--low-contrast .bx--inline-notification__action-button.bx--btn--ghost:active,
.bx--inline-notification--low-contrast .bx--inline-notification__action-button.bx--btn--ghost:hover {
  background-color: #ffffff;
}
.bx--inline-notification__action-button.bx--btn--ghost:focus {
  border-color: transparent;
  outline: 2px solid #ffffff;
  outline-offset: -2px;
  box-shadow: none;
}
.bx--inline-notification--low-contrast .bx--inline-notification__action-button.bx--btn--ghost:focus {
  outline-color: #0f62fe;
}
.bx--inline-notification--hide-close-button .bx--inline-notification__action-button.bx--btn--ghost {
  margin-right: 0.5rem;
}
.bx--inline-notification__close-button {
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  max-width: 3rem;
  height: 3rem;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--inline-notification__close-button:focus {
  outline: 2px solid #ffffff;
  outline-offset: -2px;
}
.bx--inline-notification__close-button .bx--inline-notification__close-icon {
  fill: #ffffff;
}
@media (min-width: 42rem) {
  .bx--inline-notification__close-button {
    position: static;
  }
}
.bx--inline-notification--low-contrast .bx--inline-notification__close-button:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--inline-notification--low-contrast .bx--inline-notification__close-button .bx--inline-notification__close-icon {
  fill: #161616;
}
.bx--inline-notification--low-contrast .bx--inline-notification__action-button {
  color: #0f62fe;
}
.bx--inline-notification--low-contrast .bx--inline-notification__action-button:active {
  color: #0f62fe;
}
.bx--inline-notification--low-contrast .bx--inline-notification__action-button:active, .bx--inline-notification--low-contrast .bx--inline-notification__action-button:hover {
  background-color: #ffffff;
}
.bx--toast-notification {
  display: flex;
  width: 18rem;
  height: auto;
  margin-top: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0.5rem;
  padding-left: 0.875rem;
  color: #ffffff;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
}
.bx--toast-notification:first-child {
  margin-top: 1rem;
}
@media (min-width: 99rem) {
  .bx--toast-notification {
    width: 22rem;
  }
}
.bx--toast-notification:not(.bx--toast-notification--low-contrast) a {
  color: #78a9ff;
}
.bx--toast-notification a {
  text-decoration: none;
}
.bx--toast-notification a:hover {
  text-decoration: underline;
}
.bx--toast-notification a:focus {
  outline: 1px solid #78a9ff;
}
.bx--toast-notification.bx--toast-notification--low-contrast a:focus {
  outline: 1px solid #0f62fe;
}
.bx--toast-notification--low-contrast {
  color: #161616;
}
.bx--toast-notification--error {
  background: #393939;
  border-left: 3px solid #fa4d56;
}
.bx--toast-notification--error .bx--inline-notification__icon,
.bx--toast-notification--error .bx--toast-notification__icon {
  fill: #fa4d56;
}
.bx--toast-notification--low-contrast.bx--toast-notification--error {
  background: #fff1f1;
  border-left: 3px solid #da1e28;
}
.bx--toast-notification--low-contrast.bx--toast-notification--error .bx--inline-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--error .bx--toast-notification__icon {
  fill: #da1e28;
}
.bx--toast-notification--success {
  background: #393939;
  border-left: 3px solid #42be65;
}
.bx--toast-notification--success .bx--inline-notification__icon,
.bx--toast-notification--success .bx--toast-notification__icon {
  fill: #42be65;
}
.bx--toast-notification--low-contrast.bx--toast-notification--success {
  background: #defbe6;
  border-left: 3px solid #24a148;
}
.bx--toast-notification--low-contrast.bx--toast-notification--success .bx--inline-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--success .bx--toast-notification__icon {
  fill: #24a148;
}
.bx--toast-notification--info,
.bx--toast-notification--info-square {
  background: #393939;
  border-left: 3px solid #4589ff;
}
.bx--toast-notification--info .bx--inline-notification__icon,
.bx--toast-notification--info .bx--toast-notification__icon,
.bx--toast-notification--info-square .bx--inline-notification__icon,
.bx--toast-notification--info-square .bx--toast-notification__icon {
  fill: #4589ff;
}
.bx--toast-notification--low-contrast.bx--toast-notification--info,
.bx--toast-notification--low-contrast.bx--toast-notification--info-square {
  background: #edf5ff;
  border-left: 3px solid #0043ce;
}
.bx--toast-notification--low-contrast.bx--toast-notification--info .bx--inline-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--info .bx--toast-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--info-square .bx--inline-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--info-square .bx--toast-notification__icon {
  fill: #0043ce;
}
.bx--toast-notification--warning,
.bx--toast-notification--warning-alt {
  background: #393939;
  border-left: 3px solid #f1c21b;
}
.bx--toast-notification--warning .bx--inline-notification__icon,
.bx--toast-notification--warning .bx--toast-notification__icon,
.bx--toast-notification--warning-alt .bx--inline-notification__icon,
.bx--toast-notification--warning-alt .bx--toast-notification__icon {
  fill: #f1c21b;
}
.bx--toast-notification--low-contrast.bx--toast-notification--warning,
.bx--toast-notification--low-contrast.bx--toast-notification--warning-alt {
  background: #fdf6dd;
  border-left: 3px solid #f1c21b;
}
.bx--toast-notification--low-contrast.bx--toast-notification--warning .bx--inline-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--warning .bx--toast-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--warning-alt .bx--inline-notification__icon,
.bx--toast-notification--low-contrast.bx--toast-notification--warning-alt .bx--toast-notification__icon {
  fill: #f1c21b;
}
.bx--toast-notification--warning .bx--toast-notification__icon path[opacity="0"] {
  opacity: 1;
  fill: #000000;
}
.bx--toast-notification__icon {
  flex-shrink: 0;
  margin-top: 0.875rem;
  margin-right: 0.875rem;
}
.bx--toast-notification__details {
  margin-right: 1rem;
}
.bx--toast-notification__close-button {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  min-height: 3rem;
  margin-left: auto;
  padding: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  transition: outline 110ms, background-color 110ms;
}
.bx--toast-notification__close-button:focus {
  outline: 2px solid #ffffff;
  outline-offset: -2px;
}
.bx--toast-notification__close-button .bx--toast-notification__close-icon {
  fill: #ffffff;
}
.bx--toast-notification--low-contrast .bx--toast-notification__close-button:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--toast-notification--low-contrast .bx--toast-notification__close-button .bx--toast-notification__close-icon {
  fill: #161616;
}
.bx--toast-notification__title {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-top: 1rem;
  font-weight: 600;
  word-break: break-word;
}
.bx--toast-notification__subtitle {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-top: 0;
  margin-bottom: 1.5rem;
  color: #ffffff;
  word-break: break-word;
}
.bx--toast-notification--low-contrast .bx--toast-notification__subtitle {
  color: #161616;
}
.bx--toast-notification__caption {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-bottom: 1rem;
  color: #ffffff;
}
.bx--toast-notification--low-contrast .bx--toast-notification__caption {
  color: #161616;
}
.bx--tooltip__label {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  display: inline-flex;
  align-items: center;
  color: #525252;
}
.bx--tooltip__label:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger svg {
  fill: #525252;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger svg {
    fill: ButtonText;
  }
}
.bx--tooltip__trigger:not(.bx--btn--icon-only) {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: inline-flex;
  align-items: center;
  font-size: 1rem;
  cursor: pointer;
}
.bx--tooltip__trigger:not(.bx--btn--icon-only)::-moz-focus-inner {
  border: 0;
}
.bx--tooltip__trigger:not(.bx--btn--icon-only):focus {
  outline: 1px solid #0f62fe;
  fill: #0353e9;
}
.bx--tooltip__label .bx--tooltip__trigger {
  margin-left: 0.5rem;
}
.bx--tooltip__label--bold {
  font-weight: 600;
}
.bx--tooltip {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  position: absolute;
  z-index: 6000;
  display: none;
  min-width: 13rem;
  max-width: 18rem;
  margin-top: 0.25rem;
  padding: 1rem;
  color: #ffffff;
  word-wrap: break-word;
  background: #393939;
  border-radius: 0.125rem;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip {
    border: 1px solid transparent;
  }
}
.bx--tooltip:focus {
  outline: 0;
  box-shadow: inset 0 0 0 1px #393939, inset 0 0 0 2px #f4f4f4;
}
.bx--tooltip p {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
.bx--tooltip button {
  padding-right: 2rem;
}
.bx--tooltip .bx--btn:focus {
  border-color: #ffffff;
  outline-color: #393939;
}
.bx--tooltip .bx--link {
  color: #78a9ff;
  font-size: 0.875rem;
}
.bx--tooltip .bx--link:focus {
  outline: 1px solid #ffffff;
  outline-offset: 2px;
}
.bx--tooltip .bx--link:active, .bx--tooltip .bx--link:active:visited, .bx--tooltip .bx--link:active:visited:hover {
  color: #ffffff;
}
.bx--tooltip .bx--link:visited {
  color: #78a9ff;
}
.bx--tooltip .bx--tooltip__content[tabindex="-1"]:focus {
  outline: none;
}
.bx--tooltip .bx--tooltip__caret {
  position: absolute;
  top: calc(-0.4296875rem + 1px);
  right: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0 auto;
  border-right: 0.4296875rem solid transparent;
  border-bottom: 0.4296875rem solid #393939;
  border-left: 0.4296875rem solid transparent;
  content: "";
}
.bx--tooltip .bx--tooltip__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1rem;
}
.bx--tooltip[data-floating-menu-direction=left] .bx--tooltip__caret {
  top: 50%;
  right: calc(-0.4296875rem + 1px);
  left: auto;
  transform: rotate(90deg) translate(50%, -50%);
}
.bx--tooltip[data-floating-menu-direction=top] .bx--tooltip__caret {
  top: auto;
  bottom: calc(-0.4296875rem + 1px);
  transform: rotate(180deg);
}
.bx--tooltip[data-floating-menu-direction=right] .bx--tooltip__caret {
  top: 50%;
  right: auto;
  left: calc(-0.4296875rem + 1px);
  transform: rotate(270deg) translate(50%, -50%);
}
.bx--tooltip__heading {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-bottom: 0.5rem;
}
.bx--tooltip--shown {
  display: block;
}
/* begin legacy definition tooltip TODO: deprecate */
.bx--tooltip--definition {
  position: relative;
}
.bx--tooltip--definition .bx--tooltip__trigger {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  position: relative;
  display: inline-flex;
  color: #161616;
  border-bottom: 1px dotted #0f62fe;
}
.bx--tooltip--definition .bx--tooltip__trigger:hover {
  cursor: pointer;
}
.bx--tooltip--definition .bx--tooltip__trigger:hover + .bx--tooltip--definition__top,
.bx--tooltip--definition .bx--tooltip__trigger:hover + .bx--tooltip--definition__bottom {
  display: block;
}
.bx--tooltip--definition .bx--tooltip__trigger:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip--definition .bx--tooltip__trigger:focus + .bx--tooltip--definition__top,
.bx--tooltip--definition .bx--tooltip__trigger:focus + .bx--tooltip--definition__bottom {
  display: block;
}
.bx--tooltip--definition__bottom,
.bx--tooltip--definition__top {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  position: absolute;
  z-index: 1;
  display: none;
  width: 13rem;
  margin-top: 0.75rem;
  padding: 0.5rem 1rem;
  background: #393939;
  border-radius: 0.125rem;
  cursor: pointer;
  pointer-events: none;
}
.bx--tooltip--definition__bottom p,
.bx--tooltip--definition__top p {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  color: #ffffff;
}
.bx--tooltip--definition__bottom .bx--tooltip__caret,
.bx--tooltip--definition__top .bx--tooltip__caret {
  position: absolute;
  right: 0;
  left: 0;
  width: 0.6rem;
  height: 0.6rem;
  margin-left: 1rem;
  background: #393939;
}
.bx--tooltip--definition__bottom .bx--tooltip__caret {
  top: -0.2rem;
  transform: rotate(-135deg);
}
.bx--tooltip--definition__top {
  margin-top: -2rem;
  transform: translateY(-100%);
}
.bx--tooltip--definition__top .bx--tooltip__caret {
  bottom: -0.2rem;
  transform: rotate(45deg);
}
.bx--tooltip--definition__align-end {
  right: 0;
}
.bx--tooltip--definition__align-center {
  margin-left: 50%;
  transform: translateX(-50%);
}
.bx--tooltip--definition__top.bx--tooltip--definition__align-center {
  margin-left: 50%;
  transform: translate(-50%, -100%);
}
.bx--tooltip--definition__align-center .bx--tooltip__caret {
  left: auto;
  margin-right: calc(50% - 6px);
  margin-left: auto;
}
.bx--tooltip--definition__align-end .bx--tooltip__caret {
  left: auto;
  margin-right: 1rem;
  margin-left: auto;
}
/* end legacy definition tooltip */
.bx--tooltip--definition.bx--tooltip--a11y {
  display: inline-flex;
}
.bx--tooltip--definition button.bx--tooltip--a11y {
  margin: 0;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  border-bottom: 0.0625rem dotted #525252;
  transition: border-color 110ms;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition:hover,
.bx--tooltip__trigger.bx--tooltip__trigger--definition:focus {
  border-bottom-color: #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--a11y::after {
  transition: none;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.5rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after {
  content: attr(aria-label);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--a11y::after {
  content: none;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--visible::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--visible::after, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover::after, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--hidden .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::before {
  top: -0.25rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top + .bx--assistive-text {
  top: -0.5625rem;
  left: 0;
  transform: translate(0, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::before {
  top: -0.25rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-start + .bx--assistive-text {
  top: -0.5625rem;
  left: 0;
  transform: translate(0, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::before {
  top: -0.25rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-center + .bx--assistive-text {
  top: -0.5625rem;
  left: 50%;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::before {
  top: -0.25rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--top.bx--tooltip--align-end + .bx--assistive-text {
  top: -0.5625rem;
  right: 0;
  left: auto;
  transform: translate(0, -100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y::after {
  transition: none;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.5rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after {
  content: attr(aria-label);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y::after {
  content: none;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--visible::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--visible::after, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover::after, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--hidden .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::before {
  bottom: -0.25rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom + .bx--assistive-text {
  bottom: -0.5625rem;
  left: 0;
  transform: translate(0, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--a11y + .bx--assistive-text {
  bottom: -0.5rem;
  transform: translate(0, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::before {
  bottom: -0.25rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start + .bx--assistive-text {
  bottom: -0.5625rem;
  left: 0;
  transform: translate(0, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-start.bx--tooltip--a11y + .bx--assistive-text {
  bottom: -0.5rem;
  transform: translate(0, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::before {
  bottom: -0.25rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center + .bx--assistive-text {
  bottom: -0.5625rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-center.bx--tooltip--a11y + .bx--assistive-text {
  bottom: -0.5rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::before {
  bottom: -0.25rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end + .bx--assistive-text {
  bottom: -0.5625rem;
  right: 0;
  left: auto;
  transform: translate(0, 100%);
}
.bx--tooltip__trigger.bx--tooltip__trigger--definition.bx--tooltip--bottom.bx--tooltip--align-end.bx--tooltip--a11y + .bx--assistive-text {
  bottom: -0.5rem;
  transform: translate(0, 100%);
}
/* begin tooltip icon (TODO: deprecate) */
.bx--tooltip--icon {
  display: inline-flex;
  align-items: center;
}
.bx--tooltip--icon__top,
.bx--tooltip--icon__bottom {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--tooltip--icon__top::before, .bx--tooltip--icon__top::after,
.bx--tooltip--icon__bottom::before,
.bx--tooltip--icon__bottom::after {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: absolute;
  display: flex;
  align-items: center;
  opacity: 0;
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  pointer-events: none;
}
.bx--tooltip--icon__top::before,
.bx--tooltip--icon__bottom::before {
  right: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0 auto;
  margin-top: 1px;
  margin-left: 50%;
  border-color: transparent transparent #393939 transparent;
  border-style: solid;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  content: "";
}
.bx--tooltip--icon__top::after,
.bx--tooltip--icon__bottom::after {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  min-width: 1.5rem;
  max-width: 13rem;
  height: 1.5rem;
  margin-left: 50%;
  padding: 0 1rem;
  color: #ffffff;
  font-weight: 400;
  white-space: nowrap;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  content: attr(aria-label);
  pointer-events: none;
}
.bx--tooltip--icon__top:hover::before, .bx--tooltip--icon__top:hover::after, .bx--tooltip--icon__top:focus::before, .bx--tooltip--icon__top:focus::after,
.bx--tooltip--icon__bottom:hover::before,
.bx--tooltip--icon__bottom:hover::after,
.bx--tooltip--icon__bottom:focus::before,
.bx--tooltip--icon__bottom:focus::after {
  opacity: 1;
}
.bx--tooltip--icon__top:hover svg, .bx--tooltip--icon__top:focus svg,
.bx--tooltip--icon__bottom:hover svg,
.bx--tooltip--icon__bottom:focus svg {
  fill: #525252;
}
.bx--tooltip--icon__top:focus,
.bx--tooltip--icon__bottom:focus {
  outline: 1px solid transparent;
}
.bx--tooltip--icon__top:focus svg,
.bx--tooltip--icon__bottom:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--tooltip--icon__top::before {
  transform: translate(-50%, calc(-100% - 9px)) rotate(180deg);
  top: 1px;
}
.bx--tooltip--icon__top::after {
  transform: translate(-50%, calc(-100% - 12px));
  top: 0;
}
.bx--tooltip--icon__bottom::before {
  transform: translate(-50%, 10px) rotate(0);
  bottom: 0;
}
.bx--tooltip--icon__bottom::after {
  transform: translate(-50%, calc(100% + 10px));
  bottom: 0;
}
.bx--tooltip--icon__top.bx--tooltip--icon__align-start::before {
  transform: translate(0, calc(-100% - 9px)) rotate(180deg);
  top: 1px;
  margin-left: 4px;
}
.bx--tooltip--icon__top.bx--tooltip--icon__align-start::after {
  transform: translate(0, calc(-100% - 12px));
  top: 0;
  margin-left: 0;
}
.bx--tooltip--icon__top.bx--tooltip--icon__align-end::before {
  transform: translate(0, calc(-100% - 9px)) rotate(180deg);
  top: 1px;
  right: 0;
  left: auto;
  margin-right: 4px;
}
.bx--tooltip--icon__top.bx--tooltip--icon__align-end::after {
  transform: translate(0, calc(-100% - 12px));
  top: 0;
  margin-left: 0;
  right: 0;
}
.bx--tooltip--icon__bottom.bx--tooltip--icon__align-start::before {
  transform: translate(0, 10px) rotate(0);
  bottom: 0;
  margin-left: 4px;
}
.bx--tooltip--icon__bottom.bx--tooltip--icon__align-start::after {
  transform: translate(0, calc(100% + 10px));
  bottom: 0;
  margin-left: 0;
}
.bx--tooltip--icon__bottom.bx--tooltip--icon__align-end::before {
  transform: translate(0, 10px) rotate(0);
  bottom: 0;
  right: 0;
  left: auto;
  margin-right: 4px;
}
.bx--tooltip--icon__bottom.bx--tooltip--icon__align-end::after {
  transform: translate(0, calc(100% + 10px));
  bottom: 0;
  margin-left: 0;
  right: 0;
}
.bx--tooltip--icon .bx--tooltip__trigger svg {
  margin-left: 0;
}
/* end legacy tooltip icon */
.bx--tooltip__trigger:hover svg, .bx--tooltip__trigger:focus svg {
  fill: #525252;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger:hover svg, .bx--tooltip__trigger:focus svg {
    fill: ButtonText;
  }
}
.bx--tooltip__trigger.bx--tooltip--top {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--tooltip__trigger.bx--tooltip--top:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--top:focus {
  outline: 1px solid transparent;
}
.bx--tooltip__trigger.bx--tooltip--top:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--a11y::after {
  transition: none;
}
.bx--tooltip__trigger.bx--tooltip--top::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--tooltip__trigger.bx--tooltip--top::after {
  content: attr(aria-label);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--a11y::after {
  content: none;
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--visible::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--visible::after, .bx--tooltip__trigger.bx--tooltip--top:hover::before, .bx--tooltip__trigger.bx--tooltip--top:hover::after, .bx--tooltip__trigger.bx--tooltip--top:focus::before, .bx--tooltip__trigger.bx--tooltip--top:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--top:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--top:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--hidden .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--tooltip__trigger.bx--tooltip--top::before, .bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--top::before {
  top: -0.5rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip--top::after,
.bx--tooltip__trigger.bx--tooltip--top .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top + .bx--assistive-text {
  top: -0.8125rem;
  left: 50%;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::before {
  top: -0.5rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-start + .bx--assistive-text {
  top: -0.8125rem;
  left: 0;
  transform: translate(0, -100%);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::before {
  top: -0.5rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-center + .bx--assistive-text {
  top: -0.8125rem;
  left: 50%;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end + .bx--assistive-text {
  top: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::before {
  top: -0.5rem;
  border-color: #393939 transparent transparent transparent;
  border-width: 0.3125rem 0.25rem 0 0.25rem;
  transform: translate(-50%, -100%);
}
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--top.bx--tooltip--align-end + .bx--assistive-text {
  top: -0.8125rem;
  right: 0;
  left: auto;
  transform: translate(0, -100%);
}
.bx--tooltip__trigger.bx--tooltip--right {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--tooltip__trigger.bx--tooltip--right:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--right:focus {
  outline: 1px solid transparent;
}
.bx--tooltip__trigger.bx--tooltip--right:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--a11y::after {
  transition: none;
}
.bx--tooltip__trigger.bx--tooltip--right::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--tooltip__trigger.bx--tooltip--right::after {
  content: attr(aria-label);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--a11y::after {
  content: none;
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--visible::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--visible::after, .bx--tooltip__trigger.bx--tooltip--right:hover::before, .bx--tooltip__trigger.bx--tooltip--right:hover::after, .bx--tooltip__trigger.bx--tooltip--right:focus::before, .bx--tooltip__trigger.bx--tooltip--right:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--right:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--right:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--hidden .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--tooltip__trigger.bx--tooltip--right::before, .bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
  top: 50%;
  right: 0;
}
.bx--tooltip__trigger.bx--tooltip--right::before {
  right: -0.5rem;
  border-color: transparent #393939 transparent transparent;
  border-width: 0.25rem 0.3125rem 0.25rem 0;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--right::after,
.bx--tooltip__trigger.bx--tooltip--right .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right + .bx--assistive-text {
  right: -0.8125rem;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start + .bx--assistive-text {
  top: 50%;
  right: 0;
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::before {
  right: -0.5rem;
  border-color: transparent #393939 transparent transparent;
  border-width: 0.25rem 0.3125rem 0.25rem 0;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-start + .bx--assistive-text {
  right: -0.8125rem;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center + .bx--assistive-text {
  top: 50%;
  right: 0;
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::before {
  right: -0.5rem;
  border-color: transparent #393939 transparent transparent;
  border-width: 0.25rem 0.3125rem 0.25rem 0;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-center + .bx--assistive-text {
  right: -0.8125rem;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end + .bx--assistive-text {
  top: 50%;
  right: 0;
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::before {
  right: -0.5rem;
  border-color: transparent #393939 transparent transparent;
  border-width: 0.25rem 0.3125rem 0.25rem 0;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--right.bx--tooltip--align-end + .bx--assistive-text {
  right: -0.8125rem;
  transform: translate(100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--bottom {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--tooltip__trigger.bx--tooltip--bottom:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--bottom:focus {
  outline: 1px solid transparent;
}
.bx--tooltip__trigger.bx--tooltip--bottom:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--a11y::after {
  transition: none;
}
.bx--tooltip__trigger.bx--tooltip--bottom::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--tooltip__trigger.bx--tooltip--bottom::after {
  content: attr(aria-label);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--a11y::after {
  content: none;
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--visible::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--visible::after, .bx--tooltip__trigger.bx--tooltip--bottom:hover::before, .bx--tooltip__trigger.bx--tooltip--bottom:hover::after, .bx--tooltip__trigger.bx--tooltip--bottom:focus::before, .bx--tooltip__trigger.bx--tooltip--bottom:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--bottom:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--bottom:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--hidden .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--tooltip__trigger.bx--tooltip--bottom::before, .bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--bottom::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip--bottom::after,
.bx--tooltip__trigger.bx--tooltip--bottom .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom + .bx--assistive-text {
  bottom: -0.8125rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-start + .bx--assistive-text {
  bottom: -0.8125rem;
  left: 0;
  transform: translate(0, 100%);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-center + .bx--assistive-text {
  bottom: -0.8125rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end + .bx--assistive-text {
  bottom: 0;
  left: 50%;
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::before {
  bottom: -0.5rem;
  border-color: transparent transparent #393939 transparent;
  border-width: 0 0.25rem 0.3125rem 0.25rem;
  transform: translate(-50%, 100%);
}
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--bottom.bx--tooltip--align-end + .bx--assistive-text {
  bottom: -0.8125rem;
  right: 0;
  left: auto;
  transform: translate(0, 100%);
}
.bx--tooltip__trigger.bx--tooltip--left {
  position: relative;
  display: inline-flex;
  align-items: center;
  overflow: visible;
  cursor: pointer;
}
.bx--tooltip__trigger.bx--tooltip--left:focus {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--left:focus {
  outline: 1px solid transparent;
}
.bx--tooltip__trigger.bx--tooltip--left:focus svg {
  outline: 1px solid #0f62fe;
}
.bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
  position: absolute;
  z-index: 6000;
  display: flex;
  align-items: center;
  opacity: 0;
  pointer-events: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
    display: inline-block;
  }
}
.bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after {
  transition: opacity 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--a11y::after {
  transition: none;
}
.bx--tooltip__trigger.bx--tooltip--left::before {
  width: 0;
  height: 0;
  border-style: solid;
  content: "";
}
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
  box-sizing: content-box;
  color: inherit;
  white-space: normal;
  word-break: break-word;
  opacity: 1;
}
.bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 1.5rem;
  max-width: 13rem;
  height: auto;
  padding: 0.1875rem 1rem;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  background-color: #393939;
  border-radius: 0.125rem;
  transform: translateX(-50%);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-accelerator: true) {
  .bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
    width: auto;
  }
}
@supports (-ms-ime-align: auto) {
  .bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
    width: auto;
  }
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
    border: 1px solid transparent;
  }
}
.bx--tooltip__trigger.bx--tooltip--left::after {
  content: attr(aria-label);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--a11y::after {
  content: none;
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--visible::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--visible::after, .bx--tooltip__trigger.bx--tooltip--left:hover::before, .bx--tooltip__trigger.bx--tooltip--left:hover::after, .bx--tooltip__trigger.bx--tooltip--left:focus::before, .bx--tooltip__trigger.bx--tooltip--left:focus::after {
  opacity: 1;
}
@keyframes tooltip-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text {
  margin: auto;
  overflow: visible;
  clip: auto;
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--visible .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--visible + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--visible.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--left:hover .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left:hover + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left:hover.bx--tooltip--a11y::before, .bx--tooltip__trigger.bx--tooltip--left:focus .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left:focus + .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left:focus.bx--tooltip--a11y::before {
  -webkit-animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
          animation: tooltip-fade 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--hidden .bx--assistive-text, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--hidden + .bx--assistive-text {
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--hidden.bx--tooltip--a11y::before {
  opacity: 0;
  -webkit-animation: none;
          animation: none;
}
.bx--tooltip__trigger.bx--tooltip--left::before, .bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
  top: 50%;
  left: 0;
}
.bx--tooltip__trigger.bx--tooltip--left::before {
  left: -0.5rem;
  border-color: transparent transparent transparent #393939;
  border-width: 0.25rem 0 0.25rem 0.3125rem;
  transform: translate(-100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--left::after,
.bx--tooltip__trigger.bx--tooltip--left .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left + .bx--assistive-text {
  left: -0.8125rem;
  transform: translate(-100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start + .bx--assistive-text {
  top: 50%;
  left: 0;
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::before {
  left: -0.5rem;
  border-color: transparent transparent transparent #393939;
  border-width: 0.25rem 0 0.25rem 0.3125rem;
  transform: translate(-100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start::after,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-start + .bx--assistive-text {
  left: -0.8125rem;
  transform: translate(-100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center + .bx--assistive-text {
  top: 50%;
  left: 0;
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::before {
  left: -0.5rem;
  border-color: transparent transparent transparent #393939;
  border-width: 0.25rem 0 0.25rem 0.3125rem;
  transform: translate(-100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center::after,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-center + .bx--assistive-text {
  left: -0.8125rem;
  transform: translate(-100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::before, .bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end + .bx--assistive-text {
  top: 50%;
  left: 0;
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::before {
  left: -0.5rem;
  border-color: transparent transparent transparent #393939;
  border-width: 0.25rem 0 0.25rem 0.3125rem;
  transform: translate(-100%, -50%);
}
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end::after,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end .bx--assistive-text,
.bx--tooltip__trigger.bx--tooltip--left.bx--tooltip--align-end + .bx--assistive-text {
  left: -0.8125rem;
  transform: translate(-100%, -50%);
}
.bx--tabs {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: relative;
  width: 100%;
  height: auto;
  color: #161616;
}
@media (min-width: 42rem) {
  .bx--tabs {
    min-height: 2.5rem;
    background: none;
  }
}
@media (min-width: 42rem) {
  .bx--tabs--container {
    min-height: 3rem;
  }
}
.bx--tabs-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 2.5rem;
  padding: 0 3rem 0 1rem;
  color: #161616;
  background-color: #ffffff;
  border-bottom: 1px solid #8d8d8d;
  outline: 2px solid transparent;
  cursor: pointer;
}
@media (min-width: 42rem) {
  .bx--tabs-trigger {
    display: none;
  }
}
.bx--tabs-trigger:focus,
.bx--tabs-trigger:active {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--tabs-trigger svg {
  position: absolute;
  right: 1rem;
  transition: transform 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
.bx--tabs-trigger--open:focus,
.bx--tabs-trigger--open:active {
  outline: 2px solid transparent;
  outline-offset: -2px;
  transition: outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tabs-trigger--open {
  background: #e0e0e0;
}
.bx--tabs-trigger--open svg {
  transform: rotate(-180deg);
  transform-origin: 50% 45%;
  transition: transform 70ms;
}
.bx--tabs--light.bx--tabs-trigger {
  background-color: #f4f4f4;
}
.bx--tabs-trigger-text {
  padding-top: 2px;
  overflow: hidden;
  color: #161616;
  font-weight: 400;
  white-space: nowrap;
  text-decoration: none;
  text-overflow: ellipsis;
}
.bx--tabs-trigger-text:hover {
  color: #161616;
}
.bx--tabs-trigger-text:focus {
  outline: none;
}
.bx--tabs__nav {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  position: absolute;
  z-index: 6000;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: 600px;
  margin: 0;
  padding: 0;
  list-style: none;
  background: #ffffff;
  transition: max-height 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
@media (min-width: 42rem) {
  .bx--tabs__nav {
    z-index: auto;
    flex-direction: row;
    width: auto;
    background: none;
    box-shadow: none;
    transition: inherit;
  }
}
.bx--tabs__nav--hidden {
  max-height: 0;
  overflow: hidden;
  transition: max-height 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
@media (min-width: 42rem) {
  .bx--tabs__nav--hidden {
    display: flex;
    max-width: 100%;
    max-height: none;
    overflow-x: auto;
    transition: inherit;
  }
}
.bx--tabs__nav-item {
  display: flex;
  width: 100%;
  height: 2.5rem;
  padding: 0;
  background-color: #ffffff;
  cursor: pointer;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
@media (min-width: 42rem) {
  .bx--tabs__nav-item {
    height: auto;
    background: transparent;
  }
  .bx--tabs__nav-item + .bx--tabs__nav-item {
    margin-left: 0.0625rem;
  }
}
@media (min-width: 42rem) {
  .bx--tabs--container .bx--tabs__nav-item {
    background-color: #e0e0e0;
  }
  .bx--tabs--container .bx--tabs__nav-item + .bx--tabs__nav-item {
    margin-left: 0;
    box-shadow: -1px 0 0 0 #8d8d8d;
  }
  .bx--tabs--container .bx--tabs__nav-item + .bx--tabs__nav-item.bx--tabs__nav-item--selected, .bx--tabs--container .bx--tabs__nav-item.bx--tabs__nav-item--selected + .bx--tabs__nav-item {
    box-shadow: none;
  }
}
.bx--tabs__nav-item .bx--tabs__nav-link {
  transition: color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), border-bottom-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
@media (min-width: 42rem) {
  .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--selected) {
    background: transparent;
  }
}
.bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--disabled) {
  background-color: #e5e5e5;
  box-shadow: 0 -1px 0 #e5e5e5;
}
@media (min-width: 42rem) {
  .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--disabled) {
    background-color: transparent;
  }
  .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--disabled) + .bx--tabs__nav-item {
    box-shadow: none;
  }
}
@media (min-width: 42rem) {
  .bx--tabs--container .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--disabled) {
    background-color: #cacaca;
  }
}
.bx--tabs__nav-item--disabled,
.bx--tabs__nav-item--disabled:hover {
  outline: none;
  cursor: not-allowed;
}
@media (min-width: 42rem) {
  .bx--tabs--container .bx--tabs__nav-item.bx--tabs__nav-item--disabled,
.bx--tabs--container .bx--tabs__nav-item.bx--tabs__nav-item--disabled:hover {
    background-color: #c6c6c6;
  }
}
@media (min-width: 42rem) {
  .bx--tabs--container .bx--tabs__nav-item--disabled .bx--tabs__nav-link {
    color: #8d8d8d;
    border-bottom: none;
  }
}
.bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) {
  display: none;
  border: none;
  transition: color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
@media (min-width: 42rem) {
  .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) {
    display: flex;
  }
  .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link,
.bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:focus,
.bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:active {
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.29;
    letter-spacing: 0.16px;
    color: #161616;
    border-bottom: 2px solid #0f62fe;
  }
}
@media (min-width: 42rem) {
  .bx--tabs--container .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled),
.bx--tabs--container .bx--tabs__nav-item--selected:hover:not(.bx--tabs__nav-item--disabled) {
    background-color: #ffffff;
  }
  .bx--tabs--container .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link,
.bx--tabs--container .bx--tabs__nav-item--selected:hover:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link {
    padding: 0.5rem 1rem;
    line-height: calc(3rem - (0.5rem * 2));
    border-bottom: none;
    box-shadow: inset 0 2px 0 0 #0f62fe;
  }
  .bx--tabs--container .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:focus,
.bx--tabs--container .bx--tabs__nav-item--selected:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:active,
.bx--tabs--container .bx--tabs__nav-item--selected:hover:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:focus,
.bx--tabs--container .bx--tabs__nav-item--selected:hover:not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link:active {
    box-shadow: none;
  }
}
a.bx--tabs__nav-link {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: inline-block;
  width: calc(100% - 32px);
  height: 2.5rem;
  margin: 0 1rem;
  padding: 0.75rem 0;
  overflow: hidden;
  color: #525252;
  font-weight: 400;
  line-height: 1rem;
  white-space: nowrap;
  text-decoration: none;
  text-overflow: ellipsis;
  border-bottom: 1px solid #e0e0e0;
  transition: border 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
a.bx--tabs__nav-link:focus, a.bx--tabs__nav-link:active {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  width: 100%;
  margin: 0;
  padding-left: 16px;
}
@media (min-width: 42rem) {
  a.bx--tabs__nav-link {
    width: 10rem;
    margin: 0;
    padding: 0.75rem 1rem 0.5rem;
    line-height: inherit;
    border-bottom: 2px solid #e0e0e0;
  }
  a.bx--tabs__nav-link:focus, a.bx--tabs__nav-link:active {
    width: 10rem;
    border-bottom: 2px;
  }
}
@media (min-width: 42rem) {
  .bx--tabs--container a.bx--tabs__nav-link {
    height: 3rem;
    padding: 0.5rem 1rem;
    line-height: calc(3rem - (0.5rem * 2));
    border-bottom: none;
  }
}
.bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link {
  color: #161616;
}
@media (min-width: 42rem) {
  .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link {
    color: #161616;
    border-bottom: 2px solid #8d8d8d;
  }
}
@media (min-width: 42rem) {
  .bx--tabs--container .bx--tabs__nav-item:hover:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled) .bx--tabs__nav-link {
    border-bottom: none;
  }
}
.bx--tabs__nav-item--disabled .bx--tabs__nav-link {
  color: #c6c6c6;
  border-bottom: 2px solid #ffffff;
  pointer-events: none;
}
.bx--tabs__nav-item--disabled:hover .bx--tabs__nav-link {
  border-bottom: 2px solid #ffffff;
  cursor: no-drop;
}
.bx--tabs__nav-item--disabled .bx--tabs__nav-link:focus,
.bx--tabs__nav-item--disabled a.bx--tabs__nav-link:active {
  border-bottom: 2px solid #ffffff;
  outline: none;
}
.bx--tabs__nav-item:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled):not(.bx--tabs__nav-item--selected) .bx--tabs__nav-link:focus,
.bx--tabs__nav-item:not(.bx--tabs__nav-item--selected):not(.bx--tabs__nav-item--disabled):not(.bx--tabs__nav-item--selected) a.bx--tabs__nav-link:active {
  color: #525252;
}
.bx--tab-content {
  padding: 1rem;
}
.bx--tabs.bx--skeleton {
  cursor: default;
  pointer-events: none;
}
.bx--tabs.bx--skeleton .bx--tabs__nav-link {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 4.6875rem;
  height: 0.75rem;
}
.bx--tabs.bx--skeleton .bx--tabs__nav-link:hover, .bx--tabs.bx--skeleton .bx--tabs__nav-link:focus, .bx--tabs.bx--skeleton .bx--tabs__nav-link:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--tabs.bx--skeleton .bx--tabs__nav-link::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--tabs.bx--skeleton .bx--tabs__nav-link::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--tabs.bx--skeleton .bx--tabs-trigger {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 6.25rem;
}
.bx--tabs.bx--skeleton .bx--tabs-trigger:hover, .bx--tabs.bx--skeleton .bx--tabs-trigger:focus, .bx--tabs.bx--skeleton .bx--tabs-trigger:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--tabs.bx--skeleton .bx--tabs-trigger::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--tabs.bx--skeleton .bx--tabs-trigger::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--tabs.bx--skeleton .bx--tabs-trigger svg {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--tabs--scrollable {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  width: 100%;
  height: auto;
  min-height: 2.5rem;
  color: #161616;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container {
  min-height: 3rem;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav {
  display: flex;
  flex-direction: row;
  width: auto;
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow: auto hidden;
  list-style: none;
  transition: max-height 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
  scrollbar-width: none;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav::-webkit-scrollbar {
  display: none;
}
.bx--tabs--scrollable .bx--tabs__overflow-indicator--left,
.bx--tabs--scrollable .bx--tabs__overflow-indicator--right {
  z-index: 1;
  flex: 1 0 auto;
  width: 0.5rem;
}
.bx--tabs--scrollable .bx--tabs__overflow-indicator--left {
  margin-right: -0.5rem;
  background-image: linear-gradient(to left, transparent, #f4f4f4);
}
.bx--tabs--scrollable .bx--tabs__overflow-indicator--right {
  margin-left: -0.5rem;
  background-image: linear-gradient(to right, transparent, #f4f4f4);
}
.bx--tabs--scrollable .bx--tabs--scrollable--light .bx--tabs__overflow-indicator--left {
  background-image: linear-gradient(to left, transparent, #ffffff);
}
.bx--tabs--scrollable .bx--tabs--scrollable--light .bx--tabs__overflow-indicator--right {
  background-image: linear-gradient(to right, transparent, #ffffff);
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs__overflow-indicator--left {
  background-image: linear-gradient(to left, transparent, #e0e0e0);
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs__overflow-indicator--right {
  background-image: linear-gradient(to right, transparent, #e0e0e0);
}
@media not all and (-webkit-min-device-pixel-ratio: 0), not all and (min-resolution: 0.001dpcm) {
  @supports (-webkit-appearance: none) and (stroke-color: transparent) {
    .bx--tabs--scrollable .bx--tabs__overflow-indicator--left {
      margin-right: -1rem;
      background-image: linear-gradient(to left, rgba(244, 244, 244, 0), #f4f4f4);
    }
    .bx--tabs--scrollable .bx--tabs__overflow-indicator--right {
      margin-left: -1rem;
      background-image: linear-gradient(to right, rgba(244, 244, 244, 0), #f4f4f4);
    }
    .bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs__overflow-indicator--left {
      background-image: linear-gradient(to left, rgba(224, 224, 224, 0), #e0e0e0);
    }
    .bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs__overflow-indicator--right {
      background-image: linear-gradient(to right, rgba(224, 224, 224, 0), #e0e0e0);
    }
  }
}
.bx--tabs--scrollable .bx--tab--overflow-nav-button {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
}
.bx--tabs--scrollable .bx--tab--overflow-nav-button::-moz-focus-inner {
  border: 0;
}
.bx--tabs--scrollable .bx--tab--overflow-nav-button:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--tabs--scrollable .bx--tab--overflow-nav-button--hidden {
  display: none;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tab--overflow-nav-button {
  width: 3rem;
  margin: 0;
  background-color: #e0e0e0;
}
.bx--tabs--scrollable .bx--tab--overflow-nav-button svg {
  fill: #161616;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item {
  display: flex;
  padding: 0;
  cursor: pointer;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item + .bx--tabs--scrollable__nav-item {
  margin-left: 0.0625rem;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item {
  background-color: #e0e0e0;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item + .bx--tabs--scrollable__nav-item {
  margin-left: 0;
  box-shadow: -0.0625rem 0 0 0 #8d8d8d;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item + .bx--tabs--scrollable__nav-item.bx--tabs--scrollable__nav-item--selected, .bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item.bx--tabs--scrollable__nav-item--selected + .bx--tabs--scrollable__nav-item {
  box-shadow: none;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item .bx--tabs--scrollable__nav-link {
  transition: color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), border-bottom-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item:hover {
  background-color: #cacaca;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--disabled,
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--disabled:hover {
  background-color: transparent;
  outline: none;
  cursor: not-allowed;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item.bx--tabs--scrollable__nav-item--disabled, .bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item.bx--tabs--scrollable__nav-item--disabled:hover {
  background-color: #c6c6c6;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--selected {
  transition: color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--selected .bx--tabs--scrollable__nav-link,
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--selected .bx--tabs--scrollable__nav-link:focus,
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--selected .bx--tabs--scrollable__nav-link:active {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  color: #161616;
  border-bottom: 2px solid #0f62fe;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected, .bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected:hover {
  background-color: #ffffff;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected .bx--tabs--scrollable__nav-link:focus,
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected .bx--tabs--scrollable__nav-link:active, .bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected:hover .bx--tabs--scrollable__nav-link:focus,
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected:hover .bx--tabs--scrollable__nav-link:active {
  box-shadow: none;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected .bx--tabs--scrollable__nav-link {
  line-height: calc(3rem - (0.5rem * 2));
  box-shadow: inset 0 2px 0 0 #0f62fe;
}
.bx--tabs--scrollable.bx--tabs--scrollable--light.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected, .bx--tabs--scrollable.bx--tabs--scrollable--light.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--selected:hover {
  background-color: #f4f4f4;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-link {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  width: 10rem;
  padding: 0.75rem 1rem 0.5rem;
  overflow: hidden;
  color: #525252;
  white-space: nowrap;
  text-align: left;
  text-decoration: none;
  text-overflow: ellipsis;
  border-bottom: 2px solid #e0e0e0;
  transition: border 70ms cubic-bezier(0.2, 0, 0.38, 0.9), outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-link::-moz-focus-inner {
  border: 0;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-link:focus, .bx--tabs--scrollable .bx--tabs--scrollable__nav-link:active {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-link {
  height: 3rem;
  padding: 0.5rem 1rem;
  line-height: calc(3rem - (0.5rem * 2));
  border-bottom: 0;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item:hover .bx--tabs--scrollable__nav-link {
  color: #161616;
  border-bottom: 2px solid #8d8d8d;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item .bx--tabs--scrollable__nav-link {
  border-bottom: none;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--disabled .bx--tabs--scrollable__nav-link {
  color: #c6c6c6;
  border-bottom: 2px solid #ffffff;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--disabled:hover .bx--tabs--scrollable__nav-link {
  color: #c6c6c6;
  border-bottom: 2px solid #ffffff;
  cursor: not-allowed;
  pointer-events: none;
}
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--disabled .bx--tabs--scrollable__nav-link:focus,
.bx--tabs--scrollable .bx--tabs--scrollable__nav-item--disabled .bx--tabs--scrollable__nav-link:active {
  border-bottom: 2px solid #ffffff;
  outline: none;
}
.bx--tabs--scrollable .bx--tabs--scrollable--light .bx--tabs--scrollable__nav-item--disabled .bx--tabs--scrollable__nav-link {
  border-bottom-color: #e0e0e0;
}
.bx--tabs--scrollable .bx--tabs--scrollable--light .bx--tabs--scrollable__nav-item--disabled:hover .bx--tabs--scrollable__nav-link {
  border-bottom-color: #e0e0e0;
}
.bx--tabs--scrollable .bx--tabs--scrollable--light .bx--tabs--scrollable__nav-item--disabled .bx--tabs--scrollable__nav-link:focus,
.bx--tabs--scrollable .bx--tabs--scrollable--light .bx--tabs--scrollable__nav-item--disabled .bx--tabs--scrollable__nav-link:active {
  border-bottom-color: #e0e0e0;
}
.bx--tabs--scrollable.bx--tabs--scrollable--container .bx--tabs--scrollable__nav-item--disabled .bx--tabs--scrollable__nav-link {
  color: #8d8d8d;
  border-bottom: none;
}
.bx--tabs--scrollable .bx--tab-content {
  padding: 1rem;
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton {
  cursor: default;
  pointer-events: none;
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs--scrollable__nav-link {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 4.6875rem;
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs--scrollable__nav-link:hover, .bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs--scrollable__nav-link:focus, .bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs--scrollable__nav-link:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs--scrollable__nav-link::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs--scrollable__nav-link::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs-trigger {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 4.6875rem;
  margin-right: 0.0625rem;
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs-trigger:hover, .bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs-trigger:focus, .bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs-trigger:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs-trigger::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs-trigger::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--tabs--scrollable .bx--tabs.bx--skeleton .bx--tabs-trigger svg {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--tag {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  color: #525252;
  background-color: #e0e0e0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  max-width: 100%;
  min-height: 1.5rem;
  margin: 0.25rem;
  padding: 0.25rem 0.5rem;
  word-break: break-word;
  border-radius: 0.9375rem;
  cursor: default;
}
.bx--tag::-moz-focus-inner {
  border: 0;
}
.bx--tag .bx--tag__close-icon:hover {
  background-color: #c6c6c6;
}
.bx--tag:not(:first-child) {
  margin-left: 0;
}
.bx--tag--red {
  color: #a2191f;
  background-color: #ffd7d9;
}
.bx--tag--red .bx--tag__close-icon:hover {
  background-color: #ffb3b8;
}
.bx--tag--magenta {
  color: #9f1853;
  background-color: #ffd6e8;
}
.bx--tag--magenta .bx--tag__close-icon:hover {
  background-color: #ffafd2;
}
.bx--tag--purple {
  color: #6929c4;
  background-color: #e8daff;
}
.bx--tag--purple .bx--tag__close-icon:hover {
  background-color: #d4bbff;
}
.bx--tag--blue {
  color: #0043ce;
  background-color: #d0e2ff;
}
.bx--tag--blue .bx--tag__close-icon:hover {
  background-color: #a6c8ff;
}
.bx--tag--cyan {
  color: #00539a;
  background-color: #bae6ff;
}
.bx--tag--cyan .bx--tag__close-icon:hover {
  background-color: #82cfff;
}
.bx--tag--teal {
  color: #005d5d;
  background-color: #9ef0f0;
}
.bx--tag--teal .bx--tag__close-icon:hover {
  background-color: #3ddbd9;
}
.bx--tag--green {
  color: #0e6027;
  background-color: #a7f0ba;
}
.bx--tag--green .bx--tag__close-icon:hover {
  background-color: #6fdc8c;
}
.bx--tag--gray {
  color: #525252;
  background-color: #e0e0e0;
}
.bx--tag--gray .bx--tag__close-icon:hover {
  background-color: #c6c6c6;
}
.bx--tag--cool-gray {
  color: #4d5358;
  background-color: #dde1e6;
}
.bx--tag--cool-gray .bx--tag__close-icon:hover {
  background-color: #c1c7cd;
}
.bx--tag--warm-gray {
  color: #565151;
  background-color: #e5e0df;
}
.bx--tag--warm-gray .bx--tag__close-icon:hover {
  background-color: #cac5c4;
}
.bx--tag--high-contrast {
  color: #ffffff;
  background-color: #393939;
}
.bx--tag--high-contrast .bx--tag__close-icon:hover {
  background-color: #4c4c4c;
}
.bx--tag--disabled,
.bx--tag--filter.bx--tag--disabled {
  color: #c6c6c6;
  background-color: #ffffff;
}
.bx--tag--disabled .bx--tag__close-icon:hover,
.bx--tag--filter.bx--tag--disabled .bx--tag__close-icon:hover {
  background-color: #ffffff;
}
.bx--tag--disabled:hover,
.bx--tag--filter.bx--tag--disabled:hover {
  cursor: not-allowed;
}
.bx--tag__label {
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.bx--tag--filter {
  padding-right: 0.125rem;
  cursor: pointer;
}
.bx--tag--filter:hover {
  outline: none;
}
.bx--tag__close-icon {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin: 0 0 0 0.25rem;
  padding: 0;
  color: currentColor;
  background-color: transparent;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}
.bx--tag__close-icon svg {
  fill: currentColor;
}
.bx--tag--disabled .bx--tag__close-icon {
  cursor: not-allowed;
}
.bx--tag__close-icon:focus {
  border-radius: 50%;
  outline: none;
  box-shadow: inset 0 0 0 2px #0f62fe;
}
.bx--tag--high-contrast .bx--tag__close-icon:focus {
  box-shadow: inset 0 0 0 2px #ffffff;
}
.bx--tag--filter.bx--tag--disabled .bx--tag__close-icon:hover {
  background-color: transparent;
}
.bx--tag--filter.bx--tag--disabled svg {
  fill: #c6c6c6;
}
.bx--tag.bx--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  color: #161616;
  background-color: #e0e0e0;
  width: 3.75rem;
  overflow: hidden;
}
.bx--tag.bx--skeleton:hover, .bx--tag.bx--skeleton:focus, .bx--tag.bx--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--tag.bx--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--tag.bx--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--tag.bx--skeleton .bx--tag__close-icon:hover {
  background-color: #e0e0e0;
}
.bx--data-table-container + .bx--pagination {
  border-top: 0;
}
.bx--pagination {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 3rem;
  overflow-x: auto;
  background-color: #ffffff;
  border-top: 1px solid #e0e0e0;
}
@media (min-width: 42rem) {
  .bx--pagination {
    overflow: initial;
  }
}
@media (max-width: 41.98rem) {
  .bx--pagination .bx--pagination__left > *,
.bx--pagination .bx--pagination__right > * {
    display: none;
  }
  .bx--pagination .bx--pagination__items-count,
.bx--pagination .bx--pagination__control-buttons {
    display: initial;
  }
}
.bx--pagination .bx--select {
  align-items: center;
  height: 100%;
}
.bx--pagination .bx--select-input--inline__wrapper {
  display: flex;
  height: 100%;
}
.bx--pagination .bx--select-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  width: auto;
  min-width: auto;
  height: 3rem;
  padding: 0 2.25rem 0 1rem;
}
.bx--pagination .bx--select-input:hover {
  background: #e5e5e5;
}
.bx--pagination .bx--select__arrow {
  top: 50%;
  transform: translate(-0.5rem, -50%);
}
.bx--pagination .bx--select__item-count .bx--select-input {
  border-right: 0.0625rem solid #e0e0e0;
}
.bx--pagination .bx--select__page-number .bx--select-input {
  border-left: 1px solid #e0e0e0;
}
.bx--pagination__left,
.bx--pagination__right {
  display: flex;
  align-items: center;
  height: 3rem;
}
.bx--pagination__left > .bx--form-item,
.bx--pagination__right > .bx--form-item {
  height: 100%;
}
.bx--pagination__left .bx--pagination__text,
.bx--pagination__right .bx--pagination__text {
  white-space: nowrap;
}
.bx--pagination__left .bx--pagination__text {
  margin-right: 0.0625rem;
}
.bx--pagination__right .bx--pagination__text {
  margin-right: 1rem;
  margin-left: 0.0625rem;
}
.bx--pagination__left {
  padding: 0 1rem;
}
@media (min-width: 42rem) {
  .bx--pagination__text {
    display: inline-block;
  }
}
span.bx--pagination__text {
  margin-left: 1rem;
  color: #525252;
}
.bx--pagination__button,
.bx--btn--ghost.bx--pagination__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 100%;
  margin: 0;
  background: none;
  border: none;
  border-left: 1px solid #e0e0e0;
  cursor: pointer;
  transition: outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--pagination__button,
.bx--btn--ghost.bx--pagination__button {
    border: 1px solid transparent;
  }
}
.bx--pagination__button:focus,
.bx--btn--ghost:focus.bx--pagination__button {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  border-left: 0;
}
.bx--pagination__button:hover,
.bx--btn--ghost:hover.bx--pagination__button {
  background: #e5e5e5;
}
.bx--pagination__button--no-index,
.bx--btn--ghost.bx--pagination__button--no-index {
  cursor: not-allowed;
  fill: #c6c6c6;
}
.bx--pagination__button:disabled:hover,
.bx--pagination__button--no-index:hover,
.bx--btn--ghost:disabled:hover.bx--pagination__button,
.bx--btn--ghost:hover.bx--pagination__button--no-index {
  background: #ffffff;
  border-color: #e0e0e0;
  cursor: not-allowed;
  fill: #c6c6c6;
}
.bx--pagination.bx--skeleton .bx--skeleton__text {
  margin-right: 1rem;
  margin-bottom: 0;
}
@-webkit-keyframes collapse-accordion {
  0% {
    height: 100%;
    visibility: inherit;
    opacity: 1;
  }
  100% {
    height: 0;
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes collapse-accordion {
  0% {
    height: 100%;
    visibility: inherit;
    opacity: 1;
  }
  100% {
    height: 0;
    visibility: hidden;
    opacity: 0;
  }
}
@-webkit-keyframes expand-accordion {
  0% {
    height: 0;
    visibility: hidden;
    opacity: 0;
  }
  100% {
    height: 100%;
    visibility: inherit;
    opacity: 1;
  }
}
@keyframes expand-accordion {
  0% {
    height: 0;
    visibility: hidden;
    opacity: 0;
  }
  100% {
    height: 100%;
    visibility: inherit;
    opacity: 1;
  }
}
.bx--accordion {
  width: 100%;
  list-style: none;
}
.bx--accordion__item {
  overflow: visible;
  border-top: 1px solid #e0e0e0;
  transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--accordion__item:last-child {
  border-bottom: 1px solid #e0e0e0;
}
.bx--accordion__heading {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  min-height: 2.5rem;
  margin: 0;
  padding: 0.625rem 0;
  color: #161616;
  cursor: pointer;
  transition: background-color cubic-bezier(0.2, 0, 0.38, 0.9) 110ms;
}
.bx--accordion__heading::-moz-focus-inner {
  border: 0;
}
.bx--accordion__heading:hover::before, .bx--accordion__heading:focus::before {
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  height: calc(100% + 2px);
  content: "";
}
.bx--accordion__heading:hover::before {
  background-color: #e5e5e5;
}
.bx--accordion__heading:focus {
  outline: none;
}
.bx--accordion__heading:focus::before {
  box-sizing: border-box;
  border: 2px solid #0f62fe;
}
.bx--accordion--xl .bx--accordion__heading {
  min-height: 3rem;
}
.bx--accordion--sm .bx--accordion__heading {
  min-height: 2rem;
  padding: 0.3125rem 0;
}
.bx--accordion__heading[disabled] {
  color: #c6c6c6;
  cursor: not-allowed;
}
.bx--accordion__heading[disabled] .bx--accordion__arrow {
  fill: #c6c6c6;
}
.bx--accordion__heading[disabled]:hover::before {
  background-color: transparent;
}
.bx--accordion__item--disabled,
.bx--accordion__item--disabled + .bx--accordion__item {
  border-top: 1px solid #ffffff;
}
li.bx--accordion__item--disabled:last-of-type {
  border-bottom: 1px solid #ffffff;
}
.bx--accordion__arrow {
  outline: 2px solid transparent;
  outline-offset: -2px;
  flex: 0 0 1rem;
  width: 1rem;
  height: 1rem;
  margin: 2px 1rem 0 0;
  transform: rotate(90deg);
  transition: all 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--accordion__arrow {
    fill: ButtonText;
  }
}
.bx--accordion__title {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
  z-index: 1;
  width: 100%;
  margin: 0 0 0 1rem;
  text-align: left;
}
.bx--accordion__content {
  display: none;
  padding-right: 1rem;
  padding-left: 1rem;
  transition: padding cubic-bezier(0.2, 0, 0.38, 0.9) 110ms;
}
@media (min-width: 480px) {
  .bx--accordion__content {
    padding-right: 3rem;
  }
}
@media (min-width: 640px) {
  .bx--accordion__content {
    padding-right: 25%;
  }
}
.bx--accordion__content > p {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
}
.bx--accordion--start .bx--accordion__heading {
  flex-direction: row;
}
.bx--accordion--start .bx--accordion__arrow {
  margin: 2px 0 0 0.5rem;
}
.bx--accordion--start .bx--accordion__content {
  margin-left: 1.5rem;
}
.bx--accordion__item--collapsing .bx--accordion__content,
.bx--accordion__item--expanding .bx--accordion__content {
  display: block;
}
.bx--accordion__item--collapsing .bx--accordion__content {
  -webkit-animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) collapse-accordion;
          animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) collapse-accordion;
}
.bx--accordion__item--expanding .bx--accordion__content {
  -webkit-animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) expand-accordion;
          animation: 110ms cubic-bezier(0.2, 0, 0.38, 0.9) expand-accordion;
}
.bx--accordion__item--active {
  overflow: visible;
}
.bx--accordion__item--active .bx--accordion__content {
  display: block;
  padding-top: 0.5rem;
  padding-bottom: 1.5rem;
  transition: padding-top cubic-bezier(0, 0, 0.38, 0.9) 110ms, padding-bottom cubic-bezier(0, 0, 0.38, 0.9) 110ms;
}
.bx--accordion__item--active .bx--accordion__arrow {
  /* rtl:ignore */
  transform: rotate(-90deg);
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--accordion__item--active .bx--accordion__arrow {
    fill: ButtonText;
  }
}
.bx--accordion.bx--skeleton .bx--accordion__heading,
.bx--accordion.bx--skeleton .bx--accordion__button {
  cursor: default;
}
.bx--accordion.bx--skeleton .bx--accordion__arrow {
  cursor: default;
  pointer-events: none;
  fill: #161616;
}
.bx--accordion.bx--skeleton .bx--accordion__arrow:hover, .bx--accordion.bx--skeleton .bx--accordion__arrow:focus, .bx--accordion.bx--skeleton .bx--accordion__arrow:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--accordion.bx--skeleton .bx--accordion__heading:hover::before {
  background-color: transparent;
}
.bx--accordion--end.bx--skeleton .bx--accordion__arrow {
  margin-left: 1rem;
}
.bx--skeleton .bx--accordion__heading:focus .bx--accordion__arrow {
  border: none;
  outline: none;
  cursor: default;
}
.bx--accordion__title.bx--skeleton__text {
  margin-bottom: 0;
}
.bx--progress {
  display: flex;
  list-style: none;
}
.bx--progress-step {
  position: relative;
  display: inline-flex;
  flex-direction: row;
  width: 8rem;
  min-width: 7rem;
  overflow: visible;
}
.bx--progress-step .bx--tooltip__label {
  display: block;
}
.bx--progress--space-equal .bx--progress-step {
  flex-grow: 1;
  min-width: 8rem;
}
.bx--progress-line {
  position: absolute;
  left: 0;
  width: 8rem;
  height: 1px;
  border: 1px inset transparent;
}
.bx--progress--space-equal .bx--progress-line {
  width: 100%;
  min-width: 8rem;
}
.bx--progress-step svg {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin: 0.625rem 0.5rem 0 0;
  border-radius: 50%;
  fill: #0f62fe;
}
.bx--progress-label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  max-width: 5.5rem;
  margin: 0.5rem 0 0 0;
  overflow: hidden;
  color: #161616;
  line-height: 1.45;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: box-shadow 110ms cubic-bezier(0.2, 0, 0.38, 0.9), color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--progress-label::before {
  display: block;
  content: "";
}
.bx--progress-label:hover {
  color: #0f62fe;
  box-shadow: 0 0.0625rem #0f62fe;
  cursor: pointer;
}
.bx--progress-label:focus {
  color: #0f62fe;
  outline: none;
  box-shadow: 0 0.1875rem 0 0 #0f62fe;
}
.bx--progress--space-equal .bx--progress-label {
  max-width: 100%;
  margin-right: 0.75rem;
}
.bx--progress-label:active {
  color: #0f62fe;
  box-shadow: 0 0.1875rem 0 0 #0f62fe;
}
.bx--progress-label-overflow:hover ~ .bx--tooltip,
.bx--progress-label-overflow:focus ~ .bx--tooltip {
  visibility: inherit;
}
.bx--progress-step .bx--tooltip .bx--tooltip__caret {
  margin-left: 0.625rem;
}
.bx--tooltip__text {
  margin: 0;
  padding: 0;
  font-weight: normal;
}
.bx--progress-step .bx--tooltip {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
  display: block;
  width: 7.8125rem;
  min-width: 7.1875rem;
  min-height: 1.5rem;
  margin-top: 2.5rem;
  margin-left: 1.375rem;
  padding: 0.5rem 1rem;
  color: #ffffff;
  visibility: hidden;
}
.bx--progress-step .bx--tooltip_multi {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.16px;
  width: 9.375rem;
  height: auto;
  color: #ffffff;
}
.bx--progress-optional {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  position: absolute;
  left: 0;
  margin-top: 1.75rem;
  margin-left: 1.5rem;
  color: #525252;
  text-align: start;
}
.bx--progress-step--current .bx--progress-line {
  background-color: #0f62fe;
}
.bx--progress-step--incomplete svg {
  fill: #161616;
}
.bx--progress-step--incomplete .bx--progress-line {
  background-color: #e0e0e0;
}
.bx--progress-step--complete .bx--progress-line {
  background-color: #0f62fe;
}
.bx--progress-step-button {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  display: flex;
  text-align: left;
}
.bx--progress-step-button::-moz-focus-inner {
  border: 0;
}
.bx--progress-step-button--unclickable {
  outline: none;
  cursor: default;
}
.bx--progress-step-button--unclickable .bx--progress-label:hover {
  color: #161616;
  box-shadow: none;
  cursor: default;
}
.bx--progress-step-button--unclickable .bx--tooltip__label:hover {
  color: #0f62fe;
  box-shadow: 0 0.0625rem #0f62fe;
  cursor: pointer;
}
.bx--progress-step--disabled {
  cursor: not-allowed;
  pointer-events: none;
}
.bx--progress-step--disabled svg {
  cursor: not-allowed;
  fill: #c6c6c6;
}
.bx--progress-step--disabled .bx--progress-label,
.bx--progress-step--disabled .bx--progress-label:hover {
  color: #c6c6c6;
  box-shadow: none;
  cursor: not-allowed;
}
.bx--progress-step--disabled .bx--progress-label:focus,
.bx--progress-step--disabled .bx--progress-label:active {
  outline: none;
  box-shadow: none;
}
.bx--progress-step--disabled .bx--progress-line {
  cursor: not-allowed;
}
.bx--progress-step--disabled .bx--progress-label-overflow:hover ~ .bx--tooltip--definition .bx--tooltip--definition__bottom {
  display: none;
}
.bx--progress__warning > * {
  fill: #da1e28;
}
.bx--progress.bx--skeleton .bx--progress-label {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 2.5rem;
  height: 0.75rem;
}
.bx--progress.bx--skeleton .bx--progress-label:hover, .bx--progress.bx--skeleton .bx--progress-label:focus, .bx--progress.bx--skeleton .bx--progress-label:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--progress.bx--skeleton .bx--progress-label::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--progress.bx--skeleton .bx--progress-label::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--progress--vertical {
  display: flex;
  flex-direction: column;
}
.bx--progress--vertical .bx--progress-step,
.bx--progress--vertical .bx--progress-step-button {
  flex-wrap: wrap;
  align-content: flex-start;
  width: initial;
  min-width: initial;
  min-height: 3.625rem;
}
.bx--progress--vertical .bx--progress-step svg,
.bx--progress--vertical .bx--progress-step-button svg {
  display: inline-block;
  margin: 0.0625rem 0.5rem 0;
}
.bx--progress--vertical .bx--progress-label {
  display: inline-block;
  width: initial;
  max-width: 10rem;
  margin: 0;
  white-space: initial;
  vertical-align: top;
}
.bx--progress--vertical .bx--progress-step .bx--tooltip {
  margin-top: 0.5rem;
}
.bx--progress--vertical .bx--progress-optional {
  position: static;
  width: 100%;
  margin-top: auto;
  margin-left: 2rem;
}
.bx--progress--vertical .bx--progress-line {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
}
.bx--breadcrumb {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: inline;
}
@media (min-width: 42rem) {
  .bx--breadcrumb {
    display: flex;
    flex-wrap: wrap;
  }
}
.bx--breadcrumb-item {
  position: relative;
  display: flex;
  align-items: center;
  margin-right: 0.5rem;
}
.bx--breadcrumb-item .bx--link:visited {
  color: #0f62fe;
}
.bx--breadcrumb-item::after {
  margin-left: 0.5rem;
  color: #161616;
  content: "/";
}
.bx--breadcrumb--no-trailing-slash .bx--breadcrumb-item:last-child::after {
  content: "";
}
.bx--breadcrumb-item:last-child,
.bx--breadcrumb-item:last-child::after {
  margin-right: 0;
}
.bx--breadcrumb .bx--link {
  white-space: nowrap;
}
.bx--breadcrumb-item [aria-current=page],
.bx--breadcrumb-item.bx--breadcrumb-item--current .bx--link {
  color: #161616;
  cursor: auto;
}
.bx--breadcrumb-item [aria-current=page]:hover,
.bx--breadcrumb-item.bx--breadcrumb-item--current .bx--link:hover {
  text-decoration: none;
}
.bx--breadcrumb.bx--skeleton .bx--link {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 6.25rem;
  height: 1rem;
}
.bx--breadcrumb.bx--skeleton .bx--link:hover, .bx--breadcrumb.bx--skeleton .bx--link:focus, .bx--breadcrumb.bx--skeleton .bx--link:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--breadcrumb.bx--skeleton .bx--link::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--breadcrumb.bx--skeleton .bx--link::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--toolbar {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  margin: 1rem 0;
}
.bx--toolbar > div {
  margin: 0 0.25rem;
}
.bx--toolbar .bx--search-input {
  height: 2rem;
  background-color: transparent;
  outline: none;
}
.bx--toolbar .bx--search-close {
  display: none;
}
.bx--toolbar .bx--overflow-menu__icon {
  transition: fill 50ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #525252;
}
.bx--toolbar .bx--search-magnifier {
  top: 0.5rem;
  left: 0.375rem;
  transform: scale(1.15);
  cursor: pointer;
  transition: all 175ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #525252;
}
.bx--toolbar fieldset {
  padding: 0;
  border: 0;
}
.bx--toolbar .bx--toolbar-search--active {
  width: 15.625rem;
}
.bx--toolbar .bx--toolbar-search--active .bx--search-magnifier {
  top: 0.5625rem;
  transform: scale(1);
}
.bx--toolbar .bx--toolbar-search--active .bx--search-input {
  background-color: #f4f4f4;
}
.bx--toolbar .bx--toolbar-search--active .bx--search-close {
  display: block;
}
.bx--toolbar .bx--checkbox-label {
  margin-bottom: 0;
}
.bx--toolbar .bx--overflow-menu--open > .bx--overflow-menu__icon {
  fill: #0f62fe;
}
.bx--toolbar-search {
  width: 1.8rem;
  transition: all 175ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--toolbar-search__btn {
  position: absolute;
  top: 0;
  left: 0;
  width: 2rem;
  height: 2rem;
  background: transparent;
  border: 0;
}
.bx--toolbar-search__btn:focus {
  outline: 1px solid #0f62fe;
}
.bx--toolbar-filter-icon {
  padding-right: 0;
  padding-left: 0;
}
.bx--toolbar-menu__title {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  padding: 0.5rem 1.25rem;
  font-weight: 600;
}
.bx--toolbar-menu__option {
  padding: 0.5rem 1.25rem;
}
.bx--toolbar-menu__divider {
  width: 100%;
  border: 0;
  border-top: 1px solid #e0e0e0;
}
.bx--radio-button-group {
  border: none;
}
.bx--toolbar-search:not(.bx--toolbar-search--active) .bx--search-input {
  border-bottom: none;
}
.bx--time-picker {
  display: flex;
  align-items: flex-end;
}
.bx--time-picker__select {
  justify-content: center;
}
.bx--time-picker__select:not(:last-of-type) {
  margin: 0 0.125rem;
}
.bx--time-picker__input {
  display: flex;
  flex-direction: column;
}
.bx--time-picker .bx--select-input {
  width: auto;
  min-width: auto;
  margin: 0;
  padding-right: 3rem;
  line-height: 1;
}
.bx--time-picker__input-field {
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.32px;
  display: flex;
  align-items: center;
  width: 4.875rem;
  height: 2.5rem;
  transition: outline 70ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--time-picker__input-field::-moz-placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--time-picker__input-field::placeholder {
  color: #6f6f6f;
  opacity: 1;
}
.bx--time-picker--light .bx--select-input {
  background-color: #f4f4f4;
}
.bx--time-picker--light .bx--select-input:hover {
  background-color: #e5e5e5;
}
.bx--time-picker--light .bx--select-input:disabled, .bx--time-picker--light .bx--select-input:hover:disabled {
  color: #c6c6c6;
  background-color: transparent;
  border-bottom: 1px solid transparent;
  cursor: not-allowed;
}
.bx--time-picker--sm .bx--select-input,
.bx--time-picker--sm .bx--time-picker__input-field {
  height: 2rem;
  max-height: 2rem;
}
.bx--time-picker--xl .bx--select-input,
.bx--time-picker--xl .bx--time-picker__input-field {
  height: 3rem;
  max-height: 3rem;
}
.bx--slider-container {
  display: flex;
  align-items: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--slider {
  position: relative;
  width: 100%;
  min-width: 12.5rem;
  max-width: 40rem;
  margin: 0 1rem;
}
.bx--slider__range-label {
  font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.43;
  letter-spacing: 0.32px;
  color: #161616;
  white-space: nowrap;
}
.bx--slider__range-label:last-of-type {
  margin-right: 1rem;
}
.bx--slider__track {
  position: absolute;
  width: 100%;
  height: 0.125rem;
  background: #e0e0e0;
  transform: translate(0%, -50%);
  cursor: pointer;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--slider__track {
    border: 1px solid transparent;
  }
}
.bx--slider__track:before {
  position: absolute;
  top: -0.3125rem;
  left: 50%;
  display: inline-block;
  width: 0.125rem;
  height: 0.25rem;
  background: #e0e0e0;
  transform: translate(-50%, 0);
  content: "";
}
.bx--slider__filled-track {
  position: absolute;
  width: 100%;
  height: 0.125rem;
  background: #161616;
  transform: translate(0%, -50%);
  transform-origin: left;
  transition: background 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  pointer-events: none;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--slider__filled-track {
    border: 1px solid transparent;
  }
}
.bx--slider__thumb {
  position: absolute;
  top: 0;
  z-index: 3;
  width: 0.875rem;
  height: 0.875rem;
  background: #161616;
  border-radius: 50%;
  outline: none;
  box-shadow: inset 0 0 0 1px transparent, inset 0 0 0 2px transparent;
  transform: translate(-50%, -50%);
  cursor: pointer;
  transition: transform 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background 110ms cubic-bezier(0.2, 0, 0.38, 0.9), box-shadow 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--slider__thumb:hover {
  transform: translate(-50%, -50%) scale(1.4286);
}
.bx--slider__thumb:focus {
  background-color: #0f62fe;
  box-shadow: inset 0 0 0 2px #0f62fe, inset 0 0 0 3px #ffffff;
  transform: translate(-50%, -50%) scale(1.4286);
}
.bx--slider__thumb:active {
  box-shadow: inset 0 0 0 2px #0f62fe;
  transform: translate(-50%, -50%) scale(1.4286);
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--slider__thumb {
    outline: 1px solid ButtonText;
  }
}
.bx--slider__input {
  display: none;
}
.bx--slider-text-input,
.bx-slider-text-input {
  width: 4rem;
  height: 2.5rem;
  text-align: center;
  -moz-appearance: textfield;
}
.bx--slider-text-input::-webkit-outer-spin-button, .bx--slider-text-input::-webkit-inner-spin-button,
.bx-slider-text-input::-webkit-outer-spin-button,
.bx-slider-text-input::-webkit-inner-spin-button {
  display: none;
}
.bx--slider__thumb:focus ~ .bx--slider__filled-track {
  background-color: #0f62fe;
}
.bx--label--disabled ~ .bx--slider-container > .bx--slider__range-label {
  color: #c6c6c6;
}
.bx--slider--disabled .bx--slider__thumb {
  background-color: #e0e0e0;
}
.bx--slider--disabled .bx--slider__thumb:hover {
  transform: translate(-50%, -50%);
  cursor: not-allowed;
}
.bx--slider--disabled .bx--slider__thumb:focus {
  background-color: #e0e0e0;
  outline: none;
  box-shadow: none;
  transform: translate(-50%, -50%);
}
.bx--slider--disabled .bx--slider__thumb:active {
  background: #e0e0e0;
  transform: translate(-50%, -50%);
}
.bx--slider--disabled .bx--slider__track,
.bx--slider--disabled .bx--slider__filled-track,
.bx--slider--disabled .bx--slider__thumb:focus ~ .bx--slider__filled-track {
  background-color: #e0e0e0;
  cursor: not-allowed;
}
.bx--slider--disabled ~ .bx--form-item .bx--slider-text-input,
.bx--slider--disabled ~ .bx--slider-text-input {
  color: #c6c6c6;
  background-color: #ffffff;
  border: none;
  cursor: not-allowed;
  transition: none;
}
.bx--slider--disabled ~ .bx--form-item .bx--slider-text-input:active, .bx--slider--disabled ~ .bx--form-item .bx--slider-text-input:focus, .bx--slider--disabled ~ .bx--form-item .bx--slider-text-input:hover,
.bx--slider--disabled ~ .bx--slider-text-input:active,
.bx--slider--disabled ~ .bx--slider-text-input:focus,
.bx--slider--disabled ~ .bx--slider-text-input:hover {
  color: #c6c6c6;
  outline: none;
}
.bx--slider-container.bx--skeleton .bx--slider__range-label {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 1.25rem;
  height: 0.75rem;
}
.bx--slider-container.bx--skeleton .bx--slider__range-label:hover, .bx--slider-container.bx--skeleton .bx--slider__range-label:focus, .bx--slider-container.bx--skeleton .bx--slider__range-label:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--slider-container.bx--skeleton .bx--slider__range-label::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--slider-container.bx--skeleton .bx--slider__range-label::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--slider-container.bx--skeleton .bx--slider__track {
  cursor: default;
  pointer-events: none;
}
.bx--slider-container.bx--skeleton .bx--slider__thumb {
  left: 50%;
  cursor: default;
  pointer-events: none;
}
.bx--tile {
  position: relative;
  display: block;
  min-width: 8rem;
  min-height: 4rem;
  padding: 1rem;
  background-color: #ffffff;
  outline: 2px solid transparent;
  outline-offset: -2px;
}
.bx--tile:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tile:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--tile--light {
  background-color: #f4f4f4;
}
.bx--tile--clickable,
.bx--tile--selectable,
.bx--tile--expandable {
  cursor: pointer;
  transition: 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tile--clickable:hover,
.bx--tile--selectable:hover,
.bx--tile--expandable:hover {
  background: #e5e5e5;
}
.bx--tile--clickable:focus,
.bx--tile--expandable:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--tile--clickable:hover .bx--tile__checkmark, .bx--tile--clickable:focus .bx--tile__checkmark,
.bx--tile--expandable:hover .bx--tile__checkmark,
.bx--tile--expandable:focus .bx--tile__checkmark {
  opacity: 1;
}
.bx--tile--expandable::-moz-focus-inner {
  border: 0;
}
.bx--tile--clickable {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  color: #161616;
  text-decoration: none;
}
.bx--tile--selectable {
  padding-right: 3rem;
}
.bx--tile__checkmark,
.bx--tile__chevron {
  position: absolute;
  background: transparent;
  border: none;
  transition: 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tile__checkmark {
  top: 1rem;
  right: 1rem;
  height: 1rem;
  opacity: 0;
}
.bx--tile__checkmark svg {
  border-radius: 50%;
  fill: #525252;
}
.bx--tile__checkmark:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--tile__chevron {
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  height: 1rem;
}
.bx--tile__chevron svg {
  transform-origin: center;
  transition: 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tile__chevron svg {
    fill: ButtonText;
  }
}
.bx--tile__chevron:hover {
  cursor: pointer;
}
.bx--tile__chevron:focus {
  outline: none;
}
.bx--tile--expandable {
  width: 100%;
  overflow: hidden;
  color: inherit;
  font-size: inherit;
  text-align: left;
  border: 0;
  transition: max-height 150ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tile-content__above-the-fold {
  display: block;
}
.bx--tile-content__below-the-fold {
  display: block;
  visibility: hidden;
  opacity: 0;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), visibility 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tile--is-expanded {
  overflow: visible;
  transition: max-height 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tile--is-expanded .bx--tile__chevron svg {
  transform: rotate(-180deg);
}
.bx--tile--is-expanded .bx--tile-content__below-the-fold {
  visibility: inherit;
  opacity: 1;
  transition: opacity 110ms cubic-bezier(0.2, 0, 0.38, 0.9), visibility 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.bx--tile--is-selected {
  outline: 1px solid #161616;
  outline-offset: -1px;
}
.bx--tile--is-selected .bx--tile__checkmark {
  opacity: 1;
}
.bx--tile-input:checked + .bx--tile > .bx--tile__checkmark svg {
  fill: #161616;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--tile-input:checked + .bx--tile > .bx--tile__checkmark svg {
    fill: ButtonText;
  }
}
.bx--tile-content {
  width: 100%;
  height: 100%;
}
.bx--tile-input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--tile-input:focus + .bx--tile {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--skeleton__text {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 100%;
  height: 1rem;
  margin-bottom: 0.5rem;
}
.bx--skeleton__text:hover, .bx--skeleton__text:focus, .bx--skeleton__text:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--skeleton__text::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--skeleton__text::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--skeleton__heading {
  height: 1.5rem;
}
.bx--icon--skeleton {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  display: inline-block;
  width: 1rem;
  height: 1rem;
}
.bx--icon--skeleton:hover, .bx--icon--skeleton:focus, .bx--icon--skeleton:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--icon--skeleton::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--icon--skeleton::before {
    -webkit-animation: none;
            animation: none;
  }
}
.bx--skeleton__placeholder {
  position: relative;
  padding: 0;
  background: #e5e5e5;
  border: none;
  box-shadow: none;
  pointer-events: none;
  width: 6.25rem;
  height: 6.25rem;
}
.bx--skeleton__placeholder:hover, .bx--skeleton__placeholder:focus, .bx--skeleton__placeholder:active {
  border: none;
  outline: none;
  cursor: default;
}
.bx--skeleton__placeholder::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #c6c6c6;
  -webkit-animation: 3000ms ease-in-out skeleton infinite;
          animation: 3000ms ease-in-out skeleton infinite;
  content: "";
}
@media (prefers-reduced-motion: reduce) {
  .bx--skeleton__placeholder::before {
    -webkit-animation: none;
            animation: none;
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg);
  }
}
/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240;
  }
  100% {
    stroke-dashoffset: 40;
  }
}
@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40;
  }
  100% {
    stroke-dashoffset: 240;
  }
}
@-webkit-keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
.bx--inline-loading {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 2rem;
}
.bx--inline-loading .bx--loading__svg circle {
  stroke-width: 12;
}
.bx--inline-loading .bx--loading__stroke {
  stroke-dashoffset: 99;
}
.bx--inline-loading__text {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  color: #525252;
}
.bx--inline-loading__animation {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
}
.bx--inline-loading__checkmark-container {
  fill: #24a148;
}
.bx--inline-loading__checkmark-container.bx--inline-loading__svg {
  position: absolute;
  top: 0.75rem;
  width: 0.75rem;
}
.bx--inline-loading__checkmark-container[hidden] {
  display: none;
}
.bx--inline-loading__checkmark {
  transform-origin: 50% 50%;
  -webkit-animation-name: stroke;
          animation-name: stroke;
  -webkit-animation-duration: 250ms;
          animation-duration: 250ms;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  fill: none;
  stroke: #0f62fe;
  stroke-width: 1.8;
  stroke-dasharray: 12;
  stroke-dashoffset: 12;
}
.bx--inline-loading--error {
  width: 1rem;
  height: 1rem;
  fill: #da1e28;
}
.bx--inline-loading--error[hidden] {
  display: none;
}
.bx--loading--small .bx--inline-loading__svg {
  stroke: #0f62fe;
}
/* If IE11 Don't show check animation */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .bx--inline-loading__checkmark-container {
    top: 1px;
    right: 0.5rem;
  }

  .bx--inline-loading__checkmark {
    -webkit-animation: none;
            animation: none;
    stroke-dashoffset: 0;
    stroke-dasharray: 0;
  }
}
.bx--pagination-nav {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  line-height: 0;
}
.bx--pagination-nav__list {
  display: flex;
  align-items: center;
  list-style: none;
}
.bx--pagination-nav__list-item {
  padding: 0;
}
.bx--pagination-nav__list-item:first-child {
  padding-left: 0;
}
.bx--pagination-nav__list-item:last-child {
  padding-right: 0;
}
.bx--pagination-nav__page {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  display: block;
  min-width: 3rem;
  padding: 1.0625rem 0.25rem;
  color: #525252;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  border-radius: 0;
  outline: 0;
  transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9), color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--pagination-nav__page::-moz-focus-inner {
  border: 0;
}
.bx--pagination-nav__page:hover {
  color: #525252;
  background-color: #e5e5e5;
}
.bx--pagination-nav__page:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--pagination-nav__page:disabled, .bx--pagination-nav__page.bx--pagination-nav__page--disabled {
  color: rgba(82, 82, 82, 0.5);
  background: none;
  outline: none;
  pointer-events: none;
}
.bx--pagination-nav__page:not(.bx--pagination-nav__page--direction)::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: 0;
  height: 0.25rem;
  background-color: #0f62fe;
  opacity: 0;
  transition: width 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  content: "";
}
.bx--pagination-nav__page--active + .bx--pagination-nav__page::after, .bx--pagination-nav__page.bx--pagination-nav__page--active::after {
  left: calc(50% - 0.5rem);
  width: 1rem;
  opacity: 1;
}
.bx--pagination-nav__page.bx--pagination-nav__page--active {
  color: #525252;
  font-weight: 600;
  background-color: initial;
}
.bx--pagination-nav__page .bx--pagination-nav__icon {
  pointer-events: none;
  fill: currentColor;
}
.bx--pagination-nav__page--direction {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  line-height: 0;
}
.bx--pagination-nav__select {
  position: relative;
}
.bx--pagination-nav__page--select {
  max-height: 3rem;
  text-indent: calc(50% - 4.5px);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@-moz-document url-prefix() {
  .bx--pagination-nav__page--select {
    text-indent: 0;
  }
}
.bx--pagination-nav__select-icon-wrapper {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.bx--pagination-nav__select-icon-wrapper:not(.bx--pagination-nav__page--direction)::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: 0;
  height: 0.25rem;
  background-color: #0f62fe;
  opacity: 0;
  transition: width 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  content: "";
}
.bx--pagination-nav__page--active + .bx--pagination-nav__select-icon-wrapper::after, .bx--pagination-nav__select-icon-wrapper.bx--pagination-nav__page--active::after {
  left: calc(50% - 0.5rem);
  width: 1rem;
  opacity: 1;
}
.bx--pagination-nav__page--active + .bx--pagination-nav__select-icon-wrapper .bx--pagination-nav__select-icon {
  display: none;
}
.bx--pagination-nav__select-icon {
  position: absolute;
  top: calc(50% - 0.5rem);
  left: calc(50% - 0.5rem);
  pointer-events: none;
}
.bx--pagination-nav__accessibility-label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--unstable-pagination {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 3rem;
  background-color: #ffffff;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid transparent;
}
.bx--unstable-pagination__text {
  margin: 0 1rem;
  color: #525252;
}
@media (min-width: 42rem) {
  .bx--unstable-pagination__text {
    display: inline-block;
  }
}
.bx--unstable-pagination__left,
.bx--unstable-pagination__right {
  display: flex;
  align-items: center;
  height: 100%;
}
.bx--unstable-pagination__left {
  padding: 0 1rem 0 0;
}
.bx--unstable-pagination__left > .bx--form-item,
.bx--unstable-pagination__right > .bx--form-item {
  height: 100%;
}
.bx--unstable-pagination__left .bx--unstable-pagination__text {
  margin-right: 0.0625rem;
}
.bx--unstable-pagination__right .bx--unstable-pagination__text {
  margin-right: 1rem;
  margin-left: 0.0625rem;
}
.bx--unstable-pagination__button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  margin: 0;
  padding: 0 0.875rem;
  color: #161616;
  background: none;
  border: none;
  border-left: 1px solid #e0e0e0;
  cursor: pointer;
  transition: outline 110ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
  fill: #161616;
}
.bx--unstable-pagination__button .bx--btn__icon {
  width: initial;
  height: initial;
}
.bx--unstable-pagination__button.bx--btn--icon-only.bx--tooltip__trigger:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--unstable-pagination__button:hover {
  color: #161616;
  background: #e5e5e5;
}
.bx--unstable-pagination__button--no-index {
  cursor: not-allowed;
  fill: #c6c6c6;
}
.bx--unstable-pagination__button.bx--btn:disabled {
  background: transparent;
  border-color: #e0e0e0;
}
.bx--unstable-pagination__button:disabled:hover,
.bx--unstable-pagination__button--no-index:hover {
  background: transparent;
  cursor: not-allowed;
  fill: #c6c6c6;
}
.bx--unstable-pagination__page-selector,
.bx--unstable-pagination__page-sizer {
  align-items: center;
  height: 100%;
}
.bx--unstable-pagination__page-selector .bx--select-input--inline__wrapper,
.bx--unstable-pagination__page-sizer .bx--select-input--inline__wrapper {
  display: flex;
  height: 100%;
}
.bx--unstable-pagination__page-selector .bx--select-input,
.bx--unstable-pagination__page-sizer .bx--select-input {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  width: auto;
  min-width: auto;
  height: 100%;
  margin-right: -0.65rem;
  padding: 0 2.5rem 0 1rem;
}
@media (min-width: 42rem) {
  .bx--unstable-pagination__page-selector .bx--select-input,
.bx--unstable-pagination__page-sizer .bx--select-input {
    margin-right: 0;
    padding-right: 2.25rem;
  }
}
.bx--unstable-pagination__page-selector .bx--select-input:hover,
.bx--unstable-pagination__page-sizer .bx--select-input:hover {
  background: #e5e5e5;
}
.bx--unstable-pagination__page-selector .bx--select__arrow,
.bx--unstable-pagination__page-sizer .bx--select__arrow {
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 42rem) {
  .bx--unstable-pagination__page-selector .bx--select__arrow,
.bx--unstable-pagination__page-sizer .bx--select__arrow {
    right: 1rem;
  }
}
.bx--unstable-pagination__page-selector {
  border-left: 1px solid #e0e0e0;
}
.bx--unstable-pagination__page-sizer {
  border-right: 1px solid #e0e0e0;
}
.bx--header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 8000;
  display: flex;
  align-items: center;
  height: 3rem;
  background-color: #161616;
  border-bottom: 1px solid #393939;
}
.bx--header__action {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  width: 3rem;
  height: 3rem;
  border: 0.125rem solid transparent;
  transition: background-color 110ms, border-color 110ms;
}
.bx--header__action::-moz-focus-inner {
  border: 0;
}
.bx--header__action > svg.bx--navigation-menu-panel-collapse-icon,
.bx--header__action--active > svg.bx--navigation-menu-panel-expand-icon {
  display: none;
}
.bx--header__action--active > svg.bx--navigation-menu-panel-collapse-icon {
  display: inline;
}
.bx--header__action:hover {
  background-color: #353535;
}
.bx--header__action--active {
  border-right: 1px solid #393939;
  border-bottom: 1px solid #161616;
  border-left: 1px solid #393939;
}
.bx--header__action:focus {
  border-color: #ffffff;
  outline: none;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--header__action:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--header__action:active {
  background-color: #393939;
}
.bx--header__action > svg {
  fill: #ffffff;
}
.bx--header__menu-trigger > svg {
  fill: #f4f4f4;
}
.bx--header__menu-trigger:hover {
  fill: #2c2c2c;
}
.bx--header__menu-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 66rem) {
  .bx--header__menu-toggle__hidden {
    display: none;
  }
}
a.bx--header__name {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 2rem 0 1rem;
  font-weight: 600;
  line-height: 1.25rem;
  letter-spacing: 0.1px;
  text-decoration: none;
  border: 0.125rem solid transparent;
  outline: none;
  transition: border-color 110ms;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
a.bx--header__name:focus {
  border-color: #ffffff;
}
.bx--header__name--prefix {
  font-weight: 400;
}
a.bx--header__name,
a.bx--header__name:hover {
  color: #f4f4f4;
}
.bx--header__menu-toggle:not(.bx--header__menu-toggle__hidden) ~ .bx--header__name {
  padding-left: 0.5rem;
}
.bx--header__nav {
  position: relative;
  display: none;
  height: 100%;
  padding-left: 1rem;
}
@media (min-width: 66rem) {
  .bx--header__nav {
    display: block;
  }
}
.bx--header__nav::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 0.0625rem;
  height: 1.5rem;
  background-color: #393939;
  transform: translateY(-50%);
  content: "";
}
.bx--header__menu-bar {
  display: flex;
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
a.bx--header__menu-item {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 1rem;
  color: #c6c6c6;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.125rem;
  letter-spacing: 0;
  text-decoration: none;
  border: 2px solid transparent;
  transition: background-color 110ms, border-color 110ms, color 110ms;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
a.bx--header__menu-item:hover {
  color: #f4f4f4;
  background-color: #2c2c2c;
}
.bx--header__action:active,
a.bx--header__menu-item:active {
  color: #f4f4f4;
  background-color: #393939;
}
a.bx--header__menu-item:focus {
  color: #f4f4f4;
  border-color: #ffffff;
  outline: none;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  a.bx--header__menu-item:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
a.bx--header__menu-item:hover > svg,
a.bx--header__menu-item:active > svg,
a.bx--header__menu-item:focus > svg {
  fill: #f4f4f4;
}
a.bx--header__menu-item[aria-current=page]::after,
.bx--header__menu-item--current::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: -2px;
  left: 0;
  width: 100%;
  border-bottom: 3px solid #4589ff;
  content: "";
}
a.bx--header__menu-item[aria-current=page]:focus::after,
.bx--header__menu-item--current:focus::after {
  border: 0;
}
a.bx--header__menu-item[aria-current=page]:focus,
a.bx--header__menu-item.bx--header__menu-item--current:focus {
  border: 2px solid #ffffff;
}
.bx--header__submenu {
  position: relative;
}
.bx--header__menu-title[aria-haspopup=true] {
  position: relative;
}
.bx--header__menu-title[aria-expanded=true] {
  z-index: 8001;
  color: #ffffff;
  background-color: #262626;
}
.bx--header__menu-title[aria-expanded=true] > .bx--header__menu-arrow {
  transform: rotate(180deg);
}
.bx--header__menu {
  display: none;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bx--header__menu-title[aria-expanded=true] + .bx--header__menu {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 8000;
  display: flex;
  flex-direction: column;
  width: 12.5rem;
  background-color: #262626;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.5);
  transform: translateY(100%);
}
.bx--header__menu-title[aria-expanded=true] + .bx--header__menu .bx--header__menu-item:hover {
  background-color: #353535;
}
.bx--header__menu-title[aria-expanded=true] + .bx--header__menu .bx--header__menu-item:active {
  background-color: #393939;
}
.bx--header__menu .bx--header__menu-item {
  height: 3rem;
}
.bx--header__menu .bx--header__menu-item:hover {
  color: #f4f4f4;
  background-color: #262626;
}
.bx--header__menu-arrow {
  margin-left: 0.5rem;
  transition: transform 110ms, fill 110ms;
  fill: #c6c6c6;
}
.bx--header__global {
  display: flex;
  flex: 1 1 0%;
  justify-content: flex-end;
  height: 100%;
}
.bx--skip-to-content {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  border: 0;
  visibility: inherit;
  clip: rect(0, 0, 0, 0);
}
.bx--skip-to-content:focus {
  top: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  width: auto;
  height: 3rem;
  padding: 0 1rem;
  color: #f4f4f4;
  background-color: #161616;
  border: 4px solid #0f62fe;
  outline: none;
  clip: auto;
}
.bx--header-panel {
  transition-timing-function: cubic-bezier(0.2, 0, 1, 0.9);
  position: fixed;
  top: 3rem;
  right: 0;
  bottom: 0;
  z-index: 8000;
  width: 0;
  overflow: hidden;
  color: #c6c6c6;
  background-color: #161616;
  border: none;
  transition: width 0.11s;
  will-change: width;
}
.bx--header-panel--expanded {
  width: 16rem;
  border-right: 1px solid #393939;
  border-left: 1px solid #393939;
}
.bx--panel--overlay {
  position: fixed;
  top: 3rem;
  right: 0;
  bottom: 0;
  z-index: 1000;
  width: 16rem;
  height: 100%;
  padding: 1rem 0;
  overflow-x: hidden;
  overflow-y: auto;
  background-color: #161616;
  transform: translate3d(100%, 0, 0);
  transition: transform 0.11s cubic-bezier(0.2, 0, 0.38, 0.9);
  will-change: transform;
}
.bx--panel--expanded {
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.25);
  transform: translate3d(0, 0, 0);
}
.bx--product-switcher__search {
  margin-bottom: 1.5rem;
  padding: 0 1rem;
}
.bx--search--shell input {
  background-color: #e0e0e0;
}
.bx--product-switcher__subheader,
.bx--product-switcher__all-btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  padding: 0.5rem;
  color: #c6c6c6;
}
.bx--product-switcher__subheader {
  padding-left: 3.5rem;
}
.bx--product-switcher__all-btn {
  padding-left: 3.5rem;
}
.bx--product-switcher__all-btn,
.bx--product-switcher__back-btn {
  display: inline-block;
  width: 100%;
  color: #0f62fe;
  text-align: left;
  background: transparent;
  border: none;
  cursor: pointer;
}
.bx--product-switcher__all-btn:hover,
.bx--product-switcher__back-btn:hover {
  text-decoration: underline;
}
.bx--product-switcher__all-btn:focus,
.bx--product-switcher__back-btn:focus {
  outline: none;
  box-shadow: inset 0 0 0 3px #0f62fe;
}
.bx--product-switcher__back-btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
}
.bx--product-switcher__back-arrow {
  margin-right: 1rem;
  fill: #0f62fe;
}
.bx--product-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}
.bx--product-list__item:hover {
  background: #e0e0e0;
}
.bx--product-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  padding: 0.5rem 1rem;
  text-decoration: none;
}
.bx--product-link:focus {
  outline: none;
  box-shadow: inset 0 0 0 3px #0f62fe;
}
.bx--product-switcher__icon {
  margin-right: 1rem;
}
.bx--product-link__name {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  margin-left: 0.25rem;
  color: #c6c6c6;
  font-weight: 400;
}
.bx--product-switcher__product-list .bx--overflow-menu {
  display: none;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
}
.bx--product-switcher__product-list .bx--overflow-menu.bx--overflow-menu--open {
  display: flex;
}
.bx--product-switcher__product-list .bx--overflow-menu > svg {
  fill: #c6c6c6;
}
.bx--product-switcher__product-list .bx--overflow-menu:hover {
  background: #c6c6c6;
}
.bx--product-switcher__product-list .bx--overflow-menu:hover > svg {
  fill: #c6c6c6;
}
.bx--product-switcher__product-list .bx--overflow-menu:focus {
  display: flex;
  outline: none;
  box-shadow: inset 0 0 0 3px #0f62fe;
}
.bx--product-switcher__product-list .bx--overflow-menu-options__option:hover {
  background: #ffffff;
}
.bx--product-list__item:hover .bx--overflow-menu {
  display: flex;
}
.bx--switcher {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #c6c6c6;
}
.bx--switcher__item {
  width: 100%;
  height: 2rem;
}
.bx--switcher__item:nth-child(1) {
  margin-top: 1rem;
}
.bx--switcher__item--divider {
  display: block;
  width: 14rem;
  height: 1px;
  margin: 0.5rem 1rem;
  background: #393939;
  border: none;
}
.bx--switcher__item-link {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: block;
  height: 2rem;
  padding: 0.375rem 1rem;
  color: #c6c6c6;
  text-decoration: none;
}
.bx--switcher__item-link:hover:not(.bx--switcher__item-link--selected) {
  color: #f4f4f4;
  background: #2c2c2c;
  cursor: pointer;
}
.bx--switcher__item-link:focus {
  outline: 2px solid #ffffff;
  outline-offset: -2px;
}
.bx--switcher__item-link:active {
  color: #f4f4f4;
  background: #393939;
}
.bx--switcher__item-link--selected {
  color: #f4f4f4;
  background: #262626;
}
.bx--side-nav {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 8000;
  width: 3rem;
  max-width: 16rem;
  overflow: hidden;
  color: #525252;
  background-color: #ffffff;
  transition: width 0.11s cubic-bezier(0.2, 0, 1, 0.9);
  will-change: width;
}
.bx--side-nav--ux {
  top: 3rem;
  width: 16rem;
}
@media (max-width: 65.98rem) {
  .bx--side-nav--ux {
    width: 0;
  }
}
.bx--side-nav--rail {
  width: 3rem;
}
.bx--side-nav--hidden {
  width: 0;
}
.bx--side-nav.bx--side-nav--rail:not(.bx--side-nav--fixed):hover,
.bx--side-nav--expanded {
  width: 16rem;
}
.bx--side-nav__overlay {
  position: absolute;
  top: 3rem;
  width: 0;
  height: 0;
  background-color: transparent;
  opacity: 0;
  transition: opacity 240ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 240ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
@media (max-width: 65.98rem) {
  .bx--side-nav__overlay-active {
    width: 100%;
    height: 100vh;
    background-color: rgba(22, 22, 22, 0.5);
    opacity: 1;
    transition: opacity 240ms cubic-bezier(0.2, 0, 0.38, 0.9), background-color 240ms cubic-bezier(0.2, 0, 0.38, 0.9);
  }
}
.bx--header ~ .bx--side-nav {
  top: 3rem;
  height: calc(100% - 48px);
}
.bx--side-nav--fixed {
  width: 16rem;
}
.bx--side-nav--collapsed {
  width: 16rem;
  transform: translateX(-16rem);
}
.bx--side-nav__navigation {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.bx--side-nav__header {
  display: flex;
  width: 100%;
  max-width: 100%;
  height: 3rem;
  border-bottom: 1px solid #393939;
}
.bx--side-nav:hover .bx--side-nav__header, .bx--side-nav--fixed .bx--side-nav__header, .bx--side-nav--expanded .bx--side-nav__header {
  height: auto;
}
.bx--side-nav--ux .bx--side-nav__header {
  height: auto;
}
.bx--side-nav__details {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  padding-right: 1rem;
  opacity: 0;
  visibility: hidden;
}
.bx--side-nav:hover .bx--side-nav__details, .bx--side-nav--fixed .bx--side-nav__details, .bx--side-nav--expanded .bx--side-nav__details {
  visibility: inherit;
  opacity: 1;
}
.bx--side-nav--ux .bx--side-nav__details {
  visibility: inherit;
  opacity: 1;
}
.bx--side-nav__title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-top: 1rem;
  font-weight: 600;
  font-size: 0.875rem;
  letter-spacing: 0.1px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--side-nav__title,
.bx--side-nav__select {
  padding-left: 0.5rem;
}
.bx--side-nav__switcher {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.bx--side-nav__switcher-chevron {
  position: absolute;
  top: 0;
  right: 0.5rem;
  bottom: 0;
  display: flex;
  align-items: center;
  fill: #525252;
}
.bx--side-nav__select {
  outline: 2px solid transparent;
  outline-offset: -2px;
  flex: 1 1 0%;
  min-width: 0;
  height: 2rem;
  padding-right: 2rem;
  color: #f4f4f4;
  font-size: 0.75rem;
  background-color: #161616;
  border: none;
  border-radius: 0;
  cursor: pointer;
  transition: outline 110ms;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.bx--side-nav__select:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--side-nav__footer {
  flex: 0 0 3rem;
  width: 100%;
  background-color: #ffffff;
}
.bx--side-nav__toggle {
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  height: 100%;
  padding-left: 1rem;
  text-align: left;
  transition: outline 110ms;
}
.bx--side-nav__toggle::-moz-focus-inner {
  border: 0;
}
.bx--side-nav__toggle:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--side-nav__items {
  flex: 1 1 0%;
  padding: 1rem 0 0;
  overflow: hidden;
}
.bx--side-nav:hover .bx--side-nav__items, .bx--side-nav--fixed .bx--side-nav__items, .bx--side-nav--expanded .bx--side-nav__items {
  overflow-y: auto;
}
.bx--side-nav--ux .bx--side-nav__items {
  overflow-y: auto;
}
.bx--side-nav__item {
  width: 3rem;
  height: 3rem;
  overflow: hidden;
}
.bx--side-nav:hover .bx--side-nav__item, .bx--side-nav--fixed .bx--side-nav__item, .bx--side-nav--expanded .bx--side-nav__item {
  width: auto;
  height: auto;
}
.bx--side-nav--ux .bx--side-nav__item {
  width: auto;
  height: auto;
}
.bx--side-nav__item:not(.bx--side-nav__item--active):hover .bx--side-nav__item:not(.bx--side-nav__item--active) > .bx--side-nav__submenu:hover,
.bx--side-nav__item:not(.bx--side-nav__item--active) > .bx--side-nav__link:hover,
.bx--side-nav__menu a.bx--side-nav__link:not(.bx--side-nav__link--current):not([aria-current=page]):hover,
.bx--side-nav a.bx--header__menu-item:hover,
.bx--side-nav .bx--header__menu-title[aria-expanded=true]:hover {
  color: #161616;
  background-color: #e5e5e5;
}
.bx--side-nav__item:not(.bx--side-nav__item--active) > .bx--side-nav__link:hover > span,
.bx--side-nav__item:not(.bx--side-nav__item--active) .bx--side-nav__menu-item > .bx--side-nav__link:hover > span {
  color: #161616;
}
.bx--side-nav__item--large {
  height: 3rem;
}
.bx--side-nav__submenu {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  display: flex;
  align-items: center;
  height: 2rem;
  padding: 0 1rem;
  color: #525252;
  transition: color 110ms, background-color 110ms, outline 110ms;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bx--side-nav__submenu::-moz-focus-inner {
  border: 0;
}
.bx--side-nav__submenu:hover {
  color: #161616;
  background-color: #e5e5e5;
}
.bx--side-nav__submenu:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--side-nav__submenu:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
.bx--side-nav__submenu-title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-align: left;
}
.bx--side-nav__icon.bx--side-nav__submenu-chevron {
  display: flex;
  flex: 1;
  justify-content: flex-end;
}
.bx--side-nav__submenu-chevron > svg {
  width: 1rem;
  height: 1rem;
  transition: transform 110ms;
}
.bx--side-nav__submenu[aria-expanded=true] .bx--side-nav__submenu-chevron > svg {
  transform: rotate(180deg);
}
.bx--side-nav__item--large .bx--side-nav__submenu {
  height: 3rem;
}
.bx--side-nav__item--active .bx--side-nav__submenu:hover {
  color: #161616;
  background-color: #e5e5e5;
}
.bx--side-nav__item--active .bx--side-nav__submenu[aria-expanded=false] {
  position: relative;
  color: #161616;
  background-color: #e5e5e5;
}
.bx--side-nav__item--active .bx--side-nav__submenu[aria-expanded=false]::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 4px;
  background-color: #0f62fe;
  content: "";
}
.bx--side-nav__item--active .bx--side-nav__submenu-title {
  color: #161616;
  font-weight: 600;
}
.bx--side-nav__menu {
  display: block;
  max-height: 0;
  visibility: hidden;
}
.bx--side-nav__submenu[aria-expanded=true] + .bx--side-nav__menu {
  max-height: 93.75rem;
  visibility: inherit;
}
.bx--side-nav__menu a.bx--side-nav__link {
  height: 2rem;
  min-height: 2rem;
  padding-left: 2rem;
  font-weight: 400;
}
.bx--side-nav__item.bx--side-nav__item--icon a.bx--side-nav__link {
  padding-left: 4.5rem;
}
.bx--side-nav__menu a.bx--side-nav__link--current,
.bx--side-nav__menu a.bx--side-nav__link[aria-current=page],
a.bx--side-nav__link--current {
  background-color: #e0e0e0;
}
.bx--side-nav__menu a.bx--side-nav__link--current > span,
.bx--side-nav__menu a.bx--side-nav__link[aria-current=page] > span,
a.bx--side-nav__link--current > span {
  color: #161616;
  font-weight: 600;
}
a.bx--side-nav__link,
.bx--side-nav a.bx--header__menu-item,
.bx--side-nav .bx--header__menu-title[aria-expanded=true] + .bx--header__menu {
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  position: relative;
  display: flex;
  align-items: center;
  min-height: 2rem;
  padding: 0 1rem;
  text-decoration: none;
  transition: color 110ms, background-color 110ms, outline 110ms;
}
.bx--side-nav__item--large a.bx--side-nav__link {
  height: 3rem;
}
a.bx--side-nav__link > .bx--side-nav__link-text,
.bx--side-nav a.bx--header__menu-item .bx--text-truncate-end {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #525252;
  font-size: 0.875rem;
  line-height: 1.25rem;
  letter-spacing: 0.1px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
a.bx--side-nav__link:focus,
.bx--side-nav a.bx--header__menu-item:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  a.bx--side-nav__link:focus,
.bx--side-nav a.bx--header__menu-item:focus {
    outline: 3px solid transparent;
    outline-offset: -3px;
  }
}
a.bx--side-nav__link[aria-current=page],
a.bx--side-nav__link--current {
  font-weight: 600;
  background-color: #e5e5e5;
}
a.bx--side-nav__link[aria-current=page] .bx--side-nav__link-text,
a.bx--side-nav__link--current .bx--side-nav__link-text {
  color: #161616;
}
a.bx--side-nav__link[aria-current=page]::before,
a.bx--side-nav__link--current::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 4px;
  background-color: #0f62fe;
  content: "";
}
.bx--side-nav__icon {
  display: flex;
  flex: 0 0 1rem;
  align-items: center;
  justify-content: center;
}
.bx--side-nav__icon:not(.bx--side-nav__submenu-chevron) {
  margin-right: 1.5rem;
}
.bx--side-nav__icon > svg {
  width: 1rem;
  height: 1rem;
  fill: #525252;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--side-nav__icon > svg {
    fill: ButtonText;
  }
}
.bx--side-nav__icon > svg.bx--side-nav-collapse-icon {
  display: none;
}
.bx--side-nav--expanded .bx--side-nav__icon > svg.bx--side-nav-expand-icon {
  display: none;
}
.bx--side-nav--expanded .bx--side-nav__icon > svg.bx--side-nav-collapse-icon {
  display: block;
}
.bx--side-nav--fixed a.bx--side-nav__link,
.bx--side-nav--fixed .bx--side-nav__submenu {
  padding-left: 1rem;
}
.bx--side-nav--fixed .bx--side-nav__item:not(.bx--side-nav__item--icon) .bx--side-nav__menu a.bx--side-nav__link {
  padding-left: 2rem;
}
@media (max-width: 65.98rem) {
  .bx--side-nav .bx--header__nav {
    display: block;
  }
}
.bx--side-nav__header-navigation {
  display: none;
}
@media (max-width: 65.98rem) {
  .bx--side-nav__header-navigation {
    position: relative;
    display: block;
    margin-bottom: 2rem;
  }
}
.bx--side-nav__header-divider::after {
  position: absolute;
  bottom: -1rem;
  left: 1rem;
  width: calc(100% - 32px);
  height: 0.0625rem;
  background: #e0e0e0;
  content: "";
}
.bx--side-nav a.bx--header__menu-item {
  justify-content: space-between;
  color: #525252;
  white-space: nowrap;
}
.bx--side-nav a.bx--header__menu-item[aria-expanded=true] {
  background-color: transparent;
}
.bx--side-nav .bx--header__menu-title[aria-expanded=true] + .bx--header__menu {
  bottom: inherit;
  width: 100%;
  padding: 0;
  background-color: transparent;
  box-shadow: none;
  transform: none;
}
.bx--side-nav .bx--header__menu-title[aria-expanded=true] + .bx--header__menu li {
  width: 100%;
}
.bx--side-nav .bx--header__menu-title[aria-expanded=true] + .bx--header__menu a.bx--header__menu-item {
  padding-left: 4.25rem;
  font-weight: 400;
}
.bx--side-nav .bx--header__menu-title[aria-expanded=true] + .bx--header__menu a.bx--header__menu-item:hover {
  color: #161616;
  background-color: #e5e5e5;
}
.bx--side-nav .bx--header__menu a.bx--header__menu-item {
  height: inherit;
}
.bx--side-nav a.bx--header__menu-item:hover .bx--header__menu-arrow,
.bx--side-nav a.bx--header__menu-item:focus .bx--header__menu-arrow,
.bx--side-nav .bx--header__menu-arrow {
  fill: #525252;
}
@media screen and (-ms-high-contrast: active), screen and (prefers-contrast) {
  .bx--side-nav a.bx--header__menu-item:hover .bx--header__menu-arrow,
.bx--side-nav a.bx--header__menu-item:focus .bx--header__menu-arrow,
.bx--side-nav .bx--header__menu-arrow {
    fill: ButtonText;
  }
}
.bx--navigation {
  position: fixed;
  top: 3rem;
  bottom: 0;
  left: 0;
  z-index: 6000;
  width: 16rem;
  color: #f4f4f4;
  background-color: #262626;
  box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.25);
}
.bx--navigation--right {
  right: 0;
  left: auto;
}
.bx--navigation svg {
  fill: #f4f4f4;
}
.bx--navigation-section:not(:last-child)::after {
  display: block;
  height: 1px;
  margin: 0 1rem;
  background-color: #393939;
  content: "";
}
.bx--navigation-item {
  position: relative;
  display: flex;
  align-items: center;
}
.bx--navigation-item--active > a.bx--navigation-link {
  color: #ffffff;
  font-weight: 600;
}
.bx--navigation-item--active::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 4px;
  background-color: #0f62fe;
  content: "";
}
a.bx--navigation-link {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 2.5rem;
  padding-left: 1rem;
  color: #f4f4f4;
  font-weight: 400;
  font-size: 0.875rem;
  text-decoration: none;
}
a.bx--navigation-link:hover {
  color: #ffffff;
  background-color: #333333;
}
a.bx--navigation-link:focus {
  outline: 0.1875rem solid #0f62fe;
  outline-offset: -0.1875rem;
}
.bx--navigation-item--icon > a.bx--navigation-link {
  padding-left: 0;
}
.bx--navigation__category {
  width: 100%;
}
.bx--navigation__category-toggle {
  display: inline-block;
  padding: 0;
  background: none;
  border: 0;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  display: flex;
  align-items: center;
}
.bx--navigation__category-toggle::-moz-focus-inner {
  border: 0;
}
.bx--navigation__category-toggle:hover {
  background-color: #333333;
}
.bx--navigation__category-toggle:focus {
  outline: 0.1875rem solid #0f62fe;
  outline-offset: -0.1875rem;
}
.bx--navigation__category-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 2.5rem;
  padding-right: 1rem;
  padding-left: 1rem;
  color: #f4f4f4;
  font-weight: 400;
  font-size: 0.875rem;
}
.bx--navigation-item--icon .bx--navigation__category-title {
  padding-left: 0;
}
.bx--navigation__category-items {
  display: none;
  visibility: hidden;
}
.bx--navigation__category-item > a.bx--navigation-link {
  display: flex;
  align-items: center;
  min-height: 2rem;
  padding-left: 2rem;
}
.bx--navigation__category-item {
  position: relative;
}
.bx--navigation-item--icon .bx--navigation__category-item > a.bx--navigation-link {
  padding-left: 3.5rem;
}
.bx--navigation__category-item--active::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 4px;
  background-color: #0f62fe;
  content: "";
}
.bx--navigation__category-item--active > a.bx--navigation-link {
  color: #ffffff;
  font-weight: 600;
}
.bx--navigation__category--expanded .bx--navigation__category-title {
  font-weight: 600;
}
.bx--navigation__category--expanded .bx--navigation__category-title > svg {
  transform: rotate(180deg);
}
.bx--navigation__category--expanded .bx--navigation__category-items {
  display: block;
  visibility: inherit;
}
.bx--navigation-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 2.5rem;
  margin-right: 0.5rem;
}
.bx--content {
  padding: 2rem;
  background: #f4f4f4;
  transform: translate3d(0, 0, 0);
  will-change: margin-left;
}
.bx--header ~ .bx--content {
  margin-top: 3rem;
}
.bx--side-nav ~ .bx--content {
  margin-left: 3rem;
}
.bx--side-nav.bx--side-nav--expanded ~ .bx--content {
  margin-left: 16rem;
}
.bx--cc--chart-svg .fill-1-1-1 {
  fill: #6929c4;
}
.bx--cc--chart-svg .fill-1-1-1.hovered {
  fill: #5923a6;
}
.bx--cc--chart-svg .stroke-1-1-1 {
  stroke: #6929c4;
}
.bx--cc--chart-svg .fill-1-2-1 {
  fill: #002d9c;
}
.bx--cc--chart-svg .fill-1-2-1.hovered {
  fill: #002378;
}
.bx--cc--chart-svg .stroke-1-2-1 {
  stroke: #002d9c;
}
.bx--cc--chart-svg .fill-1-3-1 {
  fill: #1192e8;
}
.bx--cc--chart-svg .fill-1-3-1.hovered {
  fill: #0f7dc7;
}
.bx--cc--chart-svg .stroke-1-3-1 {
  stroke: #1192e8;
}
.bx--cc--chart-svg .fill-1-4-1 {
  fill: #007d79;
}
.bx--cc--chart-svg .fill-1-4-1.hovered {
  fill: #005956;
}
.bx--cc--chart-svg .stroke-1-4-1 {
  stroke: #007d79;
}
.bx--cc--chart-svg .fill-2-1-1 {
  fill: #6929c4;
}
.bx--cc--chart-svg .fill-2-1-1.hovered {
  fill: #5923a6;
}
.bx--cc--chart-svg .stroke-2-1-1 {
  stroke: #6929c4;
}
.bx--cc--chart-svg .fill-2-1-2 {
  fill: #009d9a;
}
.bx--cc--chart-svg .fill-2-1-2.hovered {
  fill: #007977;
}
.bx--cc--chart-svg .stroke-2-1-2 {
  stroke: #009d9a;
}
.bx--cc--chart-svg .fill-2-2-1 {
  fill: #8a3ffc;
}
.bx--cc--chart-svg .fill-2-2-1.hovered {
  fill: #751cfb;
}
.bx--cc--chart-svg .stroke-2-2-1 {
  stroke: #8a3ffc;
}
.bx--cc--chart-svg .fill-2-2-2 {
  fill: #520408;
}
.bx--cc--chart-svg .fill-2-2-2.hovered {
  fill: #300205;
}
.bx--cc--chart-svg .stroke-2-2-2 {
  stroke: #520408;
}
.bx--cc--chart-svg .fill-2-3-1 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-2-3-1.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-2-3-1 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-2-3-2 {
  fill: #520408;
}
.bx--cc--chart-svg .fill-2-3-2.hovered {
  fill: #300205;
}
.bx--cc--chart-svg .stroke-2-3-2 {
  stroke: #520408;
}
.bx--cc--chart-svg .fill-2-4-1 {
  fill: #1192e8;
}
.bx--cc--chart-svg .fill-2-4-1.hovered {
  fill: #0f7dc7;
}
.bx--cc--chart-svg .stroke-2-4-1 {
  stroke: #1192e8;
}
.bx--cc--chart-svg .fill-2-4-2 {
  fill: #005d5d;
}
.bx--cc--chart-svg .fill-2-4-2.hovered {
  fill: #003939;
}
.bx--cc--chart-svg .stroke-2-4-2 {
  stroke: #005d5d;
}
.bx--cc--chart-svg .fill-2-5-1 {
  fill: #009d9a;
}
.bx--cc--chart-svg .fill-2-5-1.hovered {
  fill: #007977;
}
.bx--cc--chart-svg .stroke-2-5-1 {
  stroke: #009d9a;
}
.bx--cc--chart-svg .fill-2-5-2 {
  fill: #002d9c;
}
.bx--cc--chart-svg .fill-2-5-2.hovered {
  fill: #002378;
}
.bx--cc--chart-svg .stroke-2-5-2 {
  stroke: #002d9c;
}
.bx--cc--chart-svg .fill-3-1-1 {
  fill: #ee5396;
}
.bx--cc--chart-svg .fill-3-1-1.hovered {
  fill: #eb3382;
}
.bx--cc--chart-svg .stroke-3-1-1 {
  stroke: #ee5396;
}
.bx--cc--chart-svg .fill-3-1-2 {
  fill: #1192e8;
}
.bx--cc--chart-svg .fill-3-1-2.hovered {
  fill: #0f7dc7;
}
.bx--cc--chart-svg .stroke-3-1-2 {
  stroke: #1192e8;
}
.bx--cc--chart-svg .fill-3-1-3 {
  fill: #6929c4;
}
.bx--cc--chart-svg .fill-3-1-3.hovered {
  fill: #5923a6;
}
.bx--cc--chart-svg .stroke-3-1-3 {
  stroke: #6929c4;
}
.bx--cc--chart-svg .fill-3-2-1 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-3-2-1.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-3-2-1 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-3-2-2 {
  fill: #fa4d56;
}
.bx--cc--chart-svg .fill-3-2-2.hovered {
  fill: #f92a35;
}
.bx--cc--chart-svg .stroke-3-2-2 {
  stroke: #fa4d56;
}
.bx--cc--chart-svg .fill-3-2-3 {
  fill: #520408;
}
.bx--cc--chart-svg .fill-3-2-3.hovered {
  fill: #300205;
}
.bx--cc--chart-svg .stroke-3-2-3 {
  stroke: #520408;
}
.bx--cc--chart-svg .fill-3-3-1 {
  fill: #a56eff;
}
.bx--cc--chart-svg .fill-3-3-1.hovered {
  fill: #8f4aff;
}
.bx--cc--chart-svg .stroke-3-3-1 {
  stroke: #a56eff;
}
.bx--cc--chart-svg .fill-3-3-2 {
  fill: #005d5d;
}
.bx--cc--chart-svg .fill-3-3-2.hovered {
  fill: #003939;
}
.bx--cc--chart-svg .stroke-3-3-2 {
  stroke: #005d5d;
}
.bx--cc--chart-svg .fill-3-3-3 {
  fill: #002d9c;
}
.bx--cc--chart-svg .fill-3-3-3.hovered {
  fill: #002378;
}
.bx--cc--chart-svg .stroke-3-3-3 {
  stroke: #002d9c;
}
.bx--cc--chart-svg .fill-3-4-1 {
  fill: #a56eff;
}
.bx--cc--chart-svg .fill-3-4-1.hovered {
  fill: #8f4aff;
}
.bx--cc--chart-svg .stroke-3-4-1 {
  stroke: #a56eff;
}
.bx--cc--chart-svg .fill-3-4-2 {
  fill: #005d5d;
}
.bx--cc--chart-svg .fill-3-4-2.hovered {
  fill: #003939;
}
.bx--cc--chart-svg .stroke-3-4-2 {
  stroke: #005d5d;
}
.bx--cc--chart-svg .fill-3-4-3 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-3-4-3.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-3-4-3 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-3-5-1 {
  fill: #012749;
}
.bx--cc--chart-svg .fill-3-5-1.hovered {
  fill: #011426;
}
.bx--cc--chart-svg .stroke-3-5-1 {
  stroke: #012749;
}
.bx--cc--chart-svg .fill-3-5-2 {
  fill: #6929c4;
}
.bx--cc--chart-svg .fill-3-5-2.hovered {
  fill: #5923a6;
}
.bx--cc--chart-svg .stroke-3-5-2 {
  stroke: #6929c4;
}
.bx--cc--chart-svg .fill-3-5-3 {
  fill: #009d9a;
}
.bx--cc--chart-svg .fill-3-5-3.hovered {
  fill: #007977;
}
.bx--cc--chart-svg .stroke-3-5-3 {
  stroke: #009d9a;
}
.bx--cc--chart-svg .fill-4-1-1 {
  fill: #6929c4;
}
.bx--cc--chart-svg .fill-4-1-1.hovered {
  fill: #5923a6;
}
.bx--cc--chart-svg .stroke-4-1-1 {
  stroke: #6929c4;
}
.bx--cc--chart-svg .fill-4-1-2 {
  fill: #012749;
}
.bx--cc--chart-svg .fill-4-1-2.hovered {
  fill: #011426;
}
.bx--cc--chart-svg .stroke-4-1-2 {
  stroke: #012749;
}
.bx--cc--chart-svg .fill-4-1-3 {
  fill: #009d9a;
}
.bx--cc--chart-svg .fill-4-1-3.hovered {
  fill: #007977;
}
.bx--cc--chart-svg .stroke-4-1-3 {
  stroke: #009d9a;
}
.bx--cc--chart-svg .fill-4-1-4 {
  fill: #ee5396;
}
.bx--cc--chart-svg .fill-4-1-4.hovered {
  fill: #eb3382;
}
.bx--cc--chart-svg .stroke-4-1-4 {
  stroke: #ee5396;
}
.bx--cc--chart-svg .fill-4-2-1 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-4-2-1.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-4-2-1 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-4-2-2 {
  fill: #fa4d56;
}
.bx--cc--chart-svg .fill-4-2-2.hovered {
  fill: #f92a35;
}
.bx--cc--chart-svg .stroke-4-2-2 {
  stroke: #fa4d56;
}
.bx--cc--chart-svg .fill-4-2-3 {
  fill: #520408;
}
.bx--cc--chart-svg .fill-4-2-3.hovered {
  fill: #300205;
}
.bx--cc--chart-svg .stroke-4-2-3 {
  stroke: #520408;
}
.bx--cc--chart-svg .fill-4-2-4 {
  fill: #a56eff;
}
.bx--cc--chart-svg .fill-4-2-4.hovered {
  fill: #8f4aff;
}
.bx--cc--chart-svg .stroke-4-2-4 {
  stroke: #a56eff;
}
.bx--cc--chart-svg .fill-4-3-1 {
  fill: #009d9a;
}
.bx--cc--chart-svg .fill-4-3-1.hovered {
  fill: #007977;
}
.bx--cc--chart-svg .stroke-4-3-1 {
  stroke: #009d9a;
}
.bx--cc--chart-svg .fill-4-3-2 {
  fill: #002d9c;
}
.bx--cc--chart-svg .fill-4-3-2.hovered {
  fill: #002378;
}
.bx--cc--chart-svg .stroke-4-3-2 {
  stroke: #002d9c;
}
.bx--cc--chart-svg .fill-4-3-3 {
  fill: #a56eff;
}
.bx--cc--chart-svg .fill-4-3-3.hovered {
  fill: #8f4aff;
}
.bx--cc--chart-svg .stroke-4-3-3 {
  stroke: #a56eff;
}
.bx--cc--chart-svg .fill-4-3-4 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-4-3-4.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-4-3-4 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-5-1-1 {
  fill: #6929c4;
}
.bx--cc--chart-svg .fill-5-1-1.hovered {
  fill: #5923a6;
}
.bx--cc--chart-svg .stroke-5-1-1 {
  stroke: #6929c4;
}
.bx--cc--chart-svg .fill-5-1-2 {
  fill: #1192e8;
}
.bx--cc--chart-svg .fill-5-1-2.hovered {
  fill: #0f7dc7;
}
.bx--cc--chart-svg .stroke-5-1-2 {
  stroke: #1192e8;
}
.bx--cc--chart-svg .fill-5-1-3 {
  fill: #005d5d;
}
.bx--cc--chart-svg .fill-5-1-3.hovered {
  fill: #003939;
}
.bx--cc--chart-svg .stroke-5-1-3 {
  stroke: #005d5d;
}
.bx--cc--chart-svg .fill-5-1-4 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-5-1-4.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-5-1-4 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-5-1-5 {
  fill: #520408;
}
.bx--cc--chart-svg .fill-5-1-5.hovered {
  fill: #300205;
}
.bx--cc--chart-svg .stroke-5-1-5 {
  stroke: #520408;
}
.bx--cc--chart-svg .fill-5-2-1 {
  fill: #002d9c;
}
.bx--cc--chart-svg .fill-5-2-1.hovered {
  fill: #002378;
}
.bx--cc--chart-svg .stroke-5-2-1 {
  stroke: #002d9c;
}
.bx--cc--chart-svg .fill-5-2-2 {
  fill: #009d9a;
}
.bx--cc--chart-svg .fill-5-2-2.hovered {
  fill: #007977;
}
.bx--cc--chart-svg .stroke-5-2-2 {
  stroke: #009d9a;
}
.bx--cc--chart-svg .fill-5-2-3 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-5-2-3.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-5-2-3 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-5-2-4 {
  fill: #520408;
}
.bx--cc--chart-svg .fill-5-2-4.hovered {
  fill: #300205;
}
.bx--cc--chart-svg .stroke-5-2-4 {
  stroke: #520408;
}
.bx--cc--chart-svg .fill-5-2-5 {
  fill: #a56eff;
}
.bx--cc--chart-svg .fill-5-2-5.hovered {
  fill: #8f4aff;
}
.bx--cc--chart-svg .stroke-5-2-5 {
  stroke: #a56eff;
}
.bx--cc--chart-svg .fill-14-1-1 {
  fill: #6929c4;
}
.bx--cc--chart-svg .fill-14-1-1.hovered {
  fill: #5923a6;
}
.bx--cc--chart-svg .stroke-14-1-1 {
  stroke: #6929c4;
}
.bx--cc--chart-svg .fill-14-1-2 {
  fill: #1192e8;
}
.bx--cc--chart-svg .fill-14-1-2.hovered {
  fill: #0f7dc7;
}
.bx--cc--chart-svg .stroke-14-1-2 {
  stroke: #1192e8;
}
.bx--cc--chart-svg .fill-14-1-3 {
  fill: #005d5d;
}
.bx--cc--chart-svg .fill-14-1-3.hovered {
  fill: #003939;
}
.bx--cc--chart-svg .stroke-14-1-3 {
  stroke: #005d5d;
}
.bx--cc--chart-svg .fill-14-1-4 {
  fill: #9f1853;
}
.bx--cc--chart-svg .fill-14-1-4.hovered {
  fill: #801343;
}
.bx--cc--chart-svg .stroke-14-1-4 {
  stroke: #9f1853;
}
.bx--cc--chart-svg .fill-14-1-5 {
  fill: #fa4d56;
}
.bx--cc--chart-svg .fill-14-1-5.hovered {
  fill: #f92a35;
}
.bx--cc--chart-svg .stroke-14-1-5 {
  stroke: #fa4d56;
}
.bx--cc--chart-svg .fill-14-1-6 {
  fill: #520408;
}
.bx--cc--chart-svg .fill-14-1-6.hovered {
  fill: #300205;
}
.bx--cc--chart-svg .stroke-14-1-6 {
  stroke: #520408;
}
.bx--cc--chart-svg .fill-14-1-7 {
  fill: #198038;
}
.bx--cc--chart-svg .fill-14-1-7.hovered {
  fill: #13622b;
}
.bx--cc--chart-svg .stroke-14-1-7 {
  stroke: #198038;
}
.bx--cc--chart-svg .fill-14-1-8 {
  fill: #002d9c;
}
.bx--cc--chart-svg .fill-14-1-8.hovered {
  fill: #002378;
}
.bx--cc--chart-svg .stroke-14-1-8 {
  stroke: #002d9c;
}
.bx--cc--chart-svg .fill-14-1-9 {
  fill: #ee5396;
}
.bx--cc--chart-svg .fill-14-1-9.hovered {
  fill: #eb3382;
}
.bx--cc--chart-svg .stroke-14-1-9 {
  stroke: #ee5396;
}
.bx--cc--chart-svg .fill-14-1-10 {
  fill: #b28600;
}
.bx--cc--chart-svg .fill-14-1-10.hovered {
  fill: #8e6b00;
}
.bx--cc--chart-svg .stroke-14-1-10 {
  stroke: #b28600;
}
.bx--cc--chart-svg .fill-14-1-11 {
  fill: #009d9a;
}
.bx--cc--chart-svg .fill-14-1-11.hovered {
  fill: #007977;
}
.bx--cc--chart-svg .stroke-14-1-11 {
  stroke: #009d9a;
}
.bx--cc--chart-svg .fill-14-1-12 {
  fill: #012749;
}
.bx--cc--chart-svg .fill-14-1-12.hovered {
  fill: #011426;
}
.bx--cc--chart-svg .stroke-14-1-12 {
  stroke: #012749;
}
.bx--cc--chart-svg .fill-14-1-13 {
  fill: #8a3800;
}
.bx--cc--chart-svg .fill-14-1-13.hovered {
  fill: #662a00;
}
.bx--cc--chart-svg .stroke-14-1-13 {
  stroke: #8a3800;
}
.bx--cc--chart-svg .fill-14-1-14 {
  fill: #a56eff;
}
.bx--cc--chart-svg .fill-14-1-14.hovered {
  fill: #8f4aff;
}
.bx--cc--chart-svg .stroke-14-1-14 {
  stroke: #a56eff;
}
.bx--cc--tooltip .tooltip-1-1-1 {
  background-color: #6929c4;
}
.bx--cc--tooltip .tooltip-1-2-1 {
  background-color: #002d9c;
}
.bx--cc--tooltip .tooltip-1-3-1 {
  background-color: #1192e8;
}
.bx--cc--tooltip .tooltip-1-4-1 {
  background-color: #007d79;
}
.bx--cc--tooltip .tooltip-2-1-1 {
  background-color: #6929c4;
}
.bx--cc--tooltip .tooltip-2-1-2 {
  background-color: #009d9a;
}
.bx--cc--tooltip .tooltip-2-2-1 {
  background-color: #8a3ffc;
}
.bx--cc--tooltip .tooltip-2-2-2 {
  background-color: #520408;
}
.bx--cc--tooltip .tooltip-2-3-1 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-2-3-2 {
  background-color: #520408;
}
.bx--cc--tooltip .tooltip-2-4-1 {
  background-color: #1192e8;
}
.bx--cc--tooltip .tooltip-2-4-2 {
  background-color: #005d5d;
}
.bx--cc--tooltip .tooltip-2-5-1 {
  background-color: #009d9a;
}
.bx--cc--tooltip .tooltip-2-5-2 {
  background-color: #002d9c;
}
.bx--cc--tooltip .tooltip-3-1-1 {
  background-color: #ee5396;
}
.bx--cc--tooltip .tooltip-3-1-2 {
  background-color: #1192e8;
}
.bx--cc--tooltip .tooltip-3-1-3 {
  background-color: #6929c4;
}
.bx--cc--tooltip .tooltip-3-2-1 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-3-2-2 {
  background-color: #fa4d56;
}
.bx--cc--tooltip .tooltip-3-2-3 {
  background-color: #520408;
}
.bx--cc--tooltip .tooltip-3-3-1 {
  background-color: #a56eff;
}
.bx--cc--tooltip .tooltip-3-3-2 {
  background-color: #005d5d;
}
.bx--cc--tooltip .tooltip-3-3-3 {
  background-color: #002d9c;
}
.bx--cc--tooltip .tooltip-3-4-1 {
  background-color: #a56eff;
}
.bx--cc--tooltip .tooltip-3-4-2 {
  background-color: #005d5d;
}
.bx--cc--tooltip .tooltip-3-4-3 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-3-5-1 {
  background-color: #012749;
}
.bx--cc--tooltip .tooltip-3-5-2 {
  background-color: #6929c4;
}
.bx--cc--tooltip .tooltip-3-5-3 {
  background-color: #009d9a;
}
.bx--cc--tooltip .tooltip-4-1-1 {
  background-color: #6929c4;
}
.bx--cc--tooltip .tooltip-4-1-2 {
  background-color: #012749;
}
.bx--cc--tooltip .tooltip-4-1-3 {
  background-color: #009d9a;
}
.bx--cc--tooltip .tooltip-4-1-4 {
  background-color: #ee5396;
}
.bx--cc--tooltip .tooltip-4-2-1 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-4-2-2 {
  background-color: #fa4d56;
}
.bx--cc--tooltip .tooltip-4-2-3 {
  background-color: #520408;
}
.bx--cc--tooltip .tooltip-4-2-4 {
  background-color: #a56eff;
}
.bx--cc--tooltip .tooltip-4-3-1 {
  background-color: #009d9a;
}
.bx--cc--tooltip .tooltip-4-3-2 {
  background-color: #002d9c;
}
.bx--cc--tooltip .tooltip-4-3-3 {
  background-color: #a56eff;
}
.bx--cc--tooltip .tooltip-4-3-4 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-5-1-1 {
  background-color: #6929c4;
}
.bx--cc--tooltip .tooltip-5-1-2 {
  background-color: #1192e8;
}
.bx--cc--tooltip .tooltip-5-1-3 {
  background-color: #005d5d;
}
.bx--cc--tooltip .tooltip-5-1-4 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-5-1-5 {
  background-color: #520408;
}
.bx--cc--tooltip .tooltip-5-2-1 {
  background-color: #002d9c;
}
.bx--cc--tooltip .tooltip-5-2-2 {
  background-color: #009d9a;
}
.bx--cc--tooltip .tooltip-5-2-3 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-5-2-4 {
  background-color: #520408;
}
.bx--cc--tooltip .tooltip-5-2-5 {
  background-color: #a56eff;
}
.bx--cc--tooltip .tooltip-14-1-1 {
  background-color: #6929c4;
}
.bx--cc--tooltip .tooltip-14-1-2 {
  background-color: #1192e8;
}
.bx--cc--tooltip .tooltip-14-1-3 {
  background-color: #005d5d;
}
.bx--cc--tooltip .tooltip-14-1-4 {
  background-color: #9f1853;
}
.bx--cc--tooltip .tooltip-14-1-5 {
  background-color: #fa4d56;
}
.bx--cc--tooltip .tooltip-14-1-6 {
  background-color: #520408;
}
.bx--cc--tooltip .tooltip-14-1-7 {
  background-color: #198038;
}
.bx--cc--tooltip .tooltip-14-1-8 {
  background-color: #002d9c;
}
.bx--cc--tooltip .tooltip-14-1-9 {
  background-color: #ee5396;
}
.bx--cc--tooltip .tooltip-14-1-10 {
  background-color: #b28600;
}
.bx--cc--tooltip .tooltip-14-1-11 {
  background-color: #009d9a;
}
.bx--cc--tooltip .tooltip-14-1-12 {
  background-color: #012749;
}
.bx--cc--tooltip .tooltip-14-1-13 {
  background-color: #8a3800;
}
.bx--cc--tooltip .tooltip-14-1-14 {
  background-color: #a56eff;
}
.bx--cc--axes g.axis g.ticks.invisible {
  visibility: hidden;
}
.bx--cc--axes g.axis g.tick text {
  fill: #525252;
  font-family: 'IBM Plex Sans Condensed', 'Helvetica Neue', Arial, sans-serif;
}
.bx--cc--axes g.axis g.tick line {
  display: none;
}
.bx--cc--axes g.axis path.domain {
  stroke: #8d8d8d;
}
.bx--cc--chart-svg g.callouts {
  stroke: #525252;
}
.bx--cc--grid-brush g.grid-brush rect.selection {
  fill: none;
  fill-opacity: 0;
  stroke: none;
}
g.bx--cc--grid-brush rect.frontSelection {
  fill: #e0e0e0;
  fill-opacity: 0.3;
  stroke: #0f62fe;
}
.bx--cc--grid rect.chart-grid-backdrop {
  fill: #ffffff;
}
.bx--cc--grid rect.chart-grid-backdrop.stroked {
  stroke: #e0e0e0;
}
.bx--cc--grid rect.stroke {
  stroke: #e0e0e0;
}
.bx--cc--grid g.x.grid g.tick line,
.bx--cc--grid g.y.grid g.tick line {
  pointer-events: none;
  stroke-width: 1px;
  stroke: #e0e0e0;
}
.bx--cc--grid g.x.grid g.tick.active line,
.bx--cc--grid g.y.grid g.tick.active line {
  stroke-dasharray: 2px;
  stroke: #0f62fe;
}
.bx--cc--ruler line.ruler-line {
  stroke: #000000;
  stroke-width: 1px;
  stroke-dasharray: 2;
  pointer-events: none;
}
.bx--cc--skeleton rect.chart-skeleton-backdrop {
  fill: #ffffff;
}
.bx--cc--skeleton .shimmer-effect-lines {
  stroke-width: 1px;
  stroke: url(#shimmer-lines);
}
.bx--cc--skeleton .shimmer-effect-sparkline {
  stroke-width: 0px;
}
.bx--cc--skeleton .empty-state-lines {
  stroke-width: 1px;
  stroke: #e0e0e0;
}
.bx--cc--skeleton #shimmer-lines .stop-bg-shimmer {
  stop-color: #e0e0e0;
}
.bx--cc--skeleton #shimmer-lines .stop-shimmer {
  stop-color: #ffffff;
}
.bx--cc--skeleton .shimmer-effect-areas {
  fill: url(#shimmer-areas);
}
.bx--cc--skeleton .empty-state-areas {
  fill: rgba(127, 127, 127, 0.1);
}
.bx--cc--skeleton #shimmer-areas .stop-bg-shimmer {
  stop-color: rgba(127, 127, 127, 0.1);
}
.bx--cc--skeleton #shimmer-areas .stop-shimmer {
  stop-color: rgba(255, 255, 255, 0.15);
}
.bx--cc--skeleton-lines rect.chart-skeleton-backdrop {
  fill: #ffffff;
}
.bx--cc--skeleton-lines .shimmer-effect-lines {
  stroke-width: 1px;
  stroke: url(#shimmer-lines);
}
.bx--cc--skeleton-lines .shimmer-effect-sparkline {
  stroke-width: 0px;
}
.bx--cc--skeleton-lines .empty-state-lines {
  stroke-width: 1px;
  stroke: #e0e0e0;
}
.bx--cc--skeleton-lines #shimmer-lines .stop-bg-shimmer {
  stop-color: #e0e0e0;
}
.bx--cc--skeleton-lines #shimmer-lines .stop-shimmer {
  stop-color: #ffffff;
}
.bx--cc--zero-line line.domain {
  stroke: #8d8d8d;
}
.bx--cc--chart-svg svg.layout-child {
  overflow: visible;
}
g.bx--cc--legend {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
g.bx--cc--legend g.legend-item rect.checkbox {
  stroke-width: 1px;
  stroke-opacity: 1;
}
g.bx--cc--legend g.legend-item rect.checkbox:not(.active) {
  stroke: #525252;
  fill: #f4f4f4;
}
g.bx--cc--legend g.legend-item rect.checkbox:not(.active) ~ g.check {
  display: none;
}
g.bx--cc--legend g.legend-item rect.hover-stroke {
  fill: none;
  stroke: #0f62fe;
  stroke-width: 2;
}
g.bx--cc--legend g.legend-item g.check > svg path {
  fill: #f4f4f4;
  stroke: #f4f4f4;
}
g.bx--cc--legend g.legend-item text {
  font-size: 12px;
  fill: #525252;
}
g.bx--cc--legend.clickable g.legend-item:hover {
  cursor: pointer;
}
.bx--cc--title text.title {
  fill: #161616;
  font-size: 16px;
  font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
  font-weight: 600;
}
.bx--cc--meter-title text.meter-title,
.bx--cc--meter-title text.percent-value {
  fill: #161616;
}
.bx--cc--meter-title g.status-indicator.status--danger circle.status {
  fill: #da1e28;
}
.bx--cc--meter-title g.status-indicator.status--warning circle.status {
  fill: #f1c21b;
}
.bx--cc--meter-title g.status-indicator.status--warning path.innerFill {
  fill: #000000;
}
.bx--cc--meter-title g.status-indicator.status--success circle.status {
  fill: #24a148;
}
.bx--cc--meter-title g.status-indicator path.innerFill {
  fill: #ffffff;
}
g.bx--cc--toolbar {
  transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);
}
g.bx--cc--toolbar .toolbar-container .toolbar-button {
  fill: transparent;
  cursor: pointer;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button:hover .toolbar-button-background {
  fill: #e5e5e5;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button:hover .toolbar-button-background--disabled {
  fill: transparent;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button--focusable:focus .toolbar-button-background {
  stroke: #525252;
  stroke-width: 2;
  stroke-dasharray: 2;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon {
  pointer-events: visible;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon circle,
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon rect,
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon path,
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon polygon {
  fill: #525252;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon:hover {
  cursor: pointer;
  pointer-events: visible;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon--disabled {
  pointer-events: auto;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon--disabled circle,
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon--disabled rect,
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon--disabled path,
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon--disabled polygon {
  fill: #8d8d8d;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button-icon--disabled:hover {
  cursor: auto;
  pointer-events: auto;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button--hovered {
  fill: #e5e5e5;
}
g.bx--cc--toolbar .toolbar-container .toolbar-button--disabled {
  cursor: auto;
}
.bx--overflow-menu__trigger {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: inline-block;
  background: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  width: 100%;
}
.bx--overflow-menu__trigger > *, .bx--overflow-menu__trigger > *:before, .bx--overflow-menu__trigger > *:after {
  box-sizing: inherit;
}
.bx--overflow-menu__trigger::-moz-focus-inner {
  border: 0;
}
.bx--overflow-menu,
.bx--overflow-menu__trigger {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  outline: 2px solid transparent;
  outline-offset: -2px;
  position: relative;
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: outline 110ms cubic-bezier(0, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu > *, .bx--overflow-menu > *:before, .bx--overflow-menu > *:after,
.bx--overflow-menu__trigger > *,
.bx--overflow-menu__trigger > *:before,
.bx--overflow-menu__trigger > *:after {
  box-sizing: inherit;
}
.bx--overflow-menu:focus,
.bx--overflow-menu__trigger:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--overflow-menu:hover,
.bx--overflow-menu__trigger:hover {
  background-color: #e5e5e5;
}
.bx--overflow-menu__trigger.bx--tooltip--a11y.bx--tooltip__trigger:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--overflow-menu__trigger.bx--tooltip--a11y.bx--tooltip__trigger:focus svg {
  outline: none;
}
.bx--overflow-menu.bx--overflow-menu--open,
.bx--overflow-menu.bx--overflow-menu--open .bx--overflow-menu__trigger {
  background-color: #ffffff;
  transition: none;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.3);
}
.bx--overflow-menu__icon {
  height: 1rem;
  width: 1rem;
  fill: #161616;
}
.bx--overflow-menu-options {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.3);
  display: none;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
  z-index: 10000;
  background-color: #ffffff;
  width: 10rem;
  list-style: none;
  top: 32px;
  left: 0;
}
.bx--overflow-menu-options > *, .bx--overflow-menu-options > *:before, .bx--overflow-menu-options > *:after {
  box-sizing: inherit;
}
.bx--overflow-menu-options::after {
  content: "";
  position: absolute;
  display: block;
  background-color: #ffffff;
  transition: background-color 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu-options[data-floating-menu-direction=bottom]::after {
  top: -0.1875rem;
  left: 0;
  width: 2rem;
  height: 0.1875rem;
}
.bx--overflow-menu-options[data-floating-menu-direction=top]::after {
  bottom: -0.375rem;
  left: 0;
  width: 2rem;
  height: 0.375rem;
}
.bx--overflow-menu-options[data-floating-menu-direction=left]::after {
  right: -0.375rem;
  top: 0;
  height: 2rem;
  width: 0.375rem;
}
.bx--overflow-menu-options[data-floating-menu-direction=right]::after {
  top: 0;
  left: -0.375rem;
  height: 2rem;
  width: 0.375rem;
}
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=top]::after,
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=bottom]::after {
  left: auto;
  right: 0;
}
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=left]::after,
.bx--overflow-menu--flip.bx--overflow-menu-options[data-floating-menu-direction=right]::after {
  top: auto;
  bottom: 0;
}
.bx--overflow-menu-options--open {
  display: flex;
}
.bx--overflow-menu-options__option {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
  display: flex;
  background-color: transparent;
  align-items: center;
  width: 100%;
  height: 2.5rem;
  padding: 0;
  transition: background-color 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu-options__option > *, .bx--overflow-menu-options__option > *:before, .bx--overflow-menu-options__option > *:after {
  box-sizing: inherit;
}
.bx--overflow-menu--divider {
  border-top: 1px solid #e0e0e0;
}
a.bx--overflow-menu-options__btn::before {
  content: "";
  height: 100%;
  vertical-align: middle;
  display: inline-block;
}
.bx--overflow-menu-options__btn {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  outline: 2px solid transparent;
  outline-offset: -2px;
  font-weight: 400;
  width: 100%;
  height: 100%;
  border: none;
  display: inline-flex;
  align-items: center;
  background-color: transparent;
  text-align: left;
  padding: 0 1rem;
  cursor: pointer;
  color: #525252;
  max-width: 11.25rem;
  transition: outline 110ms cubic-bezier(0, 0, 0.38, 0.9), background-color 110ms cubic-bezier(0, 0, 0.38, 0.9), color 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.bx--overflow-menu-options__btn:hover {
  color: #161616;
}
.bx--overflow-menu-options__btn:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.bx--overflow-menu-options__btn::-moz-focus-inner {
  border: none;
}
.bx--overflow-menu-options__btn svg {
  fill: #525252;
}
.bx--overflow-menu-options__btn:hover svg {
  fill: #161616;
}
.bx--overflow-menu-options__option-content {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.bx--overflow-menu-options__option:hover {
  background-color: #e5e5e5;
}
.bx--overflow-menu-options__option--danger {
  border-top: 1px solid #e0e0e0;
}
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:hover,
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:focus {
  color: #ffffff;
  background-color: #da1e28;
}
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:hover svg,
.bx--overflow-menu-options__option--danger .bx--overflow-menu-options__btn:focus svg {
  fill: #ffffff;
}
.bx--overflow-menu-options__option--disabled:hover {
  background-color: #ffffff;
  cursor: not-allowed;
}
.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn {
  color: #c6c6c6;
  pointer-events: none;
}
.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:hover, .bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:active, .bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn:focus {
  outline: 2px solid transparent;
  outline-offset: -2px;
  background-color: #ffffff;
}
.bx--overflow-menu-options__option--disabled .bx--overflow-menu-options__btn svg {
  fill: #c6c6c6;
}
.bx--overflow-menu--flip {
  left: -140px;
}
.bx--overflow-menu--flip:before {
  left: 145px;
}
.bx--cc--tooltip {
  background-color: #f4f4f4;
  pointer-events: none;
  transition: opacity 0.1s;
  transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);
  display: inline;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.2);
  position: absolute;
  word-wrap: break-word;
  z-index: 1059;
  font-family: 'IBM Plex Sans Condensed', 'Helvetica Neue', Arial, sans-serif;
}
.bx--cc--tooltip.hidden {
  opacity: 0;
  transition: opacity 0.1s;
  transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);
}
.bx--cc--tooltip .content-box {
  color: #161616;
}
.bx--cc--tooltip .content-box .title-tooltip {
  width: auto;
  padding: 4px;
  min-width: 20px;
  max-width: 270px;
}
.bx--cc--tooltip .content-box .title-tooltip p {
  margin: 2px;
  font-size: 12px;
}
.bx--cc--tooltip .content-box .datapoint-tooltip {
  display: flex;
  padding: 4px;
  flex-flow: row nowrap;
  width: auto;
  min-width: 20px;
  justify-content: flex-start;
  align-items: center;
}
.bx--cc--tooltip .content-box .datapoint-tooltip p {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 16px;
  font-size: 12px;
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 0;
}
.bx--cc--tooltip .content-box .datapoint-tooltip p.label {
  flex: 1;
  margin-right: 8px;
}
.bx--cc--tooltip .content-box .datapoint-tooltip p.value {
  width: auto;
}
.bx--cc--tooltip .content-box .datapoint-tooltip.bold {
  font-weight: 600;
}
.bx--cc--tooltip .content-box ul.multi-tooltip {
  margin: 0;
  padding: 0;
}
.bx--cc--tooltip .content-box ul.multi-tooltip li {
  list-style: none;
  position: relative;
}
.bx--cc--tooltip .content-box ul.multi-tooltip li:not(:last-child) {
  border-bottom: 1px solid #e0e0e0;
}
.bx--cc--tooltip .tooltip-color {
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
}
.bx--cc--tooltip .tooltip-color + p.label {
  margin-left: 4px;
}
.bx--cc--threshold line.threshold-line {
  stroke: #fa4d56;
  stroke-width: 1;
  stroke-dasharray: 4;
  cursor: pointer;
  pointer-events: none;
}
.bx--cc--threshold line.threshold-line.active {
  stroke-width: 2;
}
.bx--cc--threshold rect.threshold-hoverable-area {
  height: 20px;
  transform: translate(0, -10px);
  cursor: pointer;
  fill: transparent;
}
.bx--cc--threshold rect.threshold-hoverable-area.rotate {
  transform: rotate(90deg) translate(0, -10px);
}
.bx--cc--threshold--label {
  background-color: #fa4d56;
  pointer-events: none;
  transition: opacity 0.1s;
  transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);
  display: inline;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.2);
  position: absolute;
  word-wrap: break-word;
  z-index: 1059;
  font-family: 'IBM Plex Sans Condensed', 'Helvetica Neue', Arial, sans-serif;
  color: #161616;
  line-height: 16px;
  font-size: 12px;
  padding: 4px;
  min-width: 20px;
}
.bx--cc--threshold--label.hidden {
  opacity: 0;
  transition: opacity 0.1s;
  transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);
}
g.bx--cc--zoom-bar rect.zoom-bg {
  fill: #f4f4f4;
  stroke: #ffffff;
}
g.bx--cc--zoom-bar rect.zoom-bg-skeleton {
  stroke: url(#shimmer-lines);
}
g.bx--cc--zoom-bar rect.zoom-slider-bg {
  fill: #ffffff;
}
g.bx--cc--zoom-bar rect.zoom-slider-bg-skeleton {
  stroke: url(#shimmer-lines);
}
g.bx--cc--zoom-bar rect.zoom-slider-selected-area {
  fill: #525252;
}
g.bx--cc--zoom-bar path.zoom-bg-baseline {
  stroke: #8d8d8d;
  stroke-width: 2;
}
g.bx--cc--zoom-bar path.zoom-bg-baseline-skeleton {
  stroke: url(#shimmer-lines);
}
g.bx--cc--zoom-bar path.zoom-graph-area {
  fill: #e0e0e0;
  stroke: #8d8d8d;
  stroke-width: 1;
}
g.bx--cc--zoom-bar path.zoom-graph-area-unselected {
  fill: #ffffff;
  stroke: none;
}
g.bx--cc--zoom-bar g.zoom-bar-brush rect.handle {
  fill: #525252;
}
g.bx--cc--zoom-bar g.zoom-bar-brush rect.handle-bar {
  fill: #f4f4f4;
}
g.bx--cc--zoom-bar g.zoom-bar-brush rect.selection {
  fill: none;
  stroke: none;
}
.bx--cc--area path.area,
.bx--cc--area-stacked path.area {
  pointer-events: none;
}
g.bx--cc--bubble circle.dot.hovered {
  fill-opacity: 1;
  transition: all 0.1s;
  transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);
}
g.bx--cc--bubble circle.dot.unfilled {
  fill: #ffffff;
}
g.bx--cc--bubble g.lines path.line {
  mix-blend-mode: multiply;
}
.bx--cc--line path.line {
  pointer-events: none;
  fill: none;
  stroke-width: 1.5;
}
.bx--cc--line path.line.sparkline-loading {
  -webkit-animation: shimmer 2.5s infinite linear;
          animation: shimmer 2.5s infinite linear;
}
@-webkit-keyframes shimmer {
  0% {
    stroke: #e0e0e0;
  }
  20% {
    stroke: #ffffff;
    opacity: 0.5;
  }
  100% {
    stroke: #e0e0e0;
  }
}
@keyframes shimmer {
  0% {
    stroke: #e0e0e0;
  }
  20% {
    stroke: #ffffff;
    opacity: 0.5;
  }
  100% {
    stroke: #e0e0e0;
  }
}
g.bx--cc--scatter circle.dot.hovered {
  fill-opacity: 1;
  transition: all 0.1s;
  transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);
}
g.bx--cc--scatter circle.dot.unfilled {
  fill: #ffffff;
  stroke-width: 1.5;
}
g.bx--cc--scatter circle.dot.threshold-anomaly {
  stroke-width: 3;
}
g.bx--cc--scatter g.lines path.line {
  mix-blend-mode: multiply;
}
.bx--cc--meter rect.container {
  fill: #ffffff;
}
.bx--cc--meter rect.value.status--danger {
  fill: #da1e28;
}
.bx--cc--meter rect.value.status--warning {
  fill: #f1c21b;
  stroke-width: 1px;
  stroke: #b28600;
}
.bx--cc--meter rect.value.status--success {
  fill: #24a148;
}
.bx--cc--meter line.peak {
  stroke: #161616;
  stroke-width: 2px;
}
g.bx--cc--scatter-stacked circle.dot.unfilled {
  fill: #ffffff;
  stroke-width: 1.5;
}
g.bx--cc--scatter-stacked circle.dot.threshold-anomaly {
  stroke-width: 3;
}
.bx--cc--radar .blobs path {
  stroke-width: 1.5px;
}
.bx--cc--radar .y-axes path,
.bx--cc--radar .x-axes line {
  stroke-width: 1px;
  stroke: #e0e0e0;
}
.bx--cc--radar .x-axes line.hovered {
  stroke: #000000;
}
g.bx--cc--treemap text {
  pointer-events: none;
}
.bx--cc--gauge path.arc-background {
  fill: #ffffff;
}
.bx--cc--gauge .gauge-delta-arrow.status--danger {
  fill: #da1e28;
}
.bx--cc--gauge .gauge-delta-arrow.status--warning {
  fill: #f1c21b;
}
.bx--cc--gauge .gauge-delta-arrow.status--success {
  fill: #24a148;
}
.bx--cc--lollipop line.line {
  pointer-events: none;
}
.bx--cc--lollipop circle.dot {
  stroke-width: 1.5;
}
svg.bx--cc--chart-svg {
  font-family: 'IBM Plex Sans Condensed', 'Helvetica Neue', Arial, sans-serif;
}
svg.bx--cc--chart-svg text {
  font-size: 12px;
  font-weight: 400;
  fill: #525252;
}
svg.bx--cc--chart-svg g.gauge-numbers text.gauge-value-number {
  font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
  font-weight: 300;
}
svg.bx--cc--chart-svg text.meter-title,
svg.bx--cc--chart-svg text.percent-value {
  font-size: 16px;
  font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
}
svg.bx--cc--chart-svg text.meter-title {
  font-weight: 600;
}
.bx--chart-holder {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #f4f4f4;
}
.bx--chart-holder .DONT_STYLE_ME_css_styles_verifier {
  overflow: hidden;
  opacity: 0;
}
svg.bx--cc--chart-svg {
  overflow: visible;
}
.bx--header__nav {
  display: block;
}
@keyframes hide-feedback {
  0% {
    visibility: inherit;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes show-feedback {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  100% {
    visibility: inherit;
    opacity: 1;
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg);
  }
}
/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240;
  }
  100% {
    stroke-dashoffset: 40;
  }
}
@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40;
  }
  100% {
    stroke-dashoffset: 240;
  }
}
@keyframes hide-feedback {
  0% {
    visibility: inherit;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes show-feedback {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  100% {
    visibility: inherit;
    opacity: 1;
  }
}
/* stylelint-disable */
.flatpickr-calendar {
  background: transparent;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  text-align: center;
  padding: 0;
  -webkit-animation: none;
          animation: none;
  direction: ltr;
  border: 0;
  font-size: 14px;
  line-height: 24px;
  border-radius: 5px;
  position: absolute;
  width: 315px;
  box-sizing: border-box;
  touch-action: manipulation;
  background: #fff;
  box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);
}
.flatpickr-calendar.open,
.flatpickr-calendar.inline {
  opacity: 1;
  visibility: inherit;
  overflow: visible;
  max-height: 640px;
}
.flatpickr-calendar.open {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 18rem;
  height: 21rem;
  padding: 0.25rem 0.25rem 0.5rem 0.25rem;
  border: none;
  margin-top: -2px;
  overflow: hidden;
  background-color: #ffffff;
}
.flatpickr-calendar.open:focus {
  outline: 1px solid #0f62fe;
}
.flatpickr-calendar.animate.open {
  -webkit-animation: fpFadeInDown 110ms cubic-bezier(0, 0, 0.38, 0.9);
          animation: fpFadeInDown 110ms cubic-bezier(0, 0, 0.38, 0.9);
}
.flatpickr-calendar.inline {
  display: block;
  position: relative;
  top: 2px;
}
.flatpickr-calendar.static {
  position: absolute;
  top: calc(100% + 2px);
}
.flatpickr-calendar.static.open {
  z-index: 999;
  display: block;
}
.flatpickr-calendar.hasWeeks {
  width: auto;
}
.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.flatpickr-calendar .hasWeeks .dayContainer {
  border-left: 0;
}
.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
  height: 40px;
  border-top: 1px solid #e6e6e6;
}
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
  height: auto;
}
.flatpickr-calendar:focus {
  outline: 0;
}
.flatpickr-months {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.flatpickr-month {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  height: 2.5rem;
  display: flex;
  align-items: center;
  margin-bottom: 0.25rem;
  background-color: transparent;
  color: #161616;
  line-height: 1;
  text-align: center;
}
.flatpickr-prev-month,
.flatpickr-next-month {
  text-decoration: none;
  cursor: pointer;
  line-height: 16px;
  height: 28px;
  padding: 10px calc(3.57% - 1.5px);
  z-index: 3;
}
.flatpickr-prev-month,
.flatpickr-next-month {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.5rem;
  width: 2.5rem;
  padding: 0;
  fill: #161616;
  transition: background-color 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
  background-color: #e5e5e5;
}
.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg {
  fill: #161616;
}
.flatpickr-next-month.disabled svg,
.flatpickr-prev-month.disabled svg {
  fill: #161616;
  cursor: not-allowed;
}
.flatpickr-next-month.disabled:hover svg,
.flatpickr-prev-month.disabled:hover svg {
  fill: #161616;
}
.flatpickr-current-month {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.75rem;
  text-align: center;
}
.flatpickr-current-month .cur-month {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.flatpickr-current-month .cur-month:hover {
  background-color: #e5e5e5;
}
.numInputWrapper {
  position: relative;
  width: 3.75rem;
}
.numInputWrapper:hover {
  background-color: #e5e5e5;
}
.numInputWrapper:hover .arrowUp,
.numInputWrapper:hover .arrowDown {
  opacity: 1;
}
.numInputWrapper:hover .numInput[disabled] ~ .arrowUp,
.numInputWrapper:hover .numInput[disabled] ~ .arrowDown {
  opacity: 0;
}
.numInputWrapper .numInput {
  display: inline-block;
  width: 100%;
  padding: 0.25rem;
  margin: 0;
  border: none;
  color: #161616;
  font-size: inherit;
  font-family: inherit;
  font-weight: 600;
  background-color: #ffffff;
  cursor: default;
  -moz-appearance: textfield;
  /* Firefox */
}
.numInputWrapper .numInput:focus {
  outline: 1px solid #0f62fe;
}
.numInputWrapper .numInput[disabled], .numInputWrapper .numInput[disabled]:hover {
  color: #c6c6c6;
  background-color: #ffffff;
  pointer-events: none;
}
.numInputWrapper .numInput::-webkit-outer-spin-button, .numInputWrapper .numInput::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
  /* <-- Apparently some margin are still there even though it's hidden */
}
.numInput[disabled] ~ .arrowUp::after {
  border-bottom-color: #c6c6c6;
}
.numInput[disabled] ~ .arrowDown::after {
  border-top-color: #c6c6c6;
}
.numInputWrapper .arrowUp,
.numInputWrapper .arrowDown {
  position: absolute;
  left: 2.6rem;
  width: 0.75rem;
  height: 50%;
  border: none;
  padding: 0 0.25rem 0 0.125rem;
  line-height: 50%;
  opacity: 0;
  cursor: pointer;
}
.numInputWrapper .arrowUp::after,
.numInputWrapper .arrowDown::after {
  position: absolute;
  top: 33%;
  display: block;
  content: "";
  border-left: 0.25rem solid transparent;
  border-right: 0.25rem solid transparent;
}
.numInputWrapper .arrowUp:hover::after,
.numInputWrapper .arrowDown:hover::after {
  border-bottom-color: #0f62fe;
  border-top-color: #0f62fe;
}
.numInputWrapper .arrowUp {
  top: 0.25rem;
  border-bottom: 0;
}
.numInputWrapper .arrowUp::after {
  border-bottom: 0.25rem solid #161616;
}
.numInputWrapper .arrowDown {
  top: 0.6875rem;
}
.numInputWrapper .arrowDown::after {
  border-top: 0.25rem solid #161616;
}
.flatpickr-weekdays {
  display: flex;
  align-items: center;
  height: 2.5rem;
}
.flatpickr-weekdaycontainer {
  display: flex;
  width: 100%;
}
.flatpickr-weekday {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  cursor: default;
  color: #161616;
  flex: 1;
}
.flatpickr-days:focus {
  outline: 0;
}
.dayContainer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  height: 15.375rem;
  padding: 0;
  outline: 0;
}
.flatpickr-calendar.animate .dayContainer.slideLeft {
  -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.animate .dayContainer.slideLeft,
.flatpickr-calendar.animate .dayContainer.slideLeftNew {
  transform: translate3d(-100%, 0px, 0px);
}
.flatpickr-calendar.animate .dayContainer.slideLeftNew {
  -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.animate .dayContainer.slideRight {
  -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
  transform: translate3d(100%, 0px, 0px);
}
.flatpickr-calendar.animate .dayContainer.slideRightNew {
  -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
          animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-day {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.29;
  letter-spacing: 0.16px;
  height: 2.5rem;
  width: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #161616;
  cursor: pointer;
  transition: all 70ms cubic-bezier(0.2, 0, 0.38, 0.9);
}
.flatpickr-day:hover {
  background: #e5e5e5;
}
.flatpickr-day:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  outline-color: #0f62fe;
}
.nextMonthDay,
.prevMonthDay {
  color: #6f6f6f;
}
.flatpickr-day.today {
  position: relative;
  color: #0f62fe;
  font-weight: 600;
}
.flatpickr-day.today::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0.4375rem;
  left: 50%;
  transform: translateX(-50%);
  height: 0.25rem;
  width: 0.25rem;
  background-color: #0f62fe;
}
.flatpickr-day.today.no-border {
  border: none;
}
.flatpickr-day.today.selected {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.flatpickr-day.today.selected::after {
  display: none;
}
.flatpickr-day.inRange {
  background-color: #edf5ff;
  color: #161616;
}
.flatpickr-day.selected {
  color: #ffffff;
  background-color: #0f62fe;
}
.flatpickr-day.selected:focus {
  outline: 0.0625rem solid #f4f4f4;
  outline-offset: -0.1875rem;
}
.flatpickr-day.startRange.selected {
  box-shadow: none;
  z-index: 2;
}
.flatpickr-day.startRange.inRange:not(.selected),
.flatpickr-day.endRange.inRange {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  background: #ffffff;
  z-index: 3;
}
.flatpickr-day.endRange:hover {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
  background: #ffffff;
  color: #161616;
}
.flatpickr-day.endRange.inRange.selected {
  color: #ffffff;
  background: #0f62fe;
}
.flatpickr-day.flatpickr-disabled {
  cursor: not-allowed;
  color: #c6c6c6;
}
.flatpickr-day.flatpickr-disabled:hover {
  background-color: transparent;
}
.flatpickr-input[readonly] {
  cursor: pointer;
}
@keyframes fpFadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fpSlideLeft {
  from {
    transform: translate3d(0px, 0px, 0px);
  }
  to {
    transform: translate3d(-100%, 0px, 0px);
  }
}
@keyframes fpSlideLeftNew {
  from {
    transform: translate3d(100%, 0px, 0px);
  }
  to {
    transform: translate3d(0px, 0px, 0px);
  }
}
@keyframes fpSlideRight {
  from {
    transform: translate3d(0, 0, 0px);
  }
  to {
    transform: translate3d(100%, 0px, 0px);
  }
}
@keyframes fpSlideRightNew {
  from {
    transform: translate3d(-100%, 0, 0px);
  }
  to {
    transform: translate3d(0, 0, 0px);
  }
}
@keyframes fpFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fpFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg);
  }
}
/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240;
  }
  100% {
    stroke-dashoffset: 40;
  }
}
@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40;
  }
  100% {
    stroke-dashoffset: 240;
  }
}
@keyframes collapse-accordion {
  0% {
    height: 100%;
    visibility: inherit;
    opacity: 1;
  }
  100% {
    height: 0;
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes expand-accordion {
  0% {
    height: 0;
    visibility: hidden;
    opacity: 0;
  }
  100% {
    height: 100%;
    visibility: inherit;
    opacity: 1;
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p1 {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-end-p2 {
  100% {
    transform: rotate(-360deg);
  }
}
/* Stroke animations */
@keyframes init-stroke {
  0% {
    stroke-dashoffset: 240;
  }
  100% {
    stroke-dashoffset: 40;
  }
}
@keyframes stroke-end {
  0% {
    stroke-dashoffset: 40;
  }
  100% {
    stroke-dashoffset: 240;
  }
}
@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
.glow--card--toolbar-date-range-wrapper {
  background: transparent;
  border: none;
  display: flex;
  outline: 2px solid transparent;
}
.glow--card--toolbar-timerange-label {
  white-space: nowrap;
  min-height: 3rem;
  min-width: 3rem;
  padding: 1rem 0.5rem;
  font-size: 0.875rem;
  font-weight: normal;
}
.glow--card--toolbar-date-range-wrapper > .glow--card--toolbar-date-range-action {
  min-height: 3rem;
  min-width: 3rem;
  cursor: pointer;
}
.glow--card--toolbar-date-range-wrapper > .glow--card--toolbar-date-range-action:active, .glow--card--toolbar-date-range-wrapper > .glow--card--toolbar-date-range-action:focus {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.glow--card--toolbar-date-range-wrapper > .glow--card--toolbar-date-range-action:hover {
  background: #e5e5e5;
}
.glow--card--overflow {
  width: auto;
}
.glow--card--overflow.bx--overflow-menu-options[data-floating-menu-direction=bottom]::after {
  width: 3rem;
}
.glow--card--overflow-menuitem-active:not(:hover) {
  background-color: #c6c6c6;
}
.glow--card--toolbar {
  margin: 0;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.glow--card--toolbar .glow--date-time-picker__field {
  font-size: 0.875rem;
  font-weight: normal;
}
.glow--card--toolbar-action {
  color: #161616;
  border-width: 2px;
  display: flex;
  height: 2rem;
  justify-content: center;
  min-height: 2rem;
  min-width: 2rem;
  width: 2rem;
}
.glow--card--toolbar-action:hover {
  background-color: #e5e5e5;
  color: #161616;
}
.glow--card--toolbar-action:focus {
  border-color: transparent;
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.glow--card--toolbar-action svg {
  fill: #525252;
}
.glow--card--toolbar-action svg.bx--overflow-menu__icon {
  height: auto;
  width: auto;
}
.glow--card--toolbar-svg-wrapper {
  align-items: center;
  background: transparent;
  border: none;
  display: flex;
  cursor: pointer;
  height: 3rem;
  width: 3rem;
  outline: 2px solid transparent;
  margin: 0;
}
.glow--card--toolbar-svg-wrapper :hover {
  background: #e5e5e5;
}
.glow--card--toolbar-svg-wrapper:active {
  outline: 2px solid #0f62fe;
  outline-offset: -2px;
}
.glow--data-state-container {
  padding: 0 var(--container-padding);
  width: inherit;
}
.glow--data-state-dashes {
  color: #e0e0e0;
  font-size: 4rem;
  line-height: 0.67;
}
.glow--data-state-grid {
  margin-top: 1rem;
  display: grid;
  align-items: center;
  grid-template-columns: auto auto 1fr;
  grid-column-gap: 0;
  grid-template-areas: "app-icon  app-label             .        " "    .     app-description app-description";
}
.glow--data-state-grid > .bx--tooltip__label {
  overflow: hidden;
}
.glow--data-state-grid > .bx--tooltip__label:focus {
  outline: none;
}
.glow--data-state-grid > *:first-child {
  grid-area: app-icon;
  cursor: pointer;
  margin-right: 0.5rem;
}
.glow--data-state-grid > *:nth-child(2) {
  grid-area: app-label;
}
.glow--data-state-grid > *:nth-child(2) .bx--tooltip__label {
  display: grid;
}
.glow--data-state-grid > *:nth-child(3) {
  grid-area: app-description;
}
.glow--data-state-grid__label {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
  display: block;
  overflow-x: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.glow--data-state-grid__description {
  font-size: 0.75rem;
  line-height: 1.34;
  letter-spacing: 0.32px;
  color: #525252;
  overflow: hidden;
  max-height: calc(1rem * (2 + 0.5));
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* autoprefixer: ignore next */
  -webkit-box-orient: vertical;
}
.glow--data-state-tooltip:focus {
  outline: none;
}
.glow--data-state-tooltip > * {
  margin-bottom: 1rem;
}
.glow--data-state-tooltip .glow--data-state-tooltip__label {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.29;
  letter-spacing: 0.16px;
}
.glow--data-state-default-error-icon {
  fill: #da1e28;
}
.glow--data-state-default-warning-icon {
  fill: #f1c21b;
}
html[dir=rtl] .glow--data-state-grid > *:first-child {
  margin-right: 0;
  margin-left: 0.5rem;
}
.glow--card--wrapper {
  background: white;
  box-sizing: border-box;
  outline: solid 0.125rem transparent;
  height: var(--card-default-height);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.glow--card--wrapper__selected {
  outline: solid 0.125rem #393939;
  box-sizing: border-box;
}
.glow--card--resizing {
  border: 0.125rem solid #393939;
  box-sizing: border-box;
}
.glow--card.react-grid-item > .react-resizable-handle {
  z-index: 2;
}
.glow--card--title {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  min-width: 0;
  margin-top: 0.5rem;
  padding-right: 1rem;
  width: 100%;
}
html[dir=rtl] .glow--card--title {
  padding-left: 1rem;
  padding-right: unset;
}
.glow--card--title + *:not(.glow--card--toolbar) {
  margin-left: 1rem;
}
.glow--card--header--tooltip {
  flex-basis: 2rem;
  margin-top: 0.25rem;
}
.glow--card--header--tooltip .bx--tooltip__trigger {
  margin-right: 0.5rem;
}
.glow--card--title--text,
.glow--card--subtitle--text {
  overflow: hidden;
  max-height: calc(1.375em * (1 + 0.5));
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  /* autoprefixer: ignore next */
  -webkit-box-orient: vertical;
  word-break: break-all;
  min-width: 3rem;
}
.glow--card--title--text--wrapped {
  -webkit-line-clamp: 2;
  max-height: calc(1.375em * 2);
  word-break: normal;
}
.glow--card--title--text {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.375;
  letter-spacing: 0;
  color: #161616;
  max-width: calc(100% - 2rem);
}
.glow--card--subtitle--text {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.32px;
  color: #525252;
  font-weight: normal;
  width: 100%;
  max-height: 1.34em;
  max-width: calc(100% - 2rem);
}
.glow--card--subtitle--text--padded {
  margin-right: 2rem;
}
html[dir=rtl] .glow--card--subtitle--text--padded {
  margin-left: 2rem;
  margin-right: unset;
}
.glow--card--header {
  flex: 0 0 3rem;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  font-weight: bold;
  padding: 0 0 0 1rem;
}
html[dir=rtl] .glow--card--header {
  padding: 0 1rem 0 0;
}
.glow--card--content {
  flex: 1;
  padding: 0 1rem 1rem;
  position: relative;
  height: var(--card-content-height);
  overflow-x: visible;
  overflow-y: visible;
}
.glow--card--content--expanded {
  overflow-y: auto;
}
.glow--card--skeleton-wrapper {
  padding: var(--card-content-padding);
  width: 80%;
}
.glow--card--footer--wrapper {
  align-items: center;
  border-top: 1px solid #e0e0e0;
  display: flex;
  height: 2.5rem;
  overflow: hidden;
  padding: 0 1rem;
}
.glow--card--empty-message-wrapper {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 var(--card-content-padding);
  text-align: center;
  line-height: 1.3;
}
.glow--card .bx--chart-holder {
  background-color: #ffffff;
}
.bx--modal .glow--card--overflow {
  z-index: 10000;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3N0eWxlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL21hcGJveC1nbC9kaXN0L21hcGJveC1nbC5jc3MiLCIuLi9ub2RlX21vZHVsZXMvQG1hcGJveC9tYXBib3gtZ2wtZ2VvY29kZXIvbGliL21hcGJveC1nbC1nZW9jb2Rlci5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvX2Nzcy0tcmVzZXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL3R5cGUvX3Jlc2V0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy90eXBlL19mb250LWZhbWlseS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaWNvbnMvbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy90eXBlL19zdHlsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy9faGVscGVyLW1peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvZ2xvYmFscy9zY3NzL19oZWxwZXItY2xhc3Nlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvdHlwZS9mb250LWZhY2UvX21vbm8uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL3R5cGUvZm9udC1mYWNlL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvdHlwZS9mb250LWZhY2UvX3NhbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy9fY3NzLS1oZWxwZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy90aGVtZXMvZ2VuZXJhdGVkL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy9fY3NzLS1ib2R5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9ncmlkL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2xheW91dC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9idXR0b24vX2J1dHRvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9idXR0b24vX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvZ2xvYmFscy9zY3NzL190aGVtZS10b2tlbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2xheW91dC9nZW5lcmF0ZWQvX3NwYWNpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvZ2xvYmFscy9zY3NzL19rZXlmcmFtZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvY29weS1idXR0b24vX2NvcHktYnV0dG9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvbG9hZGluZy9fa2V5ZnJhbWVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2xvYWRpbmcvX3ZhcnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvbG9hZGluZy9fbG9hZGluZy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9sb2FkaW5nL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy9fbW90aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2ZpbGUtdXBsb2FkZXIvX2ZpbGUtdXBsb2FkZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvY2hlY2tib3gvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2xpc3QtYm94L19saXN0LWJveC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvY29sb3JzL21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy90YWcvX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9jb21iby1ib3gvX2NvbWJvLWJveC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9yYWRpby1idXR0b24vX3JhZGlvLWJ1dHRvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy90b2dnbGUvX3RvZ2dsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9zZWFyY2gvX3NlYXJjaC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9zZWxlY3QvX3NlbGVjdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy90ZXh0LWlucHV0L190ZXh0LWlucHV0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3RleHQtYXJlYS9fdGV4dC1hcmVhLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL251bWJlci1pbnB1dC9fbnVtYmVyLWlucHV0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2xpbmsvX2xpbmsuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvbGlzdC9fbGlzdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLWFjdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLWNvcmUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvZGF0YS10YWJsZS9fbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2RhdGEtdGFibGUvX2RhdGEtdGFibGUtZXhwYW5kYWJsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLXNvcnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvZGF0YS10YWJsZS9fZGF0YS10YWJsZS1pbmxpbmUtZWRpdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLXNrZWxldG9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3N0cnVjdHVyZWQtbGlzdC9fc3RydWN0dXJlZC1saXN0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3N0cnVjdHVyZWQtbGlzdC9fbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2NvZGUtc25pcHBldC9fY29kZS1zbmlwcGV0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2NvZGUtc25pcHBldC9fbWl4aW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL292ZXJmbG93LW1lbnUvX292ZXJmbG93LW1lbnUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvY29udGVudC1zd2l0Y2hlci9fY29udGVudC1zd2l0Y2hlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9kYXRlLXBpY2tlci9fZmxhdHBpY2tyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2RhdGUtcGlja2VyL19kYXRlLXBpY2tlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9kcm9wZG93bi9fZHJvcGRvd24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvbW9kYWwvX21vZGFsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL211bHRpLXNlbGVjdC9fbXVsdGktc2VsZWN0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi9faW5saW5lLW5vdGlmaWNhdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9ub3RpZmljYXRpb24vX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9ub3RpZmljYXRpb24vX3RvYXN0LW5vdGlmaWNhdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy90b29sdGlwL190b29sdGlwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3RhYnMvX3RhYnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvdGFnL190YWcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9hY2NvcmRpb24vX2tleWZyYW1lcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9hY2NvcmRpb24vX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9wcm9ncmVzcy1pbmRpY2F0b3IvX3Byb2dyZXNzLWluZGljYXRvci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9icmVhZGNydW1iL19icmVhZGNydW1iLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3Rvb2xiYXIvX3Rvb2xiYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvdGltZS1waWNrZXIvX3RpbWUtcGlja2VyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3NsaWRlci9fc2xpZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3RpbGUvX3RpbGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvc2tlbGV0b24vX3NrZWxldG9uLXRleHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvc2tlbGV0b24vX3NrZWxldG9uLWljb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvc2tlbGV0b24vX3NrZWxldG9uLXBsYWNlaG9sZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL2lubGluZS1sb2FkaW5nL19rZXlmcmFtZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvaW5saW5lLWxvYWRpbmcvX2lubGluZS1sb2FkaW5nLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3BhZ2luYXRpb24tbmF2L19wYWdpbmF0aW9uLW5hdi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy9wYWdpbmF0aW9uL191bnN0YWJsZV9wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3VpLXNoZWxsL19oZWFkZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvdWktc2hlbGwvX3RoZW1lLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3VpLXNoZWxsL19oZWFkZXItcGFuZWwuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL21vdGlvbi9tb3Rpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvdWktc2hlbGwvX3Byb2R1Y3Qtc3dpdGNoZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9jYXJib24tY29tcG9uZW50cy9zY3NzL2NvbXBvbmVudHMvdWktc2hlbGwvX3N3aXRjaGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3VpLXNoZWxsL19zaWRlLW5hdi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2NhcmJvbi1jb21wb25lbnRzL3Njc3MvY29tcG9uZW50cy91aS1zaGVsbC9fbmF2aWdhdGlvbi1tZW51LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9jb21wb25lbnRzL3VpLXNoZWxsL19jb250ZW50LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL2NvbG9ycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL19heGlzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL2NvbXBvbmVudHMvX2NhbGxvdXRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL2NvbXBvbmVudHMvX2dyaWQtYnJ1c2guc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL19ydWxlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL19za2VsZXRvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL19za2VsZXRvbi1saW5lcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL196ZXJvLWxpbmUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvY29tcG9uZW50cy9fbGF5b3V0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL2NvbXBvbmVudHMvX2xlZ2VuZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL190aXRsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL19tZXRlci10aXRsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL190b29sYmFyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL3ZlbmRvci9jYXJib24tY29tcG9uZW50cy9zcmMvZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvbW90aW9uL21vdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy92ZW5kb3IvY2FyYm9uLWNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvb3ZlcmZsb3ctbWVudS9fb3ZlcmZsb3ctbWVudS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy92ZW5kb3IvY2FyYm9uLWNvbXBvbmVudHMvc3JjL2dsb2JhbHMvc2Nzcy9fY3NzLS1yZXNldC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy92ZW5kb3IvY2FyYm9uLWNvbXBvbmVudHMvc3JjL2dsb2JhbHMvc2Nzcy9faGVscGVyLW1peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy92ZW5kb3IvY2FyYm9uLWNvbXBvbmVudHMvc3JjL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL3R5cGUvX3N0eWxlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL3ZlbmRvci9AY2FyYm9uL21vdGlvbi9zY3NzL21vdGlvbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9jb21wb25lbnRzL190aHJlc2hvbGQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvY29tcG9uZW50cy9fem9vbS1iYXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvZ3JhcGhzL19hcmVhLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL2dyYXBocy9fYnViYmxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL2dyYXBocy9fbGluZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9ncmFwaHMvX3NjYXR0ZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvZ3JhcGhzL19tZXRlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9zdHlsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvZ3JhcGhzL19zY2F0dGVyLXN0YWNrZWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvZ3JhcGhzL19yYWRhci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9ncmFwaHMvX3RyZWVtYXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvZ3JhcGhzL19nYXVnZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BjYXJib24vY2hhcnRzL3N0eWxlcy9ncmFwaHMvX2xvbGxpcG9wLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGNhcmJvbi9jaGFydHMvc3R5bGVzL190eXBlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9sYXlvdXQvX2NvbnZlcnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AY2FyYm9uL2NoYXJ0cy9zdHlsZXMvX2NoYXJ0LWhvbGRlci5zY3NzIiwiLi4vYXNzZXRzL3Njc3MvY2FyYm9uLW92ZXJyaWRlLnNjc3MiLCIuLi9hc3NldHMvc2Nzcy9jYXJkL2NhcmQtcmFuZ2UtcGlja2VyLnNjc3MiLCIuLi9hc3NldHMvc2Nzcy9jYXJkL2NhcmQtdG9vbGJhci5zY3NzIiwiLi4vYXNzZXRzL3Njc3MvY2FyZC9kYXRhLXN0YXRlLXJlbmRlcmVyLnNjc3MiLCIuLi9hc3NldHMvc2Nzcy9jYXJkL21peGlucy5zY3NzIiwiLi4vYXNzZXRzL3Njc3MvY2FyZC9jYXJkLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQixjQUFjLHdEQUF3RCxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyx5Q0FBeUM7QUFBQyxpQkFBaUIsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEtBQUs7QUFBQyxrQ0FBa0MsVUFBVSxDQUFDLFdBQVc7QUFBQyxpQkFBaUIsdUJBQXVCO0FBQUMsa0dBQWtHLG1CQUFXLENBQVgsV0FBVyxDQUFDLHdCQUF3QixDQUFDLHFCQUFlLENBQWYsZ0JBQWdCO0FBQUMsdUVBQXVFLGNBQWM7QUFBQyxnSEFBZ0gsdUJBQWMsQ0FBZCxlQUFlO0FBQUMsNkhBQTZILHdCQUF3QjtBQUFDLHVIQUF1SCx1QkFBdUI7QUFBQyw2S0FBNkssaUJBQWlCO0FBQUMsd0dBQXdHLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLFNBQVM7QUFBQyx3QkFBd0IsS0FBSyxDQUFDLE1BQU07QUFBQyx5QkFBeUIsS0FBSyxDQUFDLE9BQU87QUFBQywyQkFBMkIsUUFBUSxDQUFDLE1BQU07QUFBQyw0QkFBNEIsT0FBTyxDQUFDLFFBQVE7QUFBQyxlQUFlLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0I7QUFBQyx1Q0FBdUMsb0JBQW9CLENBQUMsVUFBVTtBQUFDLHdDQUF3QyxvQkFBb0IsQ0FBQyxXQUFXO0FBQUMsMENBQTBDLG9CQUFvQixDQUFDLFVBQVU7QUFBQywyQ0FBMkMsb0JBQW9CLENBQUMsV0FBVztBQUFDLHFCQUFxQixpQkFBaUIsQ0FBQyxlQUFlO0FBQUMsaUNBQWlDLG1DQUFtQztBQUFDLGtDQUFrQyxpQ0FBaUMsK0JBQStCLENBQUM7QUFBQyw0QkFBNEIsVUFBVSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsNEJBQTRCLENBQUMsY0FBYztBQUFDLG1DQUFtQyx5QkFBeUI7QUFBQywwQ0FBMEMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsMkJBQTJCLENBQUMsdUJBQXVCO0FBQUMsa0NBQWtDLG9CQUFvQiw0QkFBNEIsQ0FBQyxtQ0FBbUMsK0JBQStCLENBQUM7QUFBQyxxRUFBcUUsOEJBQThCO0FBQUMsK0JBQStCLGtCQUFrQjtBQUFDLG1EQUFtRCxXQUFXO0FBQUMsMkNBQTJDLGdDQUFnQztBQUFDLGdEQUFnRCw4QkFBOEI7QUFBQyxzREFBc0QsZUFBZTtBQUFDLDhDQUE4Qyx5QkFBeUI7QUFBQyw2Q0FBNkMseUJBQXlCO0FBQUMsNkNBQTZDLHFCQUFxQjtBQUFDLGlFQUFpRSwrUUFBK1E7QUFBQyxnRUFBZ0UsaVhBQWlYO0FBQUMsa0NBQWtDLGlFQUFpRSwrUUFBK1EsQ0FBQyxnRUFBZ0UsaVhBQWlYLENBQUM7QUFBQywwQ0FBMEMsaUVBQWlFLCtRQUErUSxDQUFDLGdFQUFnRSxpWEFBaVgsQ0FBQztBQUFDLG1FQUFtRSwyY0FBMmM7QUFBQywrREFBK0Qsb2NBQW9jO0FBQUMsa0NBQWtDLG1FQUFtRSwyY0FBMmMsQ0FBQywrREFBK0Qsa2RBQWtkLENBQUM7QUFBQywwQ0FBMEMsbUVBQW1FLDJjQUEyYyxDQUFDLCtEQUErRCxrZEFBa2QsQ0FBQztBQUFDLGdFQUFnRSw0UUFBNFE7QUFBQyxrQ0FBa0MsZ0VBQWdFLDRRQUE0USxDQUFDO0FBQUMsMENBQTBDLGdFQUFnRSw0UUFBNFEsQ0FBQztBQUFDLGtFQUFrRSwyZkFBMmY7QUFBQywyRUFBMkUsdWZBQXVmO0FBQUMsaUdBQWlHLDhmQUE4ZjtBQUFDLHVHQUF1Ryw4ZkFBOGY7QUFBQyxxR0FBcUcsNmdCQUE2Z0I7QUFBQywyR0FBMkcsNmdCQUE2Z0I7QUFBQyxrR0FBa0csa0RBQXlDLENBQXpDLDBDQUEwQztBQUFDLGtDQUFrQyxrRUFBa0UsMmZBQTJmLENBQUMsMkVBQTJFLHVmQUF1ZixDQUFDLGlHQUFpRyw4ZkFBOGYsQ0FBQyx1R0FBdUcsOGZBQThmLENBQUMscUdBQXFHLDZnQkFBNmdCLENBQUMsMkdBQTJHLDZnQkFBNmdCLENBQUM7QUFBQywwQ0FBMEMsa0VBQWtFLDJmQUEyZixDQUFDLDJFQUEyRSx1ZkFBdWYsQ0FBQztBQUFDLGlDQUF5QixHQUFHLHNCQUFzQixDQUFDLEdBQUcsdUJBQXVCLENBQUM7QUFBOUUseUJBQXlCLEdBQUcsc0JBQXNCLENBQUMsR0FBRyx1QkFBdUIsQ0FBQztBQUFDLHFCQUFxQixVQUFVLENBQUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQywyQkFBMkIsQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLHdvR0FBd29HO0FBQUMsc0NBQXNDLFVBQVU7QUFBQyxrQ0FBa0MscUJBQXFCLDRCQUE0QixDQUFDLG9vR0FBb29HLENBQUM7QUFBQywwQ0FBMEMscUJBQXFCLGtwR0FBa3BHLENBQUM7QUFBQyxvQ0FBb0MsYUFBYSxDQUFDLG1DQUFtQyxDQUFDLFFBQVE7QUFBQyxjQUFjLHVDQUF1QyxlQUFlLENBQUMsc0JBQXNCLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixDQUFDLDRDQUE0Qyx3QkFBd0IsQ0FBQyxrQkFBa0IsQ0FBQywySUFBMkksd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsbUVBQW1FLFlBQVksQ0FBQyw2QkFBNkIsWUFBWSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxxU0FBcVMsQ0FBQyxtQ0FBbUMsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyw2R0FBNkcsTUFBTSxDQUFDLDRJQUE0SSxhQUFhLENBQUMseUVBQXlFLGdDQUFnQyxDQUFDLHlFQUF5RSxRQUFRLENBQUMsT0FBTyxDQUFDLHNFQUFzRSxLQUFLLENBQUMsT0FBTyxDQUFDLHFFQUFxRSxLQUFLLENBQUMsTUFBTSxDQUFDLHdFQUF3RSxRQUFRLENBQUMsTUFBTSxDQUFDO0FBQUMsNkNBQTZDLDZDQUE2QyxtVEFBbVQsQ0FBQztBQUFDLHFEQUFxRCw2Q0FBNkMscVNBQXFTLENBQUM7QUFBQyx3QkFBd0IscUJBQXFCLENBQUMsb0JBQW9CO0FBQUMsOEJBQThCLGFBQWEsQ0FBQyx5QkFBeUI7QUFBQywwQ0FBMEMsZUFBZSxDQUFDLGVBQWU7QUFBQyx1QkFBdUIsWUFBWTtBQUFDLHFCQUFxQixvQ0FBb0MsQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMscUJBQXFCO0FBQUMsZ0JBQWdCLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQjtBQUFDLDRGQUE0RixxQkFBcUI7QUFBQyxxR0FBcUcsNkJBQTZCO0FBQUMsNEJBQTRCLGtCQUFrQjtBQUFDLDZCQUE2QiwwQkFBMEI7QUFBQyxvQkFBb0IsT0FBTyxDQUFDLFFBQVEsQ0FBQyw2QkFBNkIsQ0FBQyxTQUFTO0FBQUMsK0NBQStDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyx3QkFBd0I7QUFBQyxvREFBb0QscUJBQXFCLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLHdCQUF3QjtBQUFDLHFEQUFxRCxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsd0JBQXdCO0FBQUMsa0RBQWtELGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLHFCQUFxQjtBQUFDLHVEQUF1RCxxQkFBcUIsQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxxQkFBcUI7QUFBQyx3REFBd0QsbUJBQW1CLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMscUJBQXFCO0FBQUMsZ0RBQWdELGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLHVCQUF1QjtBQUFDLGlEQUFpRCxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0I7QUFBQyw2QkFBNkIsaUJBQWlCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUMsY0FBYyxDQUFDLDRCQUE0QjtBQUFDLG1DQUFtQyxnQ0FBZ0M7QUFBQyx3QkFBd0IsaUJBQWlCLENBQUMsZUFBZSxDQUFDLGlCQUFpQixDQUFDLG1DQUFtQyxDQUFDLHNCQUFzQixDQUFDLG1CQUFtQjtBQUFDLHdEQUF3RCx3QkFBd0I7QUFBQyx5REFBeUQseUJBQXlCO0FBQUMsMkRBQTJELDJCQUEyQjtBQUFDLDREQUE0RCw0QkFBNEI7QUFBQyw4QkFBOEIsWUFBWTtBQUFDLGdDQUFnQyxtQkFBbUIsQ0FBQyx3QkFBZSxDQUFmLHFCQUFlLENBQWYsZ0JBQWdCO0FBQUMsa0RBQWtELFlBQVk7QUFBQyxtREFBbUQsWUFBWTtBQUFDLGlCQUFpQixpQkFBaUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxzQkFBc0I7QUFBQywrREFBK0Qsd0JBQXdCLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUI7QUFBQyxtQ0FBbUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLDhEQUFxRCxDQUFyRCxzREFBc0Q7QUFBQyxrQ0FBa0MsaUJBQWlCLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxrQ0FBa0M7QUFBQyxvREFBNEMsR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7QUFBN0ksNENBQTRDLEdBQUcsa0JBQWtCLENBQUMsU0FBUyxDQUFDLElBQUksa0JBQWtCLENBQUMsU0FBUyxDQUFDLEdBQUcsa0JBQWtCLENBQUMsU0FBUyxDQUFDO0FBQUMsa0NBQWtDLHFCQUFxQjtBQUFDLHdDQUF3QyxZQUFZO0FBQUMsd0NBQXdDLG9DQUFvQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsa0JBQWtCO0FBQUMsK0dBQStHLGdCQUFnQjtBQUFDLGtCQUFrQixpQkFBaUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLHlCQUF5QixDQUFDLFVBQVU7QUFBQyxhQUFhLG9CQUFvQixZQUFZLENBQUM7QUNBdDhrQyxXQUFXO0FBQ1g7Ozs7RUFJRSxzQkFBc0I7QUFDeEI7QUFFQTtFQUNFLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsd0VBQXdFO0VBQ3hFLGtCQUFrQjtFQUNsQixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLGdCQUFnQjtFQUNoQixVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLHNDQUFzQztBQUN4QztBQUVBO0VBQ0UsYUFBYTtFQUNiLFdBQVc7RUFDWCxTQUFTO0VBQ1QsNkJBQTZCO0VBQzdCLFNBQVM7RUFDVCxZQUFZO0VBQ1osY0FBYyxFQUFFLGFBQWE7RUFDN0IsMEJBQTBCO0VBQzFCLGlCQUFpQjtFQUNqQix1QkFBdUI7RUFDdkIsbUJBQW1CO0VBQ25CLGdCQUFnQjtBQUNsQjtBQUVBO0VBQ0UsYUFBYSxFQUFFLGtDQUFrQztBQUNuRDtBQUVBO0VBQ0UsY0FBYyxFQUFFLGFBQWE7RUFDN0IsMEJBQTBCO0VBQzFCLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsb0JBQW9CO0FBQ3RCO0FBRUE7RUFDRSxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixRQUFRO0VBQ1IsYUFBYTtBQUNmO0FBRUE7O0VBRUUsdUNBQXVDO0FBQ3pDO0FBRUEsY0FBYztBQUNkO0VBQ0UsV0FBVztFQUNYLGVBQWU7RUFDZixzQ0FBc0M7QUFDeEM7QUFFQSxnQkFBZ0I7QUFDaEI7RUFDRSxzQkFBc0I7RUFDdEIsa0JBQWtCO0VBQ2xCLE9BQU87RUFDUCxnQkFBZ0I7RUFDaEIsU0FBUztFQUNULFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFNBQVMsRUFBRSxhQUFhO0VBQ3hCLHFCQUFxQjtFQUNyQixhQUFhO0VBQ2IsZ0JBQWdCO0VBQ2hCLGVBQWU7QUFDakI7QUFFQTs7RUFFRSxTQUFTO0VBQ1QsWUFBWTtBQUNkO0FBRUE7RUFDRSxlQUFlO0VBQ2YsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixjQUFjO0FBQ2hCO0FBRUE7O0VBRUUsY0FBYztFQUNkLHlCQUF5QjtFQUN6QixxQkFBcUI7RUFDckIsZUFBZTtBQUNqQjtBQUVBO0VBQ0UsaUJBQWlCO0FBQ25CO0FBRUE7O0VBRUUsdUJBQXVCO0VBQ3ZCLGdCQUFnQjtFQUNoQixtQkFBbUI7QUFDckI7QUFFQSxVQUFVO0FBQ1Y7RUFDRSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxhQUFhO0VBQ2IsU0FBUztBQUNYO0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFVBQVU7RUFDVixXQUFXO0VBQ1gsWUFBWTtBQUNkO0FBRUE7RUFDRSxVQUFVO0VBQ1YsU0FBUztFQUNULFlBQVk7RUFDWixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGNBQWM7QUFDaEI7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osZUFBZTtFQUNmLGlCQUFpQjtBQUNuQjtBQUVBO0VBQ0UsYUFBYTtBQUNmO0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLGVBQWU7RUFDZixpQkFBaUI7RUFFakIsNEVBQTRFO0VBQzVFLG9FQUFvRTtBQUN0RTtBQUVBLGNBQWM7QUFDZDtFQUNFO0lBRUUsb0JBQW9CO0VBQ3RCO0VBQ0E7SUFFRSx5QkFBeUI7RUFDM0I7QUFDRjtBQUVBO0VBQ0U7SUFFRSxvQkFBb0I7RUFDdEI7RUFDQTtJQUVFLHlCQUF5QjtFQUMzQjtBQUNGO0FBRUEsaUJBQWlCO0FBQ2pCOztFQUVFO0lBQ0UsV0FBVztJQUNYLGVBQWU7RUFDakI7O0VBRUE7SUFDRSxlQUFlO0lBQ2YsZUFBZTtJQUNmLGlCQUFpQjtJQUNqQixnQkFBZ0I7RUFDbEI7RUFDQTtJQUNFLGVBQWU7RUFDakI7O0VBRUE7SUFDRSxRQUFRO0VBQ1Y7O0VBRUE7SUFDRSxXQUFXO0lBQ1gsWUFBWTtJQUNaLGVBQWU7SUFDZixlQUFlO0VBQ2pCOztFQUVBO0lBQ0UsU0FBUztJQUNULFdBQVc7SUFDWCxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxZQUFZO0lBQ1osaUJBQWlCO0VBQ25COztFQUVBO0lBQ0UsV0FBVztJQUNYLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsa0JBQWtCO0VBQ3BCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLGlCQUFpQjtJQUNqQixlQUFlO0lBQ2Y7RUFDRjs7QUFFRjtBQzlNSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUZFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSx3QkFBQTtFQUNBLFNBQUE7QUgvQk47QUdtQ0k7Ozs7RUFJRSxvQkFBQTtFQUNBLGdCQUFBO0FIaENOO0FHbUNJO0VBQ0UsYUFBQTtBSGhDTjtBR21DSSxnREFBQTtBQUNBOzs7Ozs7Ozs7Ozs7RUFZRSxjQUFBO0FIaENOO0FHbUNJO0VBQ0UsY0FBQTtBSGhDTjtBR21DSTtFQUNFLHFCQUFBO0FIaENOO0FHbUNJO0VBQ0UsbUJBQUE7QUhoQ047QUdtQ0k7O0VBRUUsZ0JBQUE7QUhoQ047QUdtQ0k7O0VBRUUsWUFBQTtBSGhDTjtBR21DSTs7OztFQUlFLFdBQUE7QUhoQ047QUdtQ0k7RUFDRSx5QkFBQTtFQUNBLGlCQUFBO0FIaENOO0FHbUNJO0VBQ0Usc0JBQUE7QUhoQ047QUdvQ0k7RUFDRSxTQUFBO0FIakNOO0FJMUlFO0VBQ0UsZUFBQTtBSjZJSjtBSTFJRTtFQzBDQSxnQkFBQTtFRHZDRSxpRUFWaUI7RUFXakIsa0NBQUE7RUFDQSxtQ0FBQTtFQUNBLGtDQUFBO0FKNElKO0FJeklFO0VBQ0UseUdBaEJpQjtBSjRKckI7QUl6SUU7RUM2QkEsZ0JBQUE7QUxnSEY7QU14S0U7RUFDRTtJQUNFLGdCQUFBO0VOMktKO0FBQ0Y7QUkxSUU7RUcrZEUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsa0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtBUHBnQjFCO0FJNUlFO0VHMmRFLGVBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsaUJBcUxzQjtBUDdmMUI7QUkvSUU7RUd1ZEUsa0JBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsaUJBcUxzQjtBUHRmMUI7QUlsSkU7RUdtZEUsa0JBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtBUC9lMUI7QUlySkU7RUcrY0UsZUFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixrQkFxTHNCO0VBckx0QixpQkFxTHNCO0FQeGUxQjtBSXhKRTtFRzJjRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0FQamUxQjtBSTNKRTtFR3VjRSxlQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7QVAxZDFCO0FJOUpFO0VBQ0UsY0FBQTtBSmlLSjtBSTlKRTtFQUNFLGtCQUFBO0FKaUtKO0FReERFO0VBQ0U7SUFDRSxXQUFBO0lBQ0EsT0FBQTtJQUNBLFNBQUE7SUFDQSxZQUFBO0VSMkRKO0VRekRFO0lBQ0UsV0FBQTtJQUNBLE9BQUE7SUFDQSxXQUFBO0lBQ0EsVUFBQTtFUjJESjtFUXpERTtJQUNFLFFBQUE7SUFDQSxVQUFBO0lBQ0EsV0FBQTtFUjJESjtFUXpERTtJQUNFLFFBQUE7SUFDQSxVQUFBO0lBQ0EsU0FBQTtFUjJESjtFUXpERTtJQUNFLFFBQUE7SUFDQSxVQUFBO0lBQ0EsU0FBQTtFUjJESjtFUXpERTtJQUNFLFFBQUE7SUFDQSxVQUFBO0lBQ0EsV0FBQTtFUjJESjtFUXpERTtJQUNFLFdBQUE7SUFDQSxPQUFBO0lBQ0EsV0FBQTtFUjJESjtFUXpERTtJQUNFLFdBQUE7SUFDQSxPQUFBO0lBQ0EsU0FBQTtFUjJESjtFUXpERTtJQUNFLFdBQUE7SUFDQSxPQUFBO0lBQ0EsU0FBQTtJQUNBLFlBQUE7RVIyREo7QUFDRjtBUTNHRTtFQUNFO0lBQ0UsV0FBQTtJQUNBLE9BQUE7SUFDQSxTQUFBO0lBQ0EsWUFBQTtFUjJESjtFUXpERTtJQUNFLFdBQUE7SUFDQSxPQUFBO0lBQ0EsV0FBQTtJQUNBLFVBQUE7RVIyREo7RVF6REU7SUFDRSxRQUFBO0lBQ0EsVUFBQTtJQUNBLFdBQUE7RVIyREo7RVF6REU7SUFDRSxRQUFBO0lBQ0EsVUFBQTtJQUNBLFNBQUE7RVIyREo7RVF6REU7SUFDRSxRQUFBO0lBQ0EsVUFBQTtJQUNBLFNBQUE7RVIyREo7RVF6REU7SUFDRSxRQUFBO0lBQ0EsVUFBQTtJQUNBLFdBQUE7RVIyREo7RVF6REU7SUFDRSxXQUFBO0lBQ0EsT0FBQTtJQUNBLFdBQUE7RVIyREo7RVF6REU7SUFDRSxXQUFBO0lBQ0EsT0FBQTtJQUNBLFNBQUE7RVIyREo7RVF6REU7SUFDRSxXQUFBO0lBQ0EsT0FBQTtJQUNBLFNBQUE7SUFDQSxZQUFBO0VSMkRKO0FBQ0Y7QVMxUkU7RUFDRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7QVQ0Uko7QVN6UkU7RUFDRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0FUNFJKO0FVdlNFO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0xBQUE7RUFHQSxrQkNWbUI7QVhrVHZCO0FVdFNFO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EscUtBQUE7RUFHQSxrQkNuQm1CO0FYeVR2QjtBVXBTRTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDBMQUFBO0VBSUEsa0JDN0JtQjtBWGdVdkI7QVVqU0U7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxS0FBQTtFQUdBLGtCQ3RDbUI7QVh1VXZCO0FVL1JFO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EscUpBQUE7RUFHQSxrQkMvQ21CO0FYOFV2QjtBVTdSRTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDJLQUFBO0VBR0Esa0JDeERtQjtBWHFWdkI7QVUxUkUsaUJBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDhMQUFBO0VBR0Esa0JDbkVtQjtFRG9FbkIsc0ZBQUE7QVYwUko7QVV2UkUsYUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsOExBQUE7RUFHQSxrQkMvRW1CO0VEZ0ZuQiw0REFBQTtBVnVSSjtBVXJSRSxlQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSw4TEFBQTtFQUdBLGtCQzFGbUI7RUQyRm5CLDREQUFBO0FWcVJKO0FVblJFLGNBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDhMQUFBO0VBR0Esa0JDckdtQjtFRHNHbkIsbUhBQUE7QVZtUko7QVVoUkUsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsNExBQUE7RUFHQSxrQkNqSG1CO0VEa0huQix5S0FBQTtBVmdSSjtBVTVRRSxpQkFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0tBQUE7RUFHQSxrQkM5SG1CO0VEK0huQixzRkFBQTtBVjRRSjtBVXpRRSxhQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrS0FBQTtFQUdBLGtCQzFJbUI7RUQySW5CLDREQUFBO0FWeVFKO0FVdlFFLGVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtLQUFBO0VBR0Esa0JDckptQjtFRHNKbkIsNERBQUE7QVZ1UUo7QVVyUUUsY0FBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0tBQUE7RUFHQSxrQkNoS21CO0VEaUtuQixtSEFBQTtBVnFRSjtBVWxRRSxVQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSw2S0FBQTtFQUdBLGtCQzVLbUI7RUQ2S25CLHlLQUFBO0FWa1FKO0FVOVBFLGlCQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxvTUFBQTtFQUlBLGtCQzFMbUI7RUQyTG5CLHNGQUFBO0FWNlBKO0FVMVBFLGFBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLG9NQUFBO0VBSUEsa0JDdk1tQjtFRHdNbkIsNERBQUE7QVZ5UEo7QVV2UEUsZUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0Esb01BQUE7RUFJQSxrQkNuTm1CO0VEb05uQiw0REFBQTtBVnNQSjtBVXBQRSxjQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxvTUFBQTtFQUlBLGtCQy9ObUI7RURnT25CLG1IQUFBO0FWbVBKO0FVaFBFLFVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLGtNQUFBO0VBSUEsa0JDNU9tQjtFRDZPbkIseUtBQUE7QVYrT0o7QVUzT0UsaUJBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtLQUFBO0VBR0Esa0JDelBtQjtFRDBQbkIsc0ZBQUE7QVYyT0o7QVV4T0UsYUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0tBQUE7RUFHQSxrQkNyUW1CO0VEc1FuQiw0REFBQTtBVndPSjtBVXRPRSxlQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrS0FBQTtFQUdBLGtCQ2hSbUI7RURpUm5CLDREQUFBO0FWc09KO0FVcE9FLGNBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtLQUFBO0VBR0Esa0JDM1JtQjtFRDRSbkIsbUhBQUE7QVZvT0o7QVVqT0UsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsNEtBQUE7RUFHQSxrQkN2U21CO0VEd1NuQix5S0FBQTtBVmlPSjtBVTdORSxpQkFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0pBQUE7RUFHQSxrQkNwVG1CO0VEcVRuQixzRkFBQTtBVjZOSjtBVTFORSxhQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrSkFBQTtFQUdBLGtCQ2hVbUI7RURpVW5CLDREQUFBO0FWME5KO0FVeE5FLGVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtKQUFBO0VBR0Esa0JDM1VtQjtFRDRVbkIsNERBQUE7QVZ3Tko7QVV0TkUsY0FBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0pBQUE7RUFHQSxrQkN0Vm1CO0VEdVZuQixtSEFBQTtBVnNOSjtBVW5ORSxVQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSw0SkFBQTtFQUdBLGtCQ2xXbUI7RURtV25CLHlLQUFBO0FWbU5KO0FVL01FLGlCQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxTEFBQTtFQUdBLGtCQy9XbUI7RURnWG5CLHNGQUFBO0FWK01KO0FVNU1FLGFBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLHFMQUFBO0VBR0Esa0JDM1htQjtFRDRYbkIsNERBQUE7QVY0TUo7QVUxTUUsZUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EscUxBQUE7RUFHQSxrQkN0WW1CO0VEdVluQiw0REFBQTtBVjBNSjtBVXhNRSxjQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxTEFBQTtFQUdBLGtCQ2pabUI7RURrWm5CLG1IQUFBO0FWd01KO0FVck1FLFVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLGtMQUFBO0VBR0Esa0JDN1ptQjtFRDhabkIseUtBQUE7QVZxTUo7QVlobUJFO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0xBQUE7RUFHQSxrQkRWbUI7QVgwbUJ2QjtBWTlsQkU7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxS0FBQTtFQUdBLGtCRG5CbUI7QVhpbkJ2QjtBWTVsQkU7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwwTEFBQTtFQUlBLGtCRDdCbUI7QVh3bkJ2QjtBWXpsQkU7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxS0FBQTtFQUdBLGtCRHRDbUI7QVgrbkJ2QjtBWXZsQkU7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxSkFBQTtFQUdBLGtCRC9DbUI7QVhzb0J2QjtBWXJsQkU7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwyS0FBQTtFQUdBLGtCRHhEbUI7QVg2b0J2QjtBWWxsQkUsaUJBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDhMQUFBO0VBR0Esa0JEbkVtQjtFQ29FbkIsc0ZBQUE7QVprbEJKO0FZL2tCRSxhQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSw4TEFBQTtFQUdBLGtCRC9FbUI7RUNnRm5CLDREQUFBO0FaK2tCSjtBWTdrQkUsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsOExBQUE7RUFHQSxrQkQxRm1CO0VDMkZuQiwwQkFBQTtBWjZrQko7QVkza0JFLGVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDhMQUFBO0VBR0Esa0JEckdtQjtFQ3NHbkIsNERBQUE7QVoya0JKO0FZemtCRSxjQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSw4TEFBQTtFQUdBLGtCRGhIbUI7RUNpSG5CLG1IQUFBO0FaeWtCSjtBWXRrQkUsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsNExBQUE7RUFHQSxrQkQ1SG1CO0VDNkhuQix5S0FBQTtBWnNrQko7QVlsa0JFLGlCQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrS0FBQTtFQUdBLGtCRHpJbUI7RUMwSW5CLHNGQUFBO0Faa2tCSjtBWS9qQkUsYUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0tBQUE7RUFHQSxrQkRySm1CO0VDc0puQiw0REFBQTtBWitqQko7QVk3akJFLFVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtLQUFBO0VBR0Esa0JEaEttQjtFQ2lLbkIsMEJBQUE7QVo2akJKO0FZM2pCRSxlQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrS0FBQTtFQUdBLGtCRDNLbUI7RUM0S25CLDREQUFBO0FaMmpCSjtBWXpqQkUsY0FBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0tBQUE7RUFHQSxrQkR0TG1CO0VDdUxuQixtSEFBQTtBWnlqQko7QVl0akJFLFVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDZLQUFBO0VBR0Esa0JEbE1tQjtFQ21NbkIseUtBQUE7QVpzakJKO0FZbGpCRSxpQkFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0Esb01BQUE7RUFJQSxrQkRoTm1CO0VDaU5uQixzRkFBQTtBWmlqQko7QVk5aUJFLGFBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLG9NQUFBO0VBSUEsa0JEN05tQjtFQzhObkIsNERBQUE7QVo2aUJKO0FZM2lCRSxVQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxvTUFBQTtFQUlBLGtCRHpPbUI7RUMwT25CLDBCQUFBO0FaMGlCSjtBWXhpQkUsZUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0Esb01BQUE7RUFJQSxrQkRyUG1CO0VDc1BuQiw0REFBQTtBWnVpQko7QVlyaUJFLGNBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLG9NQUFBO0VBSUEsa0JEalFtQjtFQ2tRbkIsbUhBQUE7QVpvaUJKO0FZamlCRSxVQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxrTUFBQTtFQUlBLGtCRDlRbUI7RUMrUW5CLHlLQUFBO0FaZ2lCSjtBWTVoQkUsaUJBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtLQUFBO0VBR0Esa0JEM1JtQjtFQzRSbkIsc0ZBQUE7QVo0aEJKO0FZemhCRSxhQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrS0FBQTtFQUdBLGtCRHZTbUI7RUN3U25CLDREQUFBO0FaeWhCSjtBWXZoQkUsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0tBQUE7RUFHQSxrQkRsVG1CO0VDbVRuQiwwQkFBQTtBWnVoQko7QVlyaEJFLGVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtLQUFBO0VBR0Esa0JEN1RtQjtFQzhUbkIsNERBQUE7QVpxaEJKO0FZbmhCRSxjQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrS0FBQTtFQUdBLGtCRHhVbUI7RUN5VW5CLG1IQUFBO0FabWhCSjtBWWhoQkUsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsNEtBQUE7RUFHQSxrQkRwVm1CO0VDcVZuQix5S0FBQTtBWmdoQko7QVk1Z0JFLGlCQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrSkFBQTtFQUdBLGtCRGpXbUI7RUNrV25CLHNGQUFBO0FaNGdCSjtBWXpnQkUsYUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0pBQUE7RUFHQSxrQkQ3V21CO0VDOFduQiw0REFBQTtBWnlnQko7QVl2Z0JFLFVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLCtKQUFBO0VBR0Esa0JEeFhtQjtFQ3lYbkIsMEJBQUE7QVp1Z0JKO0FZcmdCRSxlQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSwrSkFBQTtFQUdBLGtCRG5ZbUI7RUNvWW5CLDREQUFBO0FacWdCSjtBWW5nQkUsY0FBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsK0pBQUE7RUFHQSxrQkQ5WW1CO0VDK1luQixtSEFBQTtBWm1nQko7QVloZ0JFLFVBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDRKQUFBO0VBR0Esa0JEMVptQjtFQzJabkIseUtBQUE7QVpnZ0JKO0FZNWZFLGlCQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxTEFBQTtFQUdBLGtCRHZhbUI7RUN3YW5CLHNGQUFBO0FaNGZKO0FZemZFLGFBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLHFMQUFBO0VBR0Esa0JEbmJtQjtFQ29ibkIsNERBQUE7QVp5Zko7QVl2ZkUsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EscUxBQUE7RUFHQSxrQkQ5Ym1CO0VDK2JuQiwwQkFBQTtBWnVmSjtBWXJmRSxlQUFBO0FBQ0E7RUFDRSxnQkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxTEFBQTtFQUdBLGtCRHpjbUI7RUMwY25CLDREQUFBO0FacWZKO0FZbmZFLGNBQUE7QUFDQTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLHFMQUFBO0VBR0Esa0JEcGRtQjtFQ3FkbkIsbUhBQUE7QVptZko7QVloZkUsVUFBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0xBQUE7RUFHQSxrQkRoZW1CO0VDaWVuQix5S0FBQTtBWmdmSjtBYTU4QkU7O0VBRUUsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFBO0FiODhCSjtBYTM4QkU7RU5pZkUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFTWxxQnRCLGNDZ0JRO0VEZlIsY0FBQTtFQUNBLHlCQ1FjO0FkdThCbEI7QWVuK0JFO0VSK2ZFLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RVFockJ0QixjRDhCUTtFQzdCUixjQUFBO0VBQ0EseUJEc0JjO0FkaTlCbEI7QWdCNW9CRTtFQTdEQSxrQkFBQTtFQUNBLGlCQUFBO0VBZ0NBLGdCQUFBO0VBZE0sbUJBQUE7RUFDQSxrQkFBQTtBaEI2ckJSO0FpQnIzQk07RURpT0o7SUFoRFEsbUJBQUE7SUFDQSxrQkFBQTtFaEJ3c0JSO0FBQ0Y7QWlCMzNCTTtFRGlPSjtJQWhEUSxxQkFBQTtJQUNBLG9CQUFBO0VoQjhzQlI7QUFDRjtBaUJqNEJNO0VEc09GO0lBQ0UsZUFBQTtFaEIrcEJKO0FBQ0Y7QWdCNXBCRTtFQTdOQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCNDNCRjtBZ0I5cEJFOztFQUVFLGlCQUFBO0VBQ0Esb0JBQUE7QWhCaXFCSjtBZ0I5cEJFO0VBQ0UsdUJBQUE7RUFDQSwwQkFBQTtBaEJpcUJKO0FnQno4QkU7RUEvREEsV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCNGdDRjtBZ0J4Z0NFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEJ5Z0NKO0FnQnJnQ0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCc2dDSjtBZ0I3OEJNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQjBoQ0Y7QWdCdGhDRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCdWhDSjtBZ0JuaENFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQm9oQ0o7QWdCMzlCTTtFQXpFSixXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBaEJ3aUNGO0FnQnBpQ0U7RUFFRSx5QkFBQTtFQUNBLHdCQUFBO0FoQnFpQ0o7QWdCamlDRTtFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEJraUNKO0FnQnorQk07RUF6RUosV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCc2pDRjtBZ0JsakNFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEJtakNKO0FnQi9pQ0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCZ2pDSjtBZ0J2L0JNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQm9rQ0Y7QWdCaGtDRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCaWtDSjtBZ0I3akNFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQjhqQ0o7QWdCcmdDTTtFQXpFSixXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBaEJrbENGO0FnQjlrQ0U7RUFFRSx5QkFBQTtFQUNBLHdCQUFBO0FoQitrQ0o7QWdCM2tDRTtFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEI0a0NKO0FnQjlnQ0k7O0VBOUVGLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQmltQ0Y7QWdCN2xDRTs7O0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEJnbUNKO0FnQjVsQ0U7OztFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEIrbENKO0FnQjFoQ007O0VBRUUsYUFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0FoQjZoQ1I7QWdCMWhDTTs7RUFFRSxZQUFBO0VBQ0EsV0FBQTtFQUVBLGVBQUE7QWhCNGhDUjtBZ0J4aENRO0VBekVKLGFBQUE7QWhCcW1DSjtBZ0I1aENRO0VBdEVKLGNBQUE7RUFDQSxhQUFBO0VBSUEsY0FBQTtBaEJtbUNKO0FnQmxpQ1E7RUF0RUosY0FBQTtFQUNBLGFBQUE7RUFJQSxjQUFBO0FoQnltQ0o7QWdCeGlDUTtFQXRFSixjQUFBO0VBQ0EsYUFBQTtFQUlBLGNBQUE7QWhCK21DSjtBZ0I5aUNRO0VBdEVKLGNBQUE7RUFDQSxjQUFBO0VBSUEsZUFBQTtBaEJxbkNKO0FnQjdpQ1U7RUE1RE4sY0FBQTtBaEI2bUNKO0FnQmpqQ1U7RUExRE4sZ0JBQUE7QWhCK21DSjtBZ0JyakNVO0VBMUROLGdCQUFBO0FoQm1uQ0o7QWdCempDVTtFQTFETixnQkFBQTtBaEJ1bkNKO0FnQmhtQ007RUF6RUosV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCNnFDRjtBZ0J6cUNFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEIwcUNKO0FnQnRxQ0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCdXFDSjtBZ0I5bUNNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQjJyQ0Y7QWdCdnJDRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCd3JDSjtBZ0JwckNFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQnFyQ0o7QWdCNW5DTTtFQXpFSixXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBaEJ5c0NGO0FnQnJzQ0U7RUFFRSx5QkFBQTtFQUNBLHdCQUFBO0FoQnNzQ0o7QWdCbHNDRTtFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEJtc0NKO0FnQjFvQ007RUF6RUosV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCdXRDRjtBZ0JudENFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEJvdENKO0FnQmh0Q0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCaXRDSjtBZ0J4cENNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQnF1Q0Y7QWdCanVDRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCa3VDSjtBZ0I5dENFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQit0Q0o7QWdCdHFDTTtFQXpFSixXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBaEJtdkNGO0FnQi91Q0U7RUFFRSx5QkFBQTtFQUNBLHdCQUFBO0FoQmd2Q0o7QWdCNXVDRTtFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEI2dUNKO0FnQnByQ007RUF6RUosV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCaXdDRjtBZ0I3dkNFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEI4dkNKO0FnQjF2Q0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCMnZDSjtBZ0Jsc0NNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQit3Q0Y7QWdCM3dDRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCNHdDSjtBZ0J4d0NFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQnl3Q0o7QWdCaHRDTTtFQXpFSixXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBaEI2eENGO0FnQnp4Q0U7RUFFRSx5QkFBQTtFQUNBLHdCQUFBO0FoQjB4Q0o7QWdCdHhDRTtFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEJ1eENKO0FnQnp0Q0k7O0VBOUVGLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQjR5Q0Y7QWdCeHlDRTs7O0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEIyeUNKO0FnQnZ5Q0U7OztFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEIweUNKO0FpQjFzQ007RUQzQkE7O0lBRUUsYUFBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0VoQnl1Q047O0VnQnR1Q0k7O0lBRUUsWUFBQTtJQUNBLFdBQUE7SUFFQSxlQUFBO0VoQnd1Q047O0VnQnB1Q007SUF6RUosYUFBQTtFaEJpekNGOztFZ0J4dUNNO0lBdEVKLGNBQUE7SUFDQSxlQUFBO0lBSUEsZ0JBQUE7RWhCK3lDRjs7RWdCOXVDTTtJQXRFSixjQUFBO0lBQ0EsYUFBQTtJQUlBLGNBQUE7RWhCcXpDRjs7RWdCcHZDTTtJQXRFSixjQUFBO0lBQ0EsZUFBQTtJQUlBLGdCQUFBO0VoQjJ6Q0Y7O0VnQjF2Q007SUF0RUosY0FBQTtJQUNBLGFBQUE7SUFJQSxjQUFBO0VoQmkwQ0Y7O0VnQmh3Q007SUF0RUosY0FBQTtJQUNBLGVBQUE7SUFJQSxnQkFBQTtFaEJ1MENGOztFZ0J0d0NNO0lBdEVKLGNBQUE7SUFDQSxhQUFBO0lBSUEsY0FBQTtFaEI2MENGOztFZ0I1d0NNO0lBdEVKLGNBQUE7SUFDQSxlQUFBO0lBSUEsZ0JBQUE7RWhCbTFDRjs7RWdCbHhDTTtJQXRFSixjQUFBO0lBQ0EsY0FBQTtJQUlBLGVBQUE7RWhCeTFDRjs7RWdCanhDUTtJQTVETixjQUFBO0VoQmkxQ0Y7O0VnQnJ4Q1E7SUExRE4sa0JBQUE7RWhCbTFDRjs7RWdCenhDUTtJQTFETixnQkFBQTtFaEJ1MUNGOztFZ0I3eENRO0lBMUROLGtCQUFBO0VoQjIxQ0Y7O0VnQmp5Q1E7SUExRE4sZ0JBQUE7RWhCKzFDRjs7RWdCcnlDUTtJQTFETixrQkFBQTtFaEJtMkNGOztFZ0J6eUNRO0lBMUROLGdCQUFBO0VoQnUyQ0Y7O0VnQjd5Q1E7SUExRE4sa0JBQUE7RWhCMjJDRjtBQUNGO0FnQnIxQ007RUF6RUosV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCaTZDRjtBZ0I3NUNFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEI4NUNKO0FnQjE1Q0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCMjVDSjtBZ0JsMkNNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQis2Q0Y7QWdCMzZDRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCNDZDSjtBZ0J4NkNFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQnk2Q0o7QWdCaDNDTTtFQXpFSixXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBaEI2N0NGO0FnQno3Q0U7RUFFRSx5QkFBQTtFQUNBLHdCQUFBO0FoQjA3Q0o7QWdCdDdDRTtFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEJ1N0NKO0FnQjkzQ007RUF6RUosV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCMjhDRjtBZ0J2OENFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEJ3OENKO0FnQnA4Q0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCcThDSjtBZ0I1NENNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQnk5Q0Y7QWdCcjlDRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCczlDSjtBZ0JsOUNFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQm05Q0o7QWdCMTVDTTtFQXpFSixXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBaEJ1K0NGO0FnQm4rQ0U7RUFFRSx5QkFBQTtFQUNBLHdCQUFBO0FoQm8rQ0o7QWdCaCtDRTtFQUVFLG1CQUFBO0VBQ0EsZUFBQTtBaEJpK0NKO0FnQng2Q007RUF6RUosV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWhCcS9DRjtBZ0JqL0NFO0VBRUUseUJBQUE7RUFDQSx3QkFBQTtBaEJrL0NKO0FnQjkrQ0U7RUFFRSxtQkFBQTtFQUNBLGVBQUE7QWhCKytDSjtBZ0J0N0NNO0VBekVKLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FoQm1nREY7QWdCLy9DRTtFQUVFLHlCQUFBO0VBQ0Esd0JBQUE7QWhCZ2dESjtBZ0I1L0NFO0VBRUUsbUJBQUE7RUFDQSxlQUFBO0FoQjYvQ0o7QWdCcDhDTTtFQXpFSixX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aEZFO0VBQ0UseUJMWmlCO0Fkd2lGckI7QW1CemhGRTs7RUFFRSxrQkRoREU7QWxCMmtGTjtBa0J2a0ZJO0VBRUUsY0pKTTtBZDRrRlo7QWtCcGtGRTtFQ1NBLGNMNUJpQjtFSzZCakIsNkJEUkk7RUNTSixxQkw5QmlCO0VLK0JqQixtQkFBQTtFQUNBLGlCQ2dFcUI7QXBCKy9FdkI7QW1CN2pGRTtFQUNFLHlCTE1lO0FkeWpGbkI7QW1CNWpGRTtFQUNFLHFCTExNO0VLTU4sNERBQUE7QW5COGpGSjtBbUIxakZJO0VBTkY7SUFRSSw4QkFBQTtJQUNBLG9CQUFBO0VuQjRqRko7QUFDRjtBbUJ6akZFO0VBQ0UseUJMVmdCO0FkcWtGcEI7QW1CeGpGRTs7RUFFRSxrQkRoQ0U7QWxCMGxGTjtBa0J0bEZJO0VBQ0UsY0pUUztBZGltRmY7QWtCcmxGSTtFQUNFLGNKYlM7RUljVCx5QkpuQ2E7QWQwbkZuQjtBa0JwbEZJO0VBQ0UseUJKR2M7RUlGZCx5QkFBQTtBbEJzbEZOO0FrQm5sRkk7RUFNRSxjSlFVO0VJUFYsdUJBQUE7RUFDQSxhQUFBO0FsQmdsRk47QWtCNWtGRTtFQzNCQSxjTFhVO0VLWVYsNkJENEJJO0VDM0JKLHlCRDRCSTtFQzNCSixtQkFBQTtFQUNBLGlCQ2dFcUI7RUYvQm5CLGtDRVNtQjtBcEJra0Z2QjtBbUIxbUZFO0VBQ0UseUJMUVM7QWRvbUZiO0FtQnptRkU7RUFDRSxxQkxMTTtFS01OLDREQUFBO0FuQjJtRko7QW1Cdm1GSTtFQU5GO0lBUUksOEJBQUE7SUFDQSxvQkFBQTtFbkJ5bUZKO0FBQ0Y7QW1CdG1GRTtFQUNFLHlCTE5VO0FkOG1GZDtBbUJybUZFOztFQUVFLGtCRElFO0FsQm1tRk47QWtCN2xGSTtFQUNFLGdCQUFBO0VBQ0EsbUJHMUZlO0FyQnlyRnJCO0FrQjVsRkk7RUFFRSxjSnBDaUI7QWRpb0Z2QjtBa0IxbEZJO0VBQ0UseUJKaENRO0FkNG5GZDtBa0J6bEZJO0VBTUUsY0o5QlU7RUkrQlYsdUJBQUE7RUFDQSx5QkFBQTtFQUNBLGFBQUE7QWxCc2xGTjtBa0JubEZJO0VB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M2pHRTtFQUNFLHlCQUFBO0FuQjZqR0o7QW1CMWpHRTs7RUFFRSxrQkR3TEU7QWxCbzRGTjtBa0JoNEZJO0VBQ0UsY0ozT007QWQ2bUdaO0FrQjkzRkk7RUM5TkYsY0xLWTtFS0paLDZCRGdPTTtFQy9OTixxQkxHWTtFS0ZaLG1CQUFBO0VBQ0EsaUJDZ0VxQjtBcEIraEd2QjtBbUI3bEdFO0VBQ0UseUJMZ0JhO0FkK2tHakI7QW1CNWxHRTtFQUNFLHFCTExNO0VLTU4sNERBQUE7QW5COGxHSjtBbUIxbEdJO0VBTkY7SUFRSSw4QkFBQTtJQUNBLG9CQUFBO0VuQjRsR0o7QUFDRjtBbUJ6bEdFO0VBQ0UseUJBQUE7QW5CMmxHSjtBbUJ4bEdFOzs7RUFFRSxrQkR3TUk7QWxCbTVGUjtBa0IvNEZNO0VBQ0UsY0ozUEk7RUk0UEoscUJKcE5TO0FkcW1HakI7QWtCOTRGTTtFQUNFLGNKaFFJO0VJaVFKLHlCSjVPTTtBZDRuR2Q7QWtCNzRGTTtFQUNFLGNKclFJO0VJc1FKLHFCSjdOVTtBZDRtR2xCO0FrQjE0Rkk7RUMxUEYsY0xLWTtFS0paLDZCRDRQTTtFQzNQTix5QkQ0UE07RUMzUE4sbUJBQUE7RUFDQSxpQkNnRXFCO0VGaU1qQixrQ0V2TmlCO0FwQjhsR3ZCO0FtQnRvR0U7RUFDRSx5QkxnQmE7QWR3bkdqQjtBbUJyb0dFO0VBQ0UscUJMTE07RUtNTiw0REFBQTtBbkJ1b0dKO0FtQm5vR0k7RUFORjtJQVFJLDhCQUFBO0lBQ0Esb0JBQUE7RW5CcW9HSjtBQUNGO0FtQmxvR0U7RUFDRSx5QkFBQTtBbkJvb0dKO0FtQmpvR0U7OztFQUVFLGtCRG9PSTtBbEJnNkZSO0FrQjE1Rk07RUFDRSxnQkFBQTtFQUNBLG1CRzFUYTtBckJzdEdyQjtBa0J6NUZNO0VBRUUsY0ovUkk7QWR5ckdaO0FrQnY1Rk07RUFNRSxjSjNQUTtFSTRQUix1QkFBQTtFQUNBLHlCQUFBO0VBQ0EsYUFBQTtBbEJvNUZSO0FrQmo1Rk07RUFDRSxrQ0VwT2tCO0FwQnVuRzFCO0FrQmg1Rk07RUFDRSxrQ0U5T3FCO0FwQmdvRzdCO0FrQjc0RkU7RUFDRSxnQkFBQTtFQUNBLDRERXRRZ0I7QXBCc3BHcEI7QWtCNzRGRTtFQzFRQSxxQkFBQTtFQUNBLGlCTHlDYTtFS3hDYixtQkx3RFk7RUt2RFosa0JMdUNhO0VJbU9YLGdCQUFBO0FsQms1Rko7QWtCLzRGRTtFQ2hSQSxxQkFBQTtFQUNBLGlCTHlDYTtFS3hDYixtQkx3RFk7RUt2RFosa0JMdUNhO0VJeU9YLGdCQUFBO0FsQm81Rko7QWtCajVGRTtFQUNFLGtCQUFBO0VBQ0EsNERFNVJtQjtBcEJnckd2QjtBa0JoNUZFO0VWMU9BLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CTXJEYztFTnNEZCxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFVXdPRSxlQUFBO0FsQnU1Rko7QVE3bkdFO0VBR0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0FSNm5HSjtBUTFuR0U7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSxtQk12RVk7RU53RVosdURBQUE7VUFBQSwrQ0FBQTtFQUNBLFdBQUE7QVI0bkdKO0FRMW5HSTtFQVZGO0lBV0ksdUJBQUE7WUFBQSxlQUFBO0VSNm5HSjtBQUNGO0FrQnY2RkU7RUFDRSxhQUFBO0FsQjA2Rko7QWtCdjZGRTtFQUNFLHNCQUFBO0FsQjA2Rko7QWtCdjZGRTtFQUNFLFdBQUE7RUFFQSxtQkFBQTtBbEJ5NkZKO0FrQnY2Rkk7RUFDRSxvQ0FBQTtBbEJ5NkZOO0FrQnQ2Rkk7RUFDRSxtQkFBQTtBbEJ3NkZOO0FrQnA2RkU7RUFDRSxtQkFBQTtBbEJ1NkZKO0FrQnA2RkU7RUFDRSxvQ0FBQTtBbEJ1NkZKO0FrQnA2RkU7RUFDRSxtQkFBQTtBbEJ1NkZKO0FrQnA2RkU7RUFDRSxvQ0FBQTtBbEJ1NkZKO0FrQnI2Rkk7RUFDRSxnQkFBQTtBbEJ1NkZOO0FrQm42RkU7RUFDRSxvQ0FBQTtBbEJzNkZKO0FrQnA2Rkk7RUFDRSxnQkFBQTtBbEJzNkZOO0F1QjkwR0E7RUFDRTtJQVZBLG1CQUFBO0lBQ0EsVUFBQTtFdkI0MUdBO0V1QmgxR0E7SUFSQSxrQkFBQTtJQUNBLFVBQUE7RXZCMjFHQTtBQUNGO0F1QnoxR0E7RUFDRTtJQVZBLG1CQUFBO0lBQ0EsVUFBQTtFdkI0MUdBO0V1QmgxR0E7SUFSQSxrQkFBQTtJQUNBLFVBQUE7RXZCMjFHQTtBQUNGO0F1QmgxR0E7RUFDRTtJQWRBLGtCQUFBO0lBQ0EsVUFBQTtFdkJpMkdBO0V1QmoxR0E7SUF0QkEsbUJBQUE7SUFDQSxVQUFBO0V2QjAyR0E7QUFDRjtBdUIxMUdBO0VBQ0U7SUFkQSxrQkFBQTtJQUNBLFVBQUE7RXZCaTJHQTtFdUJqMUdBO0lBdEJBLG1CQUFBO0lBQ0EsVUFBQTtFdkIwMkdBO0FBQ0Y7QXdCbjJHRTtFQUNFLGtCQUFBO0VBQ0EsaUJBQUE7QXhCcTJHSjtBd0JuMkdJO0VBQ0Usc0JBQUE7QXhCcTJHTjtBd0JqMkdFO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsU0FBQTtFQUNBLGFBQUE7QXhCbzJHSjtBd0JsMkdJO0VBQ0UseUJBQUE7QXhCbzJHTjtBd0JqMkdJO0VoQnFCRix3Q0FBQTtFRHNkRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VpQjVwQnBCLFdBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JWcUdTO0VVcEdULGNWb0JTO0VVbkJULGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLDJCQUFBO0VBQ0EsNEJBQUE7RUFDQSxvQkFBQTtBeEJxMkdOO0F3QmwyR0k7RUFDRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLCtCQUFBO0VBQ0EsZ0NBQUE7RUFDQSwwQkFBQTtFQUNBLFdBQUE7QXhCbzJHTjtBd0JqMkdJO0VBRUUsa0JBQUE7RUFDQSxjQUFBO0VBQ0EsbUJWSlM7QWRzMkdmO0F3Qi8xR0k7RUFDRSxvQkFBQTtBeEJpMkdOO0F3QjMxR0U7RUFHRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsYUh2Q2lCO0VHd0NqQixjSHhDaUI7RUd5Q2pCLFVBQUE7RUFDQSx5QlYzQ007RVU0Q04sWUFBQTtFQUNBLGVBQUE7QXhCNDFHSjtBd0IxMUdJO0VBQ0UseUJWUk87QWRvMkdiO0F3QnoxR0k7RUFDRSx5QlZUUTtBZG8yR2Q7QXdCeDFHSTtFRm5GRixrQkFBQTtFQUNBLGFBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFRWlGSSxhQUFBO0F4QjgxR047QXdCMzFHSTtFaEJqREYsd0NBQUE7RWN4QkEsMEJBQUE7RUFBQSx1QkFBQTtFQUFBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLFlBQUE7RUFDQSx1QkFBQTtFQUtBLGNScUJhO0VRcEJiLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QlJtQmE7RVFsQmIsdUJBQUE7RUFDQSwyQkFBQTtFZmdlRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VpQnZsQnBCLGFBQUE7RUFDQSx1QkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLFVBQUE7QXhCMjJHTjtBc0J6NkdFO0VFdURFO0lGdERBLFdBQUE7RXRCNDZHRjtBQUNGO0FzQjE2R0U7RUVtREU7SUZsREEsV0FBQTtFdEI2NkdGO0FBQ0Y7QXNCNTZHRTtFRWdERTtJRi9DQSxXQUFBO0V0Qis2R0Y7QUFDRjtBc0I1NkdFO0VFMkNFO0lGMUNBLDZCQUFBO0V0Qis2R0Y7QUFDRjtBc0I3d0dFOzs7RUFhSSxTQUFBO0VBQ0EsU0FBQTtBdEJxd0dOO0FzQjd2R0U7RUFjSSxlQUFBO0VBQ0EseURBQUE7RUFDQSx5Q0FBQTtFQUNBLGdDQUFBO0F0Qmt2R047QXNCdHVHRTs7O0VBc0JJLGtCQUFBO0VBU0UsZ0NBQUE7QXRCNnNHUjtBd0I1NEdJO0VoQjFDQSwwQkFBQTtFQUNBLG9CQUFBO0VnQjRDRSxzQlY3Q0k7QWQyN0dWO0F3QjM0R0k7RUFFRSxjQUFBO0F4QjQ0R047QXdCejRHSTtFQUlFLHNFQUFBO1VBQUEsOERBQUE7QXhCdzRHTjtBd0JyNEdJO0VBR0Usc0VBQUE7VUFBQSw4REFBQTtBeEJxNEdOO0F3Qmg0R0U7RUFDRSxZQUFBO0F4Qm00R0o7QXlCbmdIRTtFQUdFLG1CSnFCaUI7QXJCKytHckI7QXlCamdIRTtFbEJ3ZkUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFa0IxcUJ0QixhQUFBO0VBSUEsY0FBQTtFQUNBLHNCQUFBO0VBQ0EsdUJBQUE7QXpCbWdISjtBeUJoZ0hFO0VsQjRlRSxrQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VrQjdwQnRCLHFCQUFBO0VBQ0EscUJKbkJpQjtFSW9CakIsY1hVUTtFV1RSLGdCTGZpQjtFS2dCakIsaUJBQUE7RUFDQSx3QkFBQTtBekJvZ0hKO0F5QmpnSEU7RWxCZ2VFLGtCQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7QVBtM0YxQjtBeUJqZ0hFO0VqQm9HQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxtQk1yRGM7RU5zRGQsWUFBQTtFQUNBLGdCQUFBO0VBQ0Esb0JBQUE7RWlCdEdFLGdCQUFBO0VBQ0EsZ0JBQUE7QXpCd2dISjtBUWo2R0U7RUFHRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QVJpNkdKO0FROTVHRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLG1CTXZFWTtFTndFWix1REFBQTtVQUFBLCtDQUFBO0VBQ0EsV0FBQTtBUmc2R0o7QVE5NUdJO0VBVkY7SUFXSSx1QkFBQTtZQUFBLGVBQUE7RVJpNkdKO0FBQ0Y7QXlCemhIRTtFQUNFLHlHQUFBO0F6QjRoSEo7QXlCemhIRTs7Ozs7OztFakJxQkUsMEJBQUE7RUFDQSxvQkFBQTtBUjhnSEo7QXlCMWdISTs7Ozs7Ozs7Ozs7OztFQUNFLGNBQUE7RUFDQSxtQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7QXpCeWhITjtBeUI1Z0hJOzs7Ozs7Ozs7RUFDRSxjWHREUztBZDZrSGY7QXlCbGhIRTs7RUFFRSxjQUFBO0F6QnFoSEo7QXlCbGhIRTtFQUNFLFNBQUE7QXpCcWhISjtBeUJsaEhFO0VBQ0UsYUFBQTtBekJxaEhKO0F5QmxoSEU7RUFDRSxTQUFBO0VBQ0Esa0NBQUE7QXpCcWhISjtBeUJoaEhFO0VBQ0UsZ0JBQUE7QXpCbWhISjtBeUJoaEhFO0VsQnFZRSxrQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VrQnRqQnRCLGFBQUE7RUFDQSxhQUFBO0VBRUEsbUJBQUE7RUFDQSxnQkFBQTtBekJtaEhKO0F5QmhoSEU7RUFDRSxhQUFBO0F6Qm1oSEo7QXlCaGhIRTtFbEJzWEUsa0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFa0J4aUJ0QixVQUFBO0VBRUEsV0FBQTtFQUNBLG1CSi9JaUI7RUlnSmpCLGNYN0dRO0VXOEdSLFVBQUE7QXpCbWhISjtBeUJoaEhFOztFQUVFLGNYcEVZO0FkdWxIaEI7QTBCaHJIQTtFQUNFO0lBQ0UsdUJBQUE7RTFCbXJIRjtFMEJqckhBO0lBQ0UseUJBQUE7RTFCbXJIRjtBQUNGO0EwQmhySEE7RUFDRTtJQUNFLHlCQUFBO0UxQmtySEY7QUFDRjtBMEJyckhBO0VBQ0U7SUFDRSx5QkFBQTtFMUJrckhGO0FBQ0Y7QTBCL3FIQTtFQUNFO0lBQ0UsMEJBQUE7RTFCaXJIRjtBQUNGO0EwQnBySEE7RUFDRTtJQUNFLDBCQUFBO0UxQmlySEY7QUFDRjtBMEI5cUhBLHNCQUFBO0FBQ0E7RUFDRTtJQUNFLHNCQUFBO0UxQmdySEY7RTBCOXFIQTtJQUNFLHFCQzFCVztFM0Iwc0hiO0FBQ0Y7QTBCdHJIQTtFQUNFO0lBQ0Usc0JBQUE7RTFCZ3JIRjtFMEI5cUhBO0lBQ0UscUJDMUJXO0UzQjBzSGI7QUFDRjtBMEI3cUhBO0VBQ0U7SUFDRSxxQkNoQ1c7RTNCK3NIYjtFMEI3cUhBO0lBQ0Usc0JBQUE7RTFCK3FIRjtBQUNGO0EwQnJySEE7RUFDRTtJQUNFLHFCQ2hDVztFM0Irc0hiO0UwQjdxSEE7SUFDRSxzQkFBQTtFMUIrcUhGO0FBQ0Y7QTRCM3NIRTtFQ0ZBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSxpQ0FBQTtVQUFBLHlCQUFBO0VBQ0EseUNBQUE7VUFBQSxpQ0FBQTtFQUNBLDJDQUFBO1VBQUEsbUNBQUE7RUFDQSxxQ0FBQTtVQUFBLDZCQUFBO0VERUUsY0RGWTtFQ0daLGVESFk7QTNCa3RIaEI7QTZCL3NIRTtFQUNFLG1DQUFBO1VBQUEsMkJBQUE7RUFDQSxnQ0FBQTtVQUFBLHdCQUFBO0VBQ0Esa0VDbUVzQjtVRG5FdEIsMERDbUVzQjtBOUI4b0gxQjtBNEJodEhFO0VBQ0UsaUJBQUE7QTVCbXRISjtBNEJodEhFO0VBQ0UsZUFBQTtFQUNBLG9CQUFBO0VBQ0EscUJBQUE7QTVCbXRISjtBNEJodEhFO0VBQ0UsZWRLZTtFY0pmLHFCRDdCVztBM0JndkhmO0E0Qmh0SEU7RUFDRSxxQkQ1QmtCO0EzQit1SHRCO0E0Qmh0SEU7RUNaQSw2SUFBQTtVQUFBLHFJQUFBO0E3Qmd1SEY7QTZCNXRIRTtFQUNFLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSxpQ0FBQTtVQUFBLHlCQUFBO0VBQ0EsK0RDOENlO1VEOUNmLHVEQzhDZTtFRDdDZiw4QkFBQTtVQUFBLHNCQUFBO0VBQ0EscUNBQUE7VUFBQSw2QkFBQTtBN0I4dEhKO0E0QnZ0SEU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtBNUIwdEhKO0E0Qnp0SEk7RUFDRSxnQkFBQTtBNUIydEhOO0E0QnZ0SEU7RUFDRSxlZGhCZTtBZDB1SG5CO0E0QnZ0SEU7RUFDRSxlZGhCTTtFY2lCTixvQkFBQTtBNUIwdEhKO0E0QnZ0SEU7RUFDRSxlQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxhQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHVDZEpXO0VjS1gsa0VBQUE7QTVCMHRISjtBNEJ2dEhFO0VBQ0UsYUFBQTtBNUIwdEhKO0ErQnh4SEU7RUFDRSxXQUFBO0EvQjJ4SEo7QStCeHhIRTtFQUNFLG9CVkppQjtFVUtqQixhakJ1Q1c7QWRvdkhmO0ErQnZ4SEU7RXhCaWZFLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RXdCbHFCdEIscUJWYmlCO0VVY2pCLGNqQmVRO0FkNHdIWjtBK0J4eEhFO0V2QjJFQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLG1CQUFBO0VBQ0Esc0JBQUE7QVJpdEhGO0ErQjl4SEU7RUFDRSxvQkFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtBL0JpeUhKO0ErQjl4SEU7RUFDRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLHFCVmxDaUI7RVVtQ2pCLGNqQkdRO0VpQkZSLDhCQUFBO0VBQ0Esb0JBQUE7RUFDQSxlQUFBO0VBQ0EsaURBQUE7QS9CaXlISjtBK0IveEhJO0VBRUUsMEJBQUE7QS9CZ3lITjtBK0I3eEhJO0VBSUUsMEJBQUE7QS9CNHhITjtBK0J6eEhJO0VBQ0UsY2pCekJNO0Fkb3pIWjtBK0J2eEhFO0VBQ0UsY2pCa0JZO0VpQmpCWixxQkFBQTtFQUNBLGVBQUE7QS9CMHhISjtBK0J4eEhJO0VBRUUsY2pCWVU7RWlCWFYscUJBQUE7RUFDQSxhQUFBO0EvQnl4SE47QStCcnhIRTtFQUNFLDBCQUFBO0EvQnd4SEo7QStCcnhIRTtFeEIrYUUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFd0JobUJ0QixtQlZyRWlCO0VVc0VqQixjakJsRFE7QWQyMEhaO0ErQnJ4SEU7RUFDRSxrQlZ0RWlCO0FyQjgxSHJCO0ErQnJ4SEU7RUFDRSxnQlYvRWlCO0FyQnUySHJCO0ErQnJ4SEU7O0VBRUUsa0JWOUZpQjtBckJzM0hyQjtBK0JyeEhFO0VBQ0UsYUFBQTtFQUNBLG9CQUFBO0VBQ0EsY1YxRmlCO0VVMkZqQiwrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQlYxRWlCO0VVMkVqQixxQlZ6R2lCO0VVMEdqQixzQkFBQTtFQUNBLHlCakJuRVM7QWQyMUhiO0ErQnR4SEk7RUFDRSxnQkFBQTtBL0J3eEhOO0ErQnJ4SEk7RUFDRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7QS9CdXhITjtBK0JweEhJO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtBL0JzeEhOO0ErQm54SEk7RUFFRSxlQUFBO0EvQm94SE47QStCanhISTtFeEJ1WEEsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFd0J6aUJwQixpQlY1SGU7RVU2SGYsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0EvQnF4SE47QStCanhIRTtFQUNFLGtCQUFBO0EvQm94SEo7QStCanhIRTtFQUNFLGdCQUFBO0EvQm94SEo7QStCaHhIRTtFdkJyRkUsMEJBQUE7RUFDQSxvQkFBQTtFdUJ1RkEsZ0JBQUE7RUFDQSxxQlYxSmlCO0VVMkpqQix5QmpCbkhTO0VpQnFIVCxrQkFBQTtBL0JreEhKO0ErQi93SEU7RXZCL0ZFLDBCQUFBO0VBQ0Esb0JBQUE7RXVCaUdBLGVBQUE7QS9Ca3hISjtBK0Ivd0hFO0VBQ0UsaUJWN0ppQjtFVThKakIsNkJBQUE7QS9Ca3hISjtBK0Ivd0hFOztFeEIrVUUsa0JBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFd0I5ZnRCLGVBQUE7QS9Ca3hISjtBK0Ivd0hFO0VBRUUsY2pCcEpXO0FkcTZIZjtBK0I5d0hFO0VBRUUsY2pCOUpRO0FkODZIWjtBK0I1d0hFO0V4QjJURSxrQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0V3QjdldEIsY0FBQTtFQUNBLG1CQUFBO0VBQ0Esb0JBQUE7RUFDQSxpQkFBQTtFQUNBLGNqQnBLVztFaUJxS1gsZ0JBQUE7QS9CaXhISjtBK0I5d0hFO0VBR0Usc0JWN01pQjtFVThNakIsY2pCakxRO0FkZzhIWjtBK0I1d0hFO0VBQ0UsYUFBQTtFQUNBLHVCQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQlYzTWlCO0FyQjA5SHJCO0ErQjd3SEk7RUFDRSxlakI1TEk7QWQyOEhWO0ErQjN3SEU7RUFDRSxlQUFBO0VBQ0EsYWpCeE1lO0FkczlIbkI7QStCNXdISTtFdkJsTEEsMEJBQUE7QVJpOEhKO0ErQjF3SEk7RUFDRSxVQUFBO0VBQ0EsYWpCbE1NO0FkODhIWjtBK0J4d0hFO0VBQ0UsV1ZsT2lCO0VVbU9qQixZVm5PaUI7RVVvT2pCLG9CVjlPaUI7RVUrT2pCLGFqQm5NVztBZDg4SGY7QStCeHdIRTtFQUNFLGFBQUE7RUFDQSxXVjFPaUI7RVUyT2pCLFlWM09pQjtFVTRPakIsVUFBQTtFQUNBLDZCQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7RUFDQSxhakJ2TlE7QWRrK0haO0ErQnp3SEk7RXZCOU1BLDBCQUFBO0FSMDlISjtBK0J2d0hFO0VBQ0UsYWpCL05RO0FkeStIWjtBK0J2d0hFO0VBQ0UscUJBQUE7QS9CMHdISjtBK0J2d0hFO0VBQ0UsYUFBQTtFQUNBLHVCQUFBO0VBQ0EsOEJBQUE7RUFDQSxZQUFBO0VBQ0EsYVZwUWlCO0VVcVFqQixnQkFBQTtFQUNBLDBCQUFBO0EvQjB3SEo7QStCdndIRTtFQUNFLGdCQUFBO0VBQ0EsMEJBQUE7RUFDQSxvQkFBQTtBL0Iwd0hKO0FnQ2xpSUU7RUFDRSxzQlhKaUI7QXJCeWlJckI7QWdDamlJRTtFQUNFLHFCQUFBO0FoQ29pSUo7QWdDL2hJRTtFQUNFLHFCQUFBO0FoQ2tpSUo7QWdDOWhJRTtFQUNFLHdCQUFBO0FoQ2lpSUo7QWdDNWhJRTtFeEJ3RUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFBO0FSdzlIRjtBZ0NsaUlFO0V6QitkRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0V5QmhwQnRCLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSx5QkFBQTtLQUFBLHNCQUFBO1VBQUEsaUJBQUE7QWhDc2lJSjtBZ0NuaUlFO0VBRUUsc0JBQUE7QWhDcWlJSjtBZ0NqaUlFOztFQUVFLHNCQUFBO0FoQ29pSUo7QWdDaGlJRTtFQUtFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLE9BQUE7RUFLQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBR0EsNkJBQUE7RUFDQSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtBaEN5aElKO0FnQ3JoSUU7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQ0FBQTtFQUNBLDhCQUFBO0VBQ0Esa0NBQUE7RUFDQSw4QkFBQTtFQUNBLFdBQUE7QWhDd2hJSjtBZ0NoaElFOzs7O0VBSUUseUJsQmpFUTtFa0JrRVIscUJsQmxFUTtFa0JtRVIsaUJBQUE7QWhDbWhJSjtBZ0MvZ0lFOztFQUVFLGtDQUFBO0FoQ2toSUo7QWdDOWdJRTs7RUFFRSxjQUFBO0VBQ0EsYUFBQTtFQUNBLGdDQUFBO0VBQ0EsNEJBQUE7RUFDQSxnQ0FBQTtBaENpaElKO0FnQ3pnSUU7Ozs7OztFQVNFLGdEQUFBO0FoQ3lnSUo7QWdDdGdJSTtFQVpGOzs7Ozs7SUFlSSxnQ0FBQTtJQUNBLG1CQUFBO0VoQzRnSUo7QUFDRjtBZ0NyZ0lFOztFQUVFLGNsQjNFWTtFa0I0RVosbUJBQUE7QWhDd2dJSjtBZ0NyZ0lFOztFQUVFLHFCbEJqRlk7QWR5bEloQjtBZ0NyZ0lFOzs7O0VBS0UseUJsQnpGWTtBZGdtSWhCO0FnQ2hnSUU7RXhCeENBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CTXJEYztFTnNEZCxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFd0JzQ0UsY0FBQTtFQUNBLFlsQnBEVztFa0J1RFgsNEJBQUE7QWhDcWdJSjtBUTdpSUU7RUFHRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QVI2aUlKO0FRMWlJRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLG1CTXZFWTtFTndFWix1REFBQTtVQUFBLCtDQUFBO0VBQ0EsV0FBQTtBUjRpSUo7QVExaUlJO0VBVkY7SUFXSSx1QkFBQTtZQUFBLGVBQUE7RVI2aUlKO0FBQ0Y7QWlDcnJJRTtFQUNFLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQ0FBQTtFQUNBLG1CQUFBO0FqQ3dySUo7QWlDdHJJSTtFMUI0ZEEsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtBUDJpSDFCO0FpQ3hySUk7OztFQUdFLFNBQUE7QWpDMHJJTjtBaUN2cklJO0VBQ0UsZUFBQTtBakN5cklOO0FpQ3RySUk7RUFDRSxjQUFBO0FqQ3dySU47QWlDcHJJRTtFQUdFLGtCQUFBO0VBQ0EsV0FwRGE7RUFxRGIsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsY25CM0JRO0VtQjRCUix5Qm5CakJTO0VtQmtCVCxZQUFBO0VBQ0EsZ0NBQUE7RUFDQSxlQUFBO0VBQ0Esb0RBQUE7QWpDcXJJSjtBaUNucklJO0VBQ0UseUJBQUE7QWpDcXJJTjtBaUNqcklFO0VBQ0UsWUFBQTtFQUNBLGdCQUFBO0FqQ29ySUo7QWlDanJJRTtFQUNFLFlBQUE7RUFDQSxnQkFBQTtBakNvcklKO0FpQ2pySUU7RUFDRSw0Qm5CckRNO0FkeXVJVjtBaUNqcklFO0VBQ0UseUJuQjNDUztBZCt0SWI7QWlDanJJRTtFQUNFLHlCbkI5Q1M7QWRrdUliO0FpQ2pySUU7RUFDRSxZQUFBO0FqQ29ySUo7QWlDaHJJRTtFQUNFLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLGFaekVpQjtFWTBFakIsMkJBQUE7RUFDQSxhbkJ4RFc7QWQydUlmO0FpQ2hySUU7RUFDRSxhbkIxRFc7QWQ2dUlmO0FpQ2hySUU7RUFFRSxVQUFBO0VBQ0EsYUM4SmtCO0FsQ29oSXRCO0FpQy9xSUU7O0VBR0UsbUJBQUE7RUFDQSxnQkFBQTtBakNpcklKO0FpQzlxSUU7RUFFRSxxQkFBQTtBakNncklKO0FpQzVxSUU7RUFDRSx5Qm5CdEZTO0FkcXdJYjtBaUM1cUlFO0VBQ0UsbUJuQjFGUztBZHl3SWI7QWlDNXFJRTtFQUNFLHlCbkJ2RGM7QWRzdUlsQjtBaUM1cUlFO0VBQ0UsZ0NBQUE7QWpDK3FJSjtBaUMzcUlFO0VBQ0UseUJuQnhHUztBZHN4SWI7QWlDM3FJRTtFQUNFLHlCbkIzR1M7QWR5eEliO0FpQzNxSUU7OztFQUdFLGdDQUFBO0VBQ0EsYUFBQTtBakM4cUlKO0FpQzNxSUU7O0VBR0UsY25CcEZZO0FkaXdJaEI7QWlDMXFJRTtFQUNFLGFuQnhGWTtBZHF3SWhCO0FpQzFxSUk7RUFKRjtJQU9JLGNBQUE7RWpDMnFJSjtBQUNGO0FpQ3hxSUU7OztFQUdFLG1CQUFBO0FqQzJxSUo7QWlDeHFJRTs7O0VBSUUsY25CNUdZO0VtQjZHWixxQkFBQTtBakMwcUlKO0FpQ3ZxSUU7RUFDRSxtQkFBQTtBakMwcUlKO0FpQ3RxSUU7RUFFRSxtQlp0S2lCO0FyQjgwSXJCO0FpQ3JxSUU7RUFFRSxtQkFBQTtBakN1cUlKO0FpQ25xSUU7RUFDRSw2QkFBQTtFQUNBLGVBQUE7QWpDc3FJSjtBaUNwcUlJO0VBQ0UseUJuQmxKTztBZHd6SWI7QWlDbHFJRTtFQUNFLHNCQUFBO0FqQ3FxSUo7QWlDbHFJRTtFQUVFLGVBQUE7QWpDb3FJSjtBaUNqcUlFO0VBQ0UsNkJBQUE7QWpDb3FJSjtBaUNqcUlFO0VBQ0UseUJuQjNMUztBZCsxSWI7QWlDanFJRTtFQUVFLHdCQUFBO0FqQ21xSUo7QWlDaHFJRTtFQUVFLGFaOU9pQjtBckJnNUlyQjtBaUMvcElFO0VBRUUsV1ovTmlCO0FyQmc0SXJCO0FpQzlwSUU7RUFDRSxjbkIxTlE7QWQyM0laO0FpQzlwSUU7RUFDRSxZQUFBO0FqQ2lxSUo7QWlDOXBJRTtFQUNFLGdCQUFBO0FqQ2lxSUo7QWlDOXBJRTtF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ckxaO0F3Q3ZwTE07RUFORjtJQVFJLDhCQUFBO0lBQ0Esb0JBQUE7RXhDeXBMTjtBQUNGO0F3Q3RwTEk7RUFFRSxjMUJJVTtFMEJIVix5QjFCRVU7RTBCRFYsNEIxQkNVO0UwQkFWLG1CQUFBO0F4Q3VwTE47QXdDbnBMRTtFQUNFLFlBQUE7RUFDQSxnQkFBQTtBeENzcExKO0F3Q25wTEU7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7QXhDc3BMSjtBd0NucExFOztFQUVFLGMxQmZZO0FkcXFMaEI7QXdDbnBMRTtFQUNFLG1CQUFBO0F4Q3NwTEo7QXdDbnBMRTtFQUNFLGExQnZCWTtBZDZxTGhCO0F3Q25wTEU7RUFDRSx5QjFCL0RTO0FkcXRMYjtBd0NwcExJO0VBQ0UseUIxQjNDTztBZGlzTGI7QXdDbnBMSTtFQUVFLGMxQm5DVTtFMEJvQ1YseUIxQnJDVTtFMEJzQ1YsbUJBQUE7QXhDb3BMTjtBd0NocExFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsVzFCSVc7RTBCSFgsWUFBQTtFQUNBLG9CQUFBO0VBQ0EsYTFCaEdNO0FkbXZMVjtBd0NocExJO0VBR0U7SUFDRSxnQkFBQTtFeENncExOO0FBQ0Y7QXdDNW9MRTtFQUdFLGtCQUFBO0VBQ0EsVzFCWFc7RTBCWVgsYTFCakdXO0FkOHVMZjtBd0Mxb0xFOztFQUdFLGMxQnRIUTtBZGt3TFo7QXdDem9MRTtFQUNFLG1CQUFBO0VBQ0EsWUFBQTtBeEM0b0xKO0F3Q3hvTEU7RUFDRTtJQUNFLGMxQmpJTTtJMEJrSU4seUIxQnZJSTtFZGt4TFI7O0V3Q3hvTEU7SUFDRSxjMUJ0SU07RWRpeExWO0FBQ0Y7QXdDeG9MRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0F4QzBvTEo7QXdDdm9MRTs7RUFHRSxzQkFBQTtFQUVBLHFCQUFBO0F4Q3dvTEo7QXdDcm9MRTtFQUNFLGdCQUFBO0VBQ0EsbUIxQjVEVztBZG9zTGY7QXdDcm9MRTtFQUNFLG9CQUFBO0VBQ0EsbUJBQUE7QXhDd29MSjtBd0Nyb0xFO0VBQ0UsbUIxQmpFVztFMEJrRVgsb0JuQmpNaUI7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Q3RoTUk7O0VBS0UsV3BCbkdlO0FyQnduTXJCO0F5Q2poTUU7RUFDRSxhcEJ6RmlCO0FyQjZtTXJCO0F5Q2poTUU7O0VBT0UsbUJBQUE7RUFDQSxZQUFBO0F6QytnTUo7QXlDemdNRTtFakM3REUsOEJBQUE7RUFDQSxvQkFBQTtFaUMrREEsYzNCekRZO0UyQjBEWix5QjNCM0RZO0UyQjREWixvQ0FBQTtFQUVBLHFDQUFBO0VBQ0EsbUJBQUE7QXpDMmdNSjtBeUN4Z01FO0VBQ0UseUIzQnRHUztBZGluTWI7QXlDeGdNRTtFQUNFLGMzQnRFWTtFMkJ1RVosVUFBQTtBekMyZ01KO0F5QzdnTUU7RUFDRSxjM0J0RVk7RTJCdUVaLFVBQUE7QXpDMmdNSjtBeUNyZ01FO0VqQ3pGRSwwQkFBQTtFQUNBLG9CQUFBO0VpQzJGQSxnQkFBQTtBekN3Z01KO0F5Q3RnTUk7O0VBR0UsYXBCekllO0FyQmdwTXJCO0F5Q2hnTUU7RUFDRSxrQkFBQTtFQUNBLG1CM0JuSVM7RTJCb0lULCtHQUFBO0F6Q21nTUo7QXlDLy9MRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFVwQnpLaUI7RW9CMEtqQixVQUFBO0VBQ0EsU0FBQTtBekNrZ01KO0F5Qy8vTEU7RUFDRSxhQUFBO0F6Q2tnTUo7QXlDLy9MRTtFQUNFLGdCQUFBO0VBQ0EsNEJBQUE7QXpDa2dNSjtBeUMvL0xFOztFQUVFLGFBQUE7QXpDa2dNSjtBeUMvL0xFOztFQUVFLG1CQUFBO0F6Q2tnTUo7QXlDLy9MRTs7RUFNRSxjQUFBO0VBQ0EsY0FBQTtFQUNBLHFCM0J6TE07RTJCMExOLG1CQUFBO0VBQ0EsbUJBQUE7QXpDOC9MSjtBeUMzL0xFO0VBQ0UsU0FBQTtBekM4L0xKO0F5QzMvTEU7RUFDRSxtQjNCcExTO0Fka3JNYjtBeUMzL0xFO0VqQzFKRSw4QkFBQTtFQUNBLG9CQUFBO0FSeXBNSjtBeUMxL0xFO0VqQ3JLRSwwQkFBQTtFQUNBLG9CQUFBO0FSbXFNSjtBeUMxL0xFO0VqQ3BMRSwwQkFBQTtFQUNBLG9CQUFBO0FSa3JNSjtBeUNyL0xFO0VBQ0UsbUJBQUE7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T1Y7QStDenVPRTtFQUVFLGdCQUFBO0VBQ0EsV0FBQTtBL0MydU9KO0ErQ3h1T0U7RUFDRSxtQmpDNkJXO0VpQzVCWCxrQmpDNEJXO0VpQzNCWCxnQkFBQTtBL0MydU9KO0ErQ3h1T0U7O0VBRUUsbUJqQ3NCVztFaUNyQlgsa0JqQ3FCVztFaUNwQlgsY2pDM0VRO0VpQzRFUixtQmpDbEZNO0VpQ21GTiw2QkFBQTtFQUNBLGdDQUFBO0EvQzJ1T0o7QStDenVPSTs7RUFDRSxxQmpDYVM7QWQrdE9mO0ErQ3h1T0U7RUFDRTtJQUVFLDRCQUFBO0UvQzB1T0o7QUFDRjtBK0N0dU9FO0V2Q3BFRSwwQkFBQTtFQUNBLG9CQUFBO0FSNnlPSjtBK0NwdU9FO0VBR0UsYUFBQTtBL0NxdU9KO0ErQ2x1T0U7RUFHRTtJQUlFLFVBQUE7RS9DZ3VPSjtBQUNGO0ErQzd0T0U7RUFJRSxVQUFBO0EvQzR0T0o7QStDenRPRTs7OztFQWlCRSxVQUFBO0EvQytzT0o7QStDNXNPRTtFQUlFLGtCQUFBO0VBRUEsY0FBQTtFQUNBLG9CakN6RFc7QWRvd09mO0ErQ3RzT0k7O0VBQ0UseUJqQ3hIZ0I7QWRrME90QjtBK0Nwc09JOztFQUNFLHlCakNqSU87QWR5ME9iO0ErQ3BzT0U7O0VBRUUsY0FBQTtFQUNBLGNBQUE7RUFDQSxpQkFBQTtBL0N1c09KO0ErQ3BzT0U7RUFDRSxZQUFBO0EvQ3VzT0o7QStDcHNPRTtFQUNFLG1CakN0Rlc7QWQ2eE9mO0ErQ2hzT0U7RUFJRSxnQ0FBQTtBL0Nnc09KO0ErQzdyT0U7RUFJRSx5QmpDMU1NO0VpQzJNTiw2QkFBQTtFQUNBLGdDQUFBO0EvQzZyT0o7QStDMXJPRTtFQUlFLHlCakM1S1M7RWlDNktULDZCQUFBO0VBQ0EsZ0NBQUE7QS9DMHJPSjtBK0Nwck9FO0VBQ0Usa0JqQ3hIVztBZCt5T2Y7QStDcHJPRTtFQUVFLGdCQUFBO0VBRUEsY0FBQTtFQUNBLG1CakNoSVc7RWlDaUlYLGtCakNqSVc7RWlDa0lYLG1CakNyT007RWlDc09OLCtEQUFBO0EvQ3FyT0o7QStDbHJPRTs7OztFQUlFLFlB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RThEdm9WSTs7O0lBR0Usa0JBQUE7RTlEeW9WTjtFOER0b1ZJO0lBRUUsbUJoRDhDTztFZHlsVmI7QUFDRjtBaUI1bFZNO0U2QzVFSjtJQXFDSSxVQUFBO0lBQ0EsZUFBQTtFOUR1b1ZKO0FBQ0Y7QWlCbG1WTTtFNkM1RUo7SUEwQ0ksVUFBQTtFOUR3b1ZKO0FBQ0Y7QThEcm9WRTs7RUFFRSxrQmhEOEJXO0FkMG1WZjtBOERyb1ZFOzs7RUFHRSxtQmhEd0JXO0FkZ25WZjtBOERyb1ZFO0VBQ0UsbUJoRG9CVztBZG9uVmY7QThEcG9WSTtFQUNFLG1CekNoRmU7QXJCdXRWckI7QThEcG9WSTs7O0VBR0UsbUJoRFNTO0FkNm5WZjtBaUIvblZNO0U2Q2ZKO0lBWUksVUFBQTtFOURzb1ZKO0FBQ0Y7QWlCcG9WTTtFNkNmSjtJQWdCSSxVQUFBO0lBQ0EsZUFBQTtFOUR1b1ZKO0FBQ0Y7QWlCMW9WTTtFNkNmSjtJQXFCSSxVQUFBO0U5RHdvVko7QUFDRjtBOERwb1ZJO0VBQ0UsbUJ6Q3pHZTtBckJndlZyQjtBOERwb1ZJOzs7RUFHRSxtQmhEaEJTO0Fkc3BWZjtBaUJ4cFZNO0U2Q1VKO0lBWUksVUFBQTtFOURzb1ZKO0FBQ0Y7QWlCN3BWTTtFNkNVSjtJQWdCSSxVQUFBO0lBQ0EsZUFBQTtFOUR1b1ZKO0FBQ0Y7QWlCbnFWTTtFNkNVSjtJQXFCSSxVQUFBO0U5RHdvVko7RThEdG9WSTs7O0lBR0Usa0JBQUE7RTlEd29WTjtFOERyb1ZJO0lBRUUsbUJoRHZDTztFZDZxVmI7QUFDRjtBOERqb1ZJO0VBQ0UsbUJ6QzdJZTtBckJpeFZyQjtBOERqb1ZJOzs7RUFHRSxtQmhEcERTO0FkdXJWZjtBaUJ6clZNO0U2QzhDSjtJQVlJLFVBQUE7RTlEbW9WSjtFOERqb1ZJOzs7SUFHRSxrQkFBQTtFOURtb1ZOO0U4RGhvVkk7SUFFRSxtQmhEbEVPO0VkbXNWYjtBQUNGO0FpQnRzVk07RTZDOENKO0lBMkJJLFVBQUE7SUFDQSxlQUFBO0U5RGlvVko7QUFDRjtBaUI1c1ZNO0U2QzhDSjtJQWdDSSxVQUFBO0U5RGtvVko7QUFD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RTJDSWpCLGNsRDRCVztBZDArVmY7QWlCejVWTTtFK0MxSEo7SUFnQkksaUJBQUE7SUFDQSxnQkFBQTtFaEV1Z1dKO0FBQ0Y7QWlCLzVWTTtFK0MxSEo7SUFxQkksZ0JBQUE7RWhFd2dXSjtBQUNGO0FpQnA2Vk07RStDMUhKO0lBeUJJLGdCQUFBO0VoRXlnV0o7QUFDRjtBZ0V0Z1dFO0VBRUUsY2xET2E7QWRpZ1dqQjtBZ0VyZ1dFO0VBQ0UscUJBQUE7QWhFd2dXSjtBZ0VyZ1dFO0VBQ0UsMEJBQUE7QWhFd2dXSjtBZ0VyZ1dFO0VBQ0UsMEJBQUE7QWhFd2dXSjtBZ0VyZ1dFO0V4RERFLDBCQUFBO0FSMGdXSjtBZ0VwZ1dFO0VBRUUsY0FBQTtBaEVzZ1dKO0FnRXBnV0k7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0Esc0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0VBQ0EsMkJBQUE7RUFDQSxvQkFBQTtFQUNBLFdBQUE7RUFDQSxvQkFBQTtBaEVzZ1dOO0FnRWxnV0U7RUN6REEsbUJuRDZCYTtFbUQ1QmIsOEJBQUE7QWpFK2pXRjtBaUU3aldFOztFQUVFLGFuRDZCbUI7QWRraVd2QjtBZ0V2Z1dFO0VDN0RBLG1CL0JtRG9CO0UrQmxEcEIsOEJBQUE7QWpFd2tXRjtBaUV0a1dFOztFQUVFLGFuRHlCVztBZCtpV2Y7QWdFMWdXSTtFQUNFLHFCbER0Q1M7QWRraldmO0FnRXhnV0U7RUN4RUEsbUJuRDZCYTtFbUQ1QmIsOEJBQUE7QWpFb2xXRjtBaUVsbFdFOztFQUVFLGFuRDhCbUI7QWRzald2QjtBZ0U3Z1dFO0VDNUVBLG1CL0JrQnNCO0UrQmpCdEIsOEJBQUE7QWpFNmxXRjtBaUUzbFdFOztFQUVFLGFuRDBCVztBZG1rV2Y7QWdFaGhXSTtFQUNFLHFCbERwRFM7QWRza1dmO0FnRTlnV0U7O0VDdkZBLG1CbkQ2QmE7RW1ENUJiLDhCQUFBO0FqRTBtV0Y7QWlFeG1XRTs7OztFQUVFLGFuRGdDbUI7QWQ0a1d2QjtBZ0VyaFdFOztFQzVGQSxtQi9CdEJxQjtFK0J1QnJCLDhCQUFBO0FqRXNuV0Y7QWlFcG5XRTs7OztFQUVFLGFuRDRCVztBZDRsV2Y7QWdFMWhXSTs7RUFDRSxxQmxEbkVTO0FkZ21XZjtBZ0V6aFdFOztFQ3hHQSxtQm5ENkJhO0VtRDVCYiw4QkFBQTtBakVzb1dGO0FpRXBvV0U7Ozs7RUFFRSxhbkQrQm1CO0FkeW1XdkI7QWdFaGlXRTs7RUM3R0EsbUI3Q29Qc0M7RTZDblB0Qyw4QkFBQTtBakVrcFdGO0FpRWhwV0U7Ozs7RUFFRSxhbkQyQlc7QWR5bldmO0FnRXJpV0k7O0VBQ0UscUJsRHJGUztBZDZuV2Y7QWdFcGlXRTtFQUdFLFVBQUE7RUFDQSxhOUJpSWtCO0FsQ282VnRCO0FnRWxpV0U7RUFDRSxhQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0FoRXFpV0o7QWlCM2pXTTtFK0NtQko7SUFNSSxjQUFBO0VoRXNpV0o7QUFDRjtBZ0VuaVdFO0VBQ0UsY0FBQTtFQUNBLG9CQUFBO0VBQ0Esa0IzQ2pKaUI7QXJCdXJXckI7QWdFbmlXRTtFQUNFLGFBQUE7RUFDQSxlQUFBO0VBQ0Esb0JBQUE7QWhFc2lXSjtBZ0VuaVdFO0V6RHNWRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0V5RHhnQnRCLHFCQUFBO0FoRXdpV0o7QWdFcmlXRTtFekRnVkUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFeURsZ0J0QixzQkFBQTtBaEUwaVdKO0FnRXZpV0U7RUFDRSxZQUFBO0VBQ0EscUIzQ2xMaUI7RTJDbUxqQixtQjNDMUppQjtFMkMySmpCLGNsRDdJYTtBZHVyV2pCO0FpQm5tV007RStDcURKO0lBT0ksZ0JBQUE7RWhFMmlXSjtBQUNGO0FnRXhpV0U7RUFFRSxjbER2SlE7QWRpc1daO0FnRXZpV0U7O0VBRUUseUJsRDNIaUI7QWRxcVdyQjtBZ0V2aVdFOztFQUlFLHlCOUIyS2dCO0FsQzYzVnBCO0FnRXJpV0U7RUFDRSx5QkFBQTtFQUNBLDBCQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtBaEV3aVdKO0FnRXJpV0U7RUFFRSxzQmxEOUpNO0FkcXNXVjtBZ0VwaVdFO0VBRUUsb0IzQzFOaUI7QXJCZ3dXckI7QWdFbmlXRTtFeER2SkUsOEJBQUE7RUFDQSxvQkFBQTtFd0R5SkEsa0JBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLHVCQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7RUFDQSxpSEFBQTtBaEVzaVdKO0FnRW5pV0k7RUFDRSwwQkFBQTtFQUNBLG9CQUFBO0FoRXFpV047QWdFbGlXSTtFQUNFLGFsRDlNUztBZGt2V2Y7QWlCanFXTTtFK0NrR0o7SUErQkksZ0JBQUE7RWhFb2lXSjtBQUNGO0FnRWppV0U7RXhEek1FLDBCQUFBO0VBQ0Esb0JBQUE7QVI4dVdKO0FnRWppV0U7RUFHRSxhQUFBO0FoRWtpV0o7QWdFL2hXRTtFQUVFLGNsRDFQZTtBZDJ4V25CO0FnRS9oV0k7RUFDRSxjbEQ3UGE7QWQ4eFduQjtBZ0U5aFdJO0VBRUUseUI5QitGYztBbENnOFZwQjtBa0VueldFO0VBR0UsYUFBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0VBQ0Esa0I3Q1BpQjtFNkNRakIsa0I3Q0VpQjtFNkNEakIscUI3Q1RpQjtFNkNVakIsc0JBQUE7RUFDQSxjcEQrQlc7RW9EOUJYLDBDQUFBO0FsRW96V0o7QWtFbHpXSTtFQUNFLGdCN0NMZTtBckJ5eldyQjtBaUJ4c1dNO0VpRDFISjtJQWtCSSxZQUFBO0VsRW96V0o7QUFDRjtBa0VqeldFO0VBRUUsY3BEY2E7QWRxeVdqQjtBa0VoeldFO0VBQ0UscUJBQUE7QWxFbXpXSjtBa0VoeldFO0VBQ0UsMEJBQUE7QWxFbXpXSjtBa0VoeldFO0VBQ0UsMEJBQUE7QWxFbXpXSjtBa0VoeldFO0UxRE1FLDBCQUFBO0FSOHlXSjtBa0UveVdFO0VBRUUsY0FBQTtBbEVpeldKO0FrRTl5V0U7RURwQ0EsbUJuRDZCYTtFbUQ1QmIsOEJBQUE7QWpFczFXRjtBaUVwMVdFOztFQUVFLGFuRDZCbUI7QWR5eld2QjtBa0VueldFO0VEeENBLG1CL0JtRG9CO0UrQmxEcEIsOEJBQUE7QWpFKzFXRjtBaUU3MVdFOztFQUVFLGFuRHlCVztBZHMwV2Y7QWtFcnpXRTtFRC9DQSxtQm5ENkJhO0VtRDVCYiw4QkFBQTtBakV3MldGO0FpRXQyV0U7O0VBRUUsYW5EOEJtQjtBZDAwV3ZCO0FrRTF6V0U7RURuREEsbUIvQmtCc0I7RStCakJ0Qiw4QkFBQTtBakVpM1dGO0FpRS8yV0U7O0VBRUUsYW5EMEJXO0FkdTFXZjtBa0U1eldFOztFRDFEQSxtQm5ENkJhO0VtRDVCYiw4QkFBQTtBakUyM1dGO0FpRXozV0U7Ozs7RUFFRSxhbkRnQ21CO0FkNjFXdkI7QWtFbjBXRTs7RUQvREEsbUIvQnRCcUI7RStCdUJyQiw4QkFBQTtBakV1NFdGO0FpRXI0V0U7Ozs7RUFFRSxhbkQ0Qlc7QWQ2MldmO0FrRXYwV0U7O0VEdkVBLG1CbkQ2QmE7RW1ENUJiLDhCQUFBO0FqRW01V0Y7QWlFajVXRTs7OztFQUVFLGFuRCtCbUI7QWRzM1d2QjtBa0U5MFdFOztFRDVFQSxtQjdDb1BzQztFNkNuUHRDLDhCQUFBO0FqRSs1V0Y7QWlFNzVXRTs7OztFQUVFLGFuRDJCVztBZHM0V2Y7QWtFbDFXRTtFQUdFLFVBQUE7RUFDQSxhaENzS2tCO0FsQzZxV3RCO0FrRWgxV0U7RUFDRSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSxzQkFBQTtBbEVtMVdKO0FrRWgxV0U7RUFDRSxrQjdDdEdpQjtBckJ5N1dyQjtBa0VoMVdFO0UxRDdDRSw4QkFBQTtFQUNBLG9CQUFBO0UwRCtDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLFVBQUE7RUFDQSw2QkFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0VBQ0EsaURBQUE7QWxF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RSs4Yk47QXFFMzhiRTtFbENyREEsY2tDd0RJO0VsQ3ZESix5QmtDc0RJO0FyRTg4Yk47QW1DamdjSTtFQUNFLHlCa0NvREE7QXJFKzhiTjtBcUUzOGJFO0VsQzdEQSxja0NnRUk7RWxDL0RKLHlCa0M4REk7QXJFODhiTjtBbUN6Z2NJO0VBQ0UseUJrQzREQTtBckUrOGJOO0FxRTM4YkU7RWxDckVBLGNrQ3dFSTtFbEN2RUoseUJrQ3NFSTtBckU4OGJOO0FtQ2poY0k7RUFDRSx5QmtDb0VBO0FyRSs4Yk47QXFFMzhiRTtFbEM3RUEsY2tDZ0ZJO0VsQy9FSix5QmtDOEVJO0FyRTg4Yk47QW1DemhjSTtFQUNFLHlCa0M0RUE7QXJFKzhiTjtBcUUzOGJFO0VsQ3JGQSxja0N3Rkk7RWxDdkZKLHlCa0NzRkk7QXJFODhiTjtBbUNqaWNJO0VBQ0UseUJrQ29GQTtBckUrOGJOO0FxRTM4YkU7RWxDN0ZBLGNrQ2dHSTtFbEMvRkoseUJrQzhGSTtBckU4OGJOO0FtQ3ppY0k7RUFDRSx5QmtDNEZBO0FyRSs4Yk47QXFFMzhiRTtFbENyR0EsY2tDd0dJO0VsQ3ZHSix5QmtDc0dJO0FyRTg4Yk47QW1DampjSTtFQUNFLHlCa0NvR0E7QXJFKzhiTjtBcUUzOGJFO0VsQzdHQSxja0NnSEk7RWxDL0dKLHlCa0M4R0k7QXJFODhiTjtBbUN6amNJO0VBQ0UseUJrQzRHQTtBckUrOGJOO0FxRTM4YkU7RWxDckhBLGNyQnFEYTtFcUJwRGIseUJyQnFEYTtBZCtnY2Y7QW1DamtjSTtFQUNFLHlCckI2RWU7QWRzL2JyQjtBcUUvOGJFOztFbEN6SEEsY3JCd0ZjO0VxQnZGZCx5QnJCc0ZjO0FkdS9iaEI7QW1DMWtjSTs7RUFDRSx5QnJCa0ZVO0FkMi9iaEI7QXFFcjliSTs7RUFDRSxtQkFBQTtBckV3OWJOO0FxRXA5YkU7RUFDRSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0FyRXU5Yko7QXFFbjliRTtFQUNFLHVCQUFBO0VBQ0EsZUFBQTtBckVzOWJKO0FxRXA5Ykk7RUFDRSxhQUFBO0FyRXM5Yk47QXFFbDliRTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0VBQ0EsNkJBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0FyRXE5Yko7QXFFbjliSTtFQUNFLGtCQUFBO0FyRXE5Yk47QXFFajliRTtFQUNFLG1CQUFBO0FyRW85Yko7QXFFajliRTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLG1DQUFBO0FyRW85Yko7QXFFajliRTtFQUNFLG1DQUFBO0FyRW85Yko7QXFFajliRTtFQUVFLDZCQUFBO0FyRW05Yko7QXFFaDliRTtFQUNFLGF2RGhHWTtBZG1qY2hCO0FxRS84YkU7RTdENUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CTXJEYztFTnNEZCxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFMkJySkEsY3JCd0NVO0VxQnZDVix5QnJCb0NRO0V1RDJKTixjQUFBO0VBQ0EsZ0JBQUE7QXJFdTliSjtBUWpnY0U7RUFHRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QVJpZ2NKO0FROS9iRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLG1CTXZFWTtFTndFWix1REFBQTtVQUFBLCtDQUFBO0VBQ0EsV0FBQTtBUmdnY0o7QVE5L2JJO0VBVkY7SUFXSSx1QkFBQTtZQUFBLGVBQUE7RVJpZ2NKO0FBQ0Y7QW1DeHFjSTtFQUNFLHlCckJnQ0k7QWQwb2NWO0FzRWxxY0U7RUFDRSxhQUFBO0F0RXFxY0o7QXNFbHFjRTtFL0RvZkUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFK0RycUJ0QixhQUFBO0VBQ0EsbUJBQUE7RUFDQSw4QkFBQTtFQUVBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJ4RE9NO0V3RE5OLDZCQUFBO0F0RXFxY0o7QWlCNWpjTTtFcURySEo7SUFlSSxpQkFBQTtFdEVzcWNKO0FBQ0Y7QWlCcmljSTtFcUQ3SEU7O0lBRUUsYUFBQTtFdEVxcWNOO0VzRWxxY0k7O0lBRUUsZ0JBQUE7RXRFb3FjTjtBQUNGO0FzRWhxY0U7RUFDRSxtQkFBQTtFQUNBLFlBQUE7QXRFbXFjSjtBc0VocWNFO0VBQ0UsYUFBQTtFQUNBLFlBQUE7QXRFbXFjSjtBc0VocWNFO0UvRDBjRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0UrRDVuQnRCLFdBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLHlCQUFBO0F0RXFxY0o7QXNFbHFjRTtFQUNFLG1CeERNUztBZCtwY2I7QXNFbHFjRTtFQUNFLFFBQUE7RUFDQSxtQ0FBQTtBdEVxcWNKO0FzRWxxY0U7RUFHRSxxQ0FBQTtBdEVtcWNKO0FzRWhxY0U7RUFHRSw4QkFBQTtBdEVpcWNKO0FzRTlwY0U7O0VBRUUsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsWUFBQTtBdEVpcWNKO0FzRTlwY0U7O0VBRUUsWUFBQTtBdEVpcWNKO0FzRTlwY0U7O0VBRUUsbUJBQUE7QXRFaXFjSjtBc0U5cGNFO0VBQ0UsdUJBQUE7QXRFaXFjSjtBc0U5cGNFO0VBQ0Usa0JBQUE7RUFDQSxzQkFBQTtBdEVpcWNKO0FzRTlwY0U7RUFDRSxlQUFBO0F0RWlxY0o7QWlCL29jTTtFcURmSjtJQUVJLHFCQUFBO0V0RWlxY0o7QUFDRjtBc0U5cGNFO0VBQ0UsaUJqRHpHaUI7RWlEMEdqQixjeER0RlE7QWR1dmNaO0FzRTlwY0U7O0VBSUUsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxXakRoR2lCO0VpRGlHakIsWUFBQTtFQUNBLFNBQUE7RUFDQSxnQkFBQTtFQUVBLFlBQUE7RUFDQSw4QkFBQTtFQUNBLGVBQUE7RUFDQSxpSEFBQTtFQUVBLGF4RDVHTTtBZHl3Y1Y7QXNFMXBjSTtFQXBCRjs7SUF1QkksNkJBQUE7RXRFNHBjSjtBQUNGO0FzRXpwY0U7O0U5RDNGRSwwQkFBQTtFQUNBLG9CQUFBO0U4RDhGQSxjQUFBO0F0RTRwY0o7QXNFenBjRTs7RUFFRSxtQnhEM0ZTO0FkdXZjYjtBc0V6cGNFOztFQUVFLG1CQUFBO0VBQ0EsYXhEcEZZO0FkZ3ZjaEI7QXNFenBjRTs7OztFQUlFLG1CeERoSk07RXdEaUpOLHFCeEQvSU07RXdEZ0pOLG1CQUFBO0VBQ0EsYXhEOUZZO0FkMHZjaEI7QXNFeHBjRTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7QXRFMnBjSjtBdUVyMWNBO0VBQ0U7SUFaQSxZQUFBO0lBQ0EsbUJBQUE7SUFDQSxVQUFBO0V2RXEyY0E7RXVFeDFjQTtJQVRBLFNBQUE7SUFDQSxrQkFBQTtJQUNBLFVBQUE7RXZFbzJjQTtBQUNGO0F1RWwyY0E7RUFDRTtJQVpBLFlBQUE7SUFDQSxtQkFBQTtJQUNBLFVBQUE7RXZFcTJjQTtFdUV4MWNBO0lBVEEsU0FBQTtJQUNBLGtCQUFBO0lBQ0EsVUFBQTtFdkVvMmNBO0FBQ0Y7QXVFejFjQTtFQUNFO0lBZkEsU0FBQTtJQUNBLGtCQUFBO0lBQ0EsVUFBQTtFdkUyMmNBO0V1RTMxY0E7SUF4QkEsWUFBQTtJQUNBLG1CQUFBO0lBQ0EsVUFBQTtFdkVzM2NBO0FBQ0Y7QXVFcjJjQTtFQUNFO0lBZkEsU0FBQTtJQUNBLGtCQUFBO0lBQ0EsVUFBQTtFdkUyMmNBO0V1RTMxY0E7SUF4QkEsWUFBQTtJQUNBLG1CQUFBO0lBQ0EsVUFBQTtFdkVzM2NBO0FBQ0Y7QXdFeDJjRTtFQUdFLFdBQUE7RUFDQSxnQkFBQTtBeEV3MmNKO0F3RXIyY0U7RUFDRSxpQkFBQTtFQUNBLDZCQUFBO0VBQ0EscURBQUE7QXhFdzJjSjtBd0V0MmNJO0VBQ0UsZ0NBQUE7QXhFdzJjTjtBd0VwMmNFO0VoRWtHQSxxQkFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxlQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBR0UsV0FBQTtFZ0V2R0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0EsMkJwRHFIdUI7RW9EcEh2Qix1QkFBQTtFQUNBLDJCcER3SHdCO0VvRHZIeEIsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLG1CQUFBO0VBQ0EsYzFER1E7RTBERlIsZUFBQTtFQUNBLGtFQUFBO0F4RTQyY0o7QVE3d2NFO0VBQ0UsU0FBQTtBUit3Y0o7QXdFNzJjSTtFQUVFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0Esd0JBQUE7RUFDQSxXQUFBO0F4RTgyY047QXdFMzJjSTtFQUNFLHlCMUR1Qk87QWRzMWNiO0F3RTEyY0k7RUFDRSxhQUFBO0F4RTQyY047QXdFejJjSTtFaEVZQSxzQkFBQTtFQUNBLHlCQUFBO0FSZzJjSjtBd0V2MmNFO0VBQ0UsZ0JBQUE7QXhFMDJjSjtBd0V2MmNFO0VBQ0UsZ0JBQUE7RUFDQSxvQkFBQTtBeEUwMmNKO0F3RXQyY0U7RUFDRSxjMURZWTtFMERYWixtQkFBQTtBeEV5MmNKO0F3RXQyY0U7RUFDRSxhMURPWTtBZGsyY2hCO0F3RXQyY0U7RUFDRSw2QkFBQTtBeEV5MmNKO0F3RXQyY0U7O0VBRUUsNkJBQUE7QXhFeTJjSjtBd0V0MmNFO0VBQ0UsZ0NBQUE7QXhFeTJjSjtBd0V0MmNFO0VoRWhCRSw4QkFBQTtFQUNBLG9CQUFBO0VnRW1CQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxvQnBEcURxQjtFb0RuRHJCLHdCQUFBO0VBQ0EscURBQUE7RUFDQSxhMURyRU07QWQ0NmNWO0F3RXAyY0k7RUFkRjtJQWlCSSxnQkFBQTtFeEVxMmNKO0FBQ0Y7QXdFbDJjRTtFakUrWUUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFaUVqa0J0QixVQUFBO0VBQ0EsV0FBQTtFQUNBLGtCcER1Q3FCO0VvRHRDckIsZ0JBQUE7QXhFdTJjSjtBd0VwMmNFO0VBQ0UsYUFBQTtFQUNBLG1CbkQ1R2lCO0VtRDZHakIsa0JuRDdHaUI7RW1EK0dqQix5REFBQTtBeEVzMmNKO0FpQjcyY0k7RXVERUY7SUFTSSxtQm5EL0ZlO0VyQnE4Y25CO0FBQ0Y7QWlCbDNjSTtFdURFRjtJQWFJLGtCQUFBO0V4RXUyY0o7QUFDRjtBd0VyMmNJO0VqRXNYQSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0FQZzBiMUI7QXdFdDJjRTtFQUVFLG1CQUFBO0F4RXcyY0o7QXdFcjJjRTtFQUVFLHNCQUFBO0F4RXUyY0o7QXdFcDJjRTtFQUNFLG1CbkRySWlCO0FyQjQrY3JCO0F3RXAyY0U7O0VBRUUsY0FBQTtBeEV1MmNKO0F3RXAyY0U7RUFDRSwyRUFBQTtVQUFBLG1FQUFBO0F4RXUyY0o7QXdFbjJjRTtFQUNFLHlFQUFBO1VBQUEsaUVBQUE7QXhFczJjSjtBd0VuMmNFO0VBQ0UsaUJBQUE7QXhFczJjSjtBd0VwMmNJO0VBQ0UsY0FBQTtFQUNBLG1CMUQvQ1M7RTBEZ0RULHNCbkQ1SmU7RW1EOEpmLCtHQUFBO0F4RXEyY047QXdFajJjSTtFQUNFLGVBQUE7RUFDQSx5QkFBQTtFQUNBLGExRHhKSTtBZDIvY1Y7QXdFaDJjTTtFQU5GO0lBU0ksZ0JBQUE7RXhFaTJjTjtBQUNGO0F3RTUxY0U7O0VBRUUsZUFBQTtBeEUrMWNKO0F3RTUxY0U7RUFDRSxlQUFBO0VBQ0Esb0JBQUE7RUFDQSxhMUQ1S007QWQyZ2RWO0F3RTcxY0k7RUFHRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QXhFNjFjTjtBd0V6MWNFO0VBRUUsNkJBQUE7QXhFMjFjSjtBd0V4MWNFO0VBRUUsaUIxRDdGVztBZHU3Y2Y7QXdFdjFjRTtFQUdFLFlBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtBeEV3MWNKO0F3RXIxY0U7RUFDRSxnQkFBQTtBeEV3MWNKO0F5RWprZEU7RUFHRSxhQUFBO0VBQ0EsZ0JBQUE7QXpFa2tkSjtBeUUvamRFO0VBQ0Usa0JBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtBekVra2RKO0F5RWhrZEk7RUFDRSxjQUFBO0F6RWtrZE47QXlFOWpkRTtFQUNFLFlBQUE7RUFDQSxlQUFBO0F6RWlrZEo7QXlFOWpkRTtFQUNFLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0VBQ0EsNkJyRHVQMkI7QXBCMDBjL0I7QXlFOWpkRTtFQUNFLFdBQUE7RUFDQSxlQUFBO0F6RWlrZEo7QXlFOWpkRTtFQUNFLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLGNBQUE7RUFDQSxXcEQ3QmlCO0VvRDhCakIsWXBEOUJpQjtFb0QrQmpCLDJCQUFBO0VBQ0Esa0JBQUE7RUFDQSxhM0RyQmU7QWRzbGRuQjtBeUU5amRFO0VsRTRjRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VrRTluQnRCLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtFQUNBLGMzRHZCUTtFMkR3QlIsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EseUdBQUE7QXpFbWtkSjtBeUVoa2RJO0VBQ0UsY0FBQTtFQUNBLFdBQUE7QXpFa2tkTjtBeUU5amRFO0VBQ0UsYzNENUJRO0UyRDZCUiwrQkFBQTtFQUNBLGVBQUE7QXpFaWtkSjtBeUU5amRFO0VBQ0UsYzNEbENRO0UyRG1DUixhQUFBO0VBQ0EsbUNBQUE7QXpFaWtkSjtBeUU5amRFO0VBQ0UsZUFBQTtFQUNBLHFCQUFBO0F6RWlrZEo7QXlFOWpkRTtFQUNFLGMzRGhFZTtFMkRpRWYsbUNBQUE7QXpFaWtkSjtBeUU3amRFOztFQUVFLG1CQUFBO0F6RWdrZEo7QXlFN2pkRTtFQUNFLHFCQUFBO0F6RWdrZEo7QXlFN2pkRTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7QXpFZ2tkSjtBeUU1amRFO0VsRWtaRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VrRXBrQnRCLGNBQUE7RUFDQSxnQkFBQTtFQUVBLG9CQUFBO0VBQ0Esa0JwRGhHaUI7RW9EaUdqQixrQkFBQTtFQUNBLHFCQUFBO0VBQ0Esb0JBQUE7RUFDQSxjM0R6RVc7RTJEMEVYLGtCQUFBO0F6RWdrZEo7QXlFNWpkRTtFbEVrWUUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFa0VwakJ0QixlQUFBO0VBQ0EsWUFBQTtFQUNBLGMzRG5GVztBZG9wZGY7QXlFN2pkRTtFbEV5WEUsa0JBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFa0UzaUJ0QixrQkFBQTtFQUNBLE9BQUE7RUFDQSxtQkFBQTtFQUNBLG1CcER4SGlCO0VvRHlIakIsYzNEMUdRO0UyRDJHUixpQkFBQTtBekVra2RKO0F5RTdqZEk7RUFDRSx5QjNEekhhO0FkeXJkbkI7QXlFMWpkSTtFQUNFLGEzRDFISTtBZHVyZFY7QXlFMWpkSTtFQUNFLHlCM0RoSUk7QWQ0cmRWO0F5RXRqZEk7RUFDRSx5QjNEM0lhO0Fkb3NkbkI7QXlFcGpkRTtFakV0REEscUJBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsZUFBQTtFQUNBLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUdFLFdBQUE7RWlFaURBLGFBQUE7RUFDQSxnQkFBQTtBekU0amRKO0FRM21kRTtFQUNFLFNBQUE7QVI2bWRKO0F5RTNqZEU7RUFDRSxhQUFBO0VBQ0EsZUFBQTtBekU4amRKO0F5RTNqZEU7RUFFRSxjM0R4SlE7RTJEeUpSLGdCQUFBO0VBQ0EsZUFBQTtBekU2amRKO0F5RTFqZEU7RUFFRSxjM0R0SlE7RTJEdUpSLCtCQUFBO0VBQ0EsZUFBQTtBekU0amRKO0F5RXhqZEU7RUFDRSxtQkFBQTtFQUNBLG9CQUFBO0F6RTJqZEo7QXlFempkSTtFQUNFLG1CQUFBO0VBQ0EsYTNEM0hVO0Fkc3JkaEI7QXlFeGpkSTs7RUFFRSxjM0RoSVU7RTJEaUlWLGdCQUFBO0VBQ0EsbUJBQUE7QXpFMGpkTjtBeUV2amRJOztFQUVFLGFBQUE7RUFDQSxnQkFBQTtBekV5amROO0F5RXRqZEk7RUFDRSxtQkFBQTtBekV3amROO0F5RXJqZEk7RUFHRSxhQUFBO0F6RXFqZE47QXlFaGpkRTtFQUNFLGEzRHpMVztBZDR1ZGY7QXlFL2lkRTtFakVwR0Esa0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJNckRjO0VOc0RkLFlBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0VpRWtHRSxhQUFBO0VBRUEsZUFBQTtBekVxamRKO0FRdnBkRTtFQUdFLFlBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtBUnVwZEo7QVFwcGRFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0EsbUJNdkVZO0VOd0VaLHVEQUFBO1VBQUEsK0NBQUE7RUFDQSxXQUFBO0FSc3BkSjtBUXBwZEk7RUFWRjtJQVdJLHVCQUFBO1lBQUEsZUFBQTtFUnVwZEo7QUFDRjtBeUVwa2RFO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0F6RXVrZEo7QXlFcGtkRTs7RUFFRSxlQUFBO0VBQ0EseUJBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtBekV1a2RKO0F5RXBrZEU7O0VBRUUscUJBQUE7RUFFQSwwQkFBQTtBekVza2RKO0F5RW5rZEU7RUFDRSxxQkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0F6RXNrZEo7QXlFbmtkRTtFQUNFLGtCQUFBO0F6RXNrZEo7QXlFbmtkRTtFQUNFLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUJwRHJRaUI7QXJCMjBkckI7QXlFbmtkRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtBekVza2RKO0EwRTEyZEU7RW5FNmZFLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RW1FOXFCdEIsZUFBQTtBMUU4MmRKO0FpQnB2ZE07RXlEOUhKO0lBT0ksYUFBQTtJQUNBLGVBQUE7RTFFKzJkSjtBQUNGO0EwRTUyZEU7RUFDRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLG9CckRiaUI7QXJCNDNkckI7QTBFNTJkRTtFQUNFLGM1RHFCUTtBZDAxZFo7QTBFNTJkRTtFQUNFLG1CckRyQmlCO0VxRHNCakIsYzVET1E7RTRETlIsWUFBQTtBMUUrMmRKO0EwRTUyZEU7RUFFRSxXQUFBO0ExRTgyZEo7QTBFMzJkRTs7RUFFRSxlQUFBO0ExRTgyZEo7QTBFMzJkRTtFQUNFLG1CQUFBO0ExRTgyZEo7QTBFMzJkRTs7RUFHRSxjNURkUTtFNERlUixZQUFBO0ExRTYyZEo7QTBFMzJkSTs7RUFDRSxxQkFBQTtBMUU4MmROO0EwRXoyZEU7RWxFaUZBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CTXJEYztFTnNEZCxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFa0VuRkUsY0FBQTtFQUNBLFlBQUE7QTFFZzNkSjtBUTV4ZEU7RUFHRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QVI0eGRKO0FRenhkRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLG1CTXZFWTtFTndFWix1REFBQTtVQUFBLCtDQUFBO0VBQ0EsV0FBQTtBUjJ4ZEo7QVF6eGRJO0VBVkY7SUFXSSx1QkFBQTtZQUFBLGVBQUE7RVI0eGRKO0FBQ0Y7QTJFeDdkRTtFQUNFLGFBQUE7RUFDQSxxQkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtBM0UyN2RKO0EyRXo3ZEk7RUFDRSxpQkFBQTtBM0UyN2ROO0EyRXg3ZEk7RUFDRSxZQUFBO0VBQ0EsNkJBQUE7RUFDQSxhQUFBO0EzRTA3ZE47QTJFdjdkSTtFQUNFLGFBQUE7QTNFeTdkTjtBMkV0N2RJO0VBQ0UscURBQUE7RUFDQSxhN0RJTTtBZG83ZFo7QTJFcjdkSTtFQUNFLFdBQUE7RUFDQSxjQUFBO0VBQ0Esc0JBQUE7RUFDQSxlQUFBO0VBQ0EscURBQUE7RUFDQSxhN0RMTTtBZDQ3ZFo7QTJFcDdkSTtFQUNFLFVBQUE7RUFDQSxTQUFBO0EzRXM3ZE47QTJFbjdkSTtFQUNFLGdCQUFBO0EzRXE3ZE47QTJFbjdkTTtFQUNFLGNBQUE7RUFDQSxtQkFBQTtBM0VxN2RSO0EyRWw3ZE07RUFDRSx5QjdEWEs7QWQrN2RiO0EyRWo3ZE07RUFDRSxjQUFBO0EzRW03ZFI7QTJFLzZkSTtFQUNFLGdCQUFBO0EzRWk3ZE47QTJFOTZkSTtFQUNFLGE3RG1CTztBZDY1ZGI7QTJFNTZkRTtFQUNFLGFBQUE7RUFDQSxxREFBQTtBM0UrNmRKO0EyRTU2ZEU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSx1QkFBQTtFQUNBLFNBQUE7QTNFKzZkSjtBMkU3NmRJO0VuRXJDQSwwQkFBQTtBUnE5ZEo7QTJFMzZkRTtFQUNFLGdCQUFBO0VBQ0EsZUFBQTtBM0U4NmRKO0EyRTM2ZEU7RXBFNlpFLGtCQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RW9FL2tCdEIsdUJBQUE7RUFDQSxnQkFBQTtBM0VnN2RKO0EyRTc2ZEU7RUFDRSx1QkFBQTtBM0VnN2RKO0EyRTc2ZEU7RUFDRSxXQUFBO0VBQ0EsU0FBQTtFQUNBLDZCQUFBO0EzRWc3ZEo7QTJFNzZkRTtFQUNFLFlBQUE7QTNFZzdkSjtBMkU3NmRFO0VBRUUsbUJBQUE7QTNFKzZkSjtBNEVuaWVFO0VBQ0UsYUFBQTtFQUNBLHFCQUFBO0E1RXNpZUo7QTRFbmllRTtFQUNFLHVCQUFBO0E1RXNpZUo7QTRFcGllSTtFQUNFLGtCQUFBO0E1RXNpZU47QTRFbGllRTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtBNUVxaWVKO0E0RWxpZUU7RUFDRSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7QTVFcWllSjtBNEVsaWVFO0VwRTRDRSw4QkFBQTtFQUNBLG9CQUFBO0VEbWJBLHlHQXFMc0I7RUFyTHRCLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RXFFanBCdEIsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7RUFDQSwrR0FBQTtBNUV5aWVKO0E0RXRpZUk7RXBFVkYsY01NVTtFTkxWLFVBQUE7QVJtamVGO0E0RTFpZUk7RXBFVkYsY01NVTtFTkxWLFVBQUE7QVJtamVGO0E0RXJpZUU7RUFDRSx5QjlERlM7QWQwaWViO0E0RXRpZUk7RUFDRSx5QjlEa0JPO0Fkc2hlYjtBNEVyaWVJO0VBRUUsYzlEMEJVO0U4RHpCViw2QkFBQTtFQUNBLG9DQUFBO0VBQ0EsbUJBQUE7QTVFc2llTjtBNEVsaWVFOztFQUVFLFlBQUE7RUFDQSxnQkFBQTtBNUVxaWVKO0E0RWxpZUU7O0VBRUUsWUFBQTtFQUNBLGdCQUFBO0E1RXFpZUo7QTZFdm1lRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtBN0UwbWVKO0E2RXZtZUU7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtBN0UwbWVKO0E2RXZtZUU7RXRFMmVFLHlHQXFMc0I7RUFyTHRCLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RXNFN3BCdEIsYy9EV1E7RStEVlIsbUJBQUE7QTdFNm1lSjtBNkUzbWVJO0VBQ0Usa0J4RFplO0FyQnluZXJCO0E2RXptZUU7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLG1CL0RKTTtFK0RLTiw4QkFBQTtFQUNBLGVBQUE7QTdFNG1lSjtBNkV6bWVJO0VBVEY7SUFZSSw2QkFBQTtFN0UwbWVKO0FBQ0Y7QTZFdm1lRTtFQUNFLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLFNBQUE7RUFDQSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxlQUFBO0VBQ0EsbUIvRHZCTTtFK0R3Qk4sNkJBQUE7RUFDQSxXQUFBO0E3RTBtZUo7QTZFdm1lRTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsbUIvRDlCTTtFK0QrQk4sOEJBQUE7RUFDQSxzQkFBQTtFQUNBLDREQUFBO0VBQ0Esb0JBQUE7QTdFMG1lSjtBNkV2bWVJO0VBWEY7SUFjSSw2QkFBQTtFN0V3bWVKO0FBQ0Y7QTZFcm1lRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFVBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQi9EbERNO0UrRG1ETixrQkFBQTtFQUNBLGFBQUE7RUFDQSxvRUFBQTtFQUNBLGdDQUFBO0VBQ0EsZUFBQTtFQUNBLCtKQUFBO0E3RXdtZUo7QTZFcG1lSTtFQUVFLDhDQUFBO0E3RXFtZU47QTZFbG1lSTtFQUNFLHlCL0R4RWE7RStEeUViLDREQUFBO0VBRUEsOENBQUE7QTdFbW1lTjtBNkVobWVJO0VBQ0UsbUNBQUE7RUFDQSw4Q0FBQTtBN0VrbWVOO0E2RTlsZUk7RUFsQ0Y7SUFxQ0ksNkJBQUE7RTdFK2xlSjtBQUNGO0E2RTVsZUU7RUFDRSxhQUFBO0E3RStsZUo7QTZFNWxlRTs7RUFFRSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsMEJBQUE7QTdFK2xlSjtBNkU3bGVJOzs7RUFFRSxhQUFBO0E3RWdtZU47QTZFNWxlRTtFQUNFLHlCL0Q3R2U7QWQ0c2VuQjtBNkUzbGVFO0VBR0UsYy9EN0RZO0FkeXBlaEI7QTZFemxlRTtFQUNFLHlCL0RwSE07QWRndGVWO0E2RTFsZUk7RUFDRSxnQ0FBQTtFQUNBLG1CQUFBO0E3RTRsZU47QTZFemxlSTtFQUNFLHlCL0Q1SEk7RStENkhKLGFBQUE7RUFDQSxnQkFBQTtFQUNBLGdDQUFBO0E3RTJsZU47QTZFeGxlSTtFQUNFLG1CL0RuSUk7RStEb0lKLGdDQUFBO0E3RTBsZU47QTZFdGxlRTs7O0VBS0UseUIvRDdJTTtFK0Q4SU4sbUJBQUE7QTdFdWxlSjtBNkVwbGVFOztFQUlFLGMvRGxHWTtFK0RtR1oseUIvRHBHWTtFK0RxR1osWUFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7QTdFcWxlSjtBNkVubGVJOzs7O0VBR0UsYy9EM0dVO0UrRDRHVixhQUFBO0E3RXNsZU47QTZFamxlRTtFckV6REEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJNckRjO0VOc0RkLFlBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0VxRXdERSxjQUFBO0VBQ0EsZUFBQTtBN0V1bGVKO0FROW9lRTtFQUdFLFlBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtBUjhvZUo7QVEzb2VFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0EsbUJNdkVZO0VOd0VaLHVEQUFBO1VBQUEsK0NBQUE7RUFDQSxXQUFBO0FSNm9lSjtBUTNvZUk7RUFWRjtJQVdJLHVCQUFBO1lBQUEsZUFBQTtFUjhvZUo7QUFDRjtBNkV4bWVFO0VBRUUsZUFBQTtFQUNBLG9CQUFBO0E3RTBtZUo7QTZFdm1lRTtFQUVFLFNBQUE7RUFDQSxlQUFBO0VBQ0Esb0JBQUE7QTdFeW1lSjtBOEUxemVFO0VBQ0Usa0JBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsYXpETWlCO0V5RExqQix5QmhFbUJNO0VnRWxCTiw4QkFBQTtFQUNBLG9CQUFBO0E5RTZ6ZUo7QThFM3plSTtFdEU4Q0EsMEJBQUE7RUFDQSxvQkFBQTtBUmd4ZUo7QThFM3plTTtFQUpGO0lBTUksOEJBQUE7SUFDQSxvQkFBQTtFOUU2emVOO0FBQ0Y7QThFenplRTtFQUNFLHlCaEVHTTtBZHl6ZVY7QThFenplRTs7O0VBR0UsZUFBQTtFQUNBLGlEQUFBO0E5RTR6ZUo7QThFMXplSTs7O0VBQ0UsbUJoRWdDTztBZDh4ZWI7QThFeHplSTs7RXRFaUJBLDBCQUFBO0VBQ0Esb0JBQUE7QVI0eWVKO0E4RXh6ZU07OztFQUNFLFVBQUE7QTlFNHplUjtBOEV0emVFO0VBQ0UsU0FBQTtBOUV5emVKO0E4RXR6ZUU7RXZFbWNFLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RXVFcG5CdEIsY2hFOUJRO0VnRStCUixxQkFBQTtBOUUwemVKO0E4RXZ6ZUU7RUFDRSxtQnpEbENpQjtBckI0MWVyQjtBOEV2emVFOztFQUVFLGtCQUFBO0VBQ0EsdUJBQUE7RUFDQSxZQUFBO0VBQ0EsaURBQUE7QTlFMHplSjtBOEV2emVFO0VBQ0UsU0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtBOUUwemVKO0E4RXh6ZUk7RUFDRSxrQkFBQTtFQUNBLGFoRS9DTTtBZHkyZVo7QThFdnplSTtFdEUvQkEsMEJBQUE7RUFDQSxvQkFBQTtBUnkxZUo7QThFdHplRTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7RUFDQSxZQUFBO0E5RXl6ZUo7QThFdnplSTtFQUNFLHdCQUFBO0VBQ0EsaURBQUE7RUFDQSxhaEV4RUk7QWRpNGVWO0E4RXR6ZU07RUFORjtJQVNJLGdCQUFBO0U5RXV6ZU47QUFDRjtBOEVwemVJO0VBQ0UsZUFBQTtBOUVzemVOO0E4RW56ZUk7RUFDRSxhQUFBO0E5RXF6ZU47QThFanplRTtFQUNFLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLDREQUFBO0E5RW96ZUo7QThFanplRTtFQUNFLGNBQUE7QTlFb3plSjtBOEVqemVFO0VBQ0UsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLDJHQUFBO0E5RW96ZUo7QThFaHplRTtFQUNFLGlCQUFBO0VBQ0EsNERBQUE7QTlFbXplSjtBOEVqemVJO0VBQ0UsMEJBQUE7QTlFbXplTjtBOEVoemVJO0VBQ0UsbUJBQUE7RUFDQSxVQUFBO0VBQ0EsMkdBQUE7QTlFa3plTjtBOEU3eWVFO0VBQ0UsMEJBQUE7RUFDQSxvQkFBQTtBOUVnemVKO0E4RTd5ZUU7RUFDRSxVQUFBO0E5RWd6ZUo7QThFN3llRTtFQUlFLGFoRTlJTTtBZDI3ZVY7QThFMXllSTtFQVBGO0lBVUksZ0JBQUE7RTlFMnllSjtBQUNGO0E4RXh5ZUU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtBOUUyeWVKO0E4RXh5ZUU7RXRFN0ZBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxTQUFBO0VBQ0EsbUJBQUE7RUFDQSxzQkFBQTtBUnk0ZUY7QThFanplRTtFdEV0SUUsMEJBQUE7RUFDQSxvQkFBQTtBUjI3ZUo7QStFNS9lRTtFdkU4SUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJNckRjO0VOc0RkLFlBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0V1RWhKRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHFCMURJaUI7QXJCKy9lckI7QVFuM2VFO0VBR0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0FSbTNlSjtBUWgzZUU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSxtQk12RVk7RU53RVosdURBQUE7VUFBQSwrQ0FBQTtFQUNBLFdBQUE7QVJrM2VKO0FRaDNlSTtFQVZGO0lBV0ksdUJBQUE7WUFBQSxlQUFBO0VSbTNlSjtBQUNGO0ErRXBoZkU7RUFDRSxjQUFBO0EvRXVoZko7QWdGaGlmRTtFeEU4SUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJNckRjO0VOc0RkLFlBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0V3RWhKRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0FoRnVpZko7QVF2NWVFO0VBR0UsWUFBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0FSdTVlSjtBUXA1ZUU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSxtQk12RVk7RU53RVosdURBQUE7VUFBQSwrQ0FBQTtFQUNBLFdBQUE7QVJzNWVKO0FRcDVlSTtFQVZGO0lBV0ksdUJBQUE7WUFBQSxlQUFBO0VSdTVlSjtBQUNGO0FpRmhrZkU7RXpFOElBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CTXJEYztFTnNEZCxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFeUVoSkUsY0FBQTtFQUVBLGVBQUE7QWpGc2tmSjtBUXQ3ZUU7RUFHRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7QVJzN2VKO0FRbjdlRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLG1CTXZFWTtFTndFWix1REFBQTtVQUFBLCtDQUFBO0VBQ0EsV0FBQTtBUnE3ZUo7QVFuN2VJO0VBVkY7SUFXSSx1QkFBQTtZQUFBLGVBQUE7RVJzN2VKO0FBQ0Y7QTBCbG1mQTtFQUNFO0lBQ0UsdUJBQUE7RTFCcW1mRjtFMEJubWZBO0lBQ0UseUJBQUE7RTFCcW1mRjtBQUNGO0EwQmxtZkE7RUFDRTtJQUNFLHlCQUFBO0UxQm9tZkY7QUFDRjtBMEJqbWZBO0VBQ0U7SUFDRSwwQkFBQTtFMUJtbWZGO0FBQ0Y7QTBCaG1mQSxzQkFBQTtBQUNBO0VBQ0U7SUFDRSxzQkFBQTtFMUJrbWZGO0UwQmhtZkE7SUFDRSxxQkMxQlc7RTNCNG5mYjtBQUNGO0EwQi9sZkE7RUFDRTtJQUNFLHFCQ2hDVztFM0Jpb2ZiO0UwQi9sZkE7SUFDRSxzQkFBQTtFMUJpbWZGO0FBQ0Y7QWtGeG9mQTtFQUNFO0lBQ0Usb0JBQUE7RWxGMG9mRjtBQUNGO0FrRjdvZkE7RUFDRTtJQUNFLG9CQUFBO0VsRjBvZkY7QUFDRjtBbUZsb2ZFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0FuRm9vZko7QW1GbG9mSTtFQUNFLGdCQUFBO0FuRm9vZk47QW1Gam9mSTtFQUNFLHFCeERkZ0I7QTNCaXBmdEI7QW1GL25mRTtFNUU4ZUUsa0JBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFNEVocUJ0QixjckVlUTtBZHFuZlo7QW1Gam9mRTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBbkZvb2ZKO0FtRmpvZkU7RUFDRSxhckVpQlc7QWRtbmZmO0FtRmpvZkk7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0FuRm1vZk47QW1GaG9mSTtFQUNFLGFBQUE7QW5Ga29mTjtBbUY5bmZFO0VBQ0UseUJBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0EsaUNBQUE7VUFBQSx5QkFBQTtFQUNBLHFDQUFBO1VBQUEsNkJBQUE7RUFDQSxVQUFBO0VBQ0EsZXJFMUJlO0VxRTJCZixpQkFBQTtFQUNBLG9CQUFBO0VBQ0EscUJBQUE7QW5GaW9mSjtBbUY5bmZFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxhckViVztBZDhvZmY7QW1GL25mSTtFQUNFLGFBQUE7QW5GaW9mTjtBbUY3bmZFO0VBQ0UsZXJFM0NlO0FkMnFmbkI7QW1GOW5mRSx1Q0FBQTtBQUNBO0VBRUU7SUFDRSxRQUFBO0lBQ0EsYUFBQTtFbkZnb2ZKOztFbUY3bmZFO0lBQ0UsdUJBQUE7WUFBQSxlQUFBO0lBQ0Esb0JBQUE7SUFDQSxtQkFBQTtFbkZnb2ZKO0FBQ0Y7QW9GM3BmRTtFN0VzY0UsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFNkV2bkJ0QixjQUFBO0FwRjhwZko7QW9GM3BmRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0FwRjhwZko7QW9GM3BmRTtFQUNFLFVBckJhO0FwRm1yZmpCO0FvRjVwZkk7RUFDRSxlQUFBO0FwRjhwZk47QW9GM3BmSTtFQUNFLGdCQUFBO0FwRjZwZk47QW9GenBmRTtFN0U2YUUsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFQy9qQnhCLHFCQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLGVBQUE7RUFDQSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RTRFcENFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLGUvRHJEaUI7RStEc0RqQiwwQkFyQ2U7RUFzQ2YsY3RFdkRRO0VzRXdEUixnQkExQ1k7RUEyQ1osY0FBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUNBLFVBQUE7RUFDQSwrR0FBQTtFQUVBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtBcEZrcWZKO0FRcm9mRTtFQUNFLFNBQUE7QVJ1b2ZKO0FvRm5xZkk7RUFDRSxjdEVuRU07RXNFb0VOLHlCdEVsQ087QWR1c2ZiO0FvRmxxZkk7RTVFOUNBLDBCQUFBO0VBQ0Esb0JBQUE7QVJtdGZKO0FvRmxxZkk7RUFFRSw0QkFBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtFQUNBLG9CQUFBO0FwRm1xZk47QW9GOXdmSTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLGUvRGRlO0UrRGVmLHlCdEVTYTtFc0VSYixVQUFBO0VBQ0EsdURBQUE7RUFDQSxXQUFBO0FwRmd4Zk47QW9GNXdmRTtFQUVFLHdCQUFBO0VBQ0EsVy9EVmlCO0UrRFdqQixVQUFBO0FwRjZ3Zko7QW9GL3FmSTtFQUNFLGN0RXRGTTtFc0V1Rk4sZ0JBQUE7RUFDQSx5QkEzRXNCO0FwRjR2ZjVCO0FvRjlxZkk7RUFDRSxvQkFBQTtFQUNBLGtCQUFBO0FwRmdyZk47QW9GNXFmRTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsVy9EckdpQjtFK0RzR2pCLFkvRHRHaUI7RStEdUdqQixjQUFBO0FwRitxZko7QW9GNXFmRTtFQUNFLGtCQUFBO0FwRitxZko7QW9GNXFmRTtFQUNFLGdCL0QvR2lCO0UrRGdIakIsOEJBQUE7RUFDQSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7QXBGK3FmSjtBb0Y3cWZJO0VBTEY7SUFNSSxjQUFBO0VwRmdyZko7QUFDRjtBb0Y3cWZFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtBcEZncmZKO0FvRngwZkk7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EsY0FBQTtFQUNBLFFBQUE7RUFDQSxlL0RkZTtFK0RlZix5QnRFU2E7RXNFUmIsVUFBQTtFQUNBLHVEQUFBO0VBQ0EsV0FBQTtBcEYwMGZOO0FvRnQwZkU7RUFFRSx3QkFBQTtFQUNBLFcvRFZpQjtFK0RXakIsVUFBQTtBcEZ1MGZKO0FvRjVyZk07RUFDRSxhQUFBO0FwRjhyZlI7QW9GenJmRTtFQUNFLGtCQUFBO0VBQ0EsdUJBQUE7RUFDQSx3QkFBQTtFQUNBLG9CQUFBO0FwRjRyZko7QW9GenJmRTtFNUVqRkEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFBO0FSOHdmRjtBcUZuM2ZFO0U5RTBmRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0U4RTNxQnRCLGFBQUE7RUFDQSxtQkFBQTtFQUNBLDhCQUFBO0VBRUEsV0FBQTtFQUNBLFlBQUE7RUFDQSx5QnZFY007RXVFYk4sNkJBQUE7RUFDQSxvQ0FBQTtBckZzM2ZKO0FxRm4zZkU7RUFLRSxjQUFBO0VBQ0EsY3ZFU1E7QWR5MmZaO0FpQjV3Zk07RW9FNUdKO0lBRUkscUJBQUE7RXJGMDNmSjtBQUNGO0FxRnAzZkU7O0VBRUUsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsWUFBQTtBckZ1M2ZKO0FxRnAzZkU7RUFDRSxtQkFBQTtBckZ1M2ZKO0FxRnAzZkU7O0VBRUUsWUFBQTtBckZ1M2ZKO0FxRnAzZkU7RUFFRSx1QkFBQTtBckZzM2ZKO0FxRm4zZkU7RUFFRSxrQmhFckNpQjtFZ0VzQ2pCLHNCQUFBO0FyRnEzZko7QXFGbDNmRTtFQUdFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtFQUNBLGN2RWhDTTtFdUVpQ04sZ0JBQUE7RUFFQSxZQUFBO0VBQ0EsOEJBQUE7RUFDQSxlQUFBO0VBQ0EsaUhBQUE7RUFFQSxhdkV4Q007QWR5NWZWO0FxRjcyZkU7RUFDRSxjQUFBO0VBQ0EsZUFBQTtBckZnM2ZKO0FxRjcyZkU7RTdFdEJFLDBCQUFBO0VBQ0Esb0JBQUE7QVJ1NGZKO0FxRjkyZkU7RUFDRSxjdkV0RE07RXVFdUROLG1CdkVuQlM7QWRvNGZiO0FxRjkyZkU7RUFDRSxtQkFBQTtFQUNBLGF2RVhZO0FkNDNmaEI7QXFGOTJmRTtFQUNFLHVCQUFBO0VBQ0EscUJ2RW5FTTtBZG83ZlY7QXFGOTJmRTs7RUFFRSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EsYXZFdkJZO0FkdzRmaEI7QXFGOTJmRTs7RUFFRSxtQkFBQTtFQUNBLFlBQUE7QXJGaTNmSjtBcUY5MmZFOztFQUlFLGFBQUE7RUFDQSxZQUFBO0FyRisyZko7QXFGNTJmRTs7RTlFcVlFLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RThFdGpCdEIsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0Esc0JBQUE7RUFDQSx3QkFBQTtBckZpM2ZKO0FpQm4zZk07RW9FTko7O0lBV0ksZUFBQTtJQUNBLHNCQUFBO0VyRm0zZko7QUFDRjtBcUZoM2ZFOztFQUdFLG1CdkV4RVM7QWQwN2ZiO0FxRi8yZkU7O0VBRUUsUUFBQTtFQUNBLDJCQUFBO0FyRmszZko7QWlCcjRmTTtFb0VnQko7O0lBTUksV2hFdkllO0VyQjIvZm5CO0FBQ0Y7QXFGajNmRTtFQUNFLDhCQUFBO0FyRm8zZko7QXFGajNmRTtFQUNFLCtCQUFBO0FyRm8zZko7QXNGL2dnQkU7RUFDRSxlQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxPQUFBO0VBQ0EsYUFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLFlBQUE7RUFDQSx5QnBENFNpQjtFb0QzU2pCLGdDQUFBO0F0RmtoZ0JKO0FzRi9nZ0JFO0U5RW9HQSxxQkFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxlQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBR0UsV0FBQTtFOEV6R0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxrQ0FBQTtFQUNBLHNEQUFBO0F0RnVoZ0JKO0FROTZmRTtFQUNFLFNBQUE7QVJnN2ZKO0FzRnRoZ0JFOztFQUlFLGFBQUE7QXRGdWhnQko7QXNGcGhnQkU7RUFFRSxlQUFBO0F0RnNoZ0JKO0FzRm5oZ0JFO0VBQ0UseUJDcEJpQjtBdkYwaWdCckI7QXNGbmhnQkU7RUFDRSwrQkFBQTtFQUNBLGdDQUFBO0VBQ0EsOEJBQUE7QXRGc2hnQko7QXNGbmhnQkU7RUFDRSxxQnBEdVVnQjtFb0R0VWhCLGFBQUE7QXRGc2hnQko7QXNGbmhnQkk7RUFMRjtJQU9JLDhCQUFBO0lBQ0Esb0JBQUE7RXRGcWhnQko7QUFDRjtBc0ZsaGdCRTtFQUNFLHlCcER5UGdCO0FsQzR4ZnBCO0FzRmxoZ0JFO0VBQ0UsYXBEdVRnQjtBbEM4dGZwQjtBc0ZsaGdCRTtFQUNFLGFwRDBPZ0I7QWxDMnlmcEI7QXNGbGhnQkU7RUFDRSxhQ25FaUI7QXZGd2xnQnJCO0FzRmxoZ0JFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7QXRGcWhnQko7QWlCcitmTTtFcUU3Q0o7SUFFSSxhQUFBO0V0RnFoZ0JKO0FBQ0Y7QXNGL2dnQkU7RS9FbWFFLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RStFcmxCdEIsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsWUFBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EscUJBQUE7RUFDQSxrQ0FBQTtFQUNBLGFBQUE7RUFDQSw4QkFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtBdEZvaGdCSjtBc0ZqaGdCRTtFQUNFLHFCcEQyUWdCO0FsQ3l3ZnBCO0FzRmpoZ0JFO0VBQ0UsZ0JBQUE7QXRGb2hnQko7QXNGamhnQkU7O0VBRUUsY3BEeUxnQjtBbEMyMWZwQjtBc0ZqaGdCRTtFQUVFLG9CQUFBO0F0Rm1oZ0JKO0FzRjdnZ0JFO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0F0RmdoZ0JKO0FpQnRoZ0JNO0VxRUVKO0lBT0ksY0FBQTtFdEZpaGdCSjtBQUNGO0FzRi9nZ0JJO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSx5QnBEb0tjO0VvRG5LZCwyQkFBQTtFQUNBLFdBQUE7QXRGaWhnQk47QXNGN2dnQkU7RUFDRSxhQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7QXRGZ2hnQko7QXNGN2dnQkU7RUFDRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUVBLFlBQUE7RUFDQSxlQUFBO0VBQ0EsY3BEMElnQjtFb0R6SWhCLGdCQUFBO0VBRUEsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLGlCQUFBO0VBRUEscUJBQUE7RUFFQSw2QkFBQTtFQUNBLG1FQUFBO0VBRUEseUJBQUE7S0FBQSxzQkFBQTtVQUFBLGlCQUFBO0F0RjJnZ0JKO0FzRnhnZ0JFO0VBQ0UsY3BEd0hnQjtFb0R2SGhCLHlCQ2xMaUI7QXZGNnJnQnJCO0FzRnhnZ0JFOztFQUVFLGNwRGtIZ0I7RW9EakhoQix5QnBEd0hnQjtBbENtNWZwQjtBc0Z4Z2dCRTtFQUNFLGNwRDZHZ0I7RW9ENUdoQixxQnBEcUxnQjtFb0RwTGhCLGFBQUE7QXRGMmdnQko7QXNGeGdnQkk7RUFORjtJQVFJLDhCQUFBO0lBQ0Esb0JBQUE7RXRGMGdnQko7QUFDRjtBc0Z2Z2dCRTs7O0VBR0UsYXBEOEZnQjtBbEM0NmZwQjtBc0ZyZ2dCRTs7RUFFRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsWUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsZ0NBQUE7RUFDQSxXQUFBO0F0RndnZ0JKO0FzRnJnZ0JFOztFQUVFLFNBQUE7QXRGd2dnQko7QXNGcmdnQkU7O0VBRUUseUJBQUE7QXRGd2dnQko7QXNGcmdnQkU7RUFDRSxrQkFBQTtBdEZ3Z2dCSjtBc0ZyZ2dCRTtFQUNFLGtCQUFBO0F0RndnZ0JKO0FzRnJnZ0JFO0VBR0UsYUFBQTtFQUNBLGNwRGdJZ0I7RW9EL0hoQix5QnBEOERnQjtBbEN3OGZwQjtBc0ZuZ2dCRTtFQUVFLHlCQUFBO0F0RnFnZ0JKO0FzRmxnZ0JFO0VBQ0UsYUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7QXRGcWdnQko7QXNGbGdnQkU7RUFFRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0VBQ0EsYUFBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLGNBQUE7RUFDQSx5QnBEc0NnQjtFb0RyQ2hCLDBDQUFBO0VBQ0EsMkJBQUE7QXRGb2dnQko7QXNGamdnQkU7RUFHRSx5QkN0UWlCO0F2Rnd3Z0JyQjtBc0YvL2ZFO0VBR0UseUJwRHVCZ0I7QWxDeStmcEI7QXNGNy9mRTtFQUNFLFlBQUE7QXRGZ2dnQko7QXNGNy9mRTtFQUNFLGNwRFFnQjtFb0RQaEIseUJwRGVnQjtBbENpL2ZwQjtBc0Y3L2ZFO0VBQ0UsbUJBQUE7RUFDQSx1Q0FBQTtFQUNBLGFwREdnQjtBbEM2L2ZwQjtBc0YxL2ZFO0VBQ0UsYUFBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtFQUNBLFlBQUE7QXRGNi9mSjtBc0Z2L2ZFO0VBQ0Usa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFBO0F0RjAvZko7QXNGdi9mRTtFQUNFLE1BQUE7RUFDQSxPQUFBO0VBQ0EsYUFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGNwRHJDZ0I7RW9Ec0NoQix5QnBEN0JpQjtFb0Q4QmpCLHlCQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7QXRGMC9mSjtBd0Y3MGdCRTtFQzhCQSx3REFBQTtFRDNCRSxlQUFBO0VBQ0EsU0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsYUFBQTtFQUNBLFFBQUE7RUFDQSxnQkFBQTtFQUNBLGN0RGtTZ0I7RXNEalNoQix5QnREd1NpQjtFc0R2U2pCLFlBQUE7RUFDQSx1QkFBQTtFQUNBLGtCQUFBO0F4RiswZ0JKO0F3RjUwZ0JFO0VBQ0UsWUFBQTtFQUNBLCtCQUFBO0VBQ0EsOEJBQUE7QXhGKzBnQko7QTBGcjJnQkU7RUFDRSxlQUFBO0VBQ0EsU0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QnhEMFNpQjtFd0R6U2pCLGtDQUFBO0VBQ0EsMkRBQUE7RUFDQSxzQkFBQTtBMUZ3MmdCSjtBMEZyMmdCRTtFQUNFLDRDQUFBO0VBQ0EsK0JBQUE7QTFGdzJnQko7QTBGbDJnQkU7RUFDRSxxQkFBQTtFQUNBLGVBQUE7QTFGcTJnQko7QTBGbDJnQkU7RUFDRSx5QnhEOFFnQjtBbEN1bGdCcEI7QTBGLzFnQkU7O0VuRnNkRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VtRnZvQnRCLGVBQUE7RUFDQSxjeERvUWdCO0FsQ2dtZ0JwQjtBMEZqMmdCRTtFQUNFLG9CQUFBO0ExRm8yZ0JKO0EwRmoyZ0JFO0VBQ0Usb0JBQUE7QTFGbzJnQko7QTBGajJnQkU7O0VBRUUscUJBQUE7RUFDQSxXQUFBO0VBQ0EsY3hEME5nQjtFd0R6TmhCLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtBMUZvMmdCSjtBMEZqMmdCRTs7RUFFRSwwQkFBQTtBMUZvMmdCSjtBMEZqMmdCRTs7RUFFRSxhQUFBO0VBQ0EsbUNBQUE7QTFGbzJnQko7QTBGajJnQkU7RW5GZ2JFLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RW1GbG1CdEIsYUFBQTtFQUNBLG1CQUFBO0VBQ0Esb0JBQUE7QTFGczJnQko7QTBGbjJnQkU7RUFDRSxrQkFBQTtFQUNBLGF4RDhMZ0I7QWxDd3FnQnBCO0EwRmgyZ0JFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsOEJBQUE7RUFDQSxlQUFBO0ExRm0yZ0JKO0EwRmgyZ0JFO0VBQ0UsbUJ4RDBNZ0I7QWxDeXBnQnBCO0EwRmgyZ0JFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7RUFDQSxxQkFBQTtBMUZtMmdCSjtBMEZoMmdCRTtFQUNFLGFBQUE7RUFDQSxtQ0FBQTtBMUZtMmdCSjtBMEZoMmdCRTtFQUNFLGtCQUFBO0ExRm0yZ0JKO0EwRmgyZ0JFO0VuRm1ZRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VtRnJqQnRCLG9CQUFBO0VBQ0EsY3hEa0xnQjtFd0RqTGhCLGdCQUFBO0ExRnEyZ0JKO0EwRmwyZ0JFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxhQUFBO0ExRnEyZ0JKO0EwRm4yZ0JJO0VBQ0UsYUFBQTtBMUZxMmdCTjtBMEZqMmdCRTtFQUNFLGF4RGtLZ0I7QWxDa3NnQnBCO0EwRmoyZ0JFO0VBQ0UsbUJ4RDhKZ0I7QWxDc3NnQnBCO0EwRmoyZ0JFO0VBR0UsYXhEd0pnQjtBbEMwc2dCcEI7QTBGLzFnQkU7RUFDRSxhQUFBO0VBQ0EsYUFBQTtFQUNBLG1DQUFBO0ExRmsyZ0JKO0EwRi8xZ0JFO0VBRUUsbUJ4RG9OZ0I7QWxDNm9nQnBCO0EwRjkxZ0JFO0VBQ0UsYUFBQTtBMUZpMmdCSjtBMkZwZ2hCRTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxjekR1U2dCO0FsQ2d1Z0JwQjtBMkZwZ2hCRTtFQUNFLFdBQUE7RUFDQSxZN0VvSFc7QWRtNWdCZjtBMkZwZ2hCRTtFQUNFLGdCN0U4R1c7QWR5NWdCZjtBMkZwZ2hCRTtFQUNFLGNBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsbUJ6RDJSZ0I7RXlEMVJoQixZQUFBO0EzRnVnaEJKO0EyRnBnaEJFO0VwRitkRSxtQkFxTHNCO0VBckx0QixnQkFxTHNCO0VBckx0QixpQkFxTHNCO0VBckx0QixzQkFxTHNCO0VvRmpwQnRCLGNBQUE7RUFDQSxZN0VnR1c7RTZFL0ZYLHNCQUFBO0VBQ0EsY3pENFFnQjtFeUQzUWhCLHFCQUFBO0EzRnlnaEJKO0EyRnZnaEJJO0VBQ0UsY3pEc1FjO0V5RHJRZCxtQkpzRGM7RUlyRGQsZUFBQTtBM0Z5Z2hCTjtBMkZ0Z2hCSTtFQUNFLDBCQUFBO0VBQ0Esb0JBQUE7QTNGd2doQk47QTJGcmdoQkk7RUFDRSxjekQyUGM7RXlEMVBkLG1CekRpUWM7QWxDc3dnQnBCO0EyRm5naEJFO0VBQ0UsY3pEcVBnQjtFeURwUGhCLG1CekQ0UGdCO0FsQzB3Z0JwQjtBNEY1Z2hCRTtFQUNFLGVBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxhQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBRUEsZ0JBQUE7RUFDQSxjMUQvQm1CO0UwRGdDbkIseUIxRHdUZ0I7RTBEdFRoQixvREFBQTtFQUNBLGtCQUFBO0E1RjZnaEJKO0E0RjFnaEJFO0VBQ0UsUzlFOERXO0U4RTdEWCxZQUFBO0E1RjZnaEJKO0FpQjE3Z0JJO0UyRXJGRjtJQUtJLFFBQUE7RTVGOGdoQko7QUFDRjtBNEZuZ2hCRTtFQUNFLFdBQUE7QTVGc2doQko7QTRGbmdoQkU7RUFDRSxRQUFBO0E1RnNnaEJKO0E0Rm5naEJFOztFQUVFLFlBQUE7QTVGc2doQko7QTRGbmdoQkU7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLDZCQUFBO0VBQ0EsVUFBQTtFQUNBLGlIQUFBO0E1RnNnaEJKO0FpQnQ5Z0JJO0UyRTVDRjtJQUVJLFdBQUE7SUFDQSxhQUFBO0lBQ0EsdUM5RTNEUztJOEU0RFQsVUFBQTtJQUNBLGlIQUFBO0U1RnFnaEJKO0FBQ0Y7QTRGLy9nQkU7RUFDRSxTQUFBO0VBQ0EseUJBQUE7QTVGa2doQko7QTRGLy9nQkU7RUFDRSxZQUFBO0E1RmtnaEJKO0E0Ri8vZ0JFO0VBQ0UsWUFBQTtFQUNBLDZCQUFBO0E1RmtnaEJKO0E0RjUvZ0JFO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsWUFBQTtBNUYrL2dCSjtBNEZ6L2dCRTtFQUNFLGFBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxnQ0FBQTtBNUY0L2dCSjtBNEZ4bmhCRTtFQStISSxZQUFBO0E1RjQvZ0JOO0E0RngvZ0JFO0VBQ0UsWUFBQTtBNUYyL2dCSjtBNEZyL2dCRTtFQUNFLGFBQUE7RUFHQSxPQUFBO0VBQ0Esc0JBQUE7RUFDQSxZQUFBO0VBQ0EsbUJBQUE7RUF4SkEsVUFBQTtFQUlBLGtCQUFBO0E1RjRvaEJKO0E0RnpvaEJFO0VBTUksbUJBQUE7RUFHQSxVQUFBO0E1Rm9vaEJOO0E0RnYvZ0JFO0VBQ0UsbUJBQUE7RUFDQSxVQUFBO0E1RjAvZ0JKO0E0RnYvZ0JFO0VBbkxBLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQW9MRSxnQkFBQTtFQUNBLGdCQUFBO0VBR0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtBNUZ5L2dCSjtBNEZwL2dCRTs7RUFFRSxvQkFBQTtBNUZ1L2dCSjtBNEZqL2dCRTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsOEJBQUE7QTVGby9nQko7QTRGai9nQkU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxhQUFBO0VBQ0EsU0FBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGExRDlMbUI7QWxDa3JoQnZCO0E0RmovZ0JFO0VwRnZKRSw4QkFBQTtFQUNBLG9CQUFBO0VvRnlKQSxZQUFBO0VBR0EsWUFBQTtFQUNBLFlBQUE7RUFFQSxtQkFBQTtFQUNBLGMxRG9FZ0I7RTBEbkVoQixrQkFBQTtFQUNBLHlCMUQyRWlCO0UwRDFFakIsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLHlCQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0E1RmkvZ0JKO0E0RjkrZ0JFO0VwRjFMRSwwQkFBQTtFQUNBLG9CQUFBO0FSNHFoQko7QTRGNStnQkU7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLHlCMUR5SGdCO0FsQ3MzZ0JwQjtBNEY1K2dCRTtFcEZ4TEUsOEJBQUE7RUFDQSxvQkFBQTtFQXlDRixxQkFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxlQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBR0UsV0FBQTtFb0YwSUEsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtBNUZxL2dCSjtBUS9uaEJFO0VBQ0UsU0FBQTtBUmlvaEJKO0E0RnIvZ0JFO0VwRmpORSwwQkFBQTtFQUNBLG9CQUFBO0FSMHNoQko7QTRGbi9nQkU7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBNUZzL2dCSjtBNEY3dWhCRTtFQTBQSSxnQkFBQTtBNUZzL2dCTjtBNEZsL2dCRTtFQUNFLGdCQUFBO0E1RnEvZ0JKO0E0RmgvZ0JFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtBNUZtL2dCSjtBNEYxdmhCRTtFQTBRSSxXQUFBO0VBQ0EsWUFBQTtBNUZtL2dCTjtBNEYvK2dCRTtFQUNFLFdBQUE7RUFDQSxZQUFBO0E1RmsvZ0JKO0E0Ri8rZ0JFOzs7OztFQVVFLGMxRDFSb0I7RTBENFJwQix5QkwxSm1CO0F2RnNvaEJ2QjtBNEZ6K2dCRTs7RUFPRSxjMUR0U29CO0FsQzZ3aEJ4QjtBNEZwK2dCRTtFQUNFLFlBQUE7QTVGdStnQko7QTRGaitnQkU7RXBGL05BLHFCQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLGVBQUE7RUFDQSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFHRSxXQUFBO0VEa1lBLG1CQXFMc0I7RUFyTHRCLGdCQXFMc0I7RUFyTHRCLGlCQXFMc0I7RUFyTHRCLHNCQXFMc0I7RUN6bUJ0Qiw4QkFBQTtFQUNBLG9CQUFBO0VvRjZRQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0VBRUEsZUFBQTtFQUNBLGMxRDdUbUI7RTBEOFRuQiw4REFBQTtFQUVBLHlCQUFBO0tBQUEsc0JBQUE7VUFBQSxpQkFBQTtBNUYyK2dCSjtBUTVzaEJFO0VBQ0UsU0FBQTtBUjhzaEJKO0E0RjMrZ0JFO0VBQ0UsYzFEalVvQjtFMERrVXBCLHlCTGhNbUI7QXZGOHFoQnZCO0E0RjMrZ0JFO0VwRjdTRSwwQkFBQTtFQUNBLG9CQUFBO0FSNHhoQko7QTRGNStnQkk7RUFKRjtJQU1JLDhCQUFBO0lBQ0Esb0JBQUE7RTVGOCtnQko7QUFDRjtBNEYzK2dCRTtFQTVXQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUE2V0UsZ0JBQUE7QTVGKytnQko7QTRGNStnQkU7RUFDRSxhQUFBO0VBQ0EsT0FBQTtFQUNBLHlCQUFBO0E1RisrZ0JKO0E0RjUrZ0JFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSwyQkFBQTtBNUYrK2dCSjtBNEY1K2dCRTtFQUdFLHlCQUFBO0E1RjYrZ0JKO0E0RjErZ0JFO0VBQ0UsWUFBQTtBNUY2K2dCSjtBNEYxK2dCRTtFQUNFLGMxRDdXb0I7RTBEOFdwQix5Qkw1T21CO0F2Rnl0aEJ2QjtBNEYxK2dCRTtFQUVFLGtCQUFBO0VBQ0EsYzFEcFhvQjtFMERxWHBCLHlCTG5QbUI7QXZGK3RoQnZCO0E0RjMrZ0JJO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxVQUFBO0VBQ0EseUIxRDlaaUI7RTBEK1pqQixXQUFBO0E1RjYrZ0JOO0E0RnorZ0JFO0VBQ0UsYzFEbFlvQjtFMERtWXBCLGdCQUFBO0E1RjQrZ0JKO0E0RnorZ0JFO0VBQ0UsY0FBQTtFQUNBLGFBQUE7RUFDQSxrQkFBQTtBNUY0K2dCSjtBNEZ6K2dCRTtFQUVFLG9CQUFBO0VBQ0EsbUJBQUE7QTVGMitnQko7QTRGeCtnQkU7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0E1RjIrZ0JKO0E0RngrZ0JFO0VBRUUsb0JBQUE7QTVGMCtnQko7QTRGeCtnQkU7OztFQUdFLHlCMUR4YW1CO0FsQ201aEJ2QjtBNEZ6K2dCSTs7O0VBQ0UsYzFEbmFrQjtFMERvYWxCLGdCQUFBO0E1RjYrZ0JOO0E0RnQrZ0JFOzs7RXBGcFlFLDhCQUFBO0VBQ0Esb0JBQUE7RURtYkEsbUJBcUxzQjtFQXJMdEIsZ0JBcUxzQjtFQXJMdEIsaUJBcUxzQjtFQXJMdEIsc0JBcUxzQjtFcUY3TnRCLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EscUJBQUE7RUFDQSw4REFBQTtBNUYwK2dCSjtBNEZ0K2dCRTtFQUNFLFlBQUE7QTVGeStnQko7QTRGdCtnQkU7O0VBN2RBLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQWllRSxjMUQxY21CO0UwRDJjbkIsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EseUJBQUE7S0FBQSxzQkFBQTtVQUFBLGlCQUFBO0E1RncrZ0JKO0E0RnIrZ0JFOztFcEZ0YkUsMEJBQUE7RUFDQSxvQkFBQTtBUmc2aEJKO0E0RnQrZ0JJO0VBTEY7O0lBT0ksOEJBQUE7SUFDQSxvQkFBQTtFNUZ5K2dCSjtBQUNGO0E0RnQrZ0JFOztFQUVFLGdCQUFBO0VBQ0EseUJMM1ZtQjtBdkZvMGhCdkI7QTRGdCtnQkU7O0VBR0UsYzFEbmVvQjtBbEMyOGhCeEI7QTRGcitnQkU7O0VBRUUsa0JBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxVQUFBO0VBQ0EseUIxRC9nQm1CO0UwRGdoQm5CLFdBQUE7QTVGdytnQko7QTRGbCtnQkU7RUFDRSxhQUFBO0VBR0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7QTVGbStnQko7QTRGaCtnQkU7RUFDRSxvQkFBQTtBNUZtK2dCSjtBNEZoK2dCRTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsYTFEdmdCbUI7QWxDMCtoQnZCO0E0RmorZ0JJO0VBTEY7SUFRSSxnQkFBQTtFNUZrK2dCSjtBQUNGO0E0Ri85Z0JFO0VBQ0UsYUFBQTtBNUZrK2dCSjtBNEYvOWdCRTtFQUdFLGFBQUE7QTVGZytnQko7QTRGNzlnQkU7RUFHRSxjQUFBO0E1Rjg5Z0JKO0E0Rng5Z0JFOztFQUVFLGtCQUFBO0E1RjI5Z0JKO0E0Rng5Z0JFO0VBSUUsa0JBQUE7QTVGdzlnQko7QWlCejRoQkk7RTJFdWJGO0lBRUksY0FBQTtFNUZxOWdCSjtBQUNGO0E0Rmw5Z0JFO0VBQ0UsYUFBQTtBNUZxOWdCSjtBaUJuNWhCSTtFMkU2YkY7SUFJSSxrQkFBQTtJQUNBLGNBQUE7SUFDQSxtQkFBQTtFNUZzOWdCSjtBQUNGO0E0Rm45Z0JFO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0VBQ0EsVUFBQTtFQUNBLHdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQjFEN2tCbUI7RTBEOGtCbkIsV0FBQTtBNUZzOWdCSjtBNEZsOWdCRTtFQUNFLDhCQUFBO0VBQ0EsYzFEL2tCbUI7RTBEZ2xCbkIsbUJBQUE7QTVGcTlnQko7QTRGbjlnQkk7RUFDRSw2QkFBQTtBNUZxOWdCTjtBNEZqOWdCRTtFQUdFLGVBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtFQUNBLDZCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0E1Rms5Z0JKO0E0Rmg5Z0JJO0VBQ0UsV0FBQTtBNUZrOWdCTjtBNEYvOGdCSTtFQUNFLHFCQUFBO0VBQ0EsZ0JBQUE7QTVGaTlnQk47QTRGOThnQkk7RUFDRSxjMUR4bUJrQjtFMER5bUJsQix5Qkx2ZWlCO0F2RnU3aEJ2QjtBNEY1OGdCRTtFQUdFLGVBQUE7QTVGNjhnQko7QTRGMThnQkU7OztFQU9FLGExRDduQm1CO0FsQ3NraUJ2QjtBNEZ0OGdCSTtFQVZGOzs7SUFhSSxnQkFBQTtFNUZ5OGdCSjtBQUNGO0E2RjNtaUJFO0VBQ0UsZUFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0VBQ0EsYzNEaUJtQjtFMkRoQm5CLHlCM0R3Qm1CO0UyRHZCbkIsK0NBQUE7QTdGOG1pQko7QTZGM21pQkU7RUFDRSxRQUFBO0VBQ0EsVUFBQTtBN0Y4bWlCSjtBNkYzbWlCRTtFQUNFLGEzRE1tQjtBbEN3bWlCdkI7QTZGeG1pQkU7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSx5QjNER21CO0UyREZuQixXQUFBO0E3RjJtaUJKO0E2RnJtaUJFO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7QTdGd21pQko7QTZGcm1pQkU7RUFDRSxjM0R1RG1CO0UyRHREbkIsZ0JBQUE7QTdGd21pQko7QTZGcm1pQkU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0VBQ0EseUIzRHREbUI7RTJEdURuQixXQUFBO0E3RndtaUJKO0E2RmxtaUJFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxjM0QxQ21CO0UyRDJDbkIsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLHFCQUFBO0E3RnFtaUJKO0E2RmxtaUJFO0VBQ0UsYzNEd0JtQjtFMkR2Qm5CLHlCQUFBO0E3RnFtaUJKO0E2RmxtaUJFO0VBQ0UsZ0NBQUE7RUFDQSwwQkFBQTtBN0ZxbWlCSjtBNkZsbWlCRTtFQUNFLGVBQUE7QTdGcW1pQko7QTZGL2xpQkU7RUFDRSxXQUFBO0E3RmttaUJKO0E2Ri9saUJFO0VyRnFCQSxxQkFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxlQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBR0UsV0FBQTtFcUYxQkEsYUFBQTtFQUNBLG1CQUFBO0E3RnVtaUJKO0FRM2tpQkU7RUFDRSxTQUFBO0FSNmtpQko7QTZGdm1pQkU7RUFDRSx5QkFBQTtBN0YwbWlCSjtBNkZ2bWlCRTtFQUNFLGdDQUFBO0VBQ0EsMEJBQUE7QTdGMG1pQko7QTZGdm1pQkU7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSw4QkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxjM0Q3Rm1CO0UyRDhGbkIsZ0JBQUE7RUFDQSxtQkFBQTtBN0YwbWlCSjtBNkZ2bWlCRTtFQUNFLGVBQUE7QTdGMG1pQko7QTZGdm1pQkU7RUFDRSxhQUFBO0VBQ0Esa0JBQUE7QTdGMG1pQko7QTZGdm1pQkU7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0E3RjBtaUJKO0E2RnZtaUJFO0VBQ0Usa0JBQUE7QTdGMG1pQko7QTZGdm1pQkU7RUFHRSxvQkFBQTtBN0Z3bWlCSjtBNkZybWlCRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0VBQ0EsY0FBQTtFQUNBLFVBQUE7RUFDQSx5QjNENUptQjtFMkQ2Sm5CLFdBQUE7QTdGd21pQko7QTZGcm1pQkU7RUFFRSxjM0RoRW1CO0UyRGlFbkIsZ0JBQUE7QTdGdW1pQko7QTZGcG1pQkU7RUFFRSxnQkFBQTtBN0ZzbWlCSjtBNkZubWlCRTtFQUdFLHlCQUFBO0E3Rm9taUJKO0E2RmptaUJFO0VBRUUsY0FBQTtFQUNBLG1CQUFBO0E3Rm1taUJKO0E2RjdsaUJFO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7RUFDQSxvQkFBQTtBN0ZnbWlCSjtBOEZweWlCRTtFQUNFLGFBQUE7RUFDQSxtQmhGNkJNO0VnRjVCTiwrQkFBQTtFQUNBLHdCQUFBO0E5RnV5aUJKO0E4RnB5aUJFO0VBQ0UsZ0JBQUE7QTlGdXlpQko7QThGcHlpQkU7RUFDRSxpQkFBQTtBOUZ1eWlCSjtBOEZweWlCRTtFQUNFLGtCQUFBO0E5RnV5aUJKO0ErRjV4aUJFO0VBQ0MsYUFKVTtBL0ZteWlCYjtBK0Y5eGlCRztFQUNDLGFBQUE7QS9GZ3lpQko7QStGNXhpQkU7RUFDQyxlQVhVO0EvRnl5aUJiO0ErRnR5aUJFO0VBQ0MsYUFKVTtBL0Y0eWlCYjtBK0Z2eWlCRztFQUNDLGFBQUE7QS9GeXlpQko7QStGcnlpQkU7RUFDQyxlQVhVO0EvRmt6aUJiO0ErRi95aUJFO0VBQ0MsYUFKVTtBL0ZxemlCYjtBK0ZoemlCRztFQUNDLGFBQUE7QS9Ga3ppQko7QStGOXlpQkU7RUFDQyxlQVhVO0EvRjJ6aUJiO0ErRnh6aUJFO0VBQ0MsYUFKVTtBL0Y4emlCYjtBK0Z6emlCRztFQUNDLGFBQUE7QS9GMnppQko7QStGdnppQkU7RUFDQyxlQVhVO0EvRm8waUJiO0ErRmowaUJFO0VBQ0MsYUFKVTtBL0Z1MGlCYjtBK0ZsMGlCRztFQUNDLGFBQUE7QS9GbzBpQko7QStGaDBpQkU7RUFDQyxlQVhVO0EvRjYwaUJiO0ErRjEwaUJFO0VBQ0MsYUFKVTtBL0ZnMWlCYjtBK0YzMGlCRztFQUNDLGFBQUE7QS9GNjBpQko7QStGejBpQkU7RUFDQyxlQVhVO0EvRnMxaUJiO0ErRm4xaUJFO0VBQ0MsYUFKVTtBL0Z5MWlCYjtBK0ZwMWlCRztFQUNDLGFBQUE7QS9GczFpQko7QStGbDFpQkU7RUFDQyxlQVhVO0EvRisxaUJiO0ErRjUxaUJFO0VBQ0MsYUFKVTtBL0ZrMmlCYjtBK0Y3MWlCRztFQUNDLGFBQUE7QS9GKzFpQko7QStGMzFpQkU7RUFDQyxlQVhVO0EvRncyaUJiO0ErRnIyaUJFO0VBQ0MsYUFKVTtBL0YyMmlCYjtBK0Z0MmlCRztFQUNDLGFBQUE7QS9GdzJpQko7QStGcDJpQkU7RUFDQyxlQVhVO0EvRmkzaUJiO0ErRjkyaUJFO0VBQ0MsYUFKVTtBL0ZvM2lCYjtBK0YvMmlCRztFQUNDLGFBQUE7QS9GaTNpQko7QStGNzJpQkU7RUFDQyxlQVhVO0EvRjAzaUJiO0ErRnYzaUJFO0VBQ0MsYUFKVTtBL0Y2M2lCYjtBK0Z4M2lCRztFQUNDLGFBQUE7QS9GMDNpQko7QStGdDNpQkU7RUFDQyxlQVhVO0EvRm00aUJiO0ErRmg0aUJFO0VBQ0MsYUFKVTtBL0ZzNGlCYjtBK0ZqNGlCRztFQUNDLGFBQUE7QS9GbTRpQko7QStGLzNpQkU7RUFDQyxlQVhVO0EvRjQ0aUJiO0ErRno0aUJFO0VBQ0MsYUFKVTtBL0YrNGlCYjtBK0YxNGlCRztFQUNDLGFBQUE7QS9GNDRpQko7QStGeDRpQkU7RUFDQyxlQVhVO0EvRnE1aUJiO0ErRmw1aUJFO0VBQ0MsYUFKVTtBL0Z3NWlCYjtBK0ZuNWlCRztFQUNDLGFBQUE7QS9GcTVpQko7QStGajVpQkU7RUFDQyxlQVhVO0EvRjg1aUJiO0ErRjM1aUJFO0VBQ0MsYUFKVTtBL0ZpNmlCYjtBK0Y1NWlCRztFQUNDLGFBQUE7QS9GODVpQko7QStGMTVpQkU7RUFDQyxlQVhVO0EvRnU2aUJiO0ErRnA2aUJFO0VBQ0MsYUFKVTtBL0YwNmlCYjtBK0ZyNmlCRztFQUNDLGFBQUE7QS9GdTZpQko7QStGbjZpQkU7RUFDQyxlQVhVO0EvRmc3aUJiO0ErRjc2aUJFO0VBQ0MsYUFKVTtBL0ZtN2lCYjtBK0Y5NmlCRztFQUNDLGFBQUE7QS9GZzdpQko7QStGNTZpQkU7RUFDQyxlQVhVO0EvRnk3aUJiO0ErRnQ3aUJFO0VBQ0MsYUFKVTtBL0Y0N2lCYjtBK0Z2N2lCRztFQUNDLGFBQUE7QS9GeTdpQko7QStGcjdpQkU7RUFDQyxlQVhVO0EvRms4aUJiO0ErRi83aUJFO0VBQ0MsYUFKVTtBL0ZxOGlCYjtBK0ZoOGlCRztFQUNDLGFBQUE7QS9GazhpQko7QStGOTdpQkU7RUFDQyxlQVhVO0EvRjI4aUJiO0ErRng4aUJFO0VBQ0MsYUFKVTtBL0Y4OGlCYjtBK0Z6OGlCRztFQUNDLGFBQUE7QS9GMjhpQko7QStGdjhpQkU7RUFDQyxlQVhVO0EvRm85aUJiO0ErRmo5aUJFO0VBQ0MsYUFKVTtBL0Z1OWlCYjtBK0ZsOWlCRztFQUNDLGFBQUE7QS9GbzlpQko7QStGaDlpQkU7RUFDQyxlQVhVO0EvRjY5aUJiO0ErRjE5aUJFO0VBQ0MsYUFKVTtBL0ZnK2lCYjtBK0YzOWlCRztFQUNDLGFBQUE7QS9GNjlpQko7QStGejlpQkU7RUFDQyxlQVhVO0EvRnMraUJiO0ErRm4raUJFO0VBQ0MsYUFKVTtBL0Z5K2lCYjtBK0ZwK2lCRztFQUNDLGFBQUE7QS9GcytpQko7QStGbCtpQkU7RUFDQyxlQVhVO0EvRisraUJiO0ErRjUraUJFO0VBQ0MsYUFKVTtBL0ZrL2lCYjtBK0Y3K2lCRztFQUNDLGFBQUE7QS9GKytpQko7QStGMytpQkU7RUFDQyxlQVhVO0EvRncvaUJiO0ErRnIvaUJFO0VBQ0MsYUFKVTtBL0YyL2lCYjtBK0Z0L2lCRztFQUNDLGFBQUE7QS9Gdy9pQko7QStGcC9pQkU7RUFDQyxlQVhVO0EvRmlnakJiO0ErRjkvaUJFO0VBQ0MsYUFKVTtBL0ZvZ2pCYjtBK0YvL2lCRztFQUNDLGFBQUE7QS9GaWdqQko7QStGNy9pQkU7RUFDQyxlQVhVO0EvRjBnakJiO0ErRnZnakJFO0VBQ0MsYUFKVTtBL0Y2Z2pCYjtBK0Z4Z2pCRztFQUNDLGFBQUE7QS9GMGdqQko7QStGdGdqQkU7RUFDQyxlQVhVO0EvRm1oakJiO0ErRmhoakJFO0VBQ0MsYUFKVTtBL0ZzaGpCYjtBK0ZqaGpCRztFQUNDLGFBQUE7QS9GbWhqQko7QStGL2dqQkU7RUFDQyxlQVhVO0EvRjRoakJiO0ErRnpoakJFO0VBQ0MsYUFKVTtBL0YraGpCYjtBK0YxaGpCRztFQUNDLGFBQUE7QS9GNGhqQko7QStGeGhqQkU7RUFDQyxlQVhVO0EvRnFpakJiO0ErRmxpakJFO0VBQ0MsYUFKVTtBL0Z3aWpCYjtBK0ZuaWpCRztFQUNDLGFBQUE7QS9GcWlqQko7QStGamlqQkU7RUFDQyxlQVhVO0EvRjhpakJiO0ErRjNpakJFO0VBQ0MsYUFKVTtBL0ZpampCYjtBK0Y1aWpCRztFQUNDLGFBQUE7QS9GOGlqQko7QStGMWlqQkU7RUFDQyxlQVhVO0EvRnVqakJiO0ErRnBqakJFO0VBQ0MsYUFKVTtBL0YwampCYjtBK0ZyampCRztFQUNDLGFBQUE7QS9GdWpqQko7QStGbmpqQkU7RUFDQyxlQVhVO0EvRmdrakJiO0ErRjdqakJFO0VBQ0MsYUFKVTtBL0Zta2pCYjtBK0Y5ampCRztFQUNDLGFBQUE7QS9GZ2tqQko7QStGNWpqQkU7RUFDQyxlQVhVO0EvRnlrakJiO0ErRnRrakJFO0VBQ0MsYUFKVTtBL0Y0a2pCYjtBK0Z2a2pCRztFQUNDLGFBQUE7QS9GeWtqQko7QStGcmtqQkU7RUFDQyxlQVhVO0EvRmtsakJiO0ErRi9rakJFO0VBQ0MsYUFKVTtBL0ZxbGpCYjtBK0ZobGpCRztFQUNDLGFBQUE7QS9Ga2xqQko7QStGOWtqQkU7RUFDQyxlQVhVO0EvRjJsakJiO0ErRnhsakJFO0VBQ0MsYUFKVTtBL0Y4bGpCYjtBK0Z6bGpCRztFQUNDLGFBQUE7QS9GMmxqQko7QStGdmxqQkU7RUFDQyxlQVhVO0EvRm9takJiO0ErRmptakJFO0VBQ0MsYUFKVTtBL0Z1bWpCYjtBK0ZsbWpCRztFQUNDLGFBQUE7QS9Gb21qQko7QStGaG1qQkU7RUFDQyxlQVhVO0EvRjZtakJiO0ErRjFtakJFO0VBQ0MsYUFKVTtBL0ZnbmpCYjtBK0YzbWpCRztFQUNDLGFBQUE7QS9GNm1qQko7QStGem1qQkU7RUFDQyxlQVhVO0EvRnNuakJiO0ErRm5uakJFO0VBQ0MsYUFKVTtBL0Z5bmpCYjtBK0ZwbmpCRztFQUNDLGFBQUE7QS9Gc25qQko7QStGbG5qQkU7RUFDQyxlQVhVO0EvRituakJiO0ErRjVuakJFO0VBQ0MsYUFKVTtBL0Zrb2pCYjtBK0Y3bmpCRztFQUNDLGFBQUE7QS9GK25qQko7QStGM25qQkU7RUFDQyxlQVhVO0EvRndvakJiO0ErRnJvakJFO0VBQ0MsYUFKVTtBL0Yyb2pCYjtBK0Z0b2pCRztFQUNDLGFBQUE7QS9Gd29qQko7QStGcG9qQkU7RUFDQyxlQVhVO0EvRmlwakJiO0ErRjlvakJFO0VBQ0MsYUFKVTtBL0ZvcGpCYjtBK0Yvb2pCRztFQUNDLGFBQUE7QS9GaXBqQko7QStGN29qQkU7RUFDQyxlQVhVO0EvRjBwakJiO0ErRnZwakJFO0VBQ0MsYUFKVTtBL0Y2cGpCYjtBK0Z4cGpCRztFQUNDLGFBQUE7QS9GMHBqQko7QStGdHBqQkU7RUFDQyxlQVhVO0EvRm1xakJiO0ErRmhxakJFO0VBQ0MsYUFKVTtBL0ZzcWpCYjtBK0ZqcWpCRztFQUNDLGFBQUE7QS9GbXFqQko7QStGL3BqQkU7RUFDQyxlQVhVO0EvRjRxakJiO0ErRnpxakJFO0VBQ0MsYUFKVTtBL0YrcWpCYjtBK0YxcWpCRztFQUNDLGFBQUE7QS9GNHFqQko7QStGeHFqQkU7RUFDQyxlQVhVO0EvRnFyakJiO0ErRmxyakJFO0VBQ0MsYUFKVTtBL0Z3cmpCYjtBK0ZucmpCRztFQUNDLGFBQUE7QS9GcXJqQko7QStGanJqQkU7RUFDQyxlQVhVO0EvRjhyakJiO0ErRjNyakJFO0VBQ0MsYUFKVTtBL0Zpc2pCYjtBK0Y1cmpCRztFQUNDLGFBQUE7QS9GOHJqQko7QStGMXJqQkU7RUFDQyxlQVhVO0EvRnVzakJiO0ErRnBzakJFO0VBQ0MsYUFKVTtBL0Ywc2pCYjtBK0Zyc2pCRztFQUNDLGFBQUE7QS9GdXNqQko7QStGbnNqQkU7RUFDQyxlQVhVO0EvRmd0akJiO0ErRjdzakJFO0VBQ0MsYUFKVTtBL0ZtdGpCYjtBK0Y5c2pCRztFQUNDLGFBQUE7QS9GZ3RqQko7QStGNXNqQkU7RUFDQyxlQVhVO0EvRnl0akJiO0ErRnR0akJFO0VBQ0MsYUFKVTtBL0Y0dGpCYjtBK0Z2dGpCRztFQUNDLGFBQUE7QS9GeXRqQko7QStGcnRqQkU7RUFDQyxlQVhVO0EvRmt1akJiO0ErRi90akJFO0VBQ0MsYUFKVTtBL0ZxdWpCYjtBK0ZodWpCRztFQUNDLGFBQUE7QS9Ga3VqQko7QStGOXRqQkU7RUFDQyxlQVhVO0EvRjJ1akJiO0ErRnh1akJFO0VBQ0MsYUFKVTtBL0Y4dWpCYjtBK0Z6dWpCRztFQUNDLGFBQUE7QS9GMnVqQko7QStGdnVqQkU7RUFDQyxlQVhVO0EvRm92akJiO0ErRmp2akJFO0VBQ0MsYUFKVTtBL0Z1dmpCYjtBK0ZsdmpCRztFQUNDLGFBQUE7QS9Gb3ZqQko7QStGaHZqQkU7RUFDQyxlQVhVO0EvRjZ2akJiO0ErRjF2akJFO0VBQ0MsYUFKVTtBL0Znd2pCYjtBK0YzdmpCRztFQUNDLGFBQUE7QS9GNnZqQko7QStGenZqQkU7RUFDQyxlQVhVO0EvRnN3akJiO0ErRm53akJFO0VBQ0MsYUFKVTtBL0Z5d2pCYjtBK0Zwd2pCRztFQUNDLGFBQUE7QS9Gc3dqQko7QStGbHdqQkU7RUFDQyxlQVhVO0EvRit3akJiO0ErRjV3akJFO0VBQ0MsYUFKVTtBL0ZreGpCYjtBK0Y3d2pCRztFQUNDLGFBQUE7QS9GK3dqQko7QStGM3dqQkU7RUFDQyxlQVhVO0EvRnd4akJiO0ErRnJ4akJFO0VBQ0MsYUFKVTtBL0YyeGpCYjtBK0Z0eGpCRztFQUNDLGFBQUE7QS9Gd3hqQko7QStGcHhqQkU7RUFDQyxlQVhVO0EvRml5akJiO0ErRjl4akJFO0VBQ0MsYUFKVTtBL0ZveWpCYjtBK0YveGpCRztFQUNDLGFBQUE7QS9GaXlqQko7QStGN3hqQkU7RUFDQyxlQVhVO0EvRjB5akJiO0ErRnZ5akJFO0VBQ0MsYUFKVTtBL0Y2eWpCYjtBK0Z4eWpCRztFQUNDLGFBQUE7QS9GMHlqQko7QStGdHlqQkU7RUFDQyxlQVhVO0EvRm16akJiO0ErRmh6akJFO0VBQ0MsYUFKVTtBL0ZzempCYjtBK0ZqempCRztFQUNDLGFBQUE7QS9GbXpqQko7QStGL3lqQkU7RUFDQyxlQVhVO0EvRjR6akJiO0ErRnp6akJFO0VBQ0MsYUFKVTtBL0YrempCYjtBK0YxempCRztFQUNDLGFBQUE7QS9GNHpqQko7QStGeHpqQkU7RUFDQyxlQVhVO0EvRnEwakJiO0ErRmwwakJFO0VBQ0MsYUFKVTtBL0Z3MGpCYjtBK0ZuMGpCRztFQUNDLGFBQUE7QS9GcTBqQko7QStGajBqQkU7RUFDQyxlQVhVO0EvRjgwakJiO0ErRjMwakJFO0VBQ0MsYUFKVTtBL0ZpMWpCYjtBK0Y1MGpCRztFQUNDLGFBQUE7QS9GODBqQko7QStGMTBqQkU7RUFDQyxlQVhVO0EvRnUxakJiO0ErRnAxakJFO0VBQ0MsYUFKVTtBL0YwMWpCYjtBK0ZyMWpCRztFQUNDLGFBQUE7QS9GdTFqQko7QStGbjFqQkU7RUFDQyxlQVhVO0EvRmcyakJiO0ErRjcxakJFO0VBQ0MsYUFKVTtBL0ZtMmpCYjtBK0Y5MWpCRztFQUNDLGFBQUE7QS9GZzJqQko7QStGNTFqQkU7RUFDQyxlQVhVO0EvRnkyakJiO0ErRnIxakJFO0VBQ0MseUJBSlU7QS9GNDFqQmI7QStGejFqQkU7RUFDQyx5QkFKVTtBL0YrMWpCYjtBK0Y1MWpCRTtFQUNDLHlCQUpVO0EvRmsyakJiO0ErRi8xakJFO0VBQ0MseUJBSlU7QS9GcTJqQmI7QStGbDJqQkU7RUFDQyx5QkFKVTtBL0Z3MmpCYjtBK0ZyMmpCRTtFQUNDLHlCQUpVO0EvRjIyakJiO0ErRngyakJFO0VBQ0MseUJBSlU7QS9GODJqQmI7QStGMzJqQkU7RUFDQyx5QkFKVTtBL0ZpM2pCYjtBK0Y5MmpCRTtFQUNDLHlCQUpVO0EvRm8zakJiO0ErRmozakJFO0VBQ0MseUJBSlU7QS9GdTNqQmI7QStGcDNqQkU7RUFDQyx5QkFKVTtBL0YwM2pCYjtBK0Z2M2pCRTtFQUNDLHlCQUpVO0EvRjYzakJiO0ErRjEzakJFO0VBQ0MseUJBSlU7QS9GZzRqQmI7QStGNzNqQkU7RUFDQyx5QkFKVTtBL0ZtNGpCYjtBK0ZoNGpCRTtFQUNDLHlCQUpVO0EvRnM0akJiO0ErRm40akJFO0VBQ0MseUJBSlU7QS9GeTRqQmI7QStGdDRqQkU7RUFDQyx5QkFKVTtBL0Y0NGpCYjtBK0Z6NGpCRTtFQUNDLHlCQUpVO0EvRis0akJiO0ErRjU0akJFO0VBQ0MseUJBSlU7QS9GazVqQmI7QStGLzRqQkU7RUFDQyx5QkFKVTtBL0ZxNWpCYjtBK0ZsNWpCRTtFQUNDLHlCQUpVO0EvRnc1akJiO0ErRnI1akJFO0VBQ0MseUJBSlU7QS9GMjVqQmI7QStGeDVqQkU7RUFDQyx5QkFKVTtBL0Y4NWpCYjtBK0YzNWpCRTtFQUNDLHlCQUpVO0EvRmk2akJiO0ErRjk1akJFO0VBQ0MseUJBSlU7QS9GbzZqQmI7QStGajZqQkU7RUFDQyx5QkFKVTtBL0Z1NmpCYjtBK0ZwNmpCRTtFQUNDLHlCQUpVO0EvRjA2akJiO0ErRnY2akJFO0VBQ0MseUJBSlU7QS9GNjZqQmI7QStGMTZqQkU7RUFDQyx5QkFKVTtBL0ZnN2pCYjtBK0Y3NmpCRTtFQUNDLHlCQUpVO0EvRm03akJiO0ErRmg3akJFO0VBQ0MseUJBSlU7QS9GczdqQmI7QStGbjdqQkU7RUFDQyx5QkFKVTtBL0Z5N2pCYjtBK0Z0N2pCRTtFQUNDLHlCQUpVO0EvRjQ3akJiO0ErRno3akJFO0VBQ0MseUJBSlU7QS9GKzdqQmI7QStGNTdqQkU7RUFDQyx5QkFKVTtBL0ZrOGpCYjtBK0YvN2pCRTtFQUNDLHlCQUpVO0EvRnE4akJiO0ErRmw4akJFO0VBQ0MseUJBSlU7QS9GdzhqQmI7QStGcjhqQkU7RUFDQyx5QkFKVTtBL0YyOGpCYjtBK0Z4OGpCRTtFQUNDLHlCQUpVO0EvRjg4akJiO0ErRjM4akJFO0VBQ0MseUJBSlU7QS9GaTlqQmI7QStGOThqQkU7RUFDQyx5QkFKVTtBL0ZvOWpCYjtBK0ZqOWpCRTtFQUNDLHlCQUpVO0EvRnU5akJiO0ErRnA5akJFO0VBQ0MseUJBSlU7QS9GMDlqQmI7QStGdjlqQkU7RUFDQyx5QkFKVTtBL0Y2OWpCYjtBK0YxOWpCRTtFQUNDLHlCQUpVO0EvRmcrakJiO0ErRjc5akJFO0VBQ0MseUJBSlU7QS9GbStqQmI7QStGaCtqQkU7RUFDQyx5QkFKVTtBL0ZzK2pCYjtBK0ZuK2pCRTtFQUNDLHlCQUpVO0EvRnkrakJiO0ErRnQrakJFO0VBQ0MseUJBSlU7QS9GNCtqQmI7QStGeitqQkU7RUFDQyx5QkFKVTtBL0YrK2pCYjtBK0Y1K2pCRTtFQUNDLHlCQUpVO0EvRmsvakJiO0ErRi8rakJFO0VBQ0MseUJBSlU7QS9GcS9qQmI7QStGbC9qQkU7RUFDQyx5QkFKVTtBL0Z3L2pCYjtBK0ZyL2pCRTtFQUNDLHlCQUpVO0EvRjIvakJiO0ErRngvakJFO0VBQ0MseUJBSlU7QS9GOC9qQmI7QStGMy9qQkU7RUFDQyx5QkFKVTtBL0ZpZ2tCYjtBK0Y5L2pCRTtFQUNDLHlCQUpVO0EvRm9na0JiO0ErRmpna0JFO0VBQ0MseUJBSlU7QS9GdWdrQmI7QStGcGdrQkU7RUFDQyx5QkFKVTtBL0YwZ2tCYjtBK0Z2Z2tCRTtFQUNDLHlCQUpVO0EvRjZna0JiO0ErRjFna0JFO0VBQ0MseUJBSlU7QS9GZ2hrQmI7QStGN2drQkU7RUFDQyx5QkFKVTtBL0ZtaGtCYjtBK0ZoaGtCRTtFQUNDLHlCQUpVO0EvRnNoa0JiO0ErRm5oa0JFO0VBQ0MseUJBSlU7QS9GeWhrQmI7QStGdGhrQkU7RUFDQyx5QkFKVTtBL0Y0aGtCYjtBZ0cva2tCQztFQUNDLGtCQUFBO0FoR2tsa0JGO0FnRy9ra0JDO0VBQ0MsYWxGeUNVO0VrRnhDViwyRUFBQTtBaEdpbGtCRjtBZ0c5a2tCQztFQUNDLGFBQUE7QWhHZ2xrQkY7QWdHN2trQkM7RUFDQyxlbEY2QlE7QWRramtCVjtBaUdsbWtCQTtFQUNDLGVuRmtEVztBZGtqa0JaO0FrR2xta0JFO0VBQ0MsVUFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0FsR3Fta0JIO0FrRy9sa0JDO0VBQ0MsYXBGa0NRO0VvRmpDUixpQkFBQTtFQUNBLGVwRjJCaUI7QWR1a2tCbkI7QW1HaG5rQkM7RUFFRSxhckYwQ087QWR3a2tCVjtBbUczbWtCQztFQUNDLGVyRm9DUTtBZHlra0JWO0FtRzNta0JDO0VBQ0MsZXJGaUNRO0FkNGtrQlY7QW1HeG1rQkU7O0VBQ0Msb0JBQUE7RUFDQSxpQkFBQTtFQUNBLGVyRnlCTztBZGtsa0JWO0FtR3hta0JFOztFQUNDLHFCQUFBO0VBQ0EsZXJGaURPO0FkMGprQlY7QW9Hcm9rQkM7RUFTRSxlbEV1Um1CO0VrRXBScEIsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0FwRzhua0JGO0FxR3Rva0JDO0VBRUUsYXZGb0NPO0Fkb21rQlY7QXFHaG9rQkM7RUFDQyxpQkFBQTtFQUNBLDJCQUFBO0FyR2tva0JGO0FxRy9ua0JDO0VBQ0MsaUJBQUE7QXJHaW9rQkY7QXFHOW5rQkM7RUFDQyxpQkFBQTtFQUNBLGV2Rm1CUTtBZDZta0JWO0FxRzVua0JFO0VBQ0MsbUJ2RmNPO0FkZ25rQlY7QXFHM25rQkU7RUFDQyxtQm5Fb1dpQjtBbEN5eGpCcEI7QXFHeG5rQkM7RUFDQyx5QkFBQTtBckcwbmtCRjtBcUd2bmtCQztFQUNDLDhCQTdDZTtBckdzcWtCakI7QXFHcm5rQkU7RUFDQyxvQ0FsRGM7QXJHeXFrQmpCO0FxR3Bua0JFO0VBQ0MscUNBckRtQjtBckcycWtCdEI7QXNHdnFrQkM7RUFFRSxheEZvQ087QWRxb2tCVjtBc0dqcWtCQztFQUNDLGlCQUFBO0VBQ0EsMkJBQUE7QXRHbXFrQkY7QXNHaHFrQkM7RUFDQyxpQkFBQTtBdEdrcWtCRjtBc0cvcGtCQztFQUNDLGlCQUFBO0VBQ0EsZXhGbUJRO0FkOG9rQlY7QXNHN3BrQkU7RUFDQyxtQnhGY087QWRpcGtCVjtBc0c1cGtCRTtFQUNDLG1CcEVvV2lCO0FsQzB6akJwQjtBdUduc2tCQTtFQUNDLGV6RitDUztBZHVwa0JWO0F3R3Zza0JBO0VBQ0MsaUJBQUE7QXhHMHNrQkQ7QXlHM3NrQkE7RUFDQyx5QkFBQTtLQUFBLHNCQUFBO1VBQUEsaUJBQUE7QXpHOHNrQkQ7QXlHM3NrQkU7RUFDQyxpQkFBQTtFQUNBLGlCQUFBO0F6RzZza0JIO0F5RzNza0JHO0VBQ0MsZTNGMENRO0UyRnpDUixhM0ZrQ2M7QWQycWtCbEI7QXlHMXNrQkc7RUFDQyxhQUFBO0F6RzRza0JKO0F5R3hza0JFO0VBQ0MsVUFBQTtFQUNBLGV2RW1SaUI7RXVFbFJqQixlQUFBO0F6RzBza0JIO0F5R3Zza0JFO0VBQ0MsYTNGbUJlO0UyRmxCZixlM0ZrQmU7QWR1cmtCbEI7QXlHdHNrQkU7RUFDQyxlQUFBO0VBQ0EsYTNGb0JTO0Fkb3JrQlo7QXlHcHNrQkM7RUFDQyxlQUFBO0F6R3Nza0JGO0EwR3h1a0JBO0VBQ0MsYTVGK0NXO0U0RjlDWCxlQUFBO0VBQ0EsaUVBQUE7RUFDQSxnQkFBQTtBMUcydWtCRDtBMkdodmtCQzs7RUFFQyxhN0YrQ1U7QWRvc2tCWjtBMkcvdWtCRTtFQUNDLGE3RnlEWTtBZHdya0JmO0EyRzd1a0JHO0VBQ0MsYTdGc0RXO0FkeXJrQmY7QTJHNXVrQkc7RUFDQyxhekVnUmtCO0FsQzg5akJ0QjtBMkcxdWtCRTtFQUNDLGE3RjRDWTtBZGdza0JmO0EyR3p1a0JFO0VBUUUsYXpFd1dnQjtBbEM0M2pCcEI7QTRHbHdrQkE7RUNpREUsMkRBQUE7QTdHcXRrQkY7QTRHbHdrQkU7RUFDQyxpQkFBQTtFQUNBLGVBQUE7QTVHb3drQkg7QTRHbHdrQkk7RUFDQyxhOUZ5RVE7QWQycmtCYjtBNEdsd2tCSTtFQUNDLGlCQUFBO0E1R293a0JMO0E0Rzl2a0JLO0VBQ0MsZTlGbUNNO0U4RmxDTixlQUFBO0VBQ0EsbUJBQUE7QTVHZ3drQk47QTRHM3ZrQkc7RUFDQyx1QkFBQTtBNUc2dmtCSjtBNEczdmtCSTs7OztFQUlDLGE5RnFCTztBZHd1a0JaO0E0RzF2a0JJO0VBQ0MsZUFBQTtFQUNBLHVCQUFBO0E1RzR2a0JMO0E0R3h2a0JHO0VBQ0Msb0JBQUE7QTVHMHZrQko7QTRHeHZrQkk7Ozs7RUFJQyxhOUYrQ1c7QWQyc2tC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bHdsQkM7SUFDQyxldEZ3WGdCO0lzRnZYaEIsWUFBQTtFeEhvd2xCRjtFd0hsd2xCQztJQUNDLGUxRzBCTTtFZDB1bEJSO0FBQ0Y7QXdIOXdsQkU7RUFDQztJQUNDLGUxR2lDTTtFZG11bEJSO0V3SGx3bEJDO0lBQ0MsZXRGd1hnQjtJc0Z2WGhCLFlBQUE7RXhIb3dsQkY7RXdIbHdsQkM7SUFDQyxlMUcwQk07RWQwdWxCUjtBQUNGO0F5SHZ4bEJDO0VBQ0MsZUFBQTtFQUNBLG9CQUFBO0VOK0NBLDJEQUFBO0FuSDR1bEJGO0F5SHZ4bEJDO0VBQ0MsYTNHbUNRO0UyR2xDUixpQkFBQTtBekh5eGxCRjtBeUh0eGxCQztFQUNDLGVBQUE7QXpId3hsQkY7QXlIcnhsQkM7RUFDQyx3QkFBQTtBekh1eGxCRjtBMEh6eWxCQztFQUNDLGE1RzJDUTtBZGl3bEJWO0EwSHh5bEJFO0VBQ0MsYTVHMERZO0FkZ3ZsQmY7QTBIdnlsQkU7RUFDQyxhNUd3RFk7RTRHdkRaLGlCQUFBO0VBQ0EsZUNWb0I7QTNIbXpsQnZCO0EwSC94bEJFO0VBQ0MsYTVHMENZO0FkdXZsQmY7QTBIN3hsQkM7RUFDQyxlNUdvQlE7RTRHbkJSLGlCQUFBO0ExSCt4bEJGO0E0SDV6bEJDO0VBQ0MsYTlHMkNRO0U4RzFDUixpQkFBQTtBNUgremxCRjtBNEg1emxCQztFQUNDLGVBQUE7QTVIOHpsQkY7QTZIcDBsQkM7RUFDQyxtQkFBQTtBN0h1MGxCRjtBNkhwMGxCQzs7RUFFQyxpQkFBQTtFQUNBLGUvR3VDUTtBZCt4bEJWO0E2SG4wbEJDO0VBU0UsZTNGNlFtQjtBbENnamxCdEI7QThIOTBsQkM7RUFDQyxvQkFBQTtBOUhpMWxCRjtBK0hwMWxCQztFQUNDLGFqSDJDUTtBZDR5bEJWO0ErSG4xbEJFO0VBQ0MsYWpIMERZO0FkMnhsQmY7QStIbDFsQkU7RUFDQyxhakh3RFk7QWQ0eGxCZjtBK0hqMWxCRTtFQUNDLGFqSG1EWTtBZGd5bEJmO0FnSWoybEJDO0VBQ0Msb0JBQUE7QWhJbzJsQkY7QWdJajJsQkM7RUFDQyxpQkFBQTtBaEltMmxCRjtB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QSxrQkFBQTtFQUNBLDRCQUFBO0F6SXd1bkJGO0F5SXR1bkJFO0VBQ0Usa0IzSGlEVztBZHVybkJmO0F5SXJ1bkJFO0VBQ0UsaUIzSDZDVztFMkg1Q1gsbUJBQUE7QXpJdXVuQko7QXlJbnVuQkE7RUFDRSxjQUFBO0VBQ0EsYUFBQTtFQUNBLHVCQUFBO0VBQ0EsOEJBQUE7RUFDQSxpQkFBQTtFQUNBLG1CQUFBO0F6SXN1bkJGO0F5SXB1bkJFO0VBQ0UsbUJBQUE7QXpJc3VuQko7QXlJbHVuQkE7RUFDRSxPQUFBO0VBQ0Esb0JBQUE7RUFDQSxrQkFBQTtFQUNBLGtDQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQkFBQTtBeklxdW5CRjtBeUlsdW5CQTtFQUNFLGdCQUFBO0F6SXF1bkJGO0F5SWx1bkJBO0VBQ0Usb0NBQUE7RUFDQSxVQUFBO0F6SXF1bkJGO0F5SWx1bkJBO0VBQ0UsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGFBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0F6SXF1bkJGO0F5SWx1bkJBO0VBQ0UsWUFBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLHNDQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtBeklxdW5CRjtBeUlqdW5CQTtFQUNFLHlCM0hwSFE7QWR3MW5CVjtBeUlodW5CQTtFQUNFLGNBQUE7QXpJbXVuQkYiLCJmaWxlIjoic3R5bGVzLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUbyBjaGFuZ2UgdGhlIHRoZW1lIHVuY29tbWVudCB0aGUgYmVsb3cgaW1wb3J0IGFuZCB3aGljaCBldmVyIGNhcmJvbiB0aGVtZSB5b3Ugd2FudCB0byB1c2VcbkBpbXBvcnQgJ35jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL3RoZW1lcy90aGVtZS1tYXBzJztcblxuLy8gJGNhcmJvbi0tdGhlbWU6ICRjYXJib24tLXRoZW1lLS1nMTAwO1xuLy8gJGNhcmJvbi0tdGhlbWU6ICRjYXJib24tLXRoZW1lLS1nOTA7XG4gJGNhcmJvbi0tdGhlbWU6ICRjYXJib24tLXRoZW1lLS1nMTA7XG5cbkBpbXBvcnQgXCJ+Y2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3Mvc3R5bGVzXCI7XG5AaW1wb3J0IFwiQGNhcmJvbi9jaGFydHMvc3R5bGVzL3N0eWxlcy5zY3NzXCI7XG5cbkBpbXBvcnQgXCIuL2Fzc2V0cy9zY3NzL2NhcmJvbi1vdmVycmlkZS5zY3NzXCI7XG5AaW1wb3J0IFwiLi9hc3NldHMvc2Nzcy9jYXJkL2NhcmQuY29tcG9uZW50LnNjc3NcIjtcblxuQGltcG9ydCAnfm1hcGJveC1nbC9kaXN0L21hcGJveC1nbC5jc3MnO1xuQGltcG9ydCAnfkBtYXBib3gvbWFwYm94LWdsLWdlb2NvZGVyL2xpYi9tYXBib3gtZ2wtZ2VvY29kZXIuY3NzJzsiLCIubWFwYm94Z2wtbWFwe2ZvbnQ6MTJweC8yMHB4IEhlbHZldGljYSBOZXVlLEFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKX0ubWFwYm94Z2wtY2FudmFze3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0ubWFwYm94Z2wtbWFwOi13ZWJraXQtZnVsbC1zY3JlZW57d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ubWFwYm94Z2wtY2FuYXJ5e2JhY2tncm91bmQtY29sb3I6c2FsbW9ufS5tYXBib3hnbC1jYW52YXMtY29udGFpbmVyLm1hcGJveGdsLWludGVyYWN0aXZlLC5tYXBib3hnbC1jdHJsLWdyb3VwIGJ1dHRvbi5tYXBib3hnbC1jdHJsLWNvbXBhc3N7Y3Vyc29yOmdyYWI7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Lm1hcGJveGdsLWNhbnZhcy1jb250YWluZXIubWFwYm94Z2wtaW50ZXJhY3RpdmUubWFwYm94Z2wtdHJhY2stcG9pbnRlcntjdXJzb3I6cG9pbnRlcn0ubWFwYm94Z2wtY2FudmFzLWNvbnRhaW5lci5tYXBib3hnbC1pbnRlcmFjdGl2ZTphY3RpdmUsLm1hcGJveGdsLWN0cmwtZ3JvdXAgYnV0dG9uLm1hcGJveGdsLWN0cmwtY29tcGFzczphY3RpdmV7Y3Vyc29yOmdyYWJiaW5nfS5tYXBib3hnbC1jYW52YXMtY29udGFpbmVyLm1hcGJveGdsLXRvdWNoLXpvb20tcm90YXRlLC5tYXBib3hnbC1jYW52YXMtY29udGFpbmVyLm1hcGJveGdsLXRvdWNoLXpvb20tcm90YXRlIC5tYXBib3hnbC1jYW52YXN7dG91Y2gtYWN0aW9uOnBhbi14IHBhbi15fS5tYXBib3hnbC1jYW52YXMtY29udGFpbmVyLm1hcGJveGdsLXRvdWNoLWRyYWctcGFuLC5tYXBib3hnbC1jYW52YXMtY29udGFpbmVyLm1hcGJveGdsLXRvdWNoLWRyYWctcGFuIC5tYXBib3hnbC1jYW52YXN7dG91Y2gtYWN0aW9uOnBpbmNoLXpvb219Lm1hcGJveGdsLWNhbnZhcy1jb250YWluZXIubWFwYm94Z2wtdG91Y2gtem9vbS1yb3RhdGUubWFwYm94Z2wtdG91Y2gtZHJhZy1wYW4sLm1hcGJveGdsLWNhbnZhcy1jb250YWluZXIubWFwYm94Z2wtdG91Y2gtem9vbS1yb3RhdGUubWFwYm94Z2wtdG91Y2gtZHJhZy1wYW4gLm1hcGJveGdsLWNhbnZhc3t0b3VjaC1hY3Rpb246bm9uZX0ubWFwYm94Z2wtY3RybC1ib3R0b20tbGVmdCwubWFwYm94Z2wtY3RybC1ib3R0b20tcmlnaHQsLm1hcGJveGdsLWN0cmwtdG9wLWxlZnQsLm1hcGJveGdsLWN0cmwtdG9wLXJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDoyfS5tYXBib3hnbC1jdHJsLXRvcC1sZWZ0e3RvcDowO2xlZnQ6MH0ubWFwYm94Z2wtY3RybC10b3AtcmlnaHR7dG9wOjA7cmlnaHQ6MH0ubWFwYm94Z2wtY3RybC1ib3R0b20tbGVmdHtib3R0b206MDtsZWZ0OjB9Lm1hcGJveGdsLWN0cmwtYm90dG9tLXJpZ2h0e3JpZ2h0OjA7Ym90dG9tOjB9Lm1hcGJveGdsLWN0cmx7Y2xlYXI6Ym90aDtwb2ludGVyLWV2ZW50czphdXRvO3RyYW5zZm9ybTp0cmFuc2xhdGUoMCl9Lm1hcGJveGdsLWN0cmwtdG9wLWxlZnQgLm1hcGJveGdsLWN0cmx7bWFyZ2luOjEwcHggMCAwIDEwcHg7ZmxvYXQ6bGVmdH0ubWFwYm94Z2wtY3RybC10b3AtcmlnaHQgLm1hcGJveGdsLWN0cmx7bWFyZ2luOjEwcHggMTBweCAwIDA7ZmxvYXQ6cmlnaHR9Lm1hcGJveGdsLWN0cmwtYm90dG9tLWxlZnQgLm1hcGJveGdsLWN0cmx7bWFyZ2luOjAgMCAxMHB4IDEwcHg7ZmxvYXQ6bGVmdH0ubWFwYm94Z2wtY3RybC1ib3R0b20tcmlnaHQgLm1hcGJveGdsLWN0cmx7bWFyZ2luOjAgMTBweCAxMHB4IDA7ZmxvYXQ6cmlnaHR9Lm1hcGJveGdsLWN0cmwtZ3JvdXB7Ym9yZGVyLXJhZGl1czo0cHg7YmFja2dyb3VuZDojZmZmfS5tYXBib3hnbC1jdHJsLWdyb3VwOm5vdCg6ZW1wdHkpe2JveC1zaGFkb3c6MCAwIDAgMnB4IHJnYmEoMCwwLDAsLjEpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKXsubWFwYm94Z2wtY3RybC1ncm91cDpub3QoOmVtcHR5KXtib3gtc2hhZG93OjAgMCAwIDJweCBCdXR0b25UZXh0fX0ubWFwYm94Z2wtY3RybC1ncm91cCBidXR0b257d2lkdGg6MjlweDtoZWlnaHQ6MjlweDtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MDtvdXRsaW5lOm5vbmU7Ym9yZGVyOjA7Ym94LXNpemluZzpib3JkZXItYm94O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXJ9Lm1hcGJveGdsLWN0cmwtZ3JvdXAgYnV0dG9uK2J1dHRvbntib3JkZXItdG9wOjFweCBzb2xpZCAjZGRkfS5tYXBib3hnbC1jdHJsIGJ1dHRvbiAubWFwYm94Z2wtY3RybC1pY29ue2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCV9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpey5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ubWFwYm94Z2wtY3RybC1ncm91cCBidXR0b24rYnV0dG9ue2JvcmRlci10b3A6MXB4IHNvbGlkIEJ1dHRvblRleHR9fS5tYXBib3hnbC1jdHJsLWF0dHJpYi1idXR0b246Zm9jdXMsLm1hcGJveGdsLWN0cmwtZ3JvdXAgYnV0dG9uOmZvY3Vze2JveC1zaGFkb3c6MCAwIDJweCAycHggIzAwOTZmZn0ubWFwYm94Z2wtY3RybCBidXR0b246ZGlzYWJsZWR7Y3Vyc29yOm5vdC1hbGxvd2VkfS5tYXBib3hnbC1jdHJsIGJ1dHRvbjpkaXNhYmxlZCAubWFwYm94Z2wtY3RybC1pY29ue29wYWNpdHk6LjI1fS5tYXBib3hnbC1jdHJsIGJ1dHRvbjpub3QoOmRpc2FibGVkKTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA1KX0ubWFwYm94Z2wtY3RybC1ncm91cCBidXR0b246Zm9jdXM6Zm9jdXMtdmlzaWJsZXtib3gtc2hhZG93OjAgMCAycHggMnB4ICMwMDk2ZmZ9Lm1hcGJveGdsLWN0cmwtZ3JvdXAgYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSl7Ym94LXNoYWRvdzpub25lfS5tYXBib3hnbC1jdHJsLWdyb3VwIGJ1dHRvbjpmb2N1czpmaXJzdC1jaGlsZHtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwfS5tYXBib3hnbC1jdHJsLWdyb3VwIGJ1dHRvbjpmb2N1czpsYXN0LWNoaWxke2JvcmRlci1yYWRpdXM6MCAwIDRweCA0cHh9Lm1hcGJveGdsLWN0cmwtZ3JvdXAgYnV0dG9uOmZvY3VzOm9ubHktY2hpbGR7Ym9yZGVyLXJhZGl1czppbmhlcml0fS5tYXBib3hnbC1jdHJsIGJ1dHRvbi5tYXBib3hnbC1jdHJsLXpvb20tb3V0IC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzMzMzJyUzRSAlM0NwYXRoIGQ9J00xMCAxM2MtLjc1IDAtMS41Ljc1LTEuNSAxLjVTOS4yNSAxNiAxMCAxNmg5Yy43NSAwIDEuNS0uNzUgMS41LTEuNVMxOS43NSAxMyAxOSAxM2gtOXonLyUzRSAlM0Mvc3ZnJTNFXCIpfS5tYXBib3hnbC1jdHJsIGJ1dHRvbi5tYXBib3hnbC1jdHJsLXpvb20taW4gLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyOSAyOScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMzMzMnJTNFICUzQ3BhdGggZD0nTTE0LjUgOC41Yy0uNzUgMC0xLjUuNzUtMS41IDEuNXYzaC0zYy0uNzUgMC0xLjUuNzUtMS41IDEuNVM5LjI1IDE2IDEwIDE2aDN2M2MwIC43NS43NSAxLjUgMS41IDEuNVMxNiAxOS43NSAxNiAxOXYtM2gzYy43NSAwIDEuNS0uNzUgMS41LTEuNVMxOS43NSAxMyAxOSAxM2gtM3YtM2MwLS43NS0uNzUtMS41LTEuNS0xLjV6Jy8lM0UgJTNDL3N2ZyUzRVwiKX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSl7Lm1hcGJveGdsLWN0cmwgYnV0dG9uLm1hcGJveGdsLWN0cmwtem9vbS1vdXQgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyOSAyOScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNmZmYnJTNFICUzQ3BhdGggZD0nTTEwIDEzYy0uNzUgMC0xLjUuNzUtMS41IDEuNVM5LjI1IDE2IDEwIDE2aDljLjc1IDAgMS41LS43NSAxLjUtMS41UzE5Ljc1IDEzIDE5IDEzaC05eicvJTNFICUzQy9zdmclM0VcIil9Lm1hcGJveGdsLWN0cmwgYnV0dG9uLm1hcGJveGdsLWN0cmwtem9vbS1pbiAubWFwYm94Z2wtY3RybC1pY29ue2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHdpZHRoPScyOScgaGVpZ2h0PScyOScgdmlld0JveD0nMCAwIDI5IDI5JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZiclM0UgJTNDcGF0aCBkPSdNMTQuNSA4LjVjLS43NSAwLTEuNS43NS0xLjUgMS41djNoLTNjLS43NSAwLTEuNS43NS0xLjUgMS41UzkuMjUgMTYgMTAgMTZoM3YzYzAgLjc1Ljc1IDEuNSAxLjUgMS41UzE2IDE5Ljc1IDE2IDE5di0zaDNjLjc1IDAgMS41LS43NSAxLjUtMS41UzE5Ljc1IDEzIDE5IDEzaC0zdi0zYzAtLjc1LS43NS0xLjUtMS41LTEuNXonLyUzRSAlM0Mvc3ZnJTNFXCIpfX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmJsYWNrLW9uLXdoaXRlKXsubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC16b29tLW91dCAubWFwYm94Z2wtY3RybC1pY29ue2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHdpZHRoPScyOScgaGVpZ2h0PScyOScgdmlld0JveD0nMCAwIDI5IDI5JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyMzAwMCclM0UgJTNDcGF0aCBkPSdNMTAgMTNjLS43NSAwLTEuNS43NS0xLjUgMS41UzkuMjUgMTYgMTAgMTZoOWMuNzUgMCAxLjUtLjc1IDEuNS0xLjVTMTkuNzUgMTMgMTkgMTNoLTl6Jy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC16b29tLWluIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzMDAwJyUzRSAlM0NwYXRoIGQ9J00xNC41IDguNWMtLjc1IDAtMS41Ljc1LTEuNSAxLjV2M2gtM2MtLjc1IDAtMS41Ljc1LTEuNSAxLjVTOS4yNSAxNiAxMCAxNmgzdjNjMCAuNzUuNzUgMS41IDEuNSAxLjVTMTYgMTkuNzUgMTYgMTl2LTNoM2MuNzUgMCAxLjUtLjc1IDEuNS0xLjVTMTkuNzUgMTMgMTkgMTNoLTN2LTNjMC0uNzUtLjc1LTEuNS0xLjUtMS41eicvJTNFICUzQy9zdmclM0VcIil9fS5tYXBib3hnbC1jdHJsIGJ1dHRvbi5tYXBib3hnbC1jdHJsLWZ1bGxzY3JlZW4gLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyOSAyOScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMzMzMnJTNFICUzQ3BhdGggZD0nTTI0IDE2djUuNWMwIDEuNzUtLjc1IDIuNS0yLjUgMi41SDE2di0xbDMtMS41LTQtNS41IDEtMSA1LjUgNCAxLjUtM2gxek02IDE2bDEuNSAzIDUuNS00IDEgMS00IDUuNSAzIDEuNXYxSDcuNUM1Ljc1IDI0IDUgMjMuMjUgNSAyMS41VjE2aDF6bTctMTF2MWwtMyAxLjUgNCA1LjUtMSAxLTUuNS00TDYgMTNINVY3LjVDNSA1Ljc1IDUuNzUgNSA3LjUgNUgxM3ptMTEgMi41YzAtMS43NS0uNzUtMi41LTIuNS0yLjVIMTZ2MWwzIDEuNS00IDUuNSAxIDEgNS41LTQgMS41IDNoMVY3LjV6Jy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1zaHJpbmsgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyOSAyOScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSAlM0NwYXRoIGQ9J00xOC41IDE2Yy0xLjc1IDAtMi41Ljc1LTIuNSAyLjVWMjRoMWwxLjUtMyA1LjUgNCAxLTEtNC01LjUgMy0xLjV2LTFoLTUuNXpNMTMgMTguNWMwLTEuNzUtLjc1LTIuNS0yLjUtMi41SDV2MWwzIDEuNUw0IDI0bDEgMSA1LjUtNCAxLjUgM2gxdi01LjV6bTMtOGMwIDEuNzUuNzUgMi41IDIuNSAyLjVIMjR2LTFsLTMtMS41TDI1IDVsLTEtMS01LjUgNEwxNyA1aC0xdjUuNXpNMTAuNSAxM2MxLjc1IDAgMi41LS43NSAyLjUtMi41VjVoLTFsLTEuNSAzTDUgNCA0IDVsNCA1LjVMNSAxMnYxaDUuNXonLyUzRSAlM0Mvc3ZnJTNFXCIpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKXsubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1mdWxsc2NyZWVuIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyUzRSAlM0NwYXRoIGQ9J00yNCAxNnY1LjVjMCAxLjc1LS43NSAyLjUtMi41IDIuNUgxNnYtMWwzLTEuNS00LTUuNSAxLTEgNS41IDQgMS41LTNoMXpNNiAxNmwxLjUgMyA1LjUtNCAxIDEtNCA1LjUgMyAxLjV2MUg3LjVDNS43NSAyNCA1IDIzLjI1IDUgMjEuNVYxNmgxem03LTExdjFsLTMgMS41IDQgNS41LTEgMS01LjUtNEw2IDEzSDVWNy41QzUgNS43NSA1Ljc1IDUgNy41IDVIMTN6bTExIDIuNWMwLTEuNzUtLjc1LTIuNS0yLjUtMi41SDE2djFsMyAxLjUtNCA1LjUgMSAxIDUuNS00IDEuNSAzaDFWNy41eicvJTNFICUzQy9zdmclM0VcIil9Lm1hcGJveGdsLWN0cmwgYnV0dG9uLm1hcGJveGdsLWN0cmwtc2hyaW5rIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyUzRSAlM0NwYXRoIGQ9J00xOC41IDE2Yy0xLjc1IDAtMi41Ljc1LTIuNSAyLjVWMjRoMWwxLjUtMyA1LjUgNCAxLTEtNC01LjUgMy0xLjV2LTFoLTUuNXpNMTMgMTguNWMwLTEuNzUtLjc1LTIuNS0yLjUtMi41SDV2MWwzIDEuNUw0IDI0bDEgMSA1LjUtNCAxLjUgM2gxdi01LjV6bTMtOGMwIDEuNzUuNzUgMi41IDIuNSAyLjVIMjR2LTFsLTMtMS41TDI1IDVsLTEtMS01LjUgNEwxNyA1aC0xdjUuNXpNMTAuNSAxM2MxLjc1IDAgMi41LS43NSAyLjUtMi41VjVoLTFsLTEuNSAzTDUgNCA0IDVsNCA1LjVMNSAxMnYxaDUuNXonLyUzRSAlM0Mvc3ZnJTNFXCIpfX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmJsYWNrLW9uLXdoaXRlKXsubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1mdWxsc2NyZWVuIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzMDAwJyUzRSAlM0NwYXRoIGQ9J00yNCAxNnY1LjVjMCAxLjc1LS43NSAyLjUtMi41IDIuNUgxNnYtMWwzLTEuNS00LTUuNSAxLTEgNS41IDQgMS41LTNoMXpNNiAxNmwxLjUgMyA1LjUtNCAxIDEtNCA1LjUgMyAxLjV2MUg3LjVDNS43NSAyNCA1IDIzLjI1IDUgMjEuNVYxNmgxem03LTExdjFsLTMgMS41IDQgNS41LTEgMS01LjUtNEw2IDEzSDVWNy41QzUgNS43NSA1Ljc1IDUgNy41IDVIMTN6bTExIDIuNWMwLTEuNzUtLjc1LTIuNS0yLjUtMi41SDE2djFsMyAxLjUtNCA1LjUgMSAxIDUuNS00IDEuNSAzaDFWNy41eicvJTNFICUzQy9zdmclM0VcIil9Lm1hcGJveGdsLWN0cmwgYnV0dG9uLm1hcGJveGdsLWN0cmwtc2hyaW5rIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzMDAwJyUzRSAlM0NwYXRoIGQ9J00xOC41IDE2Yy0xLjc1IDAtMi41Ljc1LTIuNSAyLjVWMjRoMWwxLjUtMyA1LjUgNCAxLTEtNC01LjUgMy0xLjV2LTFoLTUuNXpNMTMgMTguNWMwLTEuNzUtLjc1LTIuNS0yLjUtMi41SDV2MWwzIDEuNUw0IDI0bDEgMSA1LjUtNCAxLjUgM2gxdi01LjV6bTMtOGMwIDEuNzUuNzUgMi41IDIuNSAyLjVIMjR2LTFsLTMtMS41TDI1IDVsLTEtMS01LjUgNEwxNyA1aC0xdjUuNXpNMTAuNSAxM2MxLjc1IDAgMi41LS43NSAyLjUtMi41VjVoLTFsLTEuNSAzTDUgNCA0IDVsNCA1LjVMNSAxMnYxaDUuNXonLyUzRSAlM0Mvc3ZnJTNFXCIpfX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1jb21wYXNzIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzMzMzJyUzRSAlM0NwYXRoIGQ9J00xMC41IDE0bDQtOCA0IDhoLTh6Jy8lM0UgJTNDcGF0aCBpZD0nc291dGgnIGQ9J00xMC41IDE2bDQgOCA0LThoLTh6JyBmaWxsPSclMjNjY2MnLyUzRSAlM0Mvc3ZnJTNFXCIpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKXsubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1jb21wYXNzIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZmZmJyUzRSAlM0NwYXRoIGQ9J00xMC41IDE0bDQtOCA0IDhoLTh6Jy8lM0UgJTNDcGF0aCBpZD0nc291dGgnIGQ9J00xMC41IDE2bDQgOCA0LThoLTh6JyBmaWxsPSclMjM5OTknLyUzRSAlM0Mvc3ZnJTNFXCIpfX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmJsYWNrLW9uLXdoaXRlKXsubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1jb21wYXNzIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjkgMjknIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzMDAwJyUzRSAlM0NwYXRoIGQ9J00xMC41IDE0bDQtOCA0IDhoLTh6Jy8lM0UgJTNDcGF0aCBpZD0nc291dGgnIGQ9J00xMC41IDE2bDQgOCA0LThoLTh6JyBmaWxsPSclMjNjY2MnLyUzRSAlM0Mvc3ZnJTNFXCIpfX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMzMzMnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBkaXNwbGF5PSdub25lJy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGU6ZGlzYWJsZWQgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNhYWEnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBmaWxsPSdyZWQnLyUzRSAlM0Mvc3ZnJTNFXCIpfS5tYXBib3hnbC1jdHJsIGJ1dHRvbi5tYXBib3hnbC1jdHJsLWdlb2xvY2F0ZS5tYXBib3hnbC1jdHJsLWdlb2xvY2F0ZS1hY3RpdmUgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMzM2I1ZTUnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBkaXNwbGF5PSdub25lJy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUtYWN0aXZlLWVycm9yIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjAgMjAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZTU4OTc4JyUzRSAlM0NwYXRoIGQ9J00xMCA0QzkgNCA5IDUgOSA1di4xQTUgNSAwIDAgMCA1LjEgOUg1cy0xIDAtMSAxIDEgMSAxIDFoLjFBNSA1IDAgMCAwIDkgMTQuOXYuMXMwIDEgMSAxIDEtMSAxLTF2LS4xYTUgNSAwIDAgMCAzLjktMy45aC4xczEgMCAxLTEtMS0xLTEtMWgtLjFBNSA1IDAgMCAwIDExIDUuMVY1czAtMS0xLTF6bTAgMi41YTMuNSAzLjUgMCAxIDEgMCA3IDMuNSAzLjUgMCAxIDEgMC03eicvJTNFICUzQ2NpcmNsZSBpZD0nZG90JyBjeD0nMTAnIGN5PScxMCcgcj0nMicvJTNFICUzQ3BhdGggaWQ9J3N0cm9rZScgZD0nTTE0IDVsMSAxLTkgOS0xLTEgOS05eicgZGlzcGxheT0nbm9uZScvJTNFICUzQy9zdmclM0VcIil9Lm1hcGJveGdsLWN0cmwgYnV0dG9uLm1hcGJveGdsLWN0cmwtZ2VvbG9jYXRlLm1hcGJveGdsLWN0cmwtZ2VvbG9jYXRlLWJhY2tncm91bmQgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMzM2I1ZTUnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJyBkaXNwbGF5PSdub25lJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBkaXNwbGF5PSdub25lJy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUtYmFja2dyb3VuZC1lcnJvciAubWFwYm94Z2wtY3RybC1pY29ue2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHdpZHRoPScyOScgaGVpZ2h0PScyOScgdmlld0JveD0nMCAwIDIwIDIwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2U1NGUzMyclM0UgJTNDcGF0aCBkPSdNMTAgNEM5IDQgOSA1IDkgNXYuMUE1IDUgMCAwIDAgNS4xIDlINXMtMSAwLTEgMSAxIDEgMSAxaC4xQTUgNSAwIDAgMCA5IDE0Ljl2LjFzMCAxIDEgMSAxLTEgMS0xdi0uMWE1IDUgMCAwIDAgMy45LTMuOWguMXMxIDAgMS0xLTEtMS0xLTFoLS4xQTUgNSAwIDAgMCAxMSA1LjFWNXMwLTEtMS0xem0wIDIuNWEzLjUgMy41IDAgMSAxIDAgNyAzLjUgMy41IDAgMSAxIDAtN3onLyUzRSAlM0NjaXJjbGUgaWQ9J2RvdCcgY3g9JzEwJyBjeT0nMTAnIHI9JzInIGRpc3BsYXk9J25vbmUnLyUzRSAlM0NwYXRoIGlkPSdzdHJva2UnIGQ9J00xNCA1bDEgMS05IDktMS0xIDktOXonIGRpc3BsYXk9J25vbmUnLyUzRSAlM0Mvc3ZnJTNFXCIpfS5tYXBib3hnbC1jdHJsIGJ1dHRvbi5tYXBib3hnbC1jdHJsLWdlb2xvY2F0ZS5tYXBib3hnbC1jdHJsLWdlb2xvY2F0ZS13YWl0aW5nIC5tYXBib3hnbC1jdHJsLWljb257YW5pbWF0aW9uOm1hcGJveGdsLXNwaW4gMnMgbGluZWFyIGluZmluaXRlfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKXsubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNmZmYnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBkaXNwbGF5PSdub25lJy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGU6ZGlzYWJsZWQgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjM5OTknJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBmaWxsPSdyZWQnLyUzRSAlM0Mvc3ZnJTNFXCIpfS5tYXBib3hnbC1jdHJsIGJ1dHRvbi5tYXBib3hnbC1jdHJsLWdlb2xvY2F0ZS5tYXBib3hnbC1jdHJsLWdlb2xvY2F0ZS1hY3RpdmUgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMzM2I1ZTUnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBkaXNwbGF5PSdub25lJy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUtYWN0aXZlLWVycm9yIC5tYXBib3hnbC1jdHJsLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI5JyBoZWlnaHQ9JzI5JyB2aWV3Qm94PScwIDAgMjAgMjAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nJTIzZTU4OTc4JyUzRSAlM0NwYXRoIGQ9J00xMCA0QzkgNCA5IDUgOSA1di4xQTUgNSAwIDAgMCA1LjEgOUg1cy0xIDAtMSAxIDEgMSAxIDFoLjFBNSA1IDAgMCAwIDkgMTQuOXYuMXMwIDEgMSAxIDEtMSAxLTF2LS4xYTUgNSAwIDAgMCAzLjktMy45aC4xczEgMCAxLTEtMS0xLTEtMWgtLjFBNSA1IDAgMCAwIDExIDUuMVY1czAtMS0xLTF6bTAgMi41YTMuNSAzLjUgMCAxIDEgMCA3IDMuNSAzLjUgMCAxIDEgMC03eicvJTNFICUzQ2NpcmNsZSBpZD0nZG90JyBjeD0nMTAnIGN5PScxMCcgcj0nMicvJTNFICUzQ3BhdGggaWQ9J3N0cm9rZScgZD0nTTE0IDVsMSAxLTkgOS0xLTEgOS05eicgZGlzcGxheT0nbm9uZScvJTNFICUzQy9zdmclM0VcIil9Lm1hcGJveGdsLWN0cmwgYnV0dG9uLm1hcGJveGdsLWN0cmwtZ2VvbG9jYXRlLm1hcGJveGdsLWN0cmwtZ2VvbG9jYXRlLWJhY2tncm91bmQgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMzM2I1ZTUnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJyBkaXNwbGF5PSdub25lJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBkaXNwbGF5PSdub25lJy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUtYmFja2dyb3VuZC1lcnJvciAubWFwYm94Z2wtY3RybC1pY29ue2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHdpZHRoPScyOScgaGVpZ2h0PScyOScgdmlld0JveD0nMCAwIDIwIDIwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2U1NGUzMyclM0UgJTNDcGF0aCBkPSdNMTAgNEM5IDQgOSA1IDkgNXYuMUE1IDUgMCAwIDAgNS4xIDlINXMtMSAwLTEgMSAxIDEgMSAxaC4xQTUgNSAwIDAgMCA5IDE0Ljl2LjFzMCAxIDEgMSAxLTEgMS0xdi0uMWE1IDUgMCAwIDAgMy45LTMuOWguMXMxIDAgMS0xLTEtMS0xLTFoLS4xQTUgNSAwIDAgMCAxMSA1LjFWNXMwLTEtMS0xem0wIDIuNWEzLjUgMy41IDAgMSAxIDAgNyAzLjUgMy41IDAgMSAxIDAtN3onLyUzRSAlM0NjaXJjbGUgaWQ9J2RvdCcgY3g9JzEwJyBjeT0nMTAnIHI9JzInIGRpc3BsYXk9J25vbmUnLyUzRSAlM0NwYXRoIGlkPSdzdHJva2UnIGQ9J00xNCA1bDEgMS05IDktMS0xIDktOXonIGRpc3BsYXk9J25vbmUnLyUzRSAlM0Mvc3ZnJTNFXCIpfX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmJsYWNrLW9uLXdoaXRlKXsubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGUgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjMwMDAnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBkaXNwbGF5PSdub25lJy8lM0UgJTNDL3N2ZyUzRVwiKX0ubWFwYm94Z2wtY3RybCBidXR0b24ubWFwYm94Z2wtY3RybC1nZW9sb2NhdGU6ZGlzYWJsZWQgLm1hcGJveGdsLWN0cmwtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjknIGhlaWdodD0nMjknIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjM2NjYnJTNFICUzQ3BhdGggZD0nTTEwIDRDOSA0IDkgNSA5IDV2LjFBNSA1IDAgMCAwIDUuMSA5SDVzLTEgMC0xIDEgMSAxIDEgMWguMUE1IDUgMCAwIDAgOSAxNC45di4xczAgMSAxIDEgMS0xIDEtMXYtLjFhNSA1IDAgMCAwIDMuOS0zLjloLjFzMSAwIDEtMS0xLTEtMS0xaC0uMUE1IDUgMCAwIDAgMTEgNS4xVjVzMC0xLTEtMXptMCAyLjVhMy41IDMuNSAwIDEgMSAwIDcgMy41IDMuNSAwIDEgMSAwLTd6Jy8lM0UgJTNDY2lyY2xlIGlkPSdkb3QnIGN4PScxMCcgY3k9JzEwJyByPScyJy8lM0UgJTNDcGF0aCBpZD0nc3Ryb2tlJyBkPSdNMTQgNWwxIDEtOSA5LTEtMSA5LTl6JyBmaWxsPSdyZWQnLyUzRSAlM0Mvc3ZnJTNFXCIpfX1Aa2V5ZnJhbWVzIG1hcGJveGdsLXNwaW57MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19YS5tYXBib3hnbC1jdHJsLWxvZ297d2lkdGg6ODhweDtoZWlnaHQ6MjNweDttYXJnaW46MCAwIC00cHggLTRweDtkaXNwbGF5OmJsb2NrO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtjdXJzb3I6cG9pbnRlcjtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9Jzg4JyBoZWlnaHQ9JzIzJyB2aWV3Qm94PScwIDAgODggMjMnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnIGZpbGwtcnVsZT0nZXZlbm9kZCclM0UgJTNDZGVmcyUzRSAlM0NwYXRoIGlkPSdsb2dvJyBkPSdNMTEuNSAyLjI1YzUuMTA1IDAgOS4yNSA0LjE0NSA5LjI1IDkuMjVzLTQuMTQ1IDkuMjUtOS4yNSA5LjI1LTkuMjUtNC4xNDUtOS4yNS05LjI1IDQuMTQ1LTkuMjUgOS4yNS05LjI1ek02Ljk5NyAxNS45ODNjLS4wNTEtLjMzOC0uODI4LTUuODAyIDIuMjMzLTguODczYTQuMzk1IDQuMzk1IDAgMDEzLjEzLTEuMjhjMS4yNyAwIDIuNDkuNTEgMy4zOSAxLjQyLjkxLjkgMS40MiAyLjEyIDEuNDIgMy4zOSAwIDEuMTgtLjQ0OSAyLjMwMS0xLjI4IDMuMTNDMTIuNzIgMTYuOTMgNyAxNiA3IDE2bC0uMDAzLS4wMTd6TTE1LjMgMTAuNWwtMiAuOC0uOCAyLS44LTItMi0uOCAyLS44LjgtMiAuOCAyIDIgLjh6Jy8lM0UgJTNDcGF0aCBpZD0ndGV4dCcgZD0nTTUwLjYzIDhjLjEzIDAgLjIzLjEuMjMuMjNWOWMuNy0uNzYgMS43LTEuMTggMi43My0xLjE4IDIuMTcgMCAzLjk1IDEuODUgMy45NSA0LjE3cy0xLjc3IDQuMTktMy45NCA0LjE5Yy0xLjA0IDAtMi4wMy0uNDMtMi43NC0xLjE4djMuNzdjMCAuMTMtLjEuMjMtLjIzLjIzaC0xLjRjLS4xMyAwLS4yMy0uMS0uMjMtLjIzVjguMjNjMC0uMTIuMS0uMjMuMjMtLjIzaDEuNHptLTMuODYuMDFjLjAxIDAgLjAxIDAgLjAxLS4wMS4xMyAwIC4yMi4xLjIyLjIydjcuNTVjMCAuMTItLjEuMjMtLjIzLjIzaC0xLjRjLS4xMyAwLS4yMy0uMS0uMjMtLjIzVjE1Yy0uNy43Ni0xLjY5IDEuMTktMi43MyAxLjE5LTIuMTcgMC0zLjk0LTEuODctMy45NC00LjE5IDAtMi4zMiAxLjc3LTQuMTkgMy45NC00LjE5IDEuMDMgMCAyLjAyLjQzIDIuNzMgMS4xOHYtLjc1YzAtLjEyLjEtLjIzLjIzLS4yM2gxLjR6bTI2LjM3NS0uMTlhNC4yNCA0LjI0IDAgMDAtNC4xNiAzLjI5Yy0uMTMuNTktLjEzIDEuMTkgMCAxLjc3YTQuMjMzIDQuMjMzIDAgMDA0LjE3IDMuM2MyLjM1IDAgNC4yNi0xLjg3IDQuMjYtNC4xOSAwLTIuMzItMS45LTQuMTctNC4yNy00LjE3ek02MC42MyA1Yy4xMyAwIC4yMy4xLjIzLjIzdjMuNzZjLjctLjc2IDEuNy0xLjE4IDIuNzMtMS4xOCAxLjg4IDAgMy40NSAxLjQgMy44NCAzLjI4LjEzLjU5LjEzIDEuMiAwIDEuOC0uMzkgMS44OC0xLjk2IDMuMjktMy44NCAzLjI5LTEuMDMgMC0yLjAyLS40My0yLjczLTEuMTh2Ljc3YzAgLjEyLS4xLjIzLS4yMy4yM2gtMS40Yy0uMTMgMC0uMjMtLjEtLjIzLS4yM1Y1LjIzYzAtLjEyLjEtLjIzLjIzLS4yM2gxLjR6bS0zNCAxMWgtMS40Yy0uMTMgMC0uMjMtLjExLS4yMy0uMjNWOC4yMmMuMDEtLjEzLjEtLjIyLjIzLS4yMmgxLjRjLjEzIDAgLjIyLjExLjIzLjIydi42OGMuNS0uNjggMS4zLTEuMDkgMi4xNi0xLjFoLjAzYzEuMDkgMCAyLjA5LjYgMi42IDEuNTUuNDUtLjk1IDEuNC0xLjU1IDIuNDQtMS41NiAxLjYyIDAgMi45MyAxLjI1IDIuOSAyLjc4bC4wMyA1LjJjMCAuMTMtLjEuMjMtLjIzLjIzaC0xLjQxYy0uMTMgMC0uMjMtLjExLS4yMy0uMjN2LTQuNTljMC0uOTgtLjc0LTEuNzEtMS42Mi0xLjcxLS44IDAtMS40Ni43LTEuNTkgMS42MmwuMDEgNC42OGMwIC4xMy0uMTEuMjMtLjIzLjIzaC0xLjQxYy0uMTMgMC0uMjMtLjExLS4yMy0uMjN2LTQuNTljMC0uOTgtLjc0LTEuNzEtMS42Mi0xLjcxLS44NSAwLTEuNTQuNzktMS42IDEuOHY0LjVjMCAuMTMtLjEuMjMtLjIzLjIzem01My42MTUgMGgtMS42MWMtLjA0IDAtLjA4LS4wMS0uMTItLjAzLS4wOS0uMDYtLjEzLS4xOS0uMDYtLjI4bDIuNDMtMy43MS0yLjM5LTMuNjVhLjIxMy4yMTMgMCAwMS0uMDMtLjEyYzAtLjEyLjA5LS4yMS4yMS0uMjFoMS42MWMuMTMgMCAuMjQuMDYuMy4xN2wxLjQxIDIuMzcgMS40LTIuMzdhLjM0LjM0IDAgMDEuMy0uMTdoMS42Yy4wNCAwIC4wOC4wMS4xMi4wMy4wOS4wNi4xMy4xOS4wNi4yOGwtMi4zNyAzLjY1IDIuNDMgMy43YzAgLjA1LjAxLjA5LjAxLjEzIDAgLjEyLS4wOS4yMS0uMjEuMjFoLTEuNjFjLS4xMyAwLS4yNC0uMDYtLjMtLjE3bC0xLjQ0LTIuNDItMS40NCAyLjQyYS4zNC4zNCAwIDAxLS4zLjE3em0tNy4xMi0xLjQ5Yy0xLjMzIDAtMi40Mi0xLjEyLTIuNDItMi41MSAwLTEuMzkgMS4wOC0yLjUyIDIuNDItMi41MiAxLjMzIDAgMi40MiAxLjEyIDIuNDIgMi41MSAwIDEuMzktMS4wOCAyLjUxLTIuNDIgMi41MnptLTE5Ljg2NSAwYy0xLjMyIDAtMi4zOS0xLjExLTIuNDItMi40OHYtLjA3Yy4wMi0xLjM4IDEuMDktMi40OSAyLjQtMi40OSAxLjMyIDAgMi40MSAxLjEyIDIuNDEgMi41MSAwIDEuMzktMS4wNyAyLjUyLTIuMzkgMi41M3ptLTguMTEtMi40OGMtLjAxIDEuMzctMS4wOSAyLjQ3LTIuNDEgMi40N3MtMi40Mi0xLjEyLTIuNDItMi41MWMwLTEuMzkgMS4wOC0yLjUyIDIuNC0yLjUyIDEuMzMgMCAyLjM5IDEuMTEgMi40MSAyLjQ4bC4wMi4wOHptMTguMTIgMi40N2MtMS4zMiAwLTIuMzktMS4xMS0yLjQxLTIuNDh2LS4wNmMuMDItMS4zOCAxLjA5LTIuNDggMi40MS0yLjQ4czIuNDIgMS4xMiAyLjQyIDIuNTFjMCAxLjM5LTEuMDkgMi41MS0yLjQyIDIuNTF6Jy8lM0UgJTNDL2RlZnMlM0UgJTNDbWFzayBpZD0nY2xpcCclM0UgJTNDcmVjdCB4PScwJyB5PScwJyB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgZmlsbD0nd2hpdGUnLyUzRSAlM0N1c2UgeGxpbms6aHJlZj0nJTIzbG9nbycvJTNFICUzQ3VzZSB4bGluazpocmVmPSclMjN0ZXh0Jy8lM0UgJTNDL21hc2slM0UgJTNDZyBpZD0nb3V0bGluZScgb3BhY2l0eT0nMC4zJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLXdpZHRoPSczJyUzRSAlM0NjaXJjbGUgbWFzaz0ndXJsKCUyM2NsaXApJyBjeD0nMTEuNScgY3k9JzExLjUnIHI9JzkuMjUnLyUzRSAlM0N1c2UgeGxpbms6aHJlZj0nJTIzdGV4dCcgbWFzaz0ndXJsKCUyM2NsaXApJy8lM0UgJTNDL2clM0UgJTNDZyBpZD0nZmlsbCcgb3BhY2l0eT0nMC45JyBmaWxsPSclMjNmZmYnJTNFICUzQ3VzZSB4bGluazpocmVmPSclMjNsb2dvJy8lM0UgJTNDdXNlIHhsaW5rOmhyZWY9JyUyM3RleHQnLyUzRSAlM0MvZyUzRSAlM0Mvc3ZnJTNFXCIpfWEubWFwYm94Z2wtY3RybC1sb2dvLm1hcGJveGdsLWNvbXBhY3R7d2lkdGg6MjNweH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSl7YS5tYXBib3hnbC1jdHJsLWxvZ297YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nODgnIGhlaWdodD0nMjMnIHZpZXdCb3g9JzAgMCA4OCAyMycgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycgZmlsbC1ydWxlPSdldmVub2RkJyUzRSAlM0NkZWZzJTNFICUzQ3BhdGggaWQ9J2xvZ28nIGQ9J00xMS41IDIuMjVjNS4xMDUgMCA5LjI1IDQuMTQ1IDkuMjUgOS4yNXMtNC4xNDUgOS4yNS05LjI1IDkuMjUtOS4yNS00LjE0NS05LjI1LTkuMjUgNC4xNDUtOS4yNSA5LjI1LTkuMjV6TTYuOTk3IDE1Ljk4M2MtLjA1MS0uMzM4LS44MjgtNS44MDIgMi4yMzMtOC44NzNhNC4zOTUgNC4zOTUgMCAwMTMuMTMtMS4yOGMxLjI3IDAgMi40OS41MSAzLjM5IDEuNDIuOTEuOSAxLjQyIDIuMTIgMS40MiAzLjM5IDAgMS4xOC0uNDQ5IDIuMzAxLTEuMjggMy4xM0MxMi43MiAxNi45MyA3IDE2IDcgMTZsLS4wMDMtLjAxN3pNMTUuMyAxMC41bC0yIC44LS44IDItLjgtMi0yLS44IDItLjguOC0yIC44IDIgMiAuOHonLyUzRSAlM0NwYXRoIGlkPSd0ZXh0JyBkPSdNNTAuNjMgOGMuMTMgMCAuMjMuMS4yMy4yM1Y5Yy43LS43NiAxLjctMS4xOCAyLjczLTEuMTggMi4xNyAwIDMuOTUgMS44NSAzLjk1IDQuMTdzLTEuNzcgNC4xOS0zLjk0IDQuMTljLTEuMDQgMC0yLjAzLS40My0yLjc0LTEuMTh2My43N2MwIC4xMy0uMS4yMy0uMjMuMjNoLTEuNGMtLjEzIDAtLjIzLS4xLS4yMy0uMjNWOC4yM2MwLS4xMi4xLS4yMy4yMy0uMjNoMS40em0tMy44Ni4wMWMuMDEgMCAuMDEgMCAuMDEtLjAxLjEzIDAgLjIyLjEuMjIuMjJ2Ny41NWMwIC4xMi0uMS4yMy0uMjMuMjNoLTEuNGMtLjEzIDAtLjIzLS4xLS4yMy0uMjNWMTVjLS43Ljc2LTEuNjkgMS4xOS0yLjczIDEuMTktMi4xNyAwLTMuOTQtMS44Ny0zLjk0LTQuMTkgMC0yLjMyIDEuNzctNC4xOSAzLjk0LTQuMTkgMS4wMyAwIDIuMDIuNDMgMi43MyAxLjE4di0uNzVjMC0uMTIuMS0uMjMuMjMtLjIzaDEuNHptMjYuMzc1LS4xOWE0LjI0IDQuMjQgMCAwMC00LjE2IDMuMjljLS4xMy41OS0uMTMgMS4xOSAwIDEuNzdhNC4yMzMgNC4yMzMgMCAwMDQuMTcgMy4zYzIuMzUgMCA0LjI2LTEuODcgNC4yNi00LjE5IDAtMi4zMi0xLjktNC4xNy00LjI3LTQuMTd6TTYwLjYzIDVjLjEzIDAgLjIzLjEuMjMuMjN2My43NmMuNy0uNzYgMS43LTEuMTggMi43My0xLjE4IDEuODggMCAzLjQ1IDEuNCAzLjg0IDMuMjguMTMuNTkuMTMgMS4yIDAgMS44LS4zOSAxLjg4LTEuOTYgMy4yOS0zLjg0IDMuMjktMS4wMyAwLTIuMDItLjQzLTIuNzMtMS4xOHYuNzdjMCAuMTItLjEuMjMtLjIzLjIzaC0xLjRjLS4xMyAwLS4yMy0uMS0uMjMtLjIzVjUuMjNjMC0uMTIuMS0uMjMuMjMtLjIzaDEuNHptLTM0IDExaC0xLjRjLS4xMyAwLS4yMy0uMTEtLjIzLS4yM1Y4LjIyYy4wMS0uMTMuMS0uMjIuMjMtLjIyaDEuNGMuMTMgMCAuMjIuMTEuMjMuMjJ2LjY4Yy41LS42OCAxLjMtMS4wOSAyLjE2LTEuMWguMDNjMS4wOSAwIDIuMDkuNiAyLjYgMS41NS40NS0uOTUgMS40LTEuNTUgMi40NC0xLjU2IDEuNjIgMCAyLjkzIDEuMjUgMi45IDIuNzhsLjAzIDUuMmMwIC4xMy0uMS4yMy0uMjMuMjNoLTEuNDFjLS4xMyAwLS4yMy0uMTEtLjIzLS4yM3YtNC41OWMwLS45OC0uNzQtMS43MS0xLjYyLTEuNzEtLjggMC0xLjQ2LjctMS41OSAxLjYybC4wMSA0LjY4YzAgLjEzLS4xMS4yMy0uMjMuMjNoLTEuNDFjLS4xMyAwLS4yMy0uMTEtLjIzLS4yM3YtNC41OWMwLS45OC0uNzQtMS43MS0xLjYyLTEuNzEtLjg1IDAtMS41NC43OS0xLjYgMS44djQuNWMwIC4xMy0uMS4yMy0uMjMuMjN6bTUzLjYxNSAwaC0xLjYxYy0uMDQgMC0uMDgtLjAxLS4xMi0uMDMtLjA5LS4wNi0uMTMtLjE5LS4wNi0uMjhsMi40My0zLjcxLTIuMzktMy42NWEuMjEzLjIxMyAwIDAxLS4wMy0uMTJjMC0uMTIuMDktLjIxLjIxLS4yMWgxLjYxYy4xMyAwIC4yNC4wNi4zLjE3bDEuNDEgMi4zNyAxLjQtMi4zN2EuMzQuMzQgMCAwMS4zLS4xN2gxLjZjLjA0IDAgLjA4LjAxLjEyLjAzLjA5LjA2LjEzLjE5LjA2LjI4bC0yLjM3IDMuNjUgMi40MyAzLjdjMCAuMDUuMDEuMDkuMDEuMTMgMCAuMTItLjA5LjIxLS4yMS4yMWgtMS42MWMtLjEzIDAtLjI0LS4wNi0uMy0uMTdsLTEuNDQtMi40Mi0xLjQ0IDIuNDJhLjM0LjM0IDAgMDEtLjMuMTd6bS03LjEyLTEuNDljLTEuMzMgMC0yLjQyLTEuMTItMi40Mi0yLjUxIDAtMS4zOSAxLjA4LTIuNTIgMi40Mi0yLjUyIDEuMzMgMCAyLjQyIDEuMTIgMi40MiAyLjUxIDAgMS4zOS0xLjA4IDIuNTEtMi40MiAyLjUyem0tMTkuODY1IDBjLTEuMzIgMC0yLjM5LTEuMTEtMi40Mi0yLjQ4di0uMDdjLjAyLTEuMzggMS4wOS0yLjQ5IDIuNC0yLjQ5IDEuMzIgMCAyLjQxIDEuMTIgMi40MSAyLjUxIDAgMS4zOS0xLjA3IDIuNTItMi4zOSAyLjUzem0tOC4xMS0yLjQ4Yy0uMDEgMS4zNy0xLjA5IDIuNDctMi40MSAyLjQ3cy0yLjQyLTEuMTItMi40Mi0yLjUxYzAtMS4zOSAxLjA4LTIuNTIgMi40LTIuNTIgMS4zMyAwIDIuMzkgMS4xMSAyLjQxIDIuNDhsLjAyLjA4em0xOC4xMiAyLjQ3Yy0xLjMyIDAtMi4zOS0xLjExLTIuNDEtMi40OHYtLjA2Yy4wMi0xLjM4IDEuMDktMi40OCAyLjQxLTIuNDhzMi40MiAxLjEyIDIuNDIgMi41MWMwIDEuMzktMS4wOSAyLjUxLTIuNDIgMi41MXonLyUzRSAlM0MvZGVmcyUzRSAlM0NtYXNrIGlkPSdjbGlwJyUzRSAlM0NyZWN0IHg9JzAnIHk9JzAnIHdpZHRoPScxMDAlMjUnIGhlaWdodD0nMTAwJTI1JyBmaWxsPSd3aGl0ZScvJTNFICUzQ3VzZSB4bGluazpocmVmPSclMjNsb2dvJy8lM0UgJTNDdXNlIHhsaW5rOmhyZWY9JyUyM3RleHQnLyUzRSAlM0MvbWFzayUzRSAlM0NnIGlkPSdvdXRsaW5lJyBvcGFjaXR5PScxJyBzdHJva2U9JyUyMzAwMCcgc3Ryb2tlLXdpZHRoPSczJyUzRSAlM0NjaXJjbGUgbWFzaz0ndXJsKCUyM2NsaXApJyBjeD0nMTEuNScgY3k9JzExLjUnIHI9JzkuMjUnLyUzRSAlM0N1c2UgeGxpbms6aHJlZj0nJTIzdGV4dCcgbWFzaz0ndXJsKCUyM2NsaXApJy8lM0UgJTNDL2clM0UgJTNDZyBpZD0nZmlsbCcgb3BhY2l0eT0nMScgZmlsbD0nJTIzZmZmJyUzRSAlM0N1c2UgeGxpbms6aHJlZj0nJTIzbG9nbycvJTNFICUzQ3VzZSB4bGluazpocmVmPSclMjN0ZXh0Jy8lM0UgJTNDL2clM0UgJTNDL3N2ZyUzRVwiKX19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDpibGFjay1vbi13aGl0ZSl7YS5tYXBib3hnbC1jdHJsLWxvZ297YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9Jzg4JyBoZWlnaHQ9JzIzJyB2aWV3Qm94PScwIDAgODggMjMnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnIGZpbGwtcnVsZT0nZXZlbm9kZCclM0UgJTNDZGVmcyUzRSAlM0NwYXRoIGlkPSdsb2dvJyBkPSdNMTEuNSAyLjI1YzUuMTA1IDAgOS4yNSA0LjE0NSA5LjI1IDkuMjVzLTQuMTQ1IDkuMjUtOS4yNSA5LjI1LTkuMjUtNC4xNDUtOS4yNS05LjI1IDQuMTQ1LTkuMjUgOS4yNS05LjI1ek02Ljk5NyAxNS45ODNjLS4wNTEtLjMzOC0uODI4LTUuODAyIDIuMjMzLTguODczYTQuMzk1IDQuMzk1IDAgMDEzLjEzLTEuMjhjMS4yNyAwIDIuNDkuNTEgMy4zOSAxLjQyLjkxLjkgMS40MiAyLjEyIDEuNDIgMy4zOSAwIDEuMTgtLjQ0OSAyLjMwMS0xLjI4IDMuMTNDMTIuNzIgMTYuOTMgNyAxNiA3IDE2bC0uMDAzLS4wMTd6TTE1LjMgMTAuNWwtMiAuOC0uOCAyLS44LTItMi0uOCAyLS44LjgtMiAuOCAyIDIgLjh6Jy8lM0UgJTNDcGF0aCBpZD0ndGV4dCcgZD0nTTUwLjYzIDhjLjEzIDAgLjIzLjEuMjMuMjNWOWMuNy0uNzYgMS43LTEuMTggMi43My0xLjE4IDIuMTcgMCAzLjk1IDEuODUgMy45NSA0LjE3cy0xLjc3IDQuMTktMy45NCA0LjE5Yy0xLjA0IDAtMi4wMy0uNDMtMi43NC0xLjE4djMuNzdjMCAuMTMtLjEuMjMtLjIzLjIzaC0xLjRjLS4xMyAwLS4yMy0uMS0uMjMtLjIzVjguMjNjMC0uMTIuMS0uMjMuMjMtLjIzaDEuNHptLTMuODYuMDFjLjAxIDAgLjAxIDAgLjAxLS4wMS4xMyAwIC4yMi4xLjIyLjIydjcuNTVjMCAuMTItLjEuMjMtLjIzLjIzaC0xLjRjLS4xMyAwLS4yMy0uMS0uMjMtLjIzVjE1Yy0uNy43Ni0xLjY5IDEuMTktMi43MyAxLjE5LTIuMTcgMC0zLjk0LTEuODctMy45NC00LjE5IDAtMi4zMiAxLjc3LTQuMTkgMy45NC00LjE5IDEuMDMgMCAyLjAyLjQzIDIuNzMgMS4xOHYtLjc1YzAtLjEyLjEtLjIzLjIzLS4yM2gxLjR6bTI2LjM3NS0uMTlhNC4yNCA0LjI0IDAgMDAtNC4xNiAzLjI5Yy0uMTMuNTktLjEzIDEuMTkgMCAxLjc3YTQuMjMzIDQuMjMzIDAgMDA0LjE3IDMuM2MyLjM1IDAgNC4yNi0xLjg3IDQuMjYtNC4xOSAwLTIuMzItMS45LTQuMTctNC4yNy00LjE3ek02MC42MyA1Yy4xMyAwIC4yMy4xLjIzLjIzdjMuNzZjLjctLjc2IDEuNy0xLjE4IDIuNzMtMS4xOCAxLjg4IDAgMy40NSAxLjQgMy44NCAzLjI4LjEzLjU5LjEzIDEuMiAwIDEuOC0uMzkgMS44OC0xLjk2IDMuMjktMy44NCAzLjI5LTEuMDMgMC0yLjAyLS40My0yLjczLTEuMTh2Ljc3YzAgLjEyLS4xLjIzLS4yMy4yM2gtMS40Yy0uMTMgMC0uMjMtLjEtLjIzLS4yM1Y1LjIzYzAtLjEyLjEtLjIzLjIzLS4yM2gxLjR6bS0zNCAxMWgtMS40Yy0uMTMgMC0uMjMtLjExLS4yMy0uMjNWOC4yMmMuMDEtLjEzLjEtLjIyLjIzLS4yMmgxLjRjLjEzIDAgLjIyLjExLjIzLjIydi42OGMuNS0uNjggMS4zLTEuMDkgMi4xNi0xLjFoLjAzYzEuMDkgMCAyLjA5LjYgMi42IDEuNTUuNDUtLjk1IDEuNC0xLjU1IDIuNDQtMS41NiAxLjYyIDAgMi45MyAxLjI1IDIuOSAyLjc4bC4wMyA1LjJjMCAuMTMtLjEuMjMtLjIzLjIzaC0xLjQxYy0uMTMgMC0uMjMtLjExLS4yMy0uMjN2LTQuNTljMC0uOTgtLjc0LTEuNzEtMS42Mi0xLjcxLS44IDAtMS40Ni43LTEuNTkgMS42MmwuMDEgNC42OGMwIC4xMy0uMTEuMjMtLjIzLjIzaC0xLjQxYy0uMTMgMC0uMjMtLjExLS4yMy0uMjN2LTQuNTljMC0uOTgtLjc0LTEuNzEtMS42Mi0xLjcxLS44NSAwLTEuNTQuNzktMS42IDEuOHY0LjVjMCAuMTMtLjEuMjMtLjIzLjIzem01My42MTUgMGgtMS42MWMtLjA0IDAtLjA4LS4wMS0uMTItLjAzLS4wOS0uMDYtLjEzLS4xOS0uMDYtLjI4bDIuNDMtMy43MS0yLjM5LTMuNjVhLjIxMy4yMTMgMCAwMS0uMDMtLjEyYzAtLjEyLjA5LS4yMS4yMS0uMjFoMS42MWMuMTMgMCAuMjQuMDYuMy4xN2wxLjQxIDIuMzcgMS40LTIuMzdhLjM0LjM0IDAgMDEuMy0uMTdoMS42Yy4wNCAwIC4wOC4wMS4xMi4wMy4wOS4wNi4xMy4xOS4wNi4yOGwtMi4zNyAzLjY1IDIuNDMgMy43YzAgLjA1LjAxLjA5LjAxLjEzIDAgLjEyLS4wOS4yMS0uMjEuMjFoLTEuNjFjLS4xMyAwLS4yNC0uMDYtLjMtLjE3bC0xLjQ0LTIuNDItMS40NCAyLjQyYS4zNC4zNCAwIDAxLS4zLjE3em0tNy4xMi0xLjQ5Yy0xLjMzIDAtMi40Mi0xLjEyLTIuNDItMi41MSAwLTEuMzkgMS4wOC0yLjUyIDIuNDItMi41MiAxLjMzIDAgMi40MiAxLjEyIDIuNDIgMi41MSAwIDEuMzktMS4wOCAyLjUxLTIuNDIgMi41MnptLTE5Ljg2NSAwYy0xLjMyIDAtMi4zOS0xLjExLTIuNDItMi40OHYtLjA3Yy4wMi0xLjM4IDEuMDktMi40OSAyLjQtMi40OSAxLjMyIDAgMi40MSAxLjEyIDIuNDEgMi41MSAwIDEuMzktMS4wNyAyLjUyLTIuMzkgMi41M3ptLTguMTEtMi40OGMtLjAxIDEuMzctMS4wOSAyLjQ3LTIuNDEgMi40N3MtMi40Mi0xLjEyLTIuNDItMi41MWMwLTEuMzkgMS4wOC0yLjUyIDIuNC0yLjUyIDEuMzMgMCAyLjM5IDEuMTEgMi40MSAyLjQ4bC4wMi4wOHptMTguMTIgMi40N2MtMS4zMiAwLTIuMzktMS4xMS0yLjQxLTIuNDh2LS4wNmMuMDItMS4zOCAxLjA5LTIuNDggMi40MS0yLjQ4czIuNDIgMS4xMiAyLjQyIDIuNTFjMCAxLjM5LTEuMDkgMi41MS0yLjQyIDIuNTF6Jy8lM0UgJTNDL2RlZnMlM0UgJTNDbWFzayBpZD0nY2xpcCclM0UgJTNDcmVjdCB4PScwJyB5PScwJyB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgZmlsbD0nd2hpdGUnLyUzRSAlM0N1c2UgeGxpbms6aHJlZj0nJTIzbG9nbycvJTNFICUzQ3VzZSB4bGluazpocmVmPSclMjN0ZXh0Jy8lM0UgJTNDL21hc2slM0UgJTNDZyBpZD0nb3V0bGluZScgb3BhY2l0eT0nMScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS13aWR0aD0nMycgZmlsbD0nJTIzZmZmJyUzRSAlM0NjaXJjbGUgbWFzaz0ndXJsKCUyM2NsaXApJyBjeD0nMTEuNScgY3k9JzExLjUnIHI9JzkuMjUnLyUzRSAlM0N1c2UgeGxpbms6aHJlZj0nJTIzdGV4dCcgbWFzaz0ndXJsKCUyM2NsaXApJy8lM0UgJTNDL2clM0UgJTNDZyBpZD0nZmlsbCcgb3BhY2l0eT0nMScgZmlsbD0nJTIzMDAwJyUzRSAlM0N1c2UgeGxpbms6aHJlZj0nJTIzbG9nbycvJTNFICUzQ3VzZSB4bGluazpocmVmPSclMjN0ZXh0Jy8lM0UgJTNDL2clM0UgJTNDL3N2ZyUzRVwiKX19Lm1hcGJveGdsLWN0cmwubWFwYm94Z2wtY3RybC1hdHRyaWJ7cGFkZGluZzowIDVweDtiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC41KTttYXJnaW46MH1AbWVkaWEgc2NyZWVuey5tYXBib3hnbC1jdHJsLWF0dHJpYi5tYXBib3hnbC1jb21wYWN0e21pbi1oZWlnaHQ6MjBweDtwYWRkaW5nOjJweCAyNHB4IDJweCAwO21hcmdpbjoxMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjEycHh9Lm1hcGJveGdsLWN0cmwtYXR0cmliLm1hcGJveGdsLWNvbXBhY3Qtc2hvd3twYWRkaW5nOjJweCAyOHB4IDJweCA4cHg7dmlzaWJpbGl0eTp2aXNpYmxlfS5tYXBib3hnbC1jdHJsLWJvdHRvbS1sZWZ0Pi5tYXBib3hnbC1jdHJsLWF0dHJpYi5tYXBib3hnbC1jb21wYWN0LXNob3csLm1hcGJveGdsLWN0cmwtdG9wLWxlZnQ+Lm1hcGJveGdsLWN0cmwtYXR0cmliLm1hcGJveGdsLWNvbXBhY3Qtc2hvd3twYWRkaW5nOjJweCA4cHggMnB4IDI4cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS5tYXBib3hnbC1jdHJsLWF0dHJpYi5tYXBib3hnbC1jb21wYWN0IC5tYXBib3hnbC1jdHJsLWF0dHJpYi1pbm5lcntkaXNwbGF5Om5vbmV9Lm1hcGJveGdsLWN0cmwtYXR0cmliLWJ1dHRvbntkaXNwbGF5Om5vbmU7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0Nzdmcgd2lkdGg9JzI0JyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjAgMjAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbC1ydWxlPSdldmVub2RkJyUzRSAlM0NwYXRoIGQ9J000IDEwYTYgNiAwIDEgMCAxMiAwIDYgNiAwIDEgMC0xMiAwbTUtM2ExIDEgMCAxIDAgMiAwIDEgMSAwIDEgMC0yIDBtMCAzYTEgMSAwIDEgMSAyIDB2M2ExIDEgMCAxIDEtMiAwJy8lM0UgJTNDL3N2ZyUzRVwiKTtiYWNrZ3JvdW5kLWNvbG9yOmhzbGEoMCwwJSwxMDAlLC41KTt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOjEycHg7b3V0bGluZTpub25lO3RvcDowO3JpZ2h0OjA7Ym9yZGVyOjB9Lm1hcGJveGdsLWN0cmwtYm90dG9tLWxlZnQgLm1hcGJveGdsLWN0cmwtYXR0cmliLWJ1dHRvbiwubWFwYm94Z2wtY3RybC10b3AtbGVmdCAubWFwYm94Z2wtY3RybC1hdHRyaWItYnV0dG9ue2xlZnQ6MH0ubWFwYm94Z2wtY3RybC1hdHRyaWIubWFwYm94Z2wtY29tcGFjdC1zaG93IC5tYXBib3hnbC1jdHJsLWF0dHJpYi1pbm5lciwubWFwYm94Z2wtY3RybC1hdHRyaWIubWFwYm94Z2wtY29tcGFjdCAubWFwYm94Z2wtY3RybC1hdHRyaWItYnV0dG9ue2Rpc3BsYXk6YmxvY2t9Lm1hcGJveGdsLWN0cmwtYXR0cmliLm1hcGJveGdsLWNvbXBhY3Qtc2hvdyAubWFwYm94Z2wtY3RybC1hdHRyaWItYnV0dG9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDUpfS5tYXBib3hnbC1jdHJsLWJvdHRvbS1yaWdodD4ubWFwYm94Z2wtY3RybC1hdHRyaWIubWFwYm94Z2wtY29tcGFjdDphZnRlcntib3R0b206MDtyaWdodDowfS5tYXBib3hnbC1jdHJsLXRvcC1yaWdodD4ubWFwYm94Z2wtY3RybC1hdHRyaWIubWFwYm94Z2wtY29tcGFjdDphZnRlcnt0b3A6MDtyaWdodDowfS5tYXBib3hnbC1jdHJsLXRvcC1sZWZ0Pi5tYXBib3hnbC1jdHJsLWF0dHJpYi5tYXBib3hnbC1jb21wYWN0OmFmdGVye3RvcDowO2xlZnQ6MH0ubWFwYm94Z2wtY3RybC1ib3R0b20tbGVmdD4ubWFwYm94Z2wtY3RybC1hdHRyaWIubWFwYm94Z2wtY29tcGFjdDphZnRlcntib3R0b206MDtsZWZ0OjB9fUBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpey5tYXBib3hnbC1jdHJsLWF0dHJpYi5tYXBib3hnbC1jb21wYWN0OmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnIHdpZHRoPScyNCcgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDIwIDIwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGwtcnVsZT0nZXZlbm9kZCcgZmlsbD0nJTIzZmZmJyUzRSAlM0NwYXRoIGQ9J000IDEwYTYgNiAwIDEgMCAxMiAwIDYgNiAwIDEgMC0xMiAwbTUtM2ExIDEgMCAxIDAgMiAwIDEgMSAwIDEgMC0yIDBtMCAzYTEgMSAwIDEgMSAyIDB2M2ExIDEgMCAxIDEtMiAwJy8lM0UgJTNDL3N2ZyUzRVwiKX19QG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OmJsYWNrLW9uLXdoaXRlKXsubWFwYm94Z2wtY3RybC1hdHRyaWIubWFwYm94Z2wtY29tcGFjdDphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyMCAyMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnJTNFICUzQ3BhdGggZD0nTTQgMTBhNiA2IDAgMSAwIDEyIDAgNiA2IDAgMSAwLTEyIDBtNS0zYTEgMSAwIDEgMCAyIDAgMSAxIDAgMSAwLTIgMG0wIDNhMSAxIDAgMSAxIDIgMHYzYTEgMSAwIDEgMS0yIDAnLyUzRSAlM0Mvc3ZnJTNFXCIpfX0ubWFwYm94Z2wtY3RybC1hdHRyaWIgYXtjb2xvcjpyZ2JhKDAsMCwwLC43NSk7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm1hcGJveGdsLWN0cmwtYXR0cmliIGE6aG92ZXJ7Y29sb3I6aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5tYXBib3hnbC1jdHJsLWF0dHJpYiAubWFwYm94LWltcHJvdmUtbWFwe2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tbGVmdDoycHh9Lm1hcGJveGdsLWF0dHJpYi1lbXB0eXtkaXNwbGF5Om5vbmV9Lm1hcGJveGdsLWN0cmwtc2NhbGV7YmFja2dyb3VuZC1jb2xvcjpoc2xhKDAsMCUsMTAwJSwuNzUpO2ZvbnQtc2l6ZToxMHB4O2JvcmRlcjoycHggc29saWQgIzMzMztib3JkZXItdG9wOiMzMzM7cGFkZGluZzowIDVweDtjb2xvcjojMzMzO2JveC1zaXppbmc6Ym9yZGVyLWJveH0ubWFwYm94Z2wtcG9wdXB7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2Rpc3BsYXk6ZmxleDt3aWxsLWNoYW5nZTp0cmFuc2Zvcm07cG9pbnRlci1ldmVudHM6bm9uZX0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLXRvcCwubWFwYm94Z2wtcG9wdXAtYW5jaG9yLXRvcC1sZWZ0LC5tYXBib3hnbC1wb3B1cC1hbmNob3ItdG9wLXJpZ2h0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLWJvdHRvbSwubWFwYm94Z2wtcG9wdXAtYW5jaG9yLWJvdHRvbS1sZWZ0LC5tYXBib3hnbC1wb3B1cC1hbmNob3ItYm90dG9tLXJpZ2h0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfS5tYXBib3hnbC1wb3B1cC1hbmNob3ItbGVmdHtmbGV4LWRpcmVjdGlvbjpyb3d9Lm1hcGJveGdsLXBvcHVwLWFuY2hvci1yaWdodHtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZX0ubWFwYm94Z2wtcG9wdXAtdGlwe3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyOjEwcHggc29saWQgdHJhbnNwYXJlbnQ7ei1pbmRleDoxfS5tYXBib3hnbC1wb3B1cC1hbmNob3ItdG9wIC5tYXBib3hnbC1wb3B1cC10aXB7YWxpZ24tc2VsZjpjZW50ZXI7Ym9yZGVyLXRvcDpub25lO2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZn0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLXRvcC1sZWZ0IC5tYXBib3hnbC1wb3B1cC10aXB7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O2JvcmRlci10b3A6bm9uZTtib3JkZXItbGVmdDpub25lO2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZn0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLXRvcC1yaWdodCAubWFwYm94Z2wtcG9wdXAtdGlwe2FsaWduLXNlbGY6ZmxleC1lbmQ7Ym9yZGVyLXRvcDpub25lO2JvcmRlci1yaWdodDpub25lO2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZn0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLWJvdHRvbSAubWFwYm94Z2wtcG9wdXAtdGlwe2FsaWduLXNlbGY6Y2VudGVyO2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItdG9wLWNvbG9yOiNmZmZ9Lm1hcGJveGdsLXBvcHVwLWFuY2hvci1ib3R0b20tbGVmdCAubWFwYm94Z2wtcG9wdXAtdGlwe2FsaWduLXNlbGY6ZmxleC1zdGFydDtib3JkZXItYm90dG9tOm5vbmU7Ym9yZGVyLWxlZnQ6bm9uZTtib3JkZXItdG9wLWNvbG9yOiNmZmZ9Lm1hcGJveGdsLXBvcHVwLWFuY2hvci1ib3R0b20tcmlnaHQgLm1hcGJveGdsLXBvcHVwLXRpcHthbGlnbi1zZWxmOmZsZXgtZW5kO2JvcmRlci1ib3R0b206bm9uZTtib3JkZXItcmlnaHQ6bm9uZTtib3JkZXItdG9wLWNvbG9yOiNmZmZ9Lm1hcGJveGdsLXBvcHVwLWFuY2hvci1sZWZ0IC5tYXBib3hnbC1wb3B1cC10aXB7YWxpZ24tc2VsZjpjZW50ZXI7Ym9yZGVyLWxlZnQ6bm9uZTtib3JkZXItcmlnaHQtY29sb3I6I2ZmZn0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLXJpZ2h0IC5tYXBib3hnbC1wb3B1cC10aXB7YWxpZ24tc2VsZjpjZW50ZXI7Ym9yZGVyLXJpZ2h0Om5vbmU7Ym9yZGVyLWxlZnQtY29sb3I6I2ZmZn0ubWFwYm94Z2wtcG9wdXAtY2xvc2UtYnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowIDNweCAwIDA7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ubWFwYm94Z2wtcG9wdXAtY2xvc2UtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDUpfS5tYXBib3hnbC1wb3B1cC1jb250ZW50e3Bvc2l0aW9uOnJlbGF0aXZlO2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjNweDtib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTtwYWRkaW5nOjEwcHggMTBweCAxNXB4O3BvaW50ZXItZXZlbnRzOmF1dG99Lm1hcGJveGdsLXBvcHVwLWFuY2hvci10b3AtbGVmdCAubWFwYm94Z2wtcG9wdXAtY29udGVudHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjB9Lm1hcGJveGdsLXBvcHVwLWFuY2hvci10b3AtcmlnaHQgLm1hcGJveGdsLXBvcHVwLWNvbnRlbnR7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLWJvdHRvbS1sZWZ0IC5tYXBib3hnbC1wb3B1cC1jb250ZW50e2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0ubWFwYm94Z2wtcG9wdXAtYW5jaG9yLWJvdHRvbS1yaWdodCAubWFwYm94Z2wtcG9wdXAtY29udGVudHtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5tYXBib3hnbC1wb3B1cC10cmFjay1wb2ludGVye2Rpc3BsYXk6bm9uZX0ubWFwYm94Z2wtcG9wdXAtdHJhY2stcG9pbnRlciAqe3BvaW50ZXItZXZlbnRzOm5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ubWFwYm94Z2wtbWFwOmhvdmVyIC5tYXBib3hnbC1wb3B1cC10cmFjay1wb2ludGVye2Rpc3BsYXk6ZmxleH0ubWFwYm94Z2wtbWFwOmFjdGl2ZSAubWFwYm94Z2wtcG9wdXAtdHJhY2stcG9pbnRlcntkaXNwbGF5Om5vbmV9Lm1hcGJveGdsLW1hcmtlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtO29wYWNpdHk6MTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzfS5tYXBib3hnbC11c2VyLWxvY2F0aW9uLWRvdCwubWFwYm94Z2wtdXNlci1sb2NhdGlvbi1kb3Q6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6IzFkYTFmMjt3aWR0aDoxNXB4O2hlaWdodDoxNXB4O2JvcmRlci1yYWRpdXM6NTAlfS5tYXBib3hnbC11c2VyLWxvY2F0aW9uLWRvdDpiZWZvcmV7Y29udGVudDpcIlwiO3Bvc2l0aW9uOmFic29sdXRlO2FuaW1hdGlvbjptYXBib3hnbC11c2VyLWxvY2F0aW9uLWRvdC1wdWxzZSAycyBpbmZpbml0ZX0ubWFwYm94Z2wtdXNlci1sb2NhdGlvbi1kb3Q6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2NvbnRlbnQ6XCJcIjtoZWlnaHQ6MTlweDtsZWZ0Oi0ycHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0ycHg7d2lkdGg6MTlweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNoYWRvdzowIDAgM3B4IHJnYmEoMCwwLDAsLjM1KX1Aa2V5ZnJhbWVzIG1hcGJveGdsLXVzZXItbG9jYXRpb24tZG90LXB1bHNlezAle3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9NzAle3RyYW5zZm9ybTpzY2FsZSgzKTtvcGFjaXR5OjB9dG97dHJhbnNmb3JtOnNjYWxlKDEpO29wYWNpdHk6MH19Lm1hcGJveGdsLXVzZXItbG9jYXRpb24tZG90LXN0YWxle2JhY2tncm91bmQtY29sb3I6I2FhYX0ubWFwYm94Z2wtdXNlci1sb2NhdGlvbi1kb3Qtc3RhbGU6YWZ0ZXJ7ZGlzcGxheTpub25lfS5tYXBib3hnbC11c2VyLWxvY2F0aW9uLWFjY3VyYWN5LWNpcmNsZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjksMTYxLDI0MiwuMik7d2lkdGg6MXB4O2hlaWdodDoxcHg7Ym9yZGVyLXJhZGl1czoxMDAlfS5tYXBib3hnbC1jcm9zc2hhaXIsLm1hcGJveGdsLWNyb3NzaGFpciAubWFwYm94Z2wtaW50ZXJhY3RpdmUsLm1hcGJveGdsLWNyb3NzaGFpciAubWFwYm94Z2wtaW50ZXJhY3RpdmU6YWN0aXZle2N1cnNvcjpjcm9zc2hhaXJ9Lm1hcGJveGdsLWJveHpvb217cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjA7aGVpZ2h0OjA7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoycHggZG90dGVkICMyMDIwMjA7b3BhY2l0eTouNX1AbWVkaWEgcHJpbnR7Lm1hcGJveC1pbXByb3ZlLW1hcHtkaXNwbGF5Om5vbmV9fSIsIi8qIEJhc2ljcyAqL1xuLm1hcGJveGdsLWN0cmwtZ2VvY29kZXIsXG4ubWFwYm94Z2wtY3RybC1nZW9jb2RlciAqLFxuLm1hcGJveGdsLWN0cmwtZ2VvY29kZXIgKjphZnRlcixcbi5tYXBib3hnbC1jdHJsLWdlb2NvZGVyICo6YmVmb3JlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1hcGJveGdsLWN0cmwtZ2VvY29kZXIge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDI0MHB4O1xuICB6LWluZGV4OiAxO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHRyYW5zaXRpb246IHdpZHRoIC4yNXMsIG1pbi13aWR0aCAuMjVzO1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0taW5wdXQge1xuICBmb250OiBpbmhlcml0O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luOiAwO1xuICBoZWlnaHQ6IDUwcHg7XG4gIGNvbG9yOiAjNDA0MDQwOyAvKiBmYWxsYmFjayAqL1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgcGFkZGluZzogNnB4IDQ1cHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0taW5wdXQ6Oi1tcy1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7IC8qIGhpZGUgaW5wdXQgY2xlYXIgYnV0dG9uIGluIElFICovXG59XG5cbi5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1pbnB1dDpmb2N1cyB7XG4gIGNvbG9yOiAjNDA0MDQwOyAvKiBmYWxsYmFjayAqL1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG59XG5cbi5tYXBib3hnbC1jdHJsLWdlb2NvZGVyIC5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1waW4tcmlnaHQgPiAqIHtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogOHB4O1xuICB0b3A6IDdweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1hcGJveGdsLWN0cmwtZ2VvY29kZXIsXG4ubWFwYm94Z2wtY3RybC1nZW9jb2RlciAuc3VnZ2VzdGlvbnMge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAycHggcmdiYSgwLDAsMCwuMSk7XG59XG5cbi8qIENvbGxhcHNlZCAqL1xuLm1hcGJveGdsLWN0cmwtZ2VvY29kZXIubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0tY29sbGFwc2VkIHtcbiAgd2lkdGg6IDUwcHg7XG4gIG1pbi13aWR0aDogNTBweDtcbiAgdHJhbnNpdGlvbjogd2lkdGggLjI1cywgbWluLXdpZHRoIC4yNXM7XG59XG5cbi8qIFN1Z2dlc3Rpb25zICovXG4ubWFwYm94Z2wtY3RybC1nZW9jb2RlciAuc3VnZ2VzdGlvbnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAxMTAlOyAvKiBmYWxsYmFjayAqL1xuICB0b3A6IGNhbGMoMTAwJSArIDZweCk7XG4gIHotaW5kZXg6IDEwMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuLm1hcGJveGdsLWN0cmwtYm90dG9tLWxlZnQgLnN1Z2dlc3Rpb25zLFxuLm1hcGJveGdsLWN0cmwtYm90dG9tLXJpZ2h0IC5zdWdnZXN0aW9ucyB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2RlciAuc3VnZ2VzdGlvbnMgPiBsaSA+IGEge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgY29sb3I6ICM0MDQwNDA7XG59XG5cbi5tYXBib3hnbC1jdHJsLWdlb2NvZGVyIC5zdWdnZXN0aW9ucyA+IC5hY3RpdmUgPiBhLFxuLm1hcGJveGdsLWN0cmwtZ2VvY29kZXIgLnN1Z2dlc3Rpb25zID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICM0MDQwNDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0tc3VnZ2VzdGlvbi10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0tc3VnZ2VzdGlvbi10aXRsZSxcbi5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1zdWdnZXN0aW9uLWFkZHJlc3Mge1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogSWNvbnMgKi9cbi5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBzcGVhazogbm9uZTtcbiAgZmlsbDogIzc1NzU3NTtcbiAgdG9wOiAxNXB4O1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0taWNvbi1zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTNweDtcbiAgbGVmdDogMTJweDtcbiAgd2lkdGg6IDIzcHg7XG4gIGhlaWdodDogMjNweDtcbn1cblxuLm1hcGJveGdsLWN0cmwtZ2VvY29kZXItLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0taWNvbi1jbG9zZSB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG59XG5cbi5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1idXR0b246aG92ZXIgLm1hcGJveGdsLWN0cmwtZ2VvY29kZXItLWljb24tY2xvc2Uge1xuICBmaWxsOiAjOTA5MDkwO1xufVxuXG4ubWFwYm94Z2wtY3RybC1nZW9jb2Rlci0taWNvbi1sb2FkaW5nIHtcbiAgd2lkdGg6IDI2cHg7XG4gIGhlaWdodDogMjZweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgLW1vei1hbmltYXRpb246IHJvdGF0ZSAwLjhzIGluZmluaXRlIGN1YmljLWJlemllcigwLjQ1LCAwLjA1LCAwLjU1LCAwLjk1KTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHJvdGF0ZSAwLjhzIGluZmluaXRlIGN1YmljLWJlemllcigwLjQ1LCAwLjA1LCAwLjU1LCAwLjk1KTtcbiAgYW5pbWF0aW9uOiByb3RhdGUgMC44cyBpbmZpbml0ZSBjdWJpYy1iZXppZXIoMC40NSwgMC4wNSwgMC41NSwgMC45NSk7XG59XG5cbi8qIEFuaW1hdGlvbiAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLyogTWVkaWEgcXVlcmllcyovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuXG4gIC5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLm1hcGJveGdsLWN0cmwtZ2VvY29kZXItLWNvbGxhcHNlZCB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgbWluLXdpZHRoOiAzNnB4O1xuICB9XG5cbiAgLm1hcGJveGdsLWN0cmwtZ2VvY29kZXIge1xuICAgIHdpZHRoOiAzMy4zMzMzJTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgfVxuICAubWFwYm94Z2wtY3RybC1nZW9jb2RlciAuc3VnZ2VzdGlvbnMge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxuXG4gIC5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1pY29uIHtcbiAgICB0b3A6IDhweDtcbiAgfVxuXG4gIC5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1pY29uLWNsb3NlIHtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogM3B4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gIC5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1pY29uLXNlYXJjaCB7XG4gICAgbGVmdDogN3B4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuXG4gIC5tYXBib3hnbC1jdHJsLWdlb2NvZGVyLS1pbnB1dCB7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICAgIHBhZGRpbmc6IDZweCAzNXB4O1xuICB9XG5cbiAgLm1hcGJveGdsLWN0cmwtZ2VvY29kZXItLWljb24tbG9hZGluZyB7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICB9XG5cbiAgLm1hcGJveC1nbC1nZW9jb2Rlci0tZXJyb3J7XG4gICAgY29sb3I6IzkwOTA5MDtcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyXG4gIH1cblxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvdHlwZS9yZXNldCc7XG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaWNvbnMvbWl4aW5zJztcblxuLy8vIFJlc2V0cyBkZWZhdWx0IGJyb3dzZXIgc3R5bGluZ1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC1yZXNldFxuQG1peGluIHJlc2V0IHtcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhjc3MtLXJlc2V0KSA9PSBmYWxzZSBvciAkY3NzLS1yZXNldCA9PSBmYWxzZSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIGJvcmRlcjogMDtcblxuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Nzcy0tcmVzZXQnKSB7XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMoY3NzLS1yZXNldCkgPT0gZmFsc2Ugb3IgJGNzcy0tcmVzZXQgPT0gdHJ1ZSB7XG4gICAgLy8gaHR0cDovL2Nzc3Jlc2V0LmNvbS9zY3JpcHRzL2VyaWMtbWV5ZXItcmVzZXQtY3NzL1xuICAgIGh0bWwsXG4gICAgYm9keSxcbiAgICBkaXYsXG4gICAgc3BhbixcbiAgICBhcHBsZXQsXG4gICAgb2JqZWN0LFxuICAgIGlmcmFtZSxcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNixcbiAgICBwLFxuICAgIGJsb2NrcXVvdGUsXG4gICAgcHJlLFxuICAgIGEsXG4gICAgYWJicixcbiAgICBhY3JvbnltLFxuICAgIGFkZHJlc3MsXG4gICAgYmlnLFxuICAgIGNpdGUsXG4gICAgY29kZSxcbiAgICBkZWwsXG4gICAgZGZuLFxuICAgIGVtLFxuICAgIGltZyxcbiAgICBpbnMsXG4gICAga2JkLFxuICAgIHEsXG4gICAgcyxcbiAgICBzYW1wLFxuICAgIHNtYWxsLFxuICAgIHN0cmlrZSxcbiAgICBzdHJvbmcsXG4gICAgc3ViLFxuICAgIHN1cCxcbiAgICB0dCxcbiAgICB2YXIsXG4gICAgYixcbiAgICB1LFxuICAgIGksXG4gICAgY2VudGVyLFxuICAgIGRsLFxuICAgIGR0LFxuICAgIGRkLFxuICAgIG9sLFxuICAgIHVsLFxuICAgIGxpLFxuICAgIGZpZWxkc2V0LFxuICAgIGZvcm0sXG4gICAgbGFiZWwsXG4gICAgbGVnZW5kLFxuICAgIHRhYmxlLFxuICAgIGNhcHRpb24sXG4gICAgdGJvZHksXG4gICAgdGZvb3QsXG4gICAgdGhlYWQsXG4gICAgdHIsXG4gICAgdGgsXG4gICAgdGQsXG4gICAgYXJ0aWNsZSxcbiAgICBhc2lkZSxcbiAgICBjYW52YXMsXG4gICAgZGV0YWlscyxcbiAgICBlbWJlZCxcbiAgICBmaWd1cmUsXG4gICAgZmlnY2FwdGlvbixcbiAgICBmb290ZXIsXG4gICAgaGVhZGVyLFxuICAgIGhncm91cCxcbiAgICBtZW51LFxuICAgIG5hdixcbiAgICBvdXRwdXQsXG4gICAgcnVieSxcbiAgICBzZWN0aW9uLFxuICAgIHN1bW1hcnksXG4gICAgdGltZSxcbiAgICBtYXJrLFxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250OiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cblxuICAgIC8vIENocm9tZSA2MiBmaXhcbiAgICBidXR0b24sXG4gICAgc2VsZWN0LFxuICAgIGlucHV0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPSd0ZXh0J106Oi1tcy1jbGVhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGRldGFpbHMsXG4gICAgZmlnY2FwdGlvbixcbiAgICBmaWd1cmUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBoZ3JvdXAsXG4gICAgbWFpbixcbiAgICBtZW51LFxuICAgIG5hdixcbiAgICBzZWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIGJvZHkge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgc3VwIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgICB9XG5cbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGJsb2NrcXVvdGUsXG4gICAgcSB7XG4gICAgICBxdW90ZXM6IG5vbmU7XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZTo6YmVmb3JlLFxuICAgIGJsb2NrcXVvdGU6OmFmdGVyLFxuICAgIHE6OmJlZm9yZSxcbiAgICBxOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgfVxuXG4gICAgKiB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgIC8vIEZpeCB0byByZW1vdmUgYWRkZWQgbWFyZ2lucyBvbiBidXR0b25zIGluIHNhZmFyaSAoc2VlICM1MTU1KVxuICAgIGJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS10eXBlLXJlc2V0O1xuICAgIEBpbmNsdWRlIGNhcmJvbi0taWNvbnM7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY3NzLS1kZWZhdWx0LXR5cGUnKSB7XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMoY3NzLS1kZWZhdWx0LXR5cGUpID09IGZhbHNlIG9yICRjc3MtLWRlZmF1bHQtdHlwZSA9PSB0cnVlXG4gIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWRlZmF1bHQtdHlwZTtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uL2xheW91dC9jb252ZXJ0JztcbkBpbXBvcnQgJ2ZvbnQtZmFtaWx5JztcbkBpbXBvcnQgJ3N0eWxlcyc7XG5cbi8vLyBJbmNsdWRlIGEgdHlwZSByZXNldCBmb3IgYSBnaXZlbiBib2R5IGFuZCBtb25vIGZvbnQgZmFtaWx5XG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRib2R5LWZvbnQtZmFtaWx5IFtjYXJib24tLWZvbnQtZmFtaWx5KCdzYW5zJyldIC0gVGhlIGZvbnQgZmFtaWx5IHVzZWQgb24gdGhlIGA8Ym9keT5gIGVsZW1lbnRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1vbm8tZm9udC1mYW1pbHkgW2NhcmJvbi0tZm9udC1mYW1pbHkoJ21vbm8nKV0gLSBUaGUgZm9udCBmYW1pbHkgdXNlZCBvbiBlbGVtZW50cyB0aGF0IHJlcXVpcmUgbW9ubyBmb250cywgbGlrZSB0aGUgYDxjb2RlPmAgZWxlbWVudFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQG1peGluIGNhcmJvbi0tdHlwZS1yZXNldChcbiAgLy8gVE9ETzogcmVtb3ZlIGluIG5leHQgbWFqb3IgcmVsZWFzZS4gVGhpcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoIDEwMCVcbiAgJGJhc2UtZm9udC1zaXplOiAkY2FyYm9uLS1iYXNlLWZvbnQtc2l6ZSxcbiAgJGJvZHktZm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ3NhbnMnKSxcbiAgJG1vbm8tZm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ21vbm8nKVxuKSB7XG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgfVxuXG4gIGJvZHkge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKTtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIH1cblxuICBjb2RlIHtcbiAgICBmb250LWZhbWlseTogJG1vbm8tZm9udC1mYW1pbHk7XG4gIH1cblxuICBzdHJvbmcge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyk7XG4gIH1cbn1cblxuLy8vIEluY2x1ZGUgZGVmYXVsdCB0eXBlIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQG1peGluIGNhcmJvbi0tZGVmYXVsdC10eXBlIHtcbiAgaDEge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTA2Jyk7XG4gIH1cblxuICBoMiB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS10eXBlLXN0eWxlKCdwcm9kdWN0aXZlLWhlYWRpbmctMDUnKTtcbiAgfVxuXG4gIGgzIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLXR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wNCcpO1xuICB9XG5cbiAgaDQge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAzJyk7XG4gIH1cblxuICBoNSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS10eXBlLXN0eWxlKCdwcm9kdWN0aXZlLWhlYWRpbmctMDInKTtcbiAgfVxuXG4gIGg2IHtcbiAgICBAaW5jbHVkZSBjYXJib24tLXR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpO1xuICB9XG5cbiAgcCB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS10eXBlLXN0eWxlKCdib2R5LWxvbmctMDInKTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAjMDA2MmZmO1xuICB9XG5cbiAgZW0ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLyBGb250IGZhbWlseSBmYWxsYmFja3MgZm9yOiBJQk0gUGxleCBNb25vLCBJQk0gUGxleCBTYW5zLCBJQk0gUGxleCBTYW5zXG4vLy8gQ29uZGVuc2VkLCBJQk0gUGxleCBTYW5zIEhlYnJldywgYW5kIElCTSBQbGV4IFNlcmlmXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kY2FyYm9uLS1mb250LWZhbWlsaWVzOiAoXG4gICdtb25vJzpcbiAgICB1bnF1b3RlKFxuICAgICAgXCInSUJNIFBsZXggTW9ubycsICdNZW5sbycsICdEZWphVnUgU2FucyBNb25vJywgJ0JpdHN0cmVhbSBWZXJhIFNhbnMgTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZVwiXG4gICAgKSxcbiAgJ3NhbnMnOiB1bnF1b3RlKFwiJ0lCTSBQbGV4IFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZlwiKSxcbiAgJ3NhbnMtY29uZGVuc2VkJzpcbiAgICB1bnF1b3RlKFwiJ0lCTSBQbGV4IFNhbnMgQ29uZGVuc2VkJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIHNhbnMtc2VyaWZcIiksXG4gICdzYW5zLWhlYnJldyc6XG4gICAgdW5xdW90ZShcbiAgICAgIFwiJ0lCTSBQbGV4IFNhbnMgSGVicmV3JywgJ0hlbHZldGljYSBIZWJyZXcnLCAnQXJpYWwgSGVicmV3Jywgc2Fucy1zZXJpZlwiXG4gICAgKSxcbiAgJ3NlcmlmJzogdW5xdW90ZShcIidJQk0gUGxleCBTZXJpZicsICdHZW9yZ2lhJywgVGltZXMsIHNlcmlmXCIpLFxuKSAhZGVmYXVsdDtcblxuLy8vIEdldCB0aGUgZm9udC1mYW1pbHkgZm9yIGFuIElCTSBQbGV4IGZvbnRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWVcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AZnVuY3Rpb24gY2FyYm9uLS1mb250LWZhbWlseSgkbmFtZSkge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNhcmJvbi0tZm9udC1mYW1pbGllcywgJG5hbWUpO1xufVxuXG4vLy8gSW5jbHVkZSB0aGUgYGZvbnQtZmFtaWx5YCBkZWZpbml0aW9uIGZvciB0aGUgZ2l2ZW4gbmFtZSBpbiB5b3VyIHNlbGVjdG9yXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gY2FyYm9uLS1mb250LWZhbWlseSgkbmFtZSkge1xuICBmb250LWZhbWlseTogY2FyYm9uLS1mb250LWZhbWlseSgkbmFtZSk7XG59XG5cbi8vLyBTdWdnZXN0ZWQgZm9udCB3ZWlnaHRzIHRvIGJlIHVzZWQgaW4gcHJvZHVjdFxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGNhcmJvbi0tZm9udC13ZWlnaHRzOiAoXG4gICdsaWdodCc6IDMwMCxcbiAgJ3JlZ3VsYXInOiA0MDAsXG4gICdzZW1pYm9sZCc6IDYwMCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBSZXRyaWV2ZSB0aGUgZm9udC13ZWlnaHQgdmFsdWUgZm9yIGEgZ2l2ZW4gbmFtZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkd2VpZ2h0XG4vLy8gQHJldHVybiB7TnVtYmVyfVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQGZ1bmN0aW9uIGNhcmJvbi0tZm9udC13ZWlnaHQoJHdlaWdodCkge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNhcmJvbi0tZm9udC13ZWlnaHRzLCAkd2VpZ2h0KTtcbn1cblxuLy8vIFNldCB0aGUgYGZvbnQtd2VpZ2h0YCBwcm9wZXJ0eSB3aXRoIHRoZSB2YWx1ZSBmb3IgYSBnaXZlbiBuYW1lXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR3ZWlnaHRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbkBtaXhpbiBjYXJib24tLWZvbnQtd2VpZ2h0KCR3ZWlnaHQpIHtcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJHdlaWdodCk7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8vIE1ha2VzIFNWR3MgYWNjZXNzaWJsZSBpbiBoaWdoIGNvbnRyYXN0IG1vZGVcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vSUJNL2NhcmJvbi1lbGVtZW50cy9pc3N1ZXMvMzQ1I2lzc3VlY29tbWVudC00NjY1NzcyOTMgQ2FyYm9uLWVsZW1lbnRzICMzNDVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2ljb25zXG5AbWl4aW4gY2FyYm9uLS1pY29ucyB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vbGF5b3V0L2JyZWFrcG9pbnQnO1xuQGltcG9ydCAnZm9udC1mYW1pbHknO1xuQGltcG9ydCAnc2NhbGUnO1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kY2FwdGlvbi0wMTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IDEuMzQsXG4gIGxldHRlci1zcGFjaW5nOiAwLjMycHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kbGFiZWwtMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxLjM0LFxuICBsZXR0ZXItc3BhY2luZzogMC4zMnB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGhlbHBlci10ZXh0LTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEpLFxuICBsaW5lLWhlaWdodDogMS4zNCxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMzJweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRib2R5LXNob3J0LTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMS4yOSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRib2R5LWxvbmctMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMiksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxLjQzLFxuICBsZXR0ZXItc3BhY2luZzogMC4xNnB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGJvZHktc2hvcnQtMDI6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMyksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxLjM3NSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kYm9keS1sb25nLTAyOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDMpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMS41LFxuICBsZXR0ZXItc3BhY2luZzogMCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRjb2RlLTAxOiAoXG4gIGZvbnQtZmFtaWx5OiBjYXJib24tLWZvbnQtZmFtaWx5KCdtb25vJyksXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMS4zNCxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMzJweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRjb2RlLTAyOiAoXG4gIGZvbnQtZmFtaWx5OiBjYXJib24tLWZvbnQtZmFtaWx5KCdtb25vJyksXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMS40MyxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMzJweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRoZWFkaW5nLTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgnc2VtaWJvbGQnKSxcbiAgbGluZS1oZWlnaHQ6IDEuMjksXG4gIGxldHRlci1zcGFjaW5nOiAwLjE2cHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kcHJvZHVjdGl2ZS1oZWFkaW5nLTAxOiAkaGVhZGluZy0wMSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGhlYWRpbmctMDI6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMyksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdzZW1pYm9sZCcpLFxuICBsaW5lLWhlaWdodDogMS4zNzUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wMjogJGhlYWRpbmctMDIgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRwcm9kdWN0aXZlLWhlYWRpbmctMDM6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxLjQsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wNDogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg3KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IDEuMjksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wNTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IDEuMjUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wNjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ2xpZ2h0JyksXG4gIC8vIEV4dHJhIGRpZ2l0IG5lZWRlZCBmb3IgcHJlY2lzaW9uIGluIENocm9tZVxuICBsaW5lLWhlaWdodDogMS4xOTksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wNzogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICBsaW5lLWhlaWdodDogMS4xOSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1oZWFkaW5nLTAxOiBtYXAtbWVyZ2UoXG4gICRoZWFkaW5nLTAxLFxuICAoXG4gICAgbGluZS1oZWlnaHQ6IDEuMjUsXG4gIClcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRleHByZXNzaXZlLWhlYWRpbmctMDI6IG1hcC1tZXJnZShcbiAgJGhlYWRpbmctMDIsXG4gIChcbiAgICBsaW5lLWhlaWdodDogMS41LFxuICApXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1oZWFkaW5nLTAzOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDUpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMS40LFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDUpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDYpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMzM0LFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1oZWFkaW5nLTA0OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDcpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMS4yOSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg3KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1LFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGV4cHJlc3NpdmUtaGVhZGluZy0wNTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IDEuMjUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIG1kOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg5KSxcbiAgICAgIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjIsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTksXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDExKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE3LFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMyksXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRleHByZXNzaXZlLWhlYWRpbmctMDY6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdzZW1pYm9sZCcpLFxuICBsaW5lLWhlaWdodDogMS4yNSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbWQ6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDkpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjIsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTksXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDExKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE3LFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMyksXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRleHByZXNzaXZlLXBhcmFncmFwaC0wMTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg2KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ2xpZ2h0JyksXG4gIGxpbmUtaGVpZ2h0OiAxLjMzNCxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDcpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjksXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDgpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjUsXG4gICAgKSxcbiAgKSxcbik7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRxdW90YXRpb24tMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxLjMsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIG1kOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg1KSxcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg2KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzNCxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNyksXG4gICAgICBsaW5lLWhlaWdodDogMS4yOSxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOCksXG4gICAgICBsaW5lLWhlaWdodDogMS4yNSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHF1b3RhdGlvbi0wMjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ2xpZ2h0JyksXG4gIGxpbmUtaGVpZ2h0OiAxLjI1LFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOSksXG4gICAgICBsaW5lLWhlaWdodDogMS4yMixcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gICAgICBsaW5lLWhlaWdodDogMS4xOSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTEpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTcsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEzKSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGRpc3BsYXktMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgnbGlnaHQnKSxcbiAgbGluZS1oZWlnaHQ6IDEuMTksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIG1kOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTIpLFxuICAgICksXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMyksXG4gICAgICBsaW5lLWhlaWdodDogMS4xNyxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTUpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTMsXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRkaXNwbGF5LTAyOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyksXG4gIGxpbmUtaGVpZ2h0OiAxLjE5LFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEyKSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTMpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTYsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE1KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjEzLFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZGlzcGxheS0wMzogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICBsaW5lLWhlaWdodDogMS4xOSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbWQ6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE0KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1LFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE3KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjExLFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjY0cHgsXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIwKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjA3LFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjY0cHgsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIzKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1LFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjk2cHgsXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRkaXNwbGF5LTA0OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyksXG4gIGxpbmUtaGVpZ2h0OiAxLjE5LFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTQpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTUsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTcpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTEsXG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuNjRweCxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMjApLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMDcsXG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuNjRweCxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMjMpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEuMDUsXG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuOTZweCxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHRva2VuczogKFxuICBjYXB0aW9uLTAxOiAkY2FwdGlvbi0wMSxcbiAgbGFiZWwtMDE6ICRsYWJlbC0wMSxcbiAgaGVscGVyLXRleHQtMDE6ICRoZWxwZXItdGV4dC0wMSxcbiAgYm9keS1zaG9ydC0wMTogJGJvZHktc2hvcnQtMDEsXG4gIGJvZHktc2hvcnQtMDI6ICRib2R5LXNob3J0LTAyLFxuICBib2R5LWxvbmctMDE6ICRib2R5LWxvbmctMDEsXG4gIGJvZHktbG9uZy0wMjogJGJvZHktbG9uZy0wMixcbiAgY29kZS0wMTogJGNvZGUtMDEsXG4gIGNvZGUtMDI6ICRjb2RlLTAyLFxuICBoZWFkaW5nLTAxOiAkaGVhZGluZy0wMSxcbiAgaGVhZGluZy0wMjogJGhlYWRpbmctMDIsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wMTogJHByb2R1Y3RpdmUtaGVhZGluZy0wMSxcbiAgcHJvZHVjdGl2ZS1oZWFkaW5nLTAyOiAkcHJvZHVjdGl2ZS1oZWFkaW5nLTAyLFxuICBwcm9kdWN0aXZlLWhlYWRpbmctMDM6ICRwcm9kdWN0aXZlLWhlYWRpbmctMDMsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wNDogJHByb2R1Y3RpdmUtaGVhZGluZy0wNCxcbiAgcHJvZHVjdGl2ZS1oZWFkaW5nLTA1OiAkcHJvZHVjdGl2ZS1oZWFkaW5nLTA1LFxuICBwcm9kdWN0aXZlLWhlYWRpbmctMDY6ICRwcm9kdWN0aXZlLWhlYWRpbmctMDYsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wNzogJHByb2R1Y3RpdmUtaGVhZGluZy0wNyxcbiAgZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDE6ICRleHByZXNzaXZlLXBhcmFncmFwaC0wMSxcbiAgZXhwcmVzc2l2ZS1oZWFkaW5nLTAxOiAkZXhwcmVzc2l2ZS1oZWFkaW5nLTAxLFxuICBleHByZXNzaXZlLWhlYWRpbmctMDI6ICRleHByZXNzaXZlLWhlYWRpbmctMDIsXG4gIGV4cHJlc3NpdmUtaGVhZGluZy0wMzogJGV4cHJlc3NpdmUtaGVhZGluZy0wMyxcbiAgZXhwcmVzc2l2ZS1oZWFkaW5nLTA0OiAkZXhwcmVzc2l2ZS1oZWFkaW5nLTA0LFxuICBleHByZXNzaXZlLWhlYWRpbmctMDU6ICRleHByZXNzaXZlLWhlYWRpbmctMDUsXG4gIGV4cHJlc3NpdmUtaGVhZGluZy0wNjogJGV4cHJlc3NpdmUtaGVhZGluZy0wNixcbiAgcXVvdGF0aW9uLTAxOiAkcXVvdGF0aW9uLTAxLFxuICBxdW90YXRpb24tMDI6ICRxdW90YXRpb24tMDIsXG4gIGRpc3BsYXktMDE6ICRkaXNwbGF5LTAxLFxuICBkaXNwbGF5LTAyOiAkZGlzcGxheS0wMixcbiAgZGlzcGxheS0wMzogJGRpc3BsYXktMDMsXG4gIGRpc3BsYXktMDQ6ICRkaXNwbGF5LTA0LFxuKTtcblxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gcHJvcGVydGllcygkbWFwKSB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgI3skbmFtZX06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIE51bWJlciB3aXRoIHVuaXRzXG4vLy8gQHJldHVybiB7TnVtYmVyfSBXaXRob3V0IHVuaXRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkdmFsdWUpIHtcbiAgQHJldHVybiAkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpO1xufVxuXG4vLy8gVGhpcyBoZWxwZXIgaW5jbHVkZXMgZmx1aWQgdHlwZSBzdHlsZXMgZm9yIHRoZSBnaXZlbiB0b2tlbiB2YWx1ZS4gRmx1aWQgdHlwZVxuLy8vIG1lYW5zIHRoYXQgdGhlIGBmb250LXNpemVgIGlzIGNvbXB1dGVkIHVzaW5nIGBjYWxjKClgIGluIG9yZGVyIHRvIGJlXG4vLy8gZGV0ZXJtaW5lZCBieSB0aGUgc2NyZWVuIHNpemUgaW5zdGVhZCBvZiBhIGJyZWFrcG9pbnQuIEFzIGEgcmVzdWx0LCBmbHVpZFxuLy8vIHN0eWxlcyBzaG91bGQgYmUgdXNlZCB3aXRoIGNhdXRpb24gaW4gZml4ZWQgd2lkdGggY29udGV4dHMuXG4vLy9cbi8vLyBJbiBhZGRpdGlvbiwgd2UgbWFrZSB1c2Ugb2YgJS1iYXNlZCBsaW5lLWhlaWdodHMgc28gdGhhdCB0aGUgbGluZS1oZWlnaHQgb2Zcbi8vLyBlYWNoIHR5cGUgc3R5bGUgaXMgY29tcHV0ZWQgY29ycmVjdGx5IGR1ZSB0byB0aGUgZHluYW1pYyBuYXR1cmUgb2YgdGhlXG4vLy8gYGZvbnQtc2l6ZWAuXG4vLy9cbi8vLyBNb3N0IG9mIHRoZSBsb2dpYyBmb3IgdGhpcyB3b3JrIGNvbWVzIGZyb20gQ1NTIFRyaWNrczpcbi8vLyBodHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9mbHVpZC10eXBvZ3JhcGh5L1xuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICR0eXBlLXN0eWxlcyAtIFRoZSB2YWx1ZSBvZiBhIGdpdmVuIHR5cGUgdG9rZW5cbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEN1c3RvbSBicmVha3BvaW50cyB0byB1c2Vcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbkBtaXhpbiBmbHVpZC10eXBlKCR0eXBlLXN0eWxlcywgJGJyZWFrcG9pbnRzOiAkY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIEluY2x1ZGUgdGhlIGluaXRpYWwgc3R5bGVzIGZvciB0aGUgZ2l2ZW4gdG9rZW4gYnkgZGVmYXVsdCB3aXRob3V0IGFueVxuICAvLyBtZWRpYSBxdWVyeSBndWFyZC4gVGhpcyBpbmNsdWRlcyBgZm9udC1zaXplYCBhcyBhIGZhbGxiYWNrIGluIHRoZSBjYXNlXG4gIC8vIHRoYXQgYSBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgYGNhbGMoKWBcbiAgQGluY2x1ZGUgcHJvcGVydGllcyhtYXAtcmVtb3ZlKCR0eXBlLXN0eWxlcywgYnJlYWtwb2ludHMpKTtcbiAgLy8gV2UgYWxzbyBuZWVkIHRvIGluY2x1ZGUgdGhlIGBzbWAgc3R5bGVzIGJ5IGRlZmF1bHQgc2luY2UgdGhleSBkb24ndFxuICAvLyBhcHBlYXIgaW4gdGhlIGZsdWlkIHN0eWxlcyBmb3IgdG9rZW5zXG4gIEBpbmNsdWRlIGZsdWlkLXR5cGUtc2l6ZSgkdHlwZS1zdHlsZXMsIHNtLCAkYnJlYWtwb2ludHMpO1xuXG4gIC8vIEZpbmFsbHksIHdlIG5lZWQgdG8gZ28gdGhyb3VnaCBhbGwgdGhlIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gdGhlIHR5cGVcbiAgLy8gdG9rZW4gYW5kIGFwcGx5IHRoZSBwcm9wZXJ0aWVzIGFuZCBmbHVpZCB0eXBlIHNpemUgZm9yIHRoYXQgZ2l2ZW5cbiAgLy8gYnJlYWtwb2ludFxuICBAZWFjaCAkbmFtZSwgJHZhbHVlcyBpbiBtYXAtZ2V0KCR0eXBlLXN0eWxlcywgYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgIEBpbmNsdWRlIHByb3BlcnRpZXMoJHZhbHVlcyk7XG4gICAgICBAaW5jbHVkZSBmbHVpZC10eXBlLXNpemUoJHR5cGUtc3R5bGVzLCAkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbXB1dGVzIHRoZSBmbHVpZCBgZm9udC1zaXplYCBmb3IgYSBnaXZlbiB0eXBlIHN0eWxlIGFuZCBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtNYXB9ICR0eXBlLXN0eWxlcyAtIFRoZSBzdHlsZXMgZm9yIGEgZ2l2ZW4gdG9rZW5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCB0byB3aGljaCB3ZSBhcHBseSB0aGUgZmx1aWRcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIFRoZSBicmVha3BvaW50cyBmb3IgdGhlIGdyaWQgc3lzdGVtXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gZmx1aWQtdHlwZS1zaXplKFxuICAkdHlwZS1zdHlsZXMsXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICAvLyBHZXQgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBicmVha3BvaW50IHdlJ3JlIGN1cnJlbnRseSB3b3JraW5nIGluLiBVc2VmdWxcbiAgLy8gZm9yIGdldHRpbmcgaW5pdGlhbCB3aWR0aCBpbmZvcm1hdGlvblxuICAkYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcblxuICAvLyBPdXIgZmx1aWQgc3R5bGVzIGFyZSBjYXB0dXJlZCB1bmRlciB0aGUgJ2JyZWFrcG9pbnRzJyBwcm9wZXJ0eSBpbiBvdXIgdHlwZVxuICAvLyBzdHlsZXMgbWFwLiBUaGVzZSBkZWZpbmUgd2hhdCB2YWx1ZXMgdG8gdHJlYXQgYXMgYG1heC1gIHZhcmlhYmxlcyBiZWxvd1xuICAkZmx1aWQtc2l6ZXM6IG1hcC1nZXQoJHR5cGUtc3R5bGVzLCBicmVha3BvaW50cyk7XG4gICRmbHVpZC1icmVha3BvaW50OiAoKTtcbiAgLy8gU3BlY2lhbCBjYXNlIGZvciBgc21gIGJlY2F1c2UgdGhlIHN0eWxlcyBmb3Igc21hbGwgYXJlIG9uIHRoZSB0eXBlIHN0eWxlXG4gIC8vIGRpcmVjdGx5XG4gIEBpZiAkbmFtZSA9PSBzbSB7XG4gICAgJGZsdWlkLWJyZWFrcG9pbnQ6IG1hcC1yZW1vdmUoJHR5cGUtc3R5bGVzLCBicmVha3BvaW50cyk7XG4gIH0gQGVsc2Uge1xuICAgICRmbHVpZC1icmVha3BvaW50OiBtYXAtZ2V0KCRmbHVpZC1zaXplcywgJG5hbWUpO1xuICB9XG5cbiAgLy8gSW5pdGlhbGl6ZSBvdXIgZm9udC1zaXplcyB0byB0aGUgZGVmYXVsdCBzaXplIGZvciB0aGUgdHlwZSBzdHlsZVxuICAkbWF4LWZvbnQtc2l6ZTogbWFwLWdldCgkdHlwZS1zdHlsZXMsIGZvbnQtc2l6ZSk7XG4gICRtaW4tZm9udC1zaXplOiBtYXAtZ2V0KCR0eXBlLXN0eWxlcywgZm9udC1zaXplKTtcbiAgQGlmIG1hcC1oYXMta2V5KCRmbHVpZC1icmVha3BvaW50LCBmb250LXNpemUpIHtcbiAgICAkbWluLWZvbnQtc2l6ZTogbWFwLWdldCgkZmx1aWQtYnJlYWtwb2ludCwgZm9udC1zaXplKTtcbiAgfVxuXG4gIC8vIEluaXRpYWxpemUgb3VyIG1pbiBhbmQgbWF4IHdpZHRoIHRvIHRoZSB3aWR0aCBvZiB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICRtYXgtdnc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsIHdpZHRoKTtcbiAgJG1pbi12dzogbWFwLWdldCgkYnJlYWtwb2ludCwgd2lkdGgpO1xuXG4gIC8vIFdlIGNhbiB1c2UgYGJyZWFrcG9pbnQtbmV4dGAgdG8gc2VlIGlmIHRoZXJlIGlzIGFub3RoZXIgYnJlYWtwb2ludCB3ZSBjYW5cbiAgLy8gdXNlIHRvIHVwZGF0ZSBgbWF4LWZvbnQtc2l6ZWAgYW5kIGBtYXgtdndgIHdpdGggbGFyZ2VyIHZhbHVlc1xuICAkbmV4dC1icmVha3BvaW50LWF2YWlsYWJsZTogY2FyYm9uLS1icmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZTogbnVsbDtcblxuICAvLyBXZSBuZWVkIHRvIGZpZ3VyZSBvdXQgd2hhdCB0aGUgbmV4dCBhdmFpbGFibGUgZmx1aWQgYnJlYWtwb2ludCBpcyBmb3Igb3VyXG4gIC8vIGdpdmVuICR0eXBlLXN0eWxlcy4gSW4gdGhpcyBsb29wIHdlIHRyeSBhbmQgaXRlcmF0ZSB0aHJvdWdoIGJyZWFrcG9pbnRzXG4gIC8vIHVudGlsIHdlIGVpdGhlciBtYW51YWxseSBzZXQgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGUgdG8gbnVsbCBvclxuICAvLyBgYnJlYWtwb2ludC1uZXh0YCByZXR1cm5zIG51bGwuXG4gIEB3aGlsZSAkbmV4dC1icmVha3BvaW50LWF2YWlsYWJsZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRmbHVpZC1zaXplcywgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGUpIHtcbiAgICAgICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZTogJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGU7XG4gICAgICAkbmV4dC1icmVha3BvaW50LWF2YWlsYWJsZTogbnVsbDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRuZXh0LWJyZWFrcG9pbnQtYXZhaWxhYmxlOiBjYXJib24tLWJyZWFrcG9pbnQtbmV4dChcbiAgICAgICAgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGUsXG4gICAgICAgICRicmVha3BvaW50c1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB3ZSBoYXZlIGZvdW5kIHRoZSBuZXh0IGF2YWlsYWJsZSBmbHVpZCBicmVha3BvaW50IG5hbWUsIHRoZW4gd2Uga25vd1xuICAvLyB0aGF0IHdlIGhhdmUgdmFsdWVzIHRoYXQgd2UgY2FuIHVzZSB0byBzZXQgbWF4LWZvbnQtc2l6ZSBhbmQgbWF4LXZ3IGFzIGJvdGhcbiAgLy8gdmFsdWVzIGRlcml2ZSBmcm9tIHRoZSBuZXh0IGJyZWFrcG9pbnRcbiAgQGlmICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZSB7XG4gICAgJG5leHQtZmx1aWQtYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZSk7XG4gICAgJG1heC1mb250LXNpemU6IG1hcC1nZXQoXG4gICAgICBtYXAtZ2V0KCRmbHVpZC1zaXplcywgJG5leHQtZmx1aWQtYnJlYWtwb2ludC1uYW1lKSxcbiAgICAgIGZvbnQtc2l6ZVxuICAgICk7XG4gICAgJG1heC12dzogbWFwLWdldCgkbmV4dC1mbHVpZC1icmVha3BvaW50LCB3aWR0aCk7XG5cbiAgICAvLyBwcmV0dGllci1pZ25vcmVcbiAgICBmb250LXNpemU6IGNhbGMoI3skbWluLWZvbnQtc2l6ZX0gK1xuICAgICAgI3tzdHJpcC11bml0KCRtYXgtZm9udC1zaXplIC0gJG1pbi1mb250LXNpemUpfSAqXG4gICAgICAoKDEwMHZ3IC0gI3skbWluLXZ3fSkgLyAje3N0cmlwLXVuaXQoJG1heC12dyAtICRtaW4tdncpfSlcbiAgICApO1xuICB9IEBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2UsIGp1c3QgZGVmYXVsdCB0byBzZXR0aW5nIHRoZSBmb250IHNpemUgZm91bmQgZnJvbSB0aGUgdHlwZVxuICAgIC8vIHN0eWxlIG9yIHRoZSBnaXZlbiBmbHVpZCBicmVha3BvaW50IGluIHRoZSB0eXBlIHN0eWxlXG4gICAgZm9udC1zaXplOiAkbWluLWZvbnQtc2l6ZTtcbiAgfVxufVxuXG4vLyBUT0RPIG1vdmUgZm9sbG93aW5nIHZhcmlhYmxlIGFuZCBgY3VzdG9tLXByb3BlcnR5YCBtaXhpbiBpbnRvIHNoYXJlZCBmaWxlIGZvclxuLy8gYm90aCBgQGNhcmJvbi90eXBlYCBhbmQgYEBjYXJib24vdGhlbWVzYFxuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXg6ICdjZHMnICFkZWZhdWx0O1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQG1peGluIGN1c3RvbS1wcm9wZXJ0aWVzKCRuYW1lLCAkdmFsdWUpIHtcbiAgQGVhY2ggJHByb3BlcnR5LCAkdmFsdWUgaW4gJHZhbHVlIHtcbiAgICAjeyRwcm9wZXJ0eX06IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tI3skbmFtZX0tI3skcHJvcGVydHl9LFxuICAgICAgI3skdmFsdWV9XG4gICAgKTtcbiAgfVxufVxuXG4vLy8gSGVscGVyIG1peGluIHRvIGluY2x1ZGUgdGhlIHN0eWxlcyBmb3IgYSBnaXZlbiB0b2tlbiBpbiBhbnkgc2VsZWN0b3IgaW4geW91clxuLy8vIHByb2plY3QuIEFsc28gaW5jbHVkZXMgYW4gb3B0aW9uYWwgZmx1aWQgb3B0aW9uIHRoYXQgd2lsbCBlbmFibGUgZmx1aWRcbi8vLyBzdHlsZXMgZm9yIHRoZSB0b2tlbiBpZiB0aGV5IGFyZSBkZWZpbmVkLiBGbHVpZCBzdHlsZXMgd2lsbCBjYXVzZSB0aGVcbi8vLyB0b2tlbidzIGZvbnQtc2l6ZSB0byBiZSBjb21wdXRlZCBiYXNlZCBvbiB0aGUgdmlld3BvcnQgc2l6ZS4gQXMgYSByZXN1bHQsIHVzZVxuLy8vIHdpdGggY2F1dGlvbiBpbiBmaXhlZCBjb250ZXh0cy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgdG9rZW4gdG8gZ2V0IHRoZSBzdHlsZXMgZm9yXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmx1aWQgW2ZhbHNlXSAtIFNwZWNpZnkgd2hldGhlciB0byBpbmNsdWRlIGZsdWlkIHN0eWxlcyBmb3IgdGhlXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBQcm92aWRlIGEgY3VzdG9tIGJyZWFrcG9pbnQgbWFwIHRvIHVzZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQG1peGluIGNhcmJvbi0tdHlwZS1zdHlsZShcbiAgJG5hbWUsXG4gICRmbHVpZDogZmFsc2UsXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c1xuKSB7XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJHRva2VucywgJG5hbWUpIHtcbiAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGEgdG9rZW4gd2l0aCB0aGUgbmFtZTogYCN7JG5hbWV9YCc7XG4gIH1cblxuICAkdG9rZW46IG1hcC1nZXQoJHRva2VucywgJG5hbWUpO1xuXG4gIC8vIElmICRmbHVpZCBpcyBzZXQgdG8gdHJ1ZSBhbmQgdGhlIHRva2VuIGhhcyBicmVha3BvaW50cyBkZWZpbmVkIGZvciBmbHVpZFxuICAvLyBzdHlsZXMsIGRlbGVnYXRlIHRvIHRoZSBmbHVpZC10eXBlIGhlbHBlciBmb3IgdGhlIGdpdmVuIHRva2VuXG4gIEBpZiAkZmx1aWQgPT0gdHJ1ZSBhbmQgbWFwLWhhcy1rZXkoJHRva2VuLCAnYnJlYWtwb2ludHMnKSB7XG4gICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgkdG9rZW4sICRicmVha3BvaW50cyk7XG4gIH0gQGVsc2Uge1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdmZWF0dXJlLWZsYWdzJykgYW5kXG4gICAgICBtYXAtZ2V0KCRmZWF0dXJlLWZsYWdzLCAnZW5hYmxlLWNzcy1jdXN0b20tcHJvcGVydGllcycpXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnRpZXMoJG5hbWUsICR0b2tlbik7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBPdGhlcndpc2UsIHdlIGp1c3QgaW5jbHVkZSBhbGwgdGhlIHByb3BlcnR5IGRlY2xhcmF0aW9ucyBkaXJlY3RseSBvbiB0aGVcbiAgICAgIC8vIHNlbGVjdG9yXG4gICAgICBAaW5jbHVkZSBwcm9wZXJ0aWVzKG1hcC1yZW1vdmUoJHRva2VuLCAnYnJlYWtwb2ludHMnKSk7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICAgQ2F0ZWdvcnkgICAgICAgICAgICAgfHwgIERlc2NyaXB0aW9uXG4vLyAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vICAgTWlzYyAgICAgICAgICAgICAgICAgfHwgIEdlbmVyYWwgaGVscGVyIEBtaXhpbnNcbi8vICAgRGVwcmVjYXRlZCAgICAgICAgICAgfHwgIE5vdCB1c2VkIGFueW1vcmVcbi8vICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICd2YXJzJztcbkBpbXBvcnQgJ2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAndHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuXG4vLy8gQWRkcyB0ZXh0IG92ZXJmbG93IHN0eWxpbmdcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggW2ZhbHNlXSAtIFZhbHVlIG9mIHdpZHRoIGlmIHlvdSB3YW50IHRvIHNldCB3aWR0aCwgZWxzZSBub3RoaW5nXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdygzMDBweCk7XG4vLy8gQGdyb3VwIGdsb2JhbC1oZWxwZXJzXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygkd2lkdGg6IGZhbHNlKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gIC8vIGFwcGx5IGEgd2lkdGggaWYgd2lkdGggcGFyYW1ldGVyIGV4aXN0c1xuICBAaWYgKCR3aWR0aCkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgcGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgcGxhY2Vob2xkZXItY29sb3JzO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIHBsYWNlaG9sZGVyLWNvbG9ycyB7XG4gIGNvbG9yOiAkdGV4dC0wNTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLy8vIEFkZHMgYm94IHNoYWRvd1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgYm94LXNoYWRvdztcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBib3gtc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCAycHggNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLy8vIEFkZHMgb3V0bGluZSBzdHlsZXMgZGVwZW5kaW5nIG9uIHNwZWNpZmljIHR5cGVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdHlwZSBbJ2JvcmRlciddIC0gVHlwZSBvZiBvdXRsaW5lIGZyb206IGBib3JkZXJgLCBgYmx1cnJlZGAsIGBvdXRsaW5lYCwgYGludmFsaWRgLCBgcmVzZXRgXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIGZvY3VzLW91dGxpbmUoJHR5cGU6ICdib3JkZXInKSB7XG4gIEBpZiAoJHR5cGUgPT0gJ2JvcmRlcicpIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgJGZvY3VzO1xuICB9XG5cbiAgQGlmICgkdHlwZSA9PSAnYmx1cnJlZCcpIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4ICRmb2N1cztcbiAgfVxuXG4gIEBpZiAoJHR5cGUgPT0gJ291dGxpbmUnKSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICRmb2N1cztcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgfVxuXG4gIEBpZiAoJHR5cGUgPT0gJ291dGxpbmUtY29tcGF0Jykge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGZvY3VzO1xuICB9XG5cbiAgQGlmICgkdHlwZSA9PSAnaW52YWxpZCcpIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJHN1cHBvcnQtMDE7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIH1cblxuICBAaWYgKCR0eXBlID09ICdyZXNldCcpIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIH1cbn1cblxuLy8vIEFkZHMgcm90YXRpb25hbCB0cmFuc2Zvcm1hdGlvblxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRkZWcgLSBIb3cgbWFueSBkZWdyZWVzIHRvIHJvdGF0ZVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BlZWQgLSBTcGVlZCBvZiByb3RhdGlvblxuLy8vIEBwYXJhbSB7VmFsdWV9ICRvcmlnaW4gW2NlbnRlcl0gLSBgdHJhbnNmb3JtLW9yaWdpbmBcbi8vLyBAZXhhbXBsZSBAaW5jbHVkZSByb3RhdGUoOTBkZWcsIDMwMG1zKTtcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiByb3RhdGUoJGRlZywgJHNwZWVkLCAkb3JpZ2luOiBjZW50ZXIpIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkc3BlZWQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBoaWRlIGNvbnRlbnRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIGhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xuICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xufVxuXG4vLy8gUmVzZXRzIGJ1dHRvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7Qm9vbH0gJHdpZHRoIFt0cnVlXSAtIFNldHMgd2lkdGggdG8gMTAwJSBpZiB0cnVlXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCR3aWR0aDogZmFsc2UpO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIGJ1dHRvbi1yZXNldCgkd2lkdGg6IHRydWUpIHtcbiAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICBAaWYgKCR3aWR0aCA9PSB0cnVlKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8vIFNrZWxldG9uIGxvYWRpbmcgYW5pbWF0aW9uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZXhhbXBsZSBAaW5jbHVkZSBza2VsZXRvbjtcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBza2VsZXRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogJHNrZWxldG9uLTAxO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRza2VsZXRvbi0wMjtcbiAgICBhbmltYXRpb246IDMwMDBtcyBlYXNlLWluLW91dCBza2VsZXRvbiBpbmZpbml0ZTtcbiAgICBjb250ZW50OiAnJztcblxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3NrZWxldG9uJykge1xuICBAa2V5ZnJhbWVzIHNrZWxldG9uIHtcbiAgICAwJSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuICAgIDIwJSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIDI4JSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgNTElIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHdpZHRoOiAwJTtcbiAgICB9XG4gICAgNTglIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHdpZHRoOiAwJTtcbiAgICB9XG4gICAgODIlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICA4MyUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIDk2JSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMCU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgb3BhY2l0eTogMC4zO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJ3ZhcnMnO1xuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcblxuQGluY2x1ZGUgZXhwb3J0cygnaGVscGVyLWNsYXNzZXMnKSB7XG4gIC4jeyRwcmVmaXh9LS10ZXh0LXRydW5jYXRlLS1lbmQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC10cnVuY2F0ZS0tZnJvbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTgsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5cbi8vLyBNb25vIGBAZm9udC1mYWNlYCdzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gY2FyYm9uLS1mb250LWZhY2UtbW9ubyB7XG4gIC8vIC53b2ZmIHN1cHBvcnQgZm9yIElFMTFcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIExpZ2h0IEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleE1vbm8tTGlnaHRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU2ZsVjFnTW9XLndvZmYpXG4gICAgICAgIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICB9XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubyBJdGFsaWMnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLUl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZwZmpwdEFndDVWTS1rVmtxZHlVOG4xaW9hMVhkbS53b2ZmKVxuICAgICAgICBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgfVxuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gU2VtaUJvbGQgSXRhbGljJyksXG4gICAgICBsb2NhbCgnSUJNUGxleE1vbm8tU2VtaUJvbGRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU0NsTjFnTW9XLndvZmYpXG4gICAgICAgIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICB9XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubyBMaWdodCcpLCBsb2NhbCgnSUJNUGxleE1vbm8tTGlnaHQnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2cWZqcHRBZ3Q1Vk0ta1ZrcWR5VThuM29RSXdsQkZoQS53b2ZmKVxuICAgICAgICBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgfVxuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8nKSwgbG9jYWwoJ0lCTVBsZXhNb25vJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNjNmanB0QWd0NVZNLWtWa3FkeVU4bjFpOHEwUS53b2ZmKVxuICAgICAgICBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgfVxuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gU2VtaUJvbGQnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLVNlbWlCb2xkJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnFmanB0QWd0NVZNLWtWa3FkeVU4bjN2QU93bEJGaEEud29mZilcbiAgICAgICAgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gIH1cblxuICAvKiBjeXJpbGxpYy1leHQgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIExpZ2h0IEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleE1vbm8tTGlnaHRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU2ZsVjFqY29RUHR0b3o2UHoud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLFxuICAgICAgVStGRTJFLUZFMkY7XG4gIH1cbiAgLyogY3lyaWxsaWMgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIExpZ2h0IEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleE1vbm8tTGlnaHRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU2ZsVjFoTW9RUHR0b3o2UHoud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7XG4gIH1cbiAgLyogdmlldG5hbWVzZSAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gTGlnaHQgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4TW9uby1MaWdodEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZzZmpwdEFndDVWTS1rVmtxZHlVOG4xaW9TZmxWMWo4b1FQdHRvejZQei53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbiAgfVxuICAvKiBsYXRpbi1leHQgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIExpZ2h0IEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleE1vbm8tTGlnaHRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU2ZsVjFqc29RUHR0b3o2UHoud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQixcbiAgICAgIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbiAgfVxuICAvKiBsYXRpbiAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gTGlnaHQgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4TW9uby1MaWdodEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZzZmpwdEFndDVWTS1rVmtxZHlVOG4xaW9TZmxWMWdNb1FQdHRvencud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLFxuICAgICAgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMixcbiAgICAgIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG4gIH1cbiAgLyogY3lyaWxsaWMtZXh0ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubyBJdGFsaWMnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLUl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZwZmpwdEFndDVWTS1rVmtxZHlVOG4xaW9hMkhkZ3JlZ2RGT0ZoLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzg4LCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RixcbiAgICAgIFUrRkUyRS1GRTJGO1xuICB9XG4gIC8qIGN5cmlsbGljICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubyBJdGFsaWMnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLUl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZwZmpwdEFndDVWTS1rVmtxZHlVOG4xaW9hMFhkZ3JlZ2RGT0ZoLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2O1xuICB9XG4gIC8qIHZpZXRuYW1lc2UgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleE1vbm8tSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnBmanB0QWd0NVZNLWtWa3FkeVU4bjFpb2EybmRncmVnZEZPRmgud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG4gIH1cbiAgLyogbGF0aW4tZXh0ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubyBJdGFsaWMnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLUl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZwZmpwdEFndDVWTS1rVmtxZHlVOG4xaW9hMjNkZ3JlZ2RGT0ZoLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsXG4gICAgICBVKzIwQUQtMjBDRiwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG4gIH1cbiAgLyogbGF0aW4gKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleE1vbm8tSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnBmanB0QWd0NVZNLWtWa3FkeVU4bjFpb2ExWGRncmVnZEZBLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSxcbiAgICAgIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsXG4gICAgICBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xuICB9XG4gIC8qIGN5cmlsbGljLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gU2VtaUJvbGQgSXRhbGljJyksXG4gICAgICBsb2NhbCgnSUJNUGxleE1vbm8tU2VtaUJvbGRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU0NsTjFqY29RUHR0b3o2UHoud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLFxuICAgICAgVStGRTJFLUZFMkY7XG4gIH1cbiAgLyogY3lyaWxsaWMgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIFNlbWlCb2xkIEl0YWxpYycpLFxuICAgICAgbG9jYWwoJ0lCTVBsZXhNb25vLVNlbWlCb2xkSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnNmanB0QWd0NVZNLWtWa3FkeVU4bjFpb1NDbE4xaE1vUVB0dG96NlB6LndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2O1xuICB9XG4gIC8qIHZpZXRuYW1lc2UgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIFNlbWlCb2xkIEl0YWxpYycpLFxuICAgICAgbG9jYWwoJ0lCTVBsZXhNb25vLVNlbWlCb2xkSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnNmanB0QWd0NVZNLWtWa3FkeVU4bjFpb1NDbE4xajhvUVB0dG96NlB6LndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xuICB9XG4gIC8qIGxhdGluLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gU2VtaUJvbGQgSXRhbGljJyksXG4gICAgICBsb2NhbCgnSUJNUGxleE1vbm8tU2VtaUJvbGRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU0NsTjFqc29RUHR0b3o2UHoud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQixcbiAgICAgIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbiAgfVxuICAvKiBsYXRpbiAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gU2VtaUJvbGQgSXRhbGljJyksXG4gICAgICBsb2NhbCgnSUJNUGxleE1vbm8tU2VtaUJvbGRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2c2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlvU0NsTjFnTW9RUHR0b3p3LndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSxcbiAgICAgIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsXG4gICAgICBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xuICB9XG4gIC8qIGN5cmlsbGljLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gTGlnaHQnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLUxpZ2h0JyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnFmanB0QWd0NVZNLWtWa3FkeVU4bjNvUUl3bDFGZ3NBWEhObFl6Zy53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4OCwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsXG4gICAgICBVK0ZFMkUtRkUyRjtcbiAgfVxuICAvKiBjeXJpbGxpYyAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gTGlnaHQnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLUxpZ2h0JyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnFmanB0QWd0NVZNLWtWa3FkeVU4bjNvUUl3bFJGZ3NBWEhObFl6Zy53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbiAgfVxuICAvKiB2aWV0bmFtZXNlICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubyBMaWdodCcpLCBsb2NhbCgnSUJNUGxleE1vbm8tTGlnaHQnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2cWZqcHRBZ3Q1Vk0ta1ZrcWR5VThuM29RSXdsOUZnc0FYSE5sWXpnLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xuICB9XG4gIC8qIGxhdGluLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gTGlnaHQnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLUxpZ2h0JyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnFmanB0QWd0NVZNLWtWa3FkeVU4bjNvUUl3bDVGZ3NBWEhObFl6Zy53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMjRGLCBVKzAyNTksIFUrMUUwMC0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLFxuICAgICAgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xuICB9XG4gIC8qIGxhdGluICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubyBMaWdodCcpLCBsb2NhbCgnSUJNUGxleE1vbm8tTGlnaHQnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2cWZqcHRBZ3Q1Vk0ta1ZrcWR5VThuM29RSXdsQkZnc0FYSE5rLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSxcbiAgICAgIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsXG4gICAgICBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xuICB9XG4gIC8qIGN5cmlsbGljLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8nKSwgbG9jYWwoJ0lCTVBsZXhNb25vJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNjNmanB0QWd0NVZNLWtWa3FkeVU4bjFpSXExMzFuai1vdEZRLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzg4LCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RixcbiAgICAgIFUrRkUyRS1GRTJGO1xuICB9XG4gIC8qIGN5cmlsbGljICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBNb25vJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggTW9ubycpLCBsb2NhbCgnSUJNUGxleE1vbm8nKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleG1vbm8vdjQvLUY2M2ZqcHRBZ3Q1Vk0ta1ZrcWR5VThuMWlzcTEzMW5qLW90RlEud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7XG4gIH1cbiAgLyogdmlldG5hbWVzZSAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8nKSwgbG9jYWwoJ0lCTVBsZXhNb25vJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNjNmanB0QWd0NVZNLWtWa3FkeVU4bjFpQXExMzFuai1vdEZRLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xuICB9XG4gIC8qIGxhdGluLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8nKSwgbG9jYWwoJ0lCTVBsZXhNb25vJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNjNmanB0QWd0NVZNLWtWa3FkeVU4bjFpRXExMzFuai1vdEZRLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsXG4gICAgICBVKzIwQUQtMjBDRiwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG4gIH1cbiAgLyogbGF0aW4gKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vJyksIGxvY2FsKCdJQk1QbGV4TW9ubycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjYzZmpwdEFndDVWTS1rVmtxZHlVOG4xaThxMTMxbmotby53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsXG4gICAgICBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLFxuICAgICAgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbiAgfVxuICAvKiBjeXJpbGxpYy1leHQgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIFNlbWlCb2xkJyksIGxvY2FsKCdJQk1QbGV4TW9uby1TZW1pQm9sZCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZxZmpwdEFndDVWTS1rVmtxZHlVOG4zdkFPd2wxRmdzQVhITmxZemcud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLFxuICAgICAgVStGRTJFLUZFMkY7XG4gIH1cbiAgLyogY3lyaWxsaWMgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIFNlbWlCb2xkJyksIGxvY2FsKCdJQk1QbGV4TW9uby1TZW1pQm9sZCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZxZmpwdEFndDVWTS1rVmtxZHlVOG4zdkFPd2xSRmdzQVhITmxZemcud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7XG4gIH1cbiAgLyogdmlldG5hbWVzZSAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gU2VtaUJvbGQnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLVNlbWlCb2xkJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnFmanB0QWd0NVZNLWtWa3FkeVU4bjN2QU93bDlGZ3NBWEhObFl6Zy53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSsxRUEwLTFFRjksIFUrMjBBQjtcbiAgfVxuICAvKiBsYXRpbi1leHQgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IE1vbm8nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBNb25vIFNlbWlCb2xkJyksIGxvY2FsKCdJQk1QbGV4TW9uby1TZW1pQm9sZCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4bW9uby92NC8tRjZxZmpwdEFndDVWTS1rVmtxZHlVOG4zdkFPd2w1RmdzQVhITmxZemcud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQixcbiAgICAgIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbiAgfVxuICAvKiBsYXRpbiAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggTW9ubyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IE1vbm8gU2VtaUJvbGQnKSwgbG9jYWwoJ0lCTVBsZXhNb25vLVNlbWlCb2xkJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhtb25vL3Y0Ly1GNnFmanB0QWd0NVZNLWtWa3FkeVU4bjN2QU93bEJGZ3NBWEhOay53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsXG4gICAgICBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLFxuICAgICAgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLyBEZWZpbmVzIGhvdyBmb250IGZpbGVzIGFyZSBsb2FkZWQgYW5kIGRpc3BsYXllZCBieSB0aGUgYnJvd3NlclxuLy8vIEBsaW5rIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vYWxtYW5hYy9wcm9wZXJ0aWVzL2YvZm9udC1kaXNwbGF5L1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGNhcmJvbi0tZm9udC1kaXNwbGF5OiBhdXRvICFkZWZhdWx0O1xuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJ3NldHRpbmdzJztcblxuLy8vIFNhbnMgYEBmb250LWZhY2VgJ3Ncbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbkBtaXhpbiBjYXJib24tLWZvbnQtZmFjZS1zYW5zIHtcbiAgLy8gLndvZmYgc3VwcG9ydCBmb3IgSUUxMVxuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgTGlnaHQgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1MaWdodEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg3S1ZFbE1ZWWFKZThicExIbkN3REtoZFRtdklSY2R2Zm8ud29mZilcbiAgICAgICAgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gIH1cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleFNhbnMtSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWC1LVkVsTVlZYUplOGJwTEhuQ3dES2hkVHVGNlpQLndvZmYpXG4gICAgICAgIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICB9XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBTZW1pQm9sZCBJdGFsaWMnKSxcbiAgICAgIGxvY2FsKCdJQk1QbGV4U2Fucy1TZW1pQm9sZEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg3S1ZFbE1ZWWFKZThicExIbkN3REtoZFRteUlKY2R2Zm8ud29mZilcbiAgICAgICAgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gIH1cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIExpZ2h0JyksIGxvY2FsKCdJQk1QbGV4U2Fucy1MaWdodCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg5S1ZFbE1ZWWFKZThicExIbkN3REtqWHI4QUlGc2NnLndvZmYpXG4gICAgICAgIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICB9XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucycpLCBsb2NhbCgnSUJNUGxleFNhbnMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYZ0tWRWxNWVlhSmU4YnBMSG5Dd0RLaGRIZUV3LndvZmYpXG4gICAgICAgIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICB9XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBTZW1pQm9sZCcpLCBsb2NhbCgnSUJNUGxleFNhbnMtU2VtaUJvbGQnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYOUtWRWxNWVlhSmU4YnBMSG5Dd0RLalE3NkFJRnNjZy53b2ZmKVxuICAgICAgICBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgfVxuXG4gIC8qIGN5cmlsbGljLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgTGlnaHQgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1MaWdodEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg3S1ZFbE1ZWWFKZThicExIbkN3REtoZFRtdklSY2VfZnVKR2wxOFFSWS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4OCwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsXG4gICAgICBVK0ZFMkUtRkUyRjtcbiAgfVxuICAvKiBjeXJpbGxpYyAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgTGlnaHQgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1MaWdodEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg3S1ZFbE1ZWWFKZThicExIbkN3REtoZFRtdklSY2N2ZnVKR2wxOFFSWS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbiAgfVxuICAvKiBncmVlayAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgTGlnaHQgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1MaWdodEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg3S1ZFbE1ZWWFKZThicExIbkN3REtoZFRtdklSY2RmZnVKR2wxOFFSWS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xuICB9XG4gIC8qIHZpZXRuYW1lc2UgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIExpZ2h0IEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleFNhbnMtTGlnaHRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYN0tWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUbXZJUmNlZmZ1SkdsMThRUlkud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG4gIH1cbiAgLyogbGF0aW4tZXh0ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBMaWdodCBJdGFsaWMnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zLUxpZ2h0SXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWDdLVkVsTVlZYUplOGJwTEhuQ3dES2hkVG12SVJjZVBmdUpHbDE4UVJZLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsXG4gICAgICBVKzIwQUQtMjBDRiwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG4gIH1cbiAgLyogbGF0aW4gKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIExpZ2h0IEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleFNhbnMtTGlnaHRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYN0tWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUbXZJUmNkdmZ1SkdsMThRLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSxcbiAgICAgIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsXG4gICAgICBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xuICB9XG4gIC8qIGN5cmlsbGljLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1JdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYLUtWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUdUdxWkpXOVhqRGxOOC53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4OCwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsXG4gICAgICBVK0ZFMkUtRkUyRjtcbiAgfVxuICAvKiBjeXJpbGxpYyAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1JdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYLUtWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUdUU2WkpXOVhqRGxOOC53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbiAgfVxuICAvKiBncmVlayAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgSXRhbGljJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1JdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYLUtWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUdUZLWkpXOVhqRGxOOC53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xuICB9XG4gIC8qIHZpZXRuYW1lc2UgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleFNhbnMtSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWC1LVkVsTVlZYUplOGJwTEhuQ3dES2hkVHVHS1pKVzlYakRsTjgud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG4gIH1cbiAgLyogbGF0aW4tZXh0ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBJdGFsaWMnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zLUl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVgtS1ZFbE1ZWWFKZThicExIbkN3REtoZFR1R2FaSlc5WGpEbE44LndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsXG4gICAgICBVKzIwQUQtMjBDRiwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG4gIH1cbiAgLyogbGF0aW4gKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIEl0YWxpYycpLCBsb2NhbCgnSUJNUGxleFNhbnMtSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWC1LVkVsTVlZYUplOGJwTEhuQ3dES2hkVHVGNlpKVzlYakRnLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSxcbiAgICAgIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsXG4gICAgICBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xuICB9XG4gIC8qIGN5cmlsbGljLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgU2VtaUJvbGQgSXRhbGljJyksXG4gICAgICBsb2NhbCgnSUJNUGxleFNhbnMtU2VtaUJvbGRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYN0tWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUbXlJSmNlX2Z1SkdsMThRUlkud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLFxuICAgICAgVStGRTJFLUZFMkY7XG4gIH1cbiAgLyogY3lyaWxsaWMgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIFNlbWlCb2xkIEl0YWxpYycpLFxuICAgICAgbG9jYWwoJ0lCTVBsZXhTYW5zLVNlbWlCb2xkSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWDdLVkVsTVlZYUplOGJwTEhuQ3dES2hkVG15SUpjY3ZmdUpHbDE4UVJZLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2O1xuICB9XG4gIC8qIGdyZWVrICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBTZW1pQm9sZCBJdGFsaWMnKSxcbiAgICAgIGxvY2FsKCdJQk1QbGV4U2Fucy1TZW1pQm9sZEl0YWxpYycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg3S1ZFbE1ZWWFKZThicExIbkN3REtoZFRteUlKY2RmZnVKR2wxOFFSWS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xuICB9XG4gIC8qIHZpZXRuYW1lc2UgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIFNlbWlCb2xkIEl0YWxpYycpLFxuICAgICAgbG9jYWwoJ0lCTVBsZXhTYW5zLVNlbWlCb2xkSXRhbGljJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWDdLVkVsTVlZYUplOGJwTEhuQ3dES2hkVG15SUpjZWZmdUpHbDE4UVJZLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xuICB9XG4gIC8qIGxhdGluLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgU2VtaUJvbGQgSXRhbGljJyksXG4gICAgICBsb2NhbCgnSUJNUGxleFNhbnMtU2VtaUJvbGRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYN0tWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUbXlJSmNlUGZ1SkdsMThRUlkud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSswMjU5LCBVKzFFMDAtMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQixcbiAgICAgIFUrMjBBRC0yMENGLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbiAgfVxuICAvKiBsYXRpbiAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgU2VtaUJvbGQgSXRhbGljJyksXG4gICAgICBsb2NhbCgnSUJNUGxleFNhbnMtU2VtaUJvbGRJdGFsaWMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYN0tWRWxNWVlhSmU4YnBMSG5Dd0RLaGRUbXlJSmNkdmZ1SkdsMThRLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSxcbiAgICAgIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsXG4gICAgICBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xuICB9XG4gIC8qIGN5cmlsbGljLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgTGlnaHQnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zLUxpZ2h0JyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWDlLVkVsTVlZYUplOGJwTEhuQ3dES2pYcjhBSXhzZFAzcEJtdEY4QS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4OCwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsXG4gICAgICBVK0ZFMkUtRkUyRjtcbiAgfVxuICAvKiBjeXJpbGxpYyAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgTGlnaHQnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zLUxpZ2h0JyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWDlLVkVsTVlZYUplOGJwTEhuQ3dES2pYcjhBSVZzZFAzcEJtdEY4QS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbiAgfVxuICAvKiBncmVlayAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgTGlnaHQnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zLUxpZ2h0JyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWDlLVkVsTVlZYUplOGJwTEhuQ3dES2pYcjhBSUpzZFAzcEJtdEY4QS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDM3MC0wM0ZGO1xuICB9XG4gIC8qIHZpZXRuYW1lc2UgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIExpZ2h0JyksIGxvY2FsKCdJQk1QbGV4U2Fucy1MaWdodCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg5S1ZFbE1ZWWFKZThicExIbkN3REtqWHI4QUk1c2RQM3BCbXRGOEEud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMUVBMC0xRUY5LCBVKzIwQUI7XG4gIH1cbiAgLyogbGF0aW4tZXh0ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBMaWdodCcpLCBsb2NhbCgnSUJNUGxleFNhbnMtTGlnaHQnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYOUtWRWxNWVlhSmU4YnBMSG5Dd0RLalhyOEFJOXNkUDNwQm10RjhBLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsXG4gICAgICBVKzIwQUQtMjBDRiwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG4gIH1cbiAgLyogbGF0aW4gKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIExpZ2h0JyksIGxvY2FsKCdJQk1QbGV4U2Fucy1MaWdodCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg5S1ZFbE1ZWWFKZThicExIbkN3REtqWHI4QUlGc2RQM3BCbXMud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLFxuICAgICAgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMixcbiAgICAgIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XG4gIH1cbiAgLyogY3lyaWxsaWMtZXh0ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucycpLCBsb2NhbCgnSUJNUGxleFNhbnMnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYZ0tWRWxNWVlhSmU4YnBMSG5Dd0RLaGR6ZUZheE9lZGZURHcud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLFxuICAgICAgVStGRTJFLUZFMkY7XG4gIH1cbiAgLyogY3lyaWxsaWMgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zJyksIGxvY2FsKCdJQk1QbGV4U2FucycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVhnS1ZFbE1ZWWFKZThicExIbkN3REtoZFhlRmF4T2VkZlREdy53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjtcbiAgfVxuICAvKiBncmVlayAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWGdLVkVsTVlZYUplOGJwTEhuQ3dES2hkTGVGYXhPZWRmVER3LndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMzcwLTAzRkY7XG4gIH1cbiAgLyogdmlldG5hbWVzZSAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWGdLVkVsTVlZYUplOGJwTEhuQ3dES2hkN2VGYXhPZWRmVER3LndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xuICB9XG4gIC8qIGxhdGluLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWGdLVkVsTVlZYUplOGJwTEhuQ3dES2hkX2VGYXhPZWRmVER3LndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMDI1OSwgVSsxRTAwLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsXG4gICAgICBVKzIwQUQtMjBDRiwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG4gIH1cbiAgLyogbGF0aW4gKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zJyksIGxvY2FsKCdJQk1QbGV4U2FucycpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVhnS1ZFbE1ZWWFKZThicExIbkN3REtoZEhlRmF4T2VkYy53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsXG4gICAgICBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLFxuICAgICAgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcbiAgfVxuICAvKiBjeXJpbGxpYy1leHQgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIFNlbWlCb2xkJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1TZW1pQm9sZCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg5S1ZFbE1ZWWFKZThicExIbkN3REtqUTc2QUl4c2RQM3BCbXRGOEEud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDODgsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLFxuICAgICAgVStGRTJFLUZFMkY7XG4gIH1cbiAgLyogY3lyaWxsaWMgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIFNlbWlCb2xkJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1TZW1pQm9sZCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg5S1ZFbE1ZWWFKZThicExIbkN3REtqUTc2QUlWc2RQM3BCbXRGOEEud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7XG4gIH1cbiAgLyogZ3JlZWsgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogJ0lCTSBQbGV4IFNhbnMnO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IGxvY2FsKCdJQk0gUGxleCBTYW5zIFNlbWlCb2xkJyksIGxvY2FsKCdJQk1QbGV4U2Fucy1TZW1pQm9sZCcpLFxuICAgICAgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pYm1wbGV4c2Fucy92Ni96WVg5S1ZFbE1ZWWFKZThicExIbkN3REtqUTc2QUlKc2RQM3BCbXRGOEEud29mZjIpXG4gICAgICAgIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LWRpc3BsYXk6ICRjYXJib24tLWZvbnQtZGlzcGxheTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAzNzAtMDNGRjtcbiAgfVxuICAvKiB2aWV0bmFtZXNlICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBTZW1pQm9sZCcpLCBsb2NhbCgnSUJNUGxleFNhbnMtU2VtaUJvbGQnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYOUtWRWxNWVlhSmU4YnBMSG5Dd0RLalE3NkFJNXNkUDNwQm10RjhBLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzFFQTAtMUVGOSwgVSsyMEFCO1xuICB9XG4gIC8qIGxhdGluLWV4dCAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZmFtaWx5OiAnSUJNIFBsZXggU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNyYzogbG9jYWwoJ0lCTSBQbGV4IFNhbnMgU2VtaUJvbGQnKSwgbG9jYWwoJ0lCTVBsZXhTYW5zLVNlbWlCb2xkJyksXG4gICAgICB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2libXBsZXhzYW5zL3Y2L3pZWDlLVkVsTVlZYUplOGJwTEhuQ3dES2pRNzZBSTlzZFAzcEJtdEY4QS53b2ZmMilcbiAgICAgICAgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtZGlzcGxheTogJGNhcmJvbi0tZm9udC1kaXNwbGF5O1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMjRGLCBVKzAyNTksIFUrMUUwMC0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLFxuICAgICAgVSsyMEFELTIwQ0YsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xuICB9XG4gIC8qIGxhdGluICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1mYW1pbHk6ICdJQk0gUGxleCBTYW5zJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiBsb2NhbCgnSUJNIFBsZXggU2FucyBTZW1pQm9sZCcpLCBsb2NhbCgnSUJNUGxleFNhbnMtU2VtaUJvbGQnKSxcbiAgICAgIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaWJtcGxleHNhbnMvdjYvellYOUtWRWxNWVlhSmU4YnBMSG5Dd0RLalE3NkFJRnNkUDNwQm1zLndvZmYyKVxuICAgICAgICBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC1kaXNwbGF5OiAkY2FyYm9uLS1mb250LWRpc3BsYXk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSxcbiAgICAgIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsXG4gICAgICBVKzIyMTUsIFUrRkVGRiwgVStGRkZEO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAndmFycyc7XG5AaW1wb3J0ICdjc3MtLXJlc2V0JztcbkBpbXBvcnQgJ3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcblxuLy8vIEluY2x1ZGUgc3R5bGVzIGZvciBzY3JlZW4gcmVhZGVyL2Fzc2lzdGl2ZSB0ZXh0XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBjc3MtaGVscGVycyB7XG4gIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCxcbiAgLiN7JHByZWZpeH0tLXZpc3VhbGx5LWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlcjogMDtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYm9keSB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Nzcy0taGVscGVycycpIHtcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cygnY3NzLS1oZWxwZXJzJykgPT0gZmFsc2Ugb3IgJGNzcy0taGVscGVycyA9PSB0cnVlIHtcbiAgICBAaW5jbHVkZSBjc3MtaGVscGVycztcbiAgfVxufVxuIiwiLy8gQ29kZSBnZW5lcmF0ZWQgYnkgQGNhcmJvbi90aGVtZXMuIERPIE5PVCBFRElULlxuLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOVxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4vdGhlbWVzJztcblxuLy8vIERlZmluZSB0aGVtZSB2YXJpYWJsZXMgZnJvbSBhIG1hcCBvZiB0b2tlbnNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7TWFwfSAkdGhlbWUgWyRjYXJib24tLXRoZW1lXSAtIE1hcCBvZiB0aGVtZSB0b2tlbnNcbi8vLyBAcGFyYW0ge0Jvb2x9ICRlbWl0LWN1c3RvbS1wcm9wZXJ0aWVzIFtmYWxzZV0gLSBPdXRwdXQgQ1NTIEN1c3RvbSBQcm9wZXJ0aWVzIGZvciB0aGVtZSB0b2tlbnNcbi8vLyBAY29udGVudCBQYXNzIGluIHlvdXIgY3VzdG9tIGRlY2xhcmF0aW9uIGJsb2NrcyB0byBiZSB1c2VkIGFmdGVyIHRoZSB0b2tlbiBtYXBzIHNldCB0aGVtaW5nIHZhcmlhYmxlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC8vIERlZmF1bHQgdXNhZ2Vcbi8vLyAgIEBpbmNsdWRlIGNhcmJvbi0tdGhlbWUoKTtcbi8vL1xuLy8vICAgLy8gQWx0ZXJuYXRlIHN0eWxpbmcgKG5vdCB3aGl0ZSB0aGVtZSlcbi8vLyAgIEBpbmNsdWRlIGNhcmJvbi0tdGhlbWUoJGNhcmJvbi0tdGhlbWUtLWc5MCkge1xuLy8vICAgICAvLyBkZWNsYXJhdGlvbnMuLi5cbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gSW5saW5lIHN0eWxpbmdcbi8vLyAgIEBpbmNsdWRlIGNhcmJvbi0tdGhlbWUoJGNhcmJvbi0tdGhlbWUtLWc5MCkge1xuLy8vICAgICAubXktZGFyay10aGVtZSB7XG4vLy8gICAgICAgLy8gZGVjbGFyYXRpb25zLi4uXG4vLy8gICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vIEBncm91cCBAY2FyYm9uL3RoZW1lc1xuQG1peGluIGNhcmJvbi0tdGhlbWUoXG4gICR0aGVtZTogJGNhcmJvbi0tdGhlbWUsXG4gICRlbWl0LWN1c3RvbS1wcm9wZXJ0aWVzOiBmYWxzZSxcbiAgJGVtaXQtZGlmZmVyZW5jZTogZmFsc2Vcbikge1xuICAkcGFyZW50LWNhcmJvbi10aGVtZTogJGNhcmJvbi0tdGhlbWU7XG4gICRjYXJib24tLXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcbiAgJGludGVyYWN0aXZlLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2ludGVyYWN0aXZlLTAxJykgIWdsb2JhbDtcbiAgJGludGVyYWN0aXZlLTAyOiBtYXAtZ2V0KCR0aGVtZSwgJ2ludGVyYWN0aXZlLTAyJykgIWdsb2JhbDtcbiAgJGludGVyYWN0aXZlLTAzOiBtYXAtZ2V0KCR0aGVtZSwgJ2ludGVyYWN0aXZlLTAzJykgIWdsb2JhbDtcbiAgJGludGVyYWN0aXZlLTA0OiBtYXAtZ2V0KCR0aGVtZSwgJ2ludGVyYWN0aXZlLTA0JykgIWdsb2JhbDtcbiAgJHVpLWJhY2tncm91bmQ6IG1hcC1nZXQoJHRoZW1lLCAndWktYmFja2dyb3VuZCcpICFnbG9iYWw7XG4gICR1aS0wMTogbWFwLWdldCgkdGhlbWUsICd1aS0wMScpICFnbG9iYWw7XG4gICR1aS0wMjogbWFwLWdldCgkdGhlbWUsICd1aS0wMicpICFnbG9iYWw7XG4gICR1aS0wMzogbWFwLWdldCgkdGhlbWUsICd1aS0wMycpICFnbG9iYWw7XG4gICR1aS0wNDogbWFwLWdldCgkdGhlbWUsICd1aS0wNCcpICFnbG9iYWw7XG4gICR1aS0wNTogbWFwLWdldCgkdGhlbWUsICd1aS0wNScpICFnbG9iYWw7XG4gICR0ZXh0LTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ3RleHQtMDEnKSAhZ2xvYmFsO1xuICAkdGV4dC0wMjogbWFwLWdldCgkdGhlbWUsICd0ZXh0LTAyJykgIWdsb2JhbDtcbiAgJHRleHQtMDM6IG1hcC1nZXQoJHRoZW1lLCAndGV4dC0wMycpICFnbG9iYWw7XG4gICR0ZXh0LTA0OiBtYXAtZ2V0KCR0aGVtZSwgJ3RleHQtMDQnKSAhZ2xvYmFsO1xuICAkdGV4dC0wNTogbWFwLWdldCgkdGhlbWUsICd0ZXh0LTA1JykgIWdsb2JhbDtcbiAgJHRleHQtZXJyb3I6IG1hcC1nZXQoJHRoZW1lLCAndGV4dC1lcnJvcicpICFnbG9iYWw7XG4gICRpY29uLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2ljb24tMDEnKSAhZ2xvYmFsO1xuICAkaWNvbi0wMjogbWFwLWdldCgkdGhlbWUsICdpY29uLTAyJykgIWdsb2JhbDtcbiAgJGljb24tMDM6IG1hcC1nZXQoJHRoZW1lLCAnaWNvbi0wMycpICFnbG9iYWw7XG4gICRsaW5rLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2xpbmstMDEnKSAhZ2xvYmFsO1xuICAkaW52ZXJzZS1saW5rOiBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2UtbGluaycpICFnbG9iYWw7XG4gICRmaWVsZC0wMTogbWFwLWdldCgkdGhlbWUsICdmaWVsZC0wMScpICFnbG9iYWw7XG4gICRmaWVsZC0wMjogbWFwLWdldCgkdGhlbWUsICdmaWVsZC0wMicpICFnbG9iYWw7XG4gICRpbnZlcnNlLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2UtMDEnKSAhZ2xvYmFsO1xuICAkaW52ZXJzZS0wMjogbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLTAyJykgIWdsb2JhbDtcbiAgJHN1cHBvcnQtMDE6IG1hcC1nZXQoJHRoZW1lLCAnc3VwcG9ydC0wMScpICFnbG9iYWw7XG4gICRzdXBwb3J0LTAyOiBtYXAtZ2V0KCR0aGVtZSwgJ3N1cHBvcnQtMDInKSAhZ2xvYmFsO1xuICAkc3VwcG9ydC0wMzogbWFwLWdldCgkdGhlbWUsICdzdXBwb3J0LTAzJykgIWdsb2JhbDtcbiAgJHN1cHBvcnQtMDQ6IG1hcC1nZXQoJHRoZW1lLCAnc3VwcG9ydC0wNCcpICFnbG9iYWw7XG4gICRpbnZlcnNlLXN1cHBvcnQtMDE6IG1hcC1nZXQoJHRoZW1lLCAnaW52ZXJzZS1zdXBwb3J0LTAxJykgIWdsb2JhbDtcbiAgJGludmVyc2Utc3VwcG9ydC0wMjogbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLXN1cHBvcnQtMDInKSAhZ2xvYmFsO1xuICAkaW52ZXJzZS1zdXBwb3J0LTAzOiBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2Utc3VwcG9ydC0wMycpICFnbG9iYWw7XG4gICRpbnZlcnNlLXN1cHBvcnQtMDQ6IG1hcC1nZXQoJHRoZW1lLCAnaW52ZXJzZS1zdXBwb3J0LTA0JykgIWdsb2JhbDtcbiAgJG92ZXJsYXktMDE6IG1hcC1nZXQoJHRoZW1lLCAnb3ZlcmxheS0wMScpICFnbG9iYWw7XG4gICRkYW5nZXItMDE6IG1hcC1nZXQoJHRoZW1lLCAnZGFuZ2VyLTAxJykgIWdsb2JhbDtcbiAgJGRhbmdlci0wMjogbWFwLWdldCgkdGhlbWUsICdkYW5nZXItMDInKSAhZ2xvYmFsO1xuICAkZm9jdXM6IG1hcC1nZXQoJHRoZW1lLCAnZm9jdXMnKSAhZ2xvYmFsO1xuICAkaW52ZXJzZS1mb2N1cy11aTogbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLWZvY3VzLXVpJykgIWdsb2JhbDtcbiAgJGhvdmVyLXByaW1hcnk6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItcHJpbWFyeScpICFnbG9iYWw7XG4gICRhY3RpdmUtcHJpbWFyeTogbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtcHJpbWFyeScpICFnbG9iYWw7XG4gICRob3Zlci1wcmltYXJ5LXRleHQ6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItcHJpbWFyeS10ZXh0JykgIWdsb2JhbDtcbiAgJGhvdmVyLXNlY29uZGFyeTogbWFwLWdldCgkdGhlbWUsICdob3Zlci1zZWNvbmRhcnknKSAhZ2xvYmFsO1xuICAkYWN0aXZlLXNlY29uZGFyeTogbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtc2Vjb25kYXJ5JykgIWdsb2JhbDtcbiAgJGhvdmVyLXRlcnRpYXJ5OiBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLXRlcnRpYXJ5JykgIWdsb2JhbDtcbiAgJGFjdGl2ZS10ZXJ0aWFyeTogbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtdGVydGlhcnknKSAhZ2xvYmFsO1xuICAkaG92ZXItdWk6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItdWknKSAhZ2xvYmFsO1xuICAkaG92ZXItbGlnaHQtdWk6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItbGlnaHQtdWknKSAhZ2xvYmFsO1xuICAkaG92ZXItc2VsZWN0ZWQtdWk6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItc2VsZWN0ZWQtdWknKSAhZ2xvYmFsO1xuICAkYWN0aXZlLXVpOiBtYXAtZ2V0KCR0aGVtZSwgJ2FjdGl2ZS11aScpICFnbG9iYWw7XG4gICRhY3RpdmUtbGlnaHQtdWk6IG1hcC1nZXQoJHRoZW1lLCAnYWN0aXZlLWxpZ2h0LXVpJykgIWdsb2JhbDtcbiAgJHNlbGVjdGVkLXVpOiBtYXAtZ2V0KCR0aGVtZSwgJ3NlbGVjdGVkLXVpJykgIWdsb2JhbDtcbiAgJHNlbGVjdGVkLWxpZ2h0LXVpOiBtYXAtZ2V0KCR0aGVtZSwgJ3NlbGVjdGVkLWxpZ2h0LXVpJykgIWdsb2JhbDtcbiAgJGludmVyc2UtaG92ZXItdWk6IG1hcC1nZXQoJHRoZW1lLCAnaW52ZXJzZS1ob3Zlci11aScpICFnbG9iYWw7XG4gICRob3Zlci1kYW5nZXI6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItZGFuZ2VyJykgIWdsb2JhbDtcbiAgJGFjdGl2ZS1kYW5nZXI6IG1hcC1nZXQoJHRoZW1lLCAnYWN0aXZlLWRhbmdlcicpICFnbG9iYWw7XG4gICRob3Zlci1yb3c6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItcm93JykgIWdsb2JhbDtcbiAgJHZpc2l0ZWQtbGluazogbWFwLWdldCgkdGhlbWUsICd2aXNpdGVkLWxpbmsnKSAhZ2xvYmFsO1xuICAkZGlzYWJsZWQtMDE6IG1hcC1nZXQoJHRoZW1lLCAnZGlzYWJsZWQtMDEnKSAhZ2xvYmFsO1xuICAkZGlzYWJsZWQtMDI6IG1hcC1nZXQoJHRoZW1lLCAnZGlzYWJsZWQtMDInKSAhZ2xvYmFsO1xuICAkZGlzYWJsZWQtMDM6IG1hcC1nZXQoJHRoZW1lLCAnZGlzYWJsZWQtMDMnKSAhZ2xvYmFsO1xuICAkaGlnaGxpZ2h0OiBtYXAtZ2V0KCR0aGVtZSwgJ2hpZ2hsaWdodCcpICFnbG9iYWw7XG4gICRkZWNvcmF0aXZlLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2RlY29yYXRpdmUtMDEnKSAhZ2xvYmFsO1xuICAkYnV0dG9uLXNlcGFyYXRvcjogbWFwLWdldCgkdGhlbWUsICdidXR0b24tc2VwYXJhdG9yJykgIWdsb2JhbDtcbiAgJHNrZWxldG9uLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ3NrZWxldG9uLTAxJykgIWdsb2JhbDtcbiAgJHNrZWxldG9uLTAyOiBtYXAtZ2V0KCR0aGVtZSwgJ3NrZWxldG9uLTAyJykgIWdsb2JhbDtcbiAgJGJyYW5kLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2JyYW5kLTAxJykgIWdsb2JhbDtcbiAgJGJyYW5kLTAyOiBtYXAtZ2V0KCR0aGVtZSwgJ2JyYW5kLTAyJykgIWdsb2JhbDtcbiAgJGJyYW5kLTAzOiBtYXAtZ2V0KCR0aGVtZSwgJ2JyYW5kLTAzJykgIWdsb2JhbDtcbiAgJGFjdGl2ZS0wMTogbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtMDEnKSAhZ2xvYmFsO1xuICAkaG92ZXItZmllbGQ6IG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItZmllbGQnKSAhZ2xvYmFsO1xuICAkZGFuZ2VyOiBtYXAtZ2V0KCR0aGVtZSwgJ2RhbmdlcicpICFnbG9iYWw7XG4gICRjYXB0aW9uLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2NhcHRpb24tMDEnKSAhZ2xvYmFsO1xuICAkbGFiZWwtMDE6IG1hcC1nZXQoJHRoZW1lLCAnbGFiZWwtMDEnKSAhZ2xvYmFsO1xuICAkaGVscGVyLXRleHQtMDE6IG1hcC1nZXQoJHRoZW1lLCAnaGVscGVyLXRleHQtMDEnKSAhZ2xvYmFsO1xuICAkYm9keS1zaG9ydC0wMTogbWFwLWdldCgkdGhlbWUsICdib2R5LXNob3J0LTAxJykgIWdsb2JhbDtcbiAgJGJvZHktbG9uZy0wMTogbWFwLWdldCgkdGhlbWUsICdib2R5LWxvbmctMDEnKSAhZ2xvYmFsO1xuICAkYm9keS1zaG9ydC0wMjogbWFwLWdldCgkdGhlbWUsICdib2R5LXNob3J0LTAyJykgIWdsb2JhbDtcbiAgJGJvZHktbG9uZy0wMjogbWFwLWdldCgkdGhlbWUsICdib2R5LWxvbmctMDInKSAhZ2xvYmFsO1xuICAkY29kZS0wMTogbWFwLWdldCgkdGhlbWUsICdjb2RlLTAxJykgIWdsb2JhbDtcbiAgJGNvZGUtMDI6IG1hcC1nZXQoJHRoZW1lLCAnY29kZS0wMicpICFnbG9iYWw7XG4gICRoZWFkaW5nLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2hlYWRpbmctMDEnKSAhZ2xvYmFsO1xuICAkcHJvZHVjdGl2ZS1oZWFkaW5nLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpICFnbG9iYWw7XG4gICRoZWFkaW5nLTAyOiBtYXAtZ2V0KCR0aGVtZSwgJ2hlYWRpbmctMDInKSAhZ2xvYmFsO1xuICAkcHJvZHVjdGl2ZS1oZWFkaW5nLTAyOiBtYXAtZ2V0KCR0aGVtZSwgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMicpICFnbG9iYWw7XG4gICRwcm9kdWN0aXZlLWhlYWRpbmctMDM6IG1hcC1nZXQoJHRoZW1lLCAncHJvZHVjdGl2ZS1oZWFkaW5nLTAzJykgIWdsb2JhbDtcbiAgJHByb2R1Y3RpdmUtaGVhZGluZy0wNDogbWFwLWdldCgkdGhlbWUsICdwcm9kdWN0aXZlLWhlYWRpbmctMDQnKSAhZ2xvYmFsO1xuICAkcHJvZHVjdGl2ZS1oZWFkaW5nLTA1OiBtYXAtZ2V0KCR0aGVtZSwgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wNScpICFnbG9iYWw7XG4gICRwcm9kdWN0aXZlLWhlYWRpbmctMDY6IG1hcC1nZXQoJHRoZW1lLCAncHJvZHVjdGl2ZS1oZWFkaW5nLTA2JykgIWdsb2JhbDtcbiAgJHByb2R1Y3RpdmUtaGVhZGluZy0wNzogbWFwLWdldCgkdGhlbWUsICdwcm9kdWN0aXZlLWhlYWRpbmctMDcnKSAhZ2xvYmFsO1xuICAkZXhwcmVzc2l2ZS1oZWFkaW5nLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2V4cHJlc3NpdmUtaGVhZGluZy0wMScpICFnbG9iYWw7XG4gICRleHByZXNzaXZlLWhlYWRpbmctMDI6IG1hcC1nZXQoJHRoZW1lLCAnZXhwcmVzc2l2ZS1oZWFkaW5nLTAyJykgIWdsb2JhbDtcbiAgJGV4cHJlc3NpdmUtaGVhZGluZy0wMzogbWFwLWdldCgkdGhlbWUsICdleHByZXNzaXZlLWhlYWRpbmctMDMnKSAhZ2xvYmFsO1xuICAkZXhwcmVzc2l2ZS1oZWFkaW5nLTA0OiBtYXAtZ2V0KCR0aGVtZSwgJ2V4cHJlc3NpdmUtaGVhZGluZy0wNCcpICFnbG9iYWw7XG4gICRleHByZXNzaXZlLWhlYWRpbmctMDU6IG1hcC1nZXQoJHRoZW1lLCAnZXhwcmVzc2l2ZS1oZWFkaW5nLTA1JykgIWdsb2JhbDtcbiAgJGV4cHJlc3NpdmUtaGVhZGluZy0wNjogbWFwLWdldCgkdGhlbWUsICdleHByZXNzaXZlLWhlYWRpbmctMDYnKSAhZ2xvYmFsO1xuICAkZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDE6IG1hcC1nZXQoJHRoZW1lLCAnZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDEnKSAhZ2xvYmFsO1xuICAkcXVvdGF0aW9uLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ3F1b3RhdGlvbi0wMScpICFnbG9iYWw7XG4gICRxdW90YXRpb24tMDI6IG1hcC1nZXQoJHRoZW1lLCAncXVvdGF0aW9uLTAyJykgIWdsb2JhbDtcbiAgJGRpc3BsYXktMDE6IG1hcC1nZXQoJHRoZW1lLCAnZGlzcGxheS0wMScpICFnbG9iYWw7XG4gICRkaXNwbGF5LTAyOiBtYXAtZ2V0KCR0aGVtZSwgJ2Rpc3BsYXktMDInKSAhZ2xvYmFsO1xuICAkZGlzcGxheS0wMzogbWFwLWdldCgkdGhlbWUsICdkaXNwbGF5LTAzJykgIWdsb2JhbDtcbiAgJGRpc3BsYXktMDQ6IG1hcC1nZXQoJHRoZW1lLCAnZGlzcGxheS0wNCcpICFnbG9iYWw7XG4gICRzcGFjaW5nLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDEnKSAhZ2xvYmFsO1xuICAkc3BhY2luZy0wMjogbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTAyJykgIWdsb2JhbDtcbiAgJHNwYWNpbmctMDM6IG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wMycpICFnbG9iYWw7XG4gICRzcGFjaW5nLTA0OiBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDQnKSAhZ2xvYmFsO1xuICAkc3BhY2luZy0wNTogbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTA1JykgIWdsb2JhbDtcbiAgJHNwYWNpbmctMDY6IG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wNicpICFnbG9iYWw7XG4gICRzcGFjaW5nLTA3OiBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDcnKSAhZ2xvYmFsO1xuICAkc3BhY2luZy0wODogbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTA4JykgIWdsb2JhbDtcbiAgJHNwYWNpbmctMDk6IG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wOScpICFnbG9iYWw7XG4gICRzcGFjaW5nLTEwOiBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMTAnKSAhZ2xvYmFsO1xuICAkc3BhY2luZy0xMTogbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTExJykgIWdsb2JhbDtcbiAgJHNwYWNpbmctMTI6IG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0xMicpICFnbG9iYWw7XG4gICRmbHVpZC1zcGFjaW5nLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2ZsdWlkLXNwYWNpbmctMDEnKSAhZ2xvYmFsO1xuICAkZmx1aWQtc3BhY2luZy0wMjogbWFwLWdldCgkdGhlbWUsICdmbHVpZC1zcGFjaW5nLTAyJykgIWdsb2JhbDtcbiAgJGZsdWlkLXNwYWNpbmctMDM6IG1hcC1nZXQoJHRoZW1lLCAnZmx1aWQtc3BhY2luZy0wMycpICFnbG9iYWw7XG4gICRmbHVpZC1zcGFjaW5nLTA0OiBtYXAtZ2V0KCR0aGVtZSwgJ2ZsdWlkLXNwYWNpbmctMDQnKSAhZ2xvYmFsO1xuICAkbGF5b3V0LTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2xheW91dC0wMScpICFnbG9iYWw7XG4gICRsYXlvdXQtMDI6IG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTAyJykgIWdsb2JhbDtcbiAgJGxheW91dC0wMzogbWFwLWdldCgkdGhlbWUsICdsYXlvdXQtMDMnKSAhZ2xvYmFsO1xuICAkbGF5b3V0LTA0OiBtYXAtZ2V0KCR0aGVtZSwgJ2xheW91dC0wNCcpICFnbG9iYWw7XG4gICRsYXlvdXQtMDU6IG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTA1JykgIWdsb2JhbDtcbiAgJGxheW91dC0wNjogbWFwLWdldCgkdGhlbWUsICdsYXlvdXQtMDYnKSAhZ2xvYmFsO1xuICAkbGF5b3V0LTA3OiBtYXAtZ2V0KCR0aGVtZSwgJ2xheW91dC0wNycpICFnbG9iYWw7XG4gICRjb250YWluZXItMDE6IG1hcC1nZXQoJHRoZW1lLCAnY29udGFpbmVyLTAxJykgIWdsb2JhbDtcbiAgJGNvbnRhaW5lci0wMjogbWFwLWdldCgkdGhlbWUsICdjb250YWluZXItMDInKSAhZ2xvYmFsO1xuICAkY29udGFpbmVyLTAzOiBtYXAtZ2V0KCR0aGVtZSwgJ2NvbnRhaW5lci0wMycpICFnbG9iYWw7XG4gICRjb250YWluZXItMDQ6IG1hcC1nZXQoJHRoZW1lLCAnY29udGFpbmVyLTA0JykgIWdsb2JhbDtcbiAgJGNvbnRhaW5lci0wNTogbWFwLWdldCgkdGhlbWUsICdjb250YWluZXItMDUnKSAhZ2xvYmFsO1xuICAkaWNvbi1zaXplLTAxOiBtYXAtZ2V0KCR0aGVtZSwgJ2ljb24tc2l6ZS0wMScpICFnbG9iYWw7XG4gICRpY29uLXNpemUtMDI6IG1hcC1nZXQoJHRoZW1lLCAnaWNvbi1zaXplLTAyJykgIWdsb2JhbDtcblxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnZmVhdHVyZS1mbGFncycpIGFuZFxuICAgIG1hcC1nZXQoJGZlYXR1cmUtZmxhZ3MsICdlbmFibGUtY3NzLWN1c3RvbS1wcm9wZXJ0aWVzJylcbiAge1xuICAgICRpbnRlcmFjdGl2ZS0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pbnRlcmFjdGl2ZS0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaW50ZXJhY3RpdmUtMDEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaW50ZXJhY3RpdmUtMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taW50ZXJhY3RpdmUtMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludGVyYWN0aXZlLTAyJylcbiAgICApICFnbG9iYWw7XG4gICAgJGludGVyYWN0aXZlLTAzOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWludGVyYWN0aXZlLTAzLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdpbnRlcmFjdGl2ZS0wMycpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRpbnRlcmFjdGl2ZS0wNDogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pbnRlcmFjdGl2ZS0wNCxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaW50ZXJhY3RpdmUtMDQnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkdWktYmFja2dyb3VuZDogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS11aS1iYWNrZ3JvdW5kLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICd1aS1iYWNrZ3JvdW5kJylcbiAgICApICFnbG9iYWw7XG4gICAgJHVpLTAxOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXVpLTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICd1aS0wMScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICR1aS0wMjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS11aS0wMixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAndWktMDInKVxuICAgICkgIWdsb2JhbDtcbiAgICAkdWktMDM6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tdWktMDMsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3VpLTAzJylcbiAgICApICFnbG9iYWw7XG4gICAgJHVpLTA0OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXVpLTA0LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICd1aS0wNCcpXG4gICAgKSAhZ2xvYmFsO1xuICAgICR1aS0wNTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS11aS0wNSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAndWktMDUnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkdGV4dC0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS10ZXh0LTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICd0ZXh0LTAxJylcbiAgICApICFnbG9iYWw7XG4gICAgJHRleHQtMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tdGV4dC0wMixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAndGV4dC0wMicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICR0ZXh0LTAzOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXRleHQtMDMsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3RleHQtMDMnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkdGV4dC0wNDogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS10ZXh0LTA0LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICd0ZXh0LTA0JylcbiAgICApICFnbG9iYWw7XG4gICAgJHRleHQtMDU6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tdGV4dC0wNSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAndGV4dC0wNScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICR0ZXh0LWVycm9yOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXRleHQtZXJyb3IsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3RleHQtZXJyb3InKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaWNvbi0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pY29uLTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdpY29uLTAxJylcbiAgICApICFnbG9iYWw7XG4gICAgJGljb24tMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taWNvbi0wMixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaWNvbi0wMicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRpY29uLTAzOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWljb24tMDMsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ljb24tMDMnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkbGluay0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1saW5rLTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdsaW5rLTAxJylcbiAgICApICFnbG9iYWw7XG4gICAgJGludmVyc2UtbGluazogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pbnZlcnNlLWxpbmssXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2UtbGluaycpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRmaWVsZC0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1maWVsZC0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZmllbGQtMDEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkZmllbGQtMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tZmllbGQtMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ZpZWxkLTAyJylcbiAgICApICFnbG9iYWw7XG4gICAgJGludmVyc2UtMDE6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taW52ZXJzZS0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaW52ZXJzZS0wMScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRpbnZlcnNlLTAyOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWludmVyc2UtMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2UtMDInKVxuICAgICkgIWdsb2JhbDtcbiAgICAkc3VwcG9ydC0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1zdXBwb3J0LTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdzdXBwb3J0LTAxJylcbiAgICApICFnbG9iYWw7XG4gICAgJHN1cHBvcnQtMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tc3VwcG9ydC0wMixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnc3VwcG9ydC0wMicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRzdXBwb3J0LTAzOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXN1cHBvcnQtMDMsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3N1cHBvcnQtMDMnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkc3VwcG9ydC0wNDogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1zdXBwb3J0LTA0LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdzdXBwb3J0LTA0JylcbiAgICApICFnbG9iYWw7XG4gICAgJGludmVyc2Utc3VwcG9ydC0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pbnZlcnNlLXN1cHBvcnQtMDEsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2Utc3VwcG9ydC0wMScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRpbnZlcnNlLXN1cHBvcnQtMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taW52ZXJzZS1zdXBwb3J0LTAyLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLXN1cHBvcnQtMDInKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaW52ZXJzZS1zdXBwb3J0LTAzOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWludmVyc2Utc3VwcG9ydC0wMyxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaW52ZXJzZS1zdXBwb3J0LTAzJylcbiAgICApICFnbG9iYWw7XG4gICAgJGludmVyc2Utc3VwcG9ydC0wNDogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pbnZlcnNlLXN1cHBvcnQtMDQsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2Utc3VwcG9ydC0wNCcpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRvdmVybGF5LTAxOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LW92ZXJsYXktMDEsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ292ZXJsYXktMDEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkZGFuZ2VyLTAxOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWRhbmdlci0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZGFuZ2VyLTAxJylcbiAgICApICFnbG9iYWw7XG4gICAgJGRhbmdlci0wMjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1kYW5nZXItMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2Rhbmdlci0wMicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRmb2N1czogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1mb2N1cyxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZm9jdXMnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaW52ZXJzZS1mb2N1cy11aTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pbnZlcnNlLWZvY3VzLXVpLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLWZvY3VzLXVpJylcbiAgICApICFnbG9iYWw7XG4gICAgJGhvdmVyLXByaW1hcnk6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taG92ZXItcHJpbWFyeSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItcHJpbWFyeScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRhY3RpdmUtcHJpbWFyeTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1hY3RpdmUtcHJpbWFyeSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnYWN0aXZlLXByaW1hcnknKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaG92ZXItcHJpbWFyeS10ZXh0OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWhvdmVyLXByaW1hcnktdGV4dCxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItcHJpbWFyeS10ZXh0JylcbiAgICApICFnbG9iYWw7XG4gICAgJGhvdmVyLXNlY29uZGFyeTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1ob3Zlci1zZWNvbmRhcnksXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLXNlY29uZGFyeScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRhY3RpdmUtc2Vjb25kYXJ5OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWFjdGl2ZS1zZWNvbmRhcnksXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2FjdGl2ZS1zZWNvbmRhcnknKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaG92ZXItdGVydGlhcnk6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taG92ZXItdGVydGlhcnksXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLXRlcnRpYXJ5JylcbiAgICApICFnbG9iYWw7XG4gICAgJGFjdGl2ZS10ZXJ0aWFyeTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1hY3RpdmUtdGVydGlhcnksXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2FjdGl2ZS10ZXJ0aWFyeScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRob3Zlci11aTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1ob3Zlci11aSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItdWknKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaG92ZXItbGlnaHQtdWk6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taG92ZXItbGlnaHQtdWksXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLWxpZ2h0LXVpJylcbiAgICApICFnbG9iYWw7XG4gICAgJGhvdmVyLXNlbGVjdGVkLXVpOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWhvdmVyLXNlbGVjdGVkLXVpLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdob3Zlci1zZWxlY3RlZC11aScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRhY3RpdmUtdWk6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tYWN0aXZlLXVpLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtdWknKVxuICAgICkgIWdsb2JhbDtcbiAgICAkYWN0aXZlLWxpZ2h0LXVpOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWFjdGl2ZS1saWdodC11aSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnYWN0aXZlLWxpZ2h0LXVpJylcbiAgICApICFnbG9iYWw7XG4gICAgJHNlbGVjdGVkLXVpOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXNlbGVjdGVkLXVpLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdzZWxlY3RlZC11aScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRzZWxlY3RlZC1saWdodC11aTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1zZWxlY3RlZC1saWdodC11aSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnc2VsZWN0ZWQtbGlnaHQtdWknKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaW52ZXJzZS1ob3Zlci11aTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1pbnZlcnNlLWhvdmVyLXVpLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLWhvdmVyLXVpJylcbiAgICApICFnbG9iYWw7XG4gICAgJGhvdmVyLWRhbmdlcjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1ob3Zlci1kYW5nZXIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLWRhbmdlcicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRhY3RpdmUtZGFuZ2VyOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWFjdGl2ZS1kYW5nZXIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2FjdGl2ZS1kYW5nZXInKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaG92ZXItcm93OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWhvdmVyLXJvdyxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItcm93JylcbiAgICApICFnbG9iYWw7XG4gICAgJHZpc2l0ZWQtbGluazogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS12aXNpdGVkLWxpbmssXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3Zpc2l0ZWQtbGluaycpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRkaXNhYmxlZC0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1kaXNhYmxlZC0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZGlzYWJsZWQtMDEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkZGlzYWJsZWQtMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tZGlzYWJsZWQtMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2Rpc2FibGVkLTAyJylcbiAgICApICFnbG9iYWw7XG4gICAgJGRpc2FibGVkLTAzOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWRpc2FibGVkLTAzLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdkaXNhYmxlZC0wMycpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRoaWdobGlnaHQ6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taGlnaGxpZ2h0LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdoaWdobGlnaHQnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkZGVjb3JhdGl2ZS0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1kZWNvcmF0aXZlLTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdkZWNvcmF0aXZlLTAxJylcbiAgICApICFnbG9iYWw7XG4gICAgJGJ1dHRvbi1zZXBhcmF0b3I6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tYnV0dG9uLXNlcGFyYXRvcixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnYnV0dG9uLXNlcGFyYXRvcicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRza2VsZXRvbi0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1za2VsZXRvbi0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnc2tlbGV0b24tMDEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkc2tlbGV0b24tMDI6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tc2tlbGV0b24tMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3NrZWxldG9uLTAyJylcbiAgICApICFnbG9iYWw7XG4gICAgJGJyYW5kLTAxOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWJyYW5kLTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdicmFuZC0wMScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRicmFuZC0wMjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1icmFuZC0wMixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnYnJhbmQtMDInKVxuICAgICkgIWdsb2JhbDtcbiAgICAkYnJhbmQtMDM6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tYnJhbmQtMDMsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2JyYW5kLTAzJylcbiAgICApICFnbG9iYWw7XG4gICAgJGFjdGl2ZS0wMTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1hY3RpdmUtMDEsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2FjdGl2ZS0wMScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRob3Zlci1maWVsZDogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1ob3Zlci1maWVsZCxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItZmllbGQnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkZGFuZ2VyOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWRhbmdlcixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZGFuZ2VyJylcbiAgICApICFnbG9iYWw7XG4gICAgJHNwYWNpbmctMDE6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tc3BhY2luZy0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wMScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRzcGFjaW5nLTAyOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXNwYWNpbmctMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDInKVxuICAgICkgIWdsb2JhbDtcbiAgICAkc3BhY2luZy0wMzogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1zcGFjaW5nLTAzLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTAzJylcbiAgICApICFnbG9iYWw7XG4gICAgJHNwYWNpbmctMDQ6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tc3BhY2luZy0wNCxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wNCcpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRzcGFjaW5nLTA1OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXNwYWNpbmctMDUsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDUnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkc3BhY2luZy0wNjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1zcGFjaW5nLTA2LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTA2JylcbiAgICApICFnbG9iYWw7XG4gICAgJHNwYWNpbmctMDc6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tc3BhY2luZy0wNyxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wNycpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRzcGFjaW5nLTA4OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXNwYWNpbmctMDgsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDgnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkc3BhY2luZy0wOTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1zcGFjaW5nLTA5LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTA5JylcbiAgICApICFnbG9iYWw7XG4gICAgJHNwYWNpbmctMTA6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tc3BhY2luZy0xMCxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0xMCcpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRzcGFjaW5nLTExOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LXNwYWNpbmctMTEsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMTEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkc3BhY2luZy0xMjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1zcGFjaW5nLTEyLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTEyJylcbiAgICApICFnbG9iYWw7XG4gICAgJGZsdWlkLXNwYWNpbmctMDE6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tZmx1aWQtc3BhY2luZy0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZmx1aWQtc3BhY2luZy0wMScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRmbHVpZC1zcGFjaW5nLTAyOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWZsdWlkLXNwYWNpbmctMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ZsdWlkLXNwYWNpbmctMDInKVxuICAgICkgIWdsb2JhbDtcbiAgICAkZmx1aWQtc3BhY2luZy0wMzogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1mbHVpZC1zcGFjaW5nLTAzLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdmbHVpZC1zcGFjaW5nLTAzJylcbiAgICApICFnbG9iYWw7XG4gICAgJGZsdWlkLXNwYWNpbmctMDQ6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tZmx1aWQtc3BhY2luZy0wNCxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZmx1aWQtc3BhY2luZy0wNCcpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRsYXlvdXQtMDE6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tbGF5b3V0LTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdsYXlvdXQtMDEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkbGF5b3V0LTAyOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWxheW91dC0wMixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTAyJylcbiAgICApICFnbG9iYWw7XG4gICAgJGxheW91dC0wMzogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1sYXlvdXQtMDMsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2xheW91dC0wMycpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRsYXlvdXQtMDQ6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tbGF5b3V0LTA0LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdsYXlvdXQtMDQnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkbGF5b3V0LTA1OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWxheW91dC0wNSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTA1JylcbiAgICApICFnbG9iYWw7XG4gICAgJGxheW91dC0wNjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1sYXlvdXQtMDYsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2xheW91dC0wNicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRsYXlvdXQtMDc6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tbGF5b3V0LTA3LFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdsYXlvdXQtMDcnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkY29udGFpbmVyLTAxOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWNvbnRhaW5lci0wMSxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnY29udGFpbmVyLTAxJylcbiAgICApICFnbG9iYWw7XG4gICAgJGNvbnRhaW5lci0wMjogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1jb250YWluZXItMDIsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2NvbnRhaW5lci0wMicpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRjb250YWluZXItMDM6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0tY29udGFpbmVyLTAzLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdjb250YWluZXItMDMnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkY29udGFpbmVyLTA0OiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWNvbnRhaW5lci0wNCxcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnY29udGFpbmVyLTA0JylcbiAgICApICFnbG9iYWw7XG4gICAgJGNvbnRhaW5lci0wNTogdmFyKFxuICAgICAgLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS1jb250YWluZXItMDUsXG4gICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2NvbnRhaW5lci0wNScpXG4gICAgKSAhZ2xvYmFsO1xuICAgICRpY29uLXNpemUtMDE6IHZhcihcbiAgICAgIC0tI3skY3VzdG9tLXByb3BlcnR5LXByZWZpeH0taWNvbi1zaXplLTAxLFxuICAgICAgbWFwLWdldCgkdGhlbWUsICdpY29uLXNpemUtMDEnKVxuICAgICkgIWdsb2JhbDtcbiAgICAkaWNvbi1zaXplLTAyOiB2YXIoXG4gICAgICAtLSN7JGN1c3RvbS1wcm9wZXJ0eS1wcmVmaXh9LWljb24tc2l6ZS0wMixcbiAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaWNvbi1zaXplLTAyJylcbiAgICApICFnbG9iYWw7XG4gIH1cbiAgQGlmICRlbWl0LWN1c3RvbS1wcm9wZXJ0aWVzID09IHRydWUge1xuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2ludGVyYWN0aXZlLTAxJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnaW50ZXJhY3RpdmUtMDEnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludGVyYWN0aXZlLTAxJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaW50ZXJhY3RpdmUtMDInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdpbnRlcmFjdGl2ZS0wMicsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaW50ZXJhY3RpdmUtMDInKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdpbnRlcmFjdGl2ZS0wMycsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2ludGVyYWN0aXZlLTAzJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdpbnRlcmFjdGl2ZS0wMycpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2ludGVyYWN0aXZlLTA0JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnaW50ZXJhY3RpdmUtMDQnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludGVyYWN0aXZlLTA0JylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAndWktYmFja2dyb3VuZCcsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ3VpLWJhY2tncm91bmQnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3VpLWJhY2tncm91bmQnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ3VpLTAxJywgJGVtaXQtZGlmZmVyZW5jZSkge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCd1aS0wMScsIG1hcC1nZXQoJHRoZW1lLCAndWktMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICd1aS0wMicsICRlbWl0LWRpZmZlcmVuY2UpIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgndWktMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ3VpLTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAndWktMDMnLCAkZW1pdC1kaWZmZXJlbmNlKSB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3VpLTAzJywgbWFwLWdldCgkdGhlbWUsICd1aS0wMycpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ3VpLTA0JywgJGVtaXQtZGlmZmVyZW5jZSkge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCd1aS0wNCcsIG1hcC1nZXQoJHRoZW1lLCAndWktMDQnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICd1aS0wNScsICRlbWl0LWRpZmZlcmVuY2UpIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgndWktMDUnLCBtYXAtZ2V0KCR0aGVtZSwgJ3VpLTA1JykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAndGV4dC0wMScsICRlbWl0LWRpZmZlcmVuY2UpIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgndGV4dC0wMScsIG1hcC1nZXQoJHRoZW1lLCAndGV4dC0wMScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ3RleHQtMDInLCAkZW1pdC1kaWZmZXJlbmNlKSB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3RleHQtMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ3RleHQtMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICd0ZXh0LTAzJywgJGVtaXQtZGlmZmVyZW5jZSkge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCd0ZXh0LTAzJywgbWFwLWdldCgkdGhlbWUsICd0ZXh0LTAzJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAndGV4dC0wNCcsICRlbWl0LWRpZmZlcmVuY2UpIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgndGV4dC0wNCcsIG1hcC1nZXQoJHRoZW1lLCAndGV4dC0wNCcpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ3RleHQtMDUnLCAkZW1pdC1kaWZmZXJlbmNlKSB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3RleHQtMDUnLCBtYXAtZ2V0KCR0aGVtZSwgJ3RleHQtMDUnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAndGV4dC1lcnJvcicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgndGV4dC1lcnJvcicsIG1hcC1nZXQoJHRoZW1lLCAndGV4dC1lcnJvcicpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ2ljb24tMDEnLCAkZW1pdC1kaWZmZXJlbmNlKSB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2ljb24tMDEnLCBtYXAtZ2V0KCR0aGVtZSwgJ2ljb24tMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdpY29uLTAyJywgJGVtaXQtZGlmZmVyZW5jZSkge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdpY29uLTAyJywgbWFwLWdldCgkdGhlbWUsICdpY29uLTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnaWNvbi0wMycsICRlbWl0LWRpZmZlcmVuY2UpIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnaWNvbi0wMycsIG1hcC1nZXQoJHRoZW1lLCAnaWNvbi0wMycpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ2xpbmstMDEnLCAkZW1pdC1kaWZmZXJlbmNlKSB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xpbmstMDEnLCBtYXAtZ2V0KCR0aGVtZSwgJ2xpbmstMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaW52ZXJzZS1saW5rJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdpbnZlcnNlLWxpbmsnLCBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2UtbGluaycpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ2ZpZWxkLTAxJywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2ZpZWxkLTAxJywgbWFwLWdldCgkdGhlbWUsICdmaWVsZC0wMScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ2ZpZWxkLTAyJywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2ZpZWxkLTAyJywgbWFwLWdldCgkdGhlbWUsICdmaWVsZC0wMicpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdpbnZlcnNlLTAxJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdpbnZlcnNlLTAxJywgbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2ludmVyc2UtMDInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2ludmVyc2UtMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2UtMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnc3VwcG9ydC0wMScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc3VwcG9ydC0wMScsIG1hcC1nZXQoJHRoZW1lLCAnc3VwcG9ydC0wMScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdzdXBwb3J0LTAyJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdzdXBwb3J0LTAyJywgbWFwLWdldCgkdGhlbWUsICdzdXBwb3J0LTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3N1cHBvcnQtMDMnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3N1cHBvcnQtMDMnLCBtYXAtZ2V0KCR0aGVtZSwgJ3N1cHBvcnQtMDMnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnc3VwcG9ydC0wNCcsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc3VwcG9ydC0wNCcsIG1hcC1nZXQoJHRoZW1lLCAnc3VwcG9ydC0wNCcpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdpbnZlcnNlLXN1cHBvcnQtMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdpbnZlcnNlLXN1cHBvcnQtMDEnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2Utc3VwcG9ydC0wMScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2ludmVyc2Utc3VwcG9ydC0wMicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2ludmVyc2Utc3VwcG9ydC0wMicsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaW52ZXJzZS1zdXBwb3J0LTAyJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaW52ZXJzZS1zdXBwb3J0LTAzJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnaW52ZXJzZS1zdXBwb3J0LTAzJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLXN1cHBvcnQtMDMnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdpbnZlcnNlLXN1cHBvcnQtMDQnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdpbnZlcnNlLXN1cHBvcnQtMDQnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2Utc3VwcG9ydC0wNCcpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ292ZXJsYXktMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ292ZXJsYXktMDEnLCBtYXAtZ2V0KCR0aGVtZSwgJ292ZXJsYXktMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdkYW5nZXItMDEnLCAkZW1pdC1kaWZmZXJlbmNlKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnZGFuZ2VyLTAxJywgbWFwLWdldCgkdGhlbWUsICdkYW5nZXItMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdkYW5nZXItMDInLCAkZW1pdC1kaWZmZXJlbmNlKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnZGFuZ2VyLTAyJywgbWFwLWdldCgkdGhlbWUsICdkYW5nZXItMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdmb2N1cycsICRlbWl0LWRpZmZlcmVuY2UpIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnZm9jdXMnLCBtYXAtZ2V0KCR0aGVtZSwgJ2ZvY3VzJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2ludmVyc2UtZm9jdXMtdWknLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdpbnZlcnNlLWZvY3VzLXVpJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdpbnZlcnNlLWZvY3VzLXVpJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaG92ZXItcHJpbWFyeScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2hvdmVyLXByaW1hcnknLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLXByaW1hcnknKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdhY3RpdmUtcHJpbWFyeScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2FjdGl2ZS1wcmltYXJ5JyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtcHJpbWFyeScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2hvdmVyLXByaW1hcnktdGV4dCcsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2hvdmVyLXByaW1hcnktdGV4dCcsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItcHJpbWFyeS10ZXh0JylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaG92ZXItc2Vjb25kYXJ5JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnaG92ZXItc2Vjb25kYXJ5JyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdob3Zlci1zZWNvbmRhcnknKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdhY3RpdmUtc2Vjb25kYXJ5JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnYWN0aXZlLXNlY29uZGFyeScsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnYWN0aXZlLXNlY29uZGFyeScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2hvdmVyLXRlcnRpYXJ5JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnaG92ZXItdGVydGlhcnknLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLXRlcnRpYXJ5JylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnYWN0aXZlLXRlcnRpYXJ5JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnYWN0aXZlLXRlcnRpYXJ5JyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtdGVydGlhcnknKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ2hvdmVyLXVpJywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2hvdmVyLXVpJywgbWFwLWdldCgkdGhlbWUsICdob3Zlci11aScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdob3Zlci1saWdodC11aScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2hvdmVyLWxpZ2h0LXVpJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdob3Zlci1saWdodC11aScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2hvdmVyLXNlbGVjdGVkLXVpJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnaG92ZXItc2VsZWN0ZWQtdWknLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2hvdmVyLXNlbGVjdGVkLXVpJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdhY3RpdmUtdWknLCAkZW1pdC1kaWZmZXJlbmNlKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnYWN0aXZlLXVpJywgbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtdWknKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnYWN0aXZlLWxpZ2h0LXVpJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnYWN0aXZlLWxpZ2h0LXVpJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtbGlnaHQtdWknKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdzZWxlY3RlZC11aScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc2VsZWN0ZWQtdWknLCBtYXAtZ2V0KCR0aGVtZSwgJ3NlbGVjdGVkLXVpJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3NlbGVjdGVkLWxpZ2h0LXVpJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnc2VsZWN0ZWQtbGlnaHQtdWknLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3NlbGVjdGVkLWxpZ2h0LXVpJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaW52ZXJzZS1ob3Zlci11aScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2ludmVyc2UtaG92ZXItdWknLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ludmVyc2UtaG92ZXItdWknKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdob3Zlci1kYW5nZXInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2hvdmVyLWRhbmdlcicsIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItZGFuZ2VyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2FjdGl2ZS1kYW5nZXInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdhY3RpdmUtZGFuZ2VyJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdhY3RpdmUtZGFuZ2VyJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdob3Zlci1yb3cnLCAkZW1pdC1kaWZmZXJlbmNlKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnaG92ZXItcm93JywgbWFwLWdldCgkdGhlbWUsICdob3Zlci1yb3cnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAndmlzaXRlZC1saW5rJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCd2aXNpdGVkLWxpbmsnLCBtYXAtZ2V0KCR0aGVtZSwgJ3Zpc2l0ZWQtbGluaycpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdkaXNhYmxlZC0wMScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnZGlzYWJsZWQtMDEnLCBtYXAtZ2V0KCR0aGVtZSwgJ2Rpc2FibGVkLTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2Rpc2FibGVkLTAyJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdkaXNhYmxlZC0wMicsIG1hcC1nZXQoJHRoZW1lLCAnZGlzYWJsZWQtMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnZGlzYWJsZWQtMDMnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2Rpc2FibGVkLTAzJywgbWFwLWdldCgkdGhlbWUsICdkaXNhYmxlZC0wMycpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ2hpZ2hsaWdodCcsICRlbWl0LWRpZmZlcmVuY2UpXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdoaWdobGlnaHQnLCBtYXAtZ2V0KCR0aGVtZSwgJ2hpZ2hsaWdodCcpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdkZWNvcmF0aXZlLTAxJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnZGVjb3JhdGl2ZS0wMScsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZGVjb3JhdGl2ZS0wMScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2J1dHRvbi1zZXBhcmF0b3InLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdidXR0b24tc2VwYXJhdG9yJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdidXR0b24tc2VwYXJhdG9yJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnc2tlbGV0b24tMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3NrZWxldG9uLTAxJywgbWFwLWdldCgkdGhlbWUsICdza2VsZXRvbi0wMScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdza2VsZXRvbi0wMicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc2tlbGV0b24tMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ3NrZWxldG9uLTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnYnJhbmQtMDEnLCAkZW1pdC1kaWZmZXJlbmNlKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnYnJhbmQtMDEnLCBtYXAtZ2V0KCR0aGVtZSwgJ2JyYW5kLTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnYnJhbmQtMDInLCAkZW1pdC1kaWZmZXJlbmNlKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnYnJhbmQtMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ2JyYW5kLTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnYnJhbmQtMDMnLCAkZW1pdC1kaWZmZXJlbmNlKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnYnJhbmQtMDMnLCBtYXAtZ2V0KCR0aGVtZSwgJ2JyYW5kLTAzJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnYWN0aXZlLTAxJywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2FjdGl2ZS0wMScsIG1hcC1nZXQoJHRoZW1lLCAnYWN0aXZlLTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2hvdmVyLWZpZWxkJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdob3Zlci1maWVsZCcsIG1hcC1nZXQoJHRoZW1lLCAnaG92ZXItZmllbGQnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdkYW5nZXInLCAkZW1pdC1kaWZmZXJlbmNlKSB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2RhbmdlcicsIG1hcC1nZXQoJHRoZW1lLCAnZGFuZ2VyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2NhcHRpb24tMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2NhcHRpb24tMDEnLCBtYXAtZ2V0KCR0aGVtZSwgJ2NhcHRpb24tMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KCR0aGVtZSwgJHBhcmVudC1jYXJib24tdGhlbWUsICdsYWJlbC0wMScsICRlbWl0LWRpZmZlcmVuY2UpXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdsYWJlbC0wMScsIG1hcC1nZXQoJHRoZW1lLCAnbGFiZWwtMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaGVscGVyLXRleHQtMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdoZWxwZXItdGV4dC0wMScsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnaGVscGVyLXRleHQtMDEnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdib2R5LXNob3J0LTAxJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnYm9keS1zaG9ydC0wMScsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnYm9keS1zaG9ydC0wMScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2JvZHktbG9uZy0wMScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnYm9keS1sb25nLTAxJywgbWFwLWdldCgkdGhlbWUsICdib2R5LWxvbmctMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnYm9keS1zaG9ydC0wMicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2JvZHktc2hvcnQtMDInLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2JvZHktc2hvcnQtMDInKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdib2R5LWxvbmctMDInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2JvZHktbG9uZy0wMicsIG1hcC1nZXQoJHRoZW1lLCAnYm9keS1sb25nLTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnY29kZS0wMScsICRlbWl0LWRpZmZlcmVuY2UpIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnY29kZS0wMScsIG1hcC1nZXQoJHRoZW1lLCAnY29kZS0wMScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoJHRoZW1lLCAkcGFyZW50LWNhcmJvbi10aGVtZSwgJ2NvZGUtMDInLCAkZW1pdC1kaWZmZXJlbmNlKSB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2NvZGUtMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ2NvZGUtMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnaGVhZGluZy0wMScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnaGVhZGluZy0wMScsIG1hcC1nZXQoJHRoZW1lLCAnaGVhZGluZy0wMScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdwcm9kdWN0aXZlLWhlYWRpbmctMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdwcm9kdWN0aXZlLWhlYWRpbmctMDEnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2hlYWRpbmctMDInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2hlYWRpbmctMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ2hlYWRpbmctMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAncHJvZHVjdGl2ZS1oZWFkaW5nLTAyJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAncHJvZHVjdGl2ZS1oZWFkaW5nLTAyJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdwcm9kdWN0aXZlLWhlYWRpbmctMDInKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdwcm9kdWN0aXZlLWhlYWRpbmctMDMnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdwcm9kdWN0aXZlLWhlYWRpbmctMDMnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMycpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wNCcsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wNCcsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAncHJvZHVjdGl2ZS1oZWFkaW5nLTA0JylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAncHJvZHVjdGl2ZS1oZWFkaW5nLTA1JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAncHJvZHVjdGl2ZS1oZWFkaW5nLTA1JyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdwcm9kdWN0aXZlLWhlYWRpbmctMDUnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdwcm9kdWN0aXZlLWhlYWRpbmctMDYnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdwcm9kdWN0aXZlLWhlYWRpbmctMDYnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wNicpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wNycsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ3Byb2R1Y3RpdmUtaGVhZGluZy0wNycsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAncHJvZHVjdGl2ZS1oZWFkaW5nLTA3JylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnZXhwcmVzc2l2ZS1oZWFkaW5nLTAxJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnZXhwcmVzc2l2ZS1oZWFkaW5nLTAxJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdleHByZXNzaXZlLWhlYWRpbmctMDEnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdleHByZXNzaXZlLWhlYWRpbmctMDInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdleHByZXNzaXZlLWhlYWRpbmctMDInLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2V4cHJlc3NpdmUtaGVhZGluZy0wMicpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2V4cHJlc3NpdmUtaGVhZGluZy0wMycsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2V4cHJlc3NpdmUtaGVhZGluZy0wMycsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZXhwcmVzc2l2ZS1oZWFkaW5nLTAzJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnZXhwcmVzc2l2ZS1oZWFkaW5nLTA0JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnZXhwcmVzc2l2ZS1oZWFkaW5nLTA0JyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdleHByZXNzaXZlLWhlYWRpbmctMDQnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdleHByZXNzaXZlLWhlYWRpbmctMDUnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdleHByZXNzaXZlLWhlYWRpbmctMDUnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2V4cHJlc3NpdmUtaGVhZGluZy0wNScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2V4cHJlc3NpdmUtaGVhZGluZy0wNicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2V4cHJlc3NpdmUtaGVhZGluZy0wNicsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZXhwcmVzc2l2ZS1oZWFkaW5nLTA2JylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdleHByZXNzaXZlLXBhcmFncmFwaC0wMScsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDEnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdxdW90YXRpb24tMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3F1b3RhdGlvbi0wMScsIG1hcC1nZXQoJHRoZW1lLCAncXVvdGF0aW9uLTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3F1b3RhdGlvbi0wMicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgncXVvdGF0aW9uLTAyJywgbWFwLWdldCgkdGhlbWUsICdxdW90YXRpb24tMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnZGlzcGxheS0wMScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnZGlzcGxheS0wMScsIG1hcC1nZXQoJHRoZW1lLCAnZGlzcGxheS0wMScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdkaXNwbGF5LTAyJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdkaXNwbGF5LTAyJywgbWFwLWdldCgkdGhlbWUsICdkaXNwbGF5LTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2Rpc3BsYXktMDMnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2Rpc3BsYXktMDMnLCBtYXAtZ2V0KCR0aGVtZSwgJ2Rpc3BsYXktMDMnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnZGlzcGxheS0wNCcsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnZGlzcGxheS0wNCcsIG1hcC1nZXQoJHRoZW1lLCAnZGlzcGxheS0wNCcpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdzcGFjaW5nLTAxJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdzcGFjaW5nLTAxJywgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3NwYWNpbmctMDInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3NwYWNpbmctMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDInKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnc3BhY2luZy0wMycsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc3BhY2luZy0wMycsIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wMycpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdzcGFjaW5nLTA0JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdzcGFjaW5nLTA0JywgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTA0JykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3NwYWNpbmctMDUnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3NwYWNpbmctMDUnLCBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDUnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnc3BhY2luZy0wNicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc3BhY2luZy0wNicsIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wNicpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdzcGFjaW5nLTA3JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdzcGFjaW5nLTA3JywgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTA3JykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3NwYWNpbmctMDgnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3NwYWNpbmctMDgnLCBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMDgnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnc3BhY2luZy0wOScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc3BhY2luZy0wOScsIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0wOScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdzcGFjaW5nLTEwJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdzcGFjaW5nLTEwJywgbWFwLWdldCgkdGhlbWUsICdzcGFjaW5nLTEwJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ3NwYWNpbmctMTEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ3NwYWNpbmctMTEnLCBtYXAtZ2V0KCR0aGVtZSwgJ3NwYWNpbmctMTEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnc3BhY2luZy0xMicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnc3BhY2luZy0xMicsIG1hcC1nZXQoJHRoZW1lLCAnc3BhY2luZy0xMicpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdmbHVpZC1zcGFjaW5nLTAxJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnZmx1aWQtc3BhY2luZy0wMScsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZmx1aWQtc3BhY2luZy0wMScpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2ZsdWlkLXNwYWNpbmctMDInLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoXG4gICAgICAgICdmbHVpZC1zcGFjaW5nLTAyJyxcbiAgICAgICAgbWFwLWdldCgkdGhlbWUsICdmbHVpZC1zcGFjaW5nLTAyJylcbiAgICAgICk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnZmx1aWQtc3BhY2luZy0wMycsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eShcbiAgICAgICAgJ2ZsdWlkLXNwYWNpbmctMDMnLFxuICAgICAgICBtYXAtZ2V0KCR0aGVtZSwgJ2ZsdWlkLXNwYWNpbmctMDMnKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdmbHVpZC1zcGFjaW5nLTA0JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KFxuICAgICAgICAnZmx1aWQtc3BhY2luZy0wNCcsXG4gICAgICAgIG1hcC1nZXQoJHRoZW1lLCAnZmx1aWQtc3BhY2luZy0wNCcpXG4gICAgICApO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnbGF5b3V0LTAxJywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xheW91dC0wMScsIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnbGF5b3V0LTAyJywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xheW91dC0wMicsIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTAyJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnbGF5b3V0LTAzJywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xheW91dC0wMycsIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTAzJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnbGF5b3V0LTA0JywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xheW91dC0wNCcsIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTA0JykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnbGF5b3V0LTA1JywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xheW91dC0wNScsIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTA1JykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnbGF5b3V0LTA2JywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xheW91dC0wNicsIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTA2JykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdCgkdGhlbWUsICRwYXJlbnQtY2FyYm9uLXRoZW1lLCAnbGF5b3V0LTA3JywgJGVtaXQtZGlmZmVyZW5jZSlcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2xheW91dC0wNycsIG1hcC1nZXQoJHRoZW1lLCAnbGF5b3V0LTA3JykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2NvbnRhaW5lci0wMScsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnY29udGFpbmVyLTAxJywgbWFwLWdldCgkdGhlbWUsICdjb250YWluZXItMDEnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnY29udGFpbmVyLTAyJyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdjb250YWluZXItMDInLCBtYXAtZ2V0KCR0aGVtZSwgJ2NvbnRhaW5lci0wMicpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdjb250YWluZXItMDMnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2NvbnRhaW5lci0wMycsIG1hcC1nZXQoJHRoZW1lLCAnY29udGFpbmVyLTAzJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2NvbnRhaW5lci0wNCcsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnY29udGFpbmVyLTA0JywgbWFwLWdldCgkdGhlbWUsICdjb250YWluZXItMDQnKSk7XG4gICAgfVxuXG4gICAgQGlmIHNob3VsZC1lbWl0KFxuICAgICAgJHRoZW1lLFxuICAgICAgJHBhcmVudC1jYXJib24tdGhlbWUsXG4gICAgICAnY29udGFpbmVyLTA1JyxcbiAgICAgICRlbWl0LWRpZmZlcmVuY2VcbiAgICApXG4gICAge1xuICAgICAgQGluY2x1ZGUgY3VzdG9tLXByb3BlcnR5KCdjb250YWluZXItMDUnLCBtYXAtZ2V0KCR0aGVtZSwgJ2NvbnRhaW5lci0wNScpKTtcbiAgICB9XG5cbiAgICBAaWYgc2hvdWxkLWVtaXQoXG4gICAgICAkdGhlbWUsXG4gICAgICAkcGFyZW50LWNhcmJvbi10aGVtZSxcbiAgICAgICdpY29uLXNpemUtMDEnLFxuICAgICAgJGVtaXQtZGlmZmVyZW5jZVxuICAgIClcbiAgICB7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tcHJvcGVydHkoJ2ljb24tc2l6ZS0wMScsIG1hcC1nZXQoJHRoZW1lLCAnaWNvbi1zaXplLTAxJykpO1xuICAgIH1cblxuICAgIEBpZiBzaG91bGQtZW1pdChcbiAgICAgICR0aGVtZSxcbiAgICAgICRwYXJlbnQtY2FyYm9uLXRoZW1lLFxuICAgICAgJ2ljb24tc2l6ZS0wMicsXG4gICAgICAkZW1pdC1kaWZmZXJlbmNlXG4gICAgKVxuICAgIHtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1wcm9wZXJ0eSgnaWNvbi1zaXplLTAyJywgbWFwLWdldCgkdGhlbWUsICdpY29uLXNpemUtMDInKSk7XG4gICAgfVxuICB9XG5cbiAgQGNvbnRlbnQ7XG5cbiAgLy8gUmVzZXQgdG8gZGVmYXVsdCB0aGVtZSBhZnRlciBhcHBseSBpbiBjb250ZW50XG4gIEBpZiAkY2FyYm9uLS10aGVtZSAhPSAkcGFyZW50LWNhcmJvbi10aGVtZSB7XG4gICAgJGNhcmJvbi0tdGhlbWU6ICRwYXJlbnQtY2FyYm9uLXRoZW1lICFnbG9iYWw7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLXRoZW1lKCk7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICd2YXJzJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHknO1xuQGltcG9ydCAnY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuXG4vLy8gQm9keSBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZ2xvYmFsLWJvZHlcbkBtaXhpbiBjc3MtYm9keSB7XG4gIGJvZHkge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdjc3MtLWJvZHknKSB7XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMoJ2Nzcy0tYm9keScpID09IGZhbHNlIG9yICRjc3MtLWJvZHkgPT0gdHJ1ZSB7XG4gICAgQGluY2x1ZGUgY3NzLWJvZHk7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTgsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLyBIZWxwZXJzIGZvciBkZWZpbmluZyBjb2x1bW5zLCByb3dzLCBhbmQgY29udGFpbmVycyBhcmUgaGVhdmlseSBpbnNwaXJlZCBieSxcbi8vIGFuZCBvZnRlbiBkZXJpdmVkIGZyb20sIGJvb3RzdHJhcDpcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL3Y0LWRldi9zY3NzL21peGlucy9fZ3JpZC5zY3NzXG5cbkBpbXBvcnQgJy4uL2xheW91dC9icmVha3BvaW50JztcbkBpbXBvcnQgJ3ByZWZpeCc7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDb2x1bW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gVXNlZCB0byBpbml0aWFsaXplIHRoZSBkZWZhdWx0IHByb3BlcnRpZXMgZm9yIGEgY29sdW1uIGNsYXNzLCBtb3N0IG5vdGFibHlcbi8vLyBmb3Igc2V0dGluZyB3aWR0aCBhbmQgZGVmYXVsdCBndXR0ZXJzIHdoZW4gYSBjb2x1bW4ncyBicmVha3BvaW50IGhhcyBub3QgYmVlblxuLy8vIGhpdCB5ZXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRjYXJib24tLWdyaWQtZ3V0dGVyXSAtIFRoZSBndXR0ZXIgZm9yIHRoZSBncmlkIHN5c3RlbVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sbGFwc2VkLWd1dHRlciBbJGNhcmJvbi0tZ3JpZC1ndXR0ZXItLWNvbmRlbnNlZF0gLSBUaGUgY29uZGVuc2VkIG1vZGUgZ3V0dGVyXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0tbWFrZS1jb2wtcmVhZHkoXG4gICRndXR0ZXI6ICRjYXJib24tLWdyaWQtZ3V0dGVyLFxuICAkY29uZGVuc2VkLWd1dHRlcjogJGNhcmJvbi0tZ3JpZC1ndXR0ZXItLWNvbmRlbnNlZFxuKSB7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgLy8gRm9yIG91ciBjb25kZW5zZWQgdXNlLWNhc2UsIG91ciBndXR0ZXJzIGNvbGxhcHNlIHRvIDJweCBzb2xpZCwgMXB4IG9uIGVhY2hcbiAgLy8gc2lkZS5cbiAgLiN7JHByZWZpeH0tLXJvdy0tY29uZGVuc2VkICYsXG4gIC4jeyRwcmVmaXh9LS1ncmlkLS1jb25kZW5zZWQgJiB7XG4gICAgcGFkZGluZy1yaWdodDogKCRjb25kZW5zZWQtZ3V0dGVyIC8gMik7XG4gICAgcGFkZGluZy1sZWZ0OiAoJGNvbmRlbnNlZC1ndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIC8vIEZvciBvdXIgbmFycm93IHVzZS1jYXNlLCBvdXIgY29udGFpbmVyIGhhbmdzIDE2cHggaW50byB0aGUgZ3V0dGVyXG4gIC4jeyRwcmVmaXh9LS1yb3ctLW5hcnJvdyAmLFxuICAuI3skcHJlZml4fS0tZ3JpZC0tbmFycm93ICYge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi8vLyBEZWZpbmUgdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gZm9yIGEgZ2l2ZW4gc3BhbiBhbmQgY29sdW1uIGNvdW50LlxuLy8vIEEgd2lkdGggb2YgMCB3aWxsIGhpZGUgdGhlIGNvbHVtbiBlbnRpcmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYW4gLSBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgY292ZXJlZFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIFRoZSB0b3RhbCBudW1iZXIgb2YgY29sdW1ucyBhdmFpbGFibGVcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1tYWtlLWNvbCgkc3BhbiwgJGNvbHVtbnMpIHtcbiAgQGlmICRzcGFuID09IDAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH0gQGVsc2Uge1xuICAgIC8vIEV4cGxpY2l0bHkgaW5jbHVkZSBgZGlzcGxheTogYmxvY2tgIHRvIG92ZXJyaWRlXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNwYW4gLyAkY29sdW1ucyk7XG4gICAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gICAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gICAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gICAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzcGFuIC8gJGNvbHVtbnMpO1xuICB9XG59XG5cbi8vLyBDcmVhdGUgYSBjb2x1bW4gb2Zmc2V0IGZvciBhIGdpdmVuIHNwYW4gYW5kIGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYW4gLSBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIG9mZnNldCBzaG91bGQgY292ZXJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBUaGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgYXZhaWxhYmxlXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0tbWFrZS1jb2wtb2Zmc2V0KCRzcGFuLCAkY29sdW1ucykge1xuICAkb2Zmc2V0OiAkc3BhbiAvICRjb2x1bW5zO1xuICBAaWYgJG9mZnNldCA9PSAwIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfSBAZWxzZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoJG9mZnNldCk7XG4gIH1cbn1cblxuLy8vIE91dHB1dCB0aGUgQ1NTIHJlcXVpcmVkIGZvciBhbGwgdGhlIGNvbHVtbnMgaW4gYSBnaXZlbiBncmlkIHN5c3RlbS5cbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIFRoZSBicmVha3BvaW50cyBpbiB0aGUgZ3JpZCBzeXN0ZW1cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGNhcmJvbi0tZ3JpZC1ndXR0ZXJdIC0gVGhlIGd1dHRlciBmb3IgdGhlIGdyaWQgc3lzdGVtXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0tbWFrZS1ncmlkLWNvbHVtbnMoXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cyxcbiAgJGd1dHRlcjogJGNhcmJvbi0tZ3JpZC1ndXR0ZXJcbikge1xuICAuI3skcHJlZml4fS0tY29sIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLW1ha2UtY29sLXJlYWR5KCRndXR0ZXIpO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBjYXJib24tLWJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQpO1xuICAgICRjb2x1bW5zOiBtYXAtZ2V0KG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCksIGNvbHVtbnMpO1xuXG4gICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgIC4jeyRwcmVmaXh9LS1jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBjYXJib24tLW1ha2UtY29sLXJlYWR5KCRndXR0ZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1jb2wjeyRpbmZpeH0sXG4gICAgLiN7JHByZWZpeH0tLWNvbCN7JGluZml4fS0tYXV0byB7XG4gICAgICBAaW5jbHVkZSBjYXJib24tLW1ha2UtY29sLXJlYWR5KCRndXR0ZXIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLiN7JHByZWZpeH0tLWNvbCxcbiAgICAgIC4jeyRwcmVmaXh9LS1jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLWNvbC0tYXV0byxcbiAgICAgIC4jeyRwcmVmaXh9LS1jb2wjeyRpbmZpeH0tLWF1dG8ge1xuICAgICAgICBmbGV4OiAxIDAgMCU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLiN7JHByZWZpeH0tLWNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgY2FyYm9uLS1tYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICBAaWYgbm90KCRpbmZpeCA9PSAnJykge1xuICAgICAgICAgIC4jeyRwcmVmaXh9LS1vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgY2FyYm9uLS1tYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJvd3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBEZWZpbmUgdGhlIHByb3BlcnRpZXMgZm9yIGEgc2VsZWN0b3IgYXNzaWduZWQgdG8gYSByb3cgaW4gdGhlIGdyaWQgc3lzdGVtLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskY2FyYm9uLS1ncmlkLWd1dHRlcl0gLSBUaGUgZ3V0dGVyIGluIHRoZSBncmlkIHN5c3RlbVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbkBtaXhpbiBjYXJib24tLW1ha2Utcm93KCRndXR0ZXI6ICRjYXJib24tLWdyaWQtZ3V0dGVyKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMSAqICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLTEgKiAkZ3V0dGVyIC8gMjtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5vIGd1dHRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8vIEFkZCBgbm8tZ3V0dGVyYCBhbmQgYG5vLWd1dHRlci0te3N0YXJ0LGVuZH1gIGNsYXNzZXMgdG8gdGhlIG91dHB1dCBDU1MuIFRoZXNlXG4vLy8gY2xhc3NlcyBhcmUgdXNlZnVsIGZvciBkcm9wcGluZyB0aGUgZ3V0dGVyIGluIGZsdWlkIHNpdHVhdGlvbnMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0tbm8tZ3V0dGVyIHtcbiAgLiN7JHByZWZpeH0tLW5vLWd1dHRlcixcbiAgLiN7JHByZWZpeH0tLXJvdy4jeyRwcmVmaXh9LS1uby1ndXR0ZXIgW2NsYXNzKj0nI3skcHJlZml4fS0tY29sJ10ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5vLWd1dHRlci0tc3RhcnQsXG4gIC4jeyRwcmVmaXh9LS1yb3cuI3skcHJlZml4fS0tbm8tZ3V0dGVyLS1zdGFydCBbY2xhc3MqPScjeyRwcmVmaXh9LS1jb2wnXSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5vLWd1dHRlci0tZW5kLFxuICAuI3skcHJlZml4fS0tcm93LiN7JHByZWZpeH0tLW5vLWd1dHRlci0tZW5kIFtjbGFzcyo9JyN7JHByZWZpeH0tLWNvbCddIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLy8gRGVwcmVjYXRlZCDimKDvuI9cbiAgLiN7JHByZWZpeH0tLW5vLWd1dHRlci0tbGVmdCxcbiAgLiN7JHByZWZpeH0tLXJvdy4jeyRwcmVmaXh9LS1uby1ndXR0ZXItLWxlZnQgW2NsYXNzKj0nI3skcHJlZml4fS0tY29sJ10ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uby1ndXR0ZXItLXJpZ2h0LFxuICAuI3skcHJlZml4fS0tcm93LiN7JHByZWZpeH0tLW5vLWd1dHRlci0tcmlnaHQgW2NsYXNzKj0nI3skcHJlZml4fS0tY29sJ10ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhhbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBBZGQgYGhhbmctLXN0YXJ0YCBhbmQgYGhhbmctLWVuZGAgY2xhc3NlcyBmb3IgYSBnaXZlbiBndXR0ZXIuIFRoZXNlIGNsYXNzZXMgYXJlXG4vLy8gdXNlZCBhbG9uZ3NpZGUgYG5vLWd1dHRlci0tc3RhcnRgIGFuZCBgbm8tZ3V0dGVyLS1lbmRgIHRvIFwiaGFuZ1wiIHR5cGUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRjYXJib24tLWdyaWQtZ3V0dGVyXSAtIFRoZSBndXR0ZXIgaW4gdGhlIGdyaWQgc3lzdGVtXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0taGFuZygkZ3V0dGVyOiAkY2FyYm9uLS1ncmlkLWd1dHRlcikge1xuICAuI3skcHJlZml4fS0taGFuZy0tc3RhcnQge1xuICAgIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oYW5nLS1lbmQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIH1cblxuICAvLyBEZXByZWNhdGVkIOKYoO+4j1xuICAuI3skcHJlZml4fS0taGFuZy0tbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhhbmctLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBc3BlY3QgcmF0aW9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBUaGUgYXNwZWN0IHJhdGlvcyB0aGF0IGFyZSB1c2VkIHRvIGdlbmVyYXRlIGNvcnJlc3BvbmRpbmcgYXNwZWN0IHJhdGlvXG4vLy8gY2xhc3NlcyBpbiBjb2RlXG4vLy8gQHR5cGUgTGlzdFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuJGNhcmJvbi0tYXNwZWN0LXJhdGlvczogKFxuICAoMTYsIDkpLFxuICAoOSwgMTYpLFxuICAoMiwgMSksXG4gICgxLCAyKSxcbiAgKDQsIDMpLFxuICAoMywgNCksXG4gICgxLCAxKVxuKTtcblxuLy8vIEdlbmVyYXRlcyB0aGUgQ1NTIGNsYXNzbmFtZSB1dGlsaXRpZXMgZm9yIHRoZSBhc3BlY3QgcmF0aW9zXG4vLy9cbi8vLyBDU1MgVHJpY2tzIGFydGljbGUgb24gYXNwZWN0IHJhdGlvcyBhbmQgYWxsIHRoZSBkaWZmZXJlbnQgd2F5cyBpdCBjYW4gYmUgZG9uZS5cbi8vLyBodHRwczovL2Nzcy10cmlja3MuY29tL2FzcGVjdC1yYXRpby1ib3hlcy8jYXJ0aWNsZS1oZWFkZXItaWQtNlxuLy8vXG4vLy8gVGhhdCBhcnRpY2xlIHJlZmVyZW5jZXMgYW4gZWFybGllciBhcnRpY2xlIG9uIHRoZSB0b3BpYy5cbi8vLyBodHRwczovL2tlaXRoamdyYW50LmNvbS9wb3N0cy8yMDE3LzAzL2FzcGVjdC1yYXRpb3MvXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIHdpZHRoIGZyb20gYW4gYXNwZWN0IHJhdGlvXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgaGVpZ2h0IGZyb20gYW4gYXNwZWN0IHJhdGlvXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0tYXNwZWN0LXJhdGlvKCRhc3BlY3QtcmF0aW9zOiAkY2FyYm9uLS1hc3BlY3QtcmF0aW9zKSB7XG4gIC4jeyRwcmVmaXh9LS1hc3BlY3QtcmF0aW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hc3BlY3QtcmF0aW86OmJlZm9yZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYXNwZWN0LXJhdGlvOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICBAZWFjaCAkYXNwZWN0LXJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgICAkd2lkdGg6IG50aCgkYXNwZWN0LXJhdGlvLCAxKTtcbiAgICAkaGVpZ2h0OiBudGgoJGFzcGVjdC1yYXRpbywgMik7XG5cbiAgICAuI3skcHJlZml4fS0tYXNwZWN0LXJhdGlvLS0jeyR3aWR0aH14I3skaGVpZ2h0fTo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRoZWlnaHQgLyAkd2lkdGgpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGxlYXZpbmcgaGVyZSBmb3IgbGVnYWN5IHN1cHBvcnRcbiAgLiN7JHByZWZpeH0tLWFzcGVjdC1yYXRpby0tb2JqZWN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHcmlkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gQ3JlYXRlIHRoZSBjb250YWluZXIgZm9yIGEgZ3JpZC4gV2lsbCBjYXVzZSBmdWxsLWJsZWVkIGZvciB0aGUgZ3JpZCB1bmxlc3Ncbi8vLyBtYXgtd2lkdGggcHJvcGVydGllcyBhcmUgYWRkZWQgd2l0aCBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2Bcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1tYWtlLWNvbnRhaW5lcigkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcblxuICBAaW5jbHVkZSBjYXJib24tLXNldC1sYXJnZXN0LWJyZWFrcG9pbnQoKTtcblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50cyB7XG4gICAgJHByZXYtYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsIGNhcmJvbi0tYnJlYWtwb2ludC1wcmV2KCRuYW1lKSk7XG4gICAgJG1hcmdpbjogbWFwLWdldCgkdmFsdWUsIG1hcmdpbik7XG5cbiAgICBAaWYgJHByZXYtYnJlYWtwb2ludCB7XG4gICAgICAkcHJldi1tYXJnaW46IG1hcC1nZXQoJHByZXYtYnJlYWtwb2ludCwgbWFyZ2luKTtcbiAgICAgIEBpZiAkcHJldi1tYXJnaW4gIT0gJG1hcmdpbiB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICN7KCRjYXJib24tLWdyaWQtZ3V0dGVyIC8gMikgKyAkbWFyZ2lufTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICN7KCRjYXJib24tLWdyaWQtZ3V0dGVyIC8gMikgKyAkbWFyZ2lufTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICN7KCRjYXJib24tLWdyaWQtZ3V0dGVyIC8gMikgKyAkbWFyZ2lufTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAjeygkY2FyYm9uLS1ncmlkLWd1dHRlciAvIDIpICsgJG1hcmdpbn07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZXQgdGhlIGxhc3QgYnJlYWtwb2ludCB3aWR0aCBhbmQgc2V0IG1heC13aWR0aCB0byBpdHMgdmFsdWVcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgQGNhcmJvbi9ncmlkXG5AbWl4aW4gY2FyYm9uLS1zZXQtbGFyZ2VzdC1icmVha3BvaW50KCRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cykge1xuICAkbGFyZ2VzdC1icmVha3BvaW50OiBsYXN0LW1hcC1pdGVtKCRicmVha3BvaW50cyk7XG5cbiAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRsYXJnZXN0LWJyZWFrcG9pbnQsICd3aWR0aCcpO1xufVxuXG4vLy8gQWRkIGluIHRoZSBtYXgtd2lkdGhzIGZvciBlYWNoIGJyZWFrcG9pbnQgdG8gdGhlIGNvbnRhaW5lclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNdIC0gQSBtYXAgb2YgYnJlYWtwb2ludHMgd2hlcmUgdGhlIGtleSBpcyB0aGUgbmFtZVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBAY2FyYm9uL2dyaWRcbkBtaXhpbiBjYXJib24tLW1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c1xuKSB7XG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgIG1heC13aWR0aDogbWFwLWdldCgkdmFsdWUsIHdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBDU1MgZm9yIGEgZ3JpZCBmb3IgdGhlIGdpdmVuIGJyZWFrcG9pbnRzIGFuZCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBUaGUgZGVmYXVsdCBicmVha3BvaW50c1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3JpZC1ndXR0ZXIgWyRjYXJib24tLWdyaWQtZ3V0dGVyXSAtIFRoZSBkZWZhdWx0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbmRlbnNlZC1ndXR0ZXIgWyRjYXJib24tLWdyaWQtZ3V0dGVyLS1jb25kZW5zZWRdIC0gVGhlIGNvbmRlbnNlZCBtb2RlIGd1dHRlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vZ3JpZFxuQG1peGluIGNhcmJvbi0tZ3JpZChcbiAgJGJyZWFrcG9pbnRzOiAkY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzLFxuICAkZ3JpZC1ndXR0ZXI6ICRjYXJib24tLWdyaWQtZ3V0dGVyLFxuICAkY29uZGVuc2VkLWd1dHRlcjogJGNhcmJvbi0tZ3JpZC1ndXR0ZXItLWNvbmRlbnNlZFxuKSB7XG4gIC4jeyRwcmVmaXh9LS1ncmlkIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLW1ha2UtY29udGFpbmVyKCRicmVha3BvaW50cyk7XG4gIH1cblxuICBAaW5jbHVkZSBjYXJib24tLWxhcmdlc3QtYnJlYWtwb2ludCgkYnJlYWtwb2ludHMpIHtcbiAgICAuI3skcHJlZml4fS0tZ3JpZC0tZnVsbC13aWR0aCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJvdyB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1tYWtlLXJvdygpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJvdy1wYWRkaW5nIFtjbGFzcyo9JyN7JHByZWZpeH0tLWNvbCddLFxuICAuI3skcHJlZml4fS0tY29sLXBhZGRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAkZ3JpZC1ndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ3JpZC1ndXR0ZXIgLyAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWdyaWQtLWNvbmRlbnNlZCBbY2xhc3MqPScjeyRwcmVmaXh9LS1jb2wnXSB7XG4gICAgcGFkZGluZy10b3A6ICRjb25kZW5zZWQtZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGNvbmRlbnNlZC1ndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGluY2x1ZGUgY2FyYm9uLS1tYWtlLWdyaWQtY29sdW1ucygkYnJlYWtwb2ludHMsICRncmlkLWd1dHRlcik7XG4gIEBpbmNsdWRlIGNhcmJvbi0tbm8tZ3V0dGVyKCk7XG4gIEBpbmNsdWRlIGNhcmJvbi0taGFuZygkZ3JpZC1ndXR0ZXIpO1xuICBAaW5jbHVkZSBjYXJib24tLWFzcGVjdC1yYXRpbygpO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL3Y0LWRldi9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2Nzc1xuQGltcG9ydCAnY29udmVydCc7XG5AaW1wb3J0ICd1dGlsaXRpZXMnO1xuXG4vLy8gQ2FyYm9uIGd1dHRlciBzaXplIGluIHJlbVxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1ncmlkLWd1dHRlcjogY2FyYm9uLS1yZW0oMzJweCk7XG5cbi8vLyBDYXJib24gY29uZGVuc2VkIGd1dHRlciBzaXplIGluIHJlbVxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1ncmlkLWd1dHRlci0tY29uZGVuc2VkOiBjYXJib24tLXJlbSgxcHgpO1xuXG4vLyBJbml0aWFsIG1hcCBvZiBvdXIgYnJlYWtwb2ludHMgYW5kIHRoZWlyIHZhbHVlc1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHNtOiAoXG4gICAgY29sdW1uczogNCxcbiAgICBtYXJnaW46IDAsXG4gICAgd2lkdGg6IGNhcmJvbi0tcmVtKDMyMHB4KSxcbiAgKSxcbiAgbWQ6IChcbiAgICBjb2x1bW5zOiA4LFxuICAgIG1hcmdpbjogY2FyYm9uLS1yZW0oMTZweCksXG4gICAgd2lkdGg6IGNhcmJvbi0tcmVtKDY3MnB4KSxcbiAgKSxcbiAgbGc6IChcbiAgICBjb2x1bW5zOiAxNixcbiAgICBtYXJnaW46IGNhcmJvbi0tcmVtKDE2cHgpLFxuICAgIHdpZHRoOiBjYXJib24tLXJlbSgxMDU2cHgpLFxuICApLFxuICB4bGc6IChcbiAgICBjb2x1bW5zOiAxNixcbiAgICBtYXJnaW46IGNhcmJvbi0tcmVtKDE2cHgpLFxuICAgIHdpZHRoOiBjYXJib24tLXJlbSgxMzEycHgpLFxuICApLFxuICBtYXg6IChcbiAgICBjb2x1bW5zOiAxNixcbiAgICBtYXJnaW46IGNhcmJvbi0tcmVtKDI0cHgpLFxuICAgIHdpZHRoOiBjYXJib24tLXJlbSgxNTg0cHgpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEdldCB0aGUgdmFsdWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBicmVrYXBvaW50XG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBBIG1hcCBvZiBicmVha3BvaW50cyB3aGVyZSB0aGUga2V5IGlzIHRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IGFuZCB0aGUgdmFsdWUgaXMgdGhlIHZhbHVlcyBmb3IgdGhlIGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge0xpc3R9ICRicmVha3BvaW50LW5hbWVzIFttYXAta2V5cygkYnJlYWtwb2ludHMpXSAtIEEgbGlzdCBvZiBuYW1lcyBmcm9tIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXBcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWJyZWFrcG9pbnQtbmV4dChcbiAgJG5hbWUsXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cyxcbiAgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cylcbikge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmICRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSB7XG4gICAgQHJldHVybiBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSk7XG4gIH1cbiAgQHJldHVybiBudWxsO1xufVxuXG4vLy8gR2V0IHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGZpcnN0IGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgYnJla2Fwb2ludFxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNdIC0gQSBtYXAgb2YgYnJlYWtwb2ludHMgd2hlcmUgdGhlIGtleSBpcyB0aGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBhbmQgdGhlIHZhbHVlIGlzIHRoZSB2YWx1ZXMgZm9yIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtMaXN0fSAkYnJlYWtwb2ludC1uYW1lcyBbbWFwLWtleXMoJGJyZWFrcG9pbnRzKV0gLSBBIGxpc3Qgb2YgbmFtZXMgZnJvbSB0aGUgYCRicmVha3BvaW50c2AgbWFwXG4vLy8gQHJldHVybiB7U3RyaW5nfVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AZnVuY3Rpb24gY2FyYm9uLS1icmVha3BvaW50LXByZXYoXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMsXG4gICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpXG4pIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiAkbiAhPSBudWxsIGFuZCAkbiA+IDEge1xuICAgIEByZXR1cm4gbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiAtIDEpO1xuICB9XG4gIEByZXR1cm4gbnVsbDtcbn1cblxuLy8vIENoZWNrIHRvIHNlZSBpZiB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBuYW1lXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWthcG9pbnRcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgYW5kIHRoZSB2YWx1ZSBpcyB0aGUgdmFsdWVzIGZvciB0aGUgYnJlYWtwb2ludFxuLy8vIEByZXR1cm4ge0Jvb2x9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWlzLXNtYWxsZXN0LWJyZWFrcG9pbnQoXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICBAcmV0dXJuIGluZGV4KG1hcC1rZXlzKCRicmVha3BvaW50cyksICRuYW1lKSA9PSAxO1xufVxuXG4vLy8gUmV0dXJucyB0aGUgbGFyZ2VzdCBicmVha3BvaW50IG5hbWVcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWxhcmdlc3QtYnJlYWtwb2ludC1uYW1lKFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICAkdG90YWwtYnJlYWtwb2ludHM6IGxlbmd0aCgkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGNhcmJvbi0ta2V5LWJ5LWluZGV4KCRicmVha3BvaW50cywgJHRvdGFsLWJyZWFrcG9pbnRzKTtcbn1cblxuLy8vIEdldCB0aGUgaW5maXggZm9yIGEgZ2l2ZW4gYnJlYWtwb2ludCBpbiBhIGxpc3Qgb2YgYnJlYWtwb2ludHMuIFVzZXNmdWwgZm9yIGdlbmVyYXRlIHRoZSBzaXplIHBhcnQgaW4gYSBzZWxlY3RvciwgZm9yIGV4YW1wbGU6IGAucHJlZml4LS1jb2wtc20tMmAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbi8vLyBAcmV0dXJuIHtTdHJpbmd9XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWJyZWFrcG9pbnQtaW5maXgoJG5hbWUpIHtcbiAgQHJldHVybiAnLSN7JG5hbWV9Jztcbn1cblxuLy8vIEdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZnJvbSB0aGUgd2lkdGggb2YgdGhlIGdpdmVuIGJyZWFrcG9pbnQgdG8gaW5maW5pdHlcbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJG5hbWVcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAY29udGVudFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AbWl4aW4gY2FyYm9uLS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdudW1iZXInIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hbWUpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgJGJyZWFrcG9pbnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgJHdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50LCB3aWR0aCk7XG4gICAgQGlmIGNhcmJvbi0taXMtc21hbGxlc3QtYnJlYWtwb2ludCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGEgYnJlYWtwb2ludCB3aXRoIG5hbWUgYCN7JG5hbWV9YC4gRXhwZWN0ZWQgb25lIG9mOiAoI3ttYXAta2V5cygkYnJlYWtwb2ludHMpfSknO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgZ2l2ZW4gc3R5bGVzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICRuYW1lXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBBIG1hcCBvZiBicmVha3BvaW50cyB3aGVyZSB0aGUga2V5IGlzIHRoZSBuYW1lXG4vLy8gQGNvbnRlbnRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuQG1peGluIGNhcmJvbi0tYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdudW1iZXInIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG5hbWUpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgLy8gV2UgYm9ycm93IHRoaXMgbG9naWMgZnJvbSBib290c3RyYXAgZm9yIHNwZWNpZnlpbmcgdGhlIHZhbHVlIG9mIHRoZVxuICAgIC8vIG1heC13aWR0aC4gVGhlIG1heGltdW0gd2lkdGggaXMgY2FsY3VsYXRlZCBieSBmaW5kaW5nIHRoZSBicmVha3BvaW50IGFuZFxuICAgIC8vIHN1YnRyYWN0aW5nIC4wMiBmcm9tIGl0cyB2YWx1ZS4gVGhpcyB2YWx1ZSBpcyB1c2VkIGluc3RlYWQgb2YgLjAxIHRvXG4gICAgLy8gYXZvaWQgcm91bmRpbmcgaXNzdWVzIGluIFNhZmFyaVxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL2M1YjE5MTlkZWFmNTM5M2ZjY2E5ZTliOWQ3Y2U5YzMzODE2MGQ5OWQvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MjTDM0LUw0NlxuICAgICRicmVha3BvaW50OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICR3aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludCwgd2lkdGgpIC0gMC4wMjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciAnVW5hYmxlIHRvIGZpbmQgYSBicmVha3BvaW50IHdpdGggbmFtZSBgI3skbmFtZX1gLiBFeHBlY3RlZCBvbmUgb2Y6ICgje21hcC1rZXlzKCRicmVha3BvaW50cyl9KSc7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIHRoZSByYW5nZSBiZXR3ZWVuIHRoZSBsb3dlciBhbmQgdXBwZXIgYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJGxvd2VyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICR1cHBlclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNdIC0gQSBtYXAgb2YgYnJlYWtwb2ludHMgd2hlcmUgdGhlIGtleSBpcyB0aGUgbmFtZVxuLy8vIEBjb250ZW50XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBtaXhpbiBjYXJib24tLWJyZWFrcG9pbnQtYmV0d2VlbihcbiAgJGxvd2VyLFxuICAkdXBwZXIsXG4gICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c1xuKSB7XG4gICRpcy1udW1iZXItbG93ZXI6IHR5cGUtb2YoJGxvd2VyKSA9PSAnbnVtYmVyJztcbiAgJGlzLW51bWJlci11cHBlcjogdHlwZS1vZigkdXBwZXIpID09ICdudW1iZXInO1xuICAkbWluOiBpZigkaXMtbnVtYmVyLWxvd2VyLCAkbG93ZXIsIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbG93ZXIpKTtcbiAgJG1heDogaWYoJGlzLW51bWJlci11cHBlciwgJHVwcGVyLCBtYXAtZ2V0KCRicmVha3BvaW50cywgJHVwcGVyKSk7XG5cbiAgQGlmICRtaW4gYW5kICRtYXgge1xuICAgICRtaW4td2lkdGg6IGlmKG5vdCAkaXMtbnVtYmVyLWxvd2VyIGFuZCAkbWluLCBtYXAtZ2V0KCRtaW4sIHdpZHRoKSwgJG1pbik7XG4gICAgJG1heC13aWR0aDogaWYobm90ICRpcy1udW1iZXItdXBwZXIgYW5kICRtYXgsIG1hcC1nZXQoJG1heCwgd2lkdGgpLCAkbWF4KTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbi13aWR0aCkgYW5kIChtYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluICE9IG51bGwgYW5kICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50LXVwKCRsb3dlcikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQtZG93bigkdXBwZXIpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yICdVbmFibGUgdG8gZmluZCBhIGJyZWFrcG9pbnQgdG8gc2F0aXNmeTogKCN7JGxvd2VyfSwjeyR1cHBlcn0pLiBFeHBlY3RlZCBib3RoIHRvIGJlIG9uZSBvZiAoI3ttYXAta2V5cygkYnJlYWtwb2ludHMpfSkuJztcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnRcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzIFskY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXSAtIEEgbWFwIG9mIGJyZWFrcG9pbnRzIHdoZXJlIHRoZSBrZXkgaXMgdGhlIG5hbWVcbi8vLyBAY29udGVudFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG5AbWl4aW4gY2FyYm9uLS1sYXJnZXN0LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnRzOiAkY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChjYXJib24tLWxhcmdlc3QtYnJlYWtwb2ludC1uYW1lKCkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgYSBtZWRpYSBxdWVyeSBmb3IgYSBnaXZlbiBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICRuYW1lXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBBIG1hcCBvZiBicmVha3BvaW50cyB3aGVyZSB0aGUga2V5IGlzIHRoZSBuYW1lXG4vLy8gQGNvbnRlbnRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuQG1peGluIGNhcmJvbi0tYnJlYWtwb2ludCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1oZWxwZXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90b29sdGlwJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJ21peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbi8vLyBCdXR0b24gc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGJ1dHRvblxuQG1peGluIGJ1dHRvbiB7XG4gIC4jeyRwcmVmaXh9LS1idG4ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuICB9XG5cbiAgLy8gUmVzZXQgaW50cmlzaWMgcGFkZGluZyBpbiBGaXJlZm94IChzZWUgIzczMSlcbiAgLiN7JHByZWZpeH0tLWJ0bjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICAkaW50ZXJhY3RpdmUtMDEsXG4gICAgICB0cmFuc3BhcmVudCxcbiAgICAgICR0ZXh0LTA0LFxuICAgICAgJGhvdmVyLXByaW1hcnksXG4gICAgICBjdXJyZW50Q29sb3IsXG4gICAgICAkYWN0aXZlLXByaW1hcnlcbiAgICApO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tc2Vjb25kYXJ5IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICAkaW50ZXJhY3RpdmUtMDIsXG4gICAgICB0cmFuc3BhcmVudCxcbiAgICAgICR0ZXh0LTA0LFxuICAgICAgJGhvdmVyLXNlY29uZGFyeSxcbiAgICAgIGN1cnJlbnRDb2xvcixcbiAgICAgICRhY3RpdmUtc2Vjb25kYXJ5XG4gICAgKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tdGVydGlhcnkge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi10aGVtZShcbiAgICAgIHRyYW5zcGFyZW50LFxuICAgICAgJGludGVyYWN0aXZlLTAzLFxuICAgICAgJGludGVyYWN0aXZlLTAzLFxuICAgICAgJGhvdmVyLXRlcnRpYXJ5LFxuICAgICAgY3VycmVudENvbG9yLFxuICAgICAgJGFjdGl2ZS10ZXJ0aWFyeVxuICAgICk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnRlcmFjdGl2ZS0wMztcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLXRlcnRpYXJ5O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLFxuICAgICY6aG92ZXI6ZGlzYWJsZWQsXG4gICAgJjpmb2N1czpkaXNhYmxlZCxcbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZGlzYWJsZWQsXG4gICAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkOmhvdmVyLFxuICAgICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZDpmb2N1cyB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkLTAzO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLWdob3N0IHtcbiAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICB0cmFuc3BhcmVudCxcbiAgICAgIHRyYW5zcGFyZW50LFxuICAgICAgJGxpbmstMDEsXG4gICAgICAkaG92ZXItdWksXG4gICAgICBjdXJyZW50Q29sb3IsXG4gICAgICAkYWN0aXZlLXVpXG4gICAgKTtcblxuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZy1naG9zdDtcblxuICAgIC4jeyRwcmVmaXh9LS1idG5fX2ljb24ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRob3Zlci1wcmltYXJ5LXRleHQ7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS11aTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLFxuICAgICY6aG92ZXI6ZGlzYWJsZWQsXG4gICAgJjpmb2N1czpkaXNhYmxlZCxcbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZGlzYWJsZWQsXG4gICAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkOmhvdmVyLFxuICAgICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZDpmb2N1cyB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkLTAzO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tc20ge1xuICAgICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nLWdob3N0LXNtO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tYnRuLS1maWVsZCB7XG4gICAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmctZ2hvc3QtZmllbGQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seS4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS10cmlnZ2VyKCdpY29uJywgJ2JvdHRvbScpO1xuXG4gICAgc3ZnLFxuICAgICY6aG92ZXIgc3ZnLFxuICAgICY6Zm9jdXMgc3ZnIHtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZGlzYWJsZWQuI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeTo6YmVmb3JlLFxuICAgICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZC4jeyRwcmVmaXh9LS10b29sdGlwLS1hMTF5OjphZnRlcixcbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0IHtcbiAgICAgIG1hcmdpbjogLTFweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Q6Zm9jdXMgc3ZnLFxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Q6aG92ZXIgc3ZnIHtcbiAgICBmaWxsOiAkaWNvbi0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4uI3skcHJlZml4fS0tYnRuLS1pY29uLW9ubHkuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlcjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9jdXM7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lLW9mZnNldDogLTNweDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXI6YWN0aXZlOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4uI3skcHJlZml4fS0tYnRuLS1pY29uLW9ubHkuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlcjpmb2N1c1xuICAgIHN2ZyB7XG4gICAgb3V0bGluZS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXJbZGlzYWJsZWRdOmhvdmVyLFxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXJbZGlzYWJsZWRdOmZvY3VzLFxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXJbZGlzYWJsZWRdOmFjdGl2ZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1pY29uLW9ubHktLXRvcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tdHJpZ2dlcignaWNvbicsICd0b3AnKTtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAndG9wJywgJ2NlbnRlcicpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LS1ib3R0b20ge1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICdib3R0b20nLCAnY2VudGVyJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1pY29uLW9ubHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgxNXB4KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxNXB4KTtcblxuICAgIC4jeyRwcmVmaXh9LS1idG5fX2ljb24ge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3QgLiN7JHByZWZpeH0tLWJ0bl9faWNvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0biBwYXRoW2RhdGEtaWNvbi1wYXRoPSdpbm5lci1wYXRoJ10ge1xuICAgIGZpbGw6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3RcbiAgICAuI3skcHJlZml4fS0tYnRuX19pY29uLFxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Q6aG92ZXJcbiAgICAuI3skcHJlZml4fS0tYnRuX19pY29uIHtcbiAgICBmaWxsOiAkaWNvbi0wMTtcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBwYXRoIHtcbiAgICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1naG9zdC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seVxuICAgIC4jeyRwcmVmaXh9LS1idG5fX2ljb25cbiAgICBwYXRoLFxuICAuI3skcHJlZml4fS0tYnRuLS1naG9zdC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seSAuI3skcHJlZml4fS0tYnRuX19pY29uIHtcbiAgICBmaWxsOiAkaWNvbi0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLWdob3N0LiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5W2Rpc2FibGVkXVxuICAgIC4jeyRwcmVmaXh9LS1idG5fX2ljb25cbiAgICBwYXRoLFxuICAuI3skcHJlZml4fS0tYnRuLS1naG9zdC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seVtkaXNhYmxlZF1cbiAgICAuI3skcHJlZml4fS0tYnRuX19pY29uLFxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3RbZGlzYWJsZWRdOmhvdmVyXG4gICAgLiN7JHByZWZpeH0tLWJ0bl9faWNvbiB7XG4gICAgZmlsbDogJGRpc2FibGVkLTAzO1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgLy8gYEdyYXlUZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBwYXRoIHtcbiAgICAgICAgZmlsbDogR3JheVRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3QuI3skcHJlZml4fS0tYnRuLS1pY29uLW9ubHlbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tZmllbGQuI3skcHJlZml4fS0tYnRuLS1pY29uLW9ubHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgxMXB4KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxMXB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLXNtLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oN3B4KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSg3cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tZGFuZ2VyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICAkZGFuZ2VyLTAxLFxuICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICAkdGV4dC0wNCxcbiAgICAgICRob3Zlci1kYW5nZXIsXG4gICAgICBjdXJyZW50Q29sb3IsXG4gICAgICAkYWN0aXZlLWRhbmdlclxuICAgICk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wNDtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBkZXByZWNhdGUgc2luZ2xlIGRhc2ggdGVydGlhcnlcbiAgICAmLXRlcnRpYXJ5LFxuICAgICYtLXRlcnRpYXJ5IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi10aGVtZShcbiAgICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICAgICRkYW5nZXItMDIsXG4gICAgICAgICRkYW5nZXItMDIsXG4gICAgICAgICRob3Zlci1kYW5nZXIsXG4gICAgICAgIGN1cnJlbnRDb2xvcixcbiAgICAgICAgJGFjdGl2ZS1kYW5nZXJcbiAgICAgICk7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWRhbmdlcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC0wNDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhbmdlci0wMTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1kYW5nZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVE9ETzogZGVwcmVjYXRlIHNpbmdsZSBkYXNoIGdob3N0XG4gICAgJi1naG9zdCxcbiAgICAmLS1naG9zdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdGhlbWUoXG4gICAgICAgIHRyYW5zcGFyZW50LFxuICAgICAgICB0cmFuc3BhcmVudCxcbiAgICAgICAgJGRhbmdlci0wMixcbiAgICAgICAgJGhvdmVyLWRhbmdlcixcbiAgICAgICAgY3VycmVudENvbG9yLFxuICAgICAgICAkYWN0aXZlLWRhbmdlclxuICAgICAgKTtcblxuICAgICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nLWdob3N0O1xuXG4gICAgICAuI3skcHJlZml4fS0tYnRuX19pY29uIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC0wNDtcbiAgICAgIH1cblxuICAgICAgJjpkaXNhYmxlZCxcbiAgICAgICY6aG92ZXI6ZGlzYWJsZWQsXG4gICAgICAmOmZvY3VzOmRpc2FibGVkLFxuICAgICAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkLFxuICAgICAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkOmhvdmVyLFxuICAgICAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRkaXNhYmxlZDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuI3skcHJlZml4fS0tYnRuLS1zbSB7XG4gICAgICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZy1naG9zdC1zbTtcbiAgICAgIH1cblxuICAgICAgJi4jeyRwcmVmaXh9LS1idG4tLWZpZWxkIHtcbiAgICAgICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nLWdob3N0LWZpZWxkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLXNtIHtcbiAgICBtaW4taGVpZ2h0OiByZW0oMzJweCk7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nLXNtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0teGw6bm90KC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seSkge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1wYWRkaW5nLWxhcmdlO1xuXG4gICAgbWluLWhlaWdodDogcmVtKDgwcHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tbGc6bm90KC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seSkge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1wYWRkaW5nLWxhcmdlO1xuXG4gICAgbWluLWhlaWdodDogcmVtKDY0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tZmllbGQge1xuICAgIG1pbi1oZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmctZmllbGQ7XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcblxuICAgIHdpZHRoOiByZW0oMTUwcHgpO1xuICB9XG5cbiAgLy8gYnV0dG9uIHNldCBzdHlsZXNcbiAgLiN7JHByZWZpeH0tLWJ0bi1zZXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLXNldC0tc3RhY2tlZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tc2V0IC4jeyRwcmVmaXh9LS1idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vIDE5NnB4IGZyb20gZGVzaWduIGtpdFxuICAgIG1heC13aWR0aDogcmVtKDE5NnB4KTtcblxuICAgICY6bm90KDpmb2N1cykge1xuICAgICAgYm94LXNoYWRvdzogcmVtKC0xcHgpIDAgMCAwICRidXR0b24tc2VwYXJhdG9yO1xuICAgIH1cblxuICAgICY6Zmlyc3Qtb2YtdHlwZTpub3QoOmZvY3VzKSB7XG4gICAgICBib3gtc2hhZG93OiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tc2V0IC4jeyRwcmVmaXh9LS1idG46Zm9jdXMgKyAuI3skcHJlZml4fS0tYnRuIHtcbiAgICBib3gtc2hhZG93OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi1zZXQtLXN0YWNrZWQgLiN7JHByZWZpeH0tLWJ0bjpub3QoOmZvY3VzKSB7XG4gICAgYm94LXNoYWRvdzogMCByZW0oLTFweCkgMCAwICRidXR0b24tc2VwYXJhdG9yO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi1zZXQtLXN0YWNrZWQgLiN7JHByZWZpeH0tLWJ0bjpmaXJzdC1vZi10eXBlOm5vdCg6Zm9jdXMpIHtcbiAgICBib3gtc2hhZG93OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi1zZXQgLiN7JHByZWZpeH0tLWJ0bi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkIHtcbiAgICBib3gtc2hhZG93OiByZW0oLTFweCkgMCAwIDAgJGRpc2FibGVkLTAzO1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi1zZXQtLXN0YWNrZWQgLiN7JHByZWZpeH0tLWJ0bi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkIHtcbiAgICBib3gtc2hhZG93OiAwIHJlbSgtMXB4KSAwIDAgJGRpc2FibGVkLTAzO1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2J1dHRvbicpIHtcbiAgQGluY2x1ZGUgYnV0dG9uO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcblxuLy8vIEJ1dHRvbiBiYXNlIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBidXR0b25cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIHJlc2V0O1xuICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWF4LXdpZHRoOiByZW0oMzIwcHgpO1xuICBtaW4taGVpZ2h0OiAkYnV0dG9uLWhlaWdodDtcbiAgLy8gRml4IHRvIHJlbW92ZSBhZGRlZCBtYXJnaW5zIG9uIGJ1dHRvbnMgaW4gc2FmYXJpIChzZWUgIzUxNTUpXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tYm9yZGVyLXJhZGl1cztcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpLFxuICAgIGJveC1zaGFkb3cgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSksXG4gICAgYm9yZGVyLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpLFxuICAgIG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG5cbiAgJjpkaXNhYmxlZCxcbiAgJjpob3ZlcjpkaXNhYmxlZCxcbiAgJjpmb2N1czpkaXNhYmxlZCxcbiAgJi4jeyRwcmVmaXh9LS1idG4tLWRpc2FibGVkLFxuICAmLiN7JHByZWZpeH0tLWJ0bi0tZGlzYWJsZWQ6aG92ZXIsXG4gICYuI3skcHJlZml4fS0tYnRuLS1kaXNhYmxlZDpmb2N1cyB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMztcbiAgICBiYWNrZ3JvdW5kOiAkZGlzYWJsZWQtMDI7XG4gICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bl9faWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiByZW0oMTZweCk7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHJlbSgxNnB4KTtcbiAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgfVxufVxuXG4vLy8gQnV0dG9uIHZhcmlhbnQgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGJ1dHRvblxuQG1peGluIGJ1dHRvbi10aGVtZShcbiAgJGJnLWNvbG9yLFxuICAkYm9yZGVyLWNvbG9yLFxuICAkZm9udC1jb2xvcixcbiAgJGhvdmVyLWJnLWNvbG9yLFxuICAkaWNvbi1jb2xvcixcbiAgJGFjdGl2ZS1jb2xvclxuKSB7XG4gIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogJGJ1dHRvbi1vdXRsaW5lLXdpZHRoO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iZy1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvY3VzO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRidXR0b24tb3V0bGluZS13aWR0aCAkZm9jdXMsXG4gICAgICBpbnNldCAwIDAgMCAkYnV0dG9uLWJvcmRlci13aWR0aCAkdWktYmFja2dyb3VuZDtcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIG91dGxpbmU6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtM3B4O1xuICAgIH1cbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWNvbG9yO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bl9faWNvbixcbiAgLiN7JHByZWZpeH0tLWJ0bl9faWNvbiBwYXRoIHtcbiAgICBmaWxsOiAkaWNvbi1jb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLXBhZGRpbmctbGFyZ2Uge1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIHBhZGRpbmctdG9wOiAkc3BhY2luZy0wNTtcbiAgcGFkZGluZy1yaWdodDogJGxheW91dC0wNTtcbiAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy0wNTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnY29sb3JzJztcbkBpbXBvcnQgJ2ZlYXR1cmUtZmxhZ3MnO1xuQGltcG9ydCAnc3BhY2luZyc7XG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvdGhlbWVzL3RoZW1lcyc7XG5cbi8vIFRoZSBsb2FkIG9yZGVyIG9mIHRva2VucyB2ZXJzdXMgdGhlbWVzIG1hdHRlciwgc28gd2UgdXNlIGBjYXJib24tLXRoZW1lYCBoZXJlXG4vLyB0byBtYWtlIHN1cmUgdGhhdCB0aGV5J3JlIGluIHN5bmMgaWYgb25lIGhhcyBkaXZlcmdlZCBmcm9tIHRoZSBvdGhlci5cbkBpbmNsdWRlIGNhcmJvbi0tdGhlbWUoKTtcblxuLy8vIFRoZW1lIHZhcmlhYmxlc1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtdGhlbWVzXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtdGhlbWVzXG4kaW5wdXQtbGFiZWwtd2VpZ2h0OiA0MDAgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC10aGVtZXNcbiRkaXNhYmxlZDogJGRpc2FibGVkLTAyICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtdGhlbWVzXG4kZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLTAxICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtdGhlbWVzXG4kZm9jdXM6ICRpYm0tY29sb3JfX2JsdWUtNjAgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC10aGVtZXNcbiRpbnZlcnNlLWZvY3VzLXVpOiAkaWJtLWNvbG9yX193aGl0ZS0wICFkZWZhdWx0O1xuXG4vLyBMaW5rXG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGxpbmtcbi8vLyBAZGVwcmVjYXRlZFxuJGxpbmstdmlzaXRlZDogJHZpc2l0ZWQtbGluayAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZGVwcmVjYXRlZCBVc2UgdGhlbWUgdG9rZW4gYCRpbnZlcnNlLWxpbmtgIGluc3RlYWQuXG4vLy8gQGdyb3VwIGxpbmtcbiRsaW5rLWludmVyc2UtY29sb3I6ICM2ZWE2ZmYgIWRlZmF1bHQ7XG5cbi8vIFRvb2x0aXBcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgdG9vbHRpcFxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtMDIgIWRlZmF1bHQ7XG5cbi8vIEJ1dHRvblxuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4kYnV0dG9uLWZvbnQtd2VpZ2h0OiA0MDAgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbiRidXR0b24tZm9udC1zaXplOiAwLjg3NXJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1ib3JkZXItcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4kYnV0dG9uLWhlaWdodDogM3JlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4kYnV0dG9uLXBhZGRpbmc6IGNhbGMoMC44NzVyZW0gLSAzcHgpIDYzcHggY2FsYygwLjg3NXJlbSAtIDNweCkgMTVweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4kYnV0dG9uLXBhZGRpbmctZmllbGQ6IGNhbGMoMC42NzVyZW0gLSAzcHgpIDYwcHggY2FsYygwLjY3NXJlbSAtIDNweCkgMTJweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4kYnV0dG9uLXBhZGRpbmctc206IGNhbGMoMC4zNzVyZW0gLSAzcHgpIDYwcHggY2FsYygwLjM3NXJlbSAtIDNweCkgMTJweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1wYWRkaW5nLWxnOiAkY2FyYm9uLS1zcGFjaW5nLTA0ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8gVXNlcyB0aGUgc2FtZSBwYWRkaW5nLXkgYXMgbm9ybWFsIGJ1dHRvbnMsIGJ1dCByZW1vdmVzIGV4dHJhIHBhZGRpbmctcmlnaHRcbiRidXR0b24tcGFkZGluZy1naG9zdDogY2FsYygwLjg3NXJlbSAtIDNweCkgMTZweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vIFVzZXMgdGhlIHNhbWUgcGFkZGluZy15IGFzIGZpZWxkIGJ1dHRvbnMsIGJ1dCByZW1vdmVzIGV4dHJhIHBhZGRpbmctcmlnaHRcbiRidXR0b24tcGFkZGluZy1naG9zdC1maWVsZDogY2FsYygwLjY3NXJlbSAtIDNweCkgMTZweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vIFVzZXMgdGhlIHNhbWUgcGFkZGluZy15IGFzIHNtYWxsIGJ1dHRvbnMsIGJ1dCByZW1vdmVzIGV4dHJhIHBhZGRpbmctcmlnaHRcbiRidXR0b24tcGFkZGluZy1naG9zdC1zbTogY2FsYygwLjM3NXJlbSAtIDNweCkgMTZweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1ib3JkZXItd2lkdGg6IDJweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGJ1dHRvblxuJGJ1dHRvbi1vdXRsaW5lLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBidXR0b25cbi8vLyBAZGVwcmVjYXRlZFxuJGJ1dHRvbi1vdXRsaW5lLW9mZnNldDogLTVweCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8gQGRlcHJlY2F0ZWRcbiRidXR0b24tb3V0bGluZTogMXB4IHNvbGlkICRpYm0tY29sb3JfX3doaXRlLTAgIWRlZmF1bHQ7XG5cbi8vIEFjY29yZGlvblxuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBhY2NvcmRpb25cbiRhY2NvcmRpb24tYXJyb3ctbWFyZ2luOiAycHggJGNhcmJvbi0tc3BhY2luZy0wNSAwIDAgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuJGFjY29yZGlvbi10aXRsZS1tYXJnaW46IDAgMCAwICRjYXJib24tLXNwYWNpbmctMDUgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDAgMCAwICRjYXJib24tLXNwYWNpbmctMDUgIWRlZmF1bHQ7XG5cbi8vIENoZWNrYm94XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjaGVja2JveFxuJGNoZWNrYm94LWJvcmRlci13aWR0aDogMnB4ICFkZWZhdWx0O1xuXG4vLyBDb2RlIFNuaXBwZXRcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgY29kZS1zbmlwcGV0XG4kc25pcHBldC1iYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDEgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGNvZGUtc25pcHBldFxuLy8vIFRPRE86IERlZmluZSBmb3IgZXhwZXJpbWVudGFsXG4kc25pcHBldC1ib3JkZXItY29sb3I6ICR1aS0wMyAhZGVmYXVsdDtcblxuLy8gQ29udGVudCBTd2l0Y2hlclxuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgY29udGVudC1zd2l0Y2hlclxuJGNvbnRlbnQtc3dpdGNoZXItYm9yZGVyLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGNvbnRlbnQtc3dpdGNoZXJcbiRjb250ZW50LXN3aXRjaGVyLW9wdGlvbi1ib3JkZXI6IDFweCBzb2xpZCAkYnJhbmQtMDEgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGNvbnRlbnQtc3dpdGNoZXJcbiRjb250ZW50LXN3aXRjaGVyLWRpdmlkZXI6ICR1aS0wMyAhZGVmYXVsdDtcblxuLy8gRGF0YSBUYWJsZVxuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBkYXRhLXRhYmxlXG4kZGF0YS10YWJsZS1oZWFkaW5nLXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBkYXRhLXRhYmxlXG4kZGF0YS10YWJsZS1oZWFkaW5nLWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYnJhbmQtMDEgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBkYXRhLXRhYmxlXG4kZGF0YS10YWJsZS1yb3ctaGVpZ2h0OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBkYXRhLXRhYmxlXG4kZGF0YS10YWJsZS16ZWJyYS1jb2xvcjogJHVpLTAyICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBkYXRhLXRhYmxlXG4kZGF0YS10YWJsZS1jb2x1bW4taG92ZXI6ICRob3Zlci1zZWxlY3RlZC11aSAhZGVmYXVsdDtcblxuLy8gRGF0ZSBQaWNrZXJcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZGF0ZS1waWNrZXJcbi8vLyBAZGVwcmVjYXRlZFxuJGRhdGUtcGlja2VyLWluLXJhbmdlLWJhY2tncm91bmQtY29sb3I6ICRpYm0tY29sb3JfX2JsdWUtMjAgIWRlZmF1bHQ7XG5cbi8vIE1vZGFsXG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIG1vZGFsXG4kbW9kYWwtYm9yZGVyLXRvcDogJGJyYW5kLTAxIDRweCBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgbW9kYWxcbi8vLyBAZGVwcmVjYXRlZFxuJG1vZGFsLWZvb3Rlci1iYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDMgIWRlZmF1bHQ7XG5cbi8vIE5vdGlmaWNhdGlvblxuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24taW5mby1iYWNrZ3JvdW5kLWNvbG9yOiAkaWJtLWNvbG9yX19ibHVlLTEwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24tZXJyb3ItYmFja2dyb3VuZC1jb2xvcjogJGlibS1jb2xvcl9fcmVkLTEwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24td2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yOiBtaXgoXG4gICRpYm0tY29sb3JfX3llbGxvdy0zMCxcbiAgJGlibS1jb2xvcl9fd2hpdGUtMCxcbiAgMTUlXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBub3RpZmljYXRpb25cbiRub3RpZmljYXRpb24tc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yOiAkaWJtLWNvbG9yX19ncmVlbi0xMCAhZGVmYXVsdDtcblxuLy8gUHJvZ3Jlc3MgSW5kaWNhdG9yXG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHByb2dyZXNzLWluZGljYXRvclxuJHByb2dyZXNzLWluZGljYXRvci1iYXItd2lkdGg6IDFweCBpbnNldCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHByb2dyZXNzLWluZGljYXRvclxuJHByb2dyZXNzLWluZGljYXRvci1zdHJva2Utd2lkdGg6IDUgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBwcm9ncmVzcy1pbmRpY2F0b3JcbiRwcm9ncmVzcy1pbmRpY2F0b3ItbGluZS1vZmZzZXQ6IDAuNjI1cmVtICFkZWZhdWx0O1xuXG4vLyBDb3B5IEJ1dHRvblxuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb3B5LWJ1dHRvblxuJGNvcHktYWN0aXZlOiAkYWN0aXZlLXVpICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBjb3B5LWJ1dHRvblxuJGNvcHktYnRuLWZlZWRiYWNrOiAkaW52ZXJzZS0wMiAhZGVmYXVsdDtcblxuLy8gUmFkaW8gQnV0dG9uXG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCByYWRpby1idXR0b25cbiRyYWRpby1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8gU3RydWN0dXJlZCBMaXN0XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBzdHJ1Y3R1cmVkLWxpc3RcbiRzdHJ1Y3R1cmVkLWxpc3QtcGFkZGluZzogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIFZhbHVlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgc3RydWN0dXJlZC1saXN0XG4kc3RydWN0dXJlZC1saXN0LXRleHQtdHJhbnNmb3JtOiBub25lICFkZWZhdWx0O1xuXG4vLyBUYWJzXG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHRhYnNcbiR0YWItdW5kZXJsaW5lLWNvbG9yOiAycHggc29saWQgJHVpLTAzICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgVmFsdWVcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCB0YWJzXG4kdGFiLXVuZGVybGluZS1jb2xvci1ob3ZlcjogMnB4IHNvbGlkICR1aS0wNCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgdGFic1xuJHRhYi10ZXh0LWRpc2FibGVkOiAkZGlzYWJsZWQtMDIgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBWYWx1ZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHRhYnNcbiR0YWItdW5kZXJsaW5lLWRpc2FibGVkOiAycHggc29saWQgJGRpc2FibGVkLTAxICFkZWZhdWx0O1xuXG4vLyBTa2VsZXRvbiBMb2FkaW5nXG5cbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHNrZWxldG9uXG4vLy8gVE9ETzogUmVtb3ZlIHRoaXMgaW4gbmV4dCBtYWpvciByZWxlYXNlXG4kc2tlbGV0b246ICRza2VsZXRvbi0wMSAhZGVmYXVsdDtcblxuLy8gTGlnaHQgVUlcblxuLy8gRGV0ZXJtaW5lIHRoZSBcImxpZ2h0XCIgY29sb3IgZm9yIGEgZ2l2ZW4gdG9rZW4uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0b2tlbiBUaGUgdGhlbWUgdG9rZW4uXG4vLy8gQHJldHVybiB7U3RyaW5nfSBUaGUgbmV3IGNvbG9yIHZhbHVlIGFzIGEgaGV4IGNvZGUgb3IgYSBjdXN0b20gcHJvcGVydHkuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgbGlnaHQtdWlcbkBmdW5jdGlvbiBnZXQtbGlnaHQtdmFsdWUoJHRva2VuKSB7XG4gICR2YWx1ZTogbWFwLWdldCgkY2FyYm9uLS10aGVtZSwgJHRva2VuKTtcblxuICBAaWYgJGNhcmJvbi0tdGhlbWUgPT1cbiAgICAkY2FyYm9uLS10aGVtZS0td2hpdGUgb3JcbiAgICAkY2FyYm9uLS10aGVtZSA9PVxuICAgICRjYXJib24tLXRoZW1lLS1nMTBcbiAge1xuICAgICR2YWx1ZTogZGFya2VuKCR2YWx1ZSwgOCUpO1xuICB9XG5cbiAgQGlmICRjYXJib24tLXRoZW1lID09XG4gICAgJGNhcmJvbi0tdGhlbWUtLWc5MCBvclxuICAgICRjYXJib24tLXRoZW1lID09XG4gICAgJGNhcmJvbi0tdGhlbWUtLWcxMDBcbiAge1xuICAgICR2YWx1ZTogbGlnaHRlbigkdmFsdWUsIDglKTtcbiAgfVxuXG4gIEBpZiBmZWF0dXJlLWZsYWdzLWVuYWJsZWQoJ2VuYWJsZS1jc3MtY3VzdG9tLXByb3BlcnRpZXMnKSB7XG4gICAgQHJldHVybiB2YXIoLS0jeyRjdXN0b20tcHJvcGVydHktcHJlZml4fS0jeyR0b2tlbn0tbGlnaHQsICR2YWx1ZSk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgbGlnaHQtdWlcbiRob3Zlci11aS1saWdodDogZ2V0LWxpZ2h0LXZhbHVlKCd1aS0wMScpO1xuIiwiLy8gQ29kZSBnZW5lcmF0ZWQgYnkgQGNhcmJvbi9sYXlvdXQuIERPIE5PVCBFRElULlxuLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOVxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuJGNhcmJvbi0tc3BhY2luZy0wMTogMC4xMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuJGNhcmJvbi0tc3BhY2luZy0wMjogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1zcGFjaW5nLTAzOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuJGNhcmJvbi0tc3BhY2luZy0wNDogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1zcGFjaW5nLTA1OiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbiRjYXJib24tLXNwYWNpbmctMDY6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1zcGFjaW5nLTA3OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbiRjYXJib24tLXNwYWNpbmctMDg6IDIuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1zcGFjaW5nLTA5OiAzcmVtICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbiRjYXJib24tLXNwYWNpbmctMTA6IDRyZW0gIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuJGNhcmJvbi0tc3BhY2luZy0xMTogNXJlbSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1zcGFjaW5nLTEyOiA2cmVtICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTGlzdFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1zcGFjaW5nOiAoXG4gICRjYXJib24tLXNwYWNpbmctMDEsXG4gICRjYXJib24tLXNwYWNpbmctMDIsXG4gICRjYXJib24tLXNwYWNpbmctMDMsXG4gICRjYXJib24tLXNwYWNpbmctMDQsXG4gICRjYXJib24tLXNwYWNpbmctMDUsXG4gICRjYXJib24tLXNwYWNpbmctMDYsXG4gICRjYXJib24tLXNwYWNpbmctMDcsXG4gICRjYXJib24tLXNwYWNpbmctMDgsXG4gICRjYXJib24tLXNwYWNpbmctMDksXG4gICRjYXJib24tLXNwYWNpbmctMTAsXG4gICRjYXJib24tLXNwYWNpbmctMTEsXG4gICRjYXJib24tLXNwYWNpbmctMTJcbik7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuLy8vIEBhbGlhcyBjYXJib24tLXNwYWNpbmctMDFcbiRzcGFjaW5nLTAxOiAkY2FyYm9uLS1zcGFjaW5nLTAxICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbi8vLyBAYWxpYXMgY2FyYm9uLS1zcGFjaW5nLTAyXG4kc3BhY2luZy0wMjogJGNhcmJvbi0tc3BhY2luZy0wMiAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4vLy8gQGFsaWFzIGNhcmJvbi0tc3BhY2luZy0wM1xuJHNwYWNpbmctMDM6ICRjYXJib24tLXNwYWNpbmctMDMgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuLy8vIEBhbGlhcyBjYXJib24tLXNwYWNpbmctMDRcbiRzcGFjaW5nLTA0OiAkY2FyYm9uLS1zcGFjaW5nLTA0ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbi8vLyBAYWxpYXMgY2FyYm9uLS1zcGFjaW5nLTA1XG4kc3BhY2luZy0wNTogJGNhcmJvbi0tc3BhY2luZy0wNSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4vLy8gQGFsaWFzIGNhcmJvbi0tc3BhY2luZy0wNlxuJHNwYWNpbmctMDY6ICRjYXJib24tLXNwYWNpbmctMDYgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuLy8vIEBhbGlhcyBjYXJib24tLXNwYWNpbmctMDdcbiRzcGFjaW5nLTA3OiAkY2FyYm9uLS1zcGFjaW5nLTA3ICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbi8vLyBAYWxpYXMgY2FyYm9uLS1zcGFjaW5nLTA4XG4kc3BhY2luZy0wODogJGNhcmJvbi0tc3BhY2luZy0wOCAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4vLy8gQGFsaWFzIGNhcmJvbi0tc3BhY2luZy0wOVxuJHNwYWNpbmctMDk6ICRjYXJib24tLXNwYWNpbmctMDkgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuLy8vIEBhbGlhcyBjYXJib24tLXNwYWNpbmctMTBcbiRzcGFjaW5nLTEwOiAkY2FyYm9uLS1zcGFjaW5nLTEwICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbi8vLyBAYWxpYXMgY2FyYm9uLS1zcGFjaW5nLTExXG4kc3BhY2luZy0xMTogJGNhcmJvbi0tc3BhY2luZy0xMSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4vLy8gQGFsaWFzIGNhcmJvbi0tc3BhY2luZy0xMlxuJHNwYWNpbmctMTI6ICRjYXJib24tLXNwYWNpbmctMTIgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICdjc3MtLWhlbHBlcnMnO1xuQGltcG9ydCAnbGF5b3V0JztcbkBpbXBvcnQgJ3R5cG9ncmFwaHknO1xuXG4vLyBUb29sdGlwXG4vLyBUb29sdGlwIGNhcmV0IHZpc3VhbCBzdHlsZXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCB0b29sdGlwXG5AbWl4aW4gdG9vbHRpcC0tY2FyZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHooJ2Zsb2F0aW5nJyk7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGNvbnRlbnQ6ICcnO1xufVxuXG4vLyBUb29sdGlwXG4vLyBUb29sdGlwIGNvbnRlbnQgYm94IHZpc3VhbCBzdHlsZXNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHRvb2x0aXAtdHlwZSBbJ2ljb24nXSAtIFRoZSB0eXBlLCBmcm9tOiBgaWNvbmAsIGBkZWZpbml0aW9uYFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIHRvb2x0aXBcbkBtaXhpbiB0b29sdGlwLS1jb250ZW50KCR0b29sdGlwLXR5cGU6ICdpY29uJykge1xuICBAaW5jbHVkZSBib3gtc2hhZG93O1xuXG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWluLXdpZHRoOiByZW0oMjRweCk7XG4gIG1heC13aWR0aDogcmVtKDIwOHB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiBpZihcbiAgICAkdG9vbHRpcC10eXBlID09ICdkZWZpbml0aW9uJyxcbiAgICByZW0oOHB4KSByZW0oMTZweCksXG4gICAgcmVtKDNweCkgcmVtKDE2cHgpXG4gICk7XG4gIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtMDI7XG4gIGJvcmRlci1yYWRpdXM6IHJlbSgycHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAvLyBJRSBtZWRpYSBxdWVyeVxuICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC8vIEVkZ2UgMTItMTUgYW5kIEVkZ2UgMTYgZmVhdHVyZSBxdWVyaWVzXG4gIEBzdXBwb3J0cyAoLW1zLWFjY2VsZXJhdG9yOiB0cnVlKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8gVG9vbHRpcFxuLy8gRGVmaW5pdGlvbiBhbmQgSWNvbiBDU1Mgb25seSB0b29sdGlwXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0b29sdGlwLXR5cGUgWydpY29uJ10gLSBUaGUgdHlwZSwgZnJvbTogYGljb25gLCBgZGVmaW5pdGlvbmBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBvc2l0aW9uIFsnYm90dG9tJ10gLSBUaGUgcG9zaXRpb24sIGZyb206IGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgdG9vbHRpcFxuQG1peGluIHRvb2x0aXAtLXRyaWdnZXIoJHRvb2x0aXAtdHlwZTogJ2ljb24nLCAkcG9zaXRpb246ICdib3R0b20nKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnYm9yZGVyJyk7XG4gIH1cblxuICBAaWYgJHRvb2x0aXAtdHlwZSA9PSAnaWNvbicge1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdib3JkZXInKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA6OmJlZm9yZSAtIFRvb2x0aXAgY2FyZXRcbiAgLy8gOjphZnRlciAtIGxlZ2FjeSBUb29sdGlwIGNvbnRlbnQgKGRlcHJlY2F0ZWQpXG4gIC8vIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCAtIFdDQUcgMi4xIGNvbXBsaWFudCB0b29sdGlwIGNvbnRlbnRcbiAgLy8gICAgdGhhdCBjYW4gZWl0aGVyIGJlIGEgY2hpbGQgKGljb24gdG9vbHRpcCkgb3Igc2libGluZyAoZGVmaW5pdGlvbiB0b29sdGlwKVxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyLFxuICAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICsgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogeignZmxvYXRpbmcnKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIC8vIElFIG1lZGlhIHF1ZXJ5XG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hMTF5OjpiZWZvcmUsXG4gICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBjYXJldFxuICAmOjpiZWZvcmUge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0LFxuICArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLy8gb3ZlcndyaXRlIGRlZmF1bHQgbm93cmFwIGJlaGF2aW9yXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIC8vIEluIG9yZGVyIHRvIHBhc3MgQUFULCBvcGFjaXR5IG11c3QgYmUgc2V0IHRvIDEgaW4gdGhlIGRlZmF1bHQgc3RhdGVcbiAgICAvLyBPbiBmb2N1cy9ob3ZlciB1c2UgYSBrZXlmcmFtZSBhbmltYXRpb24gdG8gbWltaWMgdHJhbnNpdGlvblxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBjb250ZW50IGJveFxuICAvLyBAdG9kbyBTaW1wbGlmeSBDU1Mgc2VsZWN0b3JzIG9uIG5leHQgbWFqb3IgcmVsZWFzZVxuICAmOjphZnRlcixcbiAgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0LFxuICArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tY29udGVudCgkdG9vbHRpcC10eXBlKTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGFyaWEtbGFiZWwpO1xuICB9XG5cbiAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hMTF5OjphZnRlciB7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxuXG4gICYuI3skcHJlZml4fS0tdG9vbHRpcC0tdmlzaWJsZSxcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyB0b29sdGlwLWZhZGUge1xuICAgICAgZnJvbSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0LFxuICAgICsgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0IHtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgY2xpcDogYXV0bztcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICAgKyAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hMTF5OjpiZWZvcmUge1xuICAgICAgYW5pbWF0aW9uOiB0b29sdGlwLWZhZGUgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1oaWRkZW4gLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0LFxuICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWhpZGRlbiArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCB7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgfVxuXG4gICYuI3skcHJlZml4fS0tdG9vbHRpcC0taGlkZGVuLiN7JHByZWZpeH0tLXRvb2x0aXAtLWExMXk6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gVG9vbHRpcFxuLy8gRGVmaW5pdGlvbiBhbmQgSWNvbiBDU1Mgb25seSB0b29sdGlwXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0b29sdGlwLXR5cGUgWydpY29uJ10gLSBUaGUgdHlwZSwgZnJvbTogYGljb25gLCBgZGVmaW5pdGlvbmBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBvc2l0aW9uIFsnYm90dG9tJ10gLSBUaGUgcG9zaXRpb24sIGZyb206IGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRhbGlnbiBbJ2NlbnRlciddIC0gVGhlIGFsaWdubWVudCwgZnJvbTogYHN0YXJ0YCwgYGNlbnRlcmAsIGBlbmRgXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgdG9vbHRpcFxuQG1peGluIHRvb2x0aXAtLXBsYWNlbWVudChcbiAgJHRvb2x0aXAtdHlwZTogJ2ljb24nLFxuICAkcG9zaXRpb246ICdib3R0b20nLFxuICAkYWxpZ246ICdjZW50ZXInXG4pIHtcbiAgLy8gcG9zaXRpb24gYW5kIGFsaWdubWVudFxuICAkY2FyZXQtc3BhY2luZzogaWYoJHRvb2x0aXAtdHlwZSA9PSAnZGVmaW5pdGlvbicsIHJlbSg0cHgpLCByZW0oOHB4KSk7XG5cbiAgLy8gc3BhY2UgYmV0d2VlbiBjYXJldCBhbmQgdHJpZ2dlciBidXR0b25cbiAgJGNhcmV0LWhlaWdodDogcmVtKDVweCk7XG4gICRjYXJldC13aWR0aDogcmVtKDhweCk7XG4gICRib2R5LXNwYWNpbmc6ICRjYXJldC1zcGFjaW5nICsgJGNhcmV0LWhlaWdodDtcblxuICAvLyBAdG9kbyBTaW1wbGlmeSBDU1Mgc2VsZWN0b3JzIG9uIG5leHQgbWFqb3IgcmVsZWFzZVxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyLFxuICAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICsgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0IHtcbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAndG9wJykge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgIH1cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAncmlnaHQnKSB7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAnYm90dG9tJykge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgIH1cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAnbGVmdCcpIHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIEBpZiAoJHBvc2l0aW9uID09ICd0b3AnKSB7XG4gICAgICB0b3A6IC0kY2FyZXQtc3BhY2luZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGludmVyc2UtMDIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6IHJlbSg1cHgpIHJlbSg0cHgpIDAgcmVtKDRweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gICAgfVxuICAgIEBpZiAoJHBvc2l0aW9uID09ICdyaWdodCcpIHtcbiAgICAgIHJpZ2h0OiAtJGNhcmV0LXNwYWNpbmc7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRpbnZlcnNlLTAyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXdpZHRoOiByZW0oNHB4KSByZW0oNXB4KSByZW0oNHB4KSAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgLTUwJSk7XG4gICAgfVxuICAgIEBpZiAoJHBvc2l0aW9uID09ICdib3R0b20nKSB7XG4gICAgICBib3R0b206IC0kY2FyZXQtc3BhY2luZztcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGludmVyc2UtMDIgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6IDAgcmVtKDRweCkgcmVtKDVweCkgcmVtKDRweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcbiAgICB9XG4gICAgQGlmICgkcG9zaXRpb24gPT0gJ2xlZnQnKSB7XG4gICAgICBsZWZ0OiAtJGNhcmV0LXNwYWNpbmc7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRpbnZlcnNlLTAyO1xuICAgICAgYm9yZGVyLXdpZHRoOiByZW0oNHB4KSAwIHJlbSg0cHgpIHJlbSg1cHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC01MCUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGFsaWdubWVudCBvcHRpb25zIGF2YWlsYWJsZSBvbmx5IGZvciB0b3AgYW5kIGJvdHRvbSB0b29sdGlwIHBvc2l0aW9uXG4gIC8vIEB0b2RvIFNpbXBsaWZ5IENTUyBzZWxlY3RvcnMgb24gbmV4dCBtYWpvciByZWxlYXNlXG4gICY6OmFmdGVyLFxuICAuI3skcHJlZml4fS0tYXNzaXN0aXZlLXRleHQsXG4gICsgLiN7JHByZWZpeH0tLWFzc2lzdGl2ZS10ZXh0IHtcbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAndG9wJykge1xuICAgICAgdG9wOiAtJGJvZHktc3BhY2luZztcbiAgICAgIEBpZiAoJGFsaWduID09ICdzdGFydCcpIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgICAgfSBAZWxzZSBpZiAoJGFsaWduID09ICdlbmQnKSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAoJHBvc2l0aW9uID09ICdyaWdodCcpIHtcbiAgICAgIHJpZ2h0OiAtJGJvZHktc3BhY2luZztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIC01MCUpO1xuICAgIH1cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAnYm90dG9tJykge1xuICAgICAgYm90dG9tOiAtJGJvZHktc3BhY2luZztcbiAgICAgIEBpZiAoJGFsaWduID09ICdzdGFydCcpIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAwJSk7XG4gICAgICB9IEBlbHNlIGlmICgkYWxpZ24gPT0gJ2VuZCcpIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDEwMCUpO1xuICAgICAgfVxuICAgIH1cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAnbGVmdCcpIHtcbiAgICAgIGxlZnQ6IC0kYm9keS1zcGFjaW5nO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC01MCUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEB0b2RvIHNpbXBsaWZ5IG9uIG5leHQgbWFqb3IgcmVsZWFzZSB0byBtb3ZlIHRoZSA6OmJlZm9yZSBwc2V1ZG8gZWxlbWVudCB3aXRoaW4gdGhlIHRvb2x0aXAgaW5zdGVhZCBvZiB0aGUgdHJpZ2dlclxuICBAaWYgJHRvb2x0aXAtdHlwZSA9PSAnZGVmaW5pdGlvbicge1xuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeSArIC4jeyRwcmVmaXh9LS1hc3Npc3RpdmUtdGV4dCB7XG4gICAgICBAaWYgKCRwb3NpdGlvbiA9PSAnYm90dG9tJykge1xuICAgICAgICAvLyBjYXJyeW92ZXIgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vY2FyYm9uLWRlc2lnbi1zeXN0ZW0vY2FyYm9uL3B1bGwvMzE1MS9maWxlcyNkaWZmLTkzNzM0YmUwNzg0ZTk1MzBiNmQxNGE3YjAzYjBkMzUyUjI2MS1SMjY1XG4gICAgICAgIGJvdHRvbTogLSgkYm9keS1zcGFjaW5nIC0gcmVtKDFweCkpO1xuICAgICAgICBAaWYgKCRhbGlnbiA9PSAnc3RhcnQnIG9yICRhbGlnbiA9PSAnZW5kJykge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBtaXhpbiBjb250ZW50LXZpc2libGUge1xuICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICBvcGFjaXR5OiAxO1xufVxuXG5AbWl4aW4gY29udGVudC1oaWRkZW4ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG59XG5cbkBrZXlmcmFtZXMgaGlkZS1mZWVkYmFjayB7XG4gIDAlIHtcbiAgICBAaW5jbHVkZSBjb250ZW50LXZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgQGluY2x1ZGUgY29udGVudC1oaWRkZW47XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzaG93LWZlZWRiYWNrIHtcbiAgMCUge1xuICAgIEBpbmNsdWRlIGNvbnRlbnQtaGlkZGVuO1xuICB9XG4gIDEwMCUge1xuICAgIEBpbmNsdWRlIGNvbnRlbnQtdmlzaWJsZTtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uL2J1dHRvbi9idXR0b24nO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3Rvb2x0aXAnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2tleWZyYW1lcyc7XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2NvcHktYnV0dG9uJykge1xuICAuI3skcHJlZml4fS0tYnRuLS1jb3B5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAuI3skcHJlZml4fS0tYnRuX19pY29uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0oNXB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1jb3B5X19mZWVkYmFjayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMS4ycmVtO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkc3VwcG9ydC0wMTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdztcbiAgICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgICAgdG9wOiAxLjFyZW07XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgcGFkZGluZzogJHNwYWNpbmctMDI7XG4gICAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1mZWVkYmFjayk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICB0b3A6IDAuODVyZW07XG4gICAgICBsZWZ0OiAtMC4zcmVtO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHdpZHRoOiAwLjZyZW07XG4gICAgICBoZWlnaHQ6IDAuNnJlbTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRpbnZlcnNlLTAyO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnZlcnNlLTAyO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS0wMjtcbiAgICB9XG5cbiAgICAmLS1kaXNwbGF5ZWQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogZGVwcmVjYXRlIGFib3ZlIHN0eWxlc1xuXG4gIC4jeyRwcmVmaXh9LS1jb3B5LWJ0biB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS11aTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tY2FyZXQ7XG5cbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWNvcHktYnRuX19mZWVkYmFjayB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1jb250ZW50KCdpY29uJyk7XG5cbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgY2xpcDogYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnYm90dG9tJywgJ2NlbnRlcicpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG5cbiAgICAgIG91dGxpbmUtY29sb3I6ICRmb2N1cztcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWNvcHktYnRuLS1hbmltYXRpbmc6OmJlZm9yZSxcbiAgICAmLiN7JHByZWZpeH0tLWNvcHktYnRuLS1hbmltYXRpbmcgLiN7JHByZWZpeH0tLWNvcHktYnRuX19mZWVkYmFjayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWNvcHktYnRuLS1hbmltYXRpbmcuI3skcHJlZml4fS0tY29weS1idG4tLWZhZGUtb3V0OjpiZWZvcmUsXG4gICAgJi4jeyRwcmVmaXh9LS1jb3B5LWJ0bi0tYW5pbWF0aW5nLiN7JHByZWZpeH0tLWNvcHktYnRuLS1mYWRlLW91dFxuICAgICAgLiN7JHByZWZpeH0tLWNvcHktYnRuX19mZWVkYmFjayB7XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vc3R5bGVsaW50L3N0eWxlbGludC9pc3N1ZXMvMjM2M1xuICAgICAgYW5pbWF0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSBoaWRlLWZlZWRiYWNrO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tY29weS1idG4tLWFuaW1hdGluZy4jeyRwcmVmaXh9LS1jb3B5LWJ0bi0tZmFkZS1pbjo6YmVmb3JlLFxuICAgICYuI3skcHJlZml4fS0tY29weS1idG4tLWFuaW1hdGluZy4jeyRwcmVmaXh9LS1jb3B5LWJ0bi0tZmFkZS1pblxuICAgICAgLiN7JHByZWZpeH0tLWNvcHktYnRuX19mZWVkYmFjayB7XG4gICAgICBhbmltYXRpb246ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpIHNob3ctZmVlZGJhY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gTmVlZHMgdG8gY29tZSBhZnRlciByZXNldCBzbyBoaWRkZW4gdGV4dCBpcyBub3Qgc2V0IHRvIGZvbnQtc2l6ZTogMTAwJVxuICAuI3skcHJlZml4fS0tY29weSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuXG4vLy8gRm9ybSBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZm9ybVxuQG1peGluIGZvcm0ge1xuICAuI3skcHJlZml4fS0tZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1mb3JtLWl0ZW0ge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLy8gV2Ugc3BlY2lmeSBgYXV0b2AgYXMgdGhlIGRlZmF1bHQgdmFsdWUgc28gdGhhdCB0aGUgZm9ybSBpdGVtIGRvZXNcbiAgICAvLyBub3QgY29sbGFwc2UgaW4gSUUxMSBkdWUgdG8gYSBgZmxleC1iYXNpc2Agb2YgMCBvbmx5IHdvcmtpbmcgd2l0aFxuICAgIC8vIGBmbGV4LWRpcmVjdGlvbjogcm93YFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGFiZWwge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgZm9udC13ZWlnaHQ6ICRpbnB1dC1sYWJlbC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxhYmVsIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyIHtcbiAgICAvLyBXaGVuIHRvb2x0aXAgdHJpZ2dlciBpcyBwdXQgaW4gZm9ybSBsYWJlbCB0aGUgdHJpZ2dlciBidXR0b24gc2hvdWxkIGZpdCBpbiB0aGUgc2l6ZSBvZiBsYWJlbFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9JQk0vY2FyYm9uLWNvbXBvbmVudHMtcmVhY3QvaXNzdWVzLzExNVxuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tbGFiZWwuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgd2lkdGg6IHJlbSg3NXB4KTtcbiAgICBoZWlnaHQ6IHJlbSgxNHB4KTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9J251bWJlciddIHtcbiAgICBmb250LWZhbWlseTogY2FyYm9uLS1mb250LWZhbWlseSgnbW9ubycpO1xuICB9XG5cbiAgaW5wdXRbZGF0YS1pbnZhbGlkXTpub3QoOmZvY3VzKSxcbiAgLiN7JHByZWZpeH0tLW51bWJlcltkYXRhLWludmFsaWRdIGlucHV0W3R5cGU9J251bWJlciddOm5vdCg6Zm9jdXMpLFxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dF9fZmllbGQtd3JhcHBlcltkYXRhLWludmFsaWRdXG4gICAgPiAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0taW52YWxpZDpub3QoOmZvY3VzKSxcbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYV9fd3JhcHBlcltkYXRhLWludmFsaWRdXG4gICAgPiAuI3skcHJlZml4fS0tdGV4dC1hcmVhLS1pbnZhbGlkOm5vdCg6Zm9jdXMpLFxuICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0X193cmFwcGVyW2RhdGEtaW52YWxpZF1cbiAgICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0Om5vdCg6Zm9jdXMpLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXTpub3QoOmZvY3VzKSxcbiAgLiN7JHByZWZpeH0tLWNvbWJvLWJveFtkYXRhLWludmFsaWRdIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdpbnZhbGlkJyk7XG4gIH1cblxuICBpbnB1dFtkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tbnVtYmVyW2RhdGEtaW52YWxpZF0gLiN7JHByZWZpeH0tLW51bWJlcl9faW5wdXQtd3JhcHBlcixcbiAgLiN7JHByZWZpeH0tLW51bWJlcl9faW5wdXQtd3JhcHBlci0td2FybmluZyxcbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLWlucHV0X193cmFwcGVyLFxuICAuI3skcHJlZml4fS0tdGltZS1waWNrZXItLWludmFsaWQsXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19maWVsZC13cmFwcGVyW2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19maWVsZC13cmFwcGVyLS13YXJuaW5nLFxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dF9fZmllbGQtd3JhcHBlci0td2FybmluZyA+IC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LFxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhX193cmFwcGVyW2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXJbZGF0YS1pbnZhbGlkXSxcbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyW2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLXdhcm5pbmcge1xuICAgIH4gLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtaGVpZ2h0OiByZW0oMjAwcHgpO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS1udW1iZXJbZGF0YS1pbnZhbGlkXSAuI3skcHJlZml4fS0tbnVtYmVyX19pbnB1dC13cmFwcGVyLFxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXItaW5wdXRfX3dyYXBwZXIsXG4gIC4jeyRwcmVmaXh9LS10aW1lLXBpY2tlci0taW52YWxpZCxcbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ZpZWxkLXdyYXBwZXJbZGF0YS1pbnZhbGlkXSxcbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYV9fd3JhcHBlcltkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0X193cmFwcGVyW2RhdGEtaW52YWxpZF0sXG4gIC4jeyRwcmVmaXh9LS10aW1lLXBpY2tlcltkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXSB7XG4gICAgfiAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudCB7XG4gICAgICBjb2xvcjogJHRleHQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgLy9GbHVpZCBGb3JtXG4gIC4jeyRwcmVmaXh9LS1mb3JtLS1mbHVpZCAuI3skcHJlZml4fS0tdGV4dC1pbnB1dF9fZmllbGQtd3JhcHBlcltkYXRhLWludmFsaWRdLFxuICAuI3skcHJlZml4fS0tZm9ybS0tZmx1aWQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ZpZWxkLXdyYXBwZXItLXdhcm5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm0tLWZsdWlkIC4jeyRwcmVmaXh9LS1maWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm0tLWZsdWlkIGlucHV0W2RhdGEtaW52YWxpZF0ge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZm9ybS0tZmx1aWQgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAzIHJlbSg0MHB4KSAkY2FyYm9uLS1zcGFjaW5nLTAzXG4gICAgICAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLy8gRml4IGZvciByZWQgcmluZyB3aGVuIGlucHV0IGlzIG1hcmtlZCByZXF1aXJlZCBpbiBGaXJlZm94LCByZWZzICM3NDRcbiAgaW5wdXQ6bm90KG91dHB1dCk6bm90KFtkYXRhLWludmFsaWRdKTotbW96LXVpLWludmFsaWQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnY2FwdGlvbi0wMScpO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuXG4gICAgbWFyZ2luOiAkY2FyYm9uLS1zcGFjaW5nLTAyIDAgMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnaGVscGVyLXRleHQtMDEnKTtcblxuICAgIHotaW5kZXg6IDA7XG4gICAgLy8gQWRkZWQgdG8gcHJldmVudCBlcnJvciB0ZXh0IGZyb20gZGlzcGxheWluZyB1bmRlciBoZWxwZXIgdGV4dCBpbiBTYWZhcmkgKCM2MzkyKVxuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDI7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGFiZWwtLWRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tZm9ybV9faGVscGVyLXRleHQtLWRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Zvcm0nKSB7XG4gIEBpbmNsdWRlIGZvcm07XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAndmFycyc7XG5cbkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtZW5kLXAxIHtcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1lbmQtcDIge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgfVxufVxuXG4vKiBTdHJva2UgYW5pbWF0aW9ucyAqL1xuQGtleWZyYW1lcyBpbml0LXN0cm9rZSB7XG4gIDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjQwO1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkbG9hZGluZ19fZ2FwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3Ryb2tlLWVuZCB7XG4gIDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogJGxvYWRpbmdfX2dhcDtcbiAgfVxuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjQwO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsb2FkaW5nXG4kbG9hZGluZ19fZ2FwOiA0MDtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsb2FkaW5nXG4kbG9hZGluZy0tc21hbGxfX2dhcDogOTk7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbG9hZGluZ1xuJGxvYWRpbmdfX3NpemU6IDEwLjVyZW07XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAna2V5ZnJhbWVzJztcbkBpbXBvcnQgJ21peGlucyc7XG5AaW1wb3J0ICd2YXJzJztcblxuLy8vIExvYWRpbmcgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGxvYWRpbmdcbkBtaXhpbiBsb2FkaW5nIHtcbiAgLiN7JHByZWZpeH0tLWxvYWRpbmcge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9fbG9hZGluZy0tc3BpbjtcblxuICAgIHdpZHRoOiAkbG9hZGluZ19fc2l6ZTtcbiAgICBoZWlnaHQ6ICRsb2FkaW5nX19zaXplO1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uIChTcGluIGJ5IGRlZmF1bHQpXG4gIC4jeyRwcmVmaXh9LS1sb2FkaW5nX19zdmcge1xuICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxvYWRpbmdfX3N2ZyBjaXJjbGUge1xuICAgIHN0cm9rZS13aWR0aDogODtcbiAgICBzdHJva2UtbGluZWNhcDogYnV0dDtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAyNDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZ19fc3Ryb2tlIHtcbiAgICBzdHJva2U6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogJGxvYWRpbmdfX2dhcDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1sb2FkaW5nLS1zbWFsbCAuI3skcHJlZml4fS0tbG9hZGluZ19fc3Ryb2tlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogJGxvYWRpbmctLXNtYWxsX19nYXA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZy0tc3RvcCB7XG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX19sb2FkaW5nLS1zdG9wO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxvYWRpbmctLXNtYWxsIHtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgY2lyY2xlIHtcbiAgICAgIHN0cm9rZS13aWR0aDogMTI7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxvYWRpbmctLXNtYWxsIC4jeyRwcmVmaXh9LS1sb2FkaW5nX19zdmcge1xuICAgIHN0cm9rZTogJGludGVyYWN0aXZlLTA0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxvYWRpbmdfX2JhY2tncm91bmQge1xuICAgIHN0cm9rZTogJHVpLTAzO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxvYWRpbmctb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IHooJ292ZXJsYXknKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvdmVybGF5LTAxO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1zbG93LTAyIG1vdGlvbihzdGFuZGFyZCwgZXhwcmVzc2l2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZy1vdmVybGF5LS1zdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2xvYWRpbmcnKSB7XG4gIEBpbmNsdWRlIGxvYWRpbmc7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBbmltYXRpb25zIC0gTG9hZGluZ1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbG9hZGluZ1xuQG1peGluIGFuaW1hdGlvbl9fbG9hZGluZy0tc3BpbiB7XG4gIC8vIEFuaW1hdGUgdGhlIGNvbnRhaW5lclxuICBhbmltYXRpb24tbmFtZTogcm90YXRlO1xuICBhbmltYXRpb24tZHVyYXRpb246IDY5MG1zO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcblxuICAvLyBBbmltYXRlIHRoZSBzdHJva2VcbiAgc3ZnIGNpcmNsZSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGluaXQtc3Ryb2tlO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMTBtcztcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc7XG4gIH1cbn1cblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsb2FkaW5nXG5AbWl4aW4gYW5pbWF0aW9uX19sb2FkaW5nLS1zdG9wIHtcbiAgLy8gQW5pbWF0ZSB0aGUgY29udGFpbmVyXG4gIGFuaW1hdGlvbjogcm90YXRlLWVuZC1wMSA3MDBtcyAkY2FyYm9uLS1lYXNlLW91dCBmb3J3YXJkcyxcbiAgICByb3RhdGUtZW5kLXAyIDcwMG1zICRjYXJib24tLWVhc2Utb3V0IDcwMG1zIGZvcndhcmRzO1xuXG4gIC8vIEFuaW1hdGUgdGhlIHN0cm9rZVxuICBzdmcgY2lyY2xlIHtcbiAgICBhbmltYXRpb24tbmFtZTogc3Ryb2tlLWVuZDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDcwMG1zO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRjYXJib24tLWVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi1kZWxheTogNzAwbXM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvbW90aW9uL21vdGlvbic7XG5cbi8vLyBVc2VkIHByaW1hcmlseSBmb3IgcmVtb3ZpbmcgZWxlbWVudHMgZnJvbSB0aGUgc2NyZWVuXG4vLy8gQHR5cGUgRnVuY3Rpb25cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kY2FyYm9uLS1lYXNlLWluOiBjdWJpYy1iZXppZXIoMC4yNSwgMCwgMSwgMSk7XG5cbi8vLyBVc2VkIGZvciBhZGRpbmcgZWxlbWVudHMgdG8gdGhlIHNjcmVlbiBvciBjaGFuZ2luZyBvbi1zY3JlZW4gc3RhdGVzIGF0IGEgdXNlcnMncyBpbnB1dFxuLy8vIEB0eXBlIEZ1bmN0aW9uXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGNhcmJvbi0tZWFzZS1vdXQ6IGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKTtcblxuLy8vIFVzZWQgZm9yIHRoZSBtYWpvcml0eSBvZiBhbmltYXRpb25zXG4vLy8gQHR5cGUgRnVuY3Rpb25cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc6IGN1YmljLWJlemllcigwLjUsIDAsIDAuMSwgMSk7XG5cbi8vLyBCYXNlIHRyYW5zaXRpb24gZHVyYXRpb25cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kdHJhbnNpdGlvbi0tYmFzZTogMjUwbXM7XG5cbi8vLyBFeHBhbnNpb24gZHVyYXRpb25cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kdHJhbnNpdGlvbi0tZXhwYW5zaW9uOiAzMDBtcztcblxuLy8vIE5ldyBlYXNpbmcgZHVyYXRpb25zXG5cbi8vLyBFeHBhbnNpb24gZHVyYXRpb25cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kZHVyYXRpb24tLWZhc3QtMDE6IDcwbXM7XG5cbi8vLyBFeHBhbnNpb24gZHVyYXRpb25cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kZHVyYXRpb24tLWZhc3QtMDI6IDExMG1zO1xuXG4vLy8gRXhwYW5zaW9uIGR1cmF0aW9uXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLW1vdGlvblxuJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMTogMTUwbXM7XG5cbi8vLyBFeHBhbnNpb24gZHVyYXRpb25cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kZHVyYXRpb24tLW1vZGVyYXRlLTAyOiAyNDBtcztcblxuLy8vIEV4cGFuc2lvbiBkdXJhdGlvblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC1tb3Rpb25cbiRkdXJhdGlvbi0tc2xvdy0wMTogNDAwbXM7XG5cbi8vLyBFeHBhbnNpb24gZHVyYXRpb25cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kZHVyYXRpb24tLXNsb3ctMDI6IDcyMG1zO1xuXG4vLy8gRGVmYXVsdCBlYXNlLWluIGZvciBjb21wb25lbnRzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAdHlwZSBGdW5jdGlvblxuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4kY2FyYm9uLS1lYXNlLWluOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4zOCwgMC45KTtcblxuLy8vIERlZmF1bHQgZWFzZS1vdXQgZm9yIGNvbXBvbmVudHNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIEZ1bmN0aW9uXG4vLy8gQGdyb3VwIGdsb2JhbC1tb3Rpb25cbiRjYXJib24tLWVhc2Utb3V0OiBjdWJpYy1iZXppZXIoMC4yLCAwLCAxLCAwLjkpO1xuXG4vLy8gRGVmYXVsdCBlYXNpbmcgZm9yIGNvbXBvbmVudHNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEB0eXBlIEZ1bmN0aW9uXG4vLy8gQGdyb3VwIGdsb2JhbC1tb3Rpb25cbiRjYXJib24tLXN0YW5kYXJkLWVhc2luZzogY3ViaWMtYmV6aWVyKDAuMiwgMCwgMC4zOCwgMC45KTtcblxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIGdsb2JhbC1tb3Rpb25cbi8vLyBAYWxpYXMgZHVyYXRpb24tLWZhc3QtMDJcbiR0cmFuc2l0aW9uLS1iYXNlOiAkZHVyYXRpb24tLWZhc3QtMDI7XG5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4vLy8gQGFsaWFzIGR1cmF0aW9uLS1tb2RlcmF0ZS0wMlxuJHRyYW5zaXRpb24tLWV4cGFuc2lvbjogJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMjtcblxuLy8vIEdldCB0aGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24gZm9yIGEgZ2l2ZW4gZWFzaW5nIGFuZCBtb3Rpb24gbW9kZS5cbi8vLyBFYXNpbmdzIHRoYXQgYXJlIGN1cnJlbnRseSBzdXBwb3J0ZWQgaW5jbHVkZTogYHN0YW5kYXJkYCwgYGVudHJhbmNlYCwgYW5kIGBleGl0YC5cbi8vLyBXZSBhbHNvIG9mZmVyIHR3byBtb2RlczogYHByb2R1Y3RpdmVgIGFuZCBgZXhwcmVzc2l2ZWAuXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgZWFzaW5nIGN1cnZlIHRvIGFwcGx5XG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtb2RlIFtwcm9kdWN0aXZlXSAtIFRoZSBtb2RlIGZvciB0aGUgZWFzaW5nIGN1cnZlIHRvIHVzZVxuLy8vIEBwYXJhbSB7TWFwfSAkZWFzaW5ncyBbJGNhcmJvbi0tZWFzaW5nc10gLSBNYXAgb2YgY29tcG9uZW50IGVhc2luZ3Ncbi8vLyBAcmV0dXJuIHtGdW5jdGlvbn0gQSBDU1MgY3ViaWMtYmV6aWVyIGZ1bmN0aW9uXG4vLy8gQGdyb3VwIGdsb2JhbC1tb3Rpb25cbkBmdW5jdGlvbiBtb3Rpb24oJG5hbWUsICRtb2RlOiBwcm9kdWN0aXZlLCAkZWFzaW5nczogJGNhcmJvbi0tZWFzaW5ncykge1xuICBAcmV0dXJuIGNhcmJvbi0tbW90aW9uKCRuYW1lLCAkbW9kZSwgJGVhc2luZ3MpO1xufVxuXG4vLy8gR2V0IHRoZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiBmb3IgYSBnaXZlbiBlYXNpbmcgYW5kIG1vdGlvbiBtb2RlLlxuLy8vIEVhc2luZ3MgdGhhdCBhcmUgY3VycmVudGx5IHN1cHBvcnRlZCBpbmNsdWRlOiBzdGFuZGFyZCwgZW50cmFuY2UsIGFuZCBleGl0LlxuLy8vIFdlIGFsc28gb2ZmZXIgdHdvIG1vZGVzOiBwcm9kdWN0aXZlIGFuZCBleHByZXNzaXZlLlxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGVhc2luZyBjdXJ2ZSB0byBhcHBseVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbW9kZSAtIFRoZSBtb2RlIGZvciB0aGUgZWFzaW5nIGN1cnZlIHRvIHVzZVxuLy8vIEBncm91cCBnbG9iYWwtbW90aW9uXG4vLy8gQGFsaWFzIGNhcmJvbi0tbW90aW9uXG5AbWl4aW4gbW90aW9uKCRuYW1lLCAkbW9kZSkge1xuICBAaW5jbHVkZSBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGUpO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL2J1dHRvbi9idXR0b24nO1xuQGltcG9ydCAnLi4vZm9ybS9mb3JtJztcbkBpbXBvcnQgJy4uL2xvYWRpbmcvbG9hZGluZyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy90eXBlL3N0eWxlcyc7XG5cbi8vLyBGaWxlIHVwbG9hZGVyIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBmaWxlLXVwbG9hZGVyXG5AbWl4aW4gZmlsZS11cGxvYWRlciB7XG4gIC4jeyRwcmVmaXh9LS1maWxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlLS1pbnZhbGlkIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG4gIH1cblxuICAvLyBUT0RPOiBzeW5jIHdpdGggdHlwZVxuICAuI3skcHJlZml4fS0tZmlsZS0tbGFiZWwge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xuICB9XG5cbiAgLy8gVGhpcyBjbGFzcyBpcyBvZiBvbGQgbWFya3VwIHdpdGggXCJzZWxlY3QgZmlsZVwiIGJ1dHRvblxuICAvLyBOZXcgY29kZSBzaG91bGQgdXNlIGxpbmstc3R5bGUgXCJzZWxlY3QgZmlsZVwiIFVJIChgLmJ4LS1maWxlLWJyb3dzZS1idG5gKVxuICAvLyBUT0RPOiBkZXByZWNhdGUgdGhpcyBibG9ja1xuICAuI3skcHJlZml4fS0tZmlsZS1idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNjRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZS1icm93c2UtYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiByZW0oMzIwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgY29sb3I6ICRsaW5rLTAxO1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgb3V0bGluZTogMnB4IHNvbGlkICRpbnRlcmFjdGl2ZS0wMztcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJjphY3RpdmU6dmlzaXRlZCB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGUtYnJvd3NlLWJ0bi0tZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogbm8tZHJvcDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZS1icm93c2UtYnRuLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tZmlsZV9fZHJvcC1jb250YWluZXIge1xuICAgIGJvcmRlcjogMXB4IGRhc2hlZCAkZGlzYWJsZWQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGFiZWwtZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICB9XG5cbiAgLy8gRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG4gIC4jeyRwcmVmaXh9LS1maWxlLWJ0biB+IC4jeyRwcmVmaXh9LS1maWxlLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogJGNhcmJvbi0tc3BhY2luZy0wNjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4gfiAuI3skcHJlZml4fS0tZmlsZS1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZSAuI3skcHJlZml4fS0tZmlsZS1jb250YWluZXIsXG4gIC4jeyRwcmVmaXh9LS1maWxlIH4gLiN7JHByZWZpeH0tLWZpbGUtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGVfX3NlbGVjdGVkLWZpbGUge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgZ3JpZC1nYXA6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1heC13aWR0aDogcmVtKDMyMHB4KTtcbiAgICBtaW4taGVpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1sb2FkaW5nIHtcbiAgICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICAgIG1hcmdpbi1yaWdodDogLSRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWlubGluZS1sb2FkaW5nX19hbmltYXRpb24gLiN7JHByZWZpeH0tLWxvYWRpbmcge1xuICAgICAgLy8gVmFuaWxsYSBtYXJrdXAgaGFzIGAuYngtLWlubGluZS1sb2FkaW5nX19hbmltYXRpb25gIHdoaWNoIGlzIHVzZWQgZm9yIGBtYXJnaW4tcmlnaHRgIGFkanVzdG1lbnRcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tZmlsZS1maWxlbmFtZSB7XG4gICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZV9fc2VsZWN0ZWQtZmlsZS0tZmllbGQge1xuICAgIG1pbi1oZWlnaHQ6IHJlbSg0MHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zZWxlY3RlZC1maWxlLS1zbSB7XG4gICAgbWluLWhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLy8gVE9ETzogZGVwcmVjYXRlIHRoaXMgYmxvY2tcbiAgLiN7JHByZWZpeH0tLWZpbGVfX3NlbGVjdGVkLWZpbGUtLWludmFsaWRfX3dyYXBwZXIge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2ludmFsaWQnKTtcblxuICAgIG1heC13aWR0aDogcmVtKDMyMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcblxuICAgIG91dGxpbmUtd2lkdGg6IDFweDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zZWxlY3RlZC1maWxlLS1pbnZhbGlkIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdpbnZhbGlkJyk7XG5cbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTA1IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZV9fc2VsZWN0ZWQtZmlsZS0taW52YWxpZCAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudCB7XG4gICAgcGFkZGluZy10b3A6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zZWxlY3RlZC1maWxlLS1pbnZhbGlkXG4gICAgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnRfX3RpdGxlLFxuICAuI3skcHJlZml4fS0tZmlsZV9fc2VsZWN0ZWQtZmlsZS0taW52YWxpZFxuICAgIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50X19zdXBwbGVtZW50IHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdsYWJlbC0wMScpO1xuXG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGVfX3NlbGVjdGVkLWZpbGUtLWludmFsaWRcbiAgICAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudF9fdGl0bGUge1xuICAgIGNvbG9yOiAkdGV4dC1lcnJvcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zZWxlY3RlZC1maWxlLS1pbnZhbGlkXG4gICAgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnRfX3N1cHBsZW1lbnQge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC8vIFRPRE86IGRlcHJlY2F0ZVxuICAuI3skcHJlZml4fS0tZmlsZV9fc2VsZWN0ZWQtZmlsZS0taW52YWxpZCArIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdjYXB0aW9uLTAxJyk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtaGVpZ2h0OiByZW0oMjAwcHgpO1xuICAgIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDMgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjb2xvcjogJHRleHQtZXJyb3I7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zZWxlY3RlZC1maWxlLS1pbnZhbGlkXG4gICAgKyAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudFxuICAgIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50X19zdXBwbGVtZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZV9fc3RhdGUtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1pbi13aWR0aDogMS41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG5cbiAgICAuI3skcHJlZml4fS0tbG9hZGluZ19fc3ZnIHtcbiAgICAgIHN0cm9rZTogJHVpLTA1O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zdGF0ZS1jb250YWluZXIgLiN7JHByZWZpeH0tLWZpbGUtY29tcGxldGUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmaWxsOiAkaW50ZXJhY3RpdmUtMDQ7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2JvcmRlcicpO1xuICAgIH1cblxuICAgIC8vIGZvciBjaGVja21hcmsgY29udHJhc3RcbiAgICBbZGF0YS1pY29uLXBhdGg9J2lubmVyLXBhdGgnXSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgZmlsbDogJGljb24tMDM7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGVfX3N0YXRlLWNvbnRhaW5lciAuI3skcHJlZml4fS0tZmlsZS1pbnZhbGlkIHtcbiAgICB3aWR0aDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBoZWlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIGZpbGw6ICRzdXBwb3J0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGVfX3N0YXRlLWNvbnRhaW5lciAuI3skcHJlZml4fS0tZmlsZS1jbG9zZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBoZWlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZpbGw6ICRpY29uLTAxO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdib3JkZXInKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZV9fc3RhdGUtY29udGFpbmVyIC4jeyRwcmVmaXh9LS1maWxlLWNsb3NlIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiAkaWNvbi0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1maWxlX19zdGF0ZS1jb250YWluZXIgLiN7JHByZWZpeH0tLWlubGluZS1sb2FkaW5nX19hbmltYXRpb24ge1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZmlsZV9fZHJvcC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGhlaWdodDogcmVtKDk2cHgpO1xuICAgIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDFweCBkYXNoZWQgJHVpLTA0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZpbGVfX2Ryb3AtY29udGFpbmVyLS1kcmFnLW92ZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICRpbnRlcmFjdGl2ZS0wMztcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdmaWxlLXVwbG9hZGVyJykge1xuICBAaW5jbHVkZSBmaWxlLXVwbG9hZGVyO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbi8vLyBDaGVja2JveCBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgY2hlY2tib3hcbkBtaXhpbiBjaGVja2JveCB7XG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBjaGVja2JveGVzXG4gIC4jeyRwcmVmaXh9LS1mb3JtLWl0ZW0uI3skcHJlZml4fS0tY2hlY2tib3gtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgfVxuXG4gIC8vIFNwYWNpbmcgYWJvdmUgY29sbGVjdGlvbiBvZiBjaGVja2JveGVzXG4gIC4jeyRwcmVmaXh9LS1mb3JtLWl0ZW0uI3skcHJlZml4fS0tY2hlY2tib3gtd3JhcHBlcjpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oM3B4KTtcbiAgfVxuXG4gIC8vIFNoaWZ0IGNvbGxlY3Rpb24gb2YgY2hlY2tib3hlcyB1cCBpZiBsYWJlbCBpcyBwcmVzZW50XG4gIC8vIHRvIGFjY291bnQgZm9yIHRoZSAycHggdG9wIG1hcmdpbiBmb3IgdGhlIGZpcnN0IGNoZWNrYm94XG4gIC4jeyRwcmVmaXh9LS1sYWJlbCArIC4jeyRwcmVmaXh9LS1mb3JtLWl0ZW0uI3skcHJlZml4fS0tY2hlY2tib3gtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogLSN7JGNhcmJvbi0tc3BhY2luZy0wMX07XG4gIH1cblxuICAvLyBTcGFjaW5nIGJlbG93IGNvbGxlY3Rpb24gb2YgY2hlY2tib3hlc1xuICAuI3skcHJlZml4fS0tZm9ybS1pdGVtLiN7JHByZWZpeH0tLWNoZWNrYm94LXdyYXBwZXI6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oM3B4KTtcbiAgfVxuXG4gIC8vIFZpc3VhbGx5LCB3ZSdsbCBoaWRlIHRoZSBjaGVja2JveCBpbnB1dCBhbmQgY3JlYXRlIG91ciBvd24gc3R5bGVkIHZlcnNpb25cbiAgLy8gdG8gbWF0Y2ggdGhlIHNwZWNzLlxuICAuI3skcHJlZml4fS0tY2hlY2tib3gge1xuICAgIEBpbmNsdWRlIGhpZGRlbjtcbiAgfVxuXG4gIC8vIFRoZSBsYWJlbCBjb3JyZXNwb25kcyB0byB0aGUgY29udGVudCBpbnNpZGUgb2YgdGhlIGBsYWJlbGAgdGFnLiBTaW5jZSB3ZSdyZVxuICAvLyBjcmVhdGluZyBvdXIgb3duIGNoZWNrYm94IHN0eWxlLCB3ZSdsbCBuZWVkIHRvIHBvc2l0aW9uIHRoaXMgaW4gb3JkZXIgdG9cbiAgLy8gYWNjb21vZGF0ZSB0aGUgc3BhY2luZyBuZWVkZWQgZm9yIHRoZSBjaGVja2JveC5cbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtaW4taGVpZ2h0OiByZW0oMjRweCk7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMjBweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWwtdGV4dCB7XG4gICAgLy8gQWRkIGV4dHJhIHNwYWNpbmcgd2hlbiBsYWJlbCBpcyBwcmVzZW50XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oNnB4KTtcbiAgfVxuXG4gIC8vIFJlcXVpcmVkIGJlY2F1c2UgYCRjc3MtLXJlc2V0OiB0cnVlYCBjYW5ub3QgY3VycmVudGx5IGFwcGx5IHRvIHRoaXMgYDo6YmVmb3JlYCBhbmQgYDo6YWZ0ZXJgXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWw6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gU3BhY2luZyBmb3IgcHJlc2VudGF0aW9uYWwgY2hlY2tib3hcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIFdlIG5lZWQgdG8gcG9zaXRpb24gdGhlIHBzZXVkby1lbGVtZW50IGFic29sdXRlbHkgaW4gdGhlIHNwYWNlIHRoYXQgd2UndmVcbiAgICAvLyBjcmVhdGVkIHdpdGggdGhlIHBhZGRpbmcgZnJvbSB0aGUgbGFiZWwgaXRzZWxmLiBXZSBwb3NpdGlvbiBvbmx5IHdpdGhcbiAgICAvLyBgdG9wYCBzaW5jZSB3ZSBkb24ndCB3YW50IHRoZSBjaGVja2JveCB0byBiZSBjZW50ZXJlZCB2ZXJ0aWNhbGx5IHdpdGggdGhlXG4gICAgLy8gdGV4dCBvdmVyZmxvd3MuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtKDJweCk7XG4gICAgbGVmdDogMDtcblxuICAgIC8vIEFjY29yZGluZyB0byB0aGUgc3BlYywgd2UnbGwgd2FudCB0aGUgYm91bmRpbmcgYm94IGZvciBvdXIgY2hlY2tib3ggdG9cbiAgICAvLyBiZSAxNnB4LiBUaGUgYm9yZGVyIHNpemUgd2lsbCBiZSB3aGF0IHdpbGwgYmUgdXBkYXRlZCBkdXJpbmcgdGhlXG4gICAgLy8gZGlmZmVyZW50IGNoZWNrYm94IHN0YXRlcy5cbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICAgIGhlaWdodDogcmVtKDE2cHgpO1xuICAgIG1hcmdpbjogcmVtKDJweCk7XG5cbiAgICAvLyBDaGVja2JveGVzIHdpdGggYSBiYWNrZ3JvdW5kIGNvbG9yIGxvb2sgdmlzdWFsbHkgb2ZmIGFnYWluc3QgYSBwYXJlbnQgY29udGFpbmVyLlxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRpY29uLTAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIENyZWF0ZSB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgY2hlY2sgaW4gdGhlIGBhZnRlcmAgcHNldWRvLWVsZW1lbnRcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtKDhweCk7XG4gICAgbGVmdDogcmVtKDZweCk7XG4gICAgd2lkdGg6IHJlbSg5cHgpO1xuICAgIGhlaWdodDogcmVtKDVweCk7XG4gICAgbWFyZ2luLXRvcDogcmVtKC0zcHgpO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRpbnZlcnNlLTAxO1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGludmVyc2UtMDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gQ2hlY2tlZFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAvLyBVcGRhdGUgcHJvcGVydGllcyBmb3IgY2hlY2tlZCBjaGVja2JveFxuICAuI3skcHJlZml4fS0tY2hlY2tib3g6Y2hlY2tlZCArIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3g6aW5kZXRlcm1pbmF0ZSArIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J3RydWUnXTo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J21peGVkJ106OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGljb24tMDE7XG4gICAgYm9yZGVyLWNvbG9yOiAkaWNvbi0wMTtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgfVxuXG4gIC8vIERpc3BsYXkgdGhlIGNoZWNrXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDpjaGVja2VkICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjphZnRlcixcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsW2RhdGEtY29udGFpbmVkLWNoZWNrYm94LXN0YXRlPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtNDVkZWcpO1xuICB9XG5cbiAgLy8gSW5kZXRlcm1pbmF0ZSBzeW1ib2xcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94OmluZGV0ZXJtaW5hdGUgKyAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWw6OmFmdGVyLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J21peGVkJ106OmFmdGVyIHtcbiAgICB0b3A6IHJlbSgxMXB4KTtcbiAgICB3aWR0aDogcmVtKDhweCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRpbnZlcnNlLTAxO1xuICAgIGJvcmRlci1sZWZ0OiAwIHNvbGlkICRpbnZlcnNlLTAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEZvY3VzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC8vIFVuY2hlY2tlZFxuICAuI3skcHJlZml4fS0tY2hlY2tib3g6Zm9jdXMgKyAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWw6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsX19mb2N1czo6YmVmb3JlLFxuICAvLyBDaGVja2VkXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDpjaGVja2VkOmZvY3VzICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbFtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1zdGF0ZT0ndHJ1ZSddLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsX19mb2N1czo6YmVmb3JlLFxuICAvLyBJbmRldGVybWluYXRlXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDppbmRldGVybWluYXRlOmZvY3VzICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbFtkYXRhLWNvbnRhaW5lZC1jaGVja2JveC1zdGF0ZT0nbWl4ZWQnXS4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbF9fZm9jdXM6OmJlZm9yZSB7XG4gICAgLy8gTXVzdCB1c2UgYm94LXNoYWRvdyBmb3IgYXBwZWFyYW5jZSBvZiBtdWx0aXBsZSBib3JkZXJzIHdpdGggcm91bmRlZCBjb3JuZXJzLlxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAkaW52ZXJzZS0wMSwgMCAwIDAgNHB4ICRmb2N1cztcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBoaWdobGlnaHRUZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgaGlnaGxpZ2h0VGV4dDtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIERpc2FibGVkXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDpkaXNhYmxlZCArIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbCxcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsW2RhdGEtY29udGFpbmVkLWNoZWNrYm94LWRpc2FibGVkPSd0cnVlJ10ge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDpkaXNhYmxlZCArIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtZGlzYWJsZWQ9J3RydWUnXTo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDpjaGVja2VkOmRpc2FibGVkICsgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jaGVja2JveDppbmRldGVybWluYXRlOmRpc2FibGVkXG4gICAgKyAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWw6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsW2RhdGEtY29udGFpbmVkLWNoZWNrYm94LXN0YXRlPSd0cnVlJ11bZGF0YS1jb250YWluZWQtY2hlY2tib3gtZGlzYWJsZWQ9J3RydWUnXTo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWxbZGF0YS1jb250YWluZWQtY2hlY2tib3gtc3RhdGU9J21peGVkJ11bZGF0YS1jb250YWluZWQtY2hlY2tib3gtZGlzYWJsZWQ9J3RydWUnXTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNrZWxldG9uXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWwtdGV4dC4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICB3aWR0aDogcmVtKDEwMHB4KTtcbiAgICBoZWlnaHQ6ICRzcGFjaW5nLTA1O1xuXG4gICAgLy8gQWRkIGV4dHJhIHNwYWNpbmcgd2hlbiBsYWJlbCBpcyBwcmVzZW50XG4gICAgbWFyZ2luOiBhdXRvIDAgYXV0byByZW0oNnB4KTtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdjaGVja2JveCcpIHtcbiAgQGluY2x1ZGUgY2hlY2tib3g7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGlzdCBCb3hcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0taGVscGVycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uL3RhZy9taXhpbnMnO1xuXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGxpc3QtYm94XG4kbGlzdC1ib3gtd2lkdGg6IDEwMCU7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbGlzdC1ib3hcbiRsaXN0LWJveC1oZWlnaHQ6IHJlbSg0MHB4KTtcblxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsaXN0LWJveFxuJGxpc3QtYm94LWlubGluZS1oZWlnaHQ6ICRsaXN0LWJveC1oZWlnaHQ7XG5cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbGlzdC1ib3hcbiRsaXN0LWJveC1tZW51LXdpZHRoOiByZW0oMzAwcHgpO1xuXG4vLy8gTGlzdCBib3ggc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGxpc3QtYm94XG5AbWl4aW4gbGlzdGJveCB7XG4gIC8vIFRoZSBvdmVyYWxsIGNvbnRhaW5lciBlbGVtZW50IGZvciBhIGBsaXN0LWJveGAuIEhhcyB0d28gdmFyaWFudHMsXG4gIC8vIGBkaXNhYmxlZGAgYW5kIGBpbmxpbmVgLlxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3dyYXBwZXItLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgZ3JpZC1nYXA6IHJlbSg0cHgpO1xuICAgIGdyaWQtdGVtcGxhdGU6IGF1dG8gYXV0byAvIGF1dG8gYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbGFiZWwsXG4gICAgLiN7JHByZWZpeH0tLWZvcm1fX2hlbHBlci10ZXh0LFxuICAgIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tZm9ybV9faGVscGVyLXRleHQge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6ICRsaXN0LWJveC13aWR0aDtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBtYXgtaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS14bCB7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgbWF4LWhlaWdodDogcmVtKDQ4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1zbSB7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgbWF4LWhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZDpob3Zlci4jeyRwcmVmaXh9LS1saXN0LWJveC0tbGlnaHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveCAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLy8gaW52YWxpZCBzdGF0ZXNcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19pbnZhbGlkLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ludmFsaWQtaWNvbi0td2FybmluZyB7XG4gICAgZmlsbDogJHN1cHBvcnQtMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ludmFsaWQtaWNvbi0td2FybmluZ1xuICAgIHBhdGhbZGF0YS1pY29uLXBhdGg9J2lubmVyLXBhdGgnXSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBmaWxsOiAkY2FyYm9uX19ibGFjay0xMDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXSAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLXdhcm5pbmdcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYXJib24tLW1pbmktdW5pdHMoOCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdLiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmVcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYXJib24tLW1pbmktdW5pdHMoNyk7XG4gIH1cblxuICAvLyBMaWdodCB2YXJpYXRpb24gZm9yICdsaXN0LWJveCdcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1saWdodCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUge1xuICAgIGJhY2tncm91bmQ6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tbGlnaHQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGRlY29yYXRpdmUtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWxpZ2h0LiN7JHByZWZpeH0tLWxpc3QtYm94LS1leHBhbmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZSBmb3IgYGxpc3QtYm94YFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWxpZ2h0LiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCxcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQ6Zm9jdXMge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQuI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbGFiZWwge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pY29uID4gc3ZnIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgR3JheVRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGZpbGw6IEdyYXlUZXh0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCxcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaWNvbiB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0sXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW06aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWRcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbS0taGlnaGxpZ2h0ZWQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3NlbGVjdGlvbjpob3ZlciB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC8vIGRpc2FibGVkICYmIGludmFsaWRcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wOTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXS4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgcGFkZGluZy1yaWdodDogY2FyYm9uLS1taW5pLXVuaXRzKDQpO1xuICB9XG5cbiAgLy8gSW5saW5lIHZhcmlhbnQgZm9yIGEgYGxpc3QtYm94YFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmUuI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmUuI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZFthcmlhLWV4cGFuZGVkPSd0cnVlJ10ge1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZS4jeyRwcmVmaXh9LS1saXN0LWJveC0tZXhwYW5kZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgcGFkZGluZzogMCBjYXJib24tLW1pbmktdW5pdHMoNCkgMCAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmVcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaWNvbiB7XG4gICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9faW52YWxpZC1pY29uIHtcbiAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbGFiZWwge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0taW5saW5lIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW5saW5lIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQge1xuICAgIG1heC13aWR0aDogcmVtKDQ4MHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW5saW5lIC5ieC0tbGlzdC1ib3hfX21lbnUge1xuICAgIG1pbi13aWR0aDogcmVtKDI4OHB4KTtcbiAgICBtYXgtd2lkdGg6IHJlbSg0ODBweCk7XG4gIH1cblxuICAvLyBUaGUgZmllbGQgd2UgdXNlIGZvciBpbnB1dCwgc2hvd2luZyBzZWxlY3Rpb24sIGV0Yy5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLy8gQWNjb3VudCBmb3IgdGhlIGJvcmRlciBpbiBgLmJ4LS1saXN0LWJveGBcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDFweCk7XG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA5IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBCdXR0b25UZXh0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQ6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCBCdXR0b25UZXh0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRbZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAvLyBwb3B1bGF0ZWQgaW5wdXQgZmllbGRcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogY2FyYm9uLS1taW5pLXVuaXRzKDkpO1xuICB9XG5cbiAgLy8gaW52YWxpZCAmJiBwb3B1bGF0ZWQgaW5wdXQgZmllbGRcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94W2RhdGEtaW52YWxpZF1cbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQsXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0td2FybmluZ1xuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCB7XG4gICAgLy8gdG8gYWNjb3VudCBmb3IgY2xlYXIgaW5wdXQgYnV0dG9uIG91dGxpbmVcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oOThweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dFxuICAgICsgLiN7JHByZWZpeH0tLWxpc3QtYm94X19pbnZhbGlkLWljb24sXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0td2FybmluZ1xuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dFxuICAgICsgLiN7JHByZWZpeH0tLWxpc3QtYm94X19pbnZhbGlkLWljb24ge1xuICAgIC8vIHRvIGFjY291bnQgZm9yIGNsZWFyIGlucHV0IGJ1dHRvbiBvdXRsaW5lXG4gICAgcmlnaHQ6IHJlbSg2NnB4KTtcbiAgfVxuXG4gIC8vIGVtcHR5IGlucHV0IGZpZWxkXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLWVtcHR5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICB9XG5cbiAgLy8gaW52YWxpZCAmJiBlbXB0eSBpbnB1dCBmaWVsZFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hbZGF0YS1pbnZhbGlkXVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tZW1wdHksXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0td2FybmluZ1xuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tZW1wdHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhcmJvbi0tbWluaS11bml0cyg5KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZFxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1lbXB0eVxuICAgICsgLiN7JHByZWZpeH0tLWxpc3QtYm94X19pbnZhbGlkLWljb24sXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0td2FybmluZ1xuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGRcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tZW1wdHlcbiAgICArIC4jeyRwcmVmaXh9LS1saXN0LWJveF9faW52YWxpZC1pY29uIHtcbiAgICAvLyB0byBhY2NvdW50IGZvciBjbGVhciBpbnB1dCBidXR0b24gb3V0bGluZVxuICAgIHJpZ2h0OiByZW0oNDBweCk7XG4gIH1cblxuICAvLyBMYWJlbCBmb3IgYSBgbGlzdC1ib3hfX2ZpZWxkYFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2xhYmVsIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLy8gTWVudSBzdGF0dXMgaW5zaWRlIG9mIGEgYGxpc3QtYm94X19maWVsZGBcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWljb24gPiBzdmcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmaWxsOiAkaWNvbi0wMTtcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBmaWxsOiBCdXR0b25UZXh0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pY29uLS1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLy8gU2VsZWN0aW9uIGluZGljYXRvciBmb3IgYSBgbGlzdC1ib3hfX2ZpZWxkYFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3NlbGVjdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIC8qIHRvIHByZXNlcnZlIC41cmVtIHNwYWNlIGJldHdlZW4gaWNvbnMgYWNjb3JkaW5nIHRvIHNwZWMgdG9wL3RyYW5zZm9ybSB1c2VkIHRvIGNlbnRlciB0aGUgY29tYm9ib3ggY2xlYXIgc2VsZWN0aW9uIGljb24gaW4gSUUxMSAqL1xuICAgIHJpZ2h0OiByZW0oMzNweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiByZW0oMzBweCk7XG4gICAgaGVpZ2h0OiByZW0oMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb24gPiBzdmcge1xuICAgIGZpbGw6ICRpY29uLTAyO1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3NlbGVjdGlvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC8vIE1vZGlmaWVyIGZvciBhIHNlbGVjdGlvbiB0byBzaG93IHRoYXQgbXVsdGlwbGUgc2VsZWN0aW9ucyBoYXZlIGJlZW4gbWFkZVxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3NlbGVjdGlvbi0tbXVsdGkge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRvcDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogcmVtKDI0cHgpO1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDEwcHgpO1xuICAgIHBhZGRpbmc6IHJlbSg4cHgpO1xuICAgIC8vIEFsaWduIHdpdGggaG92ZXIgY2lyY2xlIG9mIFggYnV0dG9uXG4gICAgcGFkZGluZy1yaWdodDogcmVtKDJweCk7XG4gICAgY29sb3I6ICRpbnZlcnNlLTAxO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnZlcnNlLTAyO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgxMnB4KTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX3NlbGVjdGlvbi0tbXVsdGkgPiBzdmcge1xuICAgIHdpZHRoOiByZW0oMjBweCk7XG4gICAgaGVpZ2h0OiByZW0oMjBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSg0cHgpO1xuICAgIHBhZGRpbmc6IHJlbSgycHgpO1xuICAgIGZpbGw6ICRpbnZlcnNlLTAxO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItc2Vjb25kYXJ5O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBmaWxsOiBCdXR0b25UZXh0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb24tLW11bHRpIHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGRpc2FibGVkLTAyLCAkZGlzYWJsZWQtMDEpO1xuXG4gICAgPiBzdmcge1xuICAgICAgZmlsbDogJGRpc2FibGVkLTAxO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgR3JheVRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGZpbGw6IEdyYXlUZXh0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fc2VsZWN0aW9uLS1tdWx0aTpob3ZlciB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC8vIERlc2NlbmRhbnQgb2YgYSBgbGlzdC1ib3hgIHRoYXQgZGlzcGxheXMgYSBsaXN0IG9mIG9wdGlvbnMgdG8gc2VsZWN0XG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudSB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygpO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogeignZHJvcGRvd24nKTtcbiAgICB3aWR0aDogJGxpc3QtYm94LXdpZHRoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIHJlbW92ZSBkZWZhdWx0IGJyb3dzZXIgZm9jdXMgaW4gZmlyZWZveFxuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnYm9yZGVyJyk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94XG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZFthcmlhLWV4cGFuZGVkPSdmYWxzZSddXG4gICAgKyAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUge1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudSB7XG4gICAgLy8gNDBweCBpdGVtIGhlaWdodCAqIDUuNSBpdGVtcyBzaG93blxuICAgIG1heC1oZWlnaHQ6IHJlbSgyMjBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkLiN7JHByZWZpeH0tLWxpc3QtYm94LS14bFxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudSB7XG4gICAgLy8gNDhweCBpdGVtIGhlaWdodCAqIDUuNSBpdGVtcyBzaG93blxuICAgIG1heC1oZWlnaHQ6IHJlbSgyNjRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkLiN7JHByZWZpeH0tLWxpc3QtYm94LS1zbVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudSB7XG4gICAgLy8gMzJweCBpdGVtIGhlaWdodCAqIDUuNSBpdGVtcyBzaG93blxuICAgIG1heC1oZWlnaHQ6IHJlbSgxNzZweCk7XG4gIH1cblxuICAvLyBEZXNjZW5kYW50IG9mIGEgYGxpc3QtYm94X19tZW51YCB0aGF0IHJlcHJlc2VudHMgYSBzZWxlY3Rpb24gZm9yIGEgY29udHJvbFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3RlZC11aTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLXNtIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0teGwgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0ge1xuICAgIGhlaWdodDogcmVtKDQ4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWxpZ2h0IC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdGVkLWxpZ2h0LXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZFxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb246aG92ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtOmZpcnN0LW9mLXR5cGVcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtOmhvdmVyXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW06aG92ZXJcbiAgICArIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW06aG92ZXJcbiAgICArIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIHBhZGRpbmc6IHJlbSgxMXB4KSAwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDY7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHVpLTAzO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiByZW0oMTFweCkgcmVtKDE2cHgpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLTNweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1zbSAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDdweCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg3cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS14bCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uIHtcbiAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDE1cHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTVweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW06aG92ZXJcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uLFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24ge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWlubGluZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24ge1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtLS1oaWdobGlnaHRlZCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0zcHg7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWhpZ2hsaWdodGVkXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbixcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWhpZ2hsaWdodGVkXG4gICAgKyAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24ge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWhpZ2hsaWdodGVkXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvbiB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWFjdGl2ZSB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3RlZC11aTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLWxpZ2h0IC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtLS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3RlZC1saWdodC11aTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkc2VsZWN0ZWQtbGlnaHQtdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbS0tYWN0aXZlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24ge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC8vIEhpZGUgdG9wIGJvcmRlciBpZiBwcmV2aW91cyBsaXN0IGl0ZW0gaXMgc2VsZWN0ZWRcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWFjdGl2ZVxuICAgICsgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1cbiAgICA+IC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19vcHRpb24ge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX3NlbGVjdGVkLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogcmVtKDE2cHgpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS1pbmxpbmVcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fc2VsZWN0ZWQtaWNvbiB7XG4gICAgcmlnaHQ6IHJlbSg4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW0tLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtX19zZWxlY3RlZC1pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pdGVtIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbSAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWwtdGV4dCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbiAgLy8gRHJvcGRvd24gdG9wIG9yaWVudGF0aW9uIG1vZGlmaWVyc1xuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLXVwIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudSB7XG4gICAgYm90dG9tOiAyLjVyZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLXVwLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1zbVxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudSxcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94LS11cC4jeyRwcmVmaXh9LS1saXN0LWJveC0tc21cbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUge1xuICAgIGJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LWJveC0tdXAuI3skcHJlZml4fS0tZHJvcGRvd24tLXhsXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LFxuICAuI3skcHJlZml4fS0tbGlzdC1ib3gtLXVwLiN7JHByZWZpeH0tLWxpc3QtYm94LS14bFxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudSB7XG4gICAgYm90dG9tOiAzcmVtO1xuICB9XG5cbiAgLy8gVHdlYWtzIGZvciBkZXNjZW5kYW50c1xuICAvLyBXaGVuIGhhbmRsaW5nIGlucHV0LCB3ZSBuZWVkIHRvIHRhcmdldCBub2RlcyB0aGF0IHNwZWNpZmljYWxseSBvcHQtaW4gdG9cbiAgLy8gdGhlIHR5cGUgdGV4dCBpbiBvcmRlciB0byBtYWtlIHN1cmUgdGhlIHRleHQgaW5wdXQgaXMgc3R5bGVkXG4gIC8vIGNvcnJlY3RseS5cbiAgLy8gVE9ETzogcmVtb3ZlIFtyb2xlPSdjb21ib2JveCddIGluIHYxMVxuICAuI3skcHJlZml4fS0tbGlzdC1ib3ggaW5wdXRbcm9sZT0nY29tYm9ib3gnXSxcbiAgLiN7JHByZWZpeH0tLWxpc3QtYm94IGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnbGlzdC1ib3gnKSB7XG4gIEBpbmNsdWRlIGxpc3Rib3g7XG59XG4iLCIvLyBDb2RlIGdlbmVyYXRlZCBieSBAY2FyYm9uL2NvbG9ycy4gRE8gTk9UIEVESVQuXG4vL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cbi8vLyBEZWZpbmUgY29sb3IgdmFyaWFibGVzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9jb2xvcnNcbi8vLyBAZGVwcmVjYXRlZCBVc2UgYCRjYXJib24tLWNvbG9yc2AgZ29pbmcgZm9yd2FyZFxuQG1peGluIGlibS0tY29sb3JzKCkge1xuICAkaWJtLWNvbG9yX19ibGFjay0xMDA6ICMwMDAwMDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fYmx1ZS0xMDogI2VkZjVmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ibHVlLTIwOiAjZDBlMmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2JsdWUtMzA6ICNhNmM4ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fYmx1ZS00MDogIzc4YTlmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ibHVlLTUwOiAjNDU4OWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2JsdWUtNjA6ICMwZjYyZmUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fYmx1ZS03MDogIzAwNDNjZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ibHVlLTgwOiAjMDAyZDljICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2JsdWUtOTA6ICMwMDFkNmMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fYmx1ZS0xMDA6ICMwMDExNDEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY29vbC1ncmF5LTEwOiAjZjJmNGY4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2Nvb2wtZ3JheS0yMDogI2RkZTFlNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jb29sLWdyYXktMzA6ICNjMWM3Y2QgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY29vbC1ncmF5LTQwOiAjYTJhOWIwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2Nvb2wtZ3JheS01MDogIzg3OGQ5NiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jb29sLWdyYXktNjA6ICM2OTcwNzcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY29vbC1ncmF5LTcwOiAjNGQ1MzU4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2Nvb2wtZ3JheS04MDogIzM0M2EzZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jb29sLWdyYXktOTA6ICMyMTI3MmEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY29vbC1ncmF5LTEwMDogIzEyMTYxOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jeWFuLTEwOiAjZTVmNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2N5YW4tMjA6ICNiYWU2ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY3lhbi0zMDogIzgyY2ZmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jeWFuLTQwOiAjMzNiMWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2N5YW4tNTA6ICMxMTkyZTggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY3lhbi02MDogIzAwNzJjMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jeWFuLTcwOiAjMDA1MzlhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2N5YW4tODA6ICMwMDNhNmQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fY3lhbi05MDogIzAxMjc0OSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19jeWFuLTEwMDogIzA2MTcyNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmF5LTEwOiAjZjRmNGY0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyYXktMjA6ICNlMGUwZTAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fZ3JheS0zMDogI2M2YzZjNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmF5LTQwOiAjYThhOGE4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyYXktNTA6ICM4ZDhkOGQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fZ3JheS02MDogIzZmNmY2ZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmF5LTcwOiAjNTI1MjUyICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX2dyYXktODA6ICMzOTM5MzkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fZ3JheS05MDogIzI2MjYyNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmF5LTEwMDogIzE2MTYxNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi0xMDogI2RlZmJlNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi0yMDogI2E3ZjBiYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi0zMDogIzZmZGM4YyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi00MDogIzQyYmU2NSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi01MDogIzI0YTE0OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi02MDogIzE5ODAzOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi03MDogIzBlNjAyNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi04MDogIzA0NDMxNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi05MDogIzAyMmQwZCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19ncmVlbi0xMDA6ICMwNzE5MDggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fbWFnZW50YS0xMDogI2ZmZjBmNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19tYWdlbnRhLTIwOiAjZmZkNmU4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX21hZ2VudGEtMzA6ICNmZmFmZDIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fbWFnZW50YS00MDogI2ZmN2ViNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19tYWdlbnRhLTUwOiAjZWU1Mzk2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX21hZ2VudGEtNjA6ICNkMDI2NzAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fbWFnZW50YS03MDogIzlmMTg1MyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19tYWdlbnRhLTgwOiAjNzQwOTM3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX21hZ2VudGEtOTA6ICM1MTAyMjQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fbWFnZW50YS0xMDA6ICMyYTBhMTggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fb3JhbmdlLTQwOiAjZmY4MzJiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX29yYW5nZS02MDogI2JhNGUwMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19vcmFuZ2UtNzA6ICM4YTM4MDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTEwOiAjZjZmMmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3B1cnBsZS0yMDogI2U4ZGFmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19wdXJwbGUtMzA6ICNkNGJiZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTQwOiAjYmU5NWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3B1cnBsZS01MDogI2E1NmVmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19wdXJwbGUtNjA6ICM4YTNmZmMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTcwOiAjNjkyOWM0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3B1cnBsZS04MDogIzQ5MWQ4YiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19wdXJwbGUtOTA6ICMzMTEzNWUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcHVycGxlLTEwMDogIzFjMGYzMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtMTA6ICNmZmYxZjEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcmVkLTIwOiAjZmZkN2Q5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3JlZC0zMDogI2ZmYjNiOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtNDA6ICNmZjgzODkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcmVkLTUwOiAjZmE0ZDU2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3JlZC02MDogI2RhMWUyOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtNzA6ICNhMjE5MWYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fcmVkLTgwOiAjNzUwZTEzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3JlZC05MDogIzUyMDQwOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX19yZWQtMTAwOiAjMmQwNzA5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtMTA6ICNkOWZiZmIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fdGVhbC0yMDogIzllZjBmMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX190ZWFsLTMwOiAjM2RkYmQ5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtNDA6ICMwOGJkYmEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fdGVhbC01MDogIzAwOWQ5YSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX190ZWFsLTYwOiAjMDA3ZDc5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtNzA6ICMwMDVkNWQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fdGVhbC04MDogIzAwNDE0NCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX190ZWFsLTkwOiAjMDIyYjMwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3RlYWwtMTAwOiAjMDgxYTFjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS0xMDogI2Y3ZjNmMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX193YXJtLWdyYXktMjA6ICNlNWUwZGYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2FybS1ncmF5LTMwOiAjY2FjNWM0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS00MDogI2FkYThhOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX193YXJtLWdyYXktNTA6ICM4ZjhiOGIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2FybS1ncmF5LTYwOiAjNzI2ZTZlICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS03MDogIzU2NTE1MSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX193YXJtLWdyYXktODA6ICMzYzM4MzggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2FybS1ncmF5LTkwOiAjMjcyNTI1ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3dhcm0tZ3JheS0xMDA6ICMxNzE0MTQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9fd2hpdGUtMDogI2ZmZmZmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX195ZWxsb3ctMjA6ICNmZGQxM2EgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvcl9feWVsbG93LTMwOiAjZjFjMjFiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRpYm0tY29sb3JfX3llbGxvdy00MDogI2QyYTEwNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkaWJtLWNvbG9yX195ZWxsb3ctNTA6ICNiMjg2MDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGlibS1jb2xvci1tYXA6IChcbiAgICAnYmxhY2snOiAoXG4gICAgICAxMDA6ICMwMDAwMDAsXG4gICAgKSxcbiAgICAnYmx1ZSc6IChcbiAgICAgIDEwOiAjZWRmNWZmLFxuICAgICAgMjA6ICNkMGUyZmYsXG4gICAgICAzMDogI2E2YzhmZixcbiAgICAgIDQwOiAjNzhhOWZmLFxuICAgICAgNTA6ICM0NTg5ZmYsXG4gICAgICA2MDogIzBmNjJmZSxcbiAgICAgIDcwOiAjMDA0M2NlLFxuICAgICAgODA6ICMwMDJkOWMsXG4gICAgICA5MDogIzAwMWQ2YyxcbiAgICAgIDEwMDogIzAwMTE0MSxcbiAgICApLFxuICAgICdjb29sLWdyYXknOiAoXG4gICAgICAxMDogI2YyZjRmOCxcbiAgICAgIDIwOiAjZGRlMWU2LFxuICAgICAgMzA6ICNjMWM3Y2QsXG4gICAgICA0MDogI2EyYTliMCxcbiAgICAgIDUwOiAjODc4ZDk2LFxuICAgICAgNjA6ICM2OTcwNzcsXG4gICAgICA3MDogIzRkNTM1OCxcbiAgICAgIDgwOiAjMzQzYTNmLFxuICAgICAgOTA6ICMyMTI3MmEsXG4gICAgICAxMDA6ICMxMjE2MTksXG4gICAgKSxcbiAgICAnY29vbEdyYXknOiAoXG4gICAgICAxMDogI2YyZjRmOCxcbiAgICAgIDIwOiAjZGRlMWU2LFxuICAgICAgMzA6ICNjMWM3Y2QsXG4gICAgICA0MDogI2EyYTliMCxcbiAgICAgIDUwOiAjODc4ZDk2LFxuICAgICAgNjA6ICM2OTcwNzcsXG4gICAgICA3MDogIzRkNTM1OCxcbiAgICAgIDgwOiAjMzQzYTNmLFxuICAgICAgOTA6ICMyMTI3MmEsXG4gICAgICAxMDA6ICMxMjE2MTksXG4gICAgKSxcbiAgICAnY3lhbic6IChcbiAgICAgIDEwOiAjZTVmNmZmLFxuICAgICAgMjA6ICNiYWU2ZmYsXG4gICAgICAzMDogIzgyY2ZmZixcbiAgICAgIDQwOiAjMzNiMWZmLFxuICAgICAgNTA6ICMxMTkyZTgsXG4gICAgICA2MDogIzAwNzJjMyxcbiAgICAgIDcwOiAjMDA1MzlhLFxuICAgICAgODA6ICMwMDNhNmQsXG4gICAgICA5MDogIzAxMjc0OSxcbiAgICAgIDEwMDogIzA2MTcyNyxcbiAgICApLFxuICAgICdncmF5JzogKFxuICAgICAgMTA6ICNmNGY0ZjQsXG4gICAgICAyMDogI2UwZTBlMCxcbiAgICAgIDMwOiAjYzZjNmM2LFxuICAgICAgNDA6ICNhOGE4YTgsXG4gICAgICA1MDogIzhkOGQ4ZCxcbiAgICAgIDYwOiAjNmY2ZjZmLFxuICAgICAgNzA6ICM1MjUyNTIsXG4gICAgICA4MDogIzM5MzkzOSxcbiAgICAgIDkwOiAjMjYyNjI2LFxuICAgICAgMTAwOiAjMTYxNjE2LFxuICAgICksXG4gICAgJ2dyZWVuJzogKFxuICAgICAgMTA6ICNkZWZiZTYsXG4gICAgICAyMDogI2E3ZjBiYSxcbiAgICAgIDMwOiAjNmZkYzhjLFxuICAgICAgNDA6ICM0MmJlNjUsXG4gICAgICA1MDogIzI0YTE0OCxcbiAgICAgIDYwOiAjMTk4MDM4LFxuICAgICAgNzA6ICMwZTYwMjcsXG4gICAgICA4MDogIzA0NDMxNyxcbiAgICAgIDkwOiAjMDIyZDBkLFxuICAgICAgMTAwOiAjMDcxOTA4LFxuICAgICksXG4gICAgJ21hZ2VudGEnOiAoXG4gICAgICAxMDogI2ZmZjBmNyxcbiAgICAgIDIwOiAjZmZkNmU4LFxuICAgICAgMzA6ICNmZmFmZDIsXG4gICAgICA0MDogI2ZmN2ViNixcbiAgICAgIDUwOiAjZWU1Mzk2LFxuICAgICAgNjA6ICNkMDI2NzAsXG4gICAgICA3MDogIzlmMTg1MyxcbiAgICAgIDgwOiAjNzQwOTM3LFxuICAgICAgOTA6ICM1MTAyMjQsXG4gICAgICAxMDA6ICMyYTBhMTgsXG4gICAgKSxcbiAgICAnb3JhbmdlJzogKFxuICAgICAgNDA6ICNmZjgzMmIsXG4gICAgICA2MDogI2JhNGUwMCxcbiAgICAgIDcwOiAjOGEzODAwLFxuICAgICksXG4gICAgJ3B1cnBsZSc6IChcbiAgICAgIDEwOiAjZjZmMmZmLFxuICAgICAgMjA6ICNlOGRhZmYsXG4gICAgICAzMDogI2Q0YmJmZixcbiAgICAgIDQwOiAjYmU5NWZmLFxuICAgICAgNTA6ICNhNTZlZmYsXG4gICAgICA2MDogIzhhM2ZmYyxcbiAgICAgIDcwOiAjNjkyOWM0LFxuICAgICAgODA6ICM0OTFkOGIsXG4gICAgICA5MDogIzMxMTM1ZSxcbiAgICAgIDEwMDogIzFjMGYzMCxcbiAgICApLFxuICAgICdyZWQnOiAoXG4gICAgICAxMDogI2ZmZjFmMSxcbiAgICAgIDIwOiAjZmZkN2Q5LFxuICAgICAgMzA6ICNmZmIzYjgsXG4gICAgICA0MDogI2ZmODM4OSxcbiAgICAgIDUwOiAjZmE0ZDU2LFxuICAgICAgNjA6ICNkYTFlMjgsXG4gICAgICA3MDogI2EyMTkxZixcbiAgICAgIDgwOiAjNzUwZTEzLFxuICAgICAgOTA6ICM1MjA0MDgsXG4gICAgICAxMDA6ICMyZDA3MDksXG4gICAgKSxcbiAgICAndGVhbCc6IChcbiAgICAgIDEwOiAjZDlmYmZiLFxuICAgICAgMjA6ICM5ZWYwZjAsXG4gICAgICAzMDogIzNkZGJkOSxcbiAgICAgIDQwOiAjMDhiZGJhLFxuICAgICAgNTA6ICMwMDlkOWEsXG4gICAgICA2MDogIzAwN2Q3OSxcbiAgICAgIDcwOiAjMDA1ZDVkLFxuICAgICAgODA6ICMwMDQxNDQsXG4gICAgICA5MDogIzAyMmIzMCxcbiAgICAgIDEwMDogIzA4MWExYyxcbiAgICApLFxuICAgICd3YXJtLWdyYXknOiAoXG4gICAgICAxMDogI2Y3ZjNmMixcbiAgICAgIDIwOiAjZTVlMGRmLFxuICAgICAgMzA6ICNjYWM1YzQsXG4gICAgICA0MDogI2FkYThhOCxcbiAgICAgIDUwOiAjOGY4YjhiLFxuICAgICAgNjA6ICM3MjZlNmUsXG4gICAgICA3MDogIzU2NTE1MSxcbiAgICAgIDgwOiAjM2MzODM4LFxuICAgICAgOTA6ICMyNzI1MjUsXG4gICAgICAxMDA6ICMxNzE0MTQsXG4gICAgKSxcbiAgICAnd2FybUdyYXknOiAoXG4gICAgICAxMDogI2Y3ZjNmMixcbiAgICAgIDIwOiAjZTVlMGRmLFxuICAgICAgMzA6ICNjYWM1YzQsXG4gICAgICA0MDogI2FkYThhOCxcbiAgICAgIDUwOiAjOGY4YjhiLFxuICAgICAgNjA6ICM3MjZlNmUsXG4gICAgICA3MDogIzU2NTE1MSxcbiAgICAgIDgwOiAjM2MzODM4LFxuICAgICAgOTA6ICMyNzI1MjUsXG4gICAgICAxMDA6ICMxNzE0MTQsXG4gICAgKSxcbiAgICAnd2hpdGUnOiAoXG4gICAgICAwOiAjZmZmZmZmLFxuICAgICksXG4gICAgJ3llbGxvdyc6IChcbiAgICAgIDIwOiAjZmRkMTNhLFxuICAgICAgMzA6ICNmMWMyMWIsXG4gICAgICA0MDogI2QyYTEwNixcbiAgICAgIDUwOiAjYjI4NjAwLFxuICAgICksXG4gICkgIWRlZmF1bHQgIWdsb2JhbDtcbn1cbi8vLyBEZWZpbmUgY29sb3IgdmFyaWFibGVzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9jb2xvcnNcbkBtaXhpbiBjYXJib24tLWNvbG9ycygpIHtcbiAgJGNhcmJvbi0tYmxhY2stMTAwOiAjMDAwMDAwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWJsdWUtMTA6ICNlZGY1ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tYmx1ZS0yMDogI2QwZTJmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ibHVlLTMwOiAjYTZjOGZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWJsdWUtNDA6ICM3OGE5ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tYmx1ZS01MDogIzQ1ODlmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ibHVlLTYwOiAjMGY2MmZlICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWJsdWUtNzA6ICMwMDQzY2UgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tYmx1ZS04MDogIzAwMmQ5YyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ibHVlLTkwOiAjMDAxZDZjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWJsdWUtMTAwOiAjMDAxMTQxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWNvb2wtZ3JheS0xMDogI2YyZjRmOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jb29sLWdyYXktMjA6ICNkZGUxZTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29vbC1ncmF5LTMwOiAjYzFjN2NkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWNvb2wtZ3JheS00MDogI2EyYTliMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jb29sLWdyYXktNTA6ICM4NzhkOTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29vbC1ncmF5LTYwOiAjNjk3MDc3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWNvb2wtZ3JheS03MDogIzRkNTM1OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jb29sLWdyYXktODA6ICMzNDNhM2YgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29vbC1ncmF5LTkwOiAjMjEyNzJhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWNvb2wtZ3JheS0xMDA6ICMxMjE2MTkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY3lhbi0xMDogI2U1ZjZmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jeWFuLTIwOiAjYmFlNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWN5YW4tMzA6ICM4MmNmZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY3lhbi00MDogIzMzYjFmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jeWFuLTUwOiAjMTE5MmU4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWN5YW4tNjA6ICMwMDcyYzMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY3lhbi03MDogIzAwNTM5YSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1jeWFuLTgwOiAjMDAzYTZkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWN5YW4tOTA6ICMwMTI3NDkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY3lhbi0xMDA6ICMwNjE3MjcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JheS0xMDogI2Y0ZjRmNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmF5LTIwOiAjZTBlMGUwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWdyYXktMzA6ICNjNmM2YzYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JheS00MDogI2E4YThhOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmF5LTUwOiAjOGQ4ZDhkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWdyYXktNjA6ICM2ZjZmNmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JheS03MDogIzUyNTI1MiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1ncmF5LTgwOiAjMzkzOTM5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLWdyYXktOTA6ICMyNjI2MjYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JheS0xMDA6ICMxNjE2MTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tMTA6ICNkZWZiZTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tMjA6ICNhN2YwYmEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tMzA6ICM2ZmRjOGMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tNDA6ICM0MmJlNjUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tNTA6ICMyNGExNDggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tNjA6ICMxOTgwMzggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tNzA6ICMwZTYwMjcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tODA6ICMwNDQzMTcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tOTA6ICMwMjJkMGQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tZ3JlZW4tMTAwOiAjMDcxOTA4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW1hZ2VudGEtMTA6ICNmZmYwZjcgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tbWFnZW50YS0yMDogI2ZmZDZlOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1tYWdlbnRhLTMwOiAjZmZhZmQyICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW1hZ2VudGEtNDA6ICNmZjdlYjYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tbWFnZW50YS01MDogI2VlNTM5NiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1tYWdlbnRhLTYwOiAjZDAyNjcwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW1hZ2VudGEtNzA6ICM5ZjE4NTMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tbWFnZW50YS04MDogIzc0MDkzNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1tYWdlbnRhLTkwOiAjNTEwMjI0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW1hZ2VudGEtMTAwOiAjMmEwYTE4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLW9yYW5nZS00MDogI2ZmODMyYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1vcmFuZ2UtNjA6ICNiYTRlMDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tb3JhbmdlLTcwOiAjOGEzODAwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS0xMDogI2Y2ZjJmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1wdXJwbGUtMjA6ICNlOGRhZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcHVycGxlLTMwOiAjZDRiYmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS00MDogI2JlOTVmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1wdXJwbGUtNTA6ICNhNTZlZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcHVycGxlLTYwOiAjOGEzZmZjICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS03MDogIzY5MjljNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1wdXJwbGUtODA6ICM0OTFkOGIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcHVycGxlLTkwOiAjMzExMzVlICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXB1cnBsZS0xMDA6ICMxYzBmMzAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTEwOiAjZmZmMWYxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXJlZC0yMDogI2ZmZDdkOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1yZWQtMzA6ICNmZmIzYjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTQwOiAjZmY4Mzg5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXJlZC01MDogI2ZhNGQ1NiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1yZWQtNjA6ICNkYTFlMjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTcwOiAjYTIxOTFmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXJlZC04MDogIzc1MGUxMyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS1yZWQtOTA6ICM1MjA0MDggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tcmVkLTEwMDogIzJkMDcwOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTEwOiAjZDlmYmZiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXRlYWwtMjA6ICM5ZWYwZjAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tdGVhbC0zMDogIzNkZGJkOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTQwOiAjMDhiZGJhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXRlYWwtNTA6ICMwMDlkOWEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tdGVhbC02MDogIzAwN2Q3OSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTcwOiAjMDA1ZDVkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXRlYWwtODA6ICMwMDQxNDQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tdGVhbC05MDogIzAyMmIzMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS10ZWFsLTEwMDogIzA4MWExYyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktMTA6ICNmN2YzZjIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0td2FybS1ncmF5LTIwOiAjZTVlMGRmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdhcm0tZ3JheS0zMDogI2NhYzVjNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktNDA6ICNhZGE4YTggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0td2FybS1ncmF5LTUwOiAjOGY4YjhiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdhcm0tZ3JheS02MDogIzcyNmU2ZSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktNzA6ICM1NjUxNTEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0td2FybS1ncmF5LTgwOiAjM2MzODM4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdhcm0tZ3JheS05MDogIzI3MjUyNSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS13YXJtLWdyYXktMTAwOiAjMTcxNDE0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXdoaXRlLTA6ICNmZmZmZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0teWVsbG93LTIwOiAjZmRkMTNhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjYXJib24tLXllbGxvdy0zMDogI2YxYzIxYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY2FyYm9uLS15ZWxsb3ctNDA6ICNkMmExMDYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0teWVsbG93LTUwOiAjYjI4NjAwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRibGFjay0xMDA6ICMwMDAwMDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMTA6ICNlZGY1ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMjA6ICNkMGUyZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMzA6ICNhNmM4ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNDA6ICM3OGE5ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNTA6ICM0NTg5ZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNjA6ICMwZjYyZmUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtNzA6ICMwMDQzY2UgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtODA6ICMwMDJkOWMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtOTA6ICMwMDFkNmMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGJsdWUtMTAwOiAjMDAxMTQxICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktMTA6ICNmMmY0ZjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNvb2wtZ3JheS0yMDogI2RkZTFlNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY29vbC1ncmF5LTMwOiAjYzFjN2NkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktNDA6ICNhMmE5YjAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNvb2wtZ3JheS01MDogIzg3OGQ5NiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY29vbC1ncmF5LTYwOiAjNjk3MDc3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktNzA6ICM0ZDUzNTggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNvb2wtZ3JheS04MDogIzM0M2EzZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkY29vbC1ncmF5LTkwOiAjMjEyNzJhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjb29sLWdyYXktMTAwOiAjMTIxNjE5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTEwOiAjZTVmNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTIwOiAjYmFlNmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTMwOiAjODJjZmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTQwOiAjMzNiMWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTUwOiAjMTE5MmU4ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTYwOiAjMDA3MmMzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTcwOiAjMDA1MzlhICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTgwOiAjMDAzYTZkICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTkwOiAjMDEyNzQ5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRjeWFuLTEwMDogIzA2MTcyNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0xMDogI2Y0ZjRmNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0yMDogI2UwZTBlMCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0zMDogI2M2YzZjNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS00MDogI2E4YThhOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS01MDogIzhkOGQ4ZCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS02MDogIzZmNmY2ZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS03MDogIzUyNTI1MiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS04MDogIzM5MzkzOSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS05MDogIzI2MjYyNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JheS0xMDA6ICMxNjE2MTYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTEwOiAjZGVmYmU2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRncmVlbi0yMDogI2E3ZjBiYSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JlZW4tMzA6ICM2ZmRjOGMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTQwOiAjNDJiZTY1ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRncmVlbi01MDogIzI0YTE0OCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JlZW4tNjA6ICMxOTgwMzggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTcwOiAjMGU2MDI3ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRncmVlbi04MDogIzA0NDMxNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkZ3JlZW4tOTA6ICMwMjJkMGQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGdyZWVuLTEwMDogIzA3MTkwOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0xMDogI2ZmZjBmNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0yMDogI2ZmZDZlOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0zMDogI2ZmYWZkMiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS00MDogI2ZmN2ViNiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS01MDogI2VlNTM5NiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS02MDogI2QwMjY3MCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS03MDogIzlmMTg1MyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS04MDogIzc0MDkzNyAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS05MDogIzUxMDIyNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkbWFnZW50YS0xMDA6ICMyYTBhMTggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJG9yYW5nZS00MDogI2ZmODMyYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkb3JhbmdlLTYwOiAjYmE0ZTAwICFkZWZhdWx0ICFnbG9iYWw7XG4gICRvcmFuZ2UtNzA6ICM4YTM4MDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHB1cnBsZS0xMDogI2Y2ZjJmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcHVycGxlLTIwOiAjZThkYWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRwdXJwbGUtMzA6ICNkNGJiZmYgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHB1cnBsZS00MDogI2JlOTVmZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcHVycGxlLTUwOiAjYTU2ZWZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICRwdXJwbGUtNjA6ICM4YTNmZmMgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHB1cnBsZS03MDogIzY5MjljNCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcHVycGxlLTgwOiAjNDkxZDhiICFkZWZhdWx0ICFnbG9iYWw7XG4gICRwdXJwbGUtOTA6ICMzMTEzNWUgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHB1cnBsZS0xMDA6ICMxYzBmMzAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHJlZC0xMDogI2ZmZjFmMSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcmVkLTIwOiAjZmZkN2Q5ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRyZWQtMzA6ICNmZmIzYjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHJlZC00MDogI2ZmODM4OSAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcmVkLTUwOiAjZmE0ZDU2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICRyZWQtNjA6ICNkYTFlMjggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHJlZC03MDogI2EyMTkxZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkcmVkLTgwOiAjNzUwZTEzICFkZWZhdWx0ICFnbG9iYWw7XG4gICRyZWQtOTA6ICM1MjA0MDggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHJlZC0xMDA6ICMyZDA3MDkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtMTA6ICNkOWZiZmIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtMjA6ICM5ZWYwZjAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtMzA6ICMzZGRiZDkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtNDA6ICMwOGJkYmEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtNTA6ICMwMDlkOWEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtNjA6ICMwMDdkNzkgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtNzA6ICMwMDVkNWQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtODA6ICMwMDQxNDQgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtOTA6ICMwMjJiMzAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHRlYWwtMTAwOiAjMDgxYTFjICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3YXJtLWdyYXktMTA6ICNmN2YzZjIgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdhcm0tZ3JheS0yMDogI2U1ZTBkZiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkd2FybS1ncmF5LTMwOiAjY2FjNWM0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3YXJtLWdyYXktNDA6ICNhZGE4YTggIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdhcm0tZ3JheS01MDogIzhmOGI4YiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkd2FybS1ncmF5LTYwOiAjNzI2ZTZlICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3YXJtLWdyYXktNzA6ICM1NjUxNTEgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHdhcm0tZ3JheS04MDogIzNjMzgzOCAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkd2FybS1ncmF5LTkwOiAjMjcyNTI1ICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3YXJtLWdyYXktMTAwOiAjMTcxNDE0ICFkZWZhdWx0ICFnbG9iYWw7XG4gICR3aGl0ZS0wOiAjZmZmZmZmICFkZWZhdWx0ICFnbG9iYWw7XG4gICR5ZWxsb3ctMjA6ICNmZGQxM2EgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJHllbGxvdy0zMDogI2YxYzIxYiAhZGVmYXVsdCAhZ2xvYmFsO1xuICAkeWVsbG93LTQwOiAjZDJhMTA2ICFkZWZhdWx0ICFnbG9iYWw7XG4gICR5ZWxsb3ctNTA6ICNiMjg2MDAgIWRlZmF1bHQgIWdsb2JhbDtcbiAgJGNhcmJvbi0tY29sb3JzOiAoXG4gICAgJ2JsYWNrJzogKFxuICAgICAgMTAwOiAjMDAwMDAwLFxuICAgICksXG4gICAgJ2JsdWUnOiAoXG4gICAgICAxMDogI2VkZjVmZixcbiAgICAgIDIwOiAjZDBlMmZmLFxuICAgICAgMzA6ICNhNmM4ZmYsXG4gICAgICA0MDogIzc4YTlmZixcbiAgICAgIDUwOiAjNDU4OWZmLFxuICAgICAgNjA6ICMwZjYyZmUsXG4gICAgICA3MDogIzAwNDNjZSxcbiAgICAgIDgwOiAjMDAyZDljLFxuICAgICAgOTA6ICMwMDFkNmMsXG4gICAgICAxMDA6ICMwMDExNDEsXG4gICAgKSxcbiAgICAnY29vbC1ncmF5JzogKFxuICAgICAgMTA6ICNmMmY0ZjgsXG4gICAgICAyMDogI2RkZTFlNixcbiAgICAgIDMwOiAjYzFjN2NkLFxuICAgICAgNDA6ICNhMmE5YjAsXG4gICAgICA1MDogIzg3OGQ5NixcbiAgICAgIDYwOiAjNjk3MDc3LFxuICAgICAgNzA6ICM0ZDUzNTgsXG4gICAgICA4MDogIzM0M2EzZixcbiAgICAgIDkwOiAjMjEyNzJhLFxuICAgICAgMTAwOiAjMTIxNjE5LFxuICAgICksXG4gICAgJ2Nvb2xHcmF5JzogKFxuICAgICAgMTA6ICNmMmY0ZjgsXG4gICAgICAyMDogI2RkZTFlNixcbiAgICAgIDMwOiAjYzFjN2NkLFxuICAgICAgNDA6ICNhMmE5YjAsXG4gICAgICA1MDogIzg3OGQ5NixcbiAgICAgIDYwOiAjNjk3MDc3LFxuICAgICAgNzA6ICM0ZDUzNTgsXG4gICAgICA4MDogIzM0M2EzZixcbiAgICAgIDkwOiAjMjEyNzJhLFxuICAgICAgMTAwOiAjMTIxNjE5LFxuICAgICksXG4gICAgJ2N5YW4nOiAoXG4gICAgICAxMDogI2U1ZjZmZixcbiAgICAgIDIwOiAjYmFlNmZmLFxuICAgICAgMzA6ICM4MmNmZmYsXG4gICAgICA0MDogIzMzYjFmZixcbiAgICAgIDUwOiAjMTE5MmU4LFxuICAgICAgNjA6ICMwMDcyYzMsXG4gICAgICA3MDogIzAwNTM5YSxcbiAgICAgIDgwOiAjMDAzYTZkLFxuICAgICAgOTA6ICMwMTI3NDksXG4gICAgICAxMDA6ICMwNjE3MjcsXG4gICAgKSxcbiAgICAnZ3JheSc6IChcbiAgICAgIDEwOiAjZjRmNGY0LFxuICAgICAgMjA6ICNlMGUwZTAsXG4gICAgICAzMDogI2M2YzZjNixcbiAgICAgIDQwOiAjYThhOGE4LFxuICAgICAgNTA6ICM4ZDhkOGQsXG4gICAgICA2MDogIzZmNmY2ZixcbiAgICAgIDcwOiAjNTI1MjUyLFxuICAgICAgODA6ICMzOTM5MzksXG4gICAgICA5MDogIzI2MjYyNixcbiAgICAgIDEwMDogIzE2MTYxNixcbiAgICApLFxuICAgICdncmVlbic6IChcbiAgICAgIDEwOiAjZGVmYmU2LFxuICAgICAgMjA6ICNhN2YwYmEsXG4gICAgICAzMDogIzZmZGM4YyxcbiAgICAgIDQwOiAjNDJiZTY1LFxuICAgICAgNTA6ICMyNGExNDgsXG4gICAgICA2MDogIzE5ODAzOCxcbiAgICAgIDcwOiAjMGU2MDI3LFxuICAgICAgODA6ICMwNDQzMTcsXG4gICAgICA5MDogIzAyMmQwZCxcbiAgICAgIDEwMDogIzA3MTkwOCxcbiAgICApLFxuICAgICdtYWdlbnRhJzogKFxuICAgICAgMTA6ICNmZmYwZjcsXG4gICAgICAyMDogI2ZmZDZlOCxcbiAgICAgIDMwOiAjZmZhZmQyLFxuICAgICAgNDA6ICNmZjdlYjYsXG4gICAgICA1MDogI2VlNTM5NixcbiAgICAgIDYwOiAjZDAyNjcwLFxuICAgICAgNzA6ICM5ZjE4NTMsXG4gICAgICA4MDogIzc0MDkzNyxcbiAgICAgIDkwOiAjNTEwMjI0LFxuICAgICAgMTAwOiAjMmEwYTE4LFxuICAgICksXG4gICAgJ29yYW5nZSc6IChcbiAgICAgIDQwOiAjZmY4MzJiLFxuICAgICAgNjA6ICNiYTRlMDAsXG4gICAgICA3MDogIzhhMzgwMCxcbiAgICApLFxuICAgICdwdXJwbGUnOiAoXG4gICAgICAxMDogI2Y2ZjJmZixcbiAgICAgIDIwOiAjZThkYWZmLFxuICAgICAgMzA6ICNkNGJiZmYsXG4gICAgICA0MDogI2JlOTVmZixcbiAgICAgIDUwOiAjYTU2ZWZmLFxuICAgICAgNjA6ICM4YTNmZmMsXG4gICAgICA3MDogIzY5MjljNCxcbiAgICAgIDgwOiAjNDkxZDhiLFxuICAgICAgOTA6ICMzMTEzNWUsXG4gICAgICAxMDA6ICMxYzBmMzAsXG4gICAgKSxcbiAgICAncmVkJzogKFxuICAgICAgMTA6ICNmZmYxZjEsXG4gICAgICAyMDogI2ZmZDdkOSxcbiAgICAgIDMwOiAjZmZiM2I4LFxuICAgICAgNDA6ICNmZjgzODksXG4gICAgICA1MDogI2ZhNGQ1NixcbiAgICAgIDYwOiAjZGExZTI4LFxuICAgICAgNzA6ICNhMjE5MWYsXG4gICAgICA4MDogIzc1MGUxMyxcbiAgICAgIDkwOiAjNTIwNDA4LFxuICAgICAgMTAwOiAjMmQwNzA5LFxuICAgICksXG4gICAgJ3RlYWwnOiAoXG4gICAgICAxMDogI2Q5ZmJmYixcbiAgICAgIDIwOiAjOWVmMGYwLFxuICAgICAgMzA6ICMzZGRiZDksXG4gICAgICA0MDogIzA4YmRiYSxcbiAgICAgIDUwOiAjMDA5ZDlhLFxuICAgICAgNjA6ICMwMDdkNzksXG4gICAgICA3MDogIzAwNWQ1ZCxcbiAgICAgIDgwOiAjMDA0MTQ0LFxuICAgICAgOTA6ICMwMjJiMzAsXG4gICAgICAxMDA6ICMwODFhMWMsXG4gICAgKSxcbiAgICAnd2FybS1ncmF5JzogKFxuICAgICAgMTA6ICNmN2YzZjIsXG4gICAgICAyMDogI2U1ZTBkZixcbiAgICAgIDMwOiAjY2FjNWM0LFxuICAgICAgNDA6ICNhZGE4YTgsXG4gICAgICA1MDogIzhmOGI4YixcbiAgICAgIDYwOiAjNzI2ZTZlLFxuICAgICAgNzA6ICM1NjUxNTEsXG4gICAgICA4MDogIzNjMzgzOCxcbiAgICAgIDkwOiAjMjcyNTI1LFxuICAgICAgMTAwOiAjMTcxNDE0LFxuICAgICksXG4gICAgJ3dhcm1HcmF5JzogKFxuICAgICAgMTA6ICNmN2YzZjIsXG4gICAgICAyMDogI2U1ZTBkZixcbiAgICAgIDMwOiAjY2FjNWM0LFxuICAgICAgNDA6ICNhZGE4YTgsXG4gICAgICA1MDogIzhmOGI4YixcbiAgICAgIDYwOiAjNzI2ZTZlLFxuICAgICAgNzA6ICM1NjUxNTEsXG4gICAgICA4MDogIzNjMzgzOCxcbiAgICAgIDkwOiAjMjcyNTI1LFxuICAgICAgMTAwOiAjMTcxNDE0LFxuICAgICksXG4gICAgJ3doaXRlJzogKFxuICAgICAgMDogI2ZmZmZmZixcbiAgICApLFxuICAgICd5ZWxsb3cnOiAoXG4gICAgICAyMDogI2ZkZDEzYSxcbiAgICAgIDMwOiAjZjFjMjFiLFxuICAgICAgNDA6ICNkMmExMDYsXG4gICAgICA1MDogI2IyODYwMCxcbiAgICApLFxuICApICFkZWZhdWx0ICFnbG9iYWw7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0YWdcbkBtaXhpbiB0YWctdGhlbWUoJGJnLWNvbG9yLCAkdGV4dC1jb2xvciwgJGZpbHRlci1ob3Zlci1jb2xvcjogJGJnLWNvbG9yKSB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuXG4gIC4jeyRwcmVmaXh9LS10YWdfX2Nsb3NlLWljb24ge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbHRlci1ob3Zlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDb21ib0JveFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9saXN0LWJveC9saXN0LWJveCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbi8vLyBDb21ibyBib3ggc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGNvbWJvLWJveFxuQG1peGluIGNvbWJvLWJveCB7XG4gIC4jeyRwcmVmaXh9LS1jb21iby1ib3ggLiN7JHByZWZpeH0tLXRleHQtaW5wdXQ6Oi1tcy1jbGVhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb21iby1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWV4cGFuZGVkXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb21iby1ib3ggLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCxcbiAgLiN7JHByZWZpeH0tLWNvbWJvLWJveC4jeyRwcmVmaXh9LS1saXN0LWJveFtkYXRhLWludmFsaWRdXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCxcbiAgLiN7JHByZWZpeH0tLWNvbWJvLWJveC4jeyRwcmVmaXh9LS1saXN0LWJveC0td2FybmluZ1xuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQsXG4gIC4jeyRwcmVmaXh9LS1jb21iby1ib3guI3skcHJlZml4fS0tbGlzdC1ib3gtLWRpc2FibGVkLiN7JHByZWZpeH0tLWxpc3QtYm94W2RhdGEtaW52YWxpZF1cbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX2ZpZWxkLFxuICAuI3skcHJlZml4fS0tY29tYm8tYm94LiN7JHByZWZpeH0tLWxpc3QtYm94LS1kaXNhYmxlZC4jeyRwcmVmaXh9LS1saXN0LWJveC0td2FybmluZ1xuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fZmllbGQge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY29tYm8tYm94Jykge1xuICBAaW5jbHVkZSBjb21iby1ib3g7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmFkaW9cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vZm9ybS9mb3JtJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcblxuLy8vIFJhZGlvIGJ1dHRvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgcmFkaW8tYnV0dG9uXG5AbWl4aW4gcmFkaW8tYnV0dG9uIHtcbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IHJlbSg2cHgpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHNwYWNpbmcgYWJvdmUgY29sbGVjdGlvbiBvZiByYWRpbyBidXR0b25zIGlmIGxhYmVsIGlzIHByZXNlbnRcbiAgLiN7JHByZWZpeH0tLWxhYmVsICsgLiN7JHByZWZpeH0tLWZvcm0taXRlbSAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLy8gdmVydGljYWwgcmFkaW8gYnV0dG9uXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24tZ3JvdXAtLXZlcnRpY2FsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgJi4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24tZ3JvdXAtLWxhYmVsLWxlZnQge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBjYXJib24tLW1pbmktdW5pdHMoMi41KTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG5cbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fYXBwZWFyYW5jZSB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogcmVtKDE4cHgpO1xuICAgIGhlaWdodDogcmVtKDE4cHgpO1xuICAgIG1hcmdpbjogMnB4ICRjYXJib24tLXNwYWNpbmctMDMgMnB4ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAkcmFkaW8tYm9yZGVyLXdpZHRoIHNvbGlkICRpY29uLTAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b246Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19hcHBlYXJhbmNlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAkaWNvbi0wMTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLTAxO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgICAgY29udGVudDogJyc7XG5cbiAgICAgIC8vIEFsbG93IHRoZSBzZWxlY3RlZCBidXR0b24gdG8gYmUgc2VlbiBpbiBXaW5kb3dzIEhDTSBmb3IgSUUvRWRnZVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgLy8gVXRpbGl6ZSBhIHN5c3RlbSBjb2xvciB2YXJpYWJsZSB0byBhY2NvbW9kYXRlIGFueSB1c2VyIEhDTSB0aGVtZVxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBXaW5kb3dUZXh0O1xuICAgICAgfVxuXG4gICAgICAvLyBGaXJlZm94IG9ubHkgSENNIHNvbHV0aW9uXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgICAvLyBVdGlsaXplIGEgc3lzdGVtIGNvbG9yIHZhcmlhYmxlIHRvIGFjY29tb2RhdGUgYW55IHVzZXIgSENNIHRoZW1lXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIFdpbmRvd1RleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbjpkaXNhYmxlZCArIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsIHtcbiAgICBjb2xvcjogJGRpc2FibGVkO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uOmRpc2FibGVkXG4gICAgKyAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2FwcGVhcmFuY2UsXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b246ZGlzYWJsZWQ6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19hcHBlYXJhbmNlIHtcbiAgICBib3JkZXItY29sb3I6ICRkaXNhYmxlZDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9jdXNcblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uOmZvY3VzXG4gICAgKyAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2FwcGVhcmFuY2Uge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggJGZvY3VzO1xuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwuI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgd2lkdGg6IHJlbSgxMDBweCk7XG4gICAgaGVpZ2h0OiByZW0oMThweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbC4jeyRwcmVmaXh9LS1za2VsZXRvblxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2FwcGVhcmFuY2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLXdyYXBwZXIgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLXdyYXBwZXI6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLWdyb3VwLS12ZXJ0aWNhbFxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24td3JhcHBlcjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi1ncm91cC0tbGFiZWwtcmlnaHQgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24td3JhcHBlci4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24td3JhcHBlci0tbGFiZWwtcmlnaHRcbiAgICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uX19sYWJlbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24tZ3JvdXAtLWxhYmVsLWxlZnQgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24td3JhcHBlci4jeyRwcmVmaXh9LS1yYWRpby1idXR0b24td3JhcHBlci0tbGFiZWwtbGVmdFxuICAgIC4jeyRwcmVmaXh9LS1yYWRpby1idXR0b25fX2xhYmVsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcmFkaW8tYnV0dG9uLWdyb3VwLS1sYWJlbC1sZWZ0XG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fYXBwZWFyYW5jZSxcbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi13cmFwcGVyLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi13cmFwcGVyLS1sYWJlbC1sZWZ0XG4gICAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fYXBwZWFyYW5jZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3JhZGlvLWJ1dHRvbicpIHtcbiAgQGluY2x1ZGUgcmFkaW8tYnV0dG9uO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRvZ2dsZVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuXG4vLy8gVG9nZ2xlIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0b2dnbGVcbkBtaXhpbiB0b2dnbGUge1xuICAuI3skcHJlZml4fS0tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogJGNhcmJvbi0tc3BhY2luZy0wMyAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGVfX2FwcGVhcmFuY2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogY2FyYm9uLS1yZW0oNDhweCk7XG4gICAgaGVpZ2h0OiBjYXJib24tLXJlbSgyNHB4KTtcblxuICAgIC8vIFRvZ2dsZSBiYWNrZ3JvdW5kIG92YWxcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDQ4cHgpO1xuICAgICAgaGVpZ2h0OiBjYXJib24tLXJlbSgyNHB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wNDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IGNhcmJvbi0tcmVtKDE1cHgpO1xuICAgICAgLy8gQ29ycmVzcG9uZHMgdG8gdGhlIGRvdWJsZS1ib3JkZXIgZm9yIGZvY3VzZWQgc3RhdGUgKGAwIDAgMCAxcHggJHVpLTAyLCAwIDAgMCAzcHggJGZvY3VzYClcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCB0cmFuc3BhcmVudCwgMCAwIDAgM3B4IHRyYW5zcGFyZW50O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpLFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZXhpdCwgcHJvZHVjdGl2ZSk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpbGwtY2hhbmdlOiBib3gtc2hhZG93O1xuICAgIH1cblxuICAgIC8vIFRvZ2dsZSBjaXJjbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGNhcmJvbi0tcmVtKDNweCk7XG4gICAgICBsZWZ0OiBjYXJib24tLXJlbSgzcHgpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDE4cHgpO1xuICAgICAgaGVpZ2h0OiBjYXJib24tLXJlbSgxOHB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLTAzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZXhpdCwgcHJvZHVjdGl2ZSk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlX19jaGVjayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FyYm9uLS1yZW0oNnB4KTtcbiAgICBsZWZ0OiBjYXJib24tLXJlbSg2cHgpO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IGNhcmJvbi0tcmVtKDZweCk7XG4gICAgaGVpZ2h0OiBjYXJib24tLXJlbSg1cHgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbiAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpO1xuICAgIGZpbGw6ICRpY29uLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tbGVmdCxcbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tcmlnaHQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLWxlZnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiBjYXJib24tLXJlbSg0OHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1sZWZ0LFxuICAuI3skcHJlZml4fS0tdG9nZ2xlOm5vdCg6Y2hlY2tlZClcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tcmlnaHQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1yaWdodCxcbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpub3QoOmNoZWNrZWQpXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLWxlZnQge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19hcHBlYXJhbmNlIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cHBvcnQtMDI7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGljb24tMDM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FyYm9uLS1yZW0oMjRweCkpO1xuICAgIH1cbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBGb2N1c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZVxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19hcHBlYXJhbmNlOjpiZWZvcmUge1xuICAgIC8vIENvcnJlc3BvbmRzIHRvIHRoZSBkb3VibGUtYm9yZGVyIGZvciBmb2N1c2VkIHN0YXRlIChgMCAwIDAgMXB4ICR1aS0wMiwgMCAwIDAgM3B4ICRmb2N1c2ApXG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50LCAwIDAgMCAzcHggdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmZvY3VzICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS10b2dnbGU6YWN0aXZlXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2FwcGVhcmFuY2U6OmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICR1aS0wMiwgMCAwIDAgM3B4ICRmb2N1cztcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBEaXNhYmxlZFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpkaXNhYmxlZCArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19hcHBlYXJhbmNlIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLTAxO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZXhpdCwgcHJvZHVjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1sZWZ0LFxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmRpc2FibGVkXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLXJpZ2h0IHtcbiAgICBjb2xvcjogJGRpc2FibGVkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZTpkaXNhYmxlZDphY3RpdmVcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fYXBwZWFyYW5jZTpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlOmRpc2FibGVkXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2NoZWNrIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU21hbGwgdG9nZ2xlXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtLXNtYWxsXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlX19sYWJlbFxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX2FwcGVhcmFuY2Uge1xuICAgIHdpZHRoOiBjYXJib24tLXJlbSgzMnB4KTtcbiAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDE2cHgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB3aWR0aDogY2FyYm9uLS1yZW0oMzJweCk7XG4gICAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDE2cHgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC45Mzc1cmVtO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogY2FyYm9uLS1yZW0oM3B4KTtcbiAgICAgIGxlZnQ6IGNhcmJvbi0tcmVtKDNweCk7XG4gICAgICB3aWR0aDogY2FyYm9uLS1yZW0oMTBweCk7XG4gICAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDEwcHgpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtLXNtYWxsOmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fY2hlY2sge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWChjYXJib24tLXJlbSgxNnB4KSk7XG4gICAgZmlsbDogJHN1cHBvcnQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLS1zbWFsbFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1sZWZ0IHtcbiAgICBsZWZ0OiBjYXJib24tLXJlbSgzMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtLXNtYWxsOmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fYXBwZWFyYW5jZSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgocmVtKDE3cHgpKTtcbiAgICB9XG4gIH1cblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBuZXcgYWNjZXNzaWJsZSB0b2dnbGVcbiAgLy8gVE9ETzogZGVwcmVjYXRlIHN0eWxlcyBhYm92ZSB0aGlzIGxpbmVcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0IHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogY2FyYm9uLS1yZW0oNDhweCk7XG4gICAgaGVpZ2h0OiBjYXJib24tLXJlbSgyNHB4KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvLyBUb2dnbGUgYmFja2dyb3VuZCBvdmFsXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiBjYXJib24tLXJlbSg0OHB4KTtcbiAgICAgIGhlaWdodDogY2FyYm9uLS1yZW0oMjRweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDQ7XG4gICAgICBib3JkZXItcmFkaXVzOiBjYXJib24tLXJlbSgxNXB4KTtcbiAgICAgIC8vIENvcnJlc3BvbmRzIHRvIHRoZSBkb3VibGUtYm9yZGVyIGZvciBmb2N1c2VkIHN0YXRlIChgMCAwIDAgMXB4ICR1aS0wMiwgMCAwIDAgM3B4ICRmb2N1c2ApXG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQsIDAgMCAwIDNweCB0cmFuc3BhcmVudDtcbiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihleGl0LCBwcm9kdWN0aXZlKSxcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWxsLWNoYW5nZTogYm94LXNoYWRvdztcblxuICAgICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUb2dnbGUgY2lyY2xlXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBjYXJib24tLXJlbSgzcHgpO1xuICAgICAgbGVmdDogY2FyYm9uLS1yZW0oM3B4KTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHdpZHRoOiBjYXJib24tLXJlbSgxOHB4KTtcbiAgICAgIGhlaWdodDogY2FyYm9uLS1yZW0oMThweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWNvbi0wMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpO1xuICAgICAgY29udGVudDogJyc7XG5cbiAgICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWwgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLW9mZixcbiAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fdGV4dC0tb24ge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyB0b3Agb2Zmc2V0IG5lZWRlZCB0byB2ZXJ0aWNhbGx5IGNlbnRlciBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQgZmxleCBjaGlsZCBpbiBJRTExXG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSg1NnB4KTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBDaGVja2VkXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0OmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXRfX2xhYmVsXG4gICAgPiAuI3skcHJlZml4fS0tdG9nZ2xlX19zd2l0Y2hcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLW9mZixcbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dDpub3QoOmNoZWNrZWQpXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoXG4gICAgPiAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1vbiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dDpjaGVja2VkXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cHBvcnQtMDI7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGljb24tMDM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FyYm9uLS1yZW0oMjRweCkpO1xuICAgIH1cbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBGb2N1cyBhbmQgYWN0aXZlXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0OmZvY3VzXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXQ6YWN0aXZlXG4gICAgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbFxuICAgID4gLiN7JHByZWZpeH0tLXRvZ2dsZV9fc3dpdGNoOjpiZWZvcmUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkdWktMDIsIDAgMCAwIDNweCAkZm9jdXM7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRGlzYWJsZWRcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXQ6ZGlzYWJsZWQgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dDpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWxcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtMDE7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgdHJhbnNpdGlvbjogJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihleGl0LCBwcm9kdWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0OmRpc2FibGVkOmFjdGl2ZVxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWxcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaDo6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNtYWxsIHRvZ2dsZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dC0tc21hbGwgKyAuI3skcHJlZml4fS0tdG9nZ2xlLWlucHV0X19sYWJlbCB7XG4gICAgPiAuI3skcHJlZml4fS0tdG9nZ2xlX19zd2l0Y2gge1xuICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDMycHgpO1xuICAgICAgaGVpZ2h0OiBjYXJib24tLXJlbSgxNnB4KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDMycHgpO1xuICAgICAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDE2cHgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjkzNzVyZW07XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IGNhcmJvbi0tcmVtKDEwcHgpO1xuICAgICAgICBoZWlnaHQ6IGNhcmJvbi0tcmVtKDEwcHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b2dnbGVfX3RleHQtLW9mZixcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX190ZXh0LS1vbiB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FyYm9uLS1yZW0oNDBweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dC0tc21hbGw6Y2hlY2tlZCArIC4jeyRwcmVmaXh9LS10b2dnbGUtaW5wdXRfX2xhYmVsIHtcbiAgICA+IC4jeyRwcmVmaXh9LS10b2dnbGVfX3N3aXRjaDo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhcmJvbi0tcmVtKDE3cHgpKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19jaGVjayB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVgoY2FyYm9uLS1yZW0oMTZweCkpO1xuICAgICAgZmlsbDogJHN1cHBvcnQtMDI7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dC0tc21hbGw6ZGlzYWJsZWQ6Y2hlY2tlZFxuICAgICsgLiN7JHByZWZpeH0tLXRvZ2dsZS1pbnB1dF9fbGFiZWxcbiAgICAuI3skcHJlZml4fS0tdG9nZ2xlX19jaGVjayB7XG4gICAgZmlsbDogJGRpc2FibGVkLTAxO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNrZWxldG9uXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC4jeyRwcmVmaXh9LS10b2dnbGVfX2xhYmVsLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgLiN7JHByZWZpeH0tLXRvZ2dsZV9fbGFiZWwtdGV4dCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCd0b2dnbGUnKSB7XG4gIEBpbmNsdWRlIHRvZ2dsZTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZWFyY2hcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2ltcG9ydC1vbmNlJztcblxuLy8vIFNlYXJjaCBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgc2VhcmNoXG5AbWl4aW4gc2VhcmNoIHtcbiAgLiN7JHByZWZpeH0tLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2ggLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBoaWRkZW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIG9yZGVyOiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlci1jb2xvcnM7XG4gICAgfVxuXG4gICAgJjo6LW1zLWNsZWFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dFtkaXNhYmxlZF0ge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtLWxpZ2h0IC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgIGJhY2tncm91bmQ6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC8vIFNtYWxsIHN0eWxlc1xuICAuI3skcHJlZml4fS0tc2VhcmNoLS1zbSAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICAvLyA4cHggcGFkZGluZyBvbiBlaXRoZXIgc2lkZSBvZiBpY29uICsgMTZweCBpY29uICgzMnB4KVxuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctMDc7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS1zbSAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllciB7XG4gICAgbGVmdDogcmVtKDhweCk7XG4gIH1cblxuICAvLyBMYXJnZSBzdHlsZXNcbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0tbGcgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgLy8gMTJweCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlIG9mIGljb24gKyAxNnB4IGljb24gKDQwcHgpXG4gICAgcGFkZGluZzogMCAkc3BhY2luZy0wODtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtLWxnIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyIHtcbiAgICBsZWZ0OiByZW0oMTJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS14bCAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICAvLyAxNnB4IHBhZGRpbmcgb24gZWl0aGVyIHNpZGUgb2YgaWNvbiArIDE2cHggaWNvbiAoNDhweClcbiAgICBwYWRkaW5nOiAwICRzcGFjaW5nLTA5O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAkc3BhY2luZy0wNTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbGw6ICRpY29uLTAyO1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KGZhbHNlKTtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IHJlbSgxcHgpO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMnB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyXG4gICAgICAgIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDQ7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1maWVsZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLWJ1dHRvbiB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuXG4gICAgc3ZnIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSBzdmcge1xuICAgIGZpbGw6IGluaGVyaXQ7XG5cbiAgICAvLyBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSxcbiAgLiN7JHByZWZpeH0tLXNlYXJjaC1idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogcmVtKDQwcHgpO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAwO1xuICAgIHZpc2liaWxpdHk6IGluaGVyaXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgYm9yZGVyICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGZpbGw6ICRpY29uLTAxO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItZmllbGQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS1kaXNhYmxlZCBzdmcge1xuICAgIGZpbGw6ICRkaXNhYmxlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtY2xvc2U6Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtY2xvc2U6YWN0aXZlIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvY3VzO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQ6Zm9jdXMgfiAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS1zbSB7XG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSxcbiAgICB+IC4jeyRwcmVmaXh9LS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS1sZyB7XG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSxcbiAgICB+IC4jeyRwcmVmaXh9LS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgIHdpZHRoOiByZW0oNDBweCk7XG4gICAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLS14bCB7XG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSxcbiAgICB+IC4jeyRwcmVmaXh9LS1zZWFyY2gtYnV0dG9uIHtcbiAgICAgIHdpZHRoOiByZW0oNDhweCk7XG4gICAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlLS1oaWRkZW4ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0teGwuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCxcbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0tbGcuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCxcbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0tc20uI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnc2VhcmNoJykge1xuICBAaW5jbHVkZSBzZWFyY2g7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2VsZWN0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5cbi8vLyBTZWxlY3Qgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHNlbGVjdFxuQG1peGluIHNlbGVjdCB7XG4gIC4jeyRwcmVmaXh9LS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0IHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiByZW0oMjI0cHgpO1xuICAgIG1pbi13aWR0aDogcmVtKDEyOHB4KTtcbiAgICBtYXgtd2lkdGg6IHJlbSg0NDhweCk7XG5cbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBwYWRkaW5nOiAwICRzcGFjaW5nLTA5IDAgJHNwYWNpbmctMDU7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC8vIERvIG5vdCB0cmFuc2l0aW9uIG9uIGJhY2tncm91bmQtY29sb3IgKHNlZTogaHR0cHM6Ly9naXRodWIuY29tL2NhcmJvbi1kZXNpZ24tc3lzdGVtL2NhcmJvbi9pc3N1ZXMvNDQ2NClcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAvLyBIaWRlIGRlZmF1bHQgc2VsZWN0IGFycm93IGluIElFMTArXG4gICAgJjo6LW1zLWV4cGFuZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIFNlbGVjdCB0ZXh0IHJlbmRlcnMgYSBsaXR0bGUgaGlnaCBvbiBGaXJlZm94XG4gICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgICAgIC8vIFJlbW92ZXMgZG90dGVkIGlubmVyIGZvY3VzXG4gICAgICAmOi1tb3otZm9jdXNyaW5nLFxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAwICMwMDAwMDA7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG5cbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcblxuICAgICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLTNweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLFxuICAgICY6aG92ZXI6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQtY29sb3I7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQtLXNtIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBtYXgtaGVpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0LS14bCB7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgbWF4LWhlaWdodDogcmVtKDQ4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxhYmVsLFxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1kaXNhYmxlZCAuI3skcHJlZml4fS0tZm9ybV9faGVscGVyLXRleHQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0X193cmFwcGVyW2RhdGEtaW52YWxpZF0gLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogY2FyYm9uLS1taW5pLXVuaXRzKDEwKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQ6ZGlzYWJsZWQgfiAuI3skcHJlZml4fS0tc2VsZWN0X19hcnJvdyB7XG4gICAgZmlsbDogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0tbGlnaHQgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmOmhvdmVyOmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdF9fYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6ICRzcGFjaW5nLTA1O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWxsOiAkdWktMDU7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dF9fd3JhcHBlcltkYXRhLWludmFsaWRdXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dFxuICAgIH4gLiN7JHByZWZpeH0tLXNlbGVjdF9faW52YWxpZC1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6ICRzcGFjaW5nLTA5O1xuICAgIGZpbGw6ICRzdXBwb3J0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC1vcHRncm91cCxcbiAgLiN7JHByZWZpeH0tLXNlbGVjdC1vcHRpb24ge1xuICAgIC8vIEZvciB0aGUgb3B0aW9ucyB0byBzaG93IGluIElFMTFcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LW9wdGlvbltkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgLy8gT3ZlcnJpZGUgc29tZSBGaXJlZm94IHVzZXItYWdlbnQgc3R5bGVzXG4gIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1vcHRpb24ge1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3Qtb3B0Z3JvdXAge1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWlubGluZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1pbmxpbmUuI3skcHJlZml4fS0tc2VsZWN0LS1pbnZhbGlkIC4jeyRwcmVmaXh9LS1sYWJlbCxcbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lLiN7JHByZWZpeH0tLXNlbGVjdC0taW52YWxpZFxuICAgIC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAvLyBPZmZzZXQgbGFiZWwgdGV4dCBtYXJnaW5cbiAgICBtYXJnaW4tdG9wOiByZW0oMTNweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1pbmxpbmUgLiN7JHByZWZpeH0tLWZvcm1fX2hlbHBlci10ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWlubGluZSAuI3skcHJlZml4fS0tbGFiZWwge1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTAzIDAgMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLTA3O1xuICAgIHBhZGRpbmctbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWlubGluZSAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0W2Rpc2FibGVkXSxcbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRbZGlzYWJsZWRdOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QtLWlubGluZSAuI3skcHJlZml4fS0tc2VsZWN0X19hcnJvdyB7XG4gICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2VsZWN0LS1pbmxpbmUuI3skcHJlZml4fS0tc2VsZWN0LS1pbnZhbGlkXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogcmVtKDU2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lLiN7JHByZWZpeH0tLXNlbGVjdC0taW52YWxpZFxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXRcbiAgICB+IC4jeyRwcmVmaXh9LS1zZWxlY3RfX2ludmFsaWQtaWNvbiB7XG4gICAgcmlnaHQ6ICRzcGFjaW5nLTA3O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlbGVjdC0taW5saW5lIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQ6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgIH4gKiB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxuXG4gIC8vU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLXNlbGVjdC4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zZWxlY3QuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdzZWxlY3QnKSB7XG4gIEBpbmNsdWRlIHNlbGVjdDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUZXh0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdG9vbHRpcCc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuXG4vLy8gVGV4dCBpbnB1dCBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdGV4dC1pbnB1dFxuQG1peGluIHRleHQtaW5wdXQge1xuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBwYWRkaW5nOiAwICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICYtd3JhcHBlciBzdmdbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS14bCB7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tc20ge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhc3N3b3JkLWlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlci1jb2xvcnM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRGlzYWJsZWQgJiBFcnJvciBpY29uIHNwYWNpbmdcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dF9fZmllbGQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19pbnZhbGlkLWljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy8gdG9wL3RyYW5zZm9ybSB1c2VkIHRvIGNlbnRlciBpbnZhbGlkIGljb24gaW4gSUUxMVxuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGZpbGw6ICRzdXBwb3J0LTAxO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19pbnZhbGlkLWljb24tLXdhcm5pbmcge1xuICAgICAgZmlsbDogJHN1cHBvcnQtMDM7XG5cbiAgICAgIHBhdGhbZGF0YS1pY29uLXBhdGg9J2lubmVyLXBhdGgnXSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGZpbGw6ICRjYXJib25fX2JsYWNrLTEwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUT0RPOiBkZXByZWNhdGUgdGhpcyBzdHlsZSBibG9ja1xuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1wYXNzd29yZF9fdmlzaWJpbGl0eSB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS10cmlnZ2VyKCdpY29uJywgJ2JvdHRvbScpO1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdjZW50ZXInKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tcGFzc3dvcmRfX3Zpc2liaWxpdHksXG4gICAgLy8gVE9ETzogcmVtb3ZlIHNlbGVjdG9yIGFib3ZlXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXBhc3N3b3JkX192aXNpYmlsaXR5X190b2dnbGUuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkaWNvbi0wMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0taW52YWxpZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1pbnZhbGlkLiN7JHByZWZpeH0tLXBhc3N3b3JkLWlucHV0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg2NHB4KTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0taW52YWxpZFxuICAgICAgKyAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tcGFzc3dvcmRfX3Zpc2liaWxpdHksXG4gICAgLy8gVE9ETzogcmVtb3ZlIHNlbGVjdG9yIGFib3ZlXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLWludmFsaWRcbiAgICAgICsgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXBhc3N3b3JkX192aXNpYmlsaXR5X190b2dnbGUge1xuICAgICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhc3N3b3JkLWlucHV0LXdyYXBwZXIgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ludmFsaWQtaWNvbiB7XG4gICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dDpkaXNhYmxlZFxuICAgICsgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXBhc3N3b3JkX192aXNpYmlsaXR5XG4gICAgc3ZnLFxuICAvLyBUT0RPOiByZW1vdmUgc2VsZWN0b3IgYWJvdmVcbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQ6ZGlzYWJsZWRcbiAgICArIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1wYXNzd29yZF9fdmlzaWJpbGl0eV9fdG9nZ2xlXG4gICAgc3ZnIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRGlzYWJsZWRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLTAxO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAvLyBOZWVkZWQgdG8gZml4IGRpc2FibGVkIHRleHQgaW4gU2FmYXJpICM2NjczXG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLWxpZ2h0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dDpkaXNhYmxlZDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRXJyb3JcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0taW52YWxpZCB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnaW52YWxpZCcpO1xuXG4gICAgYm94LXNoYWRvdzogbm9uZTtcblxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1wYXNzd29yZF9fdmlzaWJpbGl0eSxcbiAgICAvLyBUT0RPOiByZW1vdmUgc2VsZWN0b3IgYWJvdmVcbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0tcGFzc3dvcmRfX3Zpc2liaWxpdHlfX3RvZ2dsZSB7XG4gICAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEZsdWlkIFRleHQgSW5wdXRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZm9ybS0tZmx1aWQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICRmaWVsZC0wMTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1mb3JtLS1mbHVpZCAuI3skcHJlZml4fS0tbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbSgxM3B4KTtcbiAgICBsZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm0tLWZsdWlkIC4jeyRwcmVmaXh9LS1mb3JtX19oZWxwZXItdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1mb3JtLS1mbHVpZCAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCB7XG4gICAgbWluLWhlaWdodDogcmVtKDY0cHgpO1xuICAgIHBhZGRpbmc6IHJlbSgzMnB4KSAkY2FyYm9uLS1zcGFjaW5nLTA1IHJlbSgxM3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19kaXZpZGVyLFxuICAuI3skcHJlZml4fS0tZm9ybS0tZmx1aWQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2RpdmlkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZm9ybS0tZmx1aWQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLWludmFsaWQsXG4gIC4jeyRwcmVmaXh9LS1mb3JtLS1mbHVpZCAuI3skcHJlZml4fS0tdGV4dC1pbnB1dC0td2FybiB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1mb3JtLS1mbHVpZFxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1pbnZhbGlkXG4gICAgKyAuI3skcHJlZml4fS0tdGV4dC1pbnB1dF9fZGl2aWRlcixcbiAgLiN7JHByZWZpeH0tLWZvcm0tLWZsdWlkXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLXdhcm5cbiAgICArIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgICBib3JkZXItY29sb3I6ICR1aS0wMztcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZm9ybS0tZmx1aWQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ludmFsaWQtaWNvbiB7XG4gICAgdG9wOiByZW0oODBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZm9ybS0tZmx1aWQgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtd3JhcHBlci0tbGlnaHQge1xuICAgIGJhY2tncm91bmQ6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1mb3JtLS1mbHVpZFxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19maWVsZC13cmFwcGVyW2RhdGEtaW52YWxpZF1cbiAgICA+IC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LS1pbnZhbGlkIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm0tLWZsdWlkXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ZpZWxkLXdyYXBwZXJbZGF0YS1pbnZhbGlkXTpub3QoOmZvY3VzKSB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnaW52YWxpZCcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm0tLWZsdWlkXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ZpZWxkLXdyYXBwZXJbZGF0YS1pbnZhbGlkXVxuICAgID4gLiN7JHByZWZpeH0tLXRleHQtaW5wdXQtLWludmFsaWQ6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSW5saW5lIFRleHQgSW5wdXRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0LXdyYXBwZXItLWlubGluZSB7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1sYWJlbC0taW5saW5lIHtcbiAgICBmbGV4OiAxO1xuICAgIG1hcmdpbjogcmVtKDEzcHgpIDAgMCAwO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1sYWJlbC0taW5saW5lLS1zbSB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDlweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGFiZWwtLWlubGluZS0teGwge1xuICAgIG1hcmdpbi10b3A6IHJlbSgxN3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19sYWJlbC1oZWxwZXItd3JhcHBlciB7XG4gICAgZmxleDogMjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC13aWR0aDogcmVtKDEyOHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgyNHB4KTtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWZvcm1fX2hlbHBlci10ZXh0LS1pbmxpbmUge1xuICAgIG1hcmdpbi10b3A6IHJlbSgycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXRfX2ZpZWxkLW91dGVyLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWlucHV0X19maWVsZC1vdXRlci13cmFwcGVyLS1pbmxpbmUge1xuICAgIGZsZXg6IDg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCd0ZXh0LWlucHV0Jykge1xuICBAaW5jbHVkZSB0ZXh0LWlucHV0O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRleHQgYXJlYVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuXG4vLy8gVGV4dCBhcmVhIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0ZXh0LWFyZWFcbkBtaXhpbiB0ZXh0LWFyZWEge1xuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LWxvbmctMDEnKTtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogcmVtKDQwcHgpO1xuICAgIHBhZGRpbmc6IHJlbSgxMXB4KSAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWE6Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWE6YWN0aXZlIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgQGluY2x1ZGUgcGxhY2Vob2xkZXItY29sb3JzO1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYS0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWEtLWludmFsaWQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhX193cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10ZXh0LWFyZWFfX2ludmFsaWQtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJGNhcmJvbi0tc3BhY2luZy0wNDtcbiAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBmaWxsOiAkc3VwcG9ydC0wMTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRGlzYWJsZWRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRleHQtYXJlYTpkaXNhYmxlZDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGV4dC1hcmVhLiN7JHByZWZpeH0tLXRleHQtYXJlYS0tbGlnaHQ6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIFN0YXRlXG4gICN7JHByZWZpeH0tLXRleHQtYXJlYS4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICBoZWlnaHQ6IHJlbSgxMDBweCk7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3RleHQtYXJlYScpIHtcbiAgQGluY2x1ZGUgdGV4dC1hcmVhO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uL2Zvcm0vZm9ybSc7XG5cbi8vLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG51bWJlci1pbnB1dFxuQG1peGluIG51bWJlci1pbnB1dCB7XG4gIC4jeyRwcmVmaXh9LS1udW1iZXIge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXIgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDkuMzc1cmVtO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDc7XG4gICAgcGFkZGluZy1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgZm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ21vbm8nKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgIC8vIEZpcmVmb3g6IEhpZGUgc3Bpbm5lciAodXAgYW5kIGRvd24gYnV0dG9ucylcbiAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQgfiAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9scyB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB+IC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2xzIHN2ZyB7XG4gICAgICBmaWxsOiAkZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gSUU6IEhpZGUgXCJjbGVhci1maWVsZFwiIGB4YCBidXR0b24gb24gaW5wdXQgZmllbGRcbiAgICAmOjotbXMtY2xlYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBTYWZhcmk6IEhpZGUgbnVtYmVyIHNwaW5uZXJcbiAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlciBpbnB1dFt0eXBlPSdudW1iZXInXTpkaXNhYmxlZCxcbiAgLiN7JHByZWZpeH0tLW51bWJlci0tcmVhZG9ubHkgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXJfX2lucHV0LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9scyB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gdmVydGljYWxseSBjZW50ZXIgY29udHJvbHMgd2l0aGluIHBhcmVudCBjb250YWluZXIgb24gSUUxMVxuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2wtYnRuIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oMjBweCk7XG4gICAgY29sb3I6ICRpY29uLTAxO1xuXG4gICAgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG5cbiAgICAmLnVwLWljb24gc3ZnIHtcbiAgICAgIHRvcDogcmVtKDVweCk7XG4gICAgfVxuXG4gICAgJi5kb3duLWljb24gc3ZnIHtcbiAgICAgIHRvcDogcmVtKC01cHgpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZTtcblxuICAgICAgY29sb3I6ICRpY29uLTAxO1xuICAgICAgb3V0bGluZS13aWR0aDogMnB4O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGljb24tMDE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyLS1yZWFkb25seSAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9sLWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXJfX2ludmFsaWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMnJlbTtcbiAgICBmaWxsOiAkc3VwcG9ydC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXJfX2ludmFsaWQtLXdhcm5pbmcge1xuICAgIGZpbGw6ICRzdXBwb3J0LTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlcl9faW52YWxpZC0td2FybmluZyBwYXRoW2RhdGEtaWNvbi1wYXRoPSdpbm5lci1wYXRoJ10ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgZmlsbDogJGNhcmJvbl9fYmxhY2stMTAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlci0tbGlnaHQgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXItLWxpZ2h0IGlucHV0W3R5cGU9J251bWJlciddOmRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tbnVtYmVyLS1saWdodFxuICAgIC4jeyRwcmVmaXh9LS1udW1iZXItLXJlYWRvbmx5XG4gICAgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXItLW1vYmlsZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiByZW0oMTQ0cHgpO1xuXG4gICAgLiN7JHByZWZpeH0tLW51bWJlcl9fY29udHJvbC1idG4sXG4gICAgJi4jeyRwcmVmaXh9LS1udW1iZXItLWxpZ2h0IC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2wtYnRuIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB3aWR0aDogcmVtKDQwcHgpO1xuICAgICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZS13aWR0aDogMnB4O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgICAgIH1cblxuICAgICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1pbi13aWR0aDogcmVtKDY0cHgpO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR1aS0wMztcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHVpLTAzO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tbnVtYmVyLS1saWdodCB7XG4gICAgICBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLW51bWJlcl9fY29udHJvbC1idG4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6ZSBWYXJpYW50IHN0eWxlc1xuICAuI3skcHJlZml4fS0tbnVtYmVyLS14bCBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyLS14bCAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9sLWJ0biB7XG4gICAgaGVpZ2h0OiByZW0oMjRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbnVtYmVyLS14bC4jeyRwcmVmaXh9LS1udW1iZXItLW1vYmlsZVxuICAgIC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2wtYnRuIHtcbiAgICB3aWR0aDogcmVtKDQ4cHgpO1xuICAgIGhlaWdodDogcmVtKDQ4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlci0teGwgLiN7JHByZWZpeH0tLW51bWJlcl9fY29udHJvbC1idG4udXAtaWNvbiBzdmcge1xuICAgIC8vIE5lZWRlZCB0byBtYWludGFpbiBhcnJvdyBzcGFjaW5nIGJldHdlZW4gaW5wdXQgc2l6ZXMuXG4gICAgdG9wOiByZW0oNi42cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlci0teGwgLiN7JHByZWZpeH0tLW51bWJlcl9fY29udHJvbC1idG4uZG93bi1pY29uIHN2ZyB7XG4gICAgLy8gTmVlZGVkIHRvIG1haW50YWluIGFycm93IHNwYWNpbmcgYmV0d2VlbiBpbnB1dCBzaXplcy5cbiAgICB0b3A6IHJlbSgtNi42cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlci0tc20gaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlci0tc20gLiN7JHByZWZpeH0tLW51bWJlcl9fY29udHJvbC1idG4ge1xuICAgIGhlaWdodDogcmVtKDE2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW51bWJlci0tc20uI3skcHJlZml4fS0tbnVtYmVyLS1tb2JpbGVcbiAgICAuI3skcHJlZml4fS0tbnVtYmVyX19jb250cm9sLWJ0biB7XG4gICAgd2lkdGg6IHJlbSgzMnB4KTtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXItLXNtIC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2wtYnRuLnVwLWljb24gc3ZnIHtcbiAgICAvLyBOZWVkZWQgdG8gbWFpbnRhaW4gYXJyb3cgc3BhY2luZyBiZXR3ZWVuIGlucHV0IHNpemVzLlxuICAgIHRvcDogcmVtKDMuNHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1udW1iZXItLXNtIC4jeyRwcmVmaXh9LS1udW1iZXJfX2NvbnRyb2wtYnRuLmRvd24taWNvbiBzdmcge1xuICAgIC8vIE5lZWRlZCB0byBtYWludGFpbiBhcnJvdyBzcGFjaW5nIGJldHdlZW4gaW5wdXQgc2l6ZXMuXG4gICAgdG9wOiByZW0oLTMuNHB4KTtcbiAgfVxuXG4gIC8vTm8gbGFiZWwgcG9zaXRpb25pbmcgYWRqdXN0bWVudFxuICAuI3skcHJlZml4fS0tbnVtYmVyLS1ub2xhYmVsIC5ieC0tbGFiZWwgKyAuYngtLWZvcm1fX2hlbHBlci10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLW51bWJlci4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcblxuICAgIGlucHV0W3R5cGU9J251bWJlciddIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ251bWJlci1pbnB1dCcpIHtcbiAgQGluY2x1ZGUgbnVtYmVyLWlucHV0O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIExpbmtcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2NvbG9ycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdGhlbWUnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuXG4vLy8gTGluayBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbGlua1xuQG1peGluIGxpbmsge1xuICAuI3skcHJlZml4fS0tbGluayB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgY29sb3I6ICRsaW5rLTAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGhvdmVyLXByaW1hcnktdGV4dDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICY6YWN0aXZlOnZpc2l0ZWQsXG4gICAgJjphY3RpdmU6dmlzaXRlZDpob3ZlciB7XG4gICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmU7XG4gICAgfVxuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAkbGluay0wMTtcbiAgICB9XG5cbiAgICAmOnZpc2l0ZWQ6aG92ZXIge1xuICAgICAgY29sb3I6ICRob3Zlci1wcmltYXJ5LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpbmstLWRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tbGluay0tZGlzYWJsZWQ6aG92ZXIge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGluay4jeyRwcmVmaXh9LS1saW5rLS12aXNpdGVkOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkdmlzaXRlZC1saW5rO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpbmsuI3skcHJlZml4fS0tbGluay0tdmlzaXRlZDp2aXNpdGVkOmhvdmVyIHtcbiAgICBjb2xvcjogJGhvdmVyLXByaW1hcnktdGV4dDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saW5rLiN7JHByZWZpeH0tLWxpbmstLWlubGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkaG92ZXItcHJpbWFyeS10ZXh0O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGluay0tZGlzYWJsZWQuI3skcHJlZml4fS0tbGluay0taW5saW5lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saW5rLS1zbSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnaGVscGVyLXRleHQtMDEnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saW5rLS1sZyB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMicpO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2xpbmsnKSB7XG4gIEBpbmNsdWRlIGxpbms7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGlzdFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBMaXN0IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBsaXN0XG5AbWl4aW4gbGlzdHMge1xuICAuI3skcHJlZml4fS0tbGlzdC0tbmVzdGVkLFxuICAuI3skcHJlZml4fS0tbGlzdC0tdW5vcmRlcmVkLFxuICAuI3skcHJlZml4fS0tbGlzdC0tb3JkZXJlZCxcbiAgLiN7JHByZWZpeH0tLWxpc3QtLW9yZGVyZWQtLW5hdGl2ZSB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LS1vcmRlcmVkLS1uYXRpdmUge1xuICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdF9faXRlbSB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZCB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDY7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC0tb3JkZXJlZDpub3QoLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZCkge1xuICAgIGNvdW50ZXItcmVzZXQ6IGl0ZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC0tb3JkZXJlZDpub3QoLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZClcbiAgICA+IC4jeyRwcmVmaXh9LS1saXN0X19pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbGlzdC0tb3JkZXJlZDpub3QoLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZClcbiAgICA+IC4jeyRwcmVmaXh9LS1saXN0X19pdGVtOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiByZW0oLTI0cHgpO1xuICAgIGNvbnRlbnQ6IGNvdW50ZXIoaXRlbSkgJy4nO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBpdGVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtLW9yZGVyZWQuI3skcHJlZml4fS0tbGlzdC0tbmVzdGVkLFxuICAuI3skcHJlZml4fS0tbGlzdC0tb3JkZXJlZC0tbmF0aXZlLiN7JHByZWZpeH0tLWxpc3QtLW5lc3RlZCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBsb3dlci1sYXRpbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1saXN0LS11bm9yZGVyZWQgPiAuI3skcHJlZml4fS0tbGlzdF9faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0kY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgICAgLy8g4oCTIGVuIGRhc2hcbiAgICAgIGNvbnRlbnQ6ICdcXDAwMjAxMyc7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWxpc3QtLXVub3JkZXJlZC4jeyRwcmVmaXh9LS1saXN0LS1uZXN0ZWRcbiAgICA+IC4jeyRwcmVmaXh9LS1saXN0X19pdGVtOjpiZWZvcmUge1xuICAgIC8vIG9mZnNldCB0byBhY2NvdW50IGZvciBzbWFsbGVyIOKWqiB2cyDigJNcbiAgICBsZWZ0OiAtJGNhcmJvbi0tc3BhY2luZy0wNDtcbiAgICAvLyDilqogc3F1YXJlXG4gICAgY29udGVudDogJ1xcMDAyNUFBJztcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdsaXN0cycpIHtcbiAgQGluY2x1ZGUgbGlzdHM7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG4vLy8gRGF0YSB0YWJsZSBhY3Rpb24gc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGRhdGEtdGFibGVcbkBtaXhpbiBkYXRhLXRhYmxlLXYyLWFjdGlvbiB7XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1RPT0xCQVJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJsZS10b29sYmFyIHtcbiAgICAvLyBOZWVkIGZvciBiYXRjaCBhY3Rpb25zXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogJHVpLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGNsaXAtcGF0aCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1hY3Rpb25zIH4gLiN7JHByZWZpeH0tLXRvb2xiYXItY29udGVudCB7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIDEwMCUsIDAgMTAwJSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1jb250ZW50IC4jeyRwcmVmaXh9LS1zZWFyY2ggLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgLy8gRm9yIHRvb2xiYXIgYW5pbWF0aW9uIHdpdGggKGVzcC4pIHBlcnNpc3RlbnQgc2VhcmNoIGJveFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vREVQUkVDQVRFRCB2MTAvdjkgc2VhcmNoIGJlaGF2aW91clxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnMgfiAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDExMG1zO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vSElEREVOIFNFQVJDSCAtIERFRkFVTFQgVE9PTEJBUlxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogZmxleCAkdHJhbnNpdGlvbi0tZXhwYW5zaW9uICRjYXJib24tLXN0YW5kYXJkLWVhc2luZztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZSAuI3skcHJlZml4fS0tc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICB3aWR0aDogJGxheW91dC0wNDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGVcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXIge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTA1O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGVcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXI6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1sYWJlbCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGVcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0cHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmZvY3VzOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb2N1cztcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL0FDVElWRSBTRUFSQ0ggLSBERUZBVUxUIFRPT0xCQVJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlIHtcbiAgICBmbGV4OiBhdXRvO1xuICAgIHRyYW5zaXRpb246IGZsZXggJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmUgLiN7JHByZWZpeH0tLXNlYXJjaCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tbGFiZWwsXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctMDk7XG4gICAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkZm9jdXM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0OmZvY3VzXG4gICAgKyAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmVcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyOmZvY3VzLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllcjphY3RpdmUsXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1NFQVJDSCBDTE9TRSBCVVRUT05cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudCAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmhvdmVyLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy9UT09MQkFSIEJVVFRPTlNcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LiN7JHByZWZpeH0tLXRvb2xiYXItYWN0aW9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAkbGF5b3V0LTA0O1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy0wNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC8vIERFUFJFQ0FURUQgcHJlZmVyIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LiN7JHByZWZpeH0tLXRvb2xiYXItYWN0aW9uIGluc3RlYWRcbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItYWN0aW9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAkbGF5b3V0LTA0O1xuICAgIGhlaWdodDogJGxheW91dC0wNDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbjpob3Zlcjpub3QoW2Rpc2FibGVkXSkge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci1maWVsZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbjpob3ZlclthcmlhLWV4cGFuZGVkPSd0cnVlJ10ge1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbltkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb25bZGlzYWJsZWRdIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbl9faWNvbiB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBmaWxsOiAkZGlzYWJsZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb246Zm9jdXM6bm90KFtkaXNhYmxlZF0pLFxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb246YWN0aXZlOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZSB7XG4gICAgICAvLyBUaGUgZm9jdXMgc3R5bGUgaXMgaGFuZGxlZCBieSBzZWFyY2ggaW5wdXQgaW4gaXQsIG5lZWQgdG8gYXZvaWQgZHVwbGljYXRlIGFuaW1hdGlvblxuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb24gfiAuI3skcHJlZml4fS0tYnRuIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZGF0YS10YWJsZSB7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vVE9PTEJBUiBCVVRUT04gSUNPTlNcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbl9faWNvbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAkbGF5b3V0LTAxO1xuICAgIGhlaWdodDogJGxheW91dC0wMTtcbiAgICBmaWxsOiAkaWNvbi0wMTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1BFUlNJU1RFTlQgU0VBUkNIIC0gT1BUSU9OQUwgVE9PTEJBUlxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICArIC4jeyRwcmVmaXh9LS10b29sYmFyLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudCAuI3skcHJlZml4fS0tc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllciB7XG4gICAgbGVmdDogJHNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctMDk7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50XG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQ6Zm9jdXM6bm90KFtkaXNhYmxlZF0pIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dDpob3Zlcjpub3QoW2Rpc2FibGVkXSkge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci1maWVsZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0OmFjdGl2ZTpub3QoW2Rpc2FibGVkXSksXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICBiYWNrZ3JvdW5kOiAkaG92ZXItZmllbGQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgd2lkdGg6ICRsYXlvdXQtMDQ7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnMtLWFjdGl2ZSB+IC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXIsXG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1hY3Rpb25zLS1hY3RpdmUgfiAuI3skcHJlZml4fS0tdG9vbGJhci1jb250ZW50IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDQ4cHgsIDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGNsaXAtcGF0aCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAsIDEwMCUgMCwgMCAwKTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL0JBVENIIEFDVElPTlNcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1hY3Rpb25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy0wNjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLTA2O1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGludGVyYWN0aXZlLTAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDhweCwgMCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgY2xpcC1wYXRoICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3BhY2l0eSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCAxMDAlIDAsIDEwMCUgMCwgMCAwKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnM6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYmF0Y2gtYWN0aW9ucy0tYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgMTAwJSAxMDAlLCAwIDEwMCUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cblxuICAvL2J0bnMgY29udGFpbmVyXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3QgLiN7JHByZWZpeH0tLWJ0biB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZy1naG9zdDtcbiAgICBjb2xvcjogJHRleHQtMDQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3QgLiN7JHByZWZpeH0tLWJ0bjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY3Rpb24tbGlzdCAuI3skcHJlZml4fS0tYnRuIC4jeyRwcmVmaXh9LS1idG5fX2ljb24ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nLTAzO1xuICAgIGZpbGw6ICRpY29uLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0IC4jeyRwcmVmaXh9LS1idG4gLiN7JHByZWZpeH0tLWJ0bl9faWNvbiAuc3QwIHtcbiAgICBmaWxsOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJhdGNoLWRvd25sb2FkIHtcbiAgICAvL21ha2VzIGl0IHNtYWxsZXIgdG8gbWF0Y2ggb3RoZXIgaWNvbnNcbiAgICBwYWRkaW5nOiByZW0oMXB4KTtcbiAgfVxuXG4gIC8vIE92ZXJyaWRlIGJ0biBzdHlsZXNcbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0IC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnk6Zm9jdXM6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0IC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnk6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0IC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnk6Zm9jdXM6OmFmdGVyLFxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3QgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3QgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeTpmb2N1cyB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICR1aS0wMTtcbiAgICBvdXRsaW5lLW9mZnNldDogcmVtKC0ycHgpO1xuICB9XG5cbiAgLy8gY2FuY2VsIGJ0biBwc2V1ZG8gZWxlbWVudFxuICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3RcbiAgICAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5Om50aC1jaGlsZCgzKTpob3ZlclxuICAgICsgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeS4jeyRwcmVmaXh9LS1iYXRjaC1zdW1tYXJ5X19jYW5jZWw6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWFjdGlvbi1saXN0XG4gICAgLiN7JHByZWZpeH0tLWJ0bi0tcHJpbWFyeTpudGgtY2hpbGQoMyk6Zm9jdXNcbiAgICArIC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnkuI3skcHJlZml4fS0tYmF0Y2gtc3VtbWFyeV9fY2FuY2VsOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1wcmltYXJ5LiN7JHByZWZpeH0tLWJhdGNoLXN1bW1hcnlfX2NhbmNlbDo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy92aXN1YWxseSAxNnB4IHNwYWNpbmcgaXMgMXB4IHRvbyBsb3dcbiAgICB0b3A6IHJlbSgxNXB4KTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiByZW0oMXB4KTtcbiAgICBoZWlnaHQ6ICRsYXlvdXQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQtMDQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnkuI3skcHJlZml4fS0tYmF0Y2gtc3VtbWFyeV9fY2FuY2VsOmhvdmVyOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi0tYmFzZSAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc7XG4gIH1cblxuICAvLyBjYW5jZWwgYnRuXG4gIC4jeyRwcmVmaXh9LS1iYXRjaC1zdW1tYXJ5X19jYW5jZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy0wNTtcbiAgfVxuXG4gIC8vIGl0ZW1zIHNlbGVjdGVkIHRleHRcbiAgLiN7JHByZWZpeH0tLWJhdGNoLXN1bW1hcnkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctMDU7XG4gICAgY29sb3I6ICR0ZXh0LTA0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJhdGNoLXN1bW1hcnlfX3BhcmEge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1NNQUxMIFRPT0xCQVJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJsZS10b29sYmFyLS1zbWFsbCB7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWV4cGFuZGFibGUsXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1wZXJzaXN0ZW50IHtcbiAgICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItZXhwYW5kYWJsZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCxcbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlLFxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItcGVyc2lzdGVudFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1jbG9zZSB7XG4gICAgICB3aWR0aDogcmVtKDMycHgpO1xuICAgICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllcixcbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLXBlcnNpc3RlbnRcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyIHtcbiAgICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLTAzO1xuICAgIH1cblxuICAgIC8vaGlkZGVuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlIHtcbiAgICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1leHBhbmRhYmxlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctMDk7XG4gICAgfVxuXG4gICAgLy9hY3RpdmVcbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZSB7XG4gICAgICBmbGV4OiBhdXRvO1xuICAgICAgdHJhbnNpdGlvbjogZmxleCAxNzVtcyAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmVcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQge1xuICAgICAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG5cbiAgICAgIGJhY2tncm91bmQ6ICRob3Zlci1maWVsZDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dDphY3RpdmUsXG4gICAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoLWNvbnRhaW5lci1hY3RpdmVcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2hcbiAgICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQ6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWZpZWxkO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllcjpmb2N1cyxcbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtY29udGFpbmVyLWFjdGl2ZVxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaFxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXI6YWN0aXZlLFxuICAgIC4jeyRwcmVmaXh9LS10b29sYmFyLXNlYXJjaC1jb250YWluZXItYWN0aXZlXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLW1hZ25pZmllcjpob3ZlciB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU01BTEwgQkFUQ0ggQUNUSU9OU1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXRvb2xiYXItLXNtYWxsXG4gICAgLiN7JHByZWZpeH0tLWJhdGNoLWFjdGlvbnNcbiAgICAuI3skcHJlZml4fS0tYWN0aW9uLWxpc3Qge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXRvb2xiYXItLXNtYWxsIC4jeyRwcmVmaXh9LS10b29sYmFyLWFjdGlvbiB7XG4gICAgd2lkdGg6IHJlbSgzMnB4KTtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBwYWRkaW5nOiAkc3BhY2luZy0wMyAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXRvb2xiYXItLXNtYWxsIC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnkge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMC4zNzVyZW0gLSAzcHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMzc1cmVtIC0gM3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS10b29sYmFyLS1zbWFsbFxuICAgIC4jeyRwcmVmaXh9LS1idG4tLXByaW1hcnkuI3skcHJlZml4fS0tYmF0Y2gtc3VtbWFyeV9fY2FuY2VsOjpiZWZvcmUge1xuICAgIHRvcDogcmVtKDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtdG9vbGJhci0tc21hbGxcbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1hY3Rpb25cbiAgICB+IC4jeyRwcmVmaXh9LS1idG4ge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnZGF0YS10YWJsZS12Mi1hY3Rpb24nKSB7XG4gIEBpbmNsdWRlIGRhdGEtdGFibGUtdjItYWN0aW9uO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJ21peGlucyc7XG5cbi8vLyBEYXRhIHRhYmxlIGNvcmUgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGRhdGEtdGFibGVcbkBtaXhpbiBkYXRhLXRhYmxlLWNvcmUge1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gQ29udGFpbmVyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS1jb250YWluZXIge1xuICAgIC8vIEFsbG93IHNwYWNlIGZvciBmb2N1cyBzdHlsZXNcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS1jb250ZW50IHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFRhYmxlIHRpdGxlIHRleHRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLWhlYWRlciB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctMDUgMCAkc3BhY2luZy0wNiAkc3BhY2luZy0wNTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS1oZWFkZXJfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdwcm9kdWN0aXZlLWhlYWRpbmctMDMnKTtcblxuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLWhlYWRlcl9fZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBEYXRhIHRhYmxlXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoZWFkIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdwcm9kdWN0aXZlLWhlYWRpbmctMDEnKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0ciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkbGF5b3V0LTA0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHRyLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0Ym9keSB0ciB0ZCxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkgdHIgdGgge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0Ym9keSB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkgdHI6aG92ZXIgdGQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHRyOmhvdmVyIHRoIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaG92ZXItdWk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRob3Zlci11aTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0ZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLTA1O1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0aCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoOmxhc3Qtb2YtdHlwZSB7XG4gICAgLy8gRG8gbm90IHVzZSBgcG9zaXRpb246IHJlbGF0aXZlYCwgYXMgaXRzIGJlaGF2aW9yIGlzIHVuZGVmaW5lZCBmb3IgbWFueSB0YWJsZSBlbGVtZW50czogaHR0cHM6Ly93d3cudzMub3JnL1RSL0NTUzIxL3Zpc3VyZW4uaHRtbCNwcm9wZGVmLXBvc2l0aW9uXG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIC4jeyRwcmVmaXh9LS10YWJsZS1oZWFkZXItbGFiZWwge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLTA1O1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRkLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0Ym9keSB0aCB7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy0wNTtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgYmFja2dyb3VuZDogJHVpLTAxO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDE7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcblxuICAgICsgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLTA0O1xuICAgIH1cbiAgfVxuXG4gIEBzdXBwb3J0cyAoLW1vei1hcHBlYXJhbmNlOiBub25lKSB7XG4gICAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGQge1xuICAgICAgLy8gRml4IHRvIHNob3cgYm9yZGVycyBpbiBmZlxuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICB9XG4gIH1cblxuICAvLyBPdmVyZmxvdyBNZW51IE92ZXJyaWRlc1xuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZVxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51XG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVbYXJpYS1leHBhbmRlZD0nZmFsc2UnXTpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGVcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudVxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51W2FyaWEtZXhwYW5kZWQ9J3RydWUnXTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChob3ZlcjogaG92ZXIpLFxuICAgICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAuI3skcHJlZml4fS0tZGF0YS10YWJsZVxuICAgICAgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnVcbiAgICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51XG4gICAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlXG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1vcGVuXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX2ljb24ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS12aXNpYmxlLW92ZXJmbG93LW1lbnVcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudVxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51XG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX2ljb24sXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlXG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudTpob3ZlclxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X19pY29uLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZVxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51XG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnU6Zm9jdXNcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGVcbiAgICB0cjpob3ZlclxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51XG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1yb3ctLW1lbnUtb3B0aW9uXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLWNvbnRlbnRcbiAgICBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBVc2VkIHRvIGNlbnRlciBzdmcgd2l0aG91dCBzZXR0aW5nIGRpc3BsYXkgZmxleCAvL2Rpc3BsYXkgYmxvY2sgbmVlZGVkIGZvciBvdmVyZmxvdyB0ZXh0IHRydW5jYXRpb25cbiAgICB0b3A6IHJlbSgzcHgpO1xuICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX3RyaWdnZXIge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXNlbGVjdGVkLXVpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X190cmlnZ2VyIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY29tcGFjdCB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudSxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51IHtcbiAgICBoZWlnaHQ6IHJlbSgyNHB4KTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydCB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudSB7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnUge1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy0wMztcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1pFQlJBXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYVxuICAgIHRib2R5XG4gICAgdHI6bm90KC4jeyRwcmVmaXh9LS1wYXJlbnQtcm93KTpudGgtY2hpbGQob2RkKVxuICAgIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpub3QoLiN7JHByZWZpeH0tLXBhcmVudC1yb3cpOm50aC1jaGlsZChldmVuKVxuICAgIHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGF0YS10YWJsZS16ZWJyYS1jb2xvcjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRhdGEtdGFibGUtemVicmEtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXRhLXRhYmxlLXplYnJhLWNvbG9yO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpub3QoLiN7JHByZWZpeH0tLXBhcmVudC1yb3cpOmhvdmVyXG4gICAgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGhvdmVyLXVpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaG92ZXItdWk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2VsZWN0XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94IC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCB7XG4gICAgLy8gRG8gbm90IHVzZSBgcG9zaXRpb246IHJlbGF0aXZlYCwgYXMgaXRzIGJlaGF2aW9yIGlzIHVuZGVmaW5lZCBmb3IgbWFueSB0YWJsZSBlbGVtZW50czogaHR0cHM6Ly93d3cudzMub3JnL1RSL0NTUzIxL3Zpc3VyZW4uaHRtbCNwcm9wZGVmLXBvc2l0aW9uXG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAvLyAxNnB4IHBhZGRpbmcgbGVmdCArIDhweCBwYWRkaW5nIHJpZ2h0ICsgMjBweCBjaGVja2JveCB3aWR0aFxuICAgIHdpZHRoOiByZW0oNDRweCk7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy0wNTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDM7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoZWFkIHRoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkgdGQuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94LFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0aGVhZCB0aC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHRkLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIC8vIHNwYWNpbmcgYmV0d2VlbiBjaGVja2JveCAvIGNoZXZyb24gYW5kIG5leHQgY2VsbCBzaG91bGQgYmUgMTZweCAvIDFyZW1cbiAgICAvLyBhZGphY2VudCBjZWxsIGhhcyAxNnB4IC8gMXJlbSBwYWRkaW5nLWxlZnQgdGhvdWdoLCBoZW5jZSB0aGUgcmVtb3ZhbCBvZiBwYWRkaW5nLXJpZ2h0IGhlcmVcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0aGVhZCB0aC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3gsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRib2R5IHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCB7XG4gICAgLy8gMTZweCBwYWRkaW5nIGxlZnQgKyAyMHB4IGNoZWNrYm94IHdpZHRoXG4gICAgd2lkdGg6IHJlbSgzNnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRoZWFkIHRoLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUgdGJvZHkgdGQuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kIHtcbiAgICAvLyAxNnB4IHBhZGRpbmcgbGVmdCArIDE2cHggY2hlY2tib3ggd2lkdGhcbiAgICB3aWR0aDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxM3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsIC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tcmFkaW8ge1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXRhYmxlIHRib2R5IHRoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGRhdGEtdGFibGUtY29sdW1uLWhvdmVyO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFJhZGlvXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLXJhZGlvIHtcbiAgICB3aWR0aDogNDhweDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tcmFkaW8gLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbl9fYXBwZWFyYW5jZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0oLTJweCk7XG4gIH1cblxuICAvLyBkZWZhdWx0IHNlbGVjdGVkIHJvdyArIHplYnJhIHNlbGVjdCAtIGV2ZW4gY2hpbGRcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpudGgtY2hpbGQob2RkKS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZFxuICAgIHRkLFxuICB0ci4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZCB0ZCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3RlZC11aTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlbGVjdGVkLXVpO1xuICAgIC8vIEJvdHRvbSBib3JkZXIgYWN0cyBhcyBzZXBhcmF0b3IgZnJvbSBvdGhlciByb3dzXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRhY3RpdmUtdWk7XG4gIH1cblxuICAvLyBGaXJzdCByb3dcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpmaXJzdC1vZi10eXBlOm50aC1jaGlsZChvZGQpLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkXG4gICAgdGQsXG4gIHRyLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkOmZpcnN0LW9mLXR5cGUgdGQge1xuICAgIC8vIFRvcCBib3JkZXIgYWN0cyBhcyBzZXBhcmF0b3IgZnJvbSB0aGVhZFxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYWN0aXZlLXVpO1xuICB9XG5cbiAgLy8gbGFzdCByb3cgKyB6ZWJyYSBzZWxlY3QgbGFzdFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmFcbiAgICB0Ym9keVxuICAgIHRyOmxhc3Qtb2YtdHlwZTpudGgtY2hpbGQob2RkKS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZFxuICAgIHRkLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmFcbiAgICB0Ym9keVxuICAgIHRyOmxhc3Qtb2YtdHlwZTpudGgtY2hpbGQoZXZlbikuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWRcbiAgICB0ZCxcbiAgdHIuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6bGFzdC1vZi10eXBlIHRkIHtcbiAgICAvLyBEb2Vzbid0IG5lZWQgc2VwYXJhdG9yc1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VsZWN0ZWQtdWk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZWxlY3RlZC11aTtcbiAgfVxuXG4gIC8vIHplYnJhIHNlbGVjdCAtIG9kZCBjaGlsZFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmFcbiAgICB0Ym9keVxuICAgIHRyOm50aC1jaGlsZChldmVuKS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZFxuICAgIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGFjdGl2ZS11aTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYVxuICAgIHRib2R5XG4gICAgdHI6bnRoLWNoaWxkKGV2ZW4pLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkOmhvdmVyXG4gICAgdGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGF0YS10YWJsZS1jb2x1bW4taG92ZXI7XG4gIH1cblxuICAvLyBob3ZlciArIHplYnJhIHNlbGVjdCAtIGV2ZW4gY2hpbGRcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdGJvZHlcbiAgICB0cjpudGgtY2hpbGQob2RkKS4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZDpob3ZlclxuICAgIHRkLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0Ym9keSAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6aG92ZXIgdGQge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kOiAkZGF0YS10YWJsZS1jb2x1bW4taG92ZXI7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkYXRhLXRhYmxlLWNvbHVtbi1ob3ZlcjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhdGEtdGFibGUtY29sdW1uLWhvdmVyO1xuICB9XG5cbiAgLy8gc2VsZWN0ZWQgb3ZlcmZsb3cgbWVudVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWRcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudVxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X19pY29uIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIENvbXBhY3RcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0IHRoZWFkIHRyLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY29tcGFjdCB0Ym9keSB0cixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QgdGJvZHkgdHIgdGgge1xuICAgIGhlaWdodDogcmVtKDI0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QgLiN7JHByZWZpeH0tLXRhYmxlLWhlYWRlci1sYWJlbCB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgycHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0IHRkLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY29tcGFjdCB0Ym9keSB0ciB0aCB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgycHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0IC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51IHtcbiAgICB3aWR0aDogcmVtKDMycHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3RcbiAgICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3RcbiAgICAuI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94XG4gICAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsIHtcbiAgICBoZWlnaHQ6IHJlbSgyM3B4KTtcbiAgICAvLyAyNHB4IHJvdyAtIDFweCBib3JkZXJcbiAgICBtaW4taGVpZ2h0OiByZW0oMjNweCk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2hvcnRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydCB0aGVhZCB0cixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IHRib2R5IHRyLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQgdGJvZHkgdHIgdGgge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IC4jeyRwcmVmaXh9LS10YWJsZS1oZWFkZXItbGFiZWwge1xuICAgIHBhZGRpbmctdG9wOiByZW0oN3B4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDdweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQgdGQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydCB0Ym9keSB0ciB0aCB7XG4gICAgcGFkZGluZy10b3A6IHJlbSg3cHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oNnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0XG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgzcHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oM3B4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFRhbGxcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsIHRoZWFkIHRyLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCB0Ym9keSB0cixcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdGJvZHkgdHIgdGgge1xuICAgIGhlaWdodDogcmVtKDY0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgLiN7JHByZWZpeH0tLXRhYmxlLWhlYWRlci1sYWJlbCB7XG4gICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLTA1O1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsIHRkLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCB0Ym9keSB0ciB0aCB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCB0aCxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdGQge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY2VsbC1zZWNvbmRhcnktdGV4dCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTdGF0aWNcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zdGF0aWMge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gLS0tLS0tLS0tLS0tLVxuICAvLyBTdGlja3kgaGVhZGVyXG4gIC8vIC0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGVfaW5uZXItY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXN0aWNreS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vIG1heC1oZWlnaHQ6IHJlbSgzMDBweCk7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXG4gICAgdGhlYWQsXG4gICAgdGJvZHksXG4gICAgdHIsXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICAvLyBIaWRlcyBpZSBzY3JvbGxiYXJcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICB0aGVhZCB0ciB0aCB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGFjdGl2ZS11aTtcbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgLy8gSGlkZXMgaWUgc2Nyb2xsYmFyXG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIH1cblxuICAgIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogM3JlbTtcbiAgICB9XG5cbiAgICB0ci4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdzpub3QoLiN7JHByZWZpeH0tLXBhcmVudC1yb3cpIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kIHtcbiAgICAgIG1heC13aWR0aDogcmVtKDQ4cHgpO1xuICAgIH1cblxuICAgIHRoZWFkIC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tcGFyZW50LXJvdyB7XG4gICAgICBtaW4taGVpZ2h0OiAzcmVtO1xuICAgIH1cblxuICAgIC8vIC4jeyRwcmVmaXh9LS1wYXJlbnQtcm93IHRkIHtcbiAgICAvLyAgIHBhZGRpbmc6IDFyZW07XG4gICAgLy8gfVxuXG4gICAgJjpub3QoLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QpOm5vdCguI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCk6bm90KC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydClcbiAgICAgIHRkOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLW1lbnUpOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94KSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtKDE0cHgpO1xuICAgIH1cblxuICAgIC8vIFRha2VuIGZyb20gTDEyNSBfZGF0YS10YWJsZS1leHBhbmRhYmxlXG4gICAgLy8gVXNlZCB0byBoaWRlIHdoaXRlIGxpbmUgd2hlbiBwYXJlbnQgcm93IGlzIGhvdmVyZWQgd2hlbiBjaGlsZCBpcyBleHBhbmRlZFxuICAgIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3c6aG92ZXJcbiAgICAgICsgdHJbZGF0YS1jaGlsZC1yb3ddXG4gICAgICB0ZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGhvdmVyLXVpO1xuICAgIH1cblxuICAgIHRyLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93Omxhc3Qtb2YtdHlwZSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIHRyLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkOmZpcnN0LW9mLXR5cGUgdGQge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBTZWxlY3RhYmxlIGZpeFxuICAgIHRoZWFkIHRoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCxcbiAgICB0Ym9keSB0ciB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3gge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiByZW0oMzZweCk7XG4gICAgICBtaW4td2lkdGg6IHJlbSgzNnB4KTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdGhlYWQgdGguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94LFxuICAgICYuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCB0ZC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3gge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgLy8gT3ZlcmZsb3cgZml4XG4gICAgLyogV2hlbiB1c2luZyBzdGlja3kgaGVhZGVyLCB3aXRoIGEgc2VsZWN0aW9uIGVsZW1lbnQgaW4gdGhlIGZpcnN0IGNvbHVtbiwgd2UgbmVlZCB0byBzZXQgdGhlIGxhc3QgaXRlbSB0byBhIGZpeGVkIHdpZHRoIHRvIG1hdGNoIHRoZSB0YWJsZSBib2R5LiBXZSBvbmx5IHdhbnQgdGhpcyB0byBoYXBwZW4gd2hlbiB0aGUgbGFzdCB0YWJsZSBoZWFkZXIgZG9lcyBub3QgaGF2ZSBhbnkgdGV4dCAqL1xuICAgIHRoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCB+IHRoOmxhc3Qtb2YtdHlwZTplbXB0eSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbSg2NHB4KTtcbiAgICB9XG5cbiAgICB0aDplbXB0eTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCkge1xuICAgICAgbWF4LXdpZHRoOiAyLjI1cmVtO1xuICAgIH1cblxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAvL2hpZGVzIHdlYmtpdCBzY3JvbGxiYXJcbiAgICB0aGVhZDo6LXdlYmtpdC1zY3JvbGxiYXIsXG4gICAgdGJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy9oaWRlcyBmZiBzY3JvbGxiYXJcbiAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgICAgdGhlYWQsXG4gICAgICB0Ym9keSB7XG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0Ym9keSB0cjpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICB0aDpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudSk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQtdjIpOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWljb24pLFxuICAgIHRkOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZC12Mik6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4taWNvbikge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0IHRyOm5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpLFxuICAgICYuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQgdHI6bm90KC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyksXG4gICAgJi4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsIHRyOm5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBDb21wYWN0XG4gICAgJi4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0IHRyOm5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbSgyNHB4KTtcbiAgICB9XG5cbiAgICAvLyBTaG9ydFxuICAgICYuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQgdHI6bm90KC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdykge1xuICAgICAgbWluLWhlaWdodDogcmVtKDMycHgpO1xuICAgIH1cblxuICAgIC8vIFRhbGxcbiAgICAmLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdHI6bm90KC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdykge1xuICAgICAgbWluLWhlaWdodDogcmVtKDY0cHgpO1xuICAgIH1cblxuICAgIC8vIEV4cGFuc2lvbiBvdmVycmlkZXNcbiAgICAmLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QgdHIgdGQuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0oNHB4KTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IHRyIHRkLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtKDhweCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLWhlYWRlci1sYWJlbCB7XG4gICAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93O1xuXG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICAgICAgLy8gTmVlZGVkIHRvIHJlZHVjZSAxcHgganVtcCB3aGVuIHRvZ2dsaW5nIGJldHdlZW4gdmFyaWF0aW9uc1xuICAgICAgcGFkZGluZy10b3A6IHJlbSgxNXB4KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY29tcGFjdCB0aCAuI3skcHJlZml4fS0tdGFibGUtaGVhZGVyLWxhYmVsIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0oM3B4KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2hvcnQgdGggLiN7JHByZWZpeH0tLXRhYmxlLWhlYWRlci1sYWJlbCB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtKDhweCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdGggLiN7JHByZWZpeH0tLXRhYmxlLWhlYWRlci1sYWJlbCB7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdGguI3skcHJlZml4fS0tdGFibGUtZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICAvLyBXaXRoIGR5bmFtaWMgY29udGVudCBvdmVycmlkZXNcbiAgICAmLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3RcbiAgICAgIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3dcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tY2hlY2tib3gsXG4gICAgJi4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydFxuICAgICAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvd1xuICAgICAgLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBzdGlja3ktaGVhZGVyKCRtYXgtd2lkdGg6IDEwMCUpO1xuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gd2l0aCBib29sZWFuIGNvbHVtblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIC5ieC0tZm9ybS1pdGVtLmJ4LS1jaGVja2JveC13cmFwcGVyOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0XG4gICAgLiN7JHByZWZpeH0tLWZvcm0taXRlbS4jeyRwcmVmaXh9LS1jaGVja2JveC13cmFwcGVyOmxhc3Qtb2YtdHlwZSxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3RcbiAgICAuI3skcHJlZml4fS0tZm9ybS1pdGVtLiN7JHByZWZpeH0tLWNoZWNrYm94LXdyYXBwZXI6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW46IHJlbSgtM3B4KSAwO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2RhdGEtdGFibGUtdjItY29yZScpIHtcbiAgQGluY2x1ZGUgZGF0YS10YWJsZS1jb3JlO1xufVxuIiwiLy8gQGFjY2VzcyBwdWJsaWNcbi8vIEBjb250ZW50IEluY2x1ZGVzIGEgYmxvY2sgb2Ygc3R5bGVzIGZvciBzdGlja3kgZGF0YSB0YWJsZXMgdGhhdCBzZXRzIHRhYmxlIG1heC13aWR0aCwgbWF4LWhlaWdodCBhbmQgY29sdW1uIG1pbi13aWR0aFxuLy8gQGV4YW1wbGUgLSBAaW5jbHVkZSBzdGlja3ktaGVhZGVyKCRtYXgtaGVpZ2h0OiByZW0oOTAwcHgpLCAkbWluLXdpZHRoOiByZW0oMzBweCkpO1xuLy8gQHBhcmFtIHt2YWx1ZX0gJG1heC13aWR0aCBbMTAwJV0gLSBzZXRzIHRoZSBtYXgtd2lkdGggb2YgdGhlIGRhdGEgdGFibGUgcGFyZW50IGNvbnRhaW5lclxuLy8gQHBhcmFtIHt2YWx1ZX0gJG1heC1oZWlnaHQgW3JlbSgzMDBweCldIC0gc2V0cyB0aGUgbWF4LWhlaWdodCBvZiB0aGUgZGF0YSB0YWJsZVxuLy8gQHBhcmFtIHt2YWx1ZX0gJG1pbi13aWR0aCBbcmVtKDEwMHB4KV0gLSBzZXRzIHRoZSBtaW4td2lkdGggb2YgdGgncyBhbmQgdGQncyBzbyB0aGVpciBzaXplcyBhbGlnblxuQG1peGluIHN0aWNreS1oZWFkZXIoXG4gICRtaW4td2lkdGg6IGZhbHNlLFxuICAkbWF4LXdpZHRoOiAxMDAlLFxuICAkbWF4LWhlaWdodDogcmVtKDMwMHB4KVxuKSB7XG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1tYXgtd2lkdGgge1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zdGlja3ktaGVhZGVyIHtcbiAgICBtYXgtaGVpZ2h0OiAkbWF4LWhlaWdodDtcblxuICAgIEBpZiAkbWluLXdpZHRoIHtcbiAgICAgIHRoOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWNoZWNrYm94KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1tZW51KTpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4taWNvbiksXG4gICAgICB0ZDpub3QoLiN7JHByZWZpeH0tLXRhYmxlLWNvbHVtbi1jaGVja2JveCk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1jb2x1bW4tbWVudSk6bm90KC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQpOm5vdCguI3skcHJlZml4fS0tdGFibGUtY29sdW1uLWljb24pIHtcbiAgICAgICAgbWluLXdpZHRoOiAkbWluLXdpZHRoO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcblxuLy8vIERhdGEgdGFibGUgZXhwYW5kYWJsZSBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZGF0YS10YWJsZVxuQG1peGluIGRhdGEtdGFibGUtZXhwYW5kYWJsZSB7XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBQYXJlbnQgcm93XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL2ZpcnN0IHJvdyB0b3AgYm9yZGVyXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3c6Zmlyc3Qtb2YtdHlwZSB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBDaGlsZCByb3dcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIGRlZmF1bHQgc3R5bGVzXG4gIC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taGlkZGVuIHRkIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAkc3BhY2luZy0wNTtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy9jaGlsZCByb3cgaGlkZGVuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3c6bm90KC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdylcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XSB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93Om5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpXG4gICAgKyB0cltkYXRhLWNoaWxkLXJvd11cbiAgICB0ZCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIGJvcmRlcjogMDtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdzpub3QoLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93KVxuICAgICsgdHJbZGF0YS1jaGlsZC1yb3ddXG4gICAgdGRcbiAgICAuI3skcHJlZml4fS0tY2hpbGQtcm93LWlubmVyLWNvbnRhaW5lciB7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy9jaGlsZCByb3cgdmlzaWJsZVxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93ICsgdHJbZGF0YS1jaGlsZC1yb3ddIHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyArIHRyW2RhdGEtY2hpbGQtcm93XSB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nLWJvdHRvbSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIHRyYW5zZm9ybSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3dcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XVxuICAgIHRkXG4gICAgLiN7JHByZWZpeH0tLWNoaWxkLXJvdy1pbm5lci1jb250YWluZXIge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAvLyBib3R0b20gYm9yZGVyIG92ZXJyaWRlc1xuICAuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyA+IHRkLFxuICAuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyArIHRyW2RhdGEtY2hpbGQtcm93XSA+IHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYXJlbnQtcm93Om5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpXG4gICAgKyB0cltkYXRhLWNoaWxkLXJvd11cbiAgICA+IHRkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cgPiB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICAvLyBGaXJzdCB0ZCBkb2Vzbid0IGhhdmUgYSB2aXNpYmxlIGJvcmRlclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSG92ZXIgc3R5bGVzXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93Om5vdCguI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3cpIHRkLFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93IHRkLFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC8vIGhvdmVyaW5nIG9uIGNvbGxhcHNlZCBwYXJlbnRcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdzpub3QoLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93KTpmaXJzdC1vZi10eXBlOmhvdmVyXG4gICAgdGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIC8vIGhvdmVyaW5nIG9uIGV4cGFuZGVkIHBhcmVudFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93OmhvdmVyIHRkIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3c6aG92ZXIgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgLy8gRmlyc3QgdGQgZG9lc24ndCBoYXZlIGEgdmlzaWJsZSBib3JkZXJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhvdmVyLXVpO1xuICB9XG5cbiAgLy8gQ2hpbGQgcm93IHdoZW4gaG92ZXJpbmcgb24gZXhwYW5kZWQgcGFyZW50XG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3c6aG92ZXJcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XVxuICAgIHRkIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICAvL2hvdmVyaW5nIG9uIGV4cGFuZGVkIGNoaWxkIHJvd1xuICB0ci4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXIgKyB0cltkYXRhLWNoaWxkLXJvd10gdGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICAvL2hvdmVyaW5nIG9uIGV4cGFuZGVkIGNoaWxkIHJvdyAoY2xhc3MgYWRkZWQgdG8gcGFyZW50KVxuICB0ci4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93LS1ob3ZlciB0ZCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHVpLTAzO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93LS1ob3ZlclxuICAgIHRkOmZpcnN0LW9mLXR5cGUge1xuICAgIC8vIEZpcnN0IHBhcmVudCB0ZCBkb2VzbnQgaGF2ZSB2aXNpYmxlIGJvdHRvbSBib3JkZXJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gRXhwYW5kIGljb24gY29sdW1uXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZSB0ZC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQge1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgbWluLXdpZHRoOiAyLjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlIHRkLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZCxcbiAgdGguI3skcHJlZml4fS0tdGFibGUtZXhwYW5kIHtcbiAgICBwYWRkaW5nOiAwICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgdGQuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbCB0aC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmQge1xuICAgIHBhZGRpbmctdG9wOiByZW0oMTZweCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgxNnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlXG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kW2RhdGEtcHJldmlvdXMtdmFsdWU9J2NvbGxhcHNlZCddIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kW2RhdGEtcHJldmlvdXMtdmFsdWU9J2NvbGxhcHNlZCddXG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZF9fc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kX19idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgnZmFsc2UnKTtcblxuICAgIGhlaWdodDogcmVtKDE2cHgpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZF9fYnV0dG9uOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kX19idXR0b246Zm9jdXMgLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZF9fc3ZnIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggJGZvY3VzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZF9fc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBmaWxsOiAkdWktMDU7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cblxuICAvLyBmaXggZXhwYW5kZWQgcGFyZW50IHNlcGFyYXRpbmcgYm9yZGVyIGxlbmd0aFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93XG4gICAgdGQuI3skcHJlZml4fS0tdGFibGUtZXhwYW5kXG4gICAgKyB0ZDo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IHJlbSgtMXB4KTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiByZW0oOHB4KTtcbiAgICBoZWlnaHQ6IHJlbSgxcHgpO1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMztcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3c6aG92ZXJcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmRcbiAgICArIHRkOjphZnRlcixcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXJcbiAgICB0ZC4jeyRwcmVmaXh9LS10YWJsZS1leHBhbmRcbiAgICArIHRkOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZFxuICAgIHRkLiN7JHByZWZpeH0tLXRhYmxlLWV4cGFuZFxuICAgICsgdGQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vWkVCUkFcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYSB0Ym9keSB0cltkYXRhLXBhcmVudC1yb3ddOm50aC1jaGlsZCg0biArIDMpIHRkLFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmEgdGJvZHkgdHJbZGF0YS1jaGlsZC1yb3ddOm50aC1jaGlsZCg0biArIDQpIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhIHRib2R5IHRyW2RhdGEtcGFyZW50LXJvd106bnRoLWNoaWxkKDRuICsgMSkgdGQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYSB0Ym9keSB0cltkYXRhLWNoaWxkLXJvd106bnRoLWNoaWxkKDRuICsgMikgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXRhLXRhYmxlLXplYnJhLWNvbG9yO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGF0YS10YWJsZS16ZWJyYS1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhdGEtdGFibGUtemVicmEtY29sb3I7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmEgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdyB0ZCxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhXG4gICAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvd1xuICAgICsgdHJbZGF0YS1jaGlsZC1yb3ddXG4gICAgdGQge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBib3JkZXItYm90dG9tICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJvcmRlci10b3AgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXplYnJhIHRib2R5IHRyW2RhdGEtcGFyZW50LXJvd106aG92ZXIgdGQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYVxuICAgIHRib2R5XG4gICAgdHJbZGF0YS1wYXJlbnQtcm93XTpob3ZlclxuICAgICsgdHJbZGF0YS1jaGlsZC1yb3ddXG4gICAgdGQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS16ZWJyYSB0Ym9keSB0cltkYXRhLWNoaWxkLXJvd106aG92ZXIgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1maWVsZDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGhvdmVyLWZpZWxkO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaG92ZXItZmllbGQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0temVicmFcbiAgICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93LiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93LS1ob3ZlclxuICAgIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiAkaG92ZXItdWk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRob3Zlci1maWVsZDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhvdmVyLWZpZWxkO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNlbGVjdGVkXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBQYXJlbnQgY29sbGFwc2VkXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6Zmlyc3Qtb2YtdHlwZSB0ZCB7XG4gICAgYmFja2dyb3VuZDogJHNlbGVjdGVkLXVpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYWN0aXZlLXVpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDM7XG4gICAgYm94LXNoYWRvdzogMCAxcHggJGFjdGl2ZS11aTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQgdGQge1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kOiAkc2VsZWN0ZWQtdWk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4ICRhY3RpdmUtdWk7XG4gIH1cblxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkOmxhc3Qtb2YtdHlwZSB0ZCB7XG4gICAgYmFja2dyb3VuZDogJHNlbGVjdGVkLXVpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDFweCAkdWktMDM7XG4gIH1cblxuICAvLyBQYXJlbnQgY29sbGFwc2VkIGhvdmVyXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQ6bm90KC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdyk6aG92ZXJcbiAgICB0ZCB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXNlbGVjdGVkLXVpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaG92ZXItc2VsZWN0ZWQtdWk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgICBib3gtc2hhZG93OiAwIDFweCAkaG92ZXItc2VsZWN0ZWQtdWk7XG4gIH1cblxuICAvLyBQYXJlbnQgZXhwYW5kZWRcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvd1xuICAgIHRkLFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93XG4gICAgdGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIC8vIE5vIHZpc2libGUgYm9yZGVyIHdoZW4gZXhwYW5kZWRcbiAgICBib3gtc2hhZG93OiAwIDFweCAkc2VsZWN0ZWQtdWk7XG4gIH1cblxuICAvLyBQYXJlbnQgZXhwYW5kZWQgaG92ZXJcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdzpob3ZlclxuICAgIHRkLFxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93OmhvdmVyXG4gICAgdGQ6Zmlyc3Qtb2YtdHlwZSxcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXJcbiAgICB0ZCxcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXJcbiAgICB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICBiYWNrZ3JvdW5kOiAkaG92ZXItc2VsZWN0ZWQtdWk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRob3Zlci1zZWxlY3RlZC11aTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxcHggJGhvdmVyLXNlbGVjdGVkLXVpO1xuICB9XG5cbiAgLy8gQ2hpbGQgcm93IGV4cGFuZGVkXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3dcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XVxuICAgIHRkIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYWN0aXZlLXVpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDM7XG4gICAgYm94LXNoYWRvdzogMCAxcHggJGFjdGl2ZS11aTtcbiAgfVxuXG4gIHRyLiN7JHByZWZpeH0tLXBhcmVudC1yb3cuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc2VsZWN0ZWQuI3skcHJlZml4fS0tZXhwYW5kYWJsZS1yb3dcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XTpsYXN0LW9mLXR5cGVcbiAgICB0ZCB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgyNHB4KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggJGFjdGl2ZS11aTtcbiAgfVxuXG4gIC8vIENoaWxkIHJvdyBleHBhbmRlZCBob3ZlclxuICB0ci4jeyRwcmVmaXh9LS1wYXJlbnQtcm93LiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNlbGVjdGVkLiN7JHByZWZpeH0tLWV4cGFuZGFibGUtcm93OmhvdmVyXG4gICAgKyB0cltkYXRhLWNoaWxkLXJvd11cbiAgICB0ZCxcbiAgdHIuI3skcHJlZml4fS0tcGFyZW50LXJvdy4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zZWxlY3RlZC4jeyRwcmVmaXh9LS1leHBhbmRhYmxlLXJvdy0taG92ZXJcbiAgICArIHRyW2RhdGEtY2hpbGQtcm93XVxuICAgIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2VsZWN0ZWQtdWk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnZGF0YS10YWJsZS12Mi1leHBhbmRhYmxlJykge1xuICBAaW5jbHVkZSBkYXRhLXRhYmxlLWV4cGFuZGFibGU7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG4vLy8gRGF0YSB0YWJsZSBzb3J0IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBkYXRhLXRhYmxlXG5AbWl4aW4gZGF0YS10YWJsZS1zb3J0IHtcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTb3J0YWJsZSB0YWJsZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0IHRoIHtcbiAgICBoZWlnaHQ6ICRsYXlvdXQtMDQ7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBUaCA+IEJ1dHRvblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQoZmFsc2UpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcblxuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAzO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSksXG4gICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnQ6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZGF0YS10YWJsZS1jb2x1bW4taG92ZXI7XG4gIH1cblxuICAvLyBjaGFuZ2VzIG9wYWNpdHkgd2hlbiB0aCBpcyBpbmFjdGl2ZSAoc2VlIGxpbmUgMTYxKVxuICAuI3skcHJlZml4fS0tdGFibGUtc29ydDpmb2N1cyBzdmcsXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0OmhvdmVyIHN2ZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gVGggPiBCdXR0b24gPiBTcGFuIChzcGFuIHJlcXVpcmVkIGZvciBmbGV4IGJ1Z3MgaW4gU2FmYXJpKVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0IHRoIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAzcmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNvcnQ6bm90KC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1jb21wYWN0KTpub3QoLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0KTpub3QoLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwpXG4gICAgdGhcbiAgICAuI3skcHJlZml4fS0tdGFibGUtc29ydF9fZmxleCB7XG4gICAgLyogSUUxMSB3b3JrYXJvdW5kIGZvciBhbGlnbi1pdGVtczogY2VudGVyIGFuZCBtaW4taGVpZ2h0XG4gICAgICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MvaXNzdWVzLzIzMSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICBoZWlnaHQ6IDIuOTlyZW07XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLWNvbXBhY3QuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc29ydFxuICAgIHRoXG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ZsZXgge1xuICAgIG1pbi1oZWlnaHQ6IDEuNXJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0XG4gICAgdGhcbiAgICAuI3skcHJlZml4fS0tdGFibGUtc29ydF9fZmxleCB7XG4gICAgbWluLWhlaWdodDogMnJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNvcnRcbiAgICB0aFxuICAgIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19mbGV4IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBtaW4taGVpZ2h0OiA0cmVtO1xuICB9XG5cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvL1RoID4gQnV0dG9uID4gU3ZnIChTb3J0IEljb25zKVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIGluYWN0aXZlIGljb25zXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19pY29uLWluYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0IC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24tdW5zb3J0ZWQge1xuICAgIHdpZHRoOiByZW0oMjBweCk7XG4gICAgbWluLXdpZHRoOiAkbGF5b3V0LTAxO1xuICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmctMDM7XG4gICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nLTAzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZmlsbDogJHVpLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnQuI3skcHJlZml4fS0tdGFibGUtc29ydC0tYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkZGF0YS10YWJsZS1jb2x1bW4taG92ZXI7XG4gIH1cblxuICAvLyBhY3RpdmUgaWNvbnNcbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnQuI3skcHJlZml4fS0tdGFibGUtc29ydC0tYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24tdW5zb3J0ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtc29ydC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0LS1hY3RpdmVcbiAgICAuI3skcHJlZml4fS0tdGFibGUtc29ydF9faWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0LS1hc2NlbmRpbmcgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFibGUtc29ydF9faWNvbiB7XG4gICAgd2lkdGg6IHJlbSgyMHB4KTtcbiAgICBtaW4td2lkdGg6ICRsYXlvdXQtMDE7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy0wMztcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctMDM7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tLWJhc2UgJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgfVxuXG4gIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAuI3skcHJlZml4fS0tdGFibGUtc29ydF9faWNvbixcbiAgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24tdW5zb3J0ZWQge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBmaWxsOiBCdXR0b25UZXh0O1xuICAgIH1cbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBDb21wYWN0LCBTaG9ydCwgVGFsbCBTb3J0YWJsZVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU29ydGFibGUgY29tcGFjdFxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tY29tcGFjdC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0IHRoIHtcbiAgICBoZWlnaHQ6IHJlbSgyNHB4KTtcbiAgfVxuXG4gIC8vIFNvcnRhYmxlIFNob3J0XG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zaG9ydC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0IHRoIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgfVxuXG4gIC8vIFNvcnRhYmxlIFRhbGxcbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tc29ydCB0aCB7XG4gICAgaGVpZ2h0OiByZW0oNjRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS0tdGFsbC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS1zb3J0XG4gICAgdGhcbiAgICAuI3skcHJlZml4fS0tdGFibGUtc29ydCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogcmVtKDY0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXRhbGwgLiN7JHByZWZpeH0tLXRhYmxlLXNvcnRfX2ljb24tdW5zb3J0ZWQsXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLS10YWxsIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0X19pY29uIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oMTNweCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnZGF0YS10YWJsZS1zb3J0Jykge1xuICBAaW5jbHVkZSBkYXRhLXRhYmxlLXNvcnQ7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdkYXRhLXRhYmxlLWlubGluZS1lZGl0Jykge1xuICAuI3skcHJlZml4fS0taW5saW5lLWVkaXQtbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtZWRpdC1sYWJlbF9faWNvbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1lZGl0LWxhYmVsLS1pbmFjdGl2ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtZWRpdC1sYWJlbF9fYWN0aW9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQoZmFsc2UpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lO1xuXG4gICAgICBwYWRkaW5nOiAkc3BhY2luZy0wMTtcblxuICAgICAgLiN7JHByZWZpeH0tLWlubGluZS1lZGl0LWxhYmVsX19pY29uIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1lZGl0LWxhYmVsX19pY29uIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtZWRpdC1pbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtZWRpdC1pbnB1dC0tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogcmVtKC0xMnB4KTtcblxuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtLXNob3J0IHtcbiAgICBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgcGFkZGluZzogMC40NXJlbSAyLjc1cmVtIDAuNDVyZW0gJHNwYWNpbmctMDU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdF9fYXJyb3cge1xuICAgICAgdG9wOiAwLjg3NXJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2RhdGEtdGFibGUtc2tlbGV0b24nKSB7XG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICB0aCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIHRoIHNwYW4sXG4gICAgdGQgc3BhbiB7XG4gICAgICBAaW5jbHVkZSBza2VsZXRvbjtcblxuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIHdpZHRoOiByZW0oNjRweCk7XG4gICAgICBoZWlnaHQ6IHJlbSgxNnB4KTtcbiAgICB9XG5cbiAgICB0cjpob3ZlciB7XG4gICAgICB0ZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICR1aS0wMztcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUsXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICR1aS0wMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS10YWJsZS1zb3J0LXYyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLXNrZWxldG9uIHRoIHNwYW4ge1xuICAgIGJhY2tncm91bmQ6ICRza2VsZXRvbi0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLiN7JHByZWZpeH0tLXNrZWxldG9uIHRoIHNwYW46OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJHNrZWxldG9uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtY29udGFpbmVyLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLWRhdGEtdGFibGUtaGVhZGVyX190aXRsZSB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICB3aWR0aDogcmVtKDEyMHB4KTtcbiAgICBoZWlnaHQ6IHJlbSgyNHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLWNvbnRhaW5lci4jeyRwcmVmaXh9LS1za2VsZXRvblxuICAgIC4jeyRwcmVmaXh9LS1kYXRhLXRhYmxlLWhlYWRlcl9fZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgd2lkdGg6IHJlbSgxNjBweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG5cbiAgICBtYXJnaW4tdG9wOiAkc3BhY2luZy0wMztcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJ21peGlucyc7XG5cbkBtaXhpbiBzdHJ1Y3R1cmVkLWxpc3Qge1xuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb24gLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10ZCxcbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC0tc2VsZWN0aW9uIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGgge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctLWRhdGEtc3RydWN0dXJlZC1saXN0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1pbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuXG4gICAgJi4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtLWNvbmRlbnNlZCAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkLFxuICAgICYuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1jb25kZW5zZWQgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10aCB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLXRkLS1jb25kZW5zZWQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb25cbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdzpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLWhlYWRlci1yb3cpOm5vdCguI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy0tc2VsZWN0ZWQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItcm93O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaG92ZXItcm93O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLXNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LS1oZWFkZXItcm93IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlbGVjdGVkLXVpO1xuICAgIGN1cnNvcjogaW5oZXJpdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93OmZvY3VzOm5vdCguI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy0taGVhZGVyLXJvdykge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtLXNlbGVjdGlvblxuICAgIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93OmhvdmVyOm5vdCguI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdy0taGVhZGVyLXJvdylcbiAgICA+IC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGQsXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93LiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLXNlbGVjdGVkXG4gICAgPiAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1zZWxlY3Rpb25cbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvdzpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1yb3ctLWhlYWRlci1yb3cpXG4gICAgPiAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHVpLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRoIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXRoO1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpO1xuXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtdHJhbnNmb3JtOiAkc3RydWN0dXJlZC1saXN0LXRleHQtdHJhbnNmb3JtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRib2R5IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGQge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmctdGQ7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBtYXgtd2lkdGg6IDM2cmVtO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtY29udGVudC0tbm93cmFwIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1zdmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRyYW5zaXRpb246IGFsbCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtcm93OmhvdmVyIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtc3ZnIHtcbiAgICBmaWxsOiAkaWJtLWNvbG9yX19ncmF5LTQwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC1pbnB1dDpjaGVja2VkXG4gICAgKyAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXJvd1xuICAgIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3Qtc3ZnLFxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LWlucHV0OmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS1zdHJ1Y3R1cmVkLWxpc3QtdGRcbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXN2ZyB7XG4gICAgZmlsbDogJGljb24tMDE7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LXRoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogOCU7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDNuICsgMikge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgzbiArIDMpIHtcbiAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgd2lkdGg6IDc1JTtcbiAgICAgIGhlaWdodDogMXJlbTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc3RydWN0dXJlZC1saXN0LiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC0tc2VsZWN0aW9uLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLXN0cnVjdHVyZWQtbGlzdC10aDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDUlO1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdzdHJ1Y3R1cmVkLWxpc3QnKSB7XG4gIEBpbmNsdWRlIHN0cnVjdHVyZWQtbGlzdDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy8gVXNlZCBvbmx5IGZvciBgLiN7cHJlZml4fS0tc3RydWN0dXJlZC1saXN0LS1jb25kZW5zZWRgXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHN0cnVjdHVyZWQtbGlzdFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJHN0cnVjdHVyZWQtbGlzdC1wYWRkaW5nXVxuQG1peGluIHBhZGRpbmctdGQtLWNvbmRlbnNlZCgkcGFkZGluZzogJHN0cnVjdHVyZWQtbGlzdC1wYWRkaW5nKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nIC8gNDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4vLy8gVXNlZCBvbmx5IGZvciBbZGF0YS1zdHJ1Y3R1cmVkLWxpc3RdXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHN0cnVjdHVyZWQtbGlzdFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJHN0cnVjdHVyZWQtbGlzdC1wYWRkaW5nXVxuQG1peGluIHBhZGRpbmctLWRhdGEtc3RydWN0dXJlZC1saXN0KCRwYWRkaW5nOiAkc3RydWN0dXJlZC1saXN0LXBhZGRpbmcpIHtcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmcgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nIC8gMjtcblxuICAvLyBDb250cm9scyBndXR0ZXIgc2l6ZXMgZm9yIGNoZWNrXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nIC8gMjtcbiAgfVxufVxuXG4vLy8gVXNlZCBvbmx5IGZvciBub3JtYWwgc3RydWN0dXJlZC1saXN0XG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHN0cnVjdHVyZWQtbGlzdFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJHN0cnVjdHVyZWQtbGlzdC1wYWRkaW5nXVxuQG1peGluIHBhZGRpbmctdGgoJHBhZGRpbmc6ICRzdHJ1Y3R1cmVkLWxpc3QtcGFkZGluZykge1xuICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTA1ICRjYXJib24tLXNwYWNpbmctMDUgJGNhcmJvbi0tc3BhY2luZy0wM1xuICAgICRjYXJib24tLXNwYWNpbmctMDU7XG59XG5cbi8vLyBVc2VkIG9ubHkgZm9yIG5vcm1hbCBzdHJ1Y3R1cmVkLWxpc3Rcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgc3RydWN0dXJlZC1saXN0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskc3RydWN0dXJlZC1saXN0LXBhZGRpbmddXG5AbWl4aW4gcGFkZGluZy10ZCgkcGFkZGluZzogJHN0cnVjdHVyZWQtbGlzdC1wYWRkaW5nKSB7XG4gIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDUgJGNhcmJvbi0tc3BhY2luZy0wNSAkY2FyYm9uLS1zcGFjaW5nLTA2XG4gICAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdGhlbWUtdG9rZW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90b29sdGlwJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9rZXlmcmFtZXMnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuLy8vIENvZGUgc25pcHBldCBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgY29kZS1zbmlwcGV0XG5AbWl4aW4gc25pcHBldCB7XG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0IGNvZGUge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2NvZGUtMDEnKTtcbiAgfVxuXG4gIC8vIElubGluZSBDb2RlIFNuaXBwZXRcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZSB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDM7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvcHktYWN0aXZlO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGZvY3VzO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tY2FyZXQ7XG5cbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWNvcHktYnRuX19mZWVkYmFjayB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1jb250ZW50KCdpY29uJyk7XG5cbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgY2xpcDogYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnYm90dG9tJywgJ2NlbnRlcicpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZS4jeyRwcmVmaXh9LS1jb3B5LWJ0bi0tYW5pbWF0aW5nOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1pbmxpbmUuI3skcHJlZml4fS0tY29weS1idG4tLWFuaW1hdGluZ1xuICAgIC4jeyRwcmVmaXh9LS1jb3B5LWJ0bl9fZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZS4jeyRwcmVmaXh9LS1jb3B5LWJ0bi0tYW5pbWF0aW5nLiN7JHByZWZpeH0tLWNvcHktYnRuLS1mYWRlLW91dDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tc25pcHBldC0taW5saW5lLiN7JHByZWZpeH0tLWNvcHktYnRuLS1hbmltYXRpbmcuI3skcHJlZml4fS0tY29weS1idG4tLWZhZGUtb3V0XG4gICAgLiN7JHByZWZpeH0tLWNvcHktYnRuX19mZWVkYmFjayB7XG4gICAgYW5pbWF0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSBoaWRlLWZlZWRiYWNrO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZS4jeyRwcmVmaXh9LS1jb3B5LWJ0bi0tYW5pbWF0aW5nLiN7JHByZWZpeH0tLWNvcHktYnRuLS1mYWRlLWluOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1pbmxpbmUuI3skcHJlZml4fS0tY29weS1idG4tLWFuaW1hdGluZy4jeyRwcmVmaXh9LS1jb3B5LWJ0bi0tZmFkZS1pblxuICAgIC4jeyRwcmVmaXh9LS1jb3B5LWJ0bl9fZmVlZGJhY2sge1xuICAgIGFuaW1hdGlvbjogJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSkgc2hvdy1mZWVkYmFjaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1pbmxpbmUgY29kZSB7XG4gICAgcGFkZGluZzogMCAkc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1pbmxpbmUuI3skcHJlZml4fS0tc25pcHBldC0tbm8tY29weSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgICBjdXJzb3I6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWxpZ2h0LiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZS4jeyRwcmVmaXh9LS1zbmlwcGV0LS1uby1jb3B5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG5cbiAgLy8gU2luZ2xlIExpbmUgU25pcHBldFxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlIHtcbiAgICBAaW5jbHVkZSBieC0tc25pcHBldDtcblxuICAgIG1pbi13aWR0aDogcmVtKDMyMHB4KTtcbiAgICBtYXgtd2lkdGg6IHJlbSg3NjBweCk7XG4gICAgaGVpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlLiN7JHByZWZpeH0tLXNuaXBwZXQtLW5vLWNvcHkge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAkY2FyYm9uLS1zcGFjaW5nLTA1IHRyYW5zcGFyZW50O1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLXNpbmdsZSBwcmUge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2NvZGUtMDEnKTtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLTAzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogcmVtKDU2cHgpO1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vIFNhZmFyaSBpbnRlcnByZXRzIGB0cmFuc3BhcmVudGAgZGlmZmVyZW50bHksIHNvIG1ha2UgY29sb3IgdG9rZW4gdmFsdWUgdHJhbnNwYXJlbnQgaW5zdGVhZDpcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoJGZpZWxkLTAxLCAwKSwgJGZpZWxkLTAxKTtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIE11bHRpIExpbmUgU25pcHBldFxuICAuI3skcHJlZml4fS0tc25pcHBldC0tbXVsdGkge1xuICAgIEBpbmNsdWRlIGJ4LS1zbmlwcGV0O1xuXG4gICAgbWluLXdpZHRoOiByZW0oMzIwcHgpO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLy9jbG9zZWQgc25pcHBldCBjb250YWluZXJcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLW11bHRpIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IHJlbSg1NnB4KTtcbiAgICBtYXgtaGVpZ2h0OiByZW0oMjM4cHgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAkZHVyYXRpb24tLW1vZGVyYXRlLTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAvLyBleHBhbmRlZCBzbmlwcGV0IGNvbnRhaW5lclxuICAuI3skcHJlZml4fS0tc25pcHBldC0tbXVsdGkuI3skcHJlZml4fS0tc25pcHBldC0tZXhwYW5kXG4gICAgLiN7JHByZWZpeH0tLXNuaXBwZXQtY29udGFpbmVyIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy0wNTtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aS4jeyRwcmVmaXh9LS1zbmlwcGV0LS13cmFwdGV4dCBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICAvLyBjbG9zZWQgcHJlXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aSAuI3skcHJlZml4fS0tc25pcHBldC1jb250YWluZXIgcHJlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMjRweCk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aS4jeyRwcmVmaXh9LS1zbmlwcGV0LS1uby1jb3B5XG4gICAgLiN7JHByZWZpeH0tLXNuaXBwZXQtY29udGFpbmVyXG4gICAgcHJlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLy8gZXhwYW5kZWQgcHJlXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aS4jeyRwcmVmaXh9LS1zbmlwcGV0LS1leHBhbmRcbiAgICAuI3skcHJlZml4fS0tc25pcHBldC1jb250YWluZXJcbiAgICBwcmUge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tbXVsdGkgLiN7JHByZWZpeH0tLXNuaXBwZXQtY29udGFpbmVyIHByZTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IHJlbSgxNnB4KTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLy8gU2FmYXJpIGludGVycHJldHMgYHRyYW5zcGFyZW50YCBkaWZmZXJlbnRseSwgc28gbWFrZSBjb2xvciB0b2tlbiB2YWx1ZSB0cmFuc3BhcmVudCBpbnN0ZWFkOlxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgkZmllbGQtMDEsIDApLCAkZmllbGQtMDEpO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLW11bHRpIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lciBwcmUgY29kZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vQ29weSBCdXR0b25cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXRfX2ljb24ge1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgdHJhbnNpdGlvbjogYWxsICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSByZXNldDtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgICAgb3V0bGluZS1jb2xvcjogJGZvY3VzO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aSAuI3skcHJlZml4fS0tc25pcHBldC1idXR0b24ge1xuICAgIHRvcDogJHNwYWNpbmctMDM7XG4gICAgcmlnaHQ6ICRzcGFjaW5nLTAzO1xuICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA3O1xuICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvcHktYWN0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJ0bi0tY29weV9fZmVlZGJhY2sge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICAvLyBPdmVycmlkZSBvbmUgaW4gY29kZSBzbmlwcGV0XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1mb250LWZhbWlseSgnc2FucycpO1xuXG4gICAgdG9wOiAwLjc1cmVtO1xuICAgIHJpZ2h0OiAxLjI1cmVtO1xuICAgIGxlZnQ6IGluaGVyaXQ7XG4gICAgei1pbmRleDogeignb3ZlcmxheScpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnRuLS1jb3B5X19mZWVkYmFjazo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tYnRuLS1jb3B5X19mZWVkYmFjazo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb3B5LWJ0bi1mZWVkYmFjaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1idG4tLWNvcHlfX2ZlZWRiYWNrOjphZnRlciB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLy8gVE9ETzogcmVtb3ZlIGNvcHkgYnV0dG9uIHN0eWxlcyBhYm92ZVxuICAuI3skcHJlZml4fS0tc25pcHBldCAuI3skcHJlZml4fS0tY29weS1idG4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICAvLyBPdmVycmlkZSBpbmhlcml0ZWQgcnVsZSBpbiBjb2RlIHNuaXBwZXRcbiAgICBAaW5jbHVkZSBjYXJib24tLWZvbnQtZmFtaWx5KCdzYW5zJyk7XG4gIH1cblxuICAvLyBTaG93IG1vcmUgLyBsZXNzIGJ1dHRvblxuICBidXR0b24uI3skcHJlZml4fS0tYnRuLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS1leHBhbmQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBAaW5jbHVkZSBjYXJib24tLWZvbnQtZmFtaWx5KCdzYW5zJyk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAkc3BhY2luZy0wMztcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTAzICRzcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ0bi0tZXhwYW5kXG4gICAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS10ZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiByZW0oLTFweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC1idG4tLWV4cGFuZC0taGlkZS4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ0bi0tZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS1leHBhbmQgLiN7JHByZWZpeH0tLWljb24tY2hldnJvbi0tZG93biB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDFweCk7XG4gICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nLTAzO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBmaWxsOiAkdGV4dC0wMTtcbiAgfVxuXG4gIGJ1dHRvbi4jeyRwcmVmaXh9LS1idG4uI3skcHJlZml4fS0tc25pcHBldC1idG4tLWV4cGFuZDpob3ZlciB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci11aTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ0bi0tZXhwYW5kOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvcHktYWN0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS1leHBhbmQ6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tZXhwYW5kXG4gICAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnRuLS1leHBhbmRcbiAgICAuI3skcHJlZml4fS0taWNvbi1jaGV2cm9uLS1kb3duIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbi0tZXhwYW5zaW9uO1xuICB9XG5cbiAgLy8gTGlnaHQgdmVyc2lvblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tbGlnaHQsXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1saWdodCAuI3skcHJlZml4fS0tc25pcHBldC1idXR0b24sXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1saWdodCAuI3skcHJlZml4fS0tc25pcHBldC1idG4tLWV4cGFuZCxcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWxpZ2h0IC4jeyRwcmVmaXh9LS1jb3B5LWJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWxpZ2h0LiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZTpob3ZlcixcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWxpZ2h0IC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ1dHRvbjpob3ZlcixcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWxpZ2h0IC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ0bi0tZXhwYW5kOmhvdmVyLFxuICAuI3skcHJlZml4fS0tc25pcHBldC0tbGlnaHQgLiN7JHByZWZpeH0tLWNvcHktYnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItbGlnaHQtdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tbGlnaHQuI3skcHJlZml4fS0tc25pcHBldC0taW5saW5lOmFjdGl2ZSxcbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWxpZ2h0IC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ1dHRvbjphY3RpdmUsXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1saWdodCAuI3skcHJlZml4fS0tc25pcHBldC1idG4tLWV4cGFuZDphY3RpdmUsXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1saWdodCAuI3skcHJlZml4fS0tY29weS1idG46YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWxpZ2h0LXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWxpZ2h0LiN7JHByZWZpeH0tLXNuaXBwZXQtLXNpbmdsZTo6YWZ0ZXIsXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1saWdodC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aVxuICAgIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWNvbnRhaW5lclxuICAgIHByZTo6YWZ0ZXIge1xuICAgIC8vIFNhZmFyaSBpbnRlcnByZXRzIGB0cmFuc3BhcmVudGAgZGlmZmVyZW50bHksIHNvIG1ha2UgY29sb3IgdG9rZW4gdmFsdWUgdHJhbnNwYXJlbnQgaW5zdGVhZDpcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoJGZpZWxkLTAyLCAwKSwgJGZpZWxkLTAyKTtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIFN0YXRlXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1jb2RlLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBoZWlnaHQ6IHJlbSg5OHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS10ZXJtaW5hbC4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgaGVpZ2h0OiByZW0oNTZweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tc25pcHBldC1jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LiN7JHByZWZpeH0tLXNrZWxldG9uIGNvZGUge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtYnV0dG9uIC4jeyRwcmVmaXh9LS1idG4tLWNvcHlfX2ZlZWRiYWNrIHtcbiAgICAvLyAoVGhlIGhlaWdodCBvZiBidXR0b24pICsgKFRoZSBoZWlnaHQgb2YgdGhlIHRvb2x0aXAncyB0cmlhbmdsZSkgKyA0cHhcbiAgICB0b3A6IHJlbSg1MC44cHgpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDUwJTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiByZW0oLTRweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLW11bHRpIC4jeyRwcmVmaXh9LS1jb3B5LWJ0biB7XG4gICAgdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIHJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA3O1xuICAgIGhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aVxuICAgIC4jeyRwcmVmaXh9LS1zbmlwcGV0LWJ1dHRvblxuICAgIC4jeyRwcmVmaXh9LS1idG4tLWNvcHlfX2ZlZWRiYWNrIHtcbiAgICAvLyAoVGhlIGhlaWdodCBvZiBidXR0b24pICsgKFRoZSBoZWlnaHQgb2YgdGhlIHRvb2x0aXAncyB0cmlhbmdsZSkgKyA0cHhcbiAgICB0b3A6IHJlbSg0Mi44cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNuaXBwZXQtLWlubGluZSAuI3skcHJlZml4fS0tYnRuLS1jb3B5X19mZWVkYmFjayB7XG4gICAgLy8gVE9ETzogdXNlIHVwZGF0ZWQgZ2xvYmFsIHRvb2x0aXAgbWl4aW5zIHVuZGVyIHRoZSBob29kXG4gICAgLy8gc2luY2UgYWxsIG9mIHRoZSBwb3NpdGlvbmluZyB2YWx1ZXMgZm9yIHRoZSBjb3B5IGJ1dHRvbiB0b29sdGlwIGFyZSBhcmJpdHJhcnkgaGFyZCBjb2RlZCByZW0gdmFsdWVzLCB3ZSBuZWVkIHRoaXMgYXJiaXRyYXJ5IDRweCBvZmZzZXQgdG8ga2VlcCB0aGUgcHJvcGVyIHRvb2x0aXAgc3BhY2luZyBhY2NvcmRpbmcgdG8gdGhlIHNwZWNcbiAgICB0b3A6IGNhbGMoMTAwJSAtICN7cmVtKDRweCl9KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1MCU7XG4gIH1cblxuICAjeyRwcmVmaXh9LS1zbmlwcGV0LS1tdWx0aS4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgaGVpZ2h0OiByZW0oOThweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBoZWlnaHQ6IHJlbSg1NnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbmlwcGV0LiN7JHByZWZpeH0tLXNrZWxldG9uIHNwYW4ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHdpZHRoOiA4NSU7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc25pcHBldC0tc2luZ2xlLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLXNuaXBwZXQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdzbmlwcGV0Jykge1xuICBAaW5jbHVkZSBzbmlwcGV0O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcblxuLy8vIENvZGUgc25pcHBldCBiYXNlIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBjb2RlLXNuaXBwZXRcbkBtaXhpbiBieC0tc25pcHBldCB7XG4gIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2NvZGUtMDEnKTtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHJlbSg2MDBweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbmlwcGV0LWJhY2tncm91bmQtY29sb3I7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gT3ZlcmZsb3cgTWVudVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1oZWxwZXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuXG4vLy8gT3ZlcmZsb3cgbWVudSBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgb3ZlcmZsb3ctbWVudVxuQG1peGluIG92ZXJmbG93LW1lbnUge1xuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSxcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX3RyaWdnZXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldDtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogcmVtKDQwcHgpO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpLFxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtM3B4O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1zbSB7XG4gICAgd2lkdGg6IHJlbSgzMnB4KTtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS14bCB7XG4gICAgd2lkdGg6IHJlbSg0OHB4KTtcbiAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgfVxuXG4gIC8vIE92ZXJ3cml0ZSBJY29uIFRvb2x0aXAgZm9jdXMgc3R5bGVzXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXAtLWExMXkuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlcjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgc3ZnIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tb3BlbixcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tb3BlblxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X190cmlnZ2VyIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tbGlnaHQuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tb3BlbixcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWxpZ2h0LiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLW9wZW5cbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9fdHJpZ2dlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX2ljb24ge1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgZmlsbDogJGljb24tMDE7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93O1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMzJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IHooJ2Zsb2F0aW5nJyk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiByZW0oMTYwcHgpO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMlxuICAgICAgICBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICAgICAgY29udGVudDogJyc7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tb3Blbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9ucy0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDI7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tbGlnaHQuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tb3Blbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdib3R0b20nXTo6YWZ0ZXIge1xuICAgIHRvcDogcmVtKC0zcHgpO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHJlbSg0MHB4KTtcbiAgICBoZWlnaHQ6IHJlbSgzcHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSd0b3AnXTo6YWZ0ZXIge1xuICAgIGJvdHRvbTogcmVtKC04cHgpO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHJlbSg0MHB4KTtcbiAgICBoZWlnaHQ6IHJlbSg4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdsZWZ0J106OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IHJlbSgtNnB4KTtcbiAgICB3aWR0aDogcmVtKDZweCk7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J3JpZ2h0J106OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogcmVtKC02cHgpO1xuICAgIHdpZHRoOiByZW0oNnB4KTtcbiAgICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnMtLXNtLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9ucyB7XG4gICAgJltkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdib3R0b20nXTo6YWZ0ZXIsXG4gICAgJltkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSd0b3AnXTo6YWZ0ZXIge1xuICAgICAgd2lkdGg6IHJlbSgzMnB4KTtcbiAgICB9XG4gICAgJltkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdsZWZ0J106OmFmdGVyLFxuICAgICZbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0ncmlnaHQnXTo6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9ucy0teGwuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zIHtcbiAgICAmW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2JvdHRvbSddOjphZnRlcixcbiAgICAmW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J3RvcCddOjphZnRlciB7XG4gICAgICB3aWR0aDogcmVtKDQ4cHgpO1xuICAgIH1cbiAgICAmW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2xlZnQnXTo6YWZ0ZXIsXG4gICAgJltkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdyaWdodCddOjphZnRlciB7XG4gICAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZmxpcC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0ndG9wJ106OmFmdGVyLFxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZmxpcC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0nYm90dG9tJ106OmFmdGVyIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWZsaXAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2xlZnQnXTo6YWZ0ZXIsXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1mbGlwLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdyaWdodCddOjphZnRlciB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnMtLW9wZW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9ucy0tc21cbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24ge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9ucy0teGxcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24ge1xuICAgIGhlaWdodDogcmVtKDQ4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tbGlnaHQgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGVjb3JhdGl2ZS0wMTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG46OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcblxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpLFxuICAgICAgY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLTNweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG4gc3ZnIHtcbiAgICBmaWxsOiAkaWNvbi0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX2J0bjpob3ZlciBzdmcge1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLWNvbnRlbnQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLS1kYW5nZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tbGlnaHRcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRhbmdlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkZWNvcmF0aXZlLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLS1kYW5nZXJcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG46aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbi0tZGFuZ2VyXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuOmZvY3VzIHtcbiAgICBjb2xvcjogJHRleHQtMDQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cHBvcnQtMDE7XG5cbiAgICBzdmcge1xuICAgICAgZmlsbDogJHRleHQtMDQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLS1kaXNhYmxlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuXG4gICAgc3ZnIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZmxpcCB7XG4gICAgbGVmdDogLTE0MHB4O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDE0NXB4O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdvdmVyZmxvdy1tZW51Jykge1xuICBAaW5jbHVkZSBvdmVyZmxvdy1tZW51O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcblxuLy8vIENvbnRlbnQgc3dpdGNoZXIgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGNvbnRlbnQtc3dpdGNoZXJcbkBtaXhpbiBjb250ZW50LXN3aXRjaGVyIHtcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tc20ge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItLXhsIHtcbiAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0biB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGNhcmJvbi0tc3BhY2luZy0wMyAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICBib3JkZXItY29sb3I6ICRmb2N1cztcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkZm9jdXMsIGluc2V0IDAgMCAwIDNweCAkdWktMDE7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC0wMTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tbGlnaHQgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1saWdodC11aTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHJlbSg0cHgpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHJlbSg0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiByZW0oNHB4KTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogcmVtKDRweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogcmVtKDFweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRlbnQtc3dpdGNoZXItZGl2aWRlcjtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjpmaXJzdC1vZi10eXBlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tbGlnaHRcbiAgICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRlY29yYXRpdmUtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tbGlnaHRcbiAgICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46Zm9jdXM6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItLWxpZ2h0XG4gICAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmZvY3VzXG4gICAgKyAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItLWxpZ2h0XG4gICAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmhvdmVyOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1saWdodFxuICAgIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjpob3ZlclxuICAgICsgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1saWdodFxuICAgIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1zZWxlY3RlZDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tbGlnaHRcbiAgICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tc2VsZWN0ZWRcbiAgICArIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46Zm9jdXM6OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmZvY3VzXG4gICAgKyAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci1idG46OmJlZm9yZSxcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmhvdmVyOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjpob3ZlclxuICAgICsgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOjpiZWZvcmUsXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1zZWxlY3RlZDo6YmVmb3JlLFxuICAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlci0tc2VsZWN0ZWRcbiAgICArIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyX19pY29uIHtcbiAgICB0cmFuc2l0aW9uOiBmaWxsICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGZpbGw6ICR0ZXh0LTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXJfX2ljb24gKyBzcGFuIHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyX19sYWJlbCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bjpob3ZlciAuI3skcHJlZml4fS0tY29udGVudC1zd2l0Y2hlcl9faWNvbixcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuOmZvY3VzIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyX19pY29uIHtcbiAgICBmaWxsOiAkdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1saWdodFxuICAgIC4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLWJ0bi4jeyRwcmVmaXh9LS1jb250ZW50LXN3aXRjaGVyLS1zZWxlY3RlZCxcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItLXNlbGVjdGVkIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDU7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtMDM7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItYnRuLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXItLXNlbGVjdGVkXG4gICAgLiN7JHByZWZpeH0tLWNvbnRlbnQtc3dpdGNoZXJfX2ljb24ge1xuICAgIGZpbGw6ICRpbnZlcnNlLTAxO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2NvbnRlbnQtc3dpdGNoZXInKSB7XG4gIEBpbmNsdWRlIGNvbnRlbnQtc3dpdGNoZXI7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuXG4uZmxhdHBpY2tyLWNhbGVuZGFyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBhbmltYXRpb246IG5vbmU7XG4gIGRpcmVjdGlvbjogbHRyO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMzE1cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAxcHggMCAwICNlNmU2ZTYsIC0xcHggMCAwICNlNmU2ZTYsIDAgMXB4IDAgI2U2ZTZlNixcbiAgICAwIC0xcHggMCAjZTZlNmU2LCAwIDNweCAxM3B4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIub3Blbixcbi5mbGF0cGlja3ItY2FsZW5kYXIuaW5saW5lIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIG1heC1oZWlnaHQ6IDY0MHB4O1xufVxuXG4uZmxhdHBpY2tyLWNhbGVuZGFyLm9wZW4ge1xuICBAaW5jbHVkZSBib3gtc2hhZG93O1xuICB6LWluZGV4OiA5OTk5OTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiByZW0oMjg4cHgpO1xuICBoZWlnaHQ6IHJlbSgzMzZweCk7XG4gIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDIgJGNhcmJvbi0tc3BhY2luZy0wMiAkY2FyYm9uLS1zcGFjaW5nLTAzXG4gICAgJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnYm9yZGVyJyk7XG4gIH1cbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlLm9wZW4ge1xuICBhbmltYXRpb246IGZwRmFkZUluRG93biAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5pbmxpbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5zdGF0aWMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMnB4KTtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5zdGF0aWMub3BlbiB7XG4gIHotaW5kZXg6IDk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIuaGFzV2Vla3Mge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhciAuaGFzV2Vla3MgLmRheUNvbnRhaW5lcixcbi5mbGF0cGlja3ItY2FsZW5kYXIgLmhhc1RpbWUgLmRheUNvbnRhaW5lciB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhciAuaGFzV2Vla3MgLmRheUNvbnRhaW5lciB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuLmZsYXRwaWNrci1jYWxlbmRhci5zaG93VGltZUlucHV0Lmhhc1RpbWUgLmZsYXRwaWNrci10aW1lIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbn1cbi5mbGF0cGlja3ItY2FsZW5kYXIubm9DYWxlbmRhci5oYXNUaW1lIC5mbGF0cGlja3ItdGltZSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhcjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5mbGF0cGlja3ItbW9udGhzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbn1cbi5mbGF0cGlja3ItbW9udGgge1xuICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdwcm9kdWN0aXZlLWhlYWRpbmctMDEnKTtcbiAgaGVpZ2h0OiByZW0oNDBweCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJHRleHQtMDE7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mbGF0cGlja3ItcHJldi1tb250aCxcbi5mbGF0cGlja3ItbmV4dC1tb250aCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBwYWRkaW5nOiAxMHB4IGNhbGMoMy41NyUgLSAxLjVweCk7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5mbGF0cGlja3ItcHJldi1tb250aCxcbi5mbGF0cGlja3ItbmV4dC1tb250aCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IHJlbSg0MHB4KTtcbiAgd2lkdGg6IHJlbSg0MHB4KTtcbiAgcGFkZGluZzogMDtcbiAgZmlsbDogJHRleHQtMDE7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICB9XG59XG5cbi5mbGF0cGlja3ItcHJldi1tb250aDpob3ZlciBzdmcsXG4uZmxhdHBpY2tyLW5leHQtbW9udGg6aG92ZXIgc3ZnIHtcbiAgZmlsbDogJHRleHQtMDE7XG59XG5cbi5mbGF0cGlja3ItbmV4dC1tb250aC5kaXNhYmxlZCxcbi5mbGF0cGlja3ItcHJldi1tb250aC5kaXNhYmxlZCB7XG4gIHN2ZyB7XG4gICAgZmlsbDogJHVpLTA1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAmOmhvdmVyIHN2ZyB7XG4gICAgZmlsbDogJHVpLTA1O1xuICB9XG59XG5cbi5mbGF0cGlja3ItY3VycmVudC1tb250aCB7XG4gIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiByZW0oMjhweCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZsYXRwaWNrci1jdXJyZW50LW1vbnRoIC5jdXItbW9udGgge1xuICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAyO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgfVxufVxuXG4ubnVtSW5wdXRXcmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogcmVtKDYwcHgpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgfVxufVxuXG4ubnVtSW5wdXRXcmFwcGVyOmhvdmVyIC5hcnJvd1VwLFxuLm51bUlucHV0V3JhcHBlcjpob3ZlciAuYXJyb3dEb3duIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm51bUlucHV0V3JhcHBlcjpob3ZlciAubnVtSW5wdXRbZGlzYWJsZWRdIH4gLmFycm93VXAsXG4ubnVtSW5wdXRXcmFwcGVyOmhvdmVyIC5udW1JbnB1dFtkaXNhYmxlZF0gfiAuYXJyb3dEb3duIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm51bUlucHV0V3JhcHBlciAubnVtSW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAyO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICR0ZXh0LTAxO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogNjAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgLy8gQWRkZWQgaW4gd2hlbiB1cGdyYWRlZCB0byBGbGF0cGlja3IgNC41LjUgKCMxOTc3KVxuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogRmlyZWZveCAqL1xuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2JvcmRlcicpO1xuICB9XG5cbiAgJltkaXNhYmxlZF0sXG4gICZbZGlzYWJsZWRdOmhvdmVyIHtcbiAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4gICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIC8vIEFkZGVkIGluIHdoZW4gdXBncmFkZWQgdG8gRmxhdHBpY2tyIDQuNS41ICgjMTk3NylcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbWFyZ2luOiAwOyAvKiA8LS0gQXBwYXJlbnRseSBzb21lIG1hcmdpbiBhcmUgc3RpbGwgdGhlcmUgZXZlbiB0aG91Z2ggaXQncyBoaWRkZW4gKi9cbiAgfVxufVxuXG4ubnVtSW5wdXRbZGlzYWJsZWRdIH4gLmFycm93VXA6OmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGRpc2FibGVkLTAyO1xufVxuXG4ubnVtSW5wdXRbZGlzYWJsZWRdIH4gLmFycm93RG93bjo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAkZGlzYWJsZWQtMDI7XG59XG5cbi5udW1JbnB1dFdyYXBwZXIgLmFycm93VXAsXG4ubnVtSW5wdXRXcmFwcGVyIC5hcnJvd0Rvd24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDIuNnJlbTtcbiAgd2lkdGg6IHJlbSgxMnB4KTtcbiAgaGVpZ2h0OiA1MCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMCByZW0oNHB4KSAwIHJlbSgycHgpO1xuICBsaW5lLWhlaWdodDogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDMzJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdDogcmVtKDRweCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiByZW0oNHB4KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6aG92ZXI6OmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkaW50ZXJhY3RpdmUtMDE7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGludGVyYWN0aXZlLTAxO1xuICB9XG59XG5cbi5udW1JbnB1dFdyYXBwZXIgLmFycm93VXAge1xuICB0b3A6IHJlbSg0cHgpO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tOiByZW0oNHB4KSBzb2xpZCAkaWNvbi0wMTtcbiAgfVxufVxuXG4ubnVtSW5wdXRXcmFwcGVyIC5hcnJvd0Rvd24ge1xuICB0b3A6IHJlbSgxMXB4KTtcblxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogcmVtKDRweCkgc29saWQgJGljb24tMDE7XG4gIH1cbn1cblxuLmZsYXRwaWNrci13ZWVrZGF5cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogcmVtKDQwcHgpO1xufVxuXG4uZmxhdHBpY2tyLXdlZWtkYXljb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZsYXRwaWNrci13ZWVrZGF5IHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGNvbG9yOiAkdGV4dC0wMTtcbiAgZmxleDogMTtcbn1cblxuLmZsYXRwaWNrci1kYXlzOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLmRheUNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGhlaWdodDogcmVtKDI0NnB4KTtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlIC5kYXlDb250YWluZXIuc2xpZGVMZWZ0IHtcbiAgYW5pbWF0aW9uOiBmcEZhZGVPdXQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLFxuICAgIGZwU2xpZGVMZWZ0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbn1cblxuLmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlIC5kYXlDb250YWluZXIuc2xpZGVMZWZ0LFxuLmZsYXRwaWNrci1jYWxlbmRhci5hbmltYXRlIC5kYXlDb250YWluZXIuc2xpZGVMZWZ0TmV3IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMHB4LCAwcHgpO1xufVxuXG4uZmxhdHBpY2tyLWNhbGVuZGFyLmFuaW1hdGUgLmRheUNvbnRhaW5lci5zbGlkZUxlZnROZXcge1xuICBhbmltYXRpb246IGZwRmFkZUluIDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSxcbiAgICBmcFNsaWRlTGVmdCA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG59XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIuYW5pbWF0ZSAuZGF5Q29udGFpbmVyLnNsaWRlUmlnaHQge1xuICBhbmltYXRpb246IGZwRmFkZU91dCA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSksXG4gICAgZnBTbGlkZVJpZ2h0IDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwcHgsIDBweCk7XG59XG5cbi5mbGF0cGlja3ItY2FsZW5kYXIuYW5pbWF0ZSAuZGF5Q29udGFpbmVyLnNsaWRlUmlnaHROZXcge1xuICBhbmltYXRpb246IGZwRmFkZUluIDQwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSxcbiAgICBmcFNsaWRlUmlnaHROZXcgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xufVxuXG4uZmxhdHBpY2tyLWRheSB7XG4gIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgaGVpZ2h0OiByZW0oNDBweCk7XG4gIHdpZHRoOiByZW0oNDBweCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogJHRleHQtMDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci11aTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICBvdXRsaW5lLWNvbG9yOiAkaW50ZXJhY3RpdmUtMDE7XG4gIH1cbn1cblxuLm5leHRNb250aERheSxcbi5wcmV2TW9udGhEYXkge1xuICBjb2xvcjogJHRleHQtMDU7XG59XG5cbi5mbGF0cGlja3ItZGF5LnRvZGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJGxpbmstMDE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3R0b206IHJlbSg3cHgpO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgaGVpZ2h0OiByZW0oNHB4KTtcbiAgICB3aWR0aDogcmVtKDRweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstMDE7XG4gIH1cbn1cblxuLmZsYXRwaWNrci1kYXkudG9kYXkubm8tYm9yZGVyIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uZmxhdHBpY2tyLWRheS50b2RheS5zZWxlY3RlZCB7XG4gIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmZsYXRwaWNrci1kYXkuaW5SYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRoaWdobGlnaHQ7XG4gIGNvbG9yOiAkdGV4dC0wMTtcbn1cblxuLmZsYXRwaWNrci1kYXkuc2VsZWN0ZWQge1xuICBjb2xvcjogJHRleHQtMDQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnRlcmFjdGl2ZS0wMTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiByZW0oMXB4KSBzb2xpZCAkdWktMDI7XG4gICAgb3V0bGluZS1vZmZzZXQ6IHJlbSgtM3B4KTtcbiAgfVxufVxuXG4uZmxhdHBpY2tyLWRheS5zdGFydFJhbmdlLnNlbGVjdGVkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgei1pbmRleDogMjtcbn1cblxuLmZsYXRwaWNrci1kYXkuc3RhcnRSYW5nZS5pblJhbmdlOm5vdCguc2VsZWN0ZWQpLFxuLmZsYXRwaWNrci1kYXkuZW5kUmFuZ2UuaW5SYW5nZSB7XG4gIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgYmFja2dyb3VuZDogJHVpLTAxO1xuICB6LWluZGV4OiAzO1xufVxuXG4uZmxhdHBpY2tyLWRheS5lbmRSYW5nZTpob3ZlciB7XG4gIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgYmFja2dyb3VuZDogJHVpLTAxO1xuICBjb2xvcjogJHRleHQtMDE7XG59XG5cbi5mbGF0cGlja3ItZGF5LmVuZFJhbmdlLmluUmFuZ2Uuc2VsZWN0ZWQge1xuICBjb2xvcjogJHRleHQtMDQ7XG4gIGJhY2tncm91bmQ6ICRpbnRlcmFjdGl2ZS0wMTtcbn1cblxuLmZsYXRwaWNrci1kYXkuZmxhdHBpY2tyLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgY29sb3I6ICRkaXNhYmxlZC0wMjtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4uZmxhdHBpY2tyLWlucHV0W3JlYWRvbmx5XSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQGtleWZyYW1lcyBmcEZhZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZwU2xpZGVMZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMHB4LCAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZwU2xpZGVMZWZ0TmV3IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwcHgsIDBweCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZnBTbGlkZVJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwcHgpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDBweCwgMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBmcFNsaWRlUmlnaHROZXcge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwcHgpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZnBGYWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBmcEZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuQGltcG9ydCAnZmxhdHBpY2tyLnNjc3MnO1xuXG4vLy8gRGF0ZSBwaWNrZXIgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGRhdGUtcGlja2VyXG5AbWl4aW4gZGF0ZS1waWNrZXIge1xuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXItLWxpZ2h0IC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faW5wdXQge1xuICAgIGJhY2tncm91bmQ6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlciB+IC4jeyRwcmVmaXh9LS1sYWJlbCB7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXItY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci1pbnB1dF9fd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci0tc2ltcGxlIHtcbiAgICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2lucHV0IHtcbiAgICAgIHdpZHRoOiByZW0oMTIwcHgpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci0tc2ltcGxlLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyLS1zaG9ydCB7XG4gICAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dCB7XG4gICAgICB3aWR0aDogNS43cmVtO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci0tc2luZ2xlXG4gICAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dCB7XG4gICAgd2lkdGg6IHJlbSgyODhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2lucHV0IHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdjb2RlLTAyJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtaW4td2lkdGg6IHJlbSgxNDRweCk7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDQ7XG4gICAgdHJhbnNpdGlvbjogJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSkgYWxsO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmLiN7JHByZWZpeH0tLWZvY3VzZWQge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyLWNvbG9ycztcbiAgICB9XG4gIH1cblxuICAvLyBTaXplIHZhcmlhbnQgc3R5bGVzXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faW5wdXQtLXhsIHtcbiAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faW5wdXQtLXNtIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vIHZlcnRpY2FsbHkgY2VudGVyIGljb24gd2l0aGluIHBhcmVudCBjb250YWluZXIgb24gSUUxMVxuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmaWxsOiAkaWNvbi0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faWNvbiB+IC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlcl9faW5wdXQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2lucHV0OmRpc2FibGVkIH4gLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pY29uIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGZpbGw6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci0tcmFuZ2VcbiAgICA+IC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci1jb250YWluZXI6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXItLXJhbmdlIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci1jb250YWluZXIsXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci0tcmFuZ2UgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dCB7XG4gICAgd2lkdGg6IHJlbSgxNDMuNXB4KTtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIFN0YXRlXG4gIC4jeyRwcmVmaXh9LS1kYXRlLXBpY2tlci4jeyRwcmVmaXh9LS1za2VsZXRvbiBpbnB1dCxcbiAgLiN7JHByZWZpeH0tLWRhdGUtcGlja2VyX19pbnB1dC4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXIuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcblxuICAgIHdpZHRoOiByZW0oNzVweCk7XG4gICAgaGVpZ2h0OiByZW0oMTRweCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnZGF0ZS1waWNrZXInKSB7XG4gIEBpbmNsdWRlIGRhdGUtcGlja2VyO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIERyb3Bkb3duXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuXG5AaW1wb3J0ICcuLi9saXN0LWJveC9saXN0LWJveCc7XG5cbi8vLyBEcm9wZG93biBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgZHJvcGRvd25cbkBtaXhpbiBkcm9wZG93biB7XG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bl9fd3JhcHBlci0taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICBncmlkLWdhcDogcmVtKDRweCk7XG4gICAgZ3JpZC10ZW1wbGF0ZTogYXV0byBhdXRvIC8gYXV0byBtaW4tY29udGVudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLiN7JHByZWZpeH0tLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbGFiZWwsXG4gICAgLiN7JHByZWZpeH0tLWZvcm1fX2hlbHBlci10ZXh0LFxuICAgIC4jeyRwcmVmaXh9LS1mb3JtLXJlcXVpcmVtZW50IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tZm9ybS1yZXF1aXJlbWVudCB7XG4gICAgICBncmlkLWNvbHVtbjogMjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1lbnUncyB0cmlnZ2VyaW5nIGVsZW1lbnQgdXBkYXRlZCB0byBidXR0b24gd2l0aCBEb3duc2hpZnQgdjUgdXBncmFkZVxuICAuI3skcHJlZml4fS0tZHJvcGRvd24gLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0O1xuXG4gICAgcGFkZGluZzogMCByZW0oNDhweCkgMCByZW0oMTZweCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0teGwge1xuICAgIGhlaWdodDogcmVtKDQ4cHgpO1xuICAgIG1heC1oZWlnaHQ6IHJlbSg0OHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0teGwgLiN7JHByZWZpeH0tLWRyb3Bkb3duX19hcnJvdyB7XG4gICAgdG9wOiByZW0oMTZweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLXNtIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBtYXgtaGVpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLXNtIC4jeyRwcmVmaXh9LS1kcm9wZG93bl9fYXJyb3cge1xuICAgIHRvcDogcmVtKDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4ge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW52YWxpZCB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnaW52YWxpZCcpO1xuXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQge1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtKDU2cHgpO1xuICAgIH1cblxuICAgICsgLiN7JHByZWZpeH0tLWZvcm0tcmVxdWlyZW1lbnQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWF4LWhlaWdodDogcmVtKDIwMHB4KTtcbiAgICAgIGNvbG9yOiAkdGV4dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd25fX2ludmFsaWQtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAkc3BhY2luZy0wODtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW46aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tb3Blbjpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1vcGVuIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saXN0IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93O1xuXG4gICAgLy8gNDBweCBpdGVtIGhlaWdodCAqIDUuNSBpdGVtcyBzaG93blxuICAgIG1heC1oZWlnaHQ6IHJlbSgyMjBweCk7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tdXAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpc3Qge1xuICAgIGJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bl9fYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbSgxM3B4KTtcbiAgICByaWdodDogMXJlbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNDUlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBmaWxsOiAkdWktMDU7XG4gIH1cblxuICBidXR0b24uI3skcHJlZml4fS0tZHJvcGRvd24tdGV4dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgLy8gYnV0dG9uLXJlc2V0IG1peGluIGNvbnRyYWRpY3RzIHdpdGggYngtLWRyb3Bkb3duLXRleHQgc3R5bGVzXG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tdGV4dCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy8gQWNjb3VudCBmb3IgdGhlIGJvcmRlciBpbiBgLmJ4LS1kcm9wZG93bmBcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDFweCk7XG4gICAgLy8gMnJlbSArIFNWRyB3aWR0aFxuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg0MnB4KTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpc3Qge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdztcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogeignZHJvcGRvd24nKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICAvLyBOT1RFOiBJRSwgRWRnZSwgYW5kIFNhZmFyaSBkbyBub3Qgc3VwcG9ydCB0d28gdmFsdWUgYG92ZXJmbG93YCBzaG9ydGhhbmQuXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1saWdodCAuI3skcHJlZml4fS0tZHJvcGRvd24tbGlzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duOm5vdCguI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4pXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWl0ZW0ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBvcGFjaXR5ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuXG4gICAgICArIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWQtdWk7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1vZi10eXBlIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtOmxhc3Qtb2YtdHlwZSAuI3skcHJlZml4fS0tZHJvcGRvd24tbGluayB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgbWFyZ2luOiAwICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgcGFkZGluZzogcmVtKDExcHgpIDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdWktMDM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1saWdodCAuI3skcHJlZml4fS0tZHJvcGRvd24tbGluayB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGRlY29yYXRpdmUtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLXNtIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDdweCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg3cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS14bCAuI3skcHJlZml4fS0tZHJvcGRvd24tbGluayB7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxNXB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE1cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1mb2N1c2VkLFxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tbGluazpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IHJlbSgxMXB4KSByZW0oMTZweCk7XG4gIH1cblxuICAvLyBXZSBkb24ndCB3YW50IHRvIGFwcGx5IGZvY3VzIHN0eWxlcyB2aWEgZm9jdXMgc2VsZWN0b3Igd2hlbiB1c2luZyB0aGUgYXJpYS1hY3RpdmVkZXNjZW5kYW50IHN0cnVjdHVyZVxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tbGlzdFthcmlhLWFjdGl2ZWRlc2NlbmRhbnRdXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpbms6Zm9jdXMge1xuICAgIC8vIENvcGllZCBmcm9tIC5ieC0tZHJvcGRvd24tbGluayBzdHlsZXNcbiAgICBtYXJnaW46IDAgJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBwYWRkaW5nOiByZW0oMTFweCkgMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLy8gTmVlZCBhZGRlZCB3ZWlnaHQgZm9yIGl0ZW0gdGhhdCBpcyA6Zm9jdXNlZCBhbmQgLmJ4LS1kcm9wZG93bi0tZm9jdXNlZFxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tbGlzdFthcmlhLWFjdGl2ZWRlc2NlbmRhbnRdXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1mb2N1c2VkOmZvY3VzIHtcbiAgICAvLyBjb3BpZWQgZnJvbSBkZWZhdWx0IGZvY3VzIHN0eWxlc1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiByZW0oMTFweCkgcmVtKDE2cHgpO1xuICB9XG5cbiAgLy8gRG9uJ3Qgd2FudCB0byBhbGxvdyBtdWx0aXBsZSBlbGVtZW50cyBoYXZlIGEgXCJzZWxlY3RlZFwiIHN0eWxlLiBOb3Qgc3VyZSB3aHkgYWN0aXZlXG4gIC8vIGhhZCB1bmlxdWUgc3R5bGVzIGluaXRpYWxseSBidXQgY3JlYXRpbmcgYW4gb3ZlcndyaXRlIGZvciB0aGUgbGF0ZXN0IEhUTUwgbWFya3VwIGZvclxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gRm9yIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UgaXQgd291bGQgYmUgcG9zc2libGUgdG8gY2xlYW4gdXBcbiAgLy8gdGhlIEhUTUwgc3RydWN0dXJlIHRvIHByZXZlbnQgdGhlIHVzZXIgb2YgOmFjdGl2ZSBhbmQgOmZvY3VzIHN0eWxlcyB3aGljaCBpcyBjcmVhdGluZ1xuICAvLyB0aGVzZSBkdXBsaWNhdGVkIHN0eWxlcyBpbiB0aGUgbGlzdC4gVGhlIENhcmJvbiAxMCB2ZXJzaW9uIG9mIGRyb3Bkb3duIGlzIGFscmVhZHlcbiAgLy8gc3VwcG9ydGluZyAyIHZlcnkgZGlmZmVyZW50IEhUTUwgc3RydWN0dXJlcy5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpc3RbYXJpYS1hY3RpdmVkZXNjZW5kYW50XVxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1pdGVtOmhvdmVyIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkaG92ZXItdWk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLXNlbGVjdGVkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1vcGVuIC4jeyRwcmVmaXh9LS1kcm9wZG93bl9fYXJyb3cge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1vcGVuLiN7JHByZWZpeH0tLWRyb3Bkb3duLS14bFxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saXN0IHtcbiAgICAvLyA0OHB4IGl0ZW0gaGVpZ2h0ICogNS41IGl0ZW1zIHNob3duXG4gICAgbWF4LWhlaWdodDogcmVtKDI2NHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tb3Blbi4jeyRwcmVmaXh9LS1kcm9wZG93bi0tc21cbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd24tbGlzdCB7XG4gICAgLy8gMzJweCBpdGVtIGhlaWdodCAqIDUuNSBpdGVtcyBzaG93blxuICAgIG1heC1oZWlnaHQ6IHJlbSgxNzZweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4gLiN7JHByZWZpeH0tLWRyb3Bkb3duLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLWRpc2FibGVkIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAxO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiByZW1vdmUgaW4gdjExXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQsXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19sYWJlbCB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIH1cblxuICAgIC8vIFRPRE86IHJlbW92ZSBpbiB2MTFcbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd25fX2Fycm93LFxuICAgIC4jeyRwcmVmaXh9LS1saXN0LWJveF9fbWVudS1pY29uIHN2ZyB7XG4gICAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS1kcm9wZG93bi0tbGlnaHQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLWxpc3QtYm94X19maWVsZCxcbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaWNvbiB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0tYXV0by13aWR0aCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiByZW0oNDAwcHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBqdXN0aWZ5LXNlbGY6IHN0YXJ0O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd25fX2Fycm93IHtcbiAgICAgIHRvcDogcmVtKDhweCk7XG4gICAgICByaWdodDogcmVtKDhweCk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUuI3skcHJlZml4fS0tZHJvcGRvd24tLW9wZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICBwYWRkaW5nOiByZW0oN3B4KSAkY2FyYm9uLS1zcGFjaW5nLTA3IHJlbSg3cHgpICRjYXJib24tLXNwYWNpbmctMDQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUuI3skcHJlZml4fS0tZHJvcGRvd24tLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXRleHQge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLWlubGluZS4jeyRwcmVmaXh9LS1kcm9wZG93bi0tZGlzYWJsZWQ6Zm9jdXNcbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd24tdGV4dCB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW5saW5lLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbnZhbGlkXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duX19pbnZhbGlkLWljb24ge1xuICAgIHJpZ2h0OiByZW0oMzJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLWlubGluZS4jeyRwcmVmaXh9LS1kcm9wZG93bi0taW52YWxpZFxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi10ZXh0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNTZweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLWlubGluZS4jeyRwcmVmaXh9LS1kcm9wZG93bi0tb3Blbjpmb2N1c1xuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saXN0IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1pbmxpbmUgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAuI3skcHJlZml4fS0tZHJvcGRvd24tLXNob3ctc2VsZWN0ZWQgLiN7JHByZWZpeH0tLWRyb3Bkb3duLS1zZWxlY3RlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdGVkLXVpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1kcm9wZG93bi1saW5rIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICsgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWl0ZW0gLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpbmsge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX3NlbGVjdGVkLWljb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLXYyLiN7JHByZWZpeH0tLXNrZWxldG9uLFxuICAuI3skcHJlZml4fS0tZHJvcGRvd24uI3skcHJlZml4fS0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Ryb3Bkb3duJykge1xuICBAaW5jbHVkZSBkcm9wZG93bjtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2RhbHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbkBpbXBvcnQgJy4uL2J1dHRvbi9idXR0b24nO1xuXG4vLy8gTW9kYWwgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG1vZGFsXG5AbWl4aW4gbW9kYWwge1xuICAuI3skcHJlZml4fS0tbW9kYWwge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiB6KCdtb2RhbCcpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tc2xvdy0wMiBtb3Rpb24oZXhpdCwgZXhwcmVzc2l2ZSksXG4gICAgICBvcGFjaXR5ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDIgbW90aW9uKGV4aXQsIGV4cHJlc3NpdmUpLFxuICAgICAgdmlzaWJpbGl0eSAwbXMgbGluZWFyICRkdXJhdGlvbi0tbW9kZXJhdGUtMDI7XG4gICAgY29udGVudDogJyc7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG92ZXJsYXktMDE7XG4gICAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1zbG93LTAyXG4gICAgICAgICAgbW90aW9uKGVudHJhbmNlLCBleHByZXNzaXZlKSxcbiAgICAgICAgb3BhY2l0eSAkZHVyYXRpb24tLW1vZGVyYXRlLTAyIG1vdGlvbihlbnRyYW5jZSwgZXhwcmVzc2l2ZSksXG4gICAgICAgIHZpc2liaWxpdHkgMG1zIGxpbmVhcjtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCxcbiAgICAuI3skcHJlZml4fS0tdGV4dC1hcmVhLFxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtaW5wdXQsXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCxcbiAgICAuI3skcHJlZml4fS0tZHJvcGRvd24sXG4gICAgLiN7JHByZWZpeH0tLWRyb3Bkb3duLWxpc3QsXG4gICAgLiN7JHByZWZpeH0tLW51bWJlciBpbnB1dFt0eXBlPSdudW1iZXInXSxcbiAgICAuI3skcHJlZml4fS0tZGF0ZS1waWNrZXJfX2lucHV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwuaXMtdmlzaWJsZSAuI3skcHJlZml4fS0tbW9kYWwtY29udGFpbmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZHVyYXRpb24tLW1vZGVyYXRlLTAyIG1vdGlvbihlbnRyYW5jZSwgZXhwcmVzc2l2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmciBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICAvLyBtYWtlIG1vZGFsIGVkZ2UgdmlzaWJsZSBvbiBoaWdoIGNvbnRyYXN0IHRoZW1lcyAoIzM4ODApXG4gICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtM3B4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTI0cHgsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tbW9kZXJhdGUtMDIgbW90aW9uKGV4aXQsIGV4cHJlc3NpdmUpO1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgd2lkdGg6IDg0JTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IDkwJTtcblxuICAgICAgLiN7JHByZWZpeH0tLW1vZGFsLWhlYWRlcixcbiAgICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50LFxuICAgICAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnRfX3JlZ3VsYXItY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwJTtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQtLXdpdGgtZm9ybSB7XG4gICAgICAgIC8vIE92ZXJyaWRlIGZvciBgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnRgXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLTA1O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChsZykge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIG1heC1oZWlnaHQ6IDg0JTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoeGxnKSB7XG4gICAgICB3aWR0aDogNDglO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1oZWFkZXIsXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWhlYWRlcixcbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQsXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50X19yZWd1bGFyLWNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQtLXdpdGgtZm9ybSB7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtY29udGFpbmVyLS14cyB7XG4gICAgLiN7JHByZWZpeH0tLW1vZGFsLWhlYWRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50LFxuICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50X19yZWd1bGFyLWNvbnRlbnQsXG4gICAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQtLXdpdGgtZm9ybSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy0wNTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KGxnKSB7XG4gICAgICB3aWR0aDogMzIlO1xuICAgICAgbWF4LWhlaWdodDogNDglO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCh4bGcpIHtcbiAgICAgIHdpZHRoOiAyNCU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRhaW5lci0tc20ge1xuICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1oZWFkZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wOTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudCxcbiAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudF9fcmVndWxhci1jb250ZW50LFxuICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50LS13aXRoLWZvcm0ge1xuICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICB3aWR0aDogNjAlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChsZykge1xuICAgICAgd2lkdGg6IDQyJTtcbiAgICAgIG1heC1oZWlnaHQ6IDcyJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoeGxnKSB7XG4gICAgICB3aWR0aDogMzYlO1xuXG4gICAgICAuI3skcHJlZml4fS0tbW9kYWwtaGVhZGVyLFxuICAgICAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQsXG4gICAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudF9fcmVndWxhci1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjAlO1xuICAgICAgfVxuXG4gICAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudC0td2l0aC1mb3JtIHtcbiAgICAgICAgLy8gT3ZlcnJpZGUgZm9yIGAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudGBcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRhaW5lci0tbGcge1xuICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1oZWFkZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wOTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudCxcbiAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudF9fcmVndWxhci1jb250ZW50LFxuICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1jb250ZW50LS13aXRoLWZvcm0ge1xuICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICB3aWR0aDogOTYlO1xuXG4gICAgICAuI3skcHJlZml4fS0tbW9kYWwtaGVhZGVyLFxuICAgICAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQsXG4gICAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudF9fcmVndWxhci1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjAlO1xuICAgICAgfVxuXG4gICAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudC0td2l0aC1mb3JtIHtcbiAgICAgICAgLy8gT3ZlcnJpZGUgZm9yIGAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudGBcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KGxnKSB7XG4gICAgICB3aWR0aDogODQlO1xuICAgICAgbWF4LWhlaWdodDogOTYlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCh4bGcpIHtcbiAgICAgIHdpZHRoOiA3MiU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWhlYWRlciB7XG4gICAgZ3JpZC1yb3c6IDEvMTtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy0wMztcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctMDU7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctMDk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtaGVhZGVyX19sYWJlbCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcblxuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLTAyO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1oZWFkZXJfX2hlYWRpbmcge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMycpO1xuXG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuXG4gICAgZ3JpZC1yb3c6IDIvLTI7XG4gICAgZ3JpZC1jb2x1bW46IDEvLTE7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMDk7XG5cbiAgICAvLyBSZXF1aXJlZCB0byBhY2NvbW1vZGF0ZSBmb2N1cyBvdXRsaW5lJ3MgbmVnYXRpdmUgb2Zmc2V0OlxuICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy0wMztcblxuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICA+ICoge1xuICAgICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1sb25nLTAxJyk7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVxdWlyZWQgc28gb3ZlcmZsb3ctaW5kaWNhdG9yIGRpc2FwcGVhcnMgYXQgZW5kIG9mIGNvbnRlbnRcbiAgLiN7JHByZWZpeH0tLW1vZGFsLXNjcm9sbC1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctMDc7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudC0tb3ZlcmZsb3ctaW5kaWNhdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAkc3BhY2luZy0wOTtcbiAgICBsZWZ0OiAwO1xuICAgIGdyaWQtcm93OiAyLy0yO1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIC8vIFNhZmFyaSBpbnRlcnByZXRzIGB0cmFuc3BhcmVudGAgZGlmZmVyZW50bHksIHNvIG1ha2UgY29sb3IgdG9rZW4gdmFsdWUgdHJhbnNwYXJlbnQgaW5zdGVhZDpcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKCR1aS0wMSwgMCksICR1aS0wMSk7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudDpmb2N1c1xuICAgIH4gLiN7JHByZWZpeH0tLW1vZGFsLWNvbnRlbnQtLW92ZXJmbG93LWluZGljYXRvciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRweCk7XG4gICAgbWFyZ2luOiAwIDJweCAycHg7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIC4jeyRwcmVmaXh9LS1tb2RhbC1zY3JvbGwtY29udGVudCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbW9kYWwtY29udGVudC0tb3ZlcmZsb3ctaW5kaWNhdG9yIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW1vZGFsLWZvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIGdyaWQtcm93OiAtMS8tMTtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGhlaWdodDogNHJlbTtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuXG4gICAgYnV0dG9uLiN7JHByZWZpeH0tLWJ0biB7XG4gICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLTA1O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLTA3O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgcGFkZGluZzogcmVtKDEycHgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGZvY3VzO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbW9kYWwtY2xvc2U6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tb2RhbC1jbG9zZV9faWNvbiB7XG4gICAgd2lkdGg6IHJlbSgyMHB4KTtcbiAgICBoZWlnaHQ6IHJlbSgyMHB4KTtcbiAgICBmaWxsOiAkaWNvbi0wMTtcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBmaWxsOiBCdXR0b25UZXh0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1ib2R5LS13aXRoLW1vZGFsLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tYm9keS0td2l0aC1tb2RhbC1vcGVuIC4jeyRwcmVmaXh9LS10b29sdGlwIHtcbiAgICB6LWluZGV4OiB6KCdtb2RhbCcpO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ21vZGFsJykge1xuICBAaW5jbHVkZSBtb2RhbDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaXN0IEJveFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi9jaGVja2JveC9jaGVja2JveCc7XG5AaW1wb3J0ICcuLi9saXN0LWJveC9saXN0LWJveCc7XG5cbi8vLyBNdWx0aSBzZWxlY3Qgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG11bHRpLXNlbGVjdFxuQG1peGluIG11bHRpc2VsZWN0IHtcbiAgLiN7JHByZWZpeH0tLW11bHRpLXNlbGVjdCAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUge1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tdWx0aS1zZWxlY3RcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uXG4gICAgLiN7JHByZWZpeH0tLWNoZWNrYm94LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbXVsdGktc2VsZWN0XG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19tZW51LWl0ZW1fX29wdGlvblxuICAgIC4jeyRwcmVmaXh9LS1jaGVja2JveC1sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogcmVtKDI4cHgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tdWx0aS1zZWxlY3RcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbV9fb3B0aW9uXG4gICAgPiAuI3skcHJlZml4fS0tZm9ybS1pdGVtIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1tdWx0aS1zZWxlY3RcbiAgICAuI3skcHJlZml4fS0tbGlzdC1ib3hfX21lbnUtaXRlbVxuICAgIC4jeyRwcmVmaXh9LS1jaGVja2JveDpjaGVja2VkXG4gICAgfiAuI3skcHJlZml4fS0tY2hlY2tib3gtbGFiZWwtdGV4dCB7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW11bHRpLXNlbGVjdC0tZmlsdGVyYWJsZSB7XG4gICAgLiN7JHByZWZpeH0tLWxpc3QtYm94X19zZWxlY3Rpb24tLW11bHRpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbXVsdGktc2VsZWN0LS1maWx0ZXJhYmxlLiN7JHByZWZpeH0tLW11bHRpLXNlbGVjdC0taW5saW5lLFxuICAuI3skcHJlZml4fS0tbXVsdGktc2VsZWN0LS1maWx0ZXJhYmxlLiN7JHByZWZpeH0tLW11bHRpLXNlbGVjdC0taW5saW5lXG4gICAgLiN7JHByZWZpeH0tLXRleHQtaW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbXVsdGktc2VsZWN0LS1zZWxlY3RlZCAuI3skcHJlZml4fS0tdGV4dC1pbnB1dCB7XG4gICAgLy8gdGhpcyB2YWx1ZSB3aWxsIG5lZWQgdG8gY2hhbmdlIGJhc2VkIG9uIHRoZSBudW1iZXIgb2YgZGlnaXRzIGluXG4gICAgLy8gdGhlIG51bWJlciBvZiBpdGVtcyBzZWxlY3RlZFxuICAgIC8vXG4gICAgLy8gaS5lLiB0aGUgaW5wdXQgZmllbGQgbmVlZHMgYWRqdXN0ZWQgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgd2lkdGggb2ZcbiAgICAvLyB0aGUgbnVtYmVyIGluIDxMaXN0Qm94LlNlbGVjdGlvbj5cbiAgICBwYWRkaW5nLWxlZnQ6IGNhcmJvbi0tbWluaS11bml0cyg3KTtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdtdWx0aS1zZWxlY3QnKSB7XG4gIEBpbmNsdWRlIG11bHRpc2VsZWN0O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5vdGlmaWNhdGlvbnNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuXG4vLy8gSW5saW5lIG5vdGlmaWNhdGlvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbm90aWZpY2F0aW9uXG5AbWl4aW4gaW5saW5lLW5vdGlmaWNhdGlvbnMge1xuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiByZW0oMjg4cHgpO1xuICAgIG1heC13aWR0aDogcmVtKDI4OHB4KTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogcmVtKDQ4cHgpO1xuICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgbWF4LXdpZHRoOiByZW0oNjA4cHgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChsZykge1xuICAgICAgbWF4LXdpZHRoOiByZW0oNzM2cHgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtYXgpIHtcbiAgICAgIG1heC13aWR0aDogcmVtKDgzMnB4KTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbjpub3QoLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdClcbiAgICBhIHtcbiAgICBjb2xvcjogJGludmVyc2UtbGluaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24gYTpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkICRpbnZlcnNlLWxpbms7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3RcbiAgICBhOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdCB7XG4gICAgLy8gU3RvcC1nYXAgdG8gZW5zdXJlIGNvbG9yIGNvbnRyYXN0ICh2cy4gZml4ZWQgYmFja2dyb3VuZCBjb2xvcikgdW50aWwgd2UgaGF2ZSBjb21wb25lbnQtc3BlY2lmaWMgdGhlbWUgdG9rZW5zXG4gICAgY29sb3I6IG1hcC1nZXQoJGNhcmJvbi0tdGhlbWUtLXdoaXRlLCAndGV4dC0wMScpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDFweCAwO1xuICAgICAgZmlsdGVyOiBvcGFjaXR5KDAuNCk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1lcnJvciB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wMSwgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1lcnJvciB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoXG4gICAgICAkc3VwcG9ydC0wMSxcbiAgICAgICRub3RpZmljYXRpb24tZXJyb3ItYmFja2dyb3VuZC1jb2xvclxuICAgICk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkc3VwcG9ydC0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0tc3VjY2VzcyB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wMiwgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1zdWNjZXNzIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbChcbiAgICAgICRzdXBwb3J0LTAyLFxuICAgICAgJG5vdGlmaWNhdGlvbi1zdWNjZXNzLWJhY2tncm91bmQtY29sb3JcbiAgICApO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHN1cHBvcnQtMDI7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWluZm8sXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1pbmZvLXNxdWFyZSB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wNCwgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1pbmZvLFxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWluZm8tc3F1YXJlIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbChcbiAgICAgICRzdXBwb3J0LTA0LFxuICAgICAgJG5vdGlmaWNhdGlvbi1pbmZvLWJhY2tncm91bmQtY29sb3JcbiAgICApO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHN1cHBvcnQtMDQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLXdhcm5pbmcsXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS13YXJuaW5nLWFsdCB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wMywgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS13YXJuaW5nLFxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLXdhcm5pbmctYWx0IHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbChcbiAgICAgICRzdXBwb3J0LTAzLFxuICAgICAgJG5vdGlmaWNhdGlvbi13YXJuaW5nLWJhY2tncm91bmQtY29sb3JcbiAgICApO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHN1cHBvcnQtMDM7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLXdhcm5pbmdcbiAgICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9faWNvblxuICAgIHBhdGhbb3BhY2l0eT0nMCddIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZpbGw6ICRjYXJib25fX2JsYWNrLTEwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXJnaW46IDAgJGNhcmJvbi0tc3BhY2luZy0wOSAwICRjYXJib24tLXNwYWNpbmctMDU7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19pY29uIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW4tdG9wOiByZW0oMTRweCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX3RleHQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZzogcmVtKDE1cHgpIDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9fdGl0bGUge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpO1xuXG4gICAgbWFyZ2luOiAwICRjYXJib24tLXNwYWNpbmctMDIgMCAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX3N1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2FjdGlvbi1idXR0b24uI3skcHJlZml4fS0tYnRuLS1naG9zdCB7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wODtcbiAgICBjb2xvcjogJGludmVyc2UtbGluaztcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgbWFyZ2luOiAkY2FyYm9uLS1zcGFjaW5nLTAzIDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdFxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Qge1xuICAgIGNvbG9yOiAkbGluay0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Q6YWN0aXZlLFxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9fYWN0aW9uLWJ1dHRvbi4jeyRwcmVmaXh9LS1idG4tLWdob3N0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW52ZXJzZS1ob3Zlci11aTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3RcbiAgICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9fYWN0aW9uLWJ1dHRvbi4jeyRwcmVmaXh9LS1idG4tLWdob3N0OmFjdGl2ZSxcbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdFxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Q6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJib24tLXdoaXRlLTA7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9fYWN0aW9uLWJ1dHRvbi4jeyRwcmVmaXh9LS1idG4tLWdob3N0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCAkaW52ZXJzZS1mb2N1cy11aTtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdFxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Q6Zm9jdXMge1xuICAgIG91dGxpbmUtY29sb3I6ICRmb2N1cztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1oaWRlLWNsb3NlLWJ1dHRvblxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi0tZ2hvc3Qge1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiByZW0oNDhweCk7XG4gICAgbWluLXdpZHRoOiByZW0oNDhweCk7XG4gICAgbWF4LXdpZHRoOiByZW0oNDhweCk7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAycHggc29saWQgJGludmVyc2UtZm9jdXMtdWk7XG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9fY2xvc2UtaWNvbiB7XG4gICAgICBmaWxsOiAkaW52ZXJzZS0wMTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdFxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19jbG9zZS1idXR0b246Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3RcbiAgICAuI3skcHJlZml4fS0taW5saW5lLW5vdGlmaWNhdGlvbl9fY2xvc2UtYnV0dG9uXG4gICAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb25fX2Nsb3NlLWljb24ge1xuICAgIGZpbGw6IG1hcC1nZXQoJGNhcmJvbi0tdGhlbWUtLXdoaXRlLCAndGV4dC0wMScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWlubGluZS1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdFxuICAgIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19hY3Rpb24tYnV0dG9uIHtcbiAgICBjb2xvcjogJGludGVyYWN0aXZlLTAxO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRpbnRlcmFjdGl2ZS0wMTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJib24tLXdoaXRlLTA7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2lubGluZS1ub3RpZmljYXRpb25zJykge1xuICBAaW5jbHVkZSBpbmxpbmUtbm90aWZpY2F0aW9ucztcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIElubGluZSBOb3RpZmljYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG5vdGlmaWNhdGlvblxuQG1peGluIGlubGluZS1ub3RpZmljYXRpb24tLWNvbG9yKCRjb2xvcikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3I7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgJGNvbG9yO1xuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19pY29uIHtcbiAgICBmaWxsOiAkY29sb3I7XG4gIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUb2FzdCBOb3RpZmljYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG5vdGlmaWNhdGlvblxuQG1peGluIG5vdGlmaWNhdGlvbi0tY29sb3IoJGNvbG9yKSB7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgJGNvbG9yO1xufVxuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIG5vdGlmaWNhdGlvblxuQG1peGluIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKCRjb2xvciwgJGJhY2tncm91bmQtY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY29sb3I7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJGNvbG9yO1xuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbm90aWZpY2F0aW9uX19pY29uLFxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uX19pY29uIHtcbiAgICBmaWxsOiAkY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBOb3RpZmljYXRpb25zXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnbWl4aW5zJztcblxuLy8vIFRvYXN0IG5vdGlmaWNhdGlvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgbm90aWZpY2F0aW9uXG5AbWl4aW4gdG9hc3Qtbm90aWZpY2F0aW9ucyB7XG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogcmVtKDI4OHB4KTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxNHB4KTtcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgYm94LXNoYWRvdzogMCAycHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtYXgpIHtcbiAgICAgIHdpZHRoOiByZW0oMzUycHgpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb246bm90KC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdClcbiAgICBhIHtcbiAgICBjb2xvcjogJGludmVyc2UtbGluaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbiBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24gYTpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkICRpbnZlcnNlLWxpbms7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0XG4gICAgYTpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdCB7XG4gICAgLy8gU3RvcC1nYXAgdG8gZW5zdXJlIGNvbG9yIGNvbnRyYXN0ICh2cy4gZml4ZWQgYmFja2dyb3VuZCBjb2xvcikgdW50aWwgd2UgaGF2ZSBjb21wb25lbnQtc3BlY2lmaWMgdGhlbWUgdG9rZW5zXG4gICAgY29sb3I6IG1hcC1nZXQoJGNhcmJvbi0tdGhlbWUtLXdoaXRlLCAndGV4dC0wMScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKCRpbnZlcnNlLXN1cHBvcnQtMDEsICRpbnZlcnNlLTAyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWVycm9yIHtcbiAgICBAaW5jbHVkZSBub3RpZmljYXRpb24tLWV4cGVyaW1lbnRhbChcbiAgICAgICRzdXBwb3J0LTAxLFxuICAgICAgJG5vdGlmaWNhdGlvbi1lcnJvci1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLXN1Y2Nlc3Mge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKCRpbnZlcnNlLXN1cHBvcnQtMDIsICRpbnZlcnNlLTAyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLXN1Y2Nlc3Mge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKFxuICAgICAgJHN1cHBvcnQtMDIsXG4gICAgICAkbm90aWZpY2F0aW9uLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvclxuICAgICk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1pbmZvLFxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1pbmZvLXNxdWFyZSB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wNCwgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0taW5mbyxcbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0taW5mby1zcXVhcmUge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKFxuICAgICAgJHN1cHBvcnQtMDQsXG4gICAgICAkbm90aWZpY2F0aW9uLWluZm8tYmFja2dyb3VuZC1jb2xvclxuICAgICk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS13YXJuaW5nLFxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS13YXJuaW5nLWFsdCB7XG4gICAgQGluY2x1ZGUgbm90aWZpY2F0aW9uLS1leHBlcmltZW50YWwoJGludmVyc2Utc3VwcG9ydC0wMywgJGludmVyc2UtMDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0td2FybmluZyxcbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0LiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0td2FybmluZy1hbHQge1xuICAgIEBpbmNsdWRlIG5vdGlmaWNhdGlvbi0tZXhwZXJpbWVudGFsKFxuICAgICAgJHN1cHBvcnQtMDMsXG4gICAgICAkbm90aWZpY2F0aW9uLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvclxuICAgICk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS13YXJuaW5nXG4gICAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9faWNvblxuICAgIHBhdGhbb3BhY2l0eT0nMCddIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZpbGw6ICRjYXJib25fX2JsYWNrLTEwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2ljb24ge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbi10b3A6IHJlbSgxNHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxNHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2RldGFpbHMge1xuICAgIG1hcmdpbi1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2Nsb3NlLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiByZW0oNDhweCk7XG4gICAgbWluLXdpZHRoOiByZW0oNDhweCk7XG4gICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgbWluLWhlaWdodDogcmVtKDQ4cHgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lICR0cmFuc2l0aW9uLS1iYXNlLCBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLS1iYXNlO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAycHggc29saWQgJGludmVyc2UtZm9jdXMtdWk7XG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uX19jbG9zZS1pY29uIHtcbiAgICAgIGZpbGw6ICRpbnZlcnNlLTAxO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb24tLWxvdy1jb250cmFzdFxuICAgIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX2Nsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbi0tbG93LWNvbnRyYXN0XG4gICAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9fY2xvc2UtYnV0dG9uXG4gICAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9fY2xvc2UtaWNvbiB7XG4gICAgZmlsbDogbWFwLWdldCgkY2FyYm9uLS10aGVtZS0td2hpdGUsICd0ZXh0LTAxJyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uX190aXRsZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAxJyk7XG5cbiAgICBtYXJnaW4tdG9wOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b2FzdC1ub3RpZmljYXRpb25fX3N1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDY7XG4gICAgY29sb3I6ICRpbnZlcnNlLTAxO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3RcbiAgICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uX19zdWJ0aXRsZSB7XG4gICAgLy8gU3RvcC1nYXAgdG8gZW5zdXJlIGNvbG9yIGNvbnRyYXN0ICh2cy4gZml4ZWQgYmFja2dyb3VuZCBjb2xvcikgdW50aWwgd2UgaGF2ZSBjb21wb25lbnQtc3BlY2lmaWMgdGhlbWUgdG9rZW5zXG4gICAgY29sb3I6IG1hcC1nZXQoJGNhcmJvbi0tdGhlbWUtLXdoaXRlLCAndGV4dC0wMScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvYXN0LW5vdGlmaWNhdGlvbl9fY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uLS1sb3ctY29udHJhc3RcbiAgICAuI3skcHJlZml4fS0tdG9hc3Qtbm90aWZpY2F0aW9uX19jYXB0aW9uIHtcbiAgICAvLyBTdG9wLWdhcCB0byBlbnN1cmUgY29sb3IgY29udHJhc3QgKHZzLiBmaXhlZCBiYWNrZ3JvdW5kIGNvbG9yKSB1bnRpbCB3ZSBoYXZlIGNvbXBvbmVudC1zcGVjaWZpYyB0aGVtZSB0b2tlbnNcbiAgICBjb2xvcjogbWFwLWdldCgkY2FyYm9uLS10aGVtZS0td2hpdGUsICd0ZXh0LTAxJyk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndG9hc3Qtbm90aWZpY2F0aW9ucycpIHtcbiAgQGluY2x1ZGUgdG9hc3Qtbm90aWZpY2F0aW9ucztcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90b29sdGlwJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcblxuLy8gVE9ETzogZGVwcmVjYXRlIGxlZ2FjeSB0b29sdGlwIG1peGluc1xuLy8gVG9vbHRpcCBJY29uXG4vLyBJY29uIENTUyBvbmx5IHRvb2x0aXBcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZGVwcmVjYXRlZFxuLy8vIEBncm91cCB0b29sdGlwXG5AbWl4aW4gdG9vbHRpcC0taWNvbiB7XG4gIEBpbmNsdWRlIHJlc2V0O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gVG9vbHRpcCAtIHJlbmRlcnMgYXMgYSBjb21ibyBvZiA6OmJlZm9yZSBhbmQgOjphZnRlciBlbGVtZW50c1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLXRvcDogMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkaW52ZXJzZS0wMiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMCByZW0oNHB4KSByZW0oNXB4KSByZW0oNHB4KTtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93O1xuXG4gICAgbWluLXdpZHRoOiByZW0oMjRweCk7XG4gICAgbWF4LXdpZHRoOiByZW0oMjA4cHgpO1xuICAgIGhlaWdodDogcmVtKDI0cHgpO1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGludmVyc2UtMDI7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGNvbnRlbnQ6IGF0dHIoYXJpYS1sYWJlbCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVG9vbHRpcCBJY29uIGNhcmV0IC0gdG9wIHBvc2l0aW9uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwb3NpdGlvbiBbJ2JvdHRvbSddIC0gVGhlIHBvc2l0aW9uLCBmcm9tOiBgdG9wYCwgYGJvdHRvbWBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGFsaWduIFsnY2VudGVyJ10gLSBUaGUgYWxpZ25tZW50LCBmcm9tOiBgc3RhcnRgLCBgY2VudGVyYCwgYGVuZGBcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZGVwcmVjYXRlZFxuLy8vIEBncm91cCB0b29sdGlwXG5AbWl4aW4gdG9vbHRpcC0taWNvbi1wbGFjZW1lbnQoJHBvc2l0aW9uOiAnYm90dG9tJywgJGFsaWduOiAnY2VudGVyJykge1xuICAkdHJhbnNsYXRlLXg6IGlmKCRhbGlnbiA9PSAnY2VudGVyJywgLTUwJSwgMCk7XG4gICR0cmFuc2xhdGUteS1jYXJldDogaWYoJHBvc2l0aW9uID09ICd0b3AnLCBjYWxjKC0xMDAlIC0gOXB4KSwgMTBweCk7XG4gICR0cmFuc2xhdGUteS1ib2R5OiBpZihcbiAgICAkcG9zaXRpb24gPT0gJ3RvcCcsXG4gICAgY2FsYygtMTAwJSAtIDEycHgpLFxuICAgIGNhbGMoMTAwJSArIDEwcHgpXG4gICk7XG4gICRyb3RhdGUtY2FyZXQ6IGlmKCRwb3NpdGlvbiA9PSAndG9wJywgMTgwZGVnLCAwKTtcblxuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR0cmFuc2xhdGUteCwgJHRyYW5zbGF0ZS15LWNhcmV0KSByb3RhdGUoJHJvdGF0ZS1jYXJldCk7XG5cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAndG9wJykge1xuICAgICAgdG9wOiAxcHg7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICAgIEBpZiAoJGFsaWduID09ICdzdGFydCcpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgfSBAZWxzZSBpZiAoJGFsaWduID09ICdlbmQnKSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHRyYW5zbGF0ZS14LCAkdHJhbnNsYXRlLXktYm9keSk7XG5cbiAgICBAaWYgKCRwb3NpdGlvbiA9PSAndG9wJykge1xuICAgICAgdG9wOiAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgICBAaWYgKCRhbGlnbiAhPSAnY2VudGVyJykge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBpZiAoJGFsaWduID09ICdlbmQnKSB7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gbGVnYWN5IGRlZmluaXRpb24gdG9vbHRpcCBtaXhpblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBkZXByZWNhdGVkXG4vLy8gQGdyb3VwIHRvb2x0aXBcbkBtaXhpbiB0b29sdGlwLS1kZWZpbml0aW9uLS1sZWdhY3kge1xuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlciB7XG4gICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdsYWJlbC0wMScpO1xuXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJGludGVyYWN0aXZlLTAxO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICsgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX3RvcCxcbiAgICAgICAgKyAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fYm90dG9tIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnYm9yZGVyJyk7XG5cbiAgICAgICAgKyAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fdG9wLFxuICAgICAgICArIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX19ib3R0b20ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX2JvdHRvbSxcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX3RvcCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdztcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IHJlbSgyMDhweCk7XG4gICAgbWFyZ2luLXRvcDogJGNhcmJvbi0tc3BhY2luZy0wNDtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAzICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgYmFja2dyb3VuZDogJGludmVyc2UtMDI7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDJweCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbHRpcF9fY2FyZXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDAuNnJlbTtcbiAgICAgIGhlaWdodDogMC42cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgICBiYWNrZ3JvdW5kOiAkaW52ZXJzZS0wMjtcbiAgICB9XG4gIH1cblxuICAvLyBUb29sdGlwIERlZmluaXRpb24gY2FyZXQgLSBib3R0b20gcG9zaXRpb25cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX2JvdHRvbSAuI3skcHJlZml4fS0tdG9vbHRpcF9fY2FyZXQge1xuICAgIHRvcDogLTAuMnJlbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgfVxuXG4gIC8vIFRvb2x0aXAgRGVmaW5pdGlvbiBjYXJldCAtIHRvcCBwb3NpdGlvblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fdG9wIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oLTMycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbHRpcF9fY2FyZXQge1xuICAgICAgYm90dG9tOiAtMC4ycmVtO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX19hbGlnbi1lbmQge1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX2FsaWduLWNlbnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fdG9wLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25fX2FsaWduLWNlbnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fYWxpZ24tY2VudGVyIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgbGVmdDogYXV0bztcbiAgICAvLyBBZGp1c3QgYnkgdGhlIGhhbGYgb2YgdGhlIGRpYWdvbmFsIG9mIHRoZSBjYXJldCwgd2hpY2ggc2l6ZXMgMC42cmVtXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDZweCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbl9fYWxpZ24tZW5kIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxNnB4KTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG4vLyBsZWdhY3kgaWNvbiB0b29sdGlwIG1peGluXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGRlcHJlY2F0ZWRcbi8vLyBAZ3JvdXAgdG9vbHRpcFxuQG1peGluIHRvb2x0aXAtLWljb24tLWxlZ2FjeSB7XG4gIC8vIEljb24gQ1NTIG9ubHkgdG9vbHRpcFxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uX190b3AsXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uX19ib3R0b20ge1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLWljb247XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgc3ZnIHtcbiAgICAgICAgZmlsbDogJGljb24tMDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ2JvcmRlcicpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFRvb2x0aXAgSWNvbiBjYXJldCAtIHRvcCBwb3NpdGlvblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fdG9wIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1pY29uLXBsYWNlbWVudCgndG9wJyk7XG4gIH1cblxuICAvLyBUb29sdGlwIEljb24gY2FyZXQgLSBib3R0b20gcG9zaXRpb25cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2JvdHRvbSB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0taWNvbi1wbGFjZW1lbnQoJ2JvdHRvbScpO1xuICB9XG5cbiAgLy8gVG9vbHRpcCBJY29uIGNhcmV0IC0gdG9wIHBvc2l0aW9uLCBsZWZ0IGFsaWdubWVudFxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fdG9wLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2FsaWduLXN0YXJ0IHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1pY29uLXBsYWNlbWVudCgndG9wJywgJ3N0YXJ0Jyk7XG4gIH1cblxuICAvLyBUb29sdGlwIEljb24gY2FyZXQgLSB0b3AgcG9zaXRpb24sIHJpZ2h0IGFsaWdubWVudFxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0taWNvbl9fdG9wLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2FsaWduLWVuZCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0taWNvbi1wbGFjZW1lbnQoJ3RvcCcsICdlbmQnKTtcbiAgfVxuXG4gIC8vIFRvb2x0aXAgSWNvbiBjYXJldCAtIGJvdHRvbSBwb3NpdGlvbiwgbGVmdCBhbGlnbm1lbnRcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2JvdHRvbS4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uX19hbGlnbi1zdGFydCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0taWNvbi1wbGFjZW1lbnQoJ2JvdHRvbScsICdzdGFydCcpO1xuICB9XG5cbiAgLy8gVG9vbHRpcCBJY29uIGNhcmV0IC0gYm90dG9tIHBvc2l0aW9uLCByaWdodCBhbGlnbm1lbnRcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXAtLWljb25fX2JvdHRvbS4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uX19hbGlnbi1lbmQge1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLWljb24tcGxhY2VtZW50KCdib3R0b20nLCAnZW5kJyk7XG4gIH1cblxuICAvLyBUb29sdGlwIHBvc2l0aW9uIC0gaWNvbiBvbmx5XG4gIC4jeyRwcmVmaXh9LS10b29sdGlwLS1pY29uIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyIHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8vIFRvb2x0aXAgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHRvb2x0aXBcbkBtaXhpbiB0b29sdGlwIHtcbiAgLy8gQ2FyZXQncyBvcmlnaW5hbCBzaXplIHdhcyAxMy43NXB4IHNxdWFyZVxuICAkY2FyZXQtc2l6ZTogcmVtKDYuODc1cHgpO1xuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX19sYWJlbCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcblxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdib3JkZXInKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlciBzdmcge1xuICAgIGZpbGw6ICRpY29uLTAyO1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXI6bm90KC4jeyRwcmVmaXh9LS1idG4tLWljb24tb25seSkge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgkd2lkdGg6IGZhbHNlKTtcblxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnYm9yZGVyJyk7XG5cbiAgICAgIGZpbGw6ICRob3Zlci1wcmltYXJ5O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX19sYWJlbCAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlciB7XG4gICAgLy8gT3ZlcnJpZGUgYG1hcmdpbjogMGAgZnJvbSBidXR0b24tcmVzZXQgbWl4aW5cbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX19sYWJlbC0tYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93O1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IHooJ2Zsb2F0aW5nJyk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6IHJlbSgyMDhweCk7XG4gICAgbWF4LXdpZHRoOiByZW0oMjg4cHgpO1xuICAgIG1hcmdpbi10b3A6ICRjYXJib24tLXNwYWNpbmctMDI7XG4gICAgcGFkZGluZzogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGJhY2tncm91bmQ6ICRpbnZlcnNlLTAyO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgycHgpO1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIEB0b2RvIHRoaXMgY2FuIGJlIGRlcHJlY2F0ZWQgaW4gdjExIHNpbmNlIGZvY3VzIHNob3VsZCBhbHdheXMgYmUgb24gdGhlIGNvbnRlbnQgY29udGFpbmVyIG5vdCB0aGUgdG9vbHRpcFxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCAkaW52ZXJzZS0wMiwgaW5zZXQgMCAwIDAgMnB4ICR1aS1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA3O1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1idG46Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkaW52ZXJzZS1mb2N1cy11aTtcbiAgICAgIG91dGxpbmUtY29sb3I6ICRpbnZlcnNlLTAyO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1saW5rIHtcbiAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rO1xuICAgICAgZm9udC1zaXplOiByZW0oMTRweCk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAxcHggc29saWQgJGludmVyc2UtZm9jdXMtdWk7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjphY3RpdmU6dmlzaXRlZCxcbiAgICAgICY6YWN0aXZlOnZpc2l0ZWQ6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGludmVyc2UtMDE7XG4gICAgICB9XG5cbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAkaW52ZXJzZS1saW5rO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRvb2x0aXBzIG5lZWQgdG8gYmUgY2xpY2sgZm9jdXNhYmxlIGJ1dCBub3Qgc2VxdWVudGlhbGx5IGZvY3VzYWJsZSBzbyB0aGUgdXNlciBjYW4gY2xpY2sgd2l0aGluXG4gICAgLy8gdGhlIHRvb2x0aXAgYW5kIG5vdCBoYXZlIGl0IGNsb3NlLiBCZWNhdXNlIHRoZSBlbGVtZW50IGlzIG5vdCBhY3Rpb25hYmxlIGl0IGRvZXMgbm90IG5lZWRcbiAgICAvLyB0byBoYXZlIGEgdmlzaWJsZSBmb2N1cyBpbmRpY2F0b3IgKE9LJ2QgYnkgSUJNYSlcbiAgICAuI3skcHJlZml4fS0tdG9vbHRpcF9fY29udGVudFt0YWJpbmRleD0nLTEnXTpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGNhbGMoI3skY2FyZXQtc2l6ZSAqICgtMSl9ICsgMXB4KTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBib3JkZXItcmlnaHQ6ICRjYXJldC1zaXplIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXNpemUgc29saWQgJGludmVyc2UtMDI7XG4gICAgICBib3JkZXItbGVmdDogJGNhcmV0LXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbHRpcF9fZm9vdGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAmW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2xlZnQnXSB7XG4gICAgICAuI3skcHJlZml4fS0tdG9vbHRpcF9fY2FyZXQge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgLy8gbGVmdCBwb3NpdGlvbiBoYXMgYW4gYWRkaXRpb25hbCBzcGFjZSBiZXR3ZWVuIGNhcmV0IGFuZCB0b29sdGlwXG4gICAgICAgIHJpZ2h0OiBjYWxjKCN7JGNhcmV0LXNpemUgKiAoLTEpfSArIDFweCk7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J3RvcCddIHtcbiAgICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiBjYWxjKCN7JGNhcmV0LXNpemUgKiAoLTEpfSArIDFweCk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJltkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdyaWdodCddIHtcbiAgICAgIC4jeyRwcmVmaXh9LS10b29sdGlwX19jYXJldCB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogY2FsYygjeyRjYXJldC1zaXplICogKC0xKX0gKyAxcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX19oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLXR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tc2hvd24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gVG9vbHRpcCBEZWZpbml0aW9uXG4gIC8qIGJlZ2luIGxlZ2FjeSBkZWZpbml0aW9uIHRvb2x0aXAgVE9ETzogZGVwcmVjYXRlICovXG4gIEBpbmNsdWRlIHRvb2x0aXAtLWRlZmluaXRpb24tLWxlZ2FjeTtcbiAgLyogZW5kIGxlZ2FjeSBkZWZpbml0aW9uIHRvb2x0aXAgKi9cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbi4jeyRwcmVmaXh9LS10b29sdGlwLS1hMTF5IHtcbiAgICAvLyBXcmFwcGluZyBlbGVtZW50IHNldCB0byBpbmxpbmUgc2luY2UgdGhlIHRvb2x0aXAgaXNuJ3QgY29udGFpbmVkIHdpdGhpbiB0aGUgdHJpZ2dlciAoYWZmZWN0cyBjZW50ZXIgYW5kIGVuZCBhbGlnbm1lbnRzKVxuICAgIC8vIEFsc28gYWxsb3dzIGZvciBEZWZpbml0aW9uIFRvb2x0aXAgdG8gYmUgdXNlZCB3aXRoaW4gYSBwYXJhZ3JhcGggb2YgdGV4dCBhcyBkZWZpbmVkIGluIHRoZSB1c2FnZSBndWlkZWxpbmVzXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cblxuICAvLyBkZWZhdWx0IGJ1dHRvbnMgaW4gU2FmYXJpIGFyZSBhZGRpbmcgYSBzbWFsbCBtYXJnaW4sIGFmZmVjdGluZyB0b29sdGlwIHBsYWNlbWVudFxuICAuI3skcHJlZml4fS0tdG9vbHRpcC0tZGVmaW5pdGlvbiBidXR0b24uI3skcHJlZml4fS0tdG9vbHRpcC0tYTExeSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBDU1Mgb25seSB0b29sdGlwXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXItLWRlZmluaXRpb24ge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBib3JkZXItYm90dG9tOiByZW0oMXB4KSBkb3R0ZWQgJHRleHQtMDI7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXItLWRlZmluaXRpb246aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXItLWRlZmluaXRpb246Zm9jdXMge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXItLWRlZmluaXRpb24uI3skcHJlZml4fS0tdG9vbHRpcC0tdG9wIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS10cmlnZ2VyKCdkZWZpbml0aW9uJywgJ3RvcCcpO1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICd0b3AnLCAnc3RhcnQnKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdkZWZpbml0aW9uJywgJ3RvcCcsICdzdGFydCcpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICd0b3AnLCAnY2VudGVyJyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1lbmQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdkZWZpbml0aW9uJywgJ3RvcCcsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwX190cmlnZ2VyLS1kZWZpbml0aW9uLiN7JHByZWZpeH0tLXRvb2x0aXAtLWJvdHRvbSB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tdHJpZ2dlcignZGVmaW5pdGlvbicsICdib3R0b20nKTtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2RlZmluaXRpb24nLCAnYm90dG9tJywgJ3N0YXJ0Jyk7XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLXN0YXJ0IHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICdib3R0b20nLCAnc3RhcnQnKTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2RlZmluaXRpb24nLCAnYm90dG9tJywgJ2NlbnRlcicpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tZW5kIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnZGVmaW5pdGlvbicsICdib3R0b20nLCAnZW5kJyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVG9vbHRpcCBJY29uXG5cbiAgLyogYmVnaW4gdG9vbHRpcCBpY29uIChUT0RPOiBkZXByZWNhdGUpICovXG4gIEBpbmNsdWRlIHRvb2x0aXAtLWljb24tLWxlZ2FjeTtcbiAgLyogZW5kIGxlZ2FjeSB0b29sdGlwIGljb24gKi9cblxuICAvLyBJY29uIENTUyBvbmx5IHRvb2x0aXBcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXIge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkaWNvbi0wMjtcblxuICAgICAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS10b3Age1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXRyaWdnZXIoJ2ljb24nLCAndG9wJyk7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3RvcCcsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3RvcCcsICdzdGFydCcpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICd0b3AnLCAnY2VudGVyJyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1lbmQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3RvcCcsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS1yaWdodCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tdHJpZ2dlcignaWNvbicsICdyaWdodCcpO1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICdyaWdodCcsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3JpZ2h0JywgJ3N0YXJ0Jyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ3JpZ2h0JywgJ2NlbnRlcicpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tZW5kIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICdyaWdodCcsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS1ib3R0b20ge1xuICAgIEBpbmNsdWRlIHRvb2x0aXAtLXRyaWdnZXIoJ2ljb24nLCAnYm90dG9tJyk7XG4gICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdzdGFydCcpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHRvb2x0aXAtLXBsYWNlbWVudCgnaWNvbicsICdib3R0b20nLCAnY2VudGVyJyk7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10b29sdGlwLS1hbGlnbi1lbmQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2JvdHRvbScsICdlbmQnKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlci4jeyRwcmVmaXh9LS10b29sdGlwLS1sZWZ0IHtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS10cmlnZ2VyKCdpY29uJywgJ2xlZnQnKTtcbiAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnbGVmdCcsICdjZW50ZXInKTtcblxuICAgICYuI3skcHJlZml4fS0tdG9vbHRpcC0tYWxpZ24tc3RhcnQge1xuICAgICAgQGluY2x1ZGUgdG9vbHRpcC0tcGxhY2VtZW50KCdpY29uJywgJ2xlZnQnLCAnc3RhcnQnKTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnbGVmdCcsICdjZW50ZXInKTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRvb2x0aXAtLWFsaWduLWVuZCB7XG4gICAgICBAaW5jbHVkZSB0b29sdGlwLS1wbGFjZW1lbnQoJ2ljb24nLCAnbGVmdCcsICdlbmQnKTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndG9vbHRpcCcpIHtcbiAgQGluY2x1ZGUgdG9vbHRpcDtcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUYWJzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuXG4vLy8gVGFicyBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdGFic1xuQG1peGluIHRhYnMge1xuICAuI3skcHJlZml4fS0tdGFicyB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBtaW4taGVpZ2h0OiByZW0oNDBweCk7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLS1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgbWluLWhlaWdodDogcmVtKDQ4cHgpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgcGFkZGluZzogMCAkc3BhY2luZy0wOSAwICRzcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtMDE7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wNDtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyOmZvY3VzLFxuICAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyOmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlciBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogJHNwYWNpbmctMDU7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXItLW9wZW46Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXItLW9wZW46YWN0aXZlIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdyZXNldCcpO1xuXG4gICAgdHJhbnNpdGlvbjogb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXItLW9wZW4ge1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXItLW9wZW4gc3ZnIHtcbiAgICBAaW5jbHVkZSByb3RhdGUoLTE4MGRlZywgJGR1cmF0aW9uLS1mYXN0LTAxLCA1MCUgNDUlKTtcbiAgfVxuXG4gIC8vIFRoZXJlIGlzIG9ubHkgYSBkaWZmZXJlbmNlIGluIHRhYiBjb2xvciB3aGVuIGluIG1vYmlsZS9kcm9wZG93biB2aWV3XG4gIC4jeyRwcmVmaXh9LS10YWJzLS1saWdodC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXItdGV4dCB7XG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlci10ZXh0OmhvdmVyIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyLXRleHQ6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93O1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IHooJ2Ryb3Bkb3duJyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDYwMHB4O1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDE7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgei1pbmRleDogYXV0bztcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LS1oaWRkZW4ge1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0ICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSXRlbVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbSB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgKyAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDFweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtLWNvbnRhaW5lciAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0ge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAzO1xuXG4gICAgICArIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAvLyBEcmF3cyB0aGUgYm9yZGVyIHdpdGhvdXQgYWZmZWN0aW5nIHRoZSBpbm5lci1jb250ZW50XG4gICAgICAgIGJveC1zaGFkb3c6IC0xcHggMCAwIDAgJHVpLTA0O1xuICAgICAgfVxuXG4gICAgICArIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tc2VsZWN0ZWQsXG4gICAgICAmLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1zZWxlY3RlZCArIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbSB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluayB7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSXRlbSBIb3ZlclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbTpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1zZWxlY3RlZCkge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtOmhvdmVyOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIGJveC1zaGFkb3c6IDAgLTFweCAwICRob3Zlci11aTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICsgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy0tY29udGFpbmVyXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtOmhvdmVyOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItc2VsZWN0ZWQtdWk7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSXRlbSBEaXNhYmxlZFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkLFxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkOmhvdmVyIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy0tY29udGFpbmVyXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCxcbiAgLiN7JHByZWZpeH0tLXRhYnMtLWNvbnRhaW5lclxuICAgIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQ6aG92ZXIge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLTAyO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLS1jb250YWluZXJcbiAgICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQobWQpIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDM7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSXRlbSBTZWxlY3RlZFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tc2VsZWN0ZWQ6bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluayxcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluazpmb2N1cyxcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluazphY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdwcm9kdWN0aXZlLWhlYWRpbmctMDEnKTtcblxuICAgICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW50ZXJhY3RpdmUtMDQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnMtLWNvbnRhaW5lclxuICAgIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tc2VsZWN0ZWQ6bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQpLFxuICAuI3skcHJlZml4fS0tdGFicy0tY29udGFpbmVyXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1zZWxlY3RlZDpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCkge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuXG4gICAgICAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgICAgICBwYWRkaW5nOiAkc3BhY2luZy0wMyAkc3BhY2luZy0wNTtcbiAgICAgICAgLy8gaGVpZ2h0IC0gdmVydGljYWwgcGFkZGluZ1xuICAgICAgICAvLyBEcmF3cyB0aGUgYm9yZGVyIHdpdGhvdXQgYWZmZWN0aW5nIHRoZSBpbm5lci1jb250ZW50XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKCN7cmVtKDQ4cHgpfSAtICgjeyRzcGFjaW5nLTAzfSAqIDIpKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAycHggMCAwICRpbnRlcmFjdGl2ZS0wNDtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmZvY3VzLFxuICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmFjdGl2ZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBMaW5rXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgYS4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgbWFyZ2luOiAwICRzcGFjaW5nLTA1O1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLTA0IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTAzO1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICB3aWR0aDogcmVtKDE2MHB4KTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLTA0ICRzcGFjaW5nLTA1ICRzcGFjaW5nLTAzO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBib3JkZXItYm90dG9tOiAkdGFiLXVuZGVybGluZS1jb2xvcjtcblxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgd2lkdGg6IHJlbSgxNjBweCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy0tY29udGFpbmVyIGEuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgaGVpZ2h0OiByZW0oNDhweCk7XG4gICAgICBwYWRkaW5nOiAkc3BhY2luZy0wMyAkc3BhY2luZy0wNTtcbiAgICAgIC8vIEhlaWdodCAtIHZlcnRpY2FsIHBhZGRpbmdcbiAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKCN7cmVtKDQ4cHgpfSAtICgjeyRzcGFjaW5nLTAzfSAqIDIpKTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyAgTGluayBIb3ZlclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbTpob3Zlcjpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1zZWxlY3RlZCk6bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQpXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgICBib3JkZXItYm90dG9tOiAkdGFiLXVuZGVybGluZS1jb2xvci1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy0tY29udGFpbmVyXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtOmhvdmVyOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLXNlbGVjdGVkKTpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZClcbiAgICAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludChtZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICBMaW5rIERpc2FibGVkXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgIGNvbG9yOiAkdGFiLXRleHQtZGlzYWJsZWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYi11bmRlcmxpbmUtZGlzYWJsZWQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkOmhvdmVyIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluayB7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYi11bmRlcmxpbmUtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiBuby1kcm9wO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbms6Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tZGlzYWJsZWQgYS4jeyRwcmVmaXh9LS10YWJzX19uYXYtbGluazphY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206ICR0YWItdW5kZXJsaW5lLWRpc2FibGVkO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vICBMaW5rIEZvY3VzXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLXNlbGVjdGVkKTpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1kaXNhYmxlZCk6bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tc2VsZWN0ZWQpXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmZvY3VzLFxuICAuI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW06bm90KC4jeyRwcmVmaXh9LS10YWJzX19uYXYtaXRlbS0tc2VsZWN0ZWQpOm5vdCguI3skcHJlZml4fS0tdGFic19fbmF2LWl0ZW0tLWRpc2FibGVkKTpub3QoLiN7JHByZWZpeH0tLXRhYnNfX25hdi1pdGVtLS1zZWxlY3RlZClcbiAgICBhLiN7JHByZWZpeH0tLXRhYnNfX25hdi1saW5rOmFjdGl2ZSB7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyAgVGFiIENvbnRlbnQgQ29udGFpbmVyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXRhYi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTa2VsZXRvbiBzdGF0ZVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS10YWJzLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tdGFic19fbmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgd2lkdGg6IHJlbSg3NXB4KTtcbiAgICBoZWlnaHQ6IHJlbSgxMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWJzLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS10YWJzLXRyaWdnZXIge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgd2lkdGg6IHJlbSgxMDBweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFicy4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tdGFicy10cmlnZ2VyIHN2ZyB7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xuICB9XG5cbiAgLy8gVE9ETzogcmVtb3ZlIG5hbWVzcGFjZSBhbmQgc3VmZml4IGluIG5leHQgbWFqb3IgcmVsZWFzZVxuICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZSB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogcmVtKDQwcHgpO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcblxuICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgb3ZlcmZsb3c6IGF1dG8gaGlkZGVuO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAgIC8vIGhpZGUgc2Nyb2xsYmFyc1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIE92ZXJmbG93IE5hdiBCdXR0b25zXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC4jeyRwcmVmaXh9LS10YWJzX19vdmVyZmxvdy1pbmRpY2F0b3ItLWxlZnQsXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX292ZXJmbG93LWluZGljYXRvci0tcmlnaHQge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgd2lkdGg6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX292ZXJmbG93LWluZGljYXRvci0tbGVmdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHRyYW5zcGFyZW50LCAkdWktYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnNfX292ZXJmbG93LWluZGljYXRvci0tcmlnaHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kY2FyYm9uLS1zcGFjaW5nLTAzO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCwgJHVpLWJhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1saWdodFxuICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX292ZXJmbG93LWluZGljYXRvci0tbGVmdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgdHJhbnNwYXJlbnQsICR1aS0wMSk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGUtLWxpZ2h0XG4gICAgICAuI3skcHJlZml4fS0tdGFic19fb3ZlcmZsb3ctaW5kaWNhdG9yLS1yaWdodCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHRyYW5zcGFyZW50LCAkdWktMDEpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyXG4gICAgICAuI3skcHJlZml4fS0tdGFic19fb3ZlcmZsb3ctaW5kaWNhdG9yLS1sZWZ0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCB0cmFuc3BhcmVudCwgJHVpLTAzKTtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGUtLWNvbnRhaW5lclxuICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX292ZXJmbG93LWluZGljYXRvci0tcmlnaHQge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCwgJHVpLTAzKTtcbiAgICB9XG5cbiAgICAvLyBTYWZhcmktb25seSBtZWRpYSBxdWVyeVxuICAgIC8vIHdvbid0IGFwcGVhciBjb3JyZWN0bHkgd2l0aCBDU1MgY3VzdG9tIHByb3BlcnRpZXNcbiAgICAvLyBzZWU6IGNvZGUgc25pcHBldCBhbmQgbW9kYWwgb3ZlcmZsb3cgaW5kaWNhdG9yc1xuICAgIEBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IDAuMDAxZHBjbSkge1xuICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUpIGFuZCAoc3Ryb2tlLWNvbG9yOiB0cmFuc3BhcmVudCkge1xuICAgICAgICAuI3skcHJlZml4fS0tdGFic19fb3ZlcmZsb3ctaW5kaWNhdG9yLS1sZWZ0IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIHRvIGxlZnQsXG4gICAgICAgICAgICByZ2JhKCR1aS1iYWNrZ3JvdW5kLCAwKSxcbiAgICAgICAgICAgICR1aS1iYWNrZ3JvdW5kXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRwcmVmaXh9LS10YWJzX19vdmVyZmxvdy1pbmRpY2F0b3ItLXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgdG8gcmlnaHQsXG4gICAgICAgICAgICByZ2JhKCR1aS1iYWNrZ3JvdW5kLCAwKSxcbiAgICAgICAgICAgICR1aS1iYWNrZ3JvdW5kXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyXG4gICAgICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX292ZXJmbG93LWluZGljYXRvci0tbGVmdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoJHVpLTAzLCAwKSwgJHVpLTAzKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyXG4gICAgICAgICAgLiN7JHByZWZpeH0tLXRhYnNfX292ZXJmbG93LWluZGljYXRvci0tcmlnaHQge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgkdWktMDMsIDApLCAkdWktMDMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYi0tb3ZlcmZsb3ctbmF2LWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA4O1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10YWItLW92ZXJmbG93LW5hdi1idXR0b24tLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyXG4gICAgICAuI3skcHJlZml4fS0tdGFiLS1vdmVyZmxvdy1uYXYtYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAzO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10YWItLW92ZXJmbG93LW5hdi1idXR0b24gc3ZnIHtcbiAgICAgIGZpbGw6ICRpY29uLTAxO1xuICAgIH1cblxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBJdGVtXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbSB7XG4gICAgICBAaW5jbHVkZSByZXNldDtcblxuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMVxuICAgICAgICBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbVxuICAgICAgKyAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgxcHgpO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAzO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW1cbiAgICAgICsgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgLy8gRHJhd3MgdGhlIGJvcmRlciB3aXRob3V0IGFmZmVjdGluZyB0aGUgaW5uZXItY29udGVudFxuICAgICAgYm94LXNoYWRvdzogcmVtKC0xcHgpIDAgMCAwICR1aS0wNDtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGUtLWNvbnRhaW5lclxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtXG4gICAgICArIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tc2VsZWN0ZWQsXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tc2VsZWN0ZWRcbiAgICAgICsgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbmsge1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICAgIG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIEl0ZW0gSG92ZXJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItc2VsZWN0ZWQtdWk7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAvLyBJdGVtIERpc2FibGVkXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW0tLWRpc2FibGVkLFxuICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGUtLWNvbnRhaW5lclxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1kaXNhYmxlZCxcbiAgICAmLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGUtLWNvbnRhaW5lclxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1kaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIEl0ZW0gU2VsZWN0ZWRcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1zZWxlY3RlZCB7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW0tLXNlbGVjdGVkXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbmssXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1zZWxlY3RlZFxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1saW5rOmZvY3VzLFxuICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tc2VsZWN0ZWRcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtbGluazphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAxJyk7XG5cbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkaW50ZXJhY3RpdmUtMDQ7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tc2VsZWN0ZWQsXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tc2VsZWN0ZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbms6Zm9jdXMsXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbms6YWN0aXZlIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGUtLWNvbnRhaW5lclxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1zZWxlY3RlZFxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1saW5rIHtcbiAgICAgIC8vIGhlaWdodCAtIHZlcnRpY2FsIHBhZGRpbmdcbiAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKCN7cmVtKDQ4cHgpfSAtICgjeyRzcGFjaW5nLTAzfSAqIDIpKTtcbiAgICAgIC8vIERyYXdzIHRoZSBib3JkZXIgd2l0aG91dCBhZmZlY3RpbmcgdGhlIGlubmVyLWNvbnRlbnRcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMnB4IDAgMCAkaW50ZXJhY3RpdmUtMDQ7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1saWdodC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tc2VsZWN0ZWQsXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1saWdodC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tc2VsZWN0ZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIExpbmtcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgkd2lkdGg6IGZhbHNlKTtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICAgIHdpZHRoOiByZW0oMTYwcHgpO1xuICAgICAgcGFkZGluZzogJHNwYWNpbmctMDQgJHNwYWNpbmctMDUgJHNwYWNpbmctMDM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIGJvcmRlci1ib3R0b206ICR0YWItdW5kZXJsaW5lLWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtbGluayB7XG4gICAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLTAzICRzcGFjaW5nLTA1O1xuICAgICAgLy8gaGVpZ2h0IC0gdmVydGljYWwgcGFkZGluZ1xuICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoI3tyZW0oNDhweCl9IC0gKCN7JHNwYWNpbmctMDN9ICogMikpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLy8gIExpbmsgSG92ZXJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtOmhvdmVyXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbmsge1xuICAgICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgICAgYm9yZGVyLWJvdHRvbTogJHRhYi11bmRlcmxpbmUtY29sb3ItaG92ZXI7XG4gICAgfVxuXG4gICAgJi4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1jb250YWluZXJcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbVxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1saW5rIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vICBMaW5rIERpc2FibGVkXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tZGlzYWJsZWRcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtbGluayB7XG4gICAgICBjb2xvcjogJHRhYi10ZXh0LWRpc2FibGVkO1xuICAgICAgYm9yZGVyLWJvdHRvbTogJHRhYi11bmRlcmxpbmUtZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1kaXNhYmxlZDpob3ZlclxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1saW5rIHtcbiAgICAgIGNvbG9yOiAkdGFiLXRleHQtZGlzYWJsZWQ7XG4gICAgICBib3JkZXItYm90dG9tOiAkdGFiLXVuZGVybGluZS1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW0tLWRpc2FibGVkXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbms6Zm9jdXMsXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1kaXNhYmxlZFxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1saW5rOmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAkdGFiLXVuZGVybGluZS1kaXNhYmxlZDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGUtLWxpZ2h0XG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW0tLWRpc2FibGVkXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbmsge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHVpLTAzO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlLS1saWdodFxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1pdGVtLS1kaXNhYmxlZDpob3ZlclxuICAgICAgLiN7JHByZWZpeH0tLXRhYnMtLXNjcm9sbGFibGVfX25hdi1saW5rIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR1aS0wMztcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tbGlnaHRcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tZGlzYWJsZWRcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtbGluazpmb2N1cyxcbiAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tbGlnaHRcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtaXRlbS0tZGlzYWJsZWRcbiAgICAgIC4jeyRwcmVmaXh9LS10YWJzLS1zY3JvbGxhYmxlX19uYXYtbGluazphY3RpdmUge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHVpLTAzO1xuICAgIH1cblxuICAgICYuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZS0tY29udGFpbmVyXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWl0ZW0tLWRpc2FibGVkXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRkaXNhYmxlZC0wMztcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vICBUYWIgQ29udGVudCBDb250YWluZXJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgLiN7JHByZWZpeH0tLXRhYi1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC8vIFNrZWxldG9uIHN0YXRlXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIC4jeyRwcmVmaXh9LS10YWJzLiN7JHByZWZpeH0tLXNrZWxldG9uIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10YWJzLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgICAuI3skcHJlZml4fS0tdGFicy0tc2Nyb2xsYWJsZV9fbmF2LWxpbmsge1xuICAgICAgQGluY2x1ZGUgc2tlbGV0b247XG5cbiAgICAgIHdpZHRoOiByZW0oNzVweCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnMuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlciB7XG4gICAgICBAaW5jbHVkZSBza2VsZXRvbjtcblxuICAgICAgd2lkdGg6IHJlbSg3NXB4KTtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtKDFweCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXRhYnMuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXRhYnMtdHJpZ2dlciBzdmcge1xuICAgICAgQGluY2x1ZGUgaGlkZGVuO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCd0YWJzJykge1xuICBAaW5jbHVkZSB0YWJzO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jb21wb25lbnQtdG9rZW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJ21peGlucyc7XG5AaW1wb3J0ICd0b2tlbnMnO1xuXG4vLy8gVGFnIHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB0YWdcbkBtaXhpbiB0YWdzIHtcbiAgLiN7JHByZWZpeH0tLXRhZyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCR3aWR0aDogZmFsc2UpO1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWJhY2tncm91bmQtZ3JheScpLFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWNvbG9yLWdyYXknKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1ob3Zlci1ncmF5JylcbiAgICApO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAvLyBlbnN1cmVzIHRhZyBzdGF5cyBwaWxsIHNoYXBlZDtcbiAgICBtaW4td2lkdGg6IHJlbSgzMnB4KTtcbiAgICAvLyByZXN0cmljdHMgc2l6ZSBvZiBjb250YWluZWQgZWxlbWVudHNcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMS41cmVtO1xuICAgIG1hcmdpbjogJGNhcmJvbi0tc3BhY2luZy0wMjtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAyICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMTVweCk7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1yZWQge1xuICAgIEBpbmNsdWRlIHRhZy10aGVtZShcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1iYWNrZ3JvdW5kLXJlZCcpLFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWNvbG9yLXJlZCcpLFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWhvdmVyLXJlZCcpXG4gICAgKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLW1hZ2VudGEge1xuICAgIEBpbmNsdWRlIHRhZy10aGVtZShcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1iYWNrZ3JvdW5kLW1hZ2VudGEnKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1jb2xvci1tYWdlbnRhJyksXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctaG92ZXItbWFnZW50YScpXG4gICAgKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLXB1cnBsZSB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWJhY2tncm91bmQtcHVycGxlJyksXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctY29sb3ItcHVycGxlJyksXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctaG92ZXItcHVycGxlJylcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0tYmx1ZSB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWJhY2tncm91bmQtYmx1ZScpLFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWNvbG9yLWJsdWUnKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1ob3Zlci1ibHVlJylcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0tY3lhbiB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWJhY2tncm91bmQtY3lhbicpLFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWNvbG9yLWN5YW4nKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1ob3Zlci1jeWFuJylcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0tdGVhbCB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWJhY2tncm91bmQtdGVhbCcpLFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWNvbG9yLXRlYWwnKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1ob3Zlci10ZWFsJylcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0tZ3JlZW4ge1xuICAgIEBpbmNsdWRlIHRhZy10aGVtZShcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1iYWNrZ3JvdW5kLWdyZWVuJyksXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctY29sb3ItZ3JlZW4nKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1ob3Zlci1ncmVlbicpXG4gICAgKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLWdyYXkge1xuICAgIEBpbmNsdWRlIHRhZy10aGVtZShcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1iYWNrZ3JvdW5kLWdyYXknKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1jb2xvci1ncmF5JyksXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctaG92ZXItZ3JheScpXG4gICAgKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLWNvb2wtZ3JheSB7XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKFxuICAgICAgZ2V0LXRva2VuLXZhbHVlKCR0YWctY29sb3JzLCAndGFnLWJhY2tncm91bmQtY29vbC1ncmF5JyksXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctY29sb3ItY29vbC1ncmF5JyksXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctaG92ZXItY29vbC1ncmF5JylcbiAgICApO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0td2FybS1ncmF5IHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoXG4gICAgICBnZXQtdG9rZW4tdmFsdWUoJHRhZy1jb2xvcnMsICd0YWctYmFja2dyb3VuZC13YXJtLWdyYXknKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1jb2xvci13YXJtLWdyYXknKSxcbiAgICAgIGdldC10b2tlbi12YWx1ZSgkdGFnLWNvbG9ycywgJ3RhZy1ob3Zlci13YXJtLWdyYXknKVxuICAgICk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1oaWdoLWNvbnRyYXN0IHtcbiAgICBAaW5jbHVkZSB0YWctdGhlbWUoJGludmVyc2UtMDIsICRpbnZlcnNlLTAxLCAkaW52ZXJzZS1ob3Zlci11aSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1kaXNhYmxlZCxcbiAgLiN7JHByZWZpeH0tLXRhZy0tZmlsdGVyLiN7JHByZWZpeH0tLXRhZy0tZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIHRhZy10aGVtZSgkZGlzYWJsZWQtMDEsICRkaXNhYmxlZC0wMik7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZ19fbGFiZWwge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cblxuICAvLyB0YWdzIHVzZWQgZm9yIGZpbHRlcmluZ1xuICAuI3skcHJlZml4fS0tdGFnLS1maWx0ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgycHgpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnX19jbG9zZS1pY29uIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogcmVtKDE2cHgpO1xuICAgIGhlaWdodDogcmVtKDE2cHgpO1xuICAgIG1hcmdpbjogMCAwIDAgcmVtKDRweCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGFnLS1kaXNhYmxlZCAuI3skcHJlZml4fS0tdGFnX19jbG9zZS1pY29uIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZ19fY2xvc2UtaWNvbjpmb2N1cyB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRmb2N1cztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLWhpZ2gtY29udHJhc3QgLiN7JHByZWZpeH0tLXRhZ19fY2xvc2UtaWNvbjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRpbnZlcnNlLWZvY3VzLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRhZy0tZmlsdGVyLiN7JHByZWZpeH0tLXRhZy0tZGlzYWJsZWRcbiAgICAuI3skcHJlZml4fS0tdGFnX19jbG9zZS1pY29uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10YWctLWZpbHRlci4jeyRwcmVmaXh9LS10YWctLWRpc2FibGVkIHN2ZyB7XG4gICAgZmlsbDogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLy8gU2tlbGV0b24gc3RhdGVcbiAgLiN7JHByZWZpeH0tLXRhZy4jeyRwcmVmaXh9LS1za2VsZXRvbiB7XG4gICAgQGluY2x1ZGUgc2tlbGV0b247XG4gICAgQGluY2x1ZGUgdGFnLXRoZW1lKCRiZy1jb2xvcjogJHVpLTAzLCAkdGV4dC1jb2xvcjogJHRleHQtMDEpO1xuXG4gICAgd2lkdGg6IHJlbSg2MHB4KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3RhZ3MnKSB7XG4gIEBpbmNsdWRlIHRhZ3M7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuJGNzcy0taGVscGVyczogdHJ1ZTtcblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1oZWxwZXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL3NlbGVjdC9zZWxlY3QnO1xuQGltcG9ydCAnLi4vdGV4dC1pbnB1dC90ZXh0LWlucHV0JztcbkBpbXBvcnQgJy4uL2J1dHRvbi9idXR0b24nO1xuXG4vLy8gUGFnaW5hdGlvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuQG1peGluIHBhZ2luYXRpb24ge1xuICAuI3skcHJlZml4fS0tZGF0YS10YWJsZS1jb250YWluZXIgKyAuI3skcHJlZml4fS0tcGFnaW5hdGlvbiB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogcmVtKDQ4cHgpO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgfVxuXG4gICAgLy8gbW9iaWxlIGZyaWVuZGx5IHBhZ2luYXRpb25cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fbGVmdCA+ICosXG4gICAgICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fcmlnaHQgPiAqIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2l0ZW1zLWNvdW50LFxuICAgICAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2NvbnRyb2wtYnV0dG9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGluaXRpYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24gLiN7JHByZWZpeH0tLXNlbGVjdCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbiAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0LS1pbmxpbmVfX3dyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24gLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogcmVtKDQ4cHgpO1xuICAgIHBhZGRpbmc6IDAgMi4yNXJlbSAwICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24gLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24gLiN7JHByZWZpeH0tLXNlbGVjdF9fYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0wLjVyZW0sIC01MCUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25cbiAgICAuI3skcHJlZml4fS0tc2VsZWN0X19pdGVtLWNvdW50XG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkc3BhY2luZy00eHMgc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25cbiAgICAuI3skcHJlZml4fS0tc2VsZWN0X19wYWdlLW51bWJlclxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2xlZnQsXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogcmVtKDQ4cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2xlZnQgPiAuI3skcHJlZml4fS0tZm9ybS1pdGVtLFxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fcmlnaHQgPiAuI3skcHJlZml4fS0tZm9ybS1pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fbGVmdCAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fdGV4dCxcbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX3JpZ2h0IC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX190ZXh0IHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2xlZnQgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX3RleHQge1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDFweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fcmlnaHQgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX3RleHQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDFweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fbGVmdCB7XG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX3RleHQge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludCgnbWQnKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgc3Bhbi4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX190ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBjb2xvcjogJHRleHQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fYnV0dG9uLFxuICAuI3skcHJlZml4fS0tYnRuLS1naG9zdC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICR1aS0wMztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgZmlsbDogJHVpLTA1O1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b246Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS1idG4tLWdob3N0OmZvY3VzLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbl9fYnV0dG9uOmhvdmVyLFxuICAuI3skcHJlZml4fS0tYnRuLS1naG9zdDpob3Zlci4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24ge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci11aTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24tLW5vLWluZGV4LFxuICAuI3skcHJlZml4fS0tYnRuLS1naG9zdC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24tLW5vLWluZGV4IHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGZpbGw6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b246ZGlzYWJsZWQ6aG92ZXIsXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24tLW5vLWluZGV4OmhvdmVyLFxuICAuI3skcHJlZml4fS0tYnRuLS1naG9zdDpkaXNhYmxlZDpob3Zlci4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uX19idXR0b24sXG4gIC4jeyRwcmVmaXh9LS1idG4tLWdob3N0OmhvdmVyLiN7JHByZWZpeH0tLXBhZ2luYXRpb25fX2J1dHRvbi0tbm8taW5kZXgge1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMTtcbiAgICBib3JkZXItY29sb3I6ICR1aS0wMztcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGZpbGw6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC8vIFNrZWxldG9uIHN0YXRlXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1za2VsZXRvbl9fdGV4dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygncGFnaW5hdGlvbicpIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbjtcbn1cbiIsIkBtaXhpbiBjb250ZW50LXZpc2libGUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHZpc2liaWxpdHk6IGluaGVyaXQ7XG4gIG9wYWNpdHk6IDE7XG59XG5cbkBtaXhpbiBjb250ZW50LWhpZGRlbiB7XG4gIGhlaWdodDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xufVxuXG5Aa2V5ZnJhbWVzIGNvbGxhcHNlLWFjY29yZGlvbiB7XG4gIDAlIHtcbiAgICBAaW5jbHVkZSBjb250ZW50LXZpc2libGU7XG4gIH1cbiAgMTAwJSB7XG4gICAgQGluY2x1ZGUgY29udGVudC1oaWRkZW47XG4gIH1cbn1cblxuQGtleWZyYW1lcyBleHBhbmQtYWNjb3JkaW9uIHtcbiAgMCUge1xuICAgIEBpbmNsdWRlIGNvbnRlbnQtaGlkZGVuO1xuICB9XG4gIDEwMCUge1xuICAgIEBpbmNsdWRlIGNvbnRlbnQtdmlzaWJsZTtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAna2V5ZnJhbWVzJztcblxuLy8vIEFjY29yZGlvbiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG5AbWl4aW4gYWNjb3JkaW9uIHtcbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR1aS0wMztcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogJGFjY29yZGlvbi1mbGV4LWRpcmVjdGlvbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRhY2NvcmRpb24tanVzdGlmeS1jb250ZW50O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IHJlbSg0MHB4KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogcmVtKDEwcHgpIDA7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSkgJGR1cmF0aW9uLS1mYXN0LTAyO1xuXG4gICAgJjpob3Zlcjo6YmVmb3JlLFxuICAgICY6Zm9jdXM6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDJweCk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG5cbiAgICAmOmhvdmVyOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZS1jb21wYXQnKTtcbiAgICB9XG4gIH1cblxuICAvLyBTaXplIHN0eWxlc1xuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uLS14bCAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19oZWFkaW5nIHtcbiAgICBtaW4taGVpZ2h0OiByZW0oNDhweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uLS1zbSAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19oZWFkaW5nIHtcbiAgICBtaW4taGVpZ2h0OiByZW0oMzJweCk7XG4gICAgcGFkZGluZzogcmVtKDVweCkgMDtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0eWxlc1xuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19oZWFkaW5nW2Rpc2FibGVkXSB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faGVhZGluZ1tkaXNhYmxlZF0gLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fYXJyb3cge1xuICAgIGZpbGw6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2hlYWRpbmdbZGlzYWJsZWRdOmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbS0tZGlzYWJsZWQsXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2l0ZW0tLWRpc2FibGVkICsgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRkaXNhYmxlZC0wMTtcbiAgfVxuXG4gIGxpLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbS0tZGlzYWJsZWQ6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRpc2FibGVkLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fYXJyb3cge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgLy8gV2l0aG91dCBmbGV4IGJhc2lzIGFuZCBmbGV4IHNocmluayBiZWluZyBzZXQgaGVyZSwgb3VyIGljb24gd2lkdGggY2FuIGdvXG4gICAgLy8gPDE2cHggYW5kIGNhdXNlIHRoZSBpY29uIHRvIHJlbmRlciBpbiB0aGUgaW5jb3JyZWN0IGFydGJvYXJkIHNpemVcbiAgICBmbGV4OiAwIDAgMXJlbTtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgbWFyZ2luOiAkYWNjb3JkaW9uLWFycm93LW1hcmdpbjtcbiAgICAvLyBUT0RPOiBSVEwgcm90YXRlKDE4MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICBmaWxsOiAkdWktMDU7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX190aXRsZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1sb25nLTAxJyk7XG5cbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogJGFjY29yZGlvbi10aXRsZS1tYXJnaW47XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZy1yaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSBmb3Igd2hlbiB0aGUgYWNjb3JkaW9uIGNsb3Nlc1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSAkZHVyYXRpb24tLWZhc3QtMDI7XG5cbiAgICAvLyBDdXN0b20gYnJlYWtwb2ludHMgYmFzZWQgb24gaXNzdWUgIzQ5OTNcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQtdXAoNDgwcHgpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50LXVwKDY0MHB4KSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNSU7XG4gICAgfVxuXG4gICAgPiBwIHtcbiAgICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb24tLXN0YXJ0IC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2hlYWRpbmcge1xuICAgIC8vIFJldmVyc2UgYCRhY2NvcmRpb24tZmxleC1kaXJlY3Rpb25gIHRva2VuOlxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uLS1zdGFydCAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19hcnJvdyB7XG4gICAgLy8gQWx0ZXJzIGAkYWNjb3JkaW9uLWFycm93LW1hcmdpbmAgdG9rZW46XG4gICAgbWFyZ2luOiAycHggMCAwICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uLS1zdGFydCAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogJGNhcmJvbi0tc3BhY2luZy0wNjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2l0ZW0tLWNvbGxhcHNpbmcgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fY29udGVudCxcbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbS0tZXhwYW5kaW5nIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbS0tY29sbGFwc2luZyAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19jb250ZW50IHtcbiAgICBhbmltYXRpb246ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpXG4gICAgICBjb2xsYXBzZS1hY2NvcmRpb247XG4gIH1cblxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19pdGVtLS1leHBhbmRpbmcgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fY29udGVudCB7XG4gICAgYW5pbWF0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSBleHBhbmQtYWNjb3JkaW9uO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9faXRlbS0tYWN0aXZlIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctMDM7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGNhcmJvbi0tc3BhY2luZy0wNjtcbiAgICAgIC8vIFRyYW5zaXRpb24gcHJvcGVydHkgZm9yIHdoZW4gdGhlIGFjY29yZGlvbiBvcGVuc1xuICAgICAgdHJhbnNpdGlvbjogcGFkZGluZy10b3AgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKSAkZHVyYXRpb24tLWZhc3QtMDIsXG4gICAgICAgIHBhZGRpbmctYm90dG9tIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSkgJGR1cmF0aW9uLS1mYXN0LTAyO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2Fycm93IHtcbiAgICAgIC8qIHJ0bDppZ25vcmUgKi9cbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICBmaWxsOiAkdWktMDU7XG5cbiAgICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICAgIGZpbGw6IEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2tlbGV0b24gc3RhdGVcbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbi4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19oZWFkaW5nLFxuICAuI3skcHJlZml4fS0tYWNjb3JkaW9uLiN7JHByZWZpeH0tLXNrZWxldG9uIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2J1dHRvbiB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbi4jeyRwcmVmaXh9LS1za2VsZXRvbiAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19hcnJvdyB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbGw6ICR1aS0wNTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1hY2NvcmRpb24uI3skcHJlZml4fS0tc2tlbGV0b25cbiAgICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19oZWFkaW5nOmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbi0tZW5kLiN7JHByZWZpeH0tLXNrZWxldG9uXG4gICAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fYXJyb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZy0wNTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1za2VsZXRvblxuICAgIC4jeyRwcmVmaXh9LS1hY2NvcmRpb25fX2hlYWRpbmc6Zm9jdXNcbiAgICAuI3skcHJlZml4fS0tYWNjb3JkaW9uX19hcnJvdyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWFjY29yZGlvbl9fdGl0bGUuI3skcHJlZml4fS0tc2tlbGV0b25fX3RleHQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnYWNjb3JkaW9uJykge1xuICBAaW5jbHVkZSBhY2NvcmRpb247XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vYnV0dG9uL2J1dHRvbic7XG5cbi8vLyBQcm9ncmVzcyBpbmRpY2F0b3Igc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHByb2dyZXNzLWluZGljYXRvclxuQG1peGluIHByb2dyZXNzLWluZGljYXRvciB7XG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgd2lkdGg6IHJlbSgxMjhweCk7XG4gICAgbWluLXdpZHRoOiA3cmVtO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2xhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tc3BhY2UtZXF1YWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtaW4td2lkdGg6IDhyZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGluZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IHJlbSgxMjhweCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYm9yZGVyOiAkcHJvZ3Jlc3MtaW5kaWNhdG9yLWJhci13aWR0aDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tc3BhY2UtZXF1YWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxpbmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogcmVtKDEyOHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1zdGVwIHN2ZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgaGVpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIG1hcmdpbjogcmVtKDEwcHgpICRjYXJib24tLXNwYWNpbmctMDMgMCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmaWxsOiAkaW50ZXJhY3RpdmUtMDQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIG1heC13aWR0aDogcmVtKDg4cHgpO1xuICAgIG1hcmdpbjogJGNhcmJvbi0tc3BhY2luZy0wMyAwIDAgMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbDpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLTAxO1xuICAgIGJveC1zaGFkb3c6IDAgcmVtKDFweCkgJGxpbmstMDE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpbmstMDE7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIHJlbSgzcHgpIDAgMCAkbGluay0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tc3BhY2UtZXF1YWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRpbnRlcmFjdGl2ZS0wMTtcbiAgICBib3gtc2hhZG93OiAwIHJlbSgzcHgpIDAgMCAkaW50ZXJhY3RpdmUtMDE7XG4gIH1cblxuICAvL09WRVJGTE9XIFNUWUxJTkdcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsLW92ZXJmbG93OmhvdmVyIH4gLiN7JHByZWZpeH0tLXRvb2x0aXAsXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbC1vdmVyZmxvdzpmb2N1cyB+IC4jeyRwcmVmaXh9LS10b29sdGlwIHtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAgLiN7JHByZWZpeH0tLXRvb2x0aXAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2NhcmV0IHtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDEwcHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RleHQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAvL3NpbmdsZSBsaW5lIHRvb2x0aXBcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAgLiN7JHByZWZpeH0tLXRvb2x0aXAge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHJlbSgxMjVweCk7XG5cbiAgICBtaW4td2lkdGg6IHJlbSgxMTVweCk7XG4gICAgbWluLWhlaWdodDogJGNhcmJvbi0tc3BhY2luZy0wNjtcbiAgICBtYXJnaW4tdG9wOiByZW0oNDBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSgyMnB4KTtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTAzICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgY29sb3I6ICRpbnZlcnNlLTAxO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vbXVsdGlsaW5lIHRvb2x0aXBcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAgLiN7JHByZWZpeH0tLXRvb2x0aXBfbXVsdGkge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktbG9uZy0wMScpO1xuXG4gICAgd2lkdGg6IHJlbSgxNTBweCk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGNvbG9yOiAkaW52ZXJzZS0wMTtcbiAgfVxuXG4gIC8vT1BUSU9OQUwgSEVMUEVSIFRFWFQgU1RZTElOR1xuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtb3B0aW9uYWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiByZW0oMjhweCk7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDY7XG4gICAgY29sb3I6ICR0ZXh0LTAyO1xuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICB9XG5cbiAgLy9DVVJSRU5UIFNUWUxJTkdcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtLWN1cnJlbnQge1xuICAgIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1saW5lIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgICB9XG4gIH1cblxuICAvL0lOQ09NUExFVEUgU1RZTElOR1xuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC0taW5jb21wbGV0ZSB7XG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6ICR1aS0wNTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGluZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDM7XG4gICAgfVxuICB9XG5cbiAgLy9DT01QTEVURUQgU1RZTElOR1xuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC0tY29tcGxldGUge1xuICAgIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1saW5lIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgICB9XG4gIH1cblxuICAvL2ludGVyYWN0aXZlIGJ1dHRvblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC1idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLy91bmNsaWNrYWJsZSBidXR0b25cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtYnV0dG9uLS11bmNsaWNrYWJsZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC1idXR0b24tLXVuY2xpY2thYmxlXG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsOmhvdmVyIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcC1idXR0b24tLXVuY2xpY2thYmxlXG4gICAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX2xhYmVsOmhvdmVyIHtcbiAgICBjb2xvcjogJGxpbmstMDE7XG4gICAgYm94LXNoYWRvdzogMCByZW0oMXB4KSAkbGluay0wMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAvL0RJU0FCTEVEIFNUWUxJTkdcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgc3ZnIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBmaWxsOiAkZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsLFxuICAgIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbDpob3ZlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsOmZvY3VzLFxuICAgIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1sYWJlbDphY3RpdmUge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxpbmUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtbGFiZWwtb3ZlcmZsb3c6aG92ZXJcbiAgICAgIH4gLiN7JHByZWZpeH0tLXRvb2x0aXAtLWRlZmluaXRpb25cbiAgICAgIC4jeyRwcmVmaXh9LS10b29sdGlwLS1kZWZpbml0aW9uX19ib3R0b20ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvL0VSUk9SIFNUWUxJTkdcbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzX193YXJuaW5nID4gKiB7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG4gIH1cblxuICAvLyBTa2VsZXRvbiBTdGF0ZVxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcblxuICAgIHdpZHRoOiByZW0oNDBweCk7XG5cbiAgICBoZWlnaHQ6IHJlbSgxMnB4KTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIFZhcmlhbnRcblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtLXZlcnRpY2FsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtLXZlcnRpY2FsIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1zdGVwLFxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtLXZlcnRpY2FsIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1zdGVwLWJ1dHRvbiB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gICAgbWluLXdpZHRoOiBpbml0aWFsO1xuICAgIG1pbi1oZWlnaHQ6IDMuNjI1cmVtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLS12ZXJ0aWNhbCAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcCBzdmcsXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tdmVydGljYWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLXN0ZXAtYnV0dG9uIHN2ZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8vIDFweCB0b3AgbWFyZ2luIGJhc2VkIG9uIHZpc3VhbCByZXZpZXdcbiAgICBtYXJnaW46IHJlbSgxcHgpICRjYXJib24tLXNwYWNpbmctMDMgMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tdmVydGljYWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGluaXRpYWw7XG4gICAgbWF4LXdpZHRoOiByZW0oMTYwcHgpO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2dyZXNzLS12ZXJ0aWNhbCAuI3skcHJlZml4fS0tcHJvZ3Jlc3Mtc3RlcCAuYngtLXRvb2x0aXAge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy0tdmVydGljYWwgLiN7JHByZWZpeH0tLXByb2dyZXNzLW9wdGlvbmFsIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDc7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZ3Jlc3MtLXZlcnRpY2FsIC4jeyRwcmVmaXh9LS1wcm9ncmVzcy1saW5lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygncHJvZ3Jlc3MtaW5kaWNhdG9yJykge1xuICBAaW5jbHVkZSBwcm9ncmVzcy1pbmRpY2F0b3I7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi9saW5rL2xpbmsnO1xuXG4vLy8gQnJlYWRjcnVtYiBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgYnJlYWRjcnVtYlxuQG1peGluIGJyZWFkY3J1bWIge1xuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KG1kKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJyZWFkY3J1bWItaXRlbSAuI3skcHJlZml4fS0tbGluazp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGxpbmstMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYi1pdGVtOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJib24tLXNwYWNpbmctMDM7XG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIGNvbnRlbnQ6ICcvJztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1icmVhZGNydW1iLS1uby10cmFpbGluZy1zbGFzaFxuICAgIC4jeyRwcmVmaXh9LS1icmVhZGNydW1iLWl0ZW06bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWJyZWFkY3J1bWItaXRlbTpsYXN0LWNoaWxkLFxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYi1pdGVtOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYiAuI3skcHJlZml4fS0tbGluayB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1icmVhZGNydW1iLWl0ZW0gW2FyaWEtY3VycmVudD0ncGFnZSddLFxuICAuI3skcHJlZml4fS0tYnJlYWRjcnVtYi1pdGVtLiN7JHByZWZpeH0tLWJyZWFkY3J1bWItaXRlbS0tY3VycmVudFxuICAgIC4jeyRwcmVmaXh9LS1saW5rIHtcbiAgICBjb2xvcjogJHRleHQtMDE7XG4gICAgY3Vyc29yOiBhdXRvO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gU2tlbGV0b24gU3RhdGVcbiAgLiN7JHByZWZpeH0tLWJyZWFkY3J1bWIuI3skcHJlZml4fS0tc2tlbGV0b24gLiN7JHByZWZpeH0tLWxpbmsge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgd2lkdGg6IHJlbSgxMDBweCk7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2JyZWFkY3J1bWInKSB7XG4gIEBpbmNsdWRlIGJyZWFkY3J1bWI7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuJGNzcy0taGVscGVyczogdHJ1ZTtcblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0taGVscGVycyc7XG5AaW1wb3J0ICcuLi9idXR0b24vYnV0dG9uJztcbkBpbXBvcnQgJy4uL2NoZWNrYm94L2NoZWNrYm94JztcbkBpbXBvcnQgJy4uL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24nO1xuQGltcG9ydCAnLi4vZm9ybS9mb3JtJztcbkBpbXBvcnQgJy4uL292ZXJmbG93LW1lbnUvb3ZlcmZsb3ctbWVudSc7XG5AaW1wb3J0ICcuLi9zZWFyY2gvc2VhcmNoJztcblxuLy8vIFRvb2xiYXIgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHRvb2xiYXJcbkBtaXhpbiB0b29sYmFyIHtcbiAgLiN7JHByZWZpeH0tLXRvb2xiYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG5cbiAgICA+IGRpdiB7XG4gICAgICBtYXJnaW46IDAgcmVtKDRweCk7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXNlYXJjaC1pbnB1dCB7XG4gICAgICBoZWlnaHQ6IHJlbSgzMnB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX2ljb24ge1xuICAgICAgdHJhbnNpdGlvbjogZmlsbCA1MG1zICRjYXJib24tLXN0YW5kYXJkLWVhc2luZztcbiAgICAgIGZpbGw6ICR0ZXh0LTAyO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS1zZWFyY2gtbWFnbmlmaWVyIHtcbiAgICAgIHRvcDogcmVtKDhweCk7XG4gICAgICBsZWZ0OiByZW0oNnB4KTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMTc1bXMgJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nO1xuICAgICAgZmlsbDogJHRleHQtMDI7XG4gICAgfVxuXG4gICAgZmllbGRzZXQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtLWFjdGl2ZSB7XG4gICAgICB3aWR0aDogcmVtKDI1MHB4KTtcblxuICAgICAgLiN7JHByZWZpeH0tLXNlYXJjaC1tYWduaWZpZXIge1xuICAgICAgICB0b3A6IHJlbSg5cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuICAgICAgfVxuXG4gICAgICAuI3skcHJlZml4fS0tc2VhcmNoLWNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLWNoZWNrYm94LWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLW9wZW4gPiAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbiB7XG4gICAgICBmaWxsOiAkYnJhbmQtMDE7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoIHtcbiAgICB3aWR0aDogMS44cmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAxNzVtcyAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2hfX2J0biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLWZpbHRlci1pY29uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLW1lbnVfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdjYXB0aW9uLTAxJyk7XG5cbiAgICBwYWRkaW5nOiAwLjVyZW0gMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItbWVudV9fb3B0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMS4yNXJlbTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10b29sYmFyLW1lbnVfX2RpdmlkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXJhZGlvLWJ1dHRvbi1ncm91cCB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRvb2xiYXItc2VhcmNoOm5vdCguI3skcHJlZml4fS0tdG9vbGJhci1zZWFyY2gtLWFjdGl2ZSlcbiAgICAuI3skcHJlZml4fS0tc2VhcmNoLWlucHV0IHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3Rvb2xiYXInKSB7XG4gIEBpbmNsdWRlIHRvb2xiYXI7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGltZSBQaWNrZXJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0tcmVzZXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuXG4vLy8gVGltZSBwaWNrZXIgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHRpbWUtcGlja2VyXG5AbWl4aW4gdGltZS1waWNrZXIge1xuICAuI3skcHJlZml4fS0tdGltZS1waWNrZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyX19zZWxlY3Qge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgbWFyZ2luOiAwICRjYXJib24tLXNwYWNpbmctMDE7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyX19pbnB1dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1yaWdodDogcmVtKDQ4cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyX19pbnB1dC1maWVsZCB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdjb2RlLTAyJyk7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDQuODc1cmVtO1xuICAgIGhlaWdodDogcmVtKDQwcHgpO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAxIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXItY29sb3JzO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aW1lLXBpY2tlci0tbGlnaHQgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZpZWxkLTAyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItdWk7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmOmhvdmVyOmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyLS1zbSAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0LFxuICAuI3skcHJlZml4fS0tdGltZS1waWNrZXItLXNtIC4jeyRwcmVmaXh9LS10aW1lLXBpY2tlcl9faW5wdXQtZmllbGQge1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIG1heC1oZWlnaHQ6IHJlbSgzMnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aW1lLXBpY2tlci0teGwgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dCxcbiAgLiN7JHByZWZpeH0tLXRpbWUtcGlja2VyLS14bCAuI3skcHJlZml4fS0tdGltZS1waWNrZXJfX2lucHV0LWZpZWxkIHtcbiAgICBoZWlnaHQ6IHJlbSg0OHB4KTtcbiAgICBtYXgtaGVpZ2h0OiByZW0oNDhweCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygndGltZS1waWNrZXInKSB7XG4gIEBpbmNsdWRlIHRpbWUtcGlja2VyO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNsaWRlclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9mb3JtL2Zvcm0nO1xuQGltcG9ydCAnLi4vdGV4dC1pbnB1dC90ZXh0LWlucHV0JztcblxuLy8vIFNsaWRlciBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgc2xpZGVyXG5AbWl4aW4gc2xpZGVyIHtcbiAgLiN7JHByZWZpeH0tLXNsaWRlci1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IHJlbSgyMDBweCk7XG4gICAgbWF4LXdpZHRoOiByZW0oNjQwcHgpO1xuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNsaWRlcl9fcmFuZ2UtbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2NvZGUtMDInKTtcblxuICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RyYWNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oMnB4KTtcbiAgICBiYWNrZ3JvdW5kOiAkdWktMDM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyX190cmFjazpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbSgtNXB4KTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiByZW0oMnB4KTtcbiAgICBoZWlnaHQ6IHJlbSg0cHgpO1xuICAgIGJhY2tncm91bmQ6ICR1aS0wMztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXJfX2ZpbGxlZC10cmFjayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDJweCk7XG4gICAgYmFja2dyb3VuZDogJHVpLTA1O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNsaWRlcl9fdGh1bWIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogcmVtKDE0cHgpO1xuICAgIGhlaWdodDogcmVtKDE0cHgpO1xuICAgIGJhY2tncm91bmQ6ICR1aS0wNTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdHJhbnNwYXJlbnQsIGluc2V0IDAgMCAwIDJweCB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpLFxuICAgICAgYmFja2dyb3VuZCAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGJveC1zaGFkb3cgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC8vIDIwcHggLyAxNHB4ID0gMS40Mjg2XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjQyODYpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludGVyYWN0aXZlLTA0O1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRpbnRlcmFjdGl2ZS0wNCwgaW5zZXQgMCAwIDAgM3B4ICR1aS0wMTtcbiAgICAgIC8vIDIwcHggLyAxNHB4ID0gMS40Mjg2XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjQyODYpO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkaW50ZXJhY3RpdmUtMDQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjQyODYpO1xuICAgIH1cblxuICAgIC8vIFdpbmRvd3MsIEZpcmVmb3ggSENNIEZpeFxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSxcbiAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgIC8vIGBCdXR0b25UZXh0YCBpcyBhIENTUzIgc3lzdGVtIGNvbG9yIHRvIGhlbHAgaW1wcm92ZSBjb2xvcnMgaW4gSENNXG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyX19pbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItdGV4dC1pbnB1dCxcbiAgLiN7JHByZWZpeH0tc2xpZGVyLXRleHQtaW5wdXQge1xuICAgIHdpZHRoOiByZW0oNjRweCk7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXG4gICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbiAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNsaWRlcl9fdGh1bWI6Zm9jdXMgfiAuI3skcHJlZml4fS0tc2xpZGVyX19maWxsZWQtdHJhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnRlcmFjdGl2ZS0wNDtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gIC4jeyRwcmVmaXh9LS1sYWJlbC0tZGlzYWJsZWRcbiAgICB+IC4jeyRwcmVmaXh9LS1zbGlkZXItY29udGFpbmVyXG4gICAgPiAuI3skcHJlZml4fS0tc2xpZGVyX19yYW5nZS1sYWJlbCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMztcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJHVpLTAzO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNsaWRlci0tZGlzYWJsZWQgLiN7JHByZWZpeH0tLXNsaWRlcl9fdHJhY2ssXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItLWRpc2FibGVkIC4jeyRwcmVmaXh9LS1zbGlkZXJfX2ZpbGxlZC10cmFjayxcbiAgLiN7JHByZWZpeH0tLXNsaWRlci0tZGlzYWJsZWRcbiAgICAuI3skcHJlZml4fS0tc2xpZGVyX190aHVtYjpmb2N1c1xuICAgIH4gLiN7JHByZWZpeH0tLXNsaWRlcl9fZmlsbGVkLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDM7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zbGlkZXItLWRpc2FibGVkXG4gICAgfiAuI3skcHJlZml4fS0tZm9ybS1pdGVtXG4gICAgLiN7JHByZWZpeH0tLXNsaWRlci10ZXh0LWlucHV0LFxuICAuI3skcHJlZml4fS0tc2xpZGVyLS1kaXNhYmxlZCB+IC4jeyRwcmVmaXh9LS1zbGlkZXItdGV4dC1pbnB1dCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC0wMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWQtMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkLTAyO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBTa2VsZXRvbiBzdGF0ZVxuICAuI3skcHJlZml4fS0tc2xpZGVyLWNvbnRhaW5lci4jeyRwcmVmaXh9LS1za2VsZXRvblxuICAgIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3JhbmdlLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcblxuICAgIHdpZHRoOiByZW0oMjBweCk7XG4gICAgaGVpZ2h0OiByZW0oMTJweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyLWNvbnRhaW5lci4jeyRwcmVmaXh9LS1za2VsZXRvblxuICAgIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RyYWNrIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2xpZGVyLWNvbnRhaW5lci4jeyRwcmVmaXh9LS1za2VsZXRvblxuICAgIC4jeyRwcmVmaXh9LS1zbGlkZXJfX3RodW1iIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3NsaWRlcicpIHtcbiAgQGluY2x1ZGUgc2xpZGVyO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRpbGVzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcblxuLy8vIFRpbGUgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHRpbGVcbkBtaXhpbiB0aWxlIHtcbiAgLiN7JHByZWZpeH0tLXRpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtaW4td2lkdGg6IDhyZW07XG4gICAgbWluLWhlaWdodDogNHJlbTtcbiAgICBwYWRkaW5nOiAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcblxuICAgICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLTNweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1jbGlja2FibGUsXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1zZWxlY3RhYmxlLFxuICAuI3skcHJlZml4fS0tdGlsZS0tZXhwYW5kYWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi0tbW9kZXJhdGUtMDEgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1jbGlja2FibGUsXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1leHBhbmRhYmxlIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZWNrbWFyayB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlcyBGaXJlZm94IGF1dG9tYXRpYyBib3JkZXIgb24gYnV0dG9uc1xuICAuI3skcHJlZml4fS0tdGlsZS0tZXhwYW5kYWJsZTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtLWNsaWNrYWJsZSB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgY29sb3I6ICR0ZXh0LTAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLS1zZWxlY3RhYmxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZWNrbWFyayxcbiAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZXZyb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZV9fY2hlY2ttYXJrIHtcbiAgICB0b3A6IDFyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICBzdmcge1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgZmlsbDogJGljb24tMDI7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZXZyb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMC41cmVtO1xuICAgIGJvdHRvbTogMC41cmVtO1xuICAgIGhlaWdodDogMXJlbTtcblxuICAgIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICAgIGZpbGw6ICR1aS0wNTtcblxuICAgICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICAgIHNjcmVlbiBhbmQgKHByZWZlcnMtY29udHJhc3QpIHtcbiAgICAgICAgLy8gYEJ1dHRvblRleHRgIGlzIGEgQ1NTMiBzeXN0ZW0gY29sb3IgdG8gaGVscCBpbXByb3ZlIGNvbG9ycyBpbiBIQ01cbiAgICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtLWV4cGFuZGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGR1cmF0aW9uLS1tb2RlcmF0ZS0wMSBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtY29udGVudF9fYWJvdmUtdGhlLWZvbGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtY29udGVudF9fYmVsb3ctdGhlLWZvbGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICB2aXNpYmlsaXR5ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtLWlzLWV4cGFuZGVkIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0ICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuXG4gICAgLiN7JHByZWZpeH0tLXRpbGVfX2NoZXZyb24gc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgIH1cblxuICAgIC4jeyRwcmVmaXh9LS10aWxlLWNvbnRlbnRfX2JlbG93LXRoZS1mb2xkIHtcbiAgICAgIHZpc2liaWxpdHk6IGluaGVyaXQ7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgICAgdmlzaWJpbGl0eSAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS0taXMtc2VsZWN0ZWQge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCAkdWktMDU7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS0taXMtc2VsZWN0ZWQgLiN7JHByZWZpeH0tLXRpbGVfX2NoZWNrbWFyayB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS10aWxlLWlucHV0OmNoZWNrZWRcbiAgICArIC4jeyRwcmVmaXh9LS10aWxlXG4gICAgPiAuI3skcHJlZml4fS0tdGlsZV9fY2hlY2ttYXJrXG4gICAgc3ZnIHtcbiAgICBmaWxsOiAkdWktMDU7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdGlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgaGlkZGVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXRpbGUtaW5wdXQ6Zm9jdXMgKyAuI3skcHJlZml4fS0tdGlsZSB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3RpbGUnKSB7XG4gIEBpbmNsdWRlIHRpbGU7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdza2VsZXRvbi10ZXh0Jykge1xuICAuI3skcHJlZml4fS0tc2tlbGV0b25fX3RleHQge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJib24tLXNwYWNpbmctMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2tlbGV0b25fX2hlYWRpbmcge1xuICAgIGhlaWdodDogMS41cmVtO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZlbmRvci9AY2FyYm9uL2VsZW1lbnRzL3Njc3MvaW1wb3J0LW9uY2UvaW1wb3J0LW9uY2UnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuXG5AaW5jbHVkZSBleHBvcnRzKCdza2VsZXRvbi1pY29uJykge1xuICAuI3skcHJlZml4fS0taWNvbi0tc2tlbGV0b24ge1xuICAgIEBpbmNsdWRlIHNrZWxldG9uO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3NrZWxldG9uLXBsYWNlaG9sZGVyJykge1xuICAuI3skcHJlZml4fS0tc2tlbGV0b25fX3BsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSBza2VsZXRvbjtcblxuICAgIHdpZHRoOiByZW0oMTAwcHgpO1xuXG4gICAgaGVpZ2h0OiByZW0oMTAwcHgpO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGtleWZyYW1lcyBzdHJva2Uge1xuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLXJlc2V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4uL2xvYWRpbmcvbG9hZGluZyc7XG5AaW1wb3J0ICdrZXlmcmFtZXMnO1xuXG4vLy8gSW5saW5lIGxvYWRpbmcgc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIGlubGluZS1sb2FkaW5nXG5AbWl4aW4gaW5saW5lLWxvYWRpbmcge1xuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAycmVtO1xuXG4gICAgLiN7JHByZWZpeH0tLWxvYWRpbmdfX3N2ZyBjaXJjbGUge1xuICAgICAgc3Ryb2tlLXdpZHRoOiAxMjtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0tbG9hZGluZ19fc3Ryb2tlIHtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAkbG9hZGluZy0tc21hbGxfX2dhcDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX3RleHQge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2xhYmVsLTAxJyk7XG5cbiAgICBjb2xvcjogJHRleHQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX2FuaW1hdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gIH1cblxuICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX2NoZWNrbWFyay1jb250YWluZXIge1xuICAgIGZpbGw6ICRzdXBwb3J0LTAyO1xuXG4gICAgLy8gRm9yIGRlcHJlY2F0ZWQgb2xkZXIgbWFya3VwXG4gICAgJi4jeyRwcmVmaXh9LS1pbmxpbmUtbG9hZGluZ19fc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMC43NXJlbTtcbiAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgIH1cblxuICAgICZbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbG9hZGluZ19fY2hlY2ttYXJrIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzdHJva2U7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogJGludGVyYWN0aXZlLTA0O1xuICAgIHN0cm9rZS13aWR0aDogMS44O1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEyO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAxMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1pbmxpbmUtbG9hZGluZy0tZXJyb3Ige1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgZmlsbDogJHN1cHBvcnQtMDE7XG5cbiAgICAmW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tbG9hZGluZy0tc21hbGwgLiN7JHByZWZpeH0tLWlubGluZS1sb2FkaW5nX19zdmcge1xuICAgIHN0cm9rZTogJGludGVyYWN0aXZlLTA0O1xuICB9XG4gIC8qIElmIElFMTEgRG9uJ3Qgc2hvdyBjaGVjayBhbmltYXRpb24gKi9cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLiN7JHByZWZpeH0tLWlubGluZS1sb2FkaW5nX19jaGVja21hcmstY29udGFpbmVyIHtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICB9XG5cbiAgICAuI3skcHJlZml4fS0taW5saW5lLWxvYWRpbmdfX2NoZWNrbWFyayB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDA7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2lubGluZS1sb2FkaW5nJykge1xuICBAaW5jbHVkZSBpbmxpbmUtbG9hZGluZztcbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYWdpbmF0aW9uIE5hdlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY29sb3JzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90aGVtZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5cbi8vLyBQc2V1ZG8gdW5kZXJsaW5lXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHBhZ2luYXRpb24tbmF2XG5AbWl4aW4gcHNldWRvLXVuZGVybGluZSgpIHtcbiAgJjpub3QoLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19wYWdlLS1kaXJlY3Rpb24pIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTAyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGludGVyYWN0aXZlLTAxO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IHdpZHRoICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgICAgY29udGVudDogJyc7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19wYWdlLS1hY3RpdmUgKyAmOjphZnRlcixcbiAgJi4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fcGFnZS0tYWN0aXZlOjphZnRlciB7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAjeyRjYXJib24tLXNwYWNpbmctMDUgLyAyfSk7XG4gICAgd2lkdGg6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLy8gUGFnaW5hdGlvbiBuYXYgYmFzZSBzdHlsZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgcGFnaW5hdGlvbi1uYXZcbi8vLyBAcGFyYW0ge0NvbG9yfSAkdGV4dC1jb2xvciBbJHRleHQtMDJdXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRleHQtY29sb3ItYWN0aXZlIFskdGV4dC0wMl1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1jb2xvci1ob3ZlciBbJGhvdmVyLXVpXVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSBbaW5pdGlhbF1cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZvbnQtd2VpZ2h0IFs0MDBdXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRpdGVtLXBhZGRpbmcgWzBdXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRidXR0b24tbWluLXdpZHRoIFskY2FyYm9uLS1zcGFjaW5nLTA5XVxuLy8vIEBwYXJhbSB7VmFsdWV9ICRidXR0b24tcGFkZGluZyBbMS4wNjI1cmVtICRjYXJib24tLXNwYWNpbmctMDJdXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRidXR0b24tZGlyZWN0aW9uLXNpemUgWyRjYXJib24tLXNwYWNpbmctMDldXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzZWxlY3QtaWNvbi10b3AtcG9zaXRpb24gWyRjYXJib24tLXNwYWNpbmctMDVdXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzZWxlY3QtaWNvbi1sZWZ0LXBvc2l0aW9uIFskY2FyYm9uLS1zcGFjaW5nLTA1XVxuQG1peGluIHBhZ2luYXRpb24tbmF2KFxuICAkdGV4dC1jb2xvcjogJHRleHQtMDIsXG4gICR0ZXh0LWNvbG9yLWFjdGl2ZTogJHRleHQtMDIsXG4gICRiYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkaG92ZXItdWksXG4gICRiYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogaW5pdGlhbCxcbiAgJGZvbnQtd2VpZ2h0OiA0MDAsXG4gICRpdGVtLXBhZGRpbmc6IDAsXG4gICRidXR0b24tbWluLXdpZHRoOiAkY2FyYm9uLS1zcGFjaW5nLTA5LFxuICAkYnV0dG9uLXBhZGRpbmc6IDEuMDYyNXJlbSAkY2FyYm9uLS1zcGFjaW5nLTAyLFxuICAkYnV0dG9uLWRpcmVjdGlvbi1zaXplOiAkY2FyYm9uLS1zcGFjaW5nLTA5LFxuICAkc2VsZWN0LWljb24tdG9wLXBvc2l0aW9uOiAkY2FyYm9uLS1zcGFjaW5nLTA1LFxuICAkc2VsZWN0LWljb24tbGVmdC1wb3NpdGlvbjogJGNhcmJvbi0tc3BhY2luZy0wNVxuKSB7XG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19saXN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6ICRpdGVtLXBhZGRpbmc7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2Uge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQoJHdpZHRoOiBmYWxzZSk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLXdpZHRoOiAkYnV0dG9uLW1pbi13aWR0aDtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKHN0YW5kYXJkLCBwcm9kdWN0aXZlKSxcbiAgICAgIGNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvci1ob3ZlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLFxuICAgICYuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3BhZ2UtLWRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiByZ2JhKCR0ZXh0LWNvbG9yLCAwLjUpO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBwc2V1ZG8tdW5kZXJsaW5lKCk7XG5cbiAgICAmLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19wYWdlLS1hY3RpdmUge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLWFjdGl2ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19pY29uIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fcGFnZS0tZGlyZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6ICRidXR0b24tZGlyZWN0aW9uLXNpemU7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWRpcmVjdGlvbi1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19zZWxlY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fcGFnZS0tc2VsZWN0IHtcbiAgICBtYXgtaGVpZ2h0OiAkYnV0dG9uLW1pbi13aWR0aDtcbiAgICB0ZXh0LWluZGVudDogY2FsYyg1MCUgLSA0LjVweCk7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvLyBPdmVycmlkZSBzb21lIEZpcmVmb3ggdXNlci1hZ2VudCBzdHlsZXNcbiAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhZ2luYXRpb24tbmF2X19zZWxlY3QtaWNvbi13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIEBpbmNsdWRlIHBzZXVkby11bmRlcmxpbmUoKTtcblxuICAgIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fcGFnZS0tYWN0aXZlICsgJiB7XG4gICAgICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3NlbGVjdC1pY29uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tcGFnaW5hdGlvbi1uYXZfX3NlbGVjdC1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDUwJSAtICN7JHNlbGVjdC1pY29uLXRvcC1wb3NpdGlvbiAvIDJ9KTtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtICN7JHNlbGVjdC1pY29uLXRvcC1wb3NpdGlvbiAvIDJ9KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wYWdpbmF0aW9uLW5hdl9fYWNjZXNzaWJpbGl0eS1sYWJlbCB7XG4gICAgQGluY2x1ZGUgaGlkZGVuKCk7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygncGFnaW5hdGlvbi1uYXYnKSB7XG4gIEBpbmNsdWRlIHBhZ2luYXRpb24tbmF2O1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAyMFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbiRjc3MtLWhlbHBlcnM6IHRydWU7XG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0taGVscGVycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5AaW1wb3J0ICcuLi9zZWxlY3Qvc2VsZWN0JztcblxuLy8vIFVuc3RhYmxlIHBhZ2luYXRpb24gc3R5bGVzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbkBtaXhpbiB1bnN0YWJsZV9wYWdpbmF0aW9uIHtcbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogcmVtKDQ4cHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHVpLTAzO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX190ZXh0IHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIG1hcmdpbjogMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19sZWZ0LFxuICAuI3skcHJlZml4fS0tdW5zdGFibGUtcGFnaW5hdGlvbl9fcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdW5zdGFibGUtcGFnaW5hdGlvbl9fbGVmdCB7XG4gICAgcGFkZGluZzogMCAkY2FyYm9uLS1zcGFjaW5nLTA1IDAgMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19sZWZ0ID4gLiN7JHByZWZpeH0tLWZvcm0taXRlbSxcbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX3JpZ2h0ID4gLiN7JHByZWZpeH0tLWZvcm0taXRlbSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX2xlZnRcbiAgICAuI3skcHJlZml4fS0tdW5zdGFibGUtcGFnaW5hdGlvbl9fdGV4dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0oMXB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19yaWdodFxuICAgIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX190ZXh0IHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSgxcHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX2J1dHRvbiB7XG4gICAgQGluY2x1ZGUgcmVzZXQ7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIHJlbSgxNHB4KTtcbiAgICBjb2xvcjogJHVpLTA1O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkdWktMDM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihzdGFuZGFyZCwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oc3RhbmRhcmQsIHByb2R1Y3RpdmUpO1xuICAgIGZpbGw6ICR1aS0wNTtcbiAgfVxuXG4gIC8vIFVuc2V0IGhlaWdodC93aWR0aCBzZXQgYnkgaWNvbi1vbmx5IGJ1dHRvbjpcbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX2J1dHRvbiAuI3skcHJlZml4fS0tYnRuX19pY29uIHtcbiAgICB3aWR0aDogaW5pdGlhbDtcbiAgICBoZWlnaHQ6IGluaXRpYWw7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdW5zdGFibGUtcGFnaW5hdGlvbl9fYnV0dG9uLiN7JHByZWZpeH0tLWJ0bi0taWNvbi1vbmx5LiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXI6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19idXR0b246aG92ZXIge1xuICAgIGNvbG9yOiAkdWktMDU7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX2J1dHRvbi0tbm8taW5kZXgge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgZmlsbDogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX2J1dHRvbi4jeyRwcmVmaXh9LS1idG46ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX2J1dHRvbjpkaXNhYmxlZDpob3ZlcixcbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX2J1dHRvbi0tbm8taW5kZXg6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgZmlsbDogJGRpc2FibGVkLTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX3BhZ2Utc2VsZWN0b3IsXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19wYWdlLXNpemVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19wYWdlLXNlbGVjdG9yXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dC0taW5saW5lX193cmFwcGVyLFxuICAuI3skcHJlZml4fS0tdW5zdGFibGUtcGFnaW5hdGlvbl9fcGFnZS1zaXplclxuICAgIC4jeyRwcmVmaXh9LS1zZWxlY3QtaW5wdXQtLWlubGluZV9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tdW5zdGFibGUtcGFnaW5hdGlvbl9fcGFnZS1zZWxlY3RvciAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0LFxuICAuI3skcHJlZml4fS0tdW5zdGFibGUtcGFnaW5hdGlvbl9fcGFnZS1zaXplciAuI3skcHJlZml4fS0tc2VsZWN0LWlucHV0IHtcbiAgICBAaW5jbHVkZSBjYXJib24tLXR5cGUtc3R5bGUoJ2JvZHktc2hvcnQtMDEnKTtcblxuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42NXJlbTtcbiAgICBwYWRkaW5nOiAwICRjYXJib24tLXNwYWNpbmctMDggMCAkY2FyYm9uLS1zcGFjaW5nLTA1O1xuXG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KCdtZCcpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhcmJvbi0tbWluaS11bml0cyg0LjUpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19wYWdlLXNlbGVjdG9yXG4gICAgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dDpob3ZlcixcbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX3BhZ2Utc2l6ZXIgLiN7JHByZWZpeH0tLXNlbGVjdC1pbnB1dDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX3BhZ2Utc2VsZWN0b3IgLiN7JHByZWZpeH0tLXNlbGVjdF9fYXJyb3csXG4gIC4jeyRwcmVmaXh9LS11bnN0YWJsZS1wYWdpbmF0aW9uX19wYWdlLXNpemVyIC4jeyRwcmVmaXh9LS1zZWxlY3RfX2Fycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJ21kJykge1xuICAgICAgcmlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX3BhZ2Utc2VsZWN0b3Ige1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHVpLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXVuc3RhYmxlLXBhZ2luYXRpb25fX3BhZ2Utc2l6ZXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR1aS0wMztcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCd1bnN0YWJsZV9wYWdpbmF0aW9uJykge1xuICBAaW5jbHVkZSB1bnN0YWJsZV9wYWdpbmF0aW9uO1xufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9mdW5jdGlvbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1jbGFzc2VzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAndGhlbWUnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcblxuLy8vIFVJIHNoZWxsIGhlYWRlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuQG1peGluIGNhcmJvbi1oZWFkZXIge1xuICAuI3skcHJlZml4fS0taGVhZGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogeignaGVhZGVyJyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogbWluaS11bml0cyg2KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAxO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2hlbGwtaGVhZGVyLWJvcmRlci0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2FjdGlvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCk7XG5cbiAgICB3aWR0aDogbWluaS11bml0cyg2KTtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNik7XG4gICAgYm9yZGVyOiByZW0oMnB4KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMixcbiAgICAgIGJvcmRlci1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19hY3Rpb25cbiAgICA+IHN2Zy4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLW1lbnUtcGFuZWwtY29sbGFwc2UtaWNvbixcbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uLS1hY3RpdmVcbiAgICA+IHN2Zy4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLW1lbnUtcGFuZWwtZXhwYW5kLWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19hY3Rpb24tLWFjdGl2ZVxuICAgID4gc3ZnLiN7JHByZWZpeH0tLW5hdmlnYXRpb24tbWVudS1wYW5lbC1jb2xsYXBzZS1pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19hY3Rpb246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1oZWFkZXItYmctMDQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19hY3Rpb24tLWFjdGl2ZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHNoZWxsLWhlYWRlci1ib3JkZXItMDE7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzaGVsbC1oZWFkZXItYmctMDE7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkc2hlbGwtaGVhZGVyLWJvcmRlci0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2FjdGlvbjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWZvY3VzO1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lLW9mZnNldDogLTNweDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19hY3Rpb246YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fYWN0aW9uID4gc3ZnIHtcbiAgICBmaWxsOiAkc2hlbGwtaGVhZGVyLWljb24tMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LXRyaWdnZXIgPiBzdmcge1xuICAgIGZpbGw6ICRzaGVsbC1oZWFkZXItaWNvbi0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdHJpZ2dlcjpob3ZlciB7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci1iZy0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LXRvZ2dsZV9faGlkZGVuIHtcbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJ2xnJykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEhlYWRlciAtIE5hbWVcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbmFtZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIG1pbmktdW5pdHMoNCkgMCBtaW5pLXVuaXRzKDIpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMXB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXI6IHJlbSgycHgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19uYW1lOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRzaGVsbC1oZWFkZXItZm9jdXM7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19uYW1lLS1wcmVmaXgge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbmFtZSxcbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX25hbWU6aG92ZXIge1xuICAgIGNvbG9yOiAkc2hlbGwtaGVhZGVyLXRleHQtMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LXRvZ2dsZTpub3QoLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10b2dnbGVfX2hpZGRlbilcbiAgICB+IC4jeyRwcmVmaXh9LS1oZWFkZXJfX25hbWUge1xuICAgIHBhZGRpbmctbGVmdDogcmVtKDhweCk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEhlYWRlciAtIE5hdmlnYXRpb25cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0taGVhZGVyX19uYXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoMik7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQoJ2xnJykge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IHJlbSgxcHgpO1xuICAgICAgaGVpZ2h0OiByZW0oMjRweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJvcmRlci0wMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvLyBVc2VkIGZvciBsaW5rcyB0aGF0IGFyZSBkaXJlY3RseSBpbiB0aGUgbWVudWJhciB0byBzcGFuIHRoZSBmdWxsIGhlaWdodFxuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIG1pbmktdW5pdHMoMik7XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItdGV4dC0wMjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIC8vIFRleHQgc3R5bGVzXG4gICAgZm9udC1zaXplOiByZW0oMTRweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIC8vIFJlc2V0IGxpbmsgc3R5bGVzIGFuZCBtYWtlIHN1cmUgdGhlIHRleHQgaXNuJ3Qgc2VsZWN0YWJsZVxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAvLyBVc2VkIGZvciBmb2N1cyBzdHlsZXNcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMixcbiAgICAgIGJvcmRlci1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIsIGNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW06aG92ZXIge1xuICAgIGNvbG9yOiAkc2hlbGwtaGVhZGVyLXRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLWhlYWRlci1iZy0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX2FjdGlvbjphY3RpdmUsXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW06YWN0aXZlIHtcbiAgICBjb2xvcjogJHNoZWxsLWhlYWRlci10ZXh0LTAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1oZWFkZXItYmctMDM7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtOmZvY3VzIHtcbiAgICBjb2xvcjogJHNoZWxsLWhlYWRlci10ZXh0LTAxO1xuICAgIGJvcmRlci1jb2xvcjogJHNoZWxsLWhlYWRlci1mb2N1cztcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0zcHg7XG4gICAgfVxuICB9XG5cbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbTpob3ZlciA+IHN2ZyxcbiAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbTphY3RpdmUgPiBzdmcsXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW06Zm9jdXMgPiBzdmcge1xuICAgIGZpbGw6ICRzaGVsbC1oZWFkZXItaWNvbi0wMTtcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3Igc2VsZWN0ZWQgc3RhdGVcblxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW2FyaWEtY3VycmVudD0ncGFnZSddOjphZnRlcixcbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtLS1jdXJyZW50OjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IC0ycHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGludmVyc2Utc3VwcG9ydC0wNDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW1bYXJpYS1jdXJyZW50PSdwYWdlJ106Zm9jdXM6OmFmdGVyLFxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW0tLWN1cnJlbnQ6Zm9jdXM6OmFmdGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtW2FyaWEtY3VycmVudD0ncGFnZSddOmZvY3VzLFxuICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtLS1jdXJyZW50OmZvY3VzIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkc2hlbGwtaGVhZGVyLWZvY3VzO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fc3VibWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVthcmlhLWhhc3BvcHVwPSd0cnVlJ10ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdGl0bGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIHtcbiAgICAvLyBOb3RlOiBuZWVkcyB0byBiZSBoaWdoZXIgdGhhbiBtZW51LiBBZGRpbmcgMSBoZXJlIGluc3RlYWQgb2YgbW92aW5nIHRvXG4gICAgLy8gdGhlIG5leHQgbGV2ZWwuXG4gICAgei1pbmRleDogI3t6KCdoZWFkZXInKSArIDF9O1xuICAgIGNvbG9yOiAkc2hlbGwtaGVhZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1oZWFkZXItYmctMDY7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LXRpdGxlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXVxuICAgID4gLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdGl0bGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddXG4gICAgKyAuI3skcHJlZml4fS0taGVhZGVyX19tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogeignaGVhZGVyJyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDI1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTA2O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LXRpdGxlW2FyaWEtZXhwYW5kZWQ9J3RydWUnXVxuICAgICsgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudVxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLWhlYWRlci1iZy0wNDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdGl0bGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddXG4gICAgKyAuI3skcHJlZml4fS0taGVhZGVyX19tZW51XG4gICAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLWhlYWRlci1iZy0wMztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtIHtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNik7XG4gIH1cblxuICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51IC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbTpob3ZlciB7XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTA2O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1hcnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IG1pbmktdW5pdHMoMSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMiwgZmlsbCAkZHVyYXRpb24tLWZhc3QtMDI7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci1pY29uLTAzO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBIZWFkZXIgLSBHbG9iYWxcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0taGVhZGVyX19nbG9iYWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMSAxIDAlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBIZWFkZXIgLSBTa2lwIHRvIGNvbnRlbnRcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tc2tpcC10by1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgYm9yZGVyOiAwO1xuICAgIHZpc2liaWxpdHk6IGluaGVyaXQ7XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1za2lwLXRvLWNvbnRlbnQ6Zm9jdXMge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtaGVhZGVyLWJnLTAxO1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICRpYm0tY29sb3JfX2JsdWUtNjA7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjbGlwOiBhdXRvO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2NhcmJvbi1oZWFkZXInKSB7XG4gIEBpZiBmZWF0dXJlLWZsYWctZW5hYmxlZCgndWktc2hlbGwnKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLWhlYWRlcjtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jb2xvcnMnO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhlYWRlciB0b2tlbnNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8vIEhlYWRlciBiYXIgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWJnLTAxOiAkY2FyYm9uLS1ncmF5LTEwMDtcblxuLy8vIEhlYWRlciBtZW51IHRyaWdnZXIgaG92ZXIsIEhlYWRlciBuYXYgbGluayBob3ZlclxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4vLy8gVE9ETyBuZWVkcyBjb2xvciB2YXIgZ3JheS0xMDAtaG92ZXJcbiRzaGVsbC1oZWFkZXItYmctMDI6ICMyYzJjMmM7XG5cbi8vLyBIZWFkZXIgYWN0aW9uIGFjdGl2ZSBiYWNrZ3JvdW5kXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItYmctMDM6ICRjYXJib24tLWdyYXktODA7XG5cbi8vLyBIZWFkZXIgc3VibWVudSBsaW5rIGhvdmVyXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbi8vLyBUT0RPIG5lZWRzIGNvbG9yIHZhciBncmF5LTkwLWhvdmVyXG4kc2hlbGwtaGVhZGVyLWJnLTA0OiAjMzUzNTM1O1xuXG4vLy8gSGVhZGVyIG5hdiBsaW5rIGFjdGl2ZSBhbmQgZm9jdXMgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWJnLTA1OiAkY2FyYm9uLS1ncmF5LTcwO1xuXG4vLy8gSGVhZGVyIG5hdiBsaW5rIHN1Ym1lbnVcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLWhlYWRlci1iZy0wNjogJGNhcmJvbi0tZ3JheS05MDtcblxuLy8vIEhlYWRlciBib3JkZXIgYm90dG9tXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItYm9yZGVyLTAxOiAkY2FyYm9uLS1ncmF5LTgwO1xuXG4vLy8gSGVhZGVyIGZvY3VzXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItZm9jdXM6ICRjYXJib24tLXdoaXRlLTA7XG5cbi8vLyBQcmltYXJ5IHRleHQgaW4gaGVhZGVyLCBUaXRsZSB0ZXh0XG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItdGV4dC0wMTogJGNhcmJvbi0tZ3JheS0xMDtcblxuLy8vIFNlY29uZGFyeSB0ZXh0IGluIGhlYWRlciwgTWVudSBpdGVtIG5hdiB0ZXh0XG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItdGV4dC0wMjogJGNhcmJvbi0tZ3JheS0zMDtcblxuLy8vIEhlYWRlciBtZW51IHRyaWdnZXJcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLWhlYWRlci1pY29uLTAxOiAkY2FyYm9uLS1ncmF5LTEwO1xuXG4vLy8gSGVhZGVyIGJhciBpY29uc1xuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWljb24tMDI6ICRjYXJib24tLXdoaXRlLTA7XG5cbi8vLyBIZWFkZXIgYmFyIGljb25zXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1oZWFkZXItaWNvbi0wMzogJGNhcmJvbi0tZ3JheS0zMDtcblxuLy8vIEl0ZW0gbGlua1xuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtaGVhZGVyLWxpbms6ICRjYXJib24tLWJsdWUtNjA7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGVhZGVyIFBhbmVsIHRva2Vuc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLyBIZWFkZXItcGFuZWwgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtcGFuZWwtYmctMDE6ICRjYXJib24tLWdyYXktMTAwO1xuXG4vLy8gUGFuZWwgaXRlbSBob3ZlciBiYWNrZ3JvdW5kXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbi8vLyBUT0RPIG5lZWRzIGNvbG9yIHZhciBncmF5LTEwMC1ob3ZlclxuJHNoZWxsLXBhbmVsLWJnLTAyOiAjMmMyYzJjO1xuXG4vLy8gUGFuZWwgaXRlbSBmb2N1cyBhbmQgYWN0aXZlIGJhY2tncm91bmRcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXBhbmVsLWJnLTAzOiAkY2FyYm9uLS1ncmF5LTgwO1xuXG4vLy8gUGFuZWwgaXRlbSBsaW5rIHNlbGVjdGVkIGJhY2tncm91bmRcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXBhbmVsLWJnLTA0OiAkY2FyYm9uLS1ncmF5LTkwO1xuXG4vLy8gUGFuZWwgYm9yZGVyXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbiRzaGVsbC1wYW5lbC1ib3JkZXI6ICRjYXJib24tLWdyYXktODA7XG5cbi8vLyBIZWFkZXIgcGFuZWwgdGV4dFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtcGFuZWwtdGV4dC0wMTogJGNhcmJvbi0tZ3JheS0zMDtcblxuLy8vIEhlYWRlciBwYW5lbCBzZWNvbmRhcnkgdGV4dFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtcGFuZWwtdGV4dC0wMjogJGNhcmJvbi0tZ3JheS0xMDtcblxuLy8vIEhlYWRlciBwYW5lbCBmb2N1cyBib3JkZXJcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXBhbmVsLWZvY3VzOiAkY2FyYm9uLS13aGl0ZS0wO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpZGUgbmF2IHRva2Vuc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLy8gU2lkZS1uYXYgcGFuZWwgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtc2lkZS1uYXYtYmctMDE6ICRjYXJib24tLXdoaXRlLTA7XG5cbi8vLyBTZWxlY3RlZCBjYXRlZ29yeSBiYWNrZ3JvdW5kXG4vLy8gU2VsZWN0IEwyIGZsYXR0ZWQgaXRlbSBiYWNrZ3JvdW5kXG4vLy8gSXRlbSBhY3RpdmUgYmFja2dyb3VuZFxuLy8vIEZvb3Rlci1iYXIgYmFja2dyb3VuZFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4vLy8gVE9ETyB3YWl0aW5nIGZvciB1cGRhdGVkIGNvbG9yXG4kc2hlbGwtc2lkZS1uYXYtYmctMDI6ICRjYXJib24tLWdyYXktODA7XG5cbi8vLyBTZWxlY3RlZCBMMiBuZXN0ZWQgaXRlbVxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4vLy8gVE9ETyB3YWl0aW5nIGZvciB1cGRhdGVkIGNvbG9yXG4kc2hlbGwtc2lkZS1uYXYtYmctMDM6ICRpYm0tY29sb3JfX2dyYXktNzA7XG5cbi8vLyBTaWRlIG5hdiBpdGVtIGhvdmVyIGJhY2tncm91bmRcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuLy8vIFRPRE8gbmVlZHMgY29sb3IgdmFyIGdyYXktOTAtaG92ZXJcbiRzaGVsbC1zaWRlLW5hdi1iZy0wNDogI2U1ZTVlNTtcblxuLy8vIFNpZGUgbmF2IG1lbnUgaXRlbSBob3ZlciBiYWNrZ3JvdW5kXG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbi8vLyBUT0RPIG5lZWRzIGNvbG9yIHZhciBncmF5LTgwLWhvdmVyXG4kc2hlbGwtc2lkZS1uYXYtYmctMDU6ICNkY2RjZGM7XG5cbi8vLyBQcmltYXJ5IHRleHQgaW4gc2lkZS1uYXZcbi8vLyBMMiBGbGF0dGVuIGl0ZW0gdGV4dFxuLy8vIEwyIE5lc3RlZCBpdGVtIHRleHRcbi8vLyBMMSB0aXRsZSB0ZXh0XG4vLy8gQHR5cGUgQ29sb3Jcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbi8vLyBUT0RPIHdhaXRpbmcgZm9yIHVwZGF0ZWQgY29sb3JcbiRzaGVsbC1zaWRlLW5hdi10ZXh0LTAxOiAkaWJtLWNvbG9yX19ncmF5LTcwO1xuXG4vLy8gU2Vjb25kYXJ5IHRleHQgaW4gc2lkZSBuYXZcbi8vLyBMMiBDYXRlZ29yeSBsYWJlbFxuLy8vIEB0eXBlIENvbG9yXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG4kc2hlbGwtc2lkZS1uYXYtdGV4dC0wMjogJGlibS1jb2xvcl9fZ3JheS0zMDtcblxuLy8vIFNpZGUtbmF2IGljb24gY29sb3Jcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXNpZGUtbmF2LWljb24tMDE6ICRpYm0tY29sb3JfX2dyYXktNzA7XG5cbi8vLyBJdGVtIGhpZ2hsaWdodCBiYXJcbi8vLyBAdHlwZSBDb2xvclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuJHNoZWxsLXNpZGUtbmF2LWFjY2VudC0wMTogJGlibS1jb2xvcl9fYmx1ZS02MDtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTYsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1oZWxwZXJzJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9oZWxwZXItbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9sYXlvdXQnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcbkBpbXBvcnQgJ3RoZW1lJztcblxuLy8vIFVJIHNoZWxsIHNpZGUgbmF2XG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQGdyb3VwIHVpLXNoZWxsXG5AbWl4aW4gY2FyYm9uLWhlYWRlci1wYW5lbCB7XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBIZWFkZXIgUGFuZWxcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXItcGFuZWwge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tbW90aW9uKGV4aXQsIHByb2R1Y3RpdmUpO1xuXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogY2FyYm9uLS1taW5pLXVuaXRzKDYpO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiB6KCdoZWFkZXInKTtcbiAgICB3aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtcGFuZWwtYmctMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMTFzO1xuICAgIHdpbGwtY2hhbmdlOiB3aWR0aDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1oZWFkZXItcGFuZWwtLWV4cGFuZGVkIHtcbiAgICB3aWR0aDogY2FyYm9uLS1taW5pLXVuaXRzKDMyKTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkc2hlbGwtcGFuZWwtYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHNoZWxsLXBhbmVsLWJvcmRlcjtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKCdjYXJib24taGVhZGVyLXBhbmVsJykge1xuICBAaWYgZmVhdHVyZS1mbGFnLWVuYWJsZWQoJ3VpLXNoZWxsJykge1xuICAgIEBpbmNsdWRlIGNhcmJvbi1oZWFkZXItcGFuZWw7XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTgsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy8gQ29tbW9uIGNvbXBvbmVudCBlYXNpbmdzXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9tb3Rpb25cbiRjYXJib24tLWVhc2luZ3M6IChcbiAgc3RhbmRhcmQ6IChcbiAgICBwcm9kdWN0aXZlOiBjdWJpYy1iZXppZXIoMC4yLCAwLCAwLjM4LCAwLjkpLFxuICAgIGV4cHJlc3NpdmU6IGN1YmljLWJlemllcigwLjQsIDAuMTQsIDAuMywgMSksXG4gICksXG4gIGVudHJhbmNlOiAoXG4gICAgcHJvZHVjdGl2ZTogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMzgsIDAuOSksXG4gICAgZXhwcmVzc2l2ZTogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMywgMSksXG4gICksXG4gIGV4aXQ6IChcbiAgICBwcm9kdWN0aXZlOiBjdWJpYy1iZXppZXIoMC4yLCAwLCAxLCAwLjkpLFxuICAgIGV4cHJlc3NpdmU6IGN1YmljLWJlemllcigwLjQsIDAuMTQsIDEsIDEpLFxuICApLFxuKTtcblxuLy8vIEdldCB0aGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24gZm9yIGEgZ2l2ZW4gZWFzaW5nIGFuZCBtb3Rpb24gbW9kZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIENhbiBiZSBgc3RhbmRhcmRgLCBgZW50cmFuY2VgLCBvciBgZXhpdGBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1vZGUgW3Byb2R1Y3RpdmVdIC0gQ2FuIGJlIGBwcm9kdWN0aXZlYCBvciBgZXhwcmVzc2l2ZWBcbi8vLyBAcGFyYW0ge01hcH0gJGVhc2luZ3MgWyRjYXJib24tLWVhc2luZ3NdIC0gRWFzaW5ncyBtYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL21vdGlvblxuLy8vIEByZXR1cm4ge0Z1bmN0aW9ufSBDU1MgYGN1YmljLWJlemllcigpYCBmdW5jdGlvblxuQGZ1bmN0aW9uIGNhcmJvbi0tbW90aW9uKCRuYW1lLCAkbW9kZTogcHJvZHVjdGl2ZSwgJGVhc2luZ3M6ICRjYXJib24tLWVhc2luZ3MpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRlYXNpbmdzLCAkbmFtZSkge1xuICAgICRlYXNpbmc6IG1hcC1nZXQoJGVhc2luZ3MsICRuYW1lKTtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGVhc2luZywgJG1vZGUpIHtcbiAgICAgIEByZXR1cm4gbWFwLWdldCgkZWFzaW5nLCAkbW9kZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGEgbW9kZSBmb3IgdGhlIGVhc2luZyAjeyRlYXNpbmd9IGNhbGxlZDogI3skbW9kZX0uJztcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciAnVW5hYmxlIHRvIGZpbmQgYW4gZWFzaW5nIG5hbWVkICN7JG5hbWV9IGluIG91ciBzdXBwb3J0ZWQgZWFzaW5ncy4nO1xuICB9XG59XG5cbi8vLyBTZXQgdGhlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uIGZvciBhIGdpdmVuIGVhc2luZyBhbmQgbW90aW9uIG1vZGVcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgZWFzaW5nIGN1cnZlIHRvIGFwcGx5XG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtb2RlIC0gVGhlIG1vZGUgZm9yIHRoZSBlYXNpbmcgY3VydmUgdG8gdXNlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9tb3Rpb25cbkBtaXhpbiBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGUpIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGNhcmJvbi0tbW90aW9uKCRuYW1lLCAkbW9kZSk7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICd0aGVtZSc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuXG4vLy8gVUkgc2hlbGwgcHJvZHVjdCBzd2l0Y2hlclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuQG1peGluIHByb2R1Y3Qtc3dpdGNoZXIge1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIEdsb2JhbCBQYW5lbFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1wYW5lbC0tb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogbWluaS11bml0cyg2KTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICB3aWR0aDogbWluaS11bml0cygzMik7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtcGFuZWwtYmctMDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMXMgY3ViaWMtYmV6aWVyKDAuMiwgMCwgMC4zOCwgMC45KTtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXBhbmVsLS1leHBhbmRlZCB7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCAwIHJnYmEoJGNhcmJvbi0tYmxhY2stMTAwLCAwLjI1KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTd2l0Y2hlciAtIFNlYXJjaFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19zZWFyY2gge1xuICAgIG1hcmdpbi1ib3R0b206IG1pbmktdW5pdHMoMyk7XG4gICAgcGFkZGluZzogMCBtaW5pLXVuaXRzKDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNlYXJjaC0tc2hlbGwgaW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJib24tLWdyYXktMjA7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFN3aXRjaGVyIC0gQnV0dG9uc1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19zdWJoZWFkZXIsXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19hbGwtYnRuIHtcbiAgICBAaW5jbHVkZSB0eXBlLXN0eWxlKCdib2R5LXNob3J0LTAxJyk7XG5cbiAgICBwYWRkaW5nOiBtaW5pLXVuaXRzKDEpO1xuICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19zdWJoZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cyg3KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19hbGwtYnRuIHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoNyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fYWxsLWJ0bixcbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX2JhY2stYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItbGluaztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fYWxsLWJ0bjpob3ZlcixcbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX2JhY2stYnRuOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19hbGwtYnRuOmZvY3VzLFxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fYmFjay1idG46Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4ICRzaGVsbC1oZWFkZXItbGluaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19iYWNrLWJ0biB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IG1pbmktdW5pdHMoMSkgbWluaS11bml0cygyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19iYWNrLWFycm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IG1pbmktdW5pdHMoMik7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci1saW5rO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBTd2l0Y2hlciAtIFByb2R1Y3QgTGlzdFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LWxpc3RfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3QtbGlzdF9faXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGNhcmJvbi0tZ3JheS0yMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IG1pbmktdW5pdHMoMSkgbWluaS11bml0cygyKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1saW5rOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDNweCAkc2hlbGwtaGVhZGVyLWxpbms7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9faWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiBtaW5pLXVuaXRzKDIpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3QtbGlua19fbmFtZSB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gICAgY29sb3I6ICRzaGVsbC1oZWFkZXItdGV4dC0wMjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX3Byb2R1Y3QtbGlzdCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDUpO1xuXG4gICAgJi4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX3Byb2R1Y3QtbGlzdCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSA+IHN2ZyB7XG4gICAgZmlsbDogJHNoZWxsLWhlYWRlci10ZXh0LTAyO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXByb2R1Y3Qtc3dpdGNoZXJfX3Byb2R1Y3QtbGlzdCAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGNhcmJvbi0tZ3JheS0zMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19wcm9kdWN0LWxpc3RcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudTpob3ZlclxuICAgID4gc3ZnIHtcbiAgICBmaWxsOiAkc2hlbGwtaGVhZGVyLXRleHQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1zd2l0Y2hlcl9fcHJvZHVjdC1saXN0IC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51OmZvY3VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4ICRzaGVsbC1oZWFkZXItbGluaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1wcm9kdWN0LXN3aXRjaGVyX19wcm9kdWN0LWxpc3RcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb246aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjYXJib24tLXdoaXRlLTA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tcHJvZHVjdC1saXN0X19pdGVtOmhvdmVyIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ3Byb2R1Y3Qtc3dpdGNoZXInKSB7XG4gIEBpZiBmZWF0dXJlLWZsYWctZW5hYmxlZCgndWktc2hlbGwnKSB7XG4gICAgQGluY2x1ZGUgcHJvZHVjdC1zd2l0Y2hlcjtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLWhlbHBlcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuQGltcG9ydCAndGhlbWUnO1xuXG4vLy8gVUkgc2hlbGwgc2lkZSBuYXZcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbkBtaXhpbiBjYXJib24tc3dpdGNoZXIge1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gSGVhZGVyIFN3aXRjaGVyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tc3dpdGNoZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zd2l0Y2hlcl9faXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkc3BhY2luZy0wNztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zd2l0Y2hlcl9faXRlbTpudGgtY2hpbGQoMSkge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nLTA1O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN3aXRjaGVyX19pdGVtLS1kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogcmVtKDIyNHB4KTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46ICRzcGFjaW5nLTAzICRzcGFjaW5nLTA1O1xuICAgIGJhY2tncm91bmQ6ICRzaGVsbC1wYW5lbC1ib3JkZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN3aXRjaGVyX19pdGVtLWxpbmsge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAxJyk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRzcGFjaW5nLTA3O1xuICAgIHBhZGRpbmc6IHJlbSg2cHgpICRzcGFjaW5nLTA1O1xuICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmhvdmVyOm5vdCguI3skcHJlZml4fS0tc3dpdGNoZXJfX2l0ZW0tbGluay0tc2VsZWN0ZWQpIHtcbiAgICAgIGNvbG9yOiAkc2hlbGwtcGFuZWwtdGV4dC0wMjtcbiAgICAgIGJhY2tncm91bmQ6ICRzaGVsbC1wYW5lbC1iZy0wMjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAkc2hlbGwtcGFuZWwtZm9jdXM7XG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJHNoZWxsLXBhbmVsLXRleHQtMDI7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2hlbGwtcGFuZWwtYmctMDM7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXN3aXRjaGVyX19pdGVtLWxpbmstLXNlbGVjdGVkIHtcbiAgICBjb2xvcjogJHNoZWxsLXBhbmVsLXRleHQtMDI7XG4gICAgYmFja2dyb3VuZDogJHNoZWxsLXBhbmVsLWJnLTA0O1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2NhcmJvbi1oZWFkZXItc3dpdGNoZXInKSB7XG4gIEBpZiBmZWF0dXJlLWZsYWctZW5hYmxlZCgndWktc2hlbGwnKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLXN3aXRjaGVyO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Nzcy0taGVscGVycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy92YXJzJztcbkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICd0aGVtZSc7XG5cbi8vLyBIZWxwZXIgdG8gYWRkIGluIHRleHQgb3ZlcmZsb3cgc3R5bGVzIHRvIGEgcGFydGljdWxhciBub2RlLiBVc2VmdWwgaWYgd2Vcbi8vLyBkb24ndCB3YW50IHRvIGhhdmUgZGlzcGxheS1pbmxpbmU6IGJsb2NrIGZyb20gdGhlIHRleHQgaGVscGVyIGNsYXNzZXNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbi8vLyBAZXhhbXBsZVxuLy8vICAgLm15LWN1c3RvbS1zZWxlY3RvciB7XG4vLy8gICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3coKTtcbi8vLyAgIH1cbkBtaXhpbiB0ZXh0LW92ZXJmbG93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi8vLyBIZWxwZXIgZm9yIGhhbmRsaW5nIHNlbGVjdG9ycyBmb3IgdGhlIGV4cGFuc2lvbiBzdGF0ZSBvZiB0aGUgc2lkZS1uYXYuXG4vLy8gVGhpcyBoZWxwZXIgbWFrZXMgaXQgZWFzaWVyIHRvIHdyaXRlIGNvZGUgZm9yIGNoaWxkcmVuIHRoYXQgbmVlZCB0byByZXNwb25kXG4vLy8gdG8gd2hldGhlciB0aGUgc2lkZS1uYXYgaXMgb3Blbiwgb3IgY2xvc2VkLiBGb3IgY29udmVuaWVuY2UsIHdlIGFsc29cbi8vLyBvcHRpb25hbGx5IHNldCBwcm9wZXJ0aWVzIGZvciBvcGFjaXR5IGFuZCB2aXNpYmlsaXR5IHRvIGhlbHAgd2l0aCB0aGVcbi8vLyB0cmFuc2l0aW9uIGFuaW1hdGlvbi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbi8vLyBAcGFyYW0ge0Jvb2x9ICRvcGFjaXR5IFtmYWxzZV1cbi8vLyBAcGFyYW0ge0Jvb2x9ICR2aXNpYmlsaXR5IFtmYWxzZV1cbi8vLyBAY29udGVudFxuQG1peGluIGV4cGFuZGVkKCRvcGFjaXR5OiBmYWxzZSwgJHZpc2liaWxpdHk6IGZhbHNlKSB7XG4gIEBpZiAkb3BhY2l0eSA9PSB0cnVlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgQGlmICR2aXNpYmlsaXR5ID09IHRydWUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdjpob3ZlciAmLFxuICAvLyBJbmNsdWRlIHRoZSBmaXhlZCB2YXJpYW50IGhlcmUgc28gY29tcG9uZW50cyBjYW4gcmVuZGVyIGluIGJvdGggZXhwYW5kYWJsZVxuICAvLyBhbmQgZml4ZWQgc2lkZSBuYXZzXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZml4ZWQgJixcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1leHBhbmRlZCAmIHtcbiAgICBAaWYgJHZpc2liaWxpdHkgPT0gdHJ1ZSB7XG4gICAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICAgIH1cbiAgICBAaWYgJG9wYWNpdHkgPT0gdHJ1ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gVUkgc2hlbGwgc2lkZSBuYXZcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbkBtaXhpbiBjYXJib24tc2lkZS1uYXYge1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBQYW5lbFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0uXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiB6KCdoZWFkZXInKTtcbiAgICB3aWR0aDogbWluaS11bml0cyg2KTtcbiAgICBtYXgtd2lkdGg6IG1pbmktdW5pdHMoMzIpO1xuICAgIC8vIFVzZWZ1bCB0byB0b2dnbGUgdGhpcyBwcm9wZXJ0eSB0byBzZWUgd2hhdCdzIGdvaW5nIG9uIHdoZW4gbm90IGV4cGFuZGVkXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjb2xvcjogJHNoZWxsLXNpZGUtbmF2LXRleHQtMDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXNpZGUtbmF2LWJnLTAxO1xuICAgIC8vIFRPRE86IHN5bmMgd2l0aCBtb3Rpb24gd29ya1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMTFzIGN1YmljLWJlemllcigwLjIsIDAsIDEsIDAuOSk7XG4gICAgd2lsbC1jaGFuZ2U6IHdpZHRoO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS11eCB7XG4gICAgdG9wOiAkc3BhY2luZy0wOTtcbiAgICB3aWR0aDogbWluaS11bml0cygzMik7XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLWJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgICB3aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gUmFpbFxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBVc2VkIGZvciByZW5kZXJpbmcgdGhlIGFjdHVhbCBzaWRlIHJhaWwuIFRoZXJlIGFyZSB0d28gc3RhdGVzIHRoYXQgd2UgaGF2ZVxuICAvLyB0byBzdHlsZSBmb3IsIG5hbWVseSBmb3Igd2hlbiB0aGUgcmFpbCBpcyBjb2xsYXBzZWQgYW5kIGV4cGFuZGVkLiBXaGVuXG4gIC8vIGNvbGxhcHNlZCwgdGhlIHJhaWwgaXMgaW50ZW5kZWQgdG8gZXhwYW5kIG9uIG1vdXNlIG92ZXIuIFdoZW4gZXhwYW5kZWQsIGl0XG4gIC8vIHNob3VsZCBoYXZlIHRoZSBzYW1lIGRpbWVuc2lvbnMgYXMgd2hlbiBleHBhbmRlZCBvbiBtb3VzZSBvdmVyXG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LS1yYWlsIHtcbiAgICB3aWR0aDogbWluaS11bml0cyg2KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0taGlkZGVuIHtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi5ieC0tc2lkZS1uYXYtLXJhaWw6bm90KC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZml4ZWQpOmhvdmVyLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLWV4cGFuZGVkIHtcbiAgICB3aWR0aDogbWluaS11bml0cygzMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbSg0OHB4KTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLS1leHBhbnNpb24gJGNhcmJvbi0tc3RhbmRhcmQtZWFzaW5nLFxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi0tZXhwYW5zaW9uICRjYXJib24tLXN0YW5kYXJkLWVhc2luZztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fb3ZlcmxheS1hY3RpdmUge1xuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvdmVybGF5LTAxO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb24tLWV4cGFuc2lvbiAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmcsXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tLWV4cGFuc2lvbiAkY2FyYm9uLS1zdGFuZGFyZC1lYXNpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gV2hlbiB1c2VkIGFsb25nc2lkZSB0aGUgaGVhZGVyLCB3ZSB1cGRhdGUgdGhlIGB0b3BgIHBvc2l0aW9uaW5nIHNvIHRoYXQgd2VcbiAgLy8gY2FuIGZpdCBib3RoIHdpZGdldHMgb24gdGhlIHNhbWUgcGFnZSB3aXRob3V0IG92ZXJsYXBwaW5nLlxuICAuI3skcHJlZml4fS0taGVhZGVyIH4gLiN7JHByZWZpeH0tLXNpZGUtbmF2IHtcbiAgICB0b3A6IG1pbmktdW5pdHMoNik7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0OHB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZml4ZWQge1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDMyKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tY29sbGFwc2VkIHtcbiAgICB3aWR0aDogbWluaS11bml0cygzMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKG1pbmktdW5pdHMoLTMyKSk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBOYXZpZ2F0aW9uXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX25hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBOYXZpZ2F0aW9uID4gSGVhZGVyXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBtaW5pLXVuaXRzKDYpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2hlbGwtc2lkZS1uYXYtYmctMDI7XG5cbiAgICBAaW5jbHVkZSBleHBhbmRlZCgpIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLXV4IC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faGVhZGVyIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBOYXZpZ2F0aW9uID4gSGVhZGVyID4gRGV0YWlsc1xuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vIE5lY2Vzc2FyeSBmb3IgdGV4dCB0cnVuY2F0aW9uIGluIHRpdGxlXG4gICAgLy8gaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9mbGV4Ym94LXRydW5jYXRlZC10ZXh0LyNhcnRpY2xlLWhlYWRlci1pZC0zXG4gICAgZmxleDogMTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiBtaW5pLXVuaXRzKDIpO1xuXG4gICAgQGluY2x1ZGUgZXhwYW5kZWQoJG9wYWNpdHk6IHRydWUsICR2aXNpYmlsaXR5OiB0cnVlKTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tdXggLiN7JHByZWZpeH0tLXNpZGUtbmF2X19kZXRhaWxzIHtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3RpdGxlIHtcbiAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93KCk7XG5cbiAgICBtYXJnaW4tdG9wOiBtaW5pLXVuaXRzKDIpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAvLyBUT0RPOiBzeW5jIHdpdGggdHlwZSBzdHlsZXNcbiAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xcHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAvLyBTeW5jIHVwIGJldHdlZW4gb3VyIHRpdGxlIGFuZCBzZWxlY3QgZmllbGQgdG8gZ2V0IHBvc2l0aW9uIGxvZ2ljIGZvclxuICAvLyB0ZXh0XG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fdGl0bGUsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc2VsZWN0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoMSk7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBOYXZpZ2F0aW9uID4gSGVhZGVyID4gU3dpdGNoZXJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3dpdGNoZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zd2l0Y2hlci1jaGV2cm9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBtaW5pLXVuaXRzKDEpO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmlsbDogJHNoZWxsLXNpZGUtbmF2LWljb24tMDE7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3NlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGZsZXg6IDEgMSAwJTtcbiAgICAvLyBGbGV4IGJ1ZywgdXNlZCB0byBoYXZlIHRoZSBzZWxlY3Qgbm9kZSByZXNwZWN0IHRoZSB3aWR0aCBpZiBhIGNoaWxkIGhhcyBhXG4gICAgLy8gdmFsdWUgdGhhdCBpcyBsb25nZXIgdGhhbiB0aGUgd2lkdGggb2YgdGhlIHNlbGVjdFxuICAgIG1pbi13aWR0aDogMDtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNCk7XG4gICAgLy8gQnVmZmVyIHRoZSByaWdodCBoYW5kIHNpZGUgb2Ygc2VsZWN0IHNvIHRleHQgZG9lc24ndCBvdmVybGF5IHRoZSBjaGV2cm9uXG4gICAgcGFkZGluZy1yaWdodDogbWluaS11bml0cyg0KTtcbiAgICBjb2xvcjogJHNoZWxsLWhlYWRlci10ZXh0LTAxO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEycHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1oZWFkZXItYmctMDE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3NlbGVjdDpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNpZGUtbmF2ID4gTmF2aWdhdGlvbiA+IEZvb3RlclxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19mb290ZXIge1xuICAgIGZsZXg6IDAgMCByZW0oNDhweCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXNpZGUtbmF2LWJnLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X190b2dnbGUge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCR3aWR0aDogdHJ1ZSk7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW5pLXVuaXRzKDIpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3RvZ2dsZTpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNpZGUtbmF2ID4gTmF2aWdhdGlvbiA+IEl0ZW0ocylcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbXMge1xuICAgIGZsZXg6IDEgMSAwJTtcbiAgICBwYWRkaW5nOiAxcmVtIDAgMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgZXhwYW5kZWQoKSB7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tdXggLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtcyB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC8vIEZvcmNlIGFsbCBvZiBvdXIgc2lkZSBuYXZpZ2F0aW9uIGl0ZW1zIHRvIGJlIHRoZSBzYW1lIGRpbWVuc2lvbnMuIFdoZW4gb3VyXG4gIC8vIG1lbnUgZXhwYW5kcywgd2UgY2FuIHVuZG8gdGhlIGZvcmNlZCBkaW1lbnNpb25zLlxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0ge1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDYpO1xuICAgIGhlaWdodDogbWluaS11bml0cyg2KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQGluY2x1ZGUgZXhwYW5kZWQoKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLXV4IC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtOm5vdCguI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWFjdGl2ZSk6aG92ZXJcbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW06bm90KC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0tYWN0aXZlKVxuICAgID4gLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51OmhvdmVyLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW06bm90KC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0tYWN0aXZlKVxuICAgID4gLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rOmhvdmVyLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX21lbnVcbiAgICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rOm5vdCguI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstLWN1cnJlbnQpOm5vdChbYXJpYS1jdXJyZW50PSdwYWdlJ10pOmhvdmVyLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbTpob3ZlcixcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2XG4gICAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106aG92ZXIge1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTEwMDtcbiAgICAvLyBUT0RPOiBzeW5jIGNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXNpZGUtbmF2LWJnLTA0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtOm5vdCguI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWFjdGl2ZSlcbiAgICA+IC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluazpob3ZlclxuICAgID4gc3BhbixcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtOm5vdCguI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWFjdGl2ZSlcbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX21lbnUtaXRlbVxuICAgID4gLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rOmhvdmVyXG4gICAgPiBzcGFuIHtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWxhcmdlIHtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNik7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBOYXZpZ2F0aW9uID4ge01lbnUsU3VibWVudX1cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCR3aWR0aDogdHJ1ZSk7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAxJyk7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNCk7XG5cbiAgICBwYWRkaW5nOiAwIG1pbmktdW5pdHMoMik7XG4gICAgY29sb3I6ICRzaGVsbC1zaWRlLW5hdi10ZXh0LTAxO1xuICAgIHRyYW5zaXRpb246IGNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiwgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIsXG4gICAgICBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudTpob3ZlciB7XG4gICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wNDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudTpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgLy8gV2luZG93cywgRmlyZWZveCBIQ00gRml4XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuICAgICAgc2NyZWVuIGFuZCAocHJlZmVycy1jb250cmFzdCkge1xuICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0zcHg7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51LXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0ZXh0LW92ZXJmbG93KCk7XG5cbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pY29uLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51LWNoZXZyb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51LWNoZXZyb24gPiBzdmcge1xuICAgIHdpZHRoOiByZW0oMTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbi0tZmFzdC0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudVthcmlhLWV4cGFuZGVkPSd0cnVlJ11cbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnUtY2hldnJvblxuICAgID4gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtLS1sYXJnZSAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnUge1xuICAgIGhlaWdodDogbWluaS11bml0cyg2KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0tYWN0aXZlIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudTpob3ZlciB7XG4gICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wNDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0tYWN0aXZlXG4gICAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51W2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ10ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNoZWxsLXNpZGUtbmF2LWJnLTA0O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1hY2NlbnQtMDE7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWFjdGl2ZSAuI3skcHJlZml4fS0tc2lkZS1uYXZfX3N1Ym1lbnUtdGl0bGUge1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTEwMDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudVthcmlhLWV4cGFuZGVkPSd0cnVlJ11cbiAgICArIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbWVudSB7XG4gICAgbWF4LWhlaWdodDogcmVtKDE1MDBweCk7XG4gICAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbWVudSBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rIHtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNCk7XG4gICAgbWluLWhlaWdodDogbWluaS11bml0cyg0KTtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoNCk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faXRlbS0taWNvblxuICAgIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmsge1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cyg5KTtcbiAgfVxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX21lbnUgYS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluay0tY3VycmVudCxcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19tZW51IGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmtbYXJpYS1jdXJyZW50PSdwYWdlJ10sXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstLWN1cnJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMjA7XG5cbiAgICA+IHNwYW4ge1xuICAgICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU2lkZS1uYXYgPiBMaW5rXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rLFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbSxcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2XG4gICAgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS10aXRsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ11cbiAgICArIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAxJyk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IG1pbmktdW5pdHMoNCk7XG4gICAgcGFkZGluZzogMCBtaW5pLXVuaXRzKDIpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkZHVyYXRpb24tLWZhc3QtMDIsIGJhY2tncm91bmQtY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyLFxuICAgICAgb3V0bGluZSAkZHVyYXRpb24tLWZhc3QtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWxhcmdlIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmsge1xuICAgIGhlaWdodDogbWluaS11bml0cyg2KTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmsgPiAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstdGV4dCxcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2XG4gICAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbVxuICAgIC4jeyRwcmVmaXh9LS10ZXh0LXRydW5jYXRlLWVuZCB7XG4gICAgQGluY2x1ZGUgdGV4dC1vdmVyZmxvdygpO1xuXG4gICAgY29sb3I6ICRzaGVsbC1zaWRlLW5hdi10ZXh0LTAxO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjFweDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbms6Zm9jdXMsXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdiBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lKCdvdXRsaW5lJyk7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lLW9mZnNldDogLTNweDtcbiAgICB9XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rW2FyaWEtY3VycmVudD0ncGFnZSddLFxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rLS1jdXJyZW50IHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wNDtcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmtbYXJpYS1jdXJyZW50PSdwYWdlJ11cbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstdGV4dCxcbiAgYS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluay0tY3VycmVudCAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmstdGV4dCB7XG4gICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTAwO1xuICB9XG5cbiAgYS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGlua1thcmlhLWN1cnJlbnQ9J3BhZ2UnXTo6YmVmb3JlLFxuICBhLiN7JHByZWZpeH0tLXNpZGUtbmF2X19saW5rLS1jdXJyZW50OjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2hlbGwtc2lkZS1uYXYtYWNjZW50LTAxO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNpZGUtbmF2ID4gSWNvbnNcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faWNvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvLyBIZWxwZnVsIGluIGZsZXggY29udGFpbmVycyBzbyB0aGUgaWNvbiBkb2VzIG5vdCBoYXZlIGxlc3MgdGhhbiB0aGVcbiAgICAvLyBleHBlY3RlZCB3aWR0aFxuICAgIGZsZXg6IDAgMCBtaW5pLXVuaXRzKDIpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2ljb246bm90KC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fc3VibWVudS1jaGV2cm9uKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBtaW5pLXVuaXRzKDMpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pY29uID4gc3ZnIHtcbiAgICB3aWR0aDogbWluaS11bml0cygyKTtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoMik7XG4gICAgZmlsbDogJHNoZWxsLXNpZGUtbmF2LWljb24tMDE7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2ljb24gPiBzdmcuI3skcHJlZml4fS0tc2lkZS1uYXYtY29sbGFwc2UtaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZXhwYW5kZWRcbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2ljb25cbiAgICA+IHN2Zy4jeyRwcmVmaXh9LS1zaWRlLW5hdi1leHBhbmQtaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZXhwYW5kZWRcbiAgICAuI3skcHJlZml4fS0tc2lkZS1uYXZfX2ljb25cbiAgICA+IHN2Zy4jeyRwcmVmaXh9LS1zaWRlLW5hdi1jb2xsYXBzZS1pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBWYXJpYW50cyAtIEZpeGVkXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLWZpeGVkIGEuI3skcHJlZml4fS0tc2lkZS1uYXZfX2xpbmssXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdi0tZml4ZWQgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19zdWJtZW51IHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoMik7XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYtLWZpeGVkXG4gICAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19pdGVtOm5vdCguI3skcHJlZml4fS0tc2lkZS1uYXZfX2l0ZW0tLWljb24pXG4gICAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19tZW51XG4gICAgYS4jeyRwcmVmaXh9LS1zaWRlLW5hdl9fbGluayB7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW5pLXVuaXRzKDQpO1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFZhcmlhbnRzIC0gSGVhZGVyIE5hdiBMaW5rcyBpbiBTaWRlIE5hdlxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2IC4jeyRwcmVmaXh9LS1oZWFkZXJfX25hdiB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50LWRvd24oJ2xnJykge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2X19oZWFkZXItbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGNhcmJvbi0tYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMycHgpO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdl9faGVhZGVyLWRpdmlkZXI6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiByZW0oLTE2cHgpO1xuICAgIGxlZnQ6IHJlbSgxNnB4KTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oMXB4KTtcbiAgICBiYWNrZ3JvdW5kOiAkaWJtLWNvbG9yX19ncmF5LTIwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy9oZWFkZXIgbWVudSBpdGVtcyBvdmVycmlkZXNcbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2IGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW0ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBjb2xvcjogJHNoZWxsLXNpZGUtbmF2LXRleHQtMDE7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICZbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdlxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtdGl0bGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddXG4gICAgKyAuI3skcHJlZml4fS0taGVhZGVyX19tZW51IHtcbiAgICBib3R0b206IGluaGVyaXQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0LjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICBhLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1pdGVtOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTEwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaGVsbC1zaWRlLW5hdi1iZy0wNDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tc2lkZS1uYXZcbiAgICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51XG4gICAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbSB7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2XG4gICAgYS4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtaXRlbTpob3ZlclxuICAgIC4jeyRwcmVmaXh9LS1oZWFkZXJfX21lbnUtYXJyb3csXG4gIC4jeyRwcmVmaXh9LS1zaWRlLW5hdlxuICAgIGEuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWl0ZW06Zm9jdXNcbiAgICAuI3skcHJlZml4fS0taGVhZGVyX19tZW51LWFycm93LFxuICAuI3skcHJlZml4fS0tc2lkZS1uYXYgLiN7JHByZWZpeH0tLWhlYWRlcl9fbWVudS1hcnJvdyB7XG4gICAgZmlsbDogJHNoZWxsLXNpZGUtbmF2LXRleHQtMDE7XG5cbiAgICAvLyBXaW5kb3dzLCBGaXJlZm94IEhDTSBGaXhcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksXG4gICAgICBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbnRyYXN0KSB7XG4gICAgICAvLyBgQnV0dG9uVGV4dGAgaXMgYSBDU1MyIHN5c3RlbSBjb2xvciB0byBoZWxwIGltcHJvdmUgY29sb3JzIGluIEhDTVxuICAgICAgZmlsbDogQnV0dG9uVGV4dDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY2FyYm9uLXNpZGUtbmF2Jykge1xuICBAaWYgZmVhdHVyZS1mbGFnLWVuYWJsZWQoJ3VpLXNoZWxsJykge1xuICAgIEBpbmNsdWRlIGNhcmJvbi1zaWRlLW5hdjtcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbkBpbXBvcnQgJy4uLy4uL2dsb2JhbHMvc2Nzcy9jc3MtLWhlbHBlcnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2hlbHBlci1taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL3ZhcnMnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcblxuLy8vIFVJIHNoZWxsIG5hdmlnYXRpb25cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAZ3JvdXAgdWktc2hlbGxcbkBtaXhpbiBjYXJib24tbmF2aWdhdGlvbiB7XG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBOYXZpZ2F0aW9uXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogbWluaS11bml0cyg2KTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiB6KCdkcm9wZG93bicpO1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDMyKTtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWJtLWNvbG9yX19ncmF5LTkwO1xuICAgIGJveC1zaGFkb3c6IDAgbWluaS11bml0cygxKSBtaW5pLXVuaXRzKDIpIDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLS1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uIHN2ZyB7XG4gICAgZmlsbDogJGlibS1jb2xvcl9fZ3JheS0xMDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBOYXYgU2VjdGlvblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24tc2VjdGlvbjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAwIG1pbmktdW5pdHMoMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlibS1jb2xvcl9fZ3JheS04MDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBOYXYgSXRlbVxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24taXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWl0ZW0tLWFjdGl2ZSA+IGEuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1saW5rIHtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fd2hpdGUtMDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24taXRlbS0tYWN0aXZlOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpYm0tY29sb3JfX2JsdWUtNjA7XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gTmF2IExpbmtcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGEuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogbWluaS11bml0cyg1KTtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoMik7XG4gICAgY29sb3I6ICRpYm0tY29sb3JfX2dyYXktMTA7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IHJlbSgxNHB4KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLW5hdmlnYXRpb24tbGluazpob3ZlciB7XG4gICAgY29sb3I6ICRpYm0tY29sb3JfX3doaXRlLTA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgfVxuXG4gIGEuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1saW5rOmZvY3VzIHtcbiAgICBvdXRsaW5lOiByZW0oM3B4KSBzb2xpZCAkaWJtLWNvbG9yX19ibHVlLTYwO1xuICAgIG91dGxpbmUtb2Zmc2V0OiByZW0oLTNweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1pdGVtLS1pY29uID4gYS4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWxpbmsge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBOYXYgQ2F0ZWdvcnlcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQoJHdpZHRoOiB0cnVlKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS10b2dnbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktdG9nZ2xlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiByZW0oM3B4KSBzb2xpZCAkaWJtLWNvbG9yX19ibHVlLTYwO1xuICAgIG91dGxpbmUtb2Zmc2V0OiByZW0oLTNweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogbWluaS11bml0cyg1KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBtaW5pLXVuaXRzKDIpO1xuICAgIHBhZGRpbmctbGVmdDogbWluaS11bml0cygyKTtcbiAgICBjb2xvcjogJGlibS1jb2xvcl9fZ3JheS0xMDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24taXRlbS0taWNvbiAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS1pdGVtcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktaXRlbSA+IGEuI3skcHJlZml4fS0tbmF2aWdhdGlvbi1saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogbWluaS11bml0cyg0KTtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbmktdW5pdHMoNCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24taXRlbS0taWNvblxuICAgIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS1pdGVtXG4gICAgPiBhLiN7JHByZWZpeH0tLW5hdmlnYXRpb24tbGluayB7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW5pLXVuaXRzKDcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LWl0ZW0tLWFjdGl2ZTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaWJtLWNvbG9yX19ibHVlLTYwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LWl0ZW0tLWFjdGl2ZVxuICAgID4gYS4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uLWxpbmsge1xuICAgIGNvbG9yOiAkaWJtLWNvbG9yX193aGl0ZS0wO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tbmF2aWdhdGlvbl9fY2F0ZWdvcnktLWV4cGFuZGVkXG4gICAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LS1leHBhbmRlZFxuICAgIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS10aXRsZVxuICAgID4gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb25fX2NhdGVnb3J5LS1leHBhbmRlZFxuICAgIC4jeyRwcmVmaXh9LS1uYXZpZ2F0aW9uX19jYXRlZ29yeS1pdGVtcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBOYXYgSWNvblxuICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLiN7JHByZWZpeH0tLW5hdmlnYXRpb24taWNvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiBtaW5pLXVuaXRzKDYpO1xuICAgIG1pbi13aWR0aDogbWluaS11bml0cyg2KTtcbiAgICBoZWlnaHQ6IG1pbmktdW5pdHMoNSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBtaW5pLXVuaXRzKDEpO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2NhcmJvbi1uYXZpZ2F0aW9uJykge1xuICBAaWYgZmVhdHVyZS1mbGFnLWVuYWJsZWQoJ3VpLXNoZWxsJykge1xuICAgIEBpbmNsdWRlIGNhcmJvbi1uYXZpZ2F0aW9uO1xuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuXG4vLy8gVUkgc2hlbGwgY29udGVudFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCB1aS1zaGVsbFxuQG1peGluIGNhcmJvbi1jb250ZW50IHtcbiAgLiN7JHByZWZpeH0tLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgYmFja2dyb3VuZDogJHVpLTAyO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgd2lsbC1jaGFuZ2U6IG1hcmdpbi1sZWZ0O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLWhlYWRlciB+IC4jeyRwcmVmaXh9LS1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiBtaW5pLXVuaXRzKDYpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2IH4gLiN7JHByZWZpeH0tLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiBtaW5pLXVuaXRzKDYpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLXNpZGUtbmF2LiN7JHByZWZpeH0tLXNpZGUtbmF2LS1leHBhbmRlZCB+IC4jeyRwcmVmaXh9LS1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogbWluaS11bml0cygzMik7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnY2FyYm9uLWNvbnRlbnQnKSB7XG4gIEBpZiBmZWF0dXJlLWZsYWctZW5hYmxlZCgndWktc2hlbGwnKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4vY29sb3ItcGFsYXR0ZS5zY3NzJztcblxuQGZ1bmN0aW9uIGdldFRoZW1lQ29sb3JzKCkge1xuXHQkY29sb3ItbWFwOiAoKTtcblx0QGlmICRjYXJib24tLXRoZW1lID09XG5cdFx0JGNhcmJvbi0tdGhlbWUtLWcxMDAgb3Jcblx0XHQkY2FyYm9uLS10aGVtZSA9PVxuXHRcdCRjYXJib24tLXRoZW1lLS1nOTBcblx0e1xuXHRcdEByZXR1cm4gY29sb3ItcHJvcGVydHkobnVsbCwgJGRhcmstdGhlbWUtY29sb3JzKTtcblx0fSBAZWxzZSB7XG5cdFx0QHJldHVybiBjb2xvci1wcm9wZXJ0eShudWxsLCAkd2hpdGUtdGhlbWUtY29sb3JzKTtcblx0fVxufVxuXG5AZnVuY3Rpb24gY29sb3ItcHJvcGVydHkoJG5hbWUsICR0aGVtZS1jb2xvcnMpIHtcblx0JGNvbG9yLWl0ZW1zOiAoKTtcblxuXHRAaWYgdHlwZS1vZigkdGhlbWUtY29sb3JzKSA9PSBtYXAge1xuXHRcdEBlYWNoICRjYXRlZ29yeSwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuXHRcdFx0QGlmICRuYW1lID09IG51bGwge1xuXHRcdFx0XHQkY29sb3ItaXRlbXM6IG1hcC1tZXJnZShcblx0XHRcdFx0XHQkY29sb3ItaXRlbXMsXG5cdFx0XHRcdFx0Y29sb3ItcHJvcGVydHkoJyN7JGNhdGVnb3J5fScsICR2YWx1ZSlcblx0XHRcdFx0KTtcblx0XHRcdH0gQGVsc2Uge1xuXHRcdFx0XHQkY29sb3ItaXRlbXM6IG1hcC1tZXJnZShcblx0XHRcdFx0XHQkY29sb3ItaXRlbXMsXG5cdFx0XHRcdFx0Y29sb3ItcHJvcGVydHkoJyN7JG5hbWV9LSN7JGNhdGVnb3J5fScsICR2YWx1ZSlcblx0XHRcdFx0KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0QHJldHVybiAkY29sb3ItaXRlbXM7XG5cdH0gQGVsc2Uge1xuXHRcdEByZXR1cm4gKCN7JG5hbWV9OiAkdGhlbWUtY29sb3JzKTtcblx0fVxufVxuXG4uI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLWNoYXJ0LXN2ZyB7XG5cdCRjb2xvci1tYXA6IGdldFRoZW1lQ29sb3JzKCk7XG5cblx0QGVhY2ggJHRva2VuLCAkY29sb3IgaW4gJGNvbG9yLW1hcCB7XG5cdFx0LmZpbGwtI3skdG9rZW59IHtcblx0XHRcdGZpbGw6ICRjb2xvcjtcblx0XHRcdCYuaG92ZXJlZCB7XG5cdFx0XHRcdGZpbGw6IGRhcmtlbigkY29sb3IsIDclKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuc3Ryb2tlLSN7JHRva2VufSB7XG5cdFx0XHRzdHJva2U6ICRjb2xvcjtcblx0XHR9XG5cdH1cbn1cblxuLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS10b29sdGlwIHtcblx0JGNvbG9yLW1hcDogZ2V0VGhlbWVDb2xvcnMoKTtcblxuXHRAZWFjaCAkdG9rZW4sICRjb2xvciBpbiAkY29sb3ItbWFwIHtcblx0XHQudG9vbHRpcC0jeyR0b2tlbn0ge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXHRcdH1cblx0fVxufVxuIiwiQGltcG9ydCAnLi8uLi92ZW5kb3IvQGNhcmJvbi90eXBlL3Njc3MvdHlwZSc7XG5AaW1wb3J0ICcuLy4uL3ZlbmRvci9AY2FyYm9uL3R5cGUvc2Nzcy9mb250LWZhY2Uvc2Fucyc7XG5AaW1wb3J0ICcuLy4uL3ZlbmRvci9AY2FyYm9uL3RoZW1lcy9zY3NzL3Rva2Vucyc7XG5cbi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tYXhlcyBnLmF4aXMge1xuXHRnLnRpY2tzLmludmlzaWJsZSB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR9XG5cblx0Zy50aWNrIHRleHQge1xuXHRcdGZpbGw6ICR0ZXh0LTAyO1xuXHRcdGZvbnQtZmFtaWx5OiBjYXJib24tLWZvbnQtZmFtaWx5KCdzYW5zLWNvbmRlbnNlZCcpO1xuXHR9XG5cblx0Zy50aWNrIGxpbmUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHRwYXRoLmRvbWFpbiB7XG5cdFx0c3Ryb2tlOiAkdWktMDQ7XG5cdH1cblxuXHQuYXhpcy10aXRsZSB7XG5cdFx0Zm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ3JlZ3VsYXInKTtcblx0fVxufVxuIiwiLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS1jaGFydC1zdmcgZy5jYWxsb3V0cyB7XG5cdHN0cm9rZTogJHRleHQtMDI7XG59XG4iLCIuI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLWdyaWQtYnJ1c2gge1xuXHQvLyBkaXNhYmxlIGRlZmF1bHQgZDMgYnJ1c2ggc2VsZWN0aW9uXG5cdGcuZ3JpZC1icnVzaCB7XG5cdFx0cmVjdC5zZWxlY3Rpb24ge1xuXHRcdFx0ZmlsbDogbm9uZTtcblx0XHRcdGZpbGwtb3BhY2l0eTogMDtcblx0XHRcdHN0cm9rZTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuZy4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tZ3JpZC1icnVzaCB7XG5cdHJlY3QuZnJvbnRTZWxlY3Rpb24ge1xuXHRcdGZpbGw6ICR1aS0wMztcblx0XHRmaWxsLW9wYWNpdHk6IDAuMztcblx0XHRzdHJva2U6ICRpbnRlcmFjdGl2ZS0wMztcblx0fVxufVxuIiwiLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS1ncmlkIHtcblx0cmVjdC5jaGFydC1ncmlkLWJhY2tkcm9wIHtcblx0XHRAaWYgJGNhcmJvbi0tdGhlbWUgPT0gJGNhcmJvbi0tdGhlbWUtLWcxMCB7XG5cdFx0XHRmaWxsOiAkdWktMDE7XG5cdFx0fSBAZWxzZSBpZiAkY2FyYm9uLS10aGVtZSA9PSAkY2FyYm9uLS10aGVtZS0tZzkwIHtcblx0XHRcdGZpbGw6ICRjYXJib24tLWdyYXktMTAwO1xuXHRcdH0gQGVsc2Uge1xuXHRcdFx0ZmlsbDogJHVpLWJhY2tncm91bmQ7XG5cdFx0fVxuXHR9XG5cdHJlY3QuY2hhcnQtZ3JpZC1iYWNrZHJvcC5zdHJva2VkIHtcblx0XHRzdHJva2U6ICR1aS0wMztcblx0fVxuXHRyZWN0LnN0cm9rZSB7XG5cdFx0c3Ryb2tlOiAkdWktMDM7XG5cdH1cblxuXHRnLnguZ3JpZCBnLnRpY2ssXG5cdGcueS5ncmlkIGcudGljayB7XG5cdFx0bGluZSB7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdHN0cm9rZS13aWR0aDogMXB4O1xuXHRcdFx0c3Ryb2tlOiAkdWktMDM7XG5cdFx0fVxuXG5cdFx0Ji5hY3RpdmUgbGluZSB7XG5cdFx0XHRzdHJva2UtZGFzaGFycmF5OiAycHg7XG5cdFx0XHRzdHJva2U6ICRmb2N1cztcblx0XHR9XG5cdH1cbn1cbiIsIi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tcnVsZXIge1xuXHRsaW5lLnJ1bGVyLWxpbmUge1xuXHRcdEBpZiAkdWktYmFja2dyb3VuZCA9PSBtYXAtZ2V0KCRjYXJib24tLXRoZW1lLS1nOTAsICd1aS1iYWNrZ3JvdW5kJykge1xuXHRcdFx0c3Ryb2tlOiAkY2FyYm9uLS13aGl0ZS0wO1xuXHRcdH0gQGVsc2UgaWZcblx0XHRcdCR1aS1iYWNrZ3JvdW5kID09XG5cdFx0XHRtYXAtZ2V0KCRjYXJib24tLXRoZW1lLS1nMTAwLCAndWktYmFja2dyb3VuZCcpXG5cdFx0e1xuXHRcdFx0c3Ryb2tlOiAkY2FyYm9uLS13aGl0ZS0wO1xuXHRcdH0gQGVsc2Uge1xuXHRcdFx0c3Ryb2tlOiAkY2FyYm9uLS1ibGFjay0xMDA7XG5cdFx0fVxuXG5cdFx0c3Ryb2tlLXdpZHRoOiAxcHg7XG5cdFx0c3Ryb2tlLWRhc2hhcnJheTogMjtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxufVxuIiwiJGxpbmVzLWJnLWNvbG9yOiAkdWktMDM7XG4kbGluZXMtc2hpbW1lci1jb2xvcjogJGNhcmJvbi0td2hpdGUtMDtcbiRhcmVhcy1iZy1jb2xvcjogcmdiYSgxMjcsIDEyNywgMTI3LCAwLjEpO1xuJGFyZWFzLXNoaW1tZXItY29sb3I6IHJnYmEoJGNhcmJvbi0td2hpdGUtMCwgMC4xNSk7XG5cbi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tc2tlbGV0b24ge1xuXHQvLyBsaW5lc1xuXHRyZWN0LmNoYXJ0LXNrZWxldG9uLWJhY2tkcm9wIHtcblx0XHRAaWYgJGNhcmJvbi0tdGhlbWUgPT0gJGNhcmJvbi0tdGhlbWUtLWcxMCB7XG5cdFx0XHRmaWxsOiAkdWktMDE7XG5cdFx0fSBAZWxzZSBpZiAkY2FyYm9uLS10aGVtZSA9PSAkY2FyYm9uLS10aGVtZS0tZzkwIHtcblx0XHRcdGZpbGw6ICRjYXJib24tLWdyYXktMTAwO1xuXHRcdH0gQGVsc2Uge1xuXHRcdFx0ZmlsbDogJHVpLWJhY2tncm91bmQ7XG5cdFx0fVxuXHR9XG5cblx0LnNoaW1tZXItZWZmZWN0LWxpbmVzIHtcblx0XHRzdHJva2Utd2lkdGg6IDFweDtcblx0XHRzdHJva2U6IHVybCgjc2hpbW1lci1saW5lcyk7XG5cdH1cblxuXHQuc2hpbW1lci1lZmZlY3Qtc3BhcmtsaW5lIHtcblx0XHRzdHJva2Utd2lkdGg6IDBweDtcblx0fVxuXG5cdC5lbXB0eS1zdGF0ZS1saW5lcyB7XG5cdFx0c3Ryb2tlLXdpZHRoOiAxcHg7XG5cdFx0c3Ryb2tlOiAkbGluZXMtYmctY29sb3I7XG5cdH1cblxuXHQjc2hpbW1lci1saW5lcyB7XG5cdFx0LnN0b3AtYmctc2hpbW1lciB7XG5cdFx0XHRzdG9wLWNvbG9yOiAkbGluZXMtYmctY29sb3I7XG5cdFx0fVxuXG5cdFx0LnN0b3Atc2hpbW1lciB7XG5cdFx0XHRzdG9wLWNvbG9yOiAkbGluZXMtc2hpbW1lci1jb2xvcjtcblx0XHR9XG5cdH1cblxuXHQvLyBhcmVhc1xuXHQuc2hpbW1lci1lZmZlY3QtYXJlYXMge1xuXHRcdGZpbGw6IHVybCgjc2hpbW1lci1hcmVhcyk7XG5cdH1cblxuXHQuZW1wdHktc3RhdGUtYXJlYXMge1xuXHRcdGZpbGw6ICRhcmVhcy1iZy1jb2xvcjtcblx0fVxuXG5cdCNzaGltbWVyLWFyZWFzIHtcblx0XHQuc3RvcC1iZy1zaGltbWVyIHtcblx0XHRcdHN0b3AtY29sb3I6ICRhcmVhcy1iZy1jb2xvcjtcblx0XHR9XG5cblx0XHQuc3RvcC1zaGltbWVyIHtcblx0XHRcdHN0b3AtY29sb3I6ICRhcmVhcy1zaGltbWVyLWNvbG9yO1xuXHRcdH1cblx0fVxufVxuIiwiJGxpbmVzLWJnLWNvbG9yOiAkdWktMDM7XG4kbGluZXMtc2hpbW1lci1jb2xvcjogJGNhcmJvbi0td2hpdGUtMDtcbiRhcmVhcy1iZy1jb2xvcjogcmdiYSgxMjcsIDEyNywgMTI3LCAwLjEpO1xuJGFyZWFzLXNoaW1tZXItY29sb3I6IHJnYmEoJGNhcmJvbi0td2hpdGUtMCwgMC4xNSk7XG5cbi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tc2tlbGV0b24tbGluZXMge1xuXHQvLyBsaW5lc1xuXHRyZWN0LmNoYXJ0LXNrZWxldG9uLWJhY2tkcm9wIHtcblx0XHRAaWYgJGNhcmJvbi0tdGhlbWUgPT0gJGNhcmJvbi0tdGhlbWUtLWcxMCB7XG5cdFx0XHRmaWxsOiAkdWktMDE7XG5cdFx0fSBAZWxzZSBpZiAkY2FyYm9uLS10aGVtZSA9PSAkY2FyYm9uLS10aGVtZS0tZzkwIHtcblx0XHRcdGZpbGw6ICRjYXJib24tLWdyYXktMTAwO1xuXHRcdH0gQGVsc2Uge1xuXHRcdFx0ZmlsbDogJHVpLWJhY2tncm91bmQ7XG5cdFx0fVxuXHR9XG5cblx0LnNoaW1tZXItZWZmZWN0LWxpbmVzIHtcblx0XHRzdHJva2Utd2lkdGg6IDFweDtcblx0XHRzdHJva2U6IHVybCgjc2hpbW1lci1saW5lcyk7XG5cdH1cblxuXHQuc2hpbW1lci1lZmZlY3Qtc3BhcmtsaW5lIHtcblx0XHRzdHJva2Utd2lkdGg6IDBweDtcblx0fVxuXG5cdC5lbXB0eS1zdGF0ZS1saW5lcyB7XG5cdFx0c3Ryb2tlLXdpZHRoOiAxcHg7XG5cdFx0c3Ryb2tlOiAkbGluZXMtYmctY29sb3I7XG5cdH1cblxuXHQjc2hpbW1lci1saW5lcyB7XG5cdFx0LnN0b3AtYmctc2hpbW1lciB7XG5cdFx0XHRzdG9wLWNvbG9yOiAkbGluZXMtYmctY29sb3I7XG5cdFx0fVxuXG5cdFx0LnN0b3Atc2hpbW1lciB7XG5cdFx0XHRzdG9wLWNvbG9yOiAkbGluZXMtc2hpbW1lci1jb2xvcjtcblx0XHR9XG5cdH1cbn1cbiIsIi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0temVyby1saW5lIGxpbmUuZG9tYWluIHtcblx0c3Ryb2tlOiAkdWktMDQ7XG59XG4iLCIuI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLWNoYXJ0LXN2ZyBzdmcubGF5b3V0LWNoaWxkIHtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG4iLCJnLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS1sZWdlbmQge1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblxuXHRnLmxlZ2VuZC1pdGVtIHtcblx0XHRyZWN0LmNoZWNrYm94IHtcblx0XHRcdHN0cm9rZS13aWR0aDogMXB4O1xuXHRcdFx0c3Ryb2tlLW9wYWNpdHk6IDE7XG5cblx0XHRcdCY6bm90KC5hY3RpdmUpIHtcblx0XHRcdFx0c3Ryb2tlOiAkdGV4dC0wMjtcblx0XHRcdFx0ZmlsbDogJHVpLWJhY2tncm91bmQ7XG5cdFx0XHR9XG5cblx0XHRcdCY6bm90KC5hY3RpdmUpIH4gZy5jaGVjayB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cmVjdC5ob3Zlci1zdHJva2Uge1xuXHRcdFx0ZmlsbDogbm9uZTtcblx0XHRcdHN0cm9rZTogJGNhcmJvbi0tYmx1ZS02MDtcblx0XHRcdHN0cm9rZS13aWR0aDogMjtcblx0XHR9XG5cblx0XHRnLmNoZWNrID4gc3ZnIHBhdGgge1xuXHRcdFx0ZmlsbDogJHVpLWJhY2tncm91bmQ7XG5cdFx0XHRzdHJva2U6ICR1aS1iYWNrZ3JvdW5kO1xuXHRcdH1cblxuXHRcdHRleHQge1xuXHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdFx0ZmlsbDogJHRleHQtMDI7XG5cdFx0fVxuXHR9XG5cblx0Ji5jbGlja2FibGUgZy5sZWdlbmQtaXRlbTpob3ZlciB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG59XG4iLCJAaW1wb3J0ICcuLy4uL3ZlbmRvci9AY2FyYm9uL3R5cGUvc2Nzcy90eXBlJztcblxuLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS10aXRsZSB0ZXh0LnRpdGxlIHtcblx0ZmlsbDogJHRleHQtMDE7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0Zm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ3NhbnMnKTtcblx0Zm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyk7XG59XG4iLCIuI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLW1ldGVyLXRpdGxlIHtcblx0dGV4dC5tZXRlci10aXRsZSxcblx0dGV4dC5wZXJjZW50LXZhbHVlIHtcblx0XHRmaWxsOiAkdGV4dC0wMTtcblx0fVxuXG5cdGcuc3RhdHVzLWluZGljYXRvciB7XG5cdFx0Ji5zdGF0dXMtLWRhbmdlciBjaXJjbGUuc3RhdHVzIHtcblx0XHRcdGZpbGw6ICRzdXBwb3J0LTAxO1xuXHRcdH1cblxuXHRcdCYuc3RhdHVzLS13YXJuaW5nIHtcblx0XHRcdGNpcmNsZS5zdGF0dXMge1xuXHRcdFx0XHRmaWxsOiAkc3VwcG9ydC0wMztcblx0XHRcdH1cblxuXHRcdFx0cGF0aC5pbm5lckZpbGwge1xuXHRcdFx0XHRmaWxsOiAkY2FyYm9uLS1ibGFjay0xMDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zdGF0dXMtLXN1Y2Nlc3MgY2lyY2xlLnN0YXR1cyB7XG5cdFx0XHRmaWxsOiAkc3VwcG9ydC0wMjtcblx0XHR9XG5cblx0XHRwYXRoLmlubmVyRmlsbCB7XG5cdFx0XHRAaWYgJGNhcmJvbi0tdGhlbWUgPT1cblx0XHRcdFx0JGNhcmJvbi0tdGhlbWUtLWc5MCBvclxuXHRcdFx0XHQkY2FyYm9uLS10aGVtZSA9PVxuXHRcdFx0XHQkY2FyYm9uLS10aGVtZS0tZzEwMFxuXHRcdFx0e1xuXHRcdFx0XHRmaWxsOiAkY2FyYm9uLS1ibGFjay0xMDA7XG5cdFx0XHR9IEBlbHNlIHtcblx0XHRcdFx0ZmlsbDogJGNhcmJvbi0td2hpdGUtMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIiRjc3MtLXJlc2V0OiBmYWxzZTtcbkBpbXBvcnQgJy4vLi4vdmVuZG9yL2NhcmJvbi1jb21wb25lbnRzL3NyYy9jb21wb25lbnRzL292ZXJmbG93LW1lbnUvb3ZlcmZsb3ctbWVudSc7XG5cbmcuI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLXRvb2xiYXIge1xuXHRAaW5jbHVkZSBjYXJib24tLW1vdGlvbihzdGFuZGFyZCwgZXhwcmVzc2l2ZSk7XG5cblx0LnRvb2xiYXItY29udGFpbmVyIHtcblx0XHQudG9vbGJhci1idXR0b24ge1xuXHRcdFx0ZmlsbDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0LnRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQge1xuXHRcdFx0XHRcdGZpbGw6ICRob3Zlci11aTtcblx0XHRcdFx0fVxuXHRcdFx0XHQudG9vbGJhci1idXR0b24tYmFja2dyb3VuZC0tZGlzYWJsZWQge1xuXHRcdFx0XHRcdGZpbGw6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYtLWZvY3VzYWJsZSB7XG5cdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdC50b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kIHtcblx0XHRcdFx0XHRcdHN0cm9rZTogJGljb24tMDI7XG5cdFx0XHRcdFx0XHRzdHJva2Utd2lkdGg6IDI7XG5cdFx0XHRcdFx0XHRzdHJva2UtZGFzaGFycmF5OiAyO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLWljb24ge1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogdmlzaWJsZTtcblxuXHRcdFx0XHRjaXJjbGUsXG5cdFx0XHRcdHJlY3QsXG5cdFx0XHRcdHBhdGgsXG5cdFx0XHRcdHBvbHlnb24ge1xuXHRcdFx0XHRcdGZpbGw6ICRpY29uLTAyO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRcdHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYtaWNvbi0tZGlzYWJsZWQge1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblxuXHRcdFx0XHRjaXJjbGUsXG5cdFx0XHRcdHJlY3QsXG5cdFx0XHRcdHBhdGgsXG5cdFx0XHRcdHBvbHlnb24ge1xuXHRcdFx0XHRcdGZpbGw6ICRkaXNhYmxlZC0wMztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGN1cnNvcjogYXV0bztcblx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLS1ob3ZlcmVkIHtcblx0XHRcdFx0ZmlsbDogJGhvdmVyLXVpO1xuXHRcdFx0fVxuXG5cdFx0XHQmLS1kaXNhYmxlZCB7XG5cdFx0XHRcdGN1cnNvcjogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQGluY2x1ZGUgb3ZlcmZsb3ctbWVudTtcbiIsIi8vXG4vLyBDb3B5cmlnaHQgSUJNIENvcnAuIDIwMTgsIDIwMThcbi8vXG4vLyBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUtMi4wIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4vLyBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vL1xuXG4vLy8gQ29tbW9uIGNvbXBvbmVudCBlYXNpbmdzXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9tb3Rpb25cbiRjYXJib24tLWVhc2luZ3M6IChcbiAgc3RhbmRhcmQ6IChcbiAgICBwcm9kdWN0aXZlOiBjdWJpYy1iZXppZXIoMC4yLCAwLCAwLjM4LCAwLjkpLFxuICAgIGV4cHJlc3NpdmU6IGN1YmljLWJlemllcigwLjQsIDAuMTQsIDAuMywgMSksXG4gICksXG4gIGVudHJhbmNlOiAoXG4gICAgcHJvZHVjdGl2ZTogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMzgsIDAuOSksXG4gICAgZXhwcmVzc2l2ZTogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMywgMSksXG4gICksXG4gIGV4aXQ6IChcbiAgICBwcm9kdWN0aXZlOiBjdWJpYy1iZXppZXIoMC4yLCAwLCAxLCAwLjkpLFxuICAgIGV4cHJlc3NpdmU6IGN1YmljLWJlemllcigwLjQsIDAuMTQsIDEsIDEpLFxuICApLFxuKTtcblxuLy8vIEdldCB0aGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24gZm9yIGEgZ2l2ZW4gZWFzaW5nIGFuZCBtb3Rpb24gbW9kZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIENhbiBiZSBgc3RhbmRhcmRgLCBgZW50cmFuY2VgLCBvciBgZXhpdGBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1vZGUgW3Byb2R1Y3RpdmVdIC0gQ2FuIGJlIGBwcm9kdWN0aXZlYCBvciBgZXhwcmVzc2l2ZWBcbi8vLyBAcGFyYW0ge01hcH0gJGVhc2luZ3MgWyRjYXJib24tLWVhc2luZ3NdIC0gRWFzaW5ncyBtYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL21vdGlvblxuLy8vIEByZXR1cm4ge0Z1bmN0aW9ufSBDU1MgYGN1YmljLWJlemllcigpYCBmdW5jdGlvblxuQGZ1bmN0aW9uIGNhcmJvbi0tbW90aW9uKCRuYW1lLCAkbW9kZTogcHJvZHVjdGl2ZSwgJGVhc2luZ3M6ICRjYXJib24tLWVhc2luZ3MpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRlYXNpbmdzLCAkbmFtZSkge1xuICAgICRlYXNpbmc6IG1hcC1nZXQoJGVhc2luZ3MsICRuYW1lKTtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGVhc2luZywgJG1vZGUpIHtcbiAgICAgIEByZXR1cm4gbWFwLWdldCgkZWFzaW5nLCAkbW9kZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGEgbW9kZSBmb3IgdGhlIGVhc2luZyAjeyRlYXNpbmd9IGNhbGxlZDogI3skbW9kZX0uJztcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciAnVW5hYmxlIHRvIGZpbmQgYW4gZWFzaW5nIG5hbWVkICN7JG5hbWV9IGluIG91ciBzdXBwb3J0ZWQgZWFzaW5ncy4nO1xuICB9XG59XG5cbi8vLyBTZXQgdGhlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uIGZvciBhIGdpdmVuIGVhc2luZyBhbmQgbW90aW9uIG1vZGVcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBUaGUgbmFtZSBvZiB0aGUgZWFzaW5nIGN1cnZlIHRvIGFwcGx5XG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtb2RlIC0gVGhlIG1vZGUgZm9yIHRoZSBlYXNpbmcgY3VydmUgdG8gdXNlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9tb3Rpb25cbkBtaXhpbiBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGUpIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGNhcmJvbi0tbW90aW9uKCRuYW1lLCAkbW9kZSk7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gT3ZlcmZsb3cgTWVudVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvaGVscGVyLW1peGlucyc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvY3NzLS1yZXNldCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvbGF5ZXInO1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFscy9zY3NzL2xheW91dCc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi9nbG9iYWxzL3Njc3MvdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pbXBvcnQtb25jZS9pbXBvcnQtb25jZSc7XG5cbi8vLyBPdmVyZmxvdyBtZW51IHN0eWxlc1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vIEBncm91cCBvdmVyZmxvdy1tZW51XG5AbWl4aW4gb3ZlcmZsb3ctbWVudSB7XG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X190cmlnZ2VyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQ7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudSxcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnVfX3RyaWdnZXIge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiByZW0oMzJweCk7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpLFxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDIgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE92ZXJ3cml0ZSBJY29uIFRvb2x0aXAgZm9jdXMgc3R5bGVzXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X190cmlnZ2VyLiN7JHByZWZpeH0tLXRvb2x0aXAtLWExMXkuI3skcHJlZml4fS0tdG9vbHRpcF9fdHJpZ2dlcjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgnb3V0bGluZScpO1xuXG4gICAgc3ZnIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tb3BlbixcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tb3BlblxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X190cmlnZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIDJweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudV9faWNvbiB7XG4gICAgaGVpZ2h0OiByZW0oMTZweCk7XG4gICAgd2lkdGg6IHJlbSgxNnB4KTtcbiAgICBmaWxsOiAkaWNvbi0wMTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnMge1xuICAgIEBpbmNsdWRlIHJlc2V0O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IHooJ2Zsb2F0aW5nJyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgIHdpZHRoOiByZW0oMTYwcHgpO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdG9wOiAzMnB4O1xuICAgIGxlZnQ6IDA7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVpLTAxO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZHVyYXRpb24tLWZhc3QtMDJcbiAgICAgICAgbW90aW9uKGVudHJhbmNlLCBwcm9kdWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2JvdHRvbSddOjphZnRlciB7XG4gICAgdG9wOiByZW0oLTNweCk7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogcmVtKDMycHgpO1xuICAgIGhlaWdodDogcmVtKDNweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J3RvcCddOjphZnRlciB7XG4gICAgYm90dG9tOiByZW0oLTZweCk7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogcmVtKDMycHgpO1xuICAgIGhlaWdodDogcmVtKDZweCk7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2xlZnQnXTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiByZW0oLTZweCk7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogcmVtKDMycHgpO1xuICAgIHdpZHRoOiByZW0oNnB4KTtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0ncmlnaHQnXTo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiByZW0oLTZweCk7XG4gICAgaGVpZ2h0OiByZW0oMzJweCk7XG4gICAgd2lkdGg6IHJlbSg2cHgpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWZsaXAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J3RvcCddOjphZnRlcixcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWZsaXAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zW2RhdGEtZmxvYXRpbmctbWVudS1kaXJlY3Rpb249J2JvdHRvbSddOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LS1mbGlwLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdsZWZ0J106OmFmdGVyLFxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZmxpcC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNbZGF0YS1mbG9hdGluZy1tZW51LWRpcmVjdGlvbj0ncmlnaHQnXTo6YWZ0ZXIge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zLS1vcGVuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uIHtcbiAgICBAaW5jbHVkZSByZXNldDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oNDBweCk7XG4gICAgcGFkZGluZzogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtLWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICBhLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX2J0biB7XG4gICAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnYm9keS1zaG9ydC0wMScpO1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ3Jlc2V0Jyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAwICRjYXJib24tLXNwYWNpbmctMDU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAkdGV4dC0wMjtcbiAgICBtYXgtd2lkdGg6IDExLjI1cmVtO1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSksXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICRkdXJhdGlvbi0tZmFzdC0wMiBtb3Rpb24oZW50cmFuY2UsIHByb2R1Y3RpdmUpLFxuICAgICAgY29sb3IgJGR1cmF0aW9uLS1mYXN0LTAyIG1vdGlvbihlbnRyYW5jZSwgcHJvZHVjdGl2ZSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGV4dC0wMTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbiAgICB9XG5cbiAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG4gc3ZnIHtcbiAgICBmaWxsOiAkaWNvbi0wMjtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX2J0bjpob3ZlciBzdmcge1xuICAgIGZpbGw6ICRpY29uLTAxO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLWNvbnRlbnQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLXVpO1xuICB9XG5cbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLS1kYW5nZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRhbmdlclxuICAgIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX2J0bjpob3ZlcixcbiAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fb3B0aW9uLS1kYW5nZXJcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG46Zm9jdXMge1xuICAgIGNvbG9yOiAkdGV4dC0wNDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VwcG9ydC0wMTtcblxuICAgIHN2ZyB7XG4gICAgICBmaWxsOiAkdGV4dC0wNDtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRpc2FibGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdWktMDE7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuXG4gIC4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51LW9wdGlvbnNfX29wdGlvbi0tZGlzYWJsZWRcbiAgICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19idG4ge1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtMDI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZSgncmVzZXQnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbiAgICB9XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS1vcHRpb25zX19vcHRpb24tLWRpc2FibGVkXG4gICAgLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc19fYnRuXG4gICAgc3ZnIHtcbiAgICBmaWxsOiAkZGlzYWJsZWQtMDI7XG4gIH1cblxuICAuI3skcHJlZml4fS0tb3ZlcmZsb3ctbWVudS0tZmxpcCB7XG4gICAgbGVmdDogLTE0MHB4O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogMTQ1cHg7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ292ZXJmbG93LW1lbnUnKSB7XG4gIEBpbmNsdWRlIG92ZXJmbG93LW1lbnU7XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE2LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy90eXBlL3Jlc2V0JztcbkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vZWxlbWVudHMvc2Nzcy9pY29ucy9taXhpbnMnO1xuXG4vLy8gUmVzZXRzIGRlZmF1bHQgYnJvd3NlciBzdHlsaW5nXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLXJlc2V0XG5AbWl4aW4gcmVzZXQge1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKGNzcy0tcmVzZXQpID09IGZhbHNlIG9yICRjc3MtLXJlc2V0ID09IGZhbHNlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgJiA+ICosXG4gICAgJiA+ICo6YmVmb3JlLFxuICAgICYgPiAqOmFmdGVyIHtcbiAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoJ2Nzcy0tcmVzZXQnKSB7XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMoY3NzLS1yZXNldCkgPT0gZmFsc2Ugb3IgJGNzcy0tcmVzZXQ9PXRydWUge1xuICAgIC8vIGh0dHA6Ly9jc3NyZXNldC5jb20vc2NyaXB0cy9lcmljLW1leWVyLXJlc2V0LWNzcy9cbiAgICBodG1sLFxuICAgIGJvZHksXG4gICAgZGl2LFxuICAgIHNwYW4sXG4gICAgYXBwbGV0LFxuICAgIG9iamVjdCxcbiAgICBpZnJhbWUsXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYsXG4gICAgcCxcbiAgICBibG9ja3F1b3RlLFxuICAgIHByZSxcbiAgICBhLFxuICAgIGFiYnIsXG4gICAgYWNyb255bSxcbiAgICBhZGRyZXNzLFxuICAgIGJpZyxcbiAgICBjaXRlLFxuICAgIGNvZGUsXG4gICAgZGVsLFxuICAgIGRmbixcbiAgICBlbSxcbiAgICBpbWcsXG4gICAgaW5zLFxuICAgIGtiZCxcbiAgICBxLFxuICAgIHMsXG4gICAgc2FtcCxcbiAgICBzbWFsbCxcbiAgICBzdHJpa2UsXG4gICAgc3Ryb25nLFxuICAgIHN1YixcbiAgICBzdXAsXG4gICAgdHQsXG4gICAgdmFyLFxuICAgIGIsXG4gICAgdSxcbiAgICBpLFxuICAgIGNlbnRlcixcbiAgICBkbCxcbiAgICBkdCxcbiAgICBkZCxcbiAgICBvbCxcbiAgICB1bCxcbiAgICBsaSxcbiAgICBmaWVsZHNldCxcbiAgICBmb3JtLFxuICAgIGxhYmVsLFxuICAgIGxlZ2VuZCxcbiAgICB0YWJsZSxcbiAgICBjYXB0aW9uLFxuICAgIHRib2R5LFxuICAgIHRmb290LFxuICAgIHRoZWFkLFxuICAgIHRyLFxuICAgIHRoLFxuICAgIHRkLFxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgY2FudmFzLFxuICAgIGRldGFpbHMsXG4gICAgZW1iZWQsXG4gICAgZmlndXJlLFxuICAgIGZpZ2NhcHRpb24sXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBoZ3JvdXAsXG4gICAgbWVudSxcbiAgICBuYXYsXG4gICAgb3V0cHV0LFxuICAgIHJ1YnksXG4gICAgc2VjdGlvbixcbiAgICBzdW1tYXJ5LFxuICAgIHRpbWUsXG4gICAgbWFyayxcbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICAvLyBDaHJvbWUgNjIgZml4XG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCxcbiAgICBpbnB1dFt0eXBlPSdidXR0b24nXSxcbiAgICBpbnB1dFt0eXBlPSdzdWJtaXQnXSxcbiAgICBpbnB1dFt0eXBlPSdyZXNldCddLFxuICAgIGlucHV0W3R5cGU9J2ZpbGUnXSxcbiAgICBpbnB1dFt0eXBlPSd0ZXh0J10sXG4gICAgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXSxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT0ndGV4dCddOjotbXMtY2xlYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXG4gICAgYXJ0aWNsZSxcbiAgICBhc2lkZSxcbiAgICBkZXRhaWxzLFxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgaGdyb3VwLFxuICAgIG1haW4sXG4gICAgbWVudSxcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBib2R5IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgfVxuXG4gICAgb2wsXG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICBibG9ja3F1b3RlLFxuICAgIHEge1xuICAgICAgcXVvdGVzOiBub25lO1xuICAgIH1cblxuICAgIGJsb2NrcXVvdGU6YmVmb3JlLFxuICAgIGJsb2NrcXVvdGU6YWZ0ZXIsXG4gICAgcTpiZWZvcmUsXG4gICAgcTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIH1cblxuICAgICoge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBjYXJib24tLXR5cGUtcmVzZXQ7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1pY29ucztcbiAgfVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxNiwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgIENhdGVnb3J5ICAgICAgICAgICAgIHx8ICBEZXNjcmlwdGlvblxuLy8gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyAgIE1pc2MgICAgICAgICAgICAgICAgIHx8ICBHZW5lcmFsIGhlbHBlciBAbWl4aW5zXG4vLyAgIERlcHJlY2F0ZWQgICAgICAgICAgIHx8ICBOb3QgdXNlZCBhbnltb3JlXG4vLyAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNaXNjXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCAndmFycyc7XG5AaW1wb3J0ICdjc3MtLXJlc2V0JztcbkBpbXBvcnQgJ3R5cG9ncmFwaHknO1xuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi9lbGVtZW50cy9zY3NzL2ltcG9ydC1vbmNlL2ltcG9ydC1vbmNlJztcblxuLy8vIEFkZHMgdGV4dCBvdmVyZmxvdyBzdHlsaW5nXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFtmYWxzZV0gLSBWYWx1ZSBvZiB3aWR0aCBpZiB5b3Ugd2FudCB0byBzZXQgd2lkdGgsIGVsc2Ugbm90aGluZ1xuLy8vIEBleGFtcGxlIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3coMzAwcHgpO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIHRleHQtb3ZlcmZsb3coJHdpZHRoOiBmYWxzZSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBhcHBseSBhIHdpZHRoIGlmIHdpZHRoIHBhcmFtZXRlciBleGlzdHNcbiAgQGlmICgkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9XG59XG5cbi8vLyBBZGRzIHBsYWNlaG9sZGVyIHRleHQgY29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2l6ZSBbJ3NtYWxsJ10gLSBTaXplIG9mIGJveCBzaGFkb3dcbi8vLyBAZXhhbXBsZSBAaW5jbHVkZSBwbGFjZWhvbGRlci1jb2xvcnM7XG4vLy8gQGdyb3VwIGdsb2JhbC1oZWxwZXJzXG5AbWl4aW4gcGxhY2Vob2xkZXItY29sb3JzIHtcbiAgY29sb3I6ICR0ZXh0LTAzO1xufVxuXG4vLy8gQWRkcyBzbWFsbCBvciBsYXJnZSBib3ggc2hhZG93XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNpemUgWydzbWFsbCddIC0gc2l6ZSBvZiBib3ggc2hhZG93XG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgYm94LXNoYWRvdygpOyBAaW5jbHVkZSBib3gtc2hhZG93KCdsYXJnZScpO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIGJveC1zaGFkb3coJHNpemU6ICdzbWFsbCcpIHtcbiAgLy8gTGFyZ2UgLSBGb3IgZHJvcGRvd25zXG4gIEBpZiAoJHNpemUgPT0gJ2xhcmdlJykge1xuICAgIGJveC1zaGFkb3c6IDZweCA2cHggNnB4IDAgJGJveC1zaGFkb3c7XG4gIH1cblxuICBAaWYgKCRzaXplID09ICdzbWFsbCcpIHtcbiAgICBib3gtc2hhZG93OiAwcHggM3B4IDNweCAwICRib3gtc2hhZG93O1xuICB9XG59XG5cbi8vLyBBZGRzIG91dGxpbmUgc3R5bGVzIGRlcGVuZGluZyBvbiBzcGVjaWZpYyB0eXBlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHR5cGUgWydib3JkZXInXSAtIFR5cGUgb2Ygb3V0bGluZSBmcm9tOiBgYm9yZGVyYCwgYGJsdXJyZWRgLCBgb3V0bGluZWAsIGBpbnZhbGlkYCwgYHJlc2V0YFxuLy8vIEBleGFtcGxlIEBpbmNsdWRlIGZvY3VzLW91dGxpbmUoJ291dGxpbmUnKTtcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBmb2N1cy1vdXRsaW5lKCR0eXBlOiAnYm9yZGVyJykge1xuICBAaWYgKCR0eXBlID09ICdib3JkZXInKSB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkICRmb2N1cztcbiAgfVxuXG4gIEBpZiAoJHR5cGUgPT0gJ2JsdXJyZWQnKSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4ICRmb2N1cztcbiAgICBvdXRsaW5lOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICBAaWYgKCR0eXBlID09ICdvdXRsaW5lJykge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCAkZm9jdXM7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIH1cblxuICBAaWYgKCR0eXBlID09ICdvdXRsaW5lLWNvbXBhdCcpIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkZm9jdXM7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIEBpZiAoJHR5cGUgPT0gJ2ludmFsaWQnKSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICRzdXBwb3J0LTAxO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICB9XG5cbiAgQGlmICgkdHlwZSA9PSAncmVzZXQnKSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICB9XG59XG5cbi8vLyBBZGRzIHJvdGF0aW9uYWwgdHJhbnNmb3JtYXRpb25cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZGVnIC0gSG93IG1hbnkgZGVncmVlcyB0byByb3RhdGVcbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwZWVkIC0gU3BlZWQgb2Ygcm90YXRpb25cbi8vLyBAcGFyYW0ge1ZhbHVlfSAkb3JpZ2luIFtjZW50ZXJdIC0gYHRyYW5zZm9ybS1vcmlnaW5gXG4vLy8gQGV4YW1wbGUgQGluY2x1ZGUgcm90YXRlKDkwZGVnLCAzMDBtcyk7XG4vLy8gQGdyb3VwIGdsb2JhbC1oZWxwZXJzXG5AbWl4aW4gcm90YXRlKCRkZWcsICRzcGVlZCwgJG9yaWdpbjogY2VudGVyKSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKCRkZWcpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHNwZWVkO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gaGlkZSBjb250ZW50XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBoaWRkZW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8vIFJlc2V0cyBidXR0b24gc3R5bGVzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge0Jvb2x9ICR3aWR0aCBbdHJ1ZV0gLSBTZXRzIHdpZHRoIHRvIDEwMCUgaWYgdHJ1ZVxuLy8vIEBleGFtcGxlIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgkd2lkdGg6IGZhbHNlKTtcbi8vLyBAZ3JvdXAgZ2xvYmFsLWhlbHBlcnNcbkBtaXhpbiBidXR0b24tcmVzZXQoJHdpZHRoOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHJlc2V0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpZiAoJHdpZHRoID09IHRydWUpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLy8gU2tlbGV0b24gbG9hZGluZyBhbmltYXRpb25cbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBleGFtcGxlIEBpbmNsdWRlIHNrZWxldG9uO1xuLy8vIEBncm91cCBnbG9iYWwtaGVscGVyc1xuQG1peGluIHNrZWxldG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkc2tlbGV0b24tMDE7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiAkc2tlbGV0b24tMDI7XG4gICAgYW5pbWF0aW9uOiAzMDAwbXMgZWFzZS1pbi1vdXQgc2tlbGV0b24gaW5maW5pdGU7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cygnc2tlbGV0b24nKSB7XG4gIEBrZXlmcmFtZXMgc2tlbGV0b24ge1xuICAgIDAlIHtcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIG9wYWNpdHk6IDAuMztcbiAgICB9XG4gICAgMjAlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgMjglIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICA1MSUge1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICA1OCUge1xuICAgICAgd2lkdGg6IDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICA4MiUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIDgzJSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgOTYlIHtcbiAgICAgIHdpZHRoOiAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuQGltcG9ydCAnLi4vbGF5b3V0L2JyZWFrcG9pbnQnO1xuQGltcG9ydCAnc2NhbGUnO1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kY2FwdGlvbi0wMTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDE2cHgpLFxuICBsZXR0ZXItc3BhY2luZzogMC4zMnB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGxhYmVsLTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMTZweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLjMycHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kaGVscGVyLXRleHQtMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMSksXG4gIGZvbnQtc3R5bGU6IGl0YWxpYyxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDE2cHgpLFxuICBsZXR0ZXItc3BhY2luZzogMC4zMnB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGJvZHktc2hvcnQtMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMiksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgxOHB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRib2R5LWxvbmctMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMiksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgyMHB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRib2R5LXNob3J0LTAyOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDMpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMjJweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGJvZHktbG9uZy0wMjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgzKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDI0cHgpLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRjb2RlLTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMTZweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLjMycHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kY29kZS0wMjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgyKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDIwcHgpLFxuICBsZXR0ZXItc3BhY2luZzogMC4zMnB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGhlYWRpbmctMDE6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMiksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdzZW1pYm9sZCcpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMThweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLjE2cHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kcHJvZHVjdGl2ZS1oZWFkaW5nLTAxOiAkaGVhZGluZy0wMSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGhlYWRpbmctMDI6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMyksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdzZW1pYm9sZCcpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMjJweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wMjogJGhlYWRpbmctMDIgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRwcm9kdWN0aXZlLWhlYWRpbmctMDM6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNSksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiBjYXJib24tLXJlbSgyNnB4KSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kcHJvZHVjdGl2ZS1oZWFkaW5nLTA0OiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDcpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oMzZweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wNTogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IGNhcmJvbi0tcmVtKDQwcHgpLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRwcm9kdWN0aXZlLWhlYWRpbmctMDY6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oNTBweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJHByb2R1Y3RpdmUtaGVhZGluZy0wNzogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICBsaW5lLWhlaWdodDogY2FyYm9uLS1yZW0oNjRweCksXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGV4cHJlc3NpdmUtaGVhZGluZy0wMTogJGhlYWRpbmctMDEgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRleHByZXNzaXZlLWhlYWRpbmctMDI6ICRoZWFkaW5nLTAyICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZXhwcmVzc2l2ZS1oZWFkaW5nLTAzOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDUpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMTMwJSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg1KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMjUlLFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg2KSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGV4cHJlc3NpdmUtaGVhZGluZy0wNDogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg3KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3JlZ3VsYXInKSxcbiAgbGluZS1oZWlnaHQ6IDEyOSUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoNyksXG4gICAgICBsaW5lLWhlaWdodDogMTI1JSxcbiAgICApLFxuICAgIG1heDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOCksXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRleHByZXNzaXZlLWhlYWRpbmctMDU6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdyZWd1bGFyJyksXG4gIGxpbmUtaGVpZ2h0OiAxMjUlLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOSksXG4gICAgICBsaW5lLWhlaWdodDogMTIyJSxcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gICAgICBsaW5lLWhlaWdodDogMTE5JSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTEpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExNyUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEzKSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGV4cHJlc3NpdmUtaGVhZGluZy0wNjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyksXG4gIGxpbmUtaGVpZ2h0OiAxMjUlLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOSksXG4gICAgICBsaW5lLWhlaWdodDogMTIyJSxcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gICAgICBsaW5lLWhlaWdodDogMTE5JSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTEpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExNyUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEzKSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGV4cHJlc3NpdmUtcGFyYWdyYXBoLTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDYpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgnbGlnaHQnKSxcbiAgbGluZS1oZWlnaHQ6IDEyNSUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg3KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMjklLFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSg4KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMjUlLFxuICAgICksXG4gICksXG4pO1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kcXVvdGF0aW9uLTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDUpLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpLFxuICBsaW5lLWhlaWdodDogMTMwJSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbWQ6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDUpLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDYpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEyNSUsXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDcpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEyOSUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDgpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEyNSUsXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRxdW90YXRpb24tMDI6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoOCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpLFxuICBsaW5lLWhlaWdodDogMTI1JSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbWQ6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDkpLFxuICAgICAgbGluZS1oZWlnaHQ6IDEyMiUsXG4gICAgKSxcbiAgICBsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICAgICAgbGluZS1oZWlnaHQ6IDExOSUsXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDExKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTclLFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMyksXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiRkaXNwbGF5LTAxOiAoXG4gIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgZm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ2xpZ2h0JyksXG4gIGxpbmUtaGVpZ2h0OiAxMTklLFxuICBsZXR0ZXItc3BhY2luZzogMCxcbiAgYnJlYWtwb2ludHM6IChcbiAgICBtZDogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEyKSxcbiAgICApLFxuICAgIHhsZzogKFxuICAgICAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTMpLFxuICAgICAgbGluZS1oZWlnaHQ6IDExNyUsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE1KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTMlLFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZGlzcGxheS0wMjogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdzZW1pYm9sZCcpLFxuICBsaW5lLWhlaWdodDogMTE5JSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbWQ6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEwKSxcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMiksXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDEzKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTYlLFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxNSksXG4gICAgICBsaW5lLWhlaWdodDogMTEzJSxcbiAgICApLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuJGRpc3BsYXktMDM6IChcbiAgZm9udC1zaXplOiBjYXJib24tLXR5cGUtc2NhbGUoMTApLFxuICBmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgnbGlnaHQnKSxcbiAgbGluZS1oZWlnaHQ6IDExOSUsXG4gIGxldHRlci1zcGFjaW5nOiAwLFxuICBicmVha3BvaW50czogKFxuICAgIG1kOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxNCksXG4gICAgICBsaW5lLWhlaWdodDogMTE1JSxcbiAgICApLFxuICAgIGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxNyksXG4gICAgICBsaW5lLWhlaWdodDogMTExJSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC42NHB4LFxuICAgICksXG4gICAgeGxnOiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgyMCksXG4gICAgICBsaW5lLWhlaWdodDogMTA3JSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC42NHB4LFxuICAgICksXG4gICAgbWF4OiAoXG4gICAgICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgyMyksXG4gICAgICBsaW5lLWhlaWdodDogMTA1JSxcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC45NnB4LFxuICAgICksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG4kZGlzcGxheS0wNDogKFxuICBmb250LXNpemU6IGNhcmJvbi0tdHlwZS1zY2FsZSgxMCksXG4gIGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdzZW1pYm9sZCcpLFxuICBsaW5lLWhlaWdodDogMTE5JSxcbiAgbGV0dGVyLXNwYWNpbmc6IDAsXG4gIGJyZWFrcG9pbnRzOiAoXG4gICAgbWQ6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE0KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTUlLFxuICAgICksXG4gICAgbGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDE3KSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTElLFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjY0cHgsXG4gICAgKSxcbiAgICB4bGc6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIwKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDclLFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjY0cHgsXG4gICAgKSxcbiAgICBtYXg6IChcbiAgICAgIGZvbnQtc2l6ZTogY2FyYm9uLS10eXBlLXNjYWxlKDIzKSxcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDUlLFxuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjk2cHgsXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbiR0b2tlbnM6IChcbiAgY2FwdGlvbi0wMTogJGNhcHRpb24tMDEsXG4gIGxhYmVsLTAxOiAkbGFiZWwtMDEsXG4gIGhlbHBlci10ZXh0LTAxOiAkaGVscGVyLXRleHQtMDEsXG4gIGJvZHktc2hvcnQtMDE6ICRib2R5LXNob3J0LTAxLFxuICBib2R5LXNob3J0LTAyOiAkYm9keS1zaG9ydC0wMixcbiAgYm9keS1sb25nLTAxOiAkYm9keS1sb25nLTAxLFxuICBib2R5LWxvbmctMDI6ICRib2R5LWxvbmctMDIsXG4gIGNvZGUtMDE6ICRjb2RlLTAxLFxuICBjb2RlLTAyOiAkY29kZS0wMixcbiAgaGVhZGluZy0wMTogJGhlYWRpbmctMDEsXG4gIGhlYWRpbmctMDI6ICRoZWFkaW5nLTAyLFxuICBwcm9kdWN0aXZlLWhlYWRpbmctMDE6ICRwcm9kdWN0aXZlLWhlYWRpbmctMDEsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wMjogJHByb2R1Y3RpdmUtaGVhZGluZy0wMixcbiAgcHJvZHVjdGl2ZS1oZWFkaW5nLTAzOiAkcHJvZHVjdGl2ZS1oZWFkaW5nLTAzLFxuICBwcm9kdWN0aXZlLWhlYWRpbmctMDQ6ICRwcm9kdWN0aXZlLWhlYWRpbmctMDQsXG4gIHByb2R1Y3RpdmUtaGVhZGluZy0wNTogJHByb2R1Y3RpdmUtaGVhZGluZy0wNSxcbiAgcHJvZHVjdGl2ZS1oZWFkaW5nLTA2OiAkcHJvZHVjdGl2ZS1oZWFkaW5nLTA2LFxuICBwcm9kdWN0aXZlLWhlYWRpbmctMDc6ICRwcm9kdWN0aXZlLWhlYWRpbmctMDcsXG4gIGV4cHJlc3NpdmUtcGFyYWdyYXBoLTAxOiAkZXhwcmVzc2l2ZS1wYXJhZ3JhcGgtMDEsXG4gIGV4cHJlc3NpdmUtaGVhZGluZy0wMTogJGV4cHJlc3NpdmUtaGVhZGluZy0wMSxcbiAgZXhwcmVzc2l2ZS1oZWFkaW5nLTAyOiAkZXhwcmVzc2l2ZS1oZWFkaW5nLTAyLFxuICBleHByZXNzaXZlLWhlYWRpbmctMDM6ICRleHByZXNzaXZlLWhlYWRpbmctMDMsXG4gIGV4cHJlc3NpdmUtaGVhZGluZy0wNDogJGV4cHJlc3NpdmUtaGVhZGluZy0wNCxcbiAgZXhwcmVzc2l2ZS1oZWFkaW5nLTA1OiAkZXhwcmVzc2l2ZS1oZWFkaW5nLTA1LFxuICBleHByZXNzaXZlLWhlYWRpbmctMDY6ICRleHByZXNzaXZlLWhlYWRpbmctMDYsXG4gIHF1b3RhdGlvbi0wMTogJHF1b3RhdGlvbi0wMSxcbiAgcXVvdGF0aW9uLTAyOiAkcXVvdGF0aW9uLTAyLFxuICBkaXNwbGF5LTAxOiAkZGlzcGxheS0wMSxcbiAgZGlzcGxheS0wMjogJGRpc3BsYXktMDIsXG4gIGRpc3BsYXktMDM6ICRkaXNwbGF5LTAzLFxuICBkaXNwbGF5LTA0OiAkZGlzcGxheS0wNCxcbik7XG5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQG1peGluIHByb3BlcnRpZXMoJG1hcCkge1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtYXAge1xuICAgICN7JG5hbWV9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBOdW1iZXIgd2l0aCB1bml0c1xuLy8vIEByZXR1cm4ge051bWJlcn0gV2l0aG91dCB1bml0c1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJHZhbHVlKSB7XG4gIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuLy8vIFRoaXMgaGVscGVyIGluY2x1ZGVzIGZsdWlkIHR5cGUgc3R5bGVzIGZvciB0aGUgZ2l2ZW4gdG9rZW4gdmFsdWUuIEZsdWlkIHR5cGVcbi8vLyBtZWFucyB0aGF0IHRoZSBgZm9udC1zaXplYCBpcyBjb21wdXRlZCB1c2luZyBgY2FsYygpYCBpbiBvcmRlciB0byBiZVxuLy8vIGRldGVybWluZWQgYnkgdGhlIHNjcmVlbiBzaXplIGluc3RlYWQgb2YgYSBicmVha3BvaW50LiBBcyBhIHJlc3VsdCwgZmx1aWRcbi8vLyBzdHlsZXMgc2hvdWxkIGJlIHVzZWQgd2l0aCBjYXV0aW9uIGluIGZpeGVkIHdpZHRoIGNvbnRleHRzLlxuLy8vXG4vLy8gSW4gYWRkaXRpb24sIHdlIG1ha2UgdXNlIG9mICUtYmFzZWQgbGluZS1oZWlnaHRzIHNvIHRoYXQgdGhlIGxpbmUtaGVpZ2h0IG9mXG4vLy8gZWFjaCB0eXBlIHN0eWxlIGlzIGNvbXB1dGVkIGNvcnJlY3RseSBkdWUgdG8gdGhlIGR5bmFtaWMgbmF0dXJlIG9mIHRoZVxuLy8vIGBmb250LXNpemVgLlxuLy8vXG4vLy8gTW9zdCBvZiB0aGUgbG9naWMgZm9yIHRoaXMgd29yayBjb21lcyBmcm9tIENTUyBUcmlja3M6XG4vLy8gaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvZmx1aWQtdHlwb2dyYXBoeS9cbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkdHlwZS1zdHlsZXMgLSBUaGUgdmFsdWUgb2YgYSBnaXZlbiB0eXBlIHRva2VuXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBDdXN0b20gYnJlYWtwb2ludHMgdG8gdXNlXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi90eXBlXG5AbWl4aW4gZmx1aWQtdHlwZSgkdHlwZS1zdHlsZXMsICRicmVha3BvaW50czogJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBJbmNsdWRlIHRoZSBpbml0aWFsIHN0eWxlcyBmb3IgdGhlIGdpdmVuIHRva2VuIGJ5IGRlZmF1bHQgd2l0aG91dCBhbnlcbiAgLy8gbWVkaWEgcXVlcnkgZ3VhcmQuIFRoaXMgaW5jbHVkZXMgYGZvbnQtc2l6ZWAgYXMgYSBmYWxsYmFjayBpbiB0aGUgY2FzZVxuICAvLyB0aGF0IGEgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IGBjYWxjKClgXG4gIEBpbmNsdWRlIHByb3BlcnRpZXMobWFwLXJlbW92ZSgkdHlwZS1zdHlsZXMsIGJyZWFrcG9pbnRzKSk7XG4gIC8vIFdlIGFsc28gbmVlZCB0byBpbmNsdWRlIHRoZSBgc21gIHN0eWxlcyBieSBkZWZhdWx0IHNpbmNlIHRoZXkgZG9uJ3RcbiAgLy8gYXBwZWFyIGluIHRoZSBmbHVpZCBzdHlsZXMgZm9yIHRva2Vuc1xuICBAaW5jbHVkZSBmbHVpZC10eXBlLXNpemUoJHR5cGUtc3R5bGVzLCBzbSwgJGJyZWFrcG9pbnRzKTtcblxuICAvLyBGaW5hbGx5LCB3ZSBuZWVkIHRvIGdvIHRocm91Z2ggYWxsIHRoZSBicmVha3BvaW50cyBkZWZpbmVkIGluIHRoZSB0eXBlXG4gIC8vIHRva2VuIGFuZCBhcHBseSB0aGUgcHJvcGVydGllcyBhbmQgZmx1aWQgdHlwZSBzaXplIGZvciB0aGF0IGdpdmVuXG4gIC8vIGJyZWFrcG9pbnRcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZXMgaW4gbWFwLWdldCgkdHlwZS1zdHlsZXMsIGJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgY2FyYm9uLS1icmVha3BvaW50KCRuYW1lKSB7XG4gICAgICBAaW5jbHVkZSBwcm9wZXJ0aWVzKCR2YWx1ZXMpO1xuICAgICAgQGluY2x1ZGUgZmx1aWQtdHlwZS1zaXplKCR0eXBlLXN0eWxlcywgJG5hbWUsICRicmVha3BvaW50cyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDb21wdXRlcyB0aGUgZmx1aWQgYGZvbnQtc2l6ZWAgZm9yIGEgZ2l2ZW4gdHlwZSBzdHlsZSBhbmQgYnJlYWtwb2ludFxuLy8vIEBwYXJhbSB7TWFwfSAkdHlwZS1zdHlsZXMgLSBUaGUgc3R5bGVzIGZvciBhIGdpdmVuIHRva2VuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgdG8gd2hpY2ggd2UgYXBwbHkgdGhlIGZsdWlkXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyBbJGNhcmJvbi0tZ3JpZC1icmVha3BvaW50c10gLSBUaGUgYnJlYWtwb2ludHMgZm9yIHRoZSBncmlkIHN5c3RlbVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vdHlwZVxuQG1peGluIGZsdWlkLXR5cGUtc2l6ZShcbiAgJHR5cGUtc3R5bGVzLFxuICAkbmFtZSxcbiAgJGJyZWFrcG9pbnRzOiAkY2FyYm9uLS1ncmlkLWJyZWFrcG9pbnRzXG4pIHtcbiAgLy8gR2V0IHRoZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYnJlYWtwb2ludCB3ZSdyZSBjdXJyZW50bHkgd29ya2luZyBpbi4gVXNlZnVsXG4gIC8vIGZvciBnZXR0aW5nIGluaXRpYWwgd2lkdGggaW5mb3JtYXRpb25cbiAgJGJyZWFrcG9pbnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG5cbiAgLy8gT3VyIGZsdWlkIHN0eWxlcyBhcmUgY2FwdHVyZWQgdW5kZXIgdGhlICdicmVha3BvaW50cycgcHJvcGVydHkgaW4gb3VyIHR5cGVcbiAgLy8gc3R5bGVzIG1hcC4gVGhlc2UgZGVmaW5lIHdoYXQgdmFsdWVzIHRvIHRyZWF0IGFzIGBtYXgtYCB2YXJpYWJsZXMgYmVsb3dcbiAgJGZsdWlkLXNpemVzOiBtYXAtZ2V0KCR0eXBlLXN0eWxlcywgYnJlYWtwb2ludHMpO1xuICAkZmx1aWQtYnJlYWtwb2ludDogKCk7XG4gIC8vIFNwZWNpYWwgY2FzZSBmb3IgYHNtYCBiZWNhdXNlIHRoZSBzdHlsZXMgZm9yIHNtYWxsIGFyZSBvbiB0aGUgdHlwZSBzdHlsZVxuICAvLyBkaXJlY3RseVxuICBAaWYgJG5hbWUgPT0gc20ge1xuICAgICRmbHVpZC1icmVha3BvaW50OiBtYXAtcmVtb3ZlKCR0eXBlLXN0eWxlcywgYnJlYWtwb2ludHMpO1xuICB9IEBlbHNlIHtcbiAgICAkZmx1aWQtYnJlYWtwb2ludDogbWFwLWdldCgkZmx1aWQtc2l6ZXMsICRuYW1lKTtcbiAgfVxuXG4gIC8vIEluaXRpYWxpemUgb3VyIGZvbnQtc2l6ZXMgdG8gdGhlIGRlZmF1bHQgc2l6ZSBmb3IgdGhlIHR5cGUgc3R5bGVcbiAgJG1heC1mb250LXNpemU6IG1hcC1nZXQoJHR5cGUtc3R5bGVzLCBmb250LXNpemUpO1xuICAkbWluLWZvbnQtc2l6ZTogbWFwLWdldCgkdHlwZS1zdHlsZXMsIGZvbnQtc2l6ZSk7XG4gIEBpZiBtYXAtaGFzLWtleSgkZmx1aWQtYnJlYWtwb2ludCwgZm9udC1zaXplKSB7XG4gICAgJG1pbi1mb250LXNpemU6IG1hcC1nZXQoJGZsdWlkLWJyZWFrcG9pbnQsIGZvbnQtc2l6ZSk7XG4gIH1cblxuICAvLyBJbml0aWFsaXplIG91ciBtaW4gYW5kIG1heCB3aWR0aCB0byB0aGUgd2lkdGggb2YgdGhlIGN1cnJlbnQgYnJlYWtwb2ludFxuICAkbWF4LXZ3OiBtYXAtZ2V0KCRicmVha3BvaW50LCB3aWR0aCk7XG4gICRtaW4tdnc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsIHdpZHRoKTtcblxuICAvLyBXZSBjYW4gdXNlIGBicmVha3BvaW50LW5leHRgIHRvIHNlZSBpZiB0aGVyZSBpcyBhbm90aGVyIGJyZWFrcG9pbnQgd2UgY2FuXG4gIC8vIHVzZSB0byB1cGRhdGUgYG1heC1mb250LXNpemVgIGFuZCBgbWF4LXZ3YCB3aXRoIGxhcmdlciB2YWx1ZXNcbiAgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGU6IGNhcmJvbi0tYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dC1mbHVpZC1icmVha3BvaW50LW5hbWU6IG51bGw7XG5cbiAgLy8gV2UgbmVlZCB0byBmaWd1cmUgb3V0IHdoYXQgdGhlIG5leHQgYXZhaWxhYmxlIGZsdWlkIGJyZWFrcG9pbnQgaXMgZm9yIG91clxuICAvLyBnaXZlbiAkdHlwZS1zdHlsZXMuIEluIHRoaXMgbG9vcCB3ZSB0cnkgYW5kIGl0ZXJhdGUgdGhyb3VnaCBicmVha3BvaW50c1xuICAvLyB1bnRpbCB3ZSBlaXRoZXIgbWFudWFsbHkgc2V0ICRuZXh0LWJyZWFrcG9pbnQtYXZhaWxhYmxlIHRvIG51bGwgb3JcbiAgLy8gYGJyZWFrcG9pbnQtbmV4dGAgcmV0dXJucyBudWxsLlxuICBAd2hpbGUgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGUge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkZmx1aWQtc2l6ZXMsICRuZXh0LWJyZWFrcG9pbnQtYXZhaWxhYmxlKSB7XG4gICAgICAkbmV4dC1mbHVpZC1icmVha3BvaW50LW5hbWU6ICRuZXh0LWJyZWFrcG9pbnQtYXZhaWxhYmxlO1xuICAgICAgJG5leHQtYnJlYWtwb2ludC1hdmFpbGFibGU6IG51bGw7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkbmV4dC1icmVha3BvaW50LWF2YWlsYWJsZTogY2FyYm9uLS1icmVha3BvaW50LW5leHQoXG4gICAgICAgICRuZXh0LWJyZWFrcG9pbnQtYXZhaWxhYmxlLFxuICAgICAgICAkYnJlYWtwb2ludHNcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgd2UgaGF2ZSBmb3VuZCB0aGUgbmV4dCBhdmFpbGFibGUgZmx1aWQgYnJlYWtwb2ludCBuYW1lLCB0aGVuIHdlIGtub3dcbiAgLy8gdGhhdCB3ZSBoYXZlIHZhbHVlcyB0aGF0IHdlIGNhbiB1c2UgdG8gc2V0IG1heC1mb250LXNpemUgYW5kIG1heC12dyBhcyBib3RoXG4gIC8vIHZhbHVlcyBkZXJpdmUgZnJvbSB0aGUgbmV4dCBicmVha3BvaW50XG4gIEBpZiAkbmV4dC1mbHVpZC1icmVha3BvaW50LW5hbWUge1xuICAgICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmV4dC1mbHVpZC1icmVha3BvaW50LW5hbWUpO1xuICAgICRtYXgtZm9udC1zaXplOiBtYXAtZ2V0KFxuICAgICAgbWFwLWdldCgkZmx1aWQtc2l6ZXMsICRuZXh0LWZsdWlkLWJyZWFrcG9pbnQtbmFtZSksXG4gICAgICBmb250LXNpemVcbiAgICApO1xuICAgICRtYXgtdnc6IG1hcC1nZXQoJG5leHQtZmx1aWQtYnJlYWtwb2ludCwgd2lkdGgpO1xuXG4gICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgZm9udC1zaXplOiBjYWxjKCN7JG1pbi1mb250LXNpemV9ICtcbiAgICAgICN7c3RyaXAtdW5pdCgkbWF4LWZvbnQtc2l6ZSAtICRtaW4tZm9udC1zaXplKX0gKlxuICAgICAgKCgxMDB2dyAtICN7JG1pbi12d30pIC8gI3tzdHJpcC11bml0KCRtYXgtdncgLSAkbWluLXZ3KX0pXG4gICAgKTtcbiAgfSBAZWxzZSB7XG4gICAgLy8gT3RoZXJ3aXNlLCBqdXN0IGRlZmF1bHQgdG8gc2V0dGluZyB0aGUgZm9udCBzaXplIGZvdW5kIGZyb20gdGhlIHR5cGVcbiAgICAvLyBzdHlsZSBvciB0aGUgZ2l2ZW4gZmx1aWQgYnJlYWtwb2ludCBpbiB0aGUgdHlwZSBzdHlsZVxuICAgIGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemU7XG4gIH1cbn1cblxuLy8vIEhlbHBlciBtaXhpbiB0byBpbmNsdWRlIHRoZSBzdHlsZXMgZm9yIGEgZ2l2ZW4gdG9rZW4gaW4gYW55IHNlbGVjdG9yIGluIHlvdXJcbi8vLyBwcm9qZWN0LiBBbHNvIGluY2x1ZGVzIGFuIG9wdGlvbmFsIGZsdWlkIG9wdGlvbiB0aGF0IHdpbGwgZW5hYmxlIGZsdWlkXG4vLy8gc3R5bGVzIGZvciB0aGUgdG9rZW4gaWYgdGhleSBhcmUgZGVmaW5lZC4gRmx1aWQgc3R5bGVzIHdpbGwgY2F1c2UgdGhlXG4vLy8gdG9rZW4ncyBmb250LXNpemUgdG8gYmUgY29tcHV0ZWQgYmFzZWQgb24gdGhlIHZpZXdwb3J0IHNpemUuIEFzIGEgcmVzdWx0LCB1c2Vcbi8vLyB3aXRoIGNhdXRpb24gaW4gZml4ZWQgY29udGV4dHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIHRva2VuIHRvIGdldCB0aGUgc3R5bGVzIGZvclxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZsdWlkIFtmYWxzZV0gLSBTcGVjaWZ5IHdoZXRoZXIgdG8gaW5jbHVkZSBmbHVpZCBzdHlsZXMgZm9yIHRoZVxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgWyRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNdIC0gUHJvdmlkZSBhIGN1c3RvbSBicmVha3BvaW50IG1hcCB0byB1c2Vcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL3R5cGVcbkBtaXhpbiBjYXJib24tLXR5cGUtc3R5bGUoXG4gICRuYW1lLFxuICAkZmx1aWQ6IGZhbHNlLFxuICAkYnJlYWtwb2ludHM6ICRjYXJib24tLWdyaWQtYnJlYWtwb2ludHNcbikge1xuICBAaWYgbm90IG1hcC1oYXMta2V5KCR0b2tlbnMsICRuYW1lKSB7XG4gICAgQGVycm9yICdVbmFibGUgdG8gZmluZCBhIHRva2VuIHdpdGggdGhlIG5hbWU6IGAjeyRuYW1lfWAnO1xuICB9XG5cbiAgJHRva2VuOiBtYXAtZ2V0KCR0b2tlbnMsICRuYW1lKTtcblxuICAvLyBJZiAkZmx1aWQgaXMgc2V0IHRvIHRydWUgYW5kIHRoZSB0b2tlbiBoYXMgYnJlYWtwb2ludHMgZGVmaW5lZCBmb3IgZmx1aWRcbiAgLy8gc3R5bGVzLCBkZWxlZ2F0ZSB0byB0aGUgZmx1aWQtdHlwZSBoZWxwZXIgZm9yIHRoZSBnaXZlbiB0b2tlblxuICBAaWYgJGZsdWlkID09IHRydWUgYW5kIG1hcC1oYXMta2V5KCR0b2tlbiwgJ2JyZWFrcG9pbnRzJykge1xuICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoJHRva2VuLCAkYnJlYWtwb2ludHMpO1xuICB9IEBlbHNlIHtcbiAgICAvLyBPdGhlcndpc2UsIHdlIGp1c3QgaW5jbHVkZSBhbGwgdGhlIHByb3BlcnR5IGRlY2xhcmF0aW9ucyBkaXJlY3RseSBvbiB0aGVcbiAgICAvLyBzZWxlY3RvclxuICAgIEBpbmNsdWRlIHByb3BlcnRpZXMobWFwLXJlbW92ZSgkdG9rZW4sICdicmVha3BvaW50cycpKTtcbiAgfVxufVxuIiwiQGltcG9ydCAnLi8uLi92ZW5kb3IvQGNhcmJvbi9tb3Rpb24vc2Nzcy9tb3Rpb24uc2Nzcyc7XG5AaW1wb3J0ICcuLy4uL3ZlbmRvci9AY2FyYm9uL3R5cGUvc2Nzcy90eXBlJztcbkBpbXBvcnQgJy4vLi4vdmVuZG9yL0BjYXJib24vdHlwZS9zY3NzL2ZvbnQtZmFjZS9tb25vJztcbkBpbXBvcnQgJy4vLi4vdmVuZG9yL0BjYXJib24vdHlwZS9zY3NzL2ZvbnQtZmFjZS9zYW5zJztcblxuLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS10b29sdGlwIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHVpLTAyO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzO1xuXHRAaW5jbHVkZSBjYXJib24tLW1vdGlvbihzdGFuZGFyZCwgZXhwcmVzc2l2ZSk7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0Ym94LXNoYWRvdzogMCAxcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0ei1pbmRleDogMTA1OTtcblx0Zm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ3NhbnMtY29uZGVuc2VkJyk7XG5cblx0Ji5oaWRkZW4ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzO1xuXHRcdEBpbmNsdWRlIGNhcmJvbi0tbW90aW9uKHN0YW5kYXJkLCBleHByZXNzaXZlKTtcblx0fVxuXG5cdC5jb250ZW50LWJveCB7XG5cdFx0Y29sb3I6ICR0ZXh0LTAxO1xuXG5cdFx0LnRpdGxlLXRvb2x0aXAge1xuXHRcdFx0cCB7XG5cdFx0XHRcdG1hcmdpbjogMnB4O1xuXHRcdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHR9XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdHBhZGRpbmc6IDRweDtcblx0XHRcdG1pbi13aWR0aDogMjBweDtcblx0XHRcdG1heC13aWR0aDogMjcwcHg7XG5cdFx0fVxuXG5cdFx0LmRhdGFwb2ludC10b29sdGlwIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRwYWRkaW5nOiA0cHg7XG5cdFx0XHRmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdG1pbi13aWR0aDogMjBweDtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0XHRcdHAge1xuXHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDE2cHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdGJvcmRlcjogMDtcblxuXHRcdFx0XHQmLmxhYmVsIHtcblx0XHRcdFx0XHRmbGV4OiAxO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogOHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji52YWx1ZSB7XG5cdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji5ib2xkIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGNhcmJvbi0tZm9udC13ZWlnaHQoJ3NlbWlib2xkJyk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dWwubXVsdGktdG9vbHRpcCB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHQmOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0XHRcdEBpZiAkY2FyYm9uLS10aGVtZSA9PSAkY2FyYm9uLS10aGVtZS0tZzkwIHtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdWktMDE7XG5cdFx0XHRcdFx0fSBAZWxzZSBpZiAkY2FyYm9uLS10aGVtZSA9PSAkY2FyYm9uLS10aGVtZS0tZzEwMCB7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHVpLTA0O1xuXHRcdFx0XHRcdH0gQGVsc2Uge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR1aS0wMztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQudG9vbHRpcC1jb2xvciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdHdpZHRoOiA0cHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdCYgKyBwLmxhYmVsIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiA0cHg7XG5cdFx0fVxuXHR9XG59XG4iLCIvL1xuLy8gQ29weXJpZ2h0IElCTSBDb3JwLiAyMDE4LCAyMDE4XG4vL1xuLy8gVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlLTIuMCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuLy8gTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy9cblxuLy8vIENvbW1vbiBjb21wb25lbnQgZWFzaW5nc1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbW90aW9uXG4kY2FyYm9uLS1lYXNpbmdzOiAoXG4gIHN0YW5kYXJkOiAoXG4gICAgcHJvZHVjdGl2ZTogY3ViaWMtYmV6aWVyKDAuMiwgMCwgMC4zOCwgMC45KSxcbiAgICBleHByZXNzaXZlOiBjdWJpYy1iZXppZXIoMC40LCAwLjE0LCAwLjMsIDEpLFxuICApLFxuICBlbnRyYW5jZTogKFxuICAgIHByb2R1Y3RpdmU6IGN1YmljLWJlemllcigwLCAwLCAwLjM4LCAwLjkpLFxuICAgIGV4cHJlc3NpdmU6IGN1YmljLWJlemllcigwLCAwLCAwLjMsIDEpLFxuICApLFxuICBleGl0OiAoXG4gICAgcHJvZHVjdGl2ZTogY3ViaWMtYmV6aWVyKDAuMiwgMCwgMSwgMC45KSxcbiAgICBleHByZXNzaXZlOiBjdWJpYy1iZXppZXIoMC40LCAwLjE0LCAxLCAxKSxcbiAgKSxcbik7XG5cbi8vLyBHZXQgdGhlIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uIGZvciBhIGdpdmVuIGVhc2luZyBhbmQgbW90aW9uIG1vZGVcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBDYW4gYmUgYHN0YW5kYXJkYCwgYGVudHJhbmNlYCwgb3IgYGV4aXRgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtb2RlIFtwcm9kdWN0aXZlXSAtIENhbiBiZSBgcHJvZHVjdGl2ZWAgb3IgYGV4cHJlc3NpdmVgXG4vLy8gQHBhcmFtIHtNYXB9ICRlYXNpbmdzIFskY2FyYm9uLS1lYXNpbmdzXSAtIEVhc2luZ3MgbWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9tb3Rpb25cbi8vLyBAcmV0dXJuIHtGdW5jdGlvbn0gQ1NTIGBjdWJpYy1iZXppZXIoKWAgZnVuY3Rpb25cbkBmdW5jdGlvbiBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGU6IHByb2R1Y3RpdmUsICRlYXNpbmdzOiAkY2FyYm9uLS1lYXNpbmdzKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZWFzaW5ncywgJG5hbWUpIHtcbiAgICAkZWFzaW5nOiBtYXAtZ2V0KCRlYXNpbmdzLCAkbmFtZSk7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRlYXNpbmcsICRtb2RlKSB7XG4gICAgICBAcmV0dXJuIG1hcC1nZXQoJGVhc2luZywgJG1vZGUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGVycm9yICdVbmFibGUgdG8gZmluZCBhIG1vZGUgZm9yIHRoZSBlYXNpbmcgI3skZWFzaW5nfSBjYWxsZWQ6ICN7JG1vZGV9Lic7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgJ1VuYWJsZSB0byBmaW5kIGFuIGVhc2luZyBuYW1lZCAjeyRuYW1lfSBpbiBvdXIgc3VwcG9ydGVkIGVhc2luZ3MuJztcbiAgfVxufVxuXG4vLy8gU2V0IHRoZSB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiBmb3IgYSBnaXZlbiBlYXNpbmcgYW5kIG1vdGlvbiBtb2RlXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGVhc2luZyBjdXJ2ZSB0byBhcHBseVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbW9kZSAtIFRoZSBtb2RlIGZvciB0aGUgZWFzaW5nIGN1cnZlIHRvIHVzZVxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbW90aW9uXG5AbWl4aW4gY2FyYm9uLS1tb3Rpb24oJG5hbWUsICRtb2RlKSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjYXJib24tLW1vdGlvbigkbmFtZSwgJG1vZGUpO1xufVxuIiwiLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS10aHJlc2hvbGQge1xuXHRsaW5lLnRocmVzaG9sZC1saW5lIHtcblx0XHRzdHJva2U6ICRyZWQtNTA7XG5cdFx0c3Ryb2tlLXdpZHRoOiAxO1xuXHRcdHN0cm9rZS1kYXNoYXJyYXk6IDQ7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG5cblx0bGluZS50aHJlc2hvbGQtbGluZS5hY3RpdmUge1xuXHRcdHN0cm9rZS13aWR0aDogMjtcblx0fVxuXG5cdHJlY3QudGhyZXNob2xkLWhvdmVyYWJsZS1hcmVhIHtcblx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwcHgpO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRmaWxsOiB0cmFuc3BhcmVudDtcblxuXHRcdCYucm90YXRlIHtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoMCwgLTEwcHgpO1xuXHRcdH1cblx0fVxufVxuXG4uI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLXRocmVzaG9sZC0tbGFiZWwge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkLTUwO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzO1xuXHRAaW5jbHVkZSBjYXJib24tLW1vdGlvbihzdGFuZGFyZCwgZXhwcmVzc2l2ZSk7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0Ym94LXNoYWRvdzogMCAxcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0ei1pbmRleDogMTA1OTtcblx0Zm9udC1mYW1pbHk6IGNhcmJvbi0tZm9udC1mYW1pbHkoJ3NhbnMtY29uZGVuc2VkJyk7XG5cblx0Y29sb3I6ICR0ZXh0LTAxO1xuXHRsaW5lLWhlaWdodDogMTZweDtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRwYWRkaW5nOiA0cHg7XG5cdG1pbi13aWR0aDogMjBweDtcblxuXHQmLmhpZGRlbiB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXM7XG5cdFx0QGluY2x1ZGUgY2FyYm9uLS1tb3Rpb24oc3RhbmRhcmQsIGV4cHJlc3NpdmUpO1xuXHR9XG59XG4iLCJnLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS16b29tLWJhciB7XG5cdHJlY3Quem9vbS1iZyB7XG5cdFx0ZmlsbDogJHVpLWJhY2tncm91bmQ7XG5cdFx0c3Ryb2tlOiAkdWktMDE7XG5cblx0XHQmLXNrZWxldG9uIHtcblx0XHRcdHN0cm9rZTogdXJsKCNzaGltbWVyLWxpbmVzKTtcblx0XHR9XG5cdH1cblxuXHRyZWN0Lnpvb20tc2xpZGVyLWJnIHtcblx0XHRmaWxsOiAkdWktMDE7XG5cblx0XHQmLXNrZWxldG9uIHtcblx0XHRcdHN0cm9rZTogdXJsKCNzaGltbWVyLWxpbmVzKTtcblx0XHR9XG5cdH1cblxuXHRyZWN0Lnpvb20tc2xpZGVyLXNlbGVjdGVkLWFyZWEge1xuXHRcdGZpbGw6ICRpY29uLTAyO1xuXHR9XG5cblx0cGF0aC56b29tLWJnLWJhc2VsaW5lIHtcblx0XHRzdHJva2U6ICR1aS0wNDtcblx0XHRzdHJva2Utd2lkdGg6IDI7XG5cblx0XHQmLXNrZWxldG9uIHtcblx0XHRcdHN0cm9rZTogdXJsKCNzaGltbWVyLWxpbmVzKTtcblx0XHR9XG5cdH1cblxuXHRwYXRoLnpvb20tZ3JhcGgtYXJlYSB7XG5cdFx0ZmlsbDogJHVpLTAzO1xuXHRcdHN0cm9rZTogJHVpLTA0O1xuXHRcdHN0cm9rZS13aWR0aDogMTtcblx0fVxuXG5cdHBhdGguem9vbS1ncmFwaC1hcmVhLXVuc2VsZWN0ZWQge1xuXHRcdGZpbGw6ICR1aS0wMTtcblx0XHRzdHJva2U6IG5vbmU7XG5cdH1cblxuXHRnLnpvb20tYmFyLWJydXNoIHtcblx0XHRyZWN0LmhhbmRsZSB7XG5cdFx0XHRmaWxsOiAkaWNvbi0wMjtcblx0XHR9XG5cblx0XHRyZWN0LmhhbmRsZS1iYXIge1xuXHRcdFx0ZmlsbDogJHVpLTAyO1xuXHRcdH1cblxuXHRcdC8vIGNsZWFyIGQzLmJydXNoIHNlbGVjdGlvbiBzdHlsZVxuXHRcdHJlY3Quc2VsZWN0aW9uIHtcblx0XHRcdGZpbGw6IG5vbmU7XG5cdFx0XHRzdHJva2U6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG4iLCIuI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLWFyZWEgcGF0aC5hcmVhLFxuLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS1hcmVhLXN0YWNrZWQgcGF0aC5hcmVhIHtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCJAaW1wb3J0ICcuLy4uL3ZlbmRvci9AY2FyYm9uL21vdGlvbi9zY3NzL21vdGlvbi5zY3NzJztcblxuZy4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tYnViYmxlIHtcblx0Y2lyY2xlLmRvdC5ob3ZlcmVkIHtcblx0XHRmaWxsLW9wYWNpdHk6IDE7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuMXM7XG5cdFx0QGluY2x1ZGUgY2FyYm9uLS1tb3Rpb24oc3RhbmRhcmQsIGV4cHJlc3NpdmUpO1xuXHR9XG5cblx0Y2lyY2xlLmRvdC51bmZpbGxlZCB7XG5cdFx0ZmlsbDogJHVpLTAxO1xuXHR9XG5cblx0Zy5saW5lcyBwYXRoLmxpbmUge1xuXHRcdG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcblx0fVxufVxuIiwiJGxpbmVzLWJnLWNvbG9yOiAkdWktMDM7XG4kbGluZXMtc2hpbW1lci1jb2xvcjogJGNhcmJvbi0td2hpdGUtMDtcblxuLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS1saW5lIHtcblx0cGF0aC5saW5lIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRmaWxsOiBub25lO1xuXHRcdHN0cm9rZS13aWR0aDogMS41O1xuXHR9XG5cblx0cGF0aC5saW5lLnNwYXJrbGluZS1sb2FkaW5nIHtcblx0XHRhbmltYXRpb246IHNoaW1tZXIgMi41cyBpbmZpbml0ZSBsaW5lYXI7XG5cdFx0QGtleWZyYW1lcyBzaGltbWVyIHtcblx0XHRcdDAlIHtcblx0XHRcdFx0c3Ryb2tlOiAkbGluZXMtYmctY29sb3I7XG5cdFx0XHR9XG5cdFx0XHQyMCUge1xuXHRcdFx0XHRzdHJva2U6ICRsaW5lcy1zaGltbWVyLWNvbG9yO1xuXHRcdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHR9XG5cdFx0XHQxMDAlIHtcblx0XHRcdFx0c3Ryb2tlOiAkbGluZXMtYmctY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCJAaW1wb3J0ICcuLy4uL3ZlbmRvci9AY2FyYm9uL21vdGlvbi9zY3NzL21vdGlvbi5zY3NzJztcblxuZy4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tc2NhdHRlciB7XG5cdGNpcmNsZS5kb3QuaG92ZXJlZCB7XG5cdFx0ZmlsbC1vcGFjaXR5OiAxO1xuXHRcdHRyYW5zaXRpb246IGFsbCAwLjFzO1xuXHRcdEBpbmNsdWRlIGNhcmJvbi0tbW90aW9uKHN0YW5kYXJkLCBleHByZXNzaXZlKTtcblx0fVxuXG5cdGNpcmNsZS5kb3QudW5maWxsZWQge1xuXHRcdGZpbGw6ICR1aS0wMTtcblx0XHRzdHJva2Utd2lkdGg6IDEuNTtcblx0fVxuXG5cdGNpcmNsZS5kb3QudGhyZXNob2xkLWFub21hbHkge1xuXHRcdHN0cm9rZS13aWR0aDogMztcblx0fVxuXG5cdGcubGluZXMgcGF0aC5saW5lIHtcblx0XHRtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG5cdH1cbn1cbiIsIi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tbWV0ZXIge1xuXHRyZWN0LmNvbnRhaW5lciB7XG5cdFx0ZmlsbDogJHVpLTAxO1xuXHR9XG5cblx0cmVjdC52YWx1ZSB7XG5cdFx0Ji5zdGF0dXMtLWRhbmdlciB7XG5cdFx0XHRmaWxsOiAkc3VwcG9ydC0wMTtcblx0XHR9XG5cblx0XHQmLnN0YXR1cy0td2FybmluZyB7XG5cdFx0XHRmaWxsOiAkc3VwcG9ydC0wMztcblx0XHRcdHN0cm9rZS13aWR0aDogMXB4O1xuXHRcdFx0c3Ryb2tlOiAkY2FyYm9uLWRhdGF2aXotYWxlcnQ7XG5cdFx0XHRAaWYgJGNhcmJvbi0tdGhlbWUgPT1cblx0XHRcdFx0JGNhcmJvbi0tdGhlbWUtLWc5MCBvclxuXHRcdFx0XHQkY2FyYm9uLS10aGVtZSA9PVxuXHRcdFx0XHQkY2FyYm9uLS10aGVtZS0tZzEwMFxuXHRcdFx0e1xuXHRcdFx0XHRzdHJva2U6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zdGF0dXMtLXN1Y2Nlc3Mge1xuXHRcdFx0ZmlsbDogJHN1cHBvcnQtMDI7XG5cdFx0fVxuXHR9XG5cblx0bGluZS5wZWFrIHtcblx0XHRzdHJva2U6ICR1aS0wNTtcblx0XHRzdHJva2Utd2lkdGg6IDJweDtcblx0fVxufVxuIiwiJGNoYXJ0cy1wcmVmaXg6ICdjYyc7XG5cbi8vIEN1c3RvbSBkYXRhdml6IHBhbGV0dGUgY29sb3JzXG4kY2FyYm9uLWRhdGF2aXotYWxlcnQ6ICNiMjg2MDA7XG4kY2FyYm9uLWRhdGF2aXoteWVsbG93LTEwOiAjZmNmNGQ2O1xuXG4vLyBDYXJib24gaW1wb3J0c1xuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi9jb2xvcnMvc2Nzcy9jb2xvcnMnO1xuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi90eXBlL3Njc3MvcHJlZml4JztcblxuQGlmIHZhcmlhYmxlLWV4aXN0cygkbmFtZTogJ2NhcmJvbi0tdGhlbWUnKSA9PSBmYWxzZSB7XG5cdEB3YXJuIFwiJGNhcmJvbi0tdGhlbWUgbm90IGZvdW5kLCBvciBpcyB1bmRlZmluZWQuIFxcXG5cdEVpdGhlciBpbXBvcnQgdGhlIENhcmJvbiBTQ1NTIGFuZCBzZXQgYSB0aGVtZSBvciwgaWYgeW91J3JlIHVzaW5nIENoYXJ0cyB3aXRob3V0IENhcmJvbiwgXFxcblx0aW1wb3J0IG9uZSBvZiB0aGUgc3R5bGVzLVt0aGVtZSBuYW1lIGhlcmVdLnNjc3MgZmlsZXNcIjtcbn1cblxuLy8gSW50ZXJuYWxcbkBpbXBvcnQgJy4vbWl4aW5zLnNjc3MnO1xuQGltcG9ydCAnLi9jb2xvcnMuc2Nzcyc7XG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvaW5kZXguc2Nzcyc7XG5AaW1wb3J0ICcuL2dyYXBocy9pbmRleC5zY3NzJztcbkBpbXBvcnQgJy4vdHlwZSc7XG5AaW1wb3J0ICcuL2NoYXJ0LWhvbGRlcic7XG5cbnN2Zy4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tY2hhcnQtc3ZnIHtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG4iLCJnLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS1zY2F0dGVyLXN0YWNrZWQge1xuXHRjaXJjbGUuZG90LnVuZmlsbGVkIHtcblx0XHRmaWxsOiAkdWktMDE7XG5cdFx0c3Ryb2tlLXdpZHRoOiAxLjU7XG5cdH1cblxuXHRjaXJjbGUuZG90LnRocmVzaG9sZC1hbm9tYWx5IHtcblx0XHRzdHJva2Utd2lkdGg6IDM7XG5cdH1cbn1cbiIsIi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tcmFkYXIge1xuXHQuYmxvYnMgcGF0aCB7XG5cdFx0c3Ryb2tlLXdpZHRoOiAxLjVweDtcblx0fVxuXG5cdC55LWF4ZXMgcGF0aCxcblx0LngtYXhlcyBsaW5lIHtcblx0XHRzdHJva2Utd2lkdGg6IDFweDtcblx0XHRzdHJva2U6ICR1aS0wMztcblx0fVxuXG5cdC54LWF4ZXMgbGluZS5ob3ZlcmVkIHtcblx0XHRAaWYgJHVpLWJhY2tncm91bmQgPT0gbWFwLWdldCgkY2FyYm9uLS10aGVtZS0tZzkwLCAndWktYmFja2dyb3VuZCcpIHtcblx0XHRcdHN0cm9rZTogJGNhcmJvbi0td2hpdGUtMDtcblx0XHR9IEBlbHNlIGlmXG5cdFx0XHQkdWktYmFja2dyb3VuZCA9PVxuXHRcdFx0bWFwLWdldCgkY2FyYm9uLS10aGVtZS0tZzEwMCwgJ3VpLWJhY2tncm91bmQnKVxuXHRcdHtcblx0XHRcdHN0cm9rZTogJGNhcmJvbi0td2hpdGUtMDtcblx0XHR9IEBlbHNlIHtcblx0XHRcdHN0cm9rZTogJGNhcmJvbi0tYmxhY2stMTAwO1xuXHRcdH1cblx0fVxufVxuIiwiQGltcG9ydCAnLi8uLi92ZW5kb3IvQGNhcmJvbi9tb3Rpb24vc2Nzcy9tb3Rpb24uc2Nzcyc7XG5cbmcuI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLXRyZWVtYXAge1xuXHR0ZXh0IHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxufVxuIiwiLiN7JHByZWZpeH0tLSN7JGNoYXJ0cy1wcmVmaXh9LS1nYXVnZSB7XG5cdHBhdGguYXJjLWJhY2tncm91bmQge1xuXHRcdGZpbGw6ICR1aS0wMTtcblx0fVxuXG5cdC5nYXVnZS1kZWx0YS1hcnJvdyB7XG5cdFx0Ji5zdGF0dXMtLWRhbmdlciB7XG5cdFx0XHRmaWxsOiAkc3VwcG9ydC0wMTtcblx0XHR9XG5cblx0XHQmLnN0YXR1cy0td2FybmluZyB7XG5cdFx0XHRmaWxsOiAkc3VwcG9ydC0wMztcblx0XHR9XG5cblx0XHQmLnN0YXR1cy0tc3VjY2VzcyB7XG5cdFx0XHRmaWxsOiAkc3VwcG9ydC0wMjtcblx0XHR9XG5cdH1cbn1cbiIsIi4jeyRwcmVmaXh9LS0jeyRjaGFydHMtcHJlZml4fS0tbG9sbGlwb3Age1xuXHRsaW5lLmxpbmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG5cblx0Y2lyY2xlLmRvdCB7XG5cdFx0c3Ryb2tlLXdpZHRoOiAxLjU7XG5cdH1cbn1cbiIsIkBpbXBvcnQgJy4vdmVuZG9yL0BjYXJib24vdHlwZS9zY3NzL3R5cGUnO1xuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi90eXBlL3Njc3MvZm9udC1mYWNlL21vbm8nO1xuQGltcG9ydCAnLi92ZW5kb3IvQGNhcmJvbi90eXBlL3Njc3MvZm9udC1mYWNlL3NhbnMnO1xuXG5zdmcuI3skcHJlZml4fS0tI3skY2hhcnRzLXByZWZpeH0tLWNoYXJ0LXN2ZyB7XG5cdGZvbnQtZmFtaWx5OiBjYXJib24tLWZvbnQtZmFtaWx5KCdzYW5zLWNvbmRlbnNlZCcpO1xuXG5cdHRleHQge1xuXHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgncmVndWxhcicpO1xuXHRcdGZpbGw6ICR0ZXh0LTAyO1xuXHR9XG5cblx0Zy5nYXVnZS1udW1iZXJzIHRleHQuZ2F1Z2UtdmFsdWUtbnVtYmVyIHtcblx0XHRmb250LWZhbWlseTogY2FyYm9uLS1mb250LWZhbWlseSgnc2FucycpO1xuXHRcdGZvbnQtd2VpZ2h0OiBjYXJib24tLWZvbnQtd2VpZ2h0KCdsaWdodCcpO1xuXHR9XG5cblx0dGV4dC5tZXRlci10aXRsZSxcblx0dGV4dC5wZXJjZW50LXZhbHVlIHtcblx0XHRmb250LXNpemU6ICRjYXJib24tLWJhc2UtZm9udC1zaXplO1xuXHRcdGZvbnQtZmFtaWx5OiBjYXJib24tLWZvbnQtZmFtaWx5KCdzYW5zJyk7XG5cdH1cblxuXHR0ZXh0Lm1ldGVyLXRpdGxlIHtcblx0XHRmb250LXdlaWdodDogY2FyYm9uLS1mb250LXdlaWdodCgnc2VtaWJvbGQnKTtcblx0fVxufVxuIiwiLy9cbi8vIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOCwgMjAxOFxuLy9cbi8vIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZS0yLjAgbGljZW5zZSBmb3VuZCBpbiB0aGVcbi8vIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbi8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZVxuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8gQGdyb3VwIEBjYXJib24vbGF5b3V0XG4kY2FyYm9uLS1iYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8vIENvbnZlcnQgYSBnaXZlbiBweCB1bml0IHRvIGEgcmVtIHVuaXRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gTnVtYmVyIHdpdGggcHggdW5pdFxuLy8vIEByZXR1cm4ge051bWJlcn0gTnVtYmVyIHdpdGggcmVtIHVuaXRcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBncm91cCBAY2FyYm9uL2xheW91dFxuQGZ1bmN0aW9uIGNhcmJvbi0tcmVtKCRweCkge1xuICBAaWYgdW5pdCgkcHgpICE9ICdweCcge1xuICAgIC8vIFRPRE86IHVwZGF0ZSB0byBAZXJyb3IgaW4gdjExXG4gICAgQHdhcm4gXCJFeHBlY3RlZCBhcmd1bWVudCAkcHggdG8gYmUgb2YgdHlwZSBgcHhgLCBpbnN0ZWFkIHJlY2VpdmVkOiBgI3t1bml0KCRweCl9YFwiO1xuICB9XG5cbiAgQHJldHVybiAoJHB4IC8gJGNhcmJvbi0tYmFzZS1mb250LXNpemUpICogMXJlbTtcbn1cblxuLy8vIENvbnZlcnQgYSBnaXZlbiBweCB1bml0IHRvIGEgZW0gdW5pdFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSBOdW1iZXIgd2l0aCBweCB1bml0XG4vLy8gQHJldHVybiB7TnVtYmVyfSBOdW1iZXIgd2l0aCBlbSB1bml0XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAZ3JvdXAgQGNhcmJvbi9sYXlvdXRcbkBmdW5jdGlvbiBjYXJib24tLWVtKCRweCkge1xuICBAaWYgdW5pdCgkcHgpICE9ICdweCcge1xuICAgIC8vIFRPRE86IHVwZGF0ZSB0byBAZXJyb3IgaW4gdjExXG4gICAgQHdhcm4gXCJFeHBlY3RlZCBhcmd1bWVudCAkcHggdG8gYmUgb2YgdHlwZSBgcHhgLCBpbnN0ZWFkIHJlY2VpdmVkOiBgI3t1bml0KCRweCl9YFwiO1xuICB9XG5cbiAgQHJldHVybiAoJHB4IC8gJGNhcmJvbi0tYmFzZS1mb250LXNpemUpICogMWVtO1xufVxuIiwiLiN7JHByZWZpeH0tLWNoYXJ0LWhvbGRlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6ICR1aS1iYWNrZ3JvdW5kO1xuXG5cdC5ET05UX1NUWUxFX01FX2Nzc19zdHlsZXNfdmVyaWZpZXIge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuIiwiLy8gZm9yY2VzIHRoZSBuYXZpZ2F0aW9uIGl0ZW1zIHRvIGJlIGRpc3BsYXllZCBhdCBhbGwgdmlld3BvcnQgc2l6ZXNcbi5ieC0taGVhZGVyX19uYXYge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIiRpb3QtcHJlZml4OiAnZ2xvdyc7XG5cbi4jeyRpb3QtcHJlZml4fS0tY2FyZC0tdG9vbGJhci1kYXRlLXJhbmdlLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi4jeyRpb3QtcHJlZml4fS0tY2FyZC0tdG9vbGJhci10aW1lcmFuZ2UtbGFiZWwge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtaW4taGVpZ2h0OiAkY2FyYm9uLS1zcGFjaW5nLTA5O1xuICBtaW4td2lkdGg6ICRjYXJib24tLXNwYWNpbmctMDk7XG4gIHBhZGRpbmc6ICRjYXJib24tLXNwYWNpbmctMDUgJGNhcmJvbi0tc3BhY2luZy0wMztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS10b29sYmFyLWRhdGUtcmFuZ2Utd3JhcHBlclxuICA+IC4jeyRpb3QtcHJlZml4fS0tY2FyZC0tdG9vbGJhci1kYXRlLXJhbmdlLWFjdGlvbiB7XG4gIG1pbi1oZWlnaHQ6ICRjYXJib24tLXNwYWNpbmctMDk7XG4gIG1pbi13aWR0aDogJGNhcmJvbi0tc3BhY2luZy0wOTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkICRmb2N1cztcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkaG92ZXItdWk7XG4gIH1cbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS1vdmVyZmxvdyB7XG4gIHdpZHRoOiBhdXRvO1xuICAmLiN7JHByZWZpeH0tLW92ZXJmbG93LW1lbnUtb3B0aW9uc1tkYXRhLWZsb2F0aW5nLW1lbnUtZGlyZWN0aW9uPSdib3R0b20nXTo6YWZ0ZXIge1xuICAgIHdpZHRoOiAzcmVtOyAvLyBzaW5jZSB0aGUgYnV0dG9uIGlzIHdpZGVyLCB0aGUgb3ZlcmxheSBuZWVkcyB0byBiZSB3aWRlciB0byBtYXRjaFxuICB9XG59XG5cbi4jeyRpb3QtcHJlZml4fS0tY2FyZC0tb3ZlcmZsb3ctbWVudWl0ZW0tYWN0aXZlOm5vdCg6aG92ZXIpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS11aTtcbn0iLCIkaW90LXByZWZpeDogJ2dsb3cnO1xuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLXRvb2xiYXIge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAvLyBzaHJpbmsgdGhlIGRlZmF1bHQgdGV4dCBvZiB0aGUgZGF0ZS10aW1lLXBpY2tlclxuICAuI3skaW90LXByZWZpeH0tLWRhdGUtdGltZS1waWNrZXJfX2ZpZWxkIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS10b29sYmFyLWFjdGlvbiB7XG4gIGNvbG9yOiAkdWktMDU7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDJyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAycmVtO1xuICBtaW4td2lkdGg6IDJyZW07XG4gIHdpZHRoOiAycmVtO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci11aTtcbiAgICBjb2xvcjogJHVpLTA1O1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICB9XG5cbiAgc3ZnIHtcbiAgICBmaWxsOiAkaWNvbi0wMjtcbiAgfVxuXG4gIHN2Zy4jeyRwcmVmaXh9LS1vdmVyZmxvdy1tZW51X19pY29uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS10b29sYmFyLXN2Zy13cmFwcGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDNyZW07XG4gIHdpZHRoOiAzcmVtO1xuICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbjogMDtcblxuICA6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRob3Zlci11aTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJGZvY3VzO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICB9XG59IiwiJGlvdC1wcmVmaXg6ICdnbG93JztcblxuLiN7JGlvdC1wcmVmaXh9LS1kYXRhLXN0YXRlLWNvbnRhaW5lciB7XG4gIC8vIHRoZSBjdXN0b20gcHJvcGVydHkgKENTUyB2YXIpIGlzIGRlZmluZWQgaW4gdGhlIENhcmQgdGhhdCBpcyB1c2luZyBpdFxuICBwYWRkaW5nOiAwIHZhcigtLWNvbnRhaW5lci1wYWRkaW5nKTtcbiAgd2lkdGg6IGluaGVyaXQ7XG59XG5cbi4jeyRpb3QtcHJlZml4fS0tZGF0YS1zdGF0ZS1kYXNoZXMge1xuICBjb2xvcjogJGdyYXktMjA7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNjc7XG59XG5cbi4jeyRpb3QtcHJlZml4fS0tZGF0YS1zdGF0ZS1ncmlkIHtcbiAgbWFyZ2luLXRvcDogJHNwYWNpbmctMDU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIDFmcjtcbiAgZ3JpZC1jb2x1bW4tZ2FwOiAwO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICdhcHAtaWNvbiAgYXBwLWxhYmVsICAgICAgICAgICAgIC4gICAgICAgICdcbiAgICAnICAgIC4gICAgIGFwcC1kZXNjcmlwdGlvbiBhcHAtZGVzY3JpcHRpb24nO1xuXG4gID4gLiN7JHByZWZpeH0tLXRvb2x0aXBfX2xhYmVsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgZ3JpZC1hcmVhOiBhcHAtaWNvbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy0wMztcbiAgfVxuXG4gICYgPiAqOm50aC1jaGlsZCgyKSB7XG4gICAgZ3JpZC1hcmVhOiBhcHAtbGFiZWw7XG5cbiAgICAvLyBXZSB3YW50IGFwcCBsYWJlbCB0byB1c2UgZWxsaXBzaXMgZm9yIGxvbmdlciB0ZXh0cyBhbmRcbiAgICAvLyB3ZSBjYW4ndCBoYXZlIG92ZXJmbG93OmhpZGRlbiBkdWUgdG8gdG9vbHRpcCBzY3JvbGxpbmcuXG4gICAgLy8gVGhpcyBzaHJpbmtzIHRoZSB3aWR0aCB0byBmaXQgdGhlIGFwcC1sYWJlbCBncmlkIGFyZWEuXG4gICAgLmJ4LS10b29sdGlwX19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgIH1cbiAgfVxuXG4gICYgPiAqOm50aC1jaGlsZCgzKSB7XG4gICAgZ3JpZC1hcmVhOiBhcHAtZGVzY3JpcHRpb247XG4gIH1cbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1kYXRhLXN0YXRlLWdyaWRfX2xhYmVsIHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAxJyk7XG4gIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3coKTtcbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1kYXRhLXN0YXRlLWdyaWRfX2Rlc2NyaXB0aW9uIHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnaGVscGVyLXRleHQtMDEnKTtcbiAgY29sb3I6ICRncmF5LTcwO1xuXG4gICRtYXgtbGluZXM6IDI7XG4gICRsaW5lLWhlaWdodDogMXJlbTtcbiAgQGluY2x1ZGUgbXVsdGlsaW5lLXRleHQtb3ZlcmZsb3coJG1heC1saW5lcywgJGxpbmUtaGVpZ2h0KTtcbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1kYXRhLXN0YXRlLXRvb2x0aXA6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uI3skaW90LXByZWZpeH0tLWRhdGEtc3RhdGUtdG9vbHRpcCB7XG4gID4gKiB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctMDU7XG4gIH1cblxuICAuI3skaW90LXByZWZpeH0tLWRhdGEtc3RhdGUtdG9vbHRpcF9fbGFiZWwge1xuICAgIEBpbmNsdWRlIHR5cGUtc3R5bGUoJ3Byb2R1Y3RpdmUtaGVhZGluZy0wMScpO1xuICB9XG59XG5cbi4jeyRpb3QtcHJlZml4fS0tZGF0YS1zdGF0ZS1kZWZhdWx0LWVycm9yLWljb24ge1xuICBmaWxsOiAkY2FyYm9uLS1yZWQtNjA7XG59XG5cbi4jeyRpb3QtcHJlZml4fS0tZGF0YS1zdGF0ZS1kZWZhdWx0LXdhcm5pbmctaWNvbiB7XG4gIGZpbGw6ICRjYXJib24tLXllbGxvdy0zMDtcbn1cblxuaHRtbFtkaXI9J3J0bCddIC4jeyRpb3QtcHJlZml4fS0tZGF0YS1zdGF0ZS1ncmlkIHtcbiAgJiA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNpbmctMDM7XG4gIH1cbn0iLCJAbWl4aW4gbXVsdGlsaW5lLXRleHQtb3ZlcmZsb3coJG1heC1saW5lczogMywgJGxpbmUtaGVpZ2h0LXJlbTogMSkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIFxuICAgIC8vIEZhbGxiYWNrIHNvbHV0aW9uIGZvciB1c2VycyB3aGVyZSAtd2Via2l0LWxpbmUtY2xhbXAgZG9lc24ndCB3b3JrXG4gICAgbWF4LWhlaWdodDogY2FsYygjeyRsaW5lLWhlaWdodC1yZW19ICogKCN7JG1heC1saW5lc30gKyAwLjUpKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgXG4gICAgLy8gVXNlIHdlYmtpdC1saW5lLWNsYW1wIHdoaWNoIGRlc3BpdGUgd2Via2l0IHByZWZpeCBoYXMgZ29vZCBicm93c2VyIHN1cHBvcnRcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6ICRtYXgtbGluZXM7XG4gICAgLy8gTm90IG5lZWRlZCBhZnRlciB3ZSB1cGdyYWRlIHRvIFByZWZpeGVyIDkuNi4xIG9yIGhpZ2hlclxuICAgIC8qIGF1dG9wcmVmaXhlcjogaWdub3JlIG5leHQgKi9cbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICB9XG4gIFxuICBAbWl4aW4gZGlzYWJsZWQtaWNvbi1idXR0b24oKSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBzdmcge1xuICAgICAgZmlsbDogJGRpc2FibGVkO1xuICAgIH1cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG4gIFxuICBAbWl4aW4gY29udGVudC1zd2l0Y2hlci1ib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAkZmlyc3QtYnV0dG9uLXNpZGUsICRsYXN0LWJ1dHRvbi1zaWRlKSB7XG4gICAgYnV0dG9uOmZpcnN0LW9mLXR5cGUsXG4gICAgYnV0dG9uOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgXG4gICAgYnV0dG9uOmZpcnN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXRvcC0jeyRmaXJzdC1idXR0b24tc2lkZX0tcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGJvcmRlci1ib3R0b20tI3skZmlyc3QtYnV0dG9uLXNpZGV9LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgIGJ1dHRvbjpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXRvcC0jeyRsYXN0LWJ1dHRvbi1zaWRlfS1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYm9yZGVyLWJvdHRvbS0jeyRsYXN0LWJ1dHRvbi1zaWRlfS1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIH1cbn0iLCJAaW1wb3J0ICd+Y2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvdmFycyc7XG5AaW1wb3J0ICd+Y2FyYm9uLWNvbXBvbmVudHMvc2Nzcy9nbG9iYWxzL3Njc3MvbGF5b3V0JztcbkBpbXBvcnQgJ35jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ35jYXJib24tY29tcG9uZW50cy9zY3NzL2dsb2JhbHMvc2Nzcy9zdHlsZXMnO1xuXG5AaW1wb3J0ICcuL2NhcmQtcmFuZ2UtcGlja2VyLnNjc3MnO1xuQGltcG9ydCAnLi9jYXJkLXRvb2xiYXIuc2Nzcyc7XG5AaW1wb3J0ICcuL21peGlucy5zY3NzJztcbkBpbXBvcnQgJy4vZGF0YS1zdGF0ZS1yZW5kZXJlci5zY3NzJztcblxuXG4kaW90LXByZWZpeDogJ2dsb3cnO1xuXG4kaW90LWhlYWRlci1wYWRkaW5nOiAkc3BhY2luZy0wNTtcbiR0b29sdGlwU2l6ZTogJHNwYWNpbmctMDc7XG4kbGluZUhlaWdodFNpemU6IDEuMzc1ZW07XG5cbi4jeyRpb3QtcHJlZml4fS0tY2FyZC0td3JhcHBlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdXRsaW5lOiBzb2xpZCAkc3BhY2luZy0wMSB0cmFuc3BhcmVudDtcbiAgaGVpZ2h0OiB2YXIoLS1jYXJkLWRlZmF1bHQtaGVpZ2h0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmX19zZWxlY3RlZCB7XG4gICAgb3V0bGluZTogc29saWQgJHNwYWNpbmctMDEgJGludGVyYWN0aXZlLTAyO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS1yZXNpemluZyB7XG4gIGJvcmRlcjogJHNwYWNpbmctMDEgc29saWQgJGludGVyYWN0aXZlLTAyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQucmVhY3QtZ3JpZC1pdGVtID4gLnJlYWN0LXJlc2l6YWJsZS1oYW5kbGUge1xuICAvLyBNYWtlIHN1cmUgdGhlIHJlc2l6ZSBoYW5kbGUgaXMgcGxhY2VkIG9uIHRvcCBvZiBhYnNvbHV0ZSBwb3NpdGlvbmVkIGNhcmQgY29udGVudFxuICB6LWluZGV4OiAyO1xufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLXRpdGxlIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLy8gbWluLXdpZHRoIHZhbHVlIGlzIHJlcXVpcmVkIHRvIGVuc3VyZSBmbGV4IGNoaWxkIHdpdGggdGV4dCBwcm9wZXJseSB0cnVuY2F0ZXNcbiAgLy8gaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9mbGV4Ym94LXRydW5jYXRlZC10ZXh0L1xuICBtaW4td2lkdGg6IDA7XG4gIG1hcmdpbi10b3A6ICRzcGFjaW5nLTAzO1xuICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy0wNTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgaHRtbFtkaXI9J3J0bCddICYge1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctMDU7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gIH1cblxuICAmICsgKjpub3QoLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS10b29sYmFyKSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRzcGFjaW5nLTA1O1xuICB9XG59XG5cbi4jeyRpb3QtcHJlZml4fS0tY2FyZC0taGVhZGVyLS10b29sdGlwIHtcbiAgZmxleC1iYXNpczogJHRvb2x0aXBTaXplO1xuICBtYXJnaW4tdG9wOiAkc3BhY2luZy0wMjtcbiAgLiN7JHByZWZpeH0tLXRvb2x0aXBfX3RyaWdnZXIge1xuICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmctMDM7XG4gIH1cbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS10aXRsZS0tdGV4dCxcbi4jeyRpb3QtcHJlZml4fS0tY2FyZC0tc3VidGl0bGUtLXRleHQge1xuICBAaW5jbHVkZSBtdWx0aWxpbmUtdGV4dC1vdmVyZmxvdygxLCAkbGluZUhlaWdodFNpemUpO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIG1pbi13aWR0aDogM3JlbTtcbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS10aXRsZS0tdGV4dC0td3JhcHBlZCB7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgbWF4LWhlaWdodDogY2FsYygjeyRsaW5lSGVpZ2h0U2l6ZX0gKiAyKTtcbiAgd29yZC1icmVhazogbm9ybWFsO1xufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLXRpdGxlLS10ZXh0IHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgncHJvZHVjdGl2ZS1oZWFkaW5nLTAyJyk7XG4gIGNvbG9yOiAkdGV4dC0wMTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAjeyR0b29sdGlwU2l6ZX0pO1xufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLXN1YnRpdGxlLS10ZXh0IHtcbiAgQGluY2x1ZGUgdHlwZS1zdHlsZSgnbGFiZWwtMDEnKTtcbiAgY29sb3I6ICR0ZXh0LTAyO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMS4zNGVtO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICN7JHRvb2x0aXBTaXplfSk7XG5cbiAgJi0tcGFkZGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICR0b29sdGlwU2l6ZTtcbiAgfVxuXG4gIGh0bWxbZGlyPSdydGwnXSAmLS1wYWRkZWQge1xuICAgIG1hcmdpbi1sZWZ0OiAkdG9vbHRpcFNpemU7XG4gICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcbiAgfVxufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLWhlYWRlciB7XG4gIGZsZXg6IDAgMCAkc3BhY2luZy0wOTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDAgMCAwICRpb3QtaGVhZGVyLXBhZGRpbmc7XG5cbiAgaHRtbFtkaXI9J3J0bCddICYge1xuICAgIHBhZGRpbmc6IDAgJGlvdC1oZWFkZXItcGFkZGluZyAwIDA7XG4gIH1cbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS1jb250ZW50IHtcbiAgZmxleDogMTtcbiAgcGFkZGluZzogMCAkc3BhY2luZy0wNSAkc3BhY2luZy0wNTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IHZhcigtLWNhcmQtY29udGVudC1oZWlnaHQpO1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLWNvbnRlbnQtLWV4cGFuZGVkIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS1za2VsZXRvbi13cmFwcGVyIHtcbiAgcGFkZGluZzogdmFyKC0tY2FyZC1jb250ZW50LXBhZGRpbmcpO1xuICB3aWR0aDogODAlO1xufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLWZvb3Rlci0td3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkdWktMDM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMi41cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwICRzcGFjaW5nLTA1O1xufVxuXG4uI3skaW90LXByZWZpeH0tLWNhcmQtLWVtcHR5LW1lc3NhZ2Utd3JhcHBlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwIHZhcigtLWNhcmQtY29udGVudC1wYWRkaW5nKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG4vLyBDaGFuZ2UgYmFja2dyb3VuZCBmb3IgY2hhcnRzIGluIENhcmRzXG4uI3skaW90LXByZWZpeH0tLWNhcmQgLiN7JHByZWZpeH0tLWNoYXJ0LWhvbGRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR1aS0wMTtcbn1cblxuLy8gTmVlZGVkIHRvIGFsbG93IHRoZSBvdmVyZmxvdyBtZW51IHRvIG92ZXJsYXkgdGhlIGV4cGFuZGVkIGNhcmQgY29ycmVjdGx5XG4uI3skcHJlZml4fS0tbW9kYWwgLiN7JGlvdC1wcmVmaXh9LS1jYXJkLS1vdmVyZmxvdyB7XG4gIHotaW5kZXg6IDEwMDAwO1xufSJdfQ== */
