diff --git a/demos/app/avatarsample.component.ts b/demos/app/avatarsample.component.ts index cf6446c2f9e..b5ac8237aec 100644 --- a/demos/app/avatarsample.component.ts +++ b/demos/app/avatarsample.component.ts @@ -3,41 +3,78 @@ import { AvatarModule, Avatar } from "../../src/avatar/avatar"; @Component({ selector: "avatar-sample", + styles: [` + td { + padding: 5px; + } + `], template:`

Avatars

- - - - - - - - - - - - - - - - - - -
- - - - - - - - - + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + +
` @@ -48,7 +85,7 @@ export class AvatarSampleComponent { @ViewChildren(Avatar) avatar; initials: string = 'ZK'; bgColor: string = 'lightblue'; - source: string = ''; + src: string = ''; roundShape: string = "false"; constructor(){ @@ -57,7 +94,7 @@ export class AvatarSampleComponent { } setImageSource(){ - this.source = "https://unsplash.it/60/60?image=" + Math.floor((Math.random() * 50) + 1); + this.src = "https://unsplash.it/60/60?image=" + Math.floor((Math.random() * 50) + 1); } public changeLink() { diff --git a/dist/zero-blocks.css b/dist/zero-blocks.css index 69bd0c352a6..fe9991ab887 100644 --- a/dist/zero-blocks.css +++ b/dist/zero-blocks.css @@ -1,2 +1,2 @@ img,legend{border:0}legend,td,th{padding:0}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent;text-decoration:none}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}.material-icons,h1,h2,h3,h4,h5,h6{-webkit-font-smoothing:antialiased}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{}table{border-collapse:collapse;border-spacing:0}*,:after,:before{box-sizing:inherit}.ig-nav-drawer,html{box-sizing:border-box}.ig-form-group{display:block;position:relative;margin:20px 0;padding:0 5px;min-height:40px}.ig-form-group ::-webkit-input-placeholder{color:#757575}.ig-form-group label{display:block;position:absolute;overflow:hidden;top:0;transform-origin:bottom left;font-size:1em;line-height:1.5em;color:#757575;cursor:text;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .3s ease-in-out,scale .3s cubic-bezier(.25,.8,.25,1),color .3s ease-in-out}.ig-form-group__input--filled~label,.ig-form-group__input--placeholder~label{color:#a8a8a8;transform:translateY(-20px) scale(.75)}.ig-form-group__input--filled~label{color:#a8a8a8}.ig-form-group__input--focused~label{color:#0375be;transform:translateY(-20px) scale(.75)}.ig-form-group__input,.ig-form-group__input--filled,.ig-form-group__input--focused,.ig-form-group__input--placeholder,.ig-form-group__textarea{outline:0;border:none;border-bottom:1px solid rgba(117,117,117,.5);color:#484848;background:0 0;font-size:1em;line-height:1.5em;width:100%}.ig-form-group__input:focus,.ig-form-group__textarea:focus{border-bottom:2px solid #0375be}.ig-form-group__input:disabled,.ig-form-group__textarea:disabled{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:not-allowed;-webkit-text-fill-color:#888;border-bottom:1px dotted rgba(117,117,117,.5)}.ig-control__cbx~.ig-control__label,.ig-control__radio~.ig-control__label{height:20px;line-height:20px;font-size:1em;padding-left:35px;-webkit-user-select:none}.ig-form-group__input.ng-valid.required,.ig-form-group__input.ng-valid[required],.ng-valid.required.ig-form-group__textarea,.ng-valid[required].ig-form-group__textarea{border-bottom:2px solid #4CAF50}.ig-form-group__input.ng-valid.required~label,.ig-form-group__input.ng-valid[required]~label,.ng-valid.required.ig-form-group__textarea~label,.ng-valid[required].ig-form-group__textarea~label{color:#4CAF50}.ig-form-group__input.ng-warning,.ng-warning.ig-form-group__textarea{border-bottom:2px solid orange}.ig-form-group__input.ng-warning~label,.ng-warning.ig-form-group__textarea~label{color:orange}.ig-form-group__input.ng-invalid.ng-touched,.ig-form-group__input.ng-invalid.ng-touched:not(form),.ng-invalid.ng-touched.ig-form-group__textarea,.ng-invalid.ng-touched.ig-form-group__textarea:not(form){border-bottom:2px solid #F44336}.ig-form-group__input.ng-invalid.ng-touched~label,.ig-form-group__input.ng-invalid:not(form).ng-touched~label,.ng-invalid.ig-form-group__textarea:not(form).ng-touched~label,.ng-invalid.ng-touched.ig-form-group__textarea~label{color:#F44336}.ig-form-group__textarea{resize:none}.ig-control__radio~.ig-control__label{display:inline-block;position:relative;cursor:pointer;color:#484848;-moz-user-select:none;-ms-user-select:none;user-select:none}.ig-control__cbx~.ig-control__label,.ig-control__switch~.ig-control__label{display:inline-block;-moz-user-select:none;-ms-user-select:none;cursor:pointer}.ig-control__radio~.ig-control__label:after,.ig-control__radio~.ig-control__label:before{position:absolute;content:'';width:20px;height:20px;left:0;border-radius:50%}.ig-control__radio~.ig-control__label:before{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);transition:all .2s ease-in}.ig-control__radio:not(:checked)~.ig-control__label:before{transform:scale(0)}.ig-control__radio:not(:checked)~.ig-control__label:after{border:2px solid #757575}.ig-control__radio:checked~.ig-control__label:before{border:2px solid #0375be;background-color:#0375be;transform:scale(.5)}.ig-control__radio:checked~.ig-control__label:after{border:2px solid #0375be}.ig-control__radio:disabled:checked~.ig-control__label:after,.ig-control__radio:disabled:not(:checked)~.ig-control__label:after{border:2px solid #888}.ig-control__radio:disabled~.ig-control__label{pointer-events:none;color:#888}.ig-control__radio:disabled:checked~.ig-control__label:before{background-color:#888;border:2px solid #888}.ig-control__cbx~.ig-control__label{position:relative;color:#484848;user-select:none}.ig-control__cbx~.ig-control__label:before{transform:translateZ(0);transition:all .2s ease-in}.ig-control__cbx~.ig-control__label:after,.ig-control__cbx~.ig-control__label:before{position:absolute;content:'';top:0;left:0;border-radius:2px}.ig-control__cbx:not(:checked)~.ig-control__label:before{width:9px;height:15px;border:none;top:1px;left:0;transform:rotateZ(37deg) scale(.1);transform-origin:100% 100%}.ig-control__cbx:not(:checked)~.ig-control__label:after{width:20px;height:20px;background:0 0;border:2px solid #757575;z-index:0}.ig-control__cbx:checked~.ig-control__label:before{top:1px;left:0;width:9px;height:15px;border-bottom:2px solid #fff;border-right:2px solid #fff;z-index:1;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotateZ(37deg) scale(1);transform-origin:100% 100%}.ig-control__cbx:checked~.ig-control__label:after{width:20px;height:20px;background-color:#0375be;border:2px solid #0375be}.ig-control__cbx:disabled~.ig-control__label{color:#d1d1d1;pointer-events:none}.ig-control__cbx:disabled:checked~.ig-control__label:before{background-color:transparent}.ig-control__cbx:disabled:checked~.ig-control__label:after{background-color:#888;border-color:#888}.ig-control__cbx:disabled:not(:checked)~.ig-control__label:before{background-color:transparent;border:2px solid transparent}.ig-control__cbx:disabled:not(:checked)~.ig-control__label:after{border-color:#888;background-color:transparent}.ig-control__cbx:indeterminate~.ig-control__label:after{width:20px;height:20px;background-color:#0375be;border:2px solid #0375be}.ig-control__switch~.ig-control__label{position:relative;margin:0 16px;width:35px;height:14px;background-color:#757575;color:transparent;border-radius:100px;transition:all .2s ease-in;-webkit-user-select:none;user-select:none}.ig-control__switch~.ig-control__label:after,.ig-list:after{content:'';display:block}.ig-control__switch~.ig-control__label:after{position:absolute;width:20px;height:20px;top:-3px;left:-1px;border-radius:100px;background:#fff;box-shadow:0 2px 4px 0 rgba(72,72,72,.5);transition:all .2s ease-in}.ig-control__switch:checked~.ig-control__label{background-color:rgba(3,117,190,.5)}.ig-control__switch:checked~.ig-control__label:after{left:16px;background:#0375be}.ig-control__switch:disabled~.ig-control__label{background:#F0F0F0;pointer-events:none}.ig-control__switch:disabled~.ig-control__label:after{background:#D1D1D1;box-shadow:0 1px 2px 0 rgba(72,72,72,.5)}.ig-list{background-color:#f2f2f2;overflow:hidden}.ig-list:after{height:1px;width:100%;margin-left:16px;background:#e6e6e6}.ig-list__header,.ig-list__item{padding:8px 16px;height:3em;line-height:3em;background-color:#fff}ig-list-item{display:list-item;position:relative;list-style-type:none}.ig-list__header{color:#0375be;font-size:.8125em;font-weight:400;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ig-list__item{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:column wrap;flex-flow:column wrap;-ms-flex-pack:center;justify-content:center;font-size:1em;color:#484848;z-index:2}.ig-list__item:active{background-color:#fcfcfc;box-shadow:4px 0 6px -3px rgba(167,167,167,.3)}.ig-avatar,.ig-avatar--rounded{max-width:3em;max-height:3em}.ig-avatar--rounded{border-radius:50%}.ig-button,.ig-button--disabled,.ig-button--fab,.ig-button--flat,.ig-button--gradient,.ig-button--raised{display:inline-block;min-width:88px;padding:.375em 1em;font-size:1em;font-weight:400;text-align:center;color:#484848;border:none;border-radius:2px;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.ig-button--flat:hover{background:#F0F0F0}.ig-button--flat:active,.ig-button--flat:focus{background:#D1D1D1}.ig-button--raised{color:#fff;background:#0375be;box-shadow:0 2px 4px 0 rgba(72,72,72,.5)}.ig-button--raised:hover{background:#0366a5;box-shadow:0 2px 4px 0 rgba(72,72,72,.5)}.ig-button--raised:active,.ig-button--raised:focus{background:#0366a5;box-shadow:0 3px 2px 0 rgba(0,0,0,.03),0 7px 8px 0 rgba(88,88,88,.5)}.ig-button--gradient{color:#fff;background:linear-gradient(to bottom right,#e41c77,#731963);box-shadow:0 4px 10px -2px rgba(107,23,92,.8)}.ig-button--gradient:hover{background:linear-gradient(to bottom right,#ce196b,#5e1451);box-shadow:0 4px 10px -2px rgba(107,23,92,.8)}.ig-button--gradient:active,.ig-button--gradient:focus{background:linear-gradient(to bottom right,#ce196b,#5e1451);box-shadow:0 6px 12px -1px rgba(94,20,81,.75)}.ig-button--fab{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:#fff;min-width:1px;width:3.5em;height:3.5em;background:#0375be;box-shadow:0 2px 4px 0 rgba(72,72,72,.5);border:none;border-radius:50%}.ig-button--fab:hover{box-shadow:0 4px 8px 0 rgba(72,72,72,.5)}.ig-button--fab:active,.ig-button--fab:focus{background:#0366a5}.ig-button--disabled{color:#AEAEAE;background:0 0;pointer-events:none}.ig-tab-bar-inner{width:100%;height:100%;position:absolute}.ig-tab-bar-inner__menu{position:absolute;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;-ms-flex-align:center;align-items:center;width:100%;height:56px;margin:0;padding:0;background:#fff;color:#333;overflow:hidden}.ig-tab-bar-inner__menu--top{top:0;box-shadow:0 2px 4px 0 rgba(72,72,72,.1)}.ig-tab-bar-inner__menu--bottom{box-shadow:0 -2px 4px 0 rgba(72,72,72,.1)}.ig-tab-bar-inner__menu .ig-tab-bar-inner__menu-item{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:column wrap;flex-flow:column wrap;-ms-flex-align:center;align-items:center;min-width:80px;max-width:168px;list-style:none;text-align:center;cursor:pointer;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ig-tab-bar-inner__menu .ig-tab-bar-inner__menu-item--disabled{opacity:.5;cursor:default}.ig-tab-bar-inner__menu .ig-tab-bar-inner__menu-item--selected .tab-icon,.ig-tab-bar-inner__menu .ig-tab-bar-inner__menu-item--selected .tab-label{opacity:1;color:#0375be;transition:all .25s ease-in}.ig-tab-bar-inner .tab-label{max-width:168px;padding-top:5px;font-size:12px;line-height:12px;text-transform:uppercase;text-overflow:ellipsis;overflow:hidden;z-index:1;opacity:.75}.ig-tab-bar-inner .tab-icon{position:relative;height:24px;z-index:1;opacity:.75}.ig-badge{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;min-width:14px;height:14px;line-height:16px;color:#fff;background-color:#731963;margin-right:-25%;font-size:12px;top:0;right:0;border-radius:50%;padding:2px;box-shadow:0 1px 2px 0 rgba(72,72,72,.5)}.ig-badge--hidden{display:none}@font-face{font-family:"Titillium Web";src:local(Titillium Web Light),url(../dist/fonts/titillium/TitilliumWeb-Light.ttf);src:url(../dist/fonts/titillium/TitilliumWeb-Light.ttf) format("truetype");font-weight:300}@font-face{font-family:"Titillium Web";src:local(Titillium Web Regular),url(../dist/fonts/titillium/TitilliumWeb-Regular.ttf);src:url(../dist/fonts/titillium/TitilliumWeb-Regular.ttf) format("truetype");font-weight:400}@font-face{font-family:"Titillium Web";src:local(Titillium Web Semi-Bold),url(../dist/fonts/titillium/TitilliumWeb-SemiBold.ttf);src:url(../dist/fonts/titillium/TitilliumWeb-SemiBold.ttf) format("truetype");font-weight:600}@font-face{font-family:"Titillium Web";src:local(Titillium Web Bold),url(../dist/fonts/titillium/TitilliumWeb-Bold.ttf);src:url(../dist/fonts/titillium/TitilliumWeb-Bold.ttf) format("truetype");font-weight:700}html{font-size:100%;font-size-adjust:.58;font-family:'Titillium Web',sans-serif;font-weight:400;color:#484848}h1,h2,h3,h4,h5,h6{font-weight:600}@media only screen and (min-width:0){h4,p{line-height:1.25em}h1{font-size:2em;line-height:2.5em}h2{font-size:1.625em;line-height:1.875em}h3,h4{font-size:1.375em}h3{line-height:1.5625em}}@media only screen and (min-width:768px){h4,p{line-height:1.375em}h1{font-size:2.5em;line-height:2.8125em}h2{font-size:2em;line-height:2.5em}h3{font-size:1.5em;line-height:1.875em}h4{font-size:1.125em}}@media only screen and (min-width:1024px){h1{font-size:3em;line-height:3.375em}h2{font-size:2.25em;line-height:2.8125em}h3{font-size:1.75em;line-height:2.1875em}h4{font-size:1.125em;line-height:1.375em}}@font-face{font-family:'Material Icons';font-style:normal;font-weight:400;src:url(../../node_modules/material-design-icons/iconfont/MaterialIcons-Regular.eot);src:local("Material Icons"),local("MaterialIcons-Regular"),url(../../node_modules/material-design-icons/iconfont/MaterialIcons-Regular.woff2) format("woff2"),url(../../node_modules/material-design-icons/iconfont/MaterialIcons-Regular.woff) format("woff"),url(../../node_modules/material-design-icons/iconfont/MaterialIcons-Regular.ttf) format("truetype")}.material-icons{font-family:'Material Icons';font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:'liga'}.btn-container{margin-bottom:20px}.ig-control__cbx,.ig-control__radio,.ig-control__switch{position:absolute;opacity:0;margin:0;z-index:-1;width:0;height:0;left:0;overflow:hidden;pointer-events:none}ig-tab .ig-tab-inner{display:none;overflow:auto}ig-tab .ig-tab-inner.selected{display:block}ig-tab .ig-tab-inner::-webkit-scrollbar{display:none}@keyframes selected{from{transform:scale(0)}to{transform:scale(44.5)}}[hidden]{display:none!important}.ig-nav-drawer{min-height:100%;z-index:999;max-width:90%;overflow-x:hidden;background-color:#DADEE4;padding:.7em;position:fixed;left:0;top:0;bottom:0;width:300px;height:100%;transition-property:width,transform;transition-duration:.25s,.25s;transition-timing-function:ease-in,ease-in;transition-delay:0s,0s;box-shadow:2px 2px 2px 1px rgba(80,80,80,.1)}.ig-nav-drawer.collapsed{transform:translate3d(-300px,0,0)}.ig-nav-drawer.right{left:auto;right:0;box-shadow:-2px -2px 2px 1px rgba(80,80,80,.1)}.ig-nav-drawer.collapsed.right{transform:translate3d(300px,0,0)}.ig-nav-drawer.mini{width:60px;transition-duration:.2s,.2s}.ig-nav-drawer.pinned{position:relative;box-shadow:none}.ig-nav-drawer.pinned.collapsed{transform:none;width:0;padding:0;overflow:hidden}.ig-nav-drawer.panning{overflow-x:hidden;transition:none}.ig-nav-drawer-overlay.panning{transform:translate3d(0,0,0);transition:none}.ig-nav-drawer-overlay.panning.hidden{visibility:visible}.style-dummy{height:0;background:0 0;box-shadow:none;transition:none;visibility:hidden}.ig-nav-drawer-overlay{opacity:1;background-color:rgba(136,136,136,.5);transition-property:opacity,visibility;transition-duration:.25s,.25s;transition-timing-function:ease-in,step-start;transition-delay:0s,0s;position:absolute;left:0;top:0;width:100%;height:100%;visibility:visible}.ig-nav-drawer-overlay.hidden{transition-timing-function:ease-in,step-end;visibility:hidden;opacity:0}.ig-nav-drawer-overlay.pinned{display:none}.ig-carousel{position:relative;transform-style:preserve-3d}.ig-carousel-indicators{position:absolute;text-align:center;list-style:none;z-index:10;left:25%;right:25%;bottom:25%}.ig-carousel-indicators li{display:inline-block;width:12px;height:12px;margin:1px;text-indent:-9999px;cursor:pointer;background-color:transparent;border:1px solid #fff;border-radius:10px}.ig-carousel-indicators .active{color:#fff;background:#fff;width:12px;height:12px;border-radius:10px}.ig-carousel-inner{position:relative;width:100%;overflow:hidden}.ig-carousel-inner .item{position:relative;display:none;transition:.5s ease-in-out left;-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px}.ig-carousel-inner .item .active.left,.ig-carousel-inner .item .active.right,.ig-carousel-inner .item .next,.ig-carousel-inner .item .next.left,.ig-carousel-inner .item .prev,.ig-carousel-inner .item .prev.right{left:0;transform:translate3d(100%,0,0)}.ig-carousel-inner .active,.ig-carousel-inner .next,.ig-carousel-inner .prev{display:block}.ig-carousel-inner .next,.ig-carousel-inner .prev{position:absolute;top:0;width:100%}.ig-carousel-inner .next{left:100%}.ig-carousel-inner .prev{left:-100%}.ig-carousel-control{position:absolute;display:block;padding:10px;top:50%;transform:translateY(-50%);text-shadow:0 1px 2px rgba(0,0,0,.5);color:#fff;font-size:26px}.ig-carousel-control :hover{background-color:rgba(255,255,255,.5);cursor:pointer}.ig-carousel-control span{padding:10px}.left{left:0}.right{right:0}.ig-goUp{animation:goUp 1s ease both}.ig-goDown{animation:goDown 1s ease both}.ig-goLeft{animation:goLeft 1s ease both}.ig-goRight{animation:goRight 1s ease both}.ig-fade{animation:fade 3s ease both}@keyframes fade{0%{opacity:.25}50%{opacity:1}100%{opacity:0}}@keyframes goUp{from{transform:translateY(100%)}}@keyframes goDown{from{transform:translateY(-100%)}}@keyframes goLeft{from{transform:translateX(-100%)}}@keyframes goRight{from{transform:translateX(100%)}} -/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwiemVyby1ibG9ja3MuY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fdHlwb2dyYXBoeS5zY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fbWF0ZXJpYWxfaWNvbnMuc2NzcyIsImJhc2UvX2Jhc2Uuc2NzcyIsIi4uL25hdmlnYXRpb24tZHJhd2VyL25hdmlnYXRpb24tZHJhd2VyLnNjc3MiLCJ1dGlsaXRpZXMvX2JlbS5zY3NzIiwibWF0ZXJpYWwvZXh0ZW5kcy9faW5wdXRzLnNjc3MiLCJtYXRlcmlhbC9leHRlbmRzL19jaGVja2JveC5zY3NzIiwibWF0ZXJpYWwvZXh0ZW5kcy9fcmFkaW8uc2NzcyIsIm1hdGVyaWFsL2V4dGVuZHMvX3N3aXRjaC5zY3NzIiwibWF0ZXJpYWwvZXh0ZW5kcy9fdGFiLnNjc3MiLCJtYXRlcmlhbC9leHRlbmRzL19saXN0LnNjc3MiLCJtYXRlcmlhbC9leHRlbmRzL19hdmF0YXIuc2NzcyIsIm1hdGVyaWFsL2V4dGVuZHMvX2J1dHRvbnMuc2NzcyIsIm1hdGVyaWFsL2V4dGVuZHMvX2JhZGdlcy5zY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fdGl0aWxsaXVtLnNjc3MiLCJtYXRlcmlhbC9tb2R1bGVzL19idXR0b25zLnNjc3MiLCJ1dGlsaXRpZXMvX21peGlucy5zY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fdGFiLnNjc3MiLCJtYXRlcmlhbC9oZWxwZXJzL19uZzJxdWlya3Muc2NzcyIsIi4uL2Nhcm91c2VsL2Nhcm91c2VsLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeVRBLElBK05BLE9BQ0UsT0FBQSxFQURGLE9Bc0NBLEdDM01BLEdENk1FLFFBQUEsRUExaUJGLEtBRUUscUJBQTJCLEtBQzNCLHlCQUErQixLQVVqQyxLQUNFLE9BQUEsRUFhRixRQ0xBLE1BQ0EsUUFDQSxXQUNBLE9BQ0EsT0FDQSxPQUNBLE9BQ0EsS0FDQSxLQUNBLElBQ0EsUUFDQSxRRE9FLFFBQUEsTUFRRixN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QUEsS0FHQSxXQUFBLElBQUEsWUFBQSxLQUNBLDRCQUFBLE9BQ0Esb0JBQUEsT0FFQSxZQUFBLE9wQmdwQ0osc0NBREEsdUNvQjdwQ0osK0JwQjJwQ0ksb0NBREEsK0JBRUEscUNvQnRvQ1EsS0FBQSxFQUNBLFVBQUEsc0JBdkJaLDJCcEJrcUNFLHlCQUNBLHlCb0Jyb0NNLFFBQUEsTUE5QlIseUJwQnNxQ0UseUJvQm5vQ00sU0FBQSxTQUNBLElBQUEsRUFDQSxNQUFBLEtBckNSLHlCQXlDUSxLQUFBLEtBekNSLHlCQTZDUSxLQUFBLE1BSVIscUJBQ0ksU0FBQSxTQUNBLFFBQUEsTUFDQSxRQUFBLEtBQ0EsSUFBQSxJQUNBLFVBQUEsaUJBQ0EsWUFBQSxFQUFBLElBQUEsSUFBQSxlQUNBLE1BQUEsS0FDQSxVQUFBLEtBUkosNEJBV1EsaUJBQUEscUJBQ0EsT0FBQSxRQVpSLDBCQWdCUSxRQUFBLEtBSVIsTUFDSSxLQUFBLEVBR0osT0FDSSxNQUFBLEVBSUosU0FDSSxVQUFBLEtBQUEsR0FBQSxLQUFBLEtBRUosV0FDSSxVQUFBLE9BQUEsR0FBQSxLQUFBLEtBR0osV0FDSSxVQUFBLE9BQUEsR0FBQSxLQUFBLEtBR0osWUFDSSxVQUFBLFFBQUEsR0FBQSxLQUFBLEtBR0osU0FDSSxVQUFBLEtBQUEsR0FBQSxLQUFBLEtBSUosZ0JBQ0ksR0FDSSxRQUFBLElBR0osSUFDSSxRQUFBLEVBR0osS0FDSSxRQUFBLEdBS1IsZ0JBQ0ksS0FBTyxVQUFBLGtCQUdYLGtCQUNJLEtBQU8sVUFBQSxtQkFHWCxrQkFDSSxLQUFPLFVBQUEsbUJBR1gsbUJBQ0ksS0FBTyxVQUFBIiwiZmlsZSI6Inplcm8tYmxvY2tzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBOb3JtYWxpemUuc2NzcyBzZXR0aW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogSW5jbHVkZXMgbGVnYWN5IGJyb3dzZXIgc3VwcG9ydCBJRTYvN1xuICpcbiAqIFNldCB0byBmYWxzZSBpZiB5b3Ugd2FudCB0byBkcm9wIHN1cHBvcnQgZm9yIElFNiBhbmQgSUU3XG4gKi9cblxuJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vKiBCYXNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICogMy4gQ29ycmVjdHMgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRSA2Lzcgd2hlbiBib2R5IGBmb250LXNpemVgIGlzIHNldCB1c2luZ1xuICogIGBlbWAgdW5pdHMuXG4gKi9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xuICAgICpmb250LXNpemU6IDEwMCU7IC8qIDMgKi9cbiAgfVxufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xuICAgICpkaXNwbGF5OiBpbmxpbmU7XG4gICAgKnpvb206IDE7XG4gIH1cbn1cblxuLyoqXG4gKiBQcmV2ZW50cyBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuXG5hIHtcbiAgJjphY3RpdmUsICY6aG92ZXIge1xuICAgIG91dGxpbmU6IDA7XG4gIH07XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAxZW0gNDBweDtcbiAgfVxufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbkBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIG1hcmdpbjogMC44M2VtIDA7XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxLjE3ZW07XG4gICAgbWFyZ2luOiAxZW0gMDtcbiAgfVxuXG4gIGg0IHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBtYXJnaW46IDEuMzNlbSAwO1xuICB9XG5cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMC44M2VtO1xuICAgIG1hcmdpbjogMS42N2VtIDA7XG4gIH1cblxuICBoNiB7XG4gICAgZm9udC1zaXplOiAwLjY3ZW07XG4gICAgbWFyZ2luOiAyLjMzZW0gMDtcbiAgfVxufVxuXG4vKipcbiAqIEFkZHJlc3NlcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbkBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XG5cbiAgLyoqXG4gICAqIEFkZHJlc3NlcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG4gICAqL1xuXG4gIHAsXG4gIHByZSB7XG4gICAgKm1hcmdpbjogMWVtIDA7XG4gIH1cblxuICAvKlxuICAgKiBBZGRyZXNzZXMgQ1NTIHF1b3RlcyBub3Qgc3VwcG9ydGVkIGluIElFIDYvNy5cbiAgICovXG5cbiAgcSB7XG4gICAgKnF1b3Rlczogbm9uZTtcbiAgfVxuXG4gIC8qXG4gICAqIEFkZHJlc3NlcyBgcXVvdGVzYCBwcm9wZXJ0eSBub3Qgc3VwcG9ydGVkIGluIFNhZmFyaSA0LlxuICAgKi9cblxuICBxOmJlZm9yZSxcbiAgcTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbkBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XG5cbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgTGlzdHNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKlxuICAgKiBBZGRyZXNzZXMgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LlxuICAgKi9cblxuICBkbCxcbiAgbWVudSxcbiAgb2wsXG4gIHVsIHtcbiAgICAqbWFyZ2luOiAxZW0gMDtcbiAgfVxuXG4gIGRkIHtcbiAgICAqbWFyZ2luOiAwIDAgMCA0MHB4O1xuICB9XG5cbiAgLypcbiAgICogQWRkcmVzc2VzIHBhZGRpbmdzIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG4gICAqL1xuXG4gIG1lbnUsXG4gIG9sLFxuICB1bCB7XG4gICAgKnBhZGRpbmc6IDAgMCAwIDQwcHg7XG4gIH1cblxuICAvKlxuICAgKiBDb3JyZWN0cyBsaXN0IGltYWdlcyBoYW5kbGVkIGluY29ycmVjdGx5IGluIElFIDcuXG4gICAqL1xuXG4gIG5hdiB1bCxcbiAgbmF2IG9sIHtcbiAgICAqbGlzdC1zdHlsZTogbm9uZTtcbiAgICAqbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbiAgfVxuXG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBJbXByb3ZlcyBpbWFnZSBxdWFsaXR5IHdoZW4gc2NhbGVkIGluIElFIDcuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xuICAgICotbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyAvKiAyICovXG4gIH1cbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqIENvcnJlY3QgZm9udCBmYW1pbHkgc2V0IG9kZGx5IGluIElFIDYsIFNhZmFyaSA0LzUsIGFuZCBDaHJvbWUuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIEBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XG4gICAgX2ZvbnQtZmFtaWx5OiAnY291cmllciBuZXcnLCBtb25vc3BhY2U7XG4gIH1cbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKiA0LiBJbXByb3ZlcyBhcHBlYXJhbmNlIGFuZCBjb25zaXN0ZW5jeSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICBtYXJnaW46IDA7IC8qIDMgKi9cbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDMgKi9cbiAgICAqdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLyogMyAqL1xuICB9XG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICogNC4gUmVtb3ZlcyBpbm5lciBzcGFjaW5nIGluIElFIDcgd2l0aG91dCBhZmZlY3Rpbmcgbm9ybWFsIHRleHQgaW5wdXRzLlxuICogIEtub3duIGlzc3VlOiBpbm5lciBzcGFjaW5nIHJlbWFpbnMgaW4gSUUgNi5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcbiAgICAqb3ZlcmZsb3c6IHZpc2libGU7ICAvKiA0ICovXG4gIH1cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICogIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFIDYuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG4gIEBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XG4gICAgKmhlaWdodDogMTNweDsgLyogMyAqL1xuICAgICp3aWR0aDogMTNweDsgLyogMyAqL1xuICB9XG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKiAzLiBDb3JyZWN0cyB0ZXh0IG5vdCB3cmFwcGluZyBpbiBGaXJlZm94IDMuXG4gKiA0LiBDb3JyZWN0cyBhbGlnbm1lbnQgZGlzcGxheWVkIG9kZGx5IGluIElFIDYvNy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDMgKi9cbiAgICAqbWFyZ2luLWxlZnQ6IC03cHg7IC8qIDQgKi9cbiAgfVxufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufSIsIi8qXG4qIFplcm8gYmxvY2tzIGRlZmF1bHQgdGhlbWVcbiogVE9ETzogTW92ZSBnbG9iYWwgY29sb3IgdmFyaWFibGVzIGhlcmUuXG4qL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE5vcm1hbGl6ZS5zY3NzIHNldHRpbmdzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBJbmNsdWRlcyBsZWdhY3kgYnJvd3NlciBzdXBwb3J0IElFNi83XG4gKlxuICogU2V0IHRvIGZhbHNlIGlmIHlvdSB3YW50IHRvIGRyb3Agc3VwcG9ydCBmb3IgSUU2IGFuZCBJRTdcbiAqL1xuLyogQmFzZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAqIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4gKiAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4gKiAzLiBDb3JyZWN0cyB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFIDYvNyB3aGVuIGJvZHkgYGZvbnQtc2l6ZWAgaXMgc2V0IHVzaW5nXG4gKiAgYGVtYCB1bml0cy5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFByZXZlbnRzIG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuYTphY3RpdmUsIGE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqIDIuIEltcHJvdmVzIGltYWdlIHF1YWxpdHkgd2hlbiBzY2FsZWQgaW4gSUUgNy5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICogQ29ycmVjdCBmb250IGZhbWlseSBzZXQgb2RkbHkgaW4gSUUgNiwgU2FmYXJpIDQvNSwgYW5kIENocm9tZS5cbiAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqIDQuIEltcHJvdmVzIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqIDQuIFJlbW92ZXMgaW5uZXIgc3BhY2luZyBpbiBJRSA3IHdpdGhvdXQgYWZmZWN0aW5nIG5vcm1hbCB0ZXh0IGlucHV0cy5cbiAqICBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFIDYuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKiAgS25vd24gaXNzdWU6IGV4Y2VzcyBwYWRkaW5nIHJlbWFpbnMgaW4gSUUgNi5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqIDMuIENvcnJlY3RzIHRleHQgbm90IHdyYXBwaW5nIGluIEZpcmVmb3ggMy5cbiAqIDQuIENvcnJlY3RzIGFsaWdubWVudCBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBaZXJvIEJsb2NrcyBWYXJpYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFRhYmxlIG9mIENvbnRlbnRzOlxuICpcbiAqICAxLiBDb2xvcnNcbiAqICAyLiBCYWRnZXNcbiAqICAzLiBCdXR0b25zXG4gKiAgVE9ETzogNC4gQ2FyZHNcbiAqICBUT0RPOiA1LiBDb2xsYXBzaWJsZVxuICogIFRPRE86IDYuIENoaXBzXG4gKiAgVE9ETzogNy4gRGF0ZSBQaWNrZXJcbiAqICBUT0RPOiA4LiBEcm9wZG93blxuICogIDkuIEZvbnRzXG4gKiAgMTAuIEZvcm1zXG4gKiAgMTEuIEdsb2JhbFxuICogIFRPRE86IDEyLiBOYXZpZ2F0aW9uIEJhclxuICogIFRPRE86IDEzLiBOYXZpZ2F0aW9uIERyYXdlclxuICogIFRPRE86IDE0LiBTbGlkZXJcbiAqICBUT0RPOiAxNS4gU3Bpbm5lcnMgfCBMb2FkZXJzXG4gKiAgVE9ETzogMTYuIFRhYnNcbiAqICBUT0RPOiAxNy4gVGFibGVzXG4gKiAgVE9ETzogMTguIFRvYXN0c1xuICogIDE5LiBUeXBvZ3JhcGh5XG4gKiAgVE9ETzogMjAuIEZsb3cgVGV4dFxuICogIFRPRE86IDIxLiBDb2xsZWN0aW9uc1xuICogIFRPRE86IDIyLiBQcm9ncmVzcyBCYXJcbiAqICAyMy4gTGlzdHNcbiAqL1xuLyogMS4gQ29sb3JzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogMi4gQmFkZ2VzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogMy4gQnV0dG9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIDkuIEZvbnRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogMTAuIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogMTEuIEdsb2JhbFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIDE2LiBCb3R0b20gbmF2aWdhdGlvbiBiYXIgLyBUYWJzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogMTkuIFR5cG9ncmFwaHlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiAyMy4gTGlzdFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFJlY3RhbmdsZTogKi9cbi5pZy1mb3JtLWdyb3VwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBtaW4taGVpZ2h0OiA0MHB4OyB9XG4gIC5pZy1mb3JtLWdyb3VwIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgLyogV2ViS2l0LCBCbGluaywgRWRnZSAqL1xuICAgIGNvbG9yOiAjNzU3NTc1OyB9XG5cbi5pZy1mb3JtLWdyb3VwIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgY29sb3I6ICM3NTc1NzU7XG4gIGN1cnNvcjogdGV4dDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0LCBzY2FsZSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpLCBjb2xvciAwLjNzIGVhc2UtaW4tb3V0OyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC0tZmlsbGVkIH4gbGFiZWwsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC0tcGxhY2Vob2xkZXIgfiBsYWJlbCB7XG4gIGNvbG9yOiAjYThhOGE4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDAuNzUpOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC0tZmlsbGVkIH4gbGFiZWwge1xuICBjb2xvcjogI2E4YThhODsgfVxuXG4uaWctZm9ybS1ncm91cF9faW5wdXQtLWZvY3VzZWQgfiBsYWJlbCB7XG4gIGNvbG9yOiAjMDM3NWJlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDAuNzUpOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dCwgLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhLCAuaWctZm9ybS1ncm91cF9faW5wdXQtLWZpbGxlZCwgLmlnLWZvcm0tZ3JvdXBfX2lucHV0LS1mb2N1c2VkLCAuaWctZm9ybS1ncm91cF9faW5wdXQtLXBsYWNlaG9sZGVyIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMTcsIDExNywgMTE3LCAwLjUpO1xuICBjb2xvcjogIzQ4NDg0ODtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dDpmb2N1cywgLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhOmZvY3VzIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMzc1YmU7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0OmRpc2FibGVkLCAuaWctZm9ybS1ncm91cF9fdGV4dGFyZWE6ZGlzYWJsZWQge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICM4ODg4ODg7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgxMTcsIDExNywgMTE3LCAwLjUpOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy12YWxpZFtyZXF1aXJlZF0sIC5uZy12YWxpZFtyZXF1aXJlZF0uaWctZm9ybS1ncm91cF9fdGV4dGFyZWEsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy12YWxpZC5yZXF1aXJlZCwgLm5nLXZhbGlkLnJlcXVpcmVkLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM0Q0FGNTA7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLXZhbGlkW3JlcXVpcmVkXSB+IGxhYmVsLCAubmctdmFsaWRbcmVxdWlyZWRdLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhIH4gbGFiZWwsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy12YWxpZC5yZXF1aXJlZCB+IGxhYmVsLCAubmctdmFsaWQucmVxdWlyZWQuaWctZm9ybS1ncm91cF9fdGV4dGFyZWEgfiBsYWJlbCB7XG4gIGNvbG9yOiAjNENBRjUwOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy13YXJuaW5nLCAubmctd2FybmluZy5pZy1mb3JtLWdyb3VwX190ZXh0YXJlYSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBvcmFuZ2U7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLXdhcm5pbmcgfiBsYWJlbCwgLm5nLXdhcm5pbmcuaWctZm9ybS1ncm91cF9fdGV4dGFyZWEgfiBsYWJlbCB7XG4gIGNvbG9yOiBvcmFuZ2U7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLWludmFsaWQubmctdG91Y2hlZCwgLm5nLWludmFsaWQubmctdG91Y2hlZC5pZy1mb3JtLWdyb3VwX190ZXh0YXJlYSwgLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLWludmFsaWQubmctdG91Y2hlZDpub3QoZm9ybSksIC5uZy1pbnZhbGlkLm5nLXRvdWNoZWQuaWctZm9ybS1ncm91cF9fdGV4dGFyZWE6bm90KGZvcm0pIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGNDQzMzY7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLWludmFsaWQubmctdG91Y2hlZCB+IGxhYmVsLCAubmctaW52YWxpZC5uZy10b3VjaGVkLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhIH4gbGFiZWwsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy1pbnZhbGlkOm5vdChmb3JtKS5uZy10b3VjaGVkIH4gbGFiZWwsIC5uZy1pbnZhbGlkLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhOm5vdChmb3JtKS5uZy10b3VjaGVkIH4gbGFiZWwge1xuICBjb2xvcjogI0Y0NDMzNjsgfVxuXG4uaWctZm9ybS1ncm91cF9fdGV4dGFyZWEge1xuICByZXNpemU6IG5vbmU7IH1cblxuLmlnLWNvbnRyb2xfX3JhZGlvIH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5pZy1jb250cm9sX19yYWRpbyB+IC5pZy1jb250cm9sX19sYWJlbDpiZWZvcmUsIC5pZy1jb250cm9sX19yYWRpbyB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSA1MCU7IH1cbiAgLmlnLWNvbnRyb2xfX3JhZGlvIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluOyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpub3QoOmNoZWNrZWQpIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cblxuLmlnLWNvbnRyb2xfX3JhZGlvOm5vdCg6Y2hlY2tlZCkgfiAuaWctY29udHJvbF9fbGFiZWw6YWZ0ZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCAjNzU3NTc1OyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpjaGVja2VkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMzc1YmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMzc1YmU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTsgfVxuXG4uaWctY29udHJvbF9fcmFkaW86Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMzc1YmU7IH1cblxuLmlnLWNvbnRyb2xfX3JhZGlvOmRpc2FibGVkIH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiAjODg4ODg4OyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpkaXNhYmxlZDpub3QoOmNoZWNrZWQpIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzg4ODg4ODsgfVxuXG4uaWctY29udHJvbF9fcmFkaW86ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4ODg4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjODg4ODg4OyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpkaXNhYmxlZDpjaGVja2VkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzg4ODg4ODsgfVxuXG4uaWctY29udHJvbF9fY2J4IH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5pZy1jb250cm9sX19jYnggfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjsgfVxuICAuaWctY29udHJvbF9fY2J4IH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSwgLmlnLWNvbnRyb2xfX2NieCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uaWctY29udHJvbF9fY2J4Om5vdCg6Y2hlY2tlZCkgfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgd2lkdGg6IDlweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBib3JkZXI6IG5vbmU7XG4gIHRvcDogMXB4O1xuICBsZWZ0OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWigzN2RlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZykgc2NhbGUoMC4xKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAyMCUgNDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7IH1cblxuLmlnLWNvbnRyb2xfX2NieDpub3QoOmNoZWNrZWQpIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzc1NzU3NTtcbiAgei1pbmRleDogMDsgfVxuXG4uaWctY29udHJvbF9fY2J4OmNoZWNrZWQgfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgdG9wOiAxcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiA5cHg7XG4gIGhlaWdodDogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmY7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDM3ZGVnKSBzY2FsZSgxKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTsgfVxuXG4uaWctY29udHJvbF9fY2J4OmNoZWNrZWQgfiAuaWctY29udHJvbF9fbGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDM3NWJlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDM3NWJlOyB9XG5cbi5pZy1jb250cm9sX19jYng6ZGlzYWJsZWQgfiAuaWctY29udHJvbF9fbGFiZWwge1xuICBjb2xvcjogI2QxZDFkMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmlnLWNvbnRyb2xfX2NieDpkaXNhYmxlZDpjaGVja2VkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5pZy1jb250cm9sX19jYng6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODg4ODg7XG4gIGJvcmRlci1jb2xvcjogIzg4ODg4ODsgfVxuXG4uaWctY29udHJvbF9fY2J4OmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5pZy1jb250cm9sX19jYng6ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogIzg4ODg4ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmlnLWNvbnRyb2xfX2NieDppbmRldGVybWluYXRlIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAzNzViZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzAzNzViZTsgfVxuXG4uaWctY29udHJvbF9fc3dpdGNoIH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAxNnB4O1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzU3NTc1O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW47XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5pZy1jb250cm9sX19zd2l0Y2ggfiAuaWctY29udHJvbF9fbGFiZWw6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgdG9wOiAtM3B4O1xuICAgIGxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDcyLCA3MiwgNzIsIDAuNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjsgfVxuXG4uaWctY29udHJvbF9fc3dpdGNoOmNoZWNrZWQgfiAuaWctY29udHJvbF9fbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMsIDExNywgMTkwLCAwLjUpOyB9XG4gIC5pZy1jb250cm9sX19zd2l0Y2g6Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gICAgbGVmdDogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDM3NWJlOyB9XG5cbi5pZy1jb250cm9sX19zd2l0Y2g6ZGlzYWJsZWQgfiAuaWctY29udHJvbF9fbGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuaWctY29udHJvbF9fc3dpdGNoOmRpc2FibGVkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjRDFEMUQxO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuXG4uaWctbGlzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmlnLWxpc3Q6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cblxuaWctbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4uaWctbGlzdF9faGVhZGVyIHtcbiAgY29sb3I6ICMwMzc1YmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGhlaWdodDogM2VtO1xuICBsaW5lLWhlaWdodDogM2VtO1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLmlnLWxpc3RfX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgaGVpZ2h0OiAzZW07XG4gIGxpbmUtaGVpZ2h0OiAzZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBjb2xvcjogIzQ4NDg0ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgei1pbmRleDogMjsgfVxuXG4uaWctbGlzdF9faXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmY2ZjO1xuICBib3gtc2hhZG93OiA0cHggMHB4IDZweCAtM3B4IHJnYmEoMTY3LCAxNjcsIDE2NywgMC4zKTsgfVxuXG4uaWctYXZhdGFyLCAuaWctYXZhdGFyLS1yb3VuZGVkIHtcbiAgbWF4LXdpZHRoOiAzZW07XG4gIG1heC1oZWlnaHQ6IDNlbTsgfVxuXG4uaWctYXZhdGFyLS1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlIDUwJTsgfVxuXG4uaWctYnV0dG9uLCAuaWctYnV0dG9uLS1mbGF0LCAuaWctYnV0dG9uLS1yYWlzZWQsIC5pZy1idXR0b24tLWdyYWRpZW50LCAuaWctYnV0dG9uLS1mYWIsIC5pZy1idXR0b24tLWRpc2FibGVkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDg4cHg7XG4gIHBhZGRpbmc6IDAuMzc1ZW0gMWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzQ4NDg0ODtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH1cblxuLmlnLWJ1dHRvbi0tZmxhdDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNGMEYwRjA7IH1cblxuLmlnLWJ1dHRvbi0tZmxhdDpmb2N1cywgLmlnLWJ1dHRvbi0tZmxhdDphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjRDFEMUQxOyB9XG5cbi5pZy1idXR0b24tLXJhaXNlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDM3NWJlO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDcyLCA3MiwgNzIsIDAuNSk7IH1cbiAgLmlnLWJ1dHRvbi0tcmFpc2VkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDM2NmE1O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuICAuaWctYnV0dG9uLS1yYWlzZWQ6Zm9jdXMsIC5pZy1idXR0b24tLXJhaXNlZDphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMwMzY2YTU7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wMyksIDBweCA3cHggOHB4IDBweCByZ2JhKDg4LCA4OCwgODgsIDAuNSk7IH1cblxuLmlnLWJ1dHRvbi0tZ3JhZGllbnQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSByaWdodCwgI2U0MWM3NywgIzczMTk2Myk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTJweCByZ2JhKDEwNywgMjMsIDkyLCAwLjgpOyB9XG4gIC5pZy1idXR0b24tLWdyYWRpZW50OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAjY2UxOTZiLCAjNWUxNDUxKTtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IC0ycHggcmdiYSgxMDcsIDIzLCA5MiwgMC44KTsgfVxuICAuaWctYnV0dG9uLS1ncmFkaWVudDpmb2N1cywgLmlnLWJ1dHRvbi0tZ3JhZGllbnQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAjY2UxOTZiLCAjNWUxNDUxKTtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxMnB4IC0xcHggcmdiYSg5NCwgMjAsIDgxLCAwLjc1KTsgfVxuXG4uaWctYnV0dG9uLS1mYWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIG1pbi13aWR0aDogMXB4O1xuICB3aWR0aDogMy41ZW07XG4gIGhlaWdodDogMy41ZW07XG4gIGJhY2tncm91bmQ6ICMwMzc1YmU7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDcyLCA3MiwgNzIsIDAuNSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5pZy1idXR0b24tLWZhYjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMHB4IDRweCA4cHggMHB4IHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuICAuaWctYnV0dG9uLS1mYWI6Zm9jdXMsIC5pZy1idXR0b24tLWZhYjphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMwMzY2YTU7IH1cblxuLmlnLWJ1dHRvbi0tZGlzYWJsZWQge1xuICBjb2xvcjogI0FFQUVBRTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmlnLXRhYi1iYXItaW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLmlnLXRhYi1iYXItaW5uZXJfX21lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1NnB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMzMzO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5pZy10YWItYmFyLWlubmVyX19tZW51LS10b3Age1xuICB0b3A6IDA7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDcyLCA3MiwgNzIsIDAuMSk7IH1cblxuLmlnLXRhYi1iYXItaW5uZXJfX21lbnUtLWJvdHRvbSB7XG4gIGJveC1zaGFkb3c6IDBweCAtMnB4IDRweCAwcHggcmdiYSg3MiwgNzIsIDcyLCAwLjEpOyB9XG5cbi5pZy10YWItYmFyLWlubmVyX19tZW51IC5pZy10YWItYmFyLWlubmVyX19tZW51LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogODBweDtcbiAgbWF4LXdpZHRoOiAxNjhweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uaWctdGFiLWJhci1pbm5lcl9fbWVudSAuaWctdGFiLWJhci1pbm5lcl9fbWVudS1pdGVtLS1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5pZy10YWItYmFyLWlubmVyX19tZW51IC5pZy10YWItYmFyLWlubmVyX19tZW51LWl0ZW0tLXNlbGVjdGVkIC50YWItbGFiZWwsIC5pZy10YWItYmFyLWlubmVyX19tZW51IC5pZy10YWItYmFyLWlubmVyX19tZW51LWl0ZW0tLXNlbGVjdGVkIC50YWItaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjMDM3NWJlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlLWluOyB9XG5cbi5pZy10YWItYmFyLWlubmVyIC50YWItbGFiZWwge1xuICBtYXgtd2lkdGg6IDE2OHB4O1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogLjc1OyB9XG5cbi5pZy10YWItYmFyLWlubmVyIC50YWItaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAyNHB4O1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAuNzU7IH1cblxuLmlnLWJhZGdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzczMTk2MztcbiAgbWFyZ2luLXJpZ2h0OiAtMjUlO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSA1MCU7XG4gIHBhZGRpbmc6IDJweDtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4IHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuXG4uaWctYmFkZ2UtLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlRpdGlsbGl1bSBXZWJcIjtcbiAgc3JjOiBsb2NhbChUaXRpbGxpdW0gV2ViIExpZ2h0KSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLUxpZ2h0LnR0ZlwiKTtcbiAgc3JjOiB1cmwoXCIuLi9kaXN0L2ZvbnRzL3RpdGlsbGl1bS9UaXRpbGxpdW1XZWItTGlnaHQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJUaXRpbGxpdW0gV2ViXCI7XG4gIHNyYzogbG9jYWwoVGl0aWxsaXVtIFdlYiBSZWd1bGFyKSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLVJlZ3VsYXIudHRmXCIpO1xuICBzcmM6IHVybChcIi4uL2Rpc3QvZm9udHMvdGl0aWxsaXVtL1RpdGlsbGl1bVdlYi1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiVGl0aWxsaXVtIFdlYlwiO1xuICBzcmM6IGxvY2FsKFRpdGlsbGl1bSBXZWIgU2VtaS1Cb2xkKSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLVNlbWlCb2xkLnR0ZlwiKTtcbiAgc3JjOiB1cmwoXCIuLi9kaXN0L2ZvbnRzL3RpdGlsbGl1bS9UaXRpbGxpdW1XZWItU2VtaUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJUaXRpbGxpdW0gV2ViXCI7XG4gIHNyYzogbG9jYWwoVGl0aWxsaXVtIFdlYiBCb2xkKSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLUJvbGQudHRmXCIpO1xuICBzcmM6IHVybChcIi4uL2Rpc3QvZm9udHMvdGl0aWxsaXVtL1RpdGlsbGl1bVdlYi1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtc2l6ZS1hZGp1c3Q6IDAuNTg7XG4gIGZvbnQtZmFtaWx5OiAnVGl0aWxsaXVtIFdlYicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjNDg0ODQ4OyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LXdlaWdodDogNjAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjVlbTsgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjYyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NWVtOyB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNWVtOyB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVlbTsgfVxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMi44MTI1ZW07IH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjVlbTsgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVlbTsgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtOyB9XG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjM3NWVtOyB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBsaW5lLWhlaWdodDogMi44MTI1ZW07IH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjE4NzVlbTsgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtOyB9IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKC4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24taWNvbnMvaWNvbmZvbnQvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLmVvdCk7XG4gIC8qIEZvciBJRTYtOCAqL1xuICBzcmM6IGxvY2FsKFwiTWF0ZXJpYWwgSWNvbnNcIiksIGxvY2FsKFwiTWF0ZXJpYWxJY29ucy1SZWd1bGFyXCIpLCB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIud29mZjIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIud29mZikgZm9ybWF0KFwid29mZlwiKSwgdXJsKC4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24taWNvbnMvaWNvbmZvbnQvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLnR0ZikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuLm1hdGVyaWFsLWljb25zIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICAvKiBQcmVmZXJyZWQgaWNvbiBzaXplICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIC8qIFN1cHBvcnQgZm9yIGFsbCBXZWJLaXQgYnJvd3NlcnMuICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAvKiBTdXBwb3J0IGZvciBTYWZhcmkgYW5kIENocm9tZS4gKi9cbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLyogU3VwcG9ydCBmb3IgRmlyZWZveC4gKi9cbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLyogU3VwcG9ydCBmb3IgSUUuICovXG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnOyB9XG5cbi5idG4tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uaWctY29udHJvbF9fcmFkaW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pZy1jb250cm9sX19jYngge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pZy1jb250cm9sX19zd2l0Y2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbmlnLXRhYiAuaWctdGFiLWlubmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cbiAgaWctdGFiIC5pZy10YWItaW5uZXIuc2VsZWN0ZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIGlnLXRhYiAuaWctdGFiLWlubmVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG5Aa2V5ZnJhbWVzIHNlbGVjdGVkIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSg0NC41KTsgfSB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qIE1haW4gTmF2aWdhdGlvbiBEcmF3ZXIgc3RhdGUgc3R5bGVzICovXG4uaWctbmF2LWRyYXdlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgbWF4LXdpZHRoOiA5MCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RBREVFNDtcbiAgcGFkZGluZzogMC43ZW07XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKnRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjU1LCAwLCAwLjEsIDEpOyovXG4gIC8qIHVzZSBmdWxsIHN5bnRheCwgaU9TIFNhZmFyaSB3b24ndCB3b3JrIHdpdGggdHJhbnNpdGlvbjogd2lkdGggLjNzIGVhc2UtaW4sIHRyYW5zZm9ybSAuM3MgZWFzZS1pbjsgc2hvcnRoYW5kICovXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzLCAwLjI1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4sIGVhc2UtaW47XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzLCAwcztcbiAgYm94LXNoYWRvdzogMnB4IDJweCAycHggMXB4IHJnYmEoODAsIDgwLCA4MCwgMC4xKTtcbiAgLyogc3RhdGVzICovIH1cbiAgLmlnLW5hdi1kcmF3ZXIuY29sbGFwc2VkIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDBweCwgMHB4LCAwcHgpOyB9XG4gIC5pZy1uYXYtZHJhd2VyLnJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJveC1zaGFkb3c6IC0ycHggLTJweCAycHggMXB4IHJnYmEoODAsIDgwLCA4MCwgMC4xKTsgfVxuICAuaWctbmF2LWRyYXdlci5jb2xsYXBzZWQucmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwcHgsIDBweCwgMHB4KTsgfVxuICAuaWctbmF2LWRyYXdlci5taW5pIHtcbiAgICB3aWR0aDogNjBweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzLCAwLjJzOyB9XG4gIC5pZy1uYXYtZHJhd2VyLnBpbm5lZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmlnLW5hdi1kcmF3ZXIucGlubmVkLmNvbGxhcHNlZCB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBVdGlsaXR5IGNsYXNzZXMgZm9yIGFjdGl2ZSBwYW4gKi9cbi5pZy1uYXYtZHJhd2VyLnBhbm5pbmcge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLmlnLW5hdi1kcmF3ZXItb3ZlcmxheS5wYW5uaW5nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLyogdHJ5IGxheWVyIGNyZWF0aW9uIG1hbnVhbGx5IGluIGFkdmFuY2UgZm9yIG9wYWNpdHkgKi9cbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAuaWctbmF2LWRyYXdlci1vdmVybGF5LnBhbm5pbmcuaGlkZGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5zdHlsZS1kdW1teSB7XG4gIGhlaWdodDogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAvKiBwb3RlbnRpYWxseSBkb24ndCB1c2UgdGhpcz8gKi8gfVxuXG4vKiBOYXZpZ2F0aW9uIERyYXdlciBvdmVybGF5IHN0eWxlcyAqL1xuLmlnLW5hdi1kcmF3ZXItb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTM2LCAxMzYsIDEzNiwgMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdmlzaWJpbGl0eTtcbiAgLyogb3BhY2l0eSBtdXN0IG1hdGNoIGRyYXdlciB0cmFuc2l0aW9uLCBzdGVwIG92ZXIgdmlzaWJpbGl0eSB0byByZWR1Y2UgYW5pbWF0aW9uIGNvc3QgKi9cbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXMsIDAuMjVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiwgc3RlcC1zdGFydDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHMsIDBzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuaWctbmF2LWRyYXdlci1vdmVybGF5LmhpZGRlbiB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4sIHN0ZXAtZW5kO1xuICAgIC8qIHVzZSB2aXNpYmlsaXR5IHNvIG9wYWNpdHkgY2FuIGJlIGFuaW1hdGVkICovXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmlnLW5hdi1kcmF3ZXItb3ZlcmxheS5waW5uZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlnLWNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi5pZy1jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xuICBsZWZ0OiAyNSU7XG4gIHJpZ2h0OiAyNSU7XG4gIGJvdHRvbTogMjUlOyB9XG4gIC5pZy1jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cbiAgLmlnLWNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG4uaWctY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pZy1jYXJvdXNlbC1pbm5lciAuaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAtby10cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICB0cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAgIHBlcnNwZWN0aXZlOiAxMDAwcHg7IH1cbiAgICAuaWctY2Fyb3VzZWwtaW5uZXIgLml0ZW0gLm5leHQsXG4gICAgLmlnLWNhcm91c2VsLWlubmVyIC5pdGVtIC5wcmV2LFxuICAgIC5pZy1jYXJvdXNlbC1pbm5lciAuaXRlbSAubmV4dC5sZWZ0LFxuICAgIC5pZy1jYXJvdXNlbC1pbm5lciAuaXRlbSAucHJldi5yaWdodCxcbiAgICAuaWctY2Fyb3VzZWwtaW5uZXIgLml0ZW0gLmFjdGl2ZS5yaWdodCxcbiAgICAuaWctY2Fyb3VzZWwtaW5uZXIgLml0ZW0gLmFjdGl2ZS5sZWZ0IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5pZy1jYXJvdXNlbC1pbm5lciAuYWN0aXZlLFxuICAuaWctY2Fyb3VzZWwtaW5uZXIgLm5leHQsXG4gIC5pZy1jYXJvdXNlbC1pbm5lciAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmlnLWNhcm91c2VsLWlubmVyIC5uZXh0LFxuICAuaWctY2Fyb3VzZWwtaW5uZXIgLnByZXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmlnLWNhcm91c2VsLWlubmVyIC5uZXh0IHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5pZy1jYXJvdXNlbC1pbm5lciAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7IH1cblxuLmlnLWNhcm91c2VsLWNvbnRyb2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMjZweDsgfVxuICAuaWctY2Fyb3VzZWwtY29udHJvbCA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmlnLWNhcm91c2VsLWNvbnRyb2wgc3BhbiB7XG4gICAgcGFkZGluZzogMTBweDsgfVxuXG4ubGVmdCB7XG4gIGxlZnQ6IDA7IH1cblxuLnJpZ2h0IHtcbiAgcmlnaHQ6IDA7IH1cblxuLmlnLWdvVXAge1xuICBhbmltYXRpb246IGdvVXAgMXMgZWFzZSBib3RoOyB9XG5cbi5pZy1nb0Rvd24ge1xuICBhbmltYXRpb246IGdvRG93biAxcyBlYXNlIGJvdGg7IH1cblxuLmlnLWdvTGVmdCB7XG4gIGFuaW1hdGlvbjogZ29MZWZ0IDFzIGVhc2UgYm90aDsgfVxuXG4uaWctZ29SaWdodCB7XG4gIGFuaW1hdGlvbjogZ29SaWdodCAxcyBlYXNlIGJvdGg7IH1cblxuLmlnLWZhZGUge1xuICBhbmltYXRpb246IGZhZGUgM3MgZWFzZSBib3RoOyB9XG5cbkBrZXlmcmFtZXMgZmFkZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAuMjU7IH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IC4wOyB9IH1cblxuQGtleWZyYW1lcyBnb1VwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9IH1cblxuQGtleWZyYW1lcyBnb0Rvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9IH1cblxuQGtleWZyYW1lcyBnb0xlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9IH1cblxuQGtleWZyYW1lcyBnb1JpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9IH1cbiIsImEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuaHRtbCB7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0Zm9udC1zaXplLWFkanVzdDogMC41ODtcblx0Zm9udC1mYW1pbHk6ICdUaXRpbGxpdW0gV2ViJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAkb2ZmLWJsYWNrO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZS1waG9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoMS1saW5lLWhlaWdodC1waG9uZTtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMi1mb250LXNpemUtcGhvbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDItbGluZS1oZWlnaHQtcGhvbmU7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDMtZm9udC1zaXplLXBob25lO1xuICAgICAgICBsaW5lLWhlaWdodDogJGgzLWxpbmUtaGVpZ2h0LXBob25lO1xuICAgIH1cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZS1waG9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoNC1saW5lLWhlaWdodC1waG9uZTsgICAgIFxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQtcGhvbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6ICRoMS1mb250LXNpemUtdGFibGV0O1xuICAgICAgICBsaW5lLWhlaWdodDogJGgxLWxpbmUtaGVpZ2h0LXRhYmxldDtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMi1mb250LXNpemUtdGFibGV0O1xuICAgICAgICBsaW5lLWhlaWdodDogJGgyLWxpbmUtaGVpZ2h0LXRhYmxldDtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6ICRoMy1mb250LXNpemUtdGFibGV0O1xuICAgICAgICBsaW5lLWhlaWdodDogJGgzLWxpbmUtaGVpZ2h0LXRhYmxldDtcbiAgICB9XG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6ICRoNC1mb250LXNpemUtdGFibGV0O1xuICAgICAgICBsaW5lLWhlaWdodDogJGg0LWxpbmUtaGVpZ2h0LXRhYmxldDsgICAgIFxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQtZGVza3RvcDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGxhcmdlLXNjcmVlbikge1xuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDEtZm9udC1zaXplLWRlc2t0b3A7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDEtbGluZS1oZWlnaHQtZGVza3RvcDtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMi1mb250LXNpemUtZGVza3RvcDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoMi1saW5lLWhlaWdodC1kZXNrdG9wO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZS1kZXNrdG9wO1xuICAgICAgICBsaW5lLWhlaWdodDogJGgzLWxpbmUtaGVpZ2h0LWRlc2t0b3A7XG4gICAgfVxuICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAkaDQtZm9udC1zaXplLWRlc2t0b3A7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDQtbGluZS1oZWlnaHQtZGVza3RvcDsgICAgIFxuICAgIH1cbn0iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIuZW90KTsgLyogRm9yIElFNi04ICovXG4gIHNyYzogbG9jYWwoJ01hdGVyaWFsIEljb25zJyksXG4gICAgICAgbG9jYWwoJ01hdGVyaWFsSWNvbnMtUmVndWxhcicpLFxuICAgICAgIHVybCguLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWljb25zL2ljb25mb250L01hdGVyaWFsSWNvbnMtUmVndWxhci53b2ZmMikgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgIHVybCguLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWljb25zL2ljb25mb250L01hdGVyaWFsSWNvbnMtUmVndWxhci53b2ZmKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbi5tYXRlcmlhbC1pY29ucyB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMjRweDsgIC8qIFByZWZlcnJlZCBpY29uIHNpemUgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXJlY3Rpb246IGx0cjtcblxuICAvKiBTdXBwb3J0IGZvciBhbGwgV2ViS2l0IGJyb3dzZXJzLiAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblxuICAvKiBTdXBwb3J0IGZvciBTYWZhcmkgYW5kIENocm9tZS4gKi9cbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblxuICAvKiBTdXBwb3J0IGZvciBGaXJlZm94LiAqL1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gIC8qIFN1cHBvcnQgZm9yIElFLiAqL1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbn0iLCIvLyBHZW5lcmFsIGFwcGxpY2F0aW9uIHN0eWxpbmcgcnVsZXNcbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcblx0Ym94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIC8vIG1hcmdpbjogMCAxMHB4O1xufVxuXG4kYnJvd3Nlci1jb250ZXh0OiAxNnB4OyIsIi8qIE1haW4gTmF2aWdhdGlvbiBEcmF3ZXIgc3RhdGUgc3R5bGVzICovXG5cbiRiYWNrZ3JvdW5kOiAjREFERUU0O1xuJG92ZXJsYXk6IHJnYmEoMTM2LDEzNiwxMzYsMC41KTtcbiRzaGFkb3c6IHJnYmEoODAsIDgwLCA4MCwgMC4xKTtcblxuLmlnLW5hdi1kcmF3ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIHBhZGRpbmc6IDAuN2VtO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvKnRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjU1LCAwLCAwLjEsIDEpOyovXG4gICAgLyogdXNlIGZ1bGwgc3ludGF4LCBpT1MgU2FmYXJpIHdvbid0IHdvcmsgd2l0aCB0cmFuc2l0aW9uOiB3aWR0aCAuM3MgZWFzZS1pbiwgdHJhbnNmb3JtIC4zcyBlYXNlLWluOyBzaG9ydGhhbmQgKi9cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzLCAwLjI1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiwgZWFzZS1pbjtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcywgMHM7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCAycHggMXB4ICRzaGFkb3c7XG4gICAgXG4gICAgLyogc3RhdGVzICovXG4gICAgXG4gICAgJi5jb2xsYXBzZWQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDBweCwwcHgsMHB4KTsgICAgXG4gICAgfVxuICAgIFxuICAgICYucmlnaHQge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm94LXNoYWRvdzogLTJweCAtMnB4IDJweCAxcHggJHNoYWRvdztcbiAgICB9XG4gICAgXG4gICAgJi5jb2xsYXBzZWQucmlnaHQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMHB4LDBweCwwcHgpO1xuICAgIH1cbiAgICBcbiAgICAmLm1pbmkge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycywgMC4ycztcbiAgICB9XG4gICAgXG4gICAgJi5waW5uZWQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IFxuICAgIH1cbiAgICBcbiAgICAmLnBpbm5lZC5jb2xsYXBzZWQge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHdpZHRoOiAwOyAgICAgIFxuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn0gIFxuICAgIFxuLyogVXRpbGl0eSBjbGFzc2VzIGZvciBhY3RpdmUgcGFuICovXG4uaWctbmF2LWRyYXdlci5wYW5uaW5nIHtcbiAgICBvdmVyZmxvdy14OmhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBub25lOyAgICAgIFxufVxuXG4uaWctbmF2LWRyYXdlci1vdmVybGF5LnBhbm5pbmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApOyAvKiB0cnkgbGF5ZXIgY3JlYXRpb24gbWFudWFsbHkgaW4gYWR2YW5jZSBmb3Igb3BhY2l0eSAqL1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgXG4gICAgJi5oaWRkZW4ge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyAgICBcbiAgICB9XG59XG5cbi5zdHlsZS1kdW1teSB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgLyogcG90ZW50aWFsbHkgZG9uJ3QgdXNlIHRoaXM/ICovXG59XG5cblxuXG4vKiBOYXZpZ2F0aW9uIERyYXdlciBvdmVybGF5IHN0eWxlcyAqL1xuLmlnLW5hdi1kcmF3ZXItb3ZlcmxheSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3ZlcmxheTtcbiAgIFxuICAgXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdmlzaWJpbGl0eTtcbiAgICAvKiBvcGFjaXR5IG11c3QgbWF0Y2ggZHJhd2VyIHRyYW5zaXRpb24sIHN0ZXAgb3ZlciB2aXNpYmlsaXR5IHRvIHJlZHVjZSBhbmltYXRpb24gY29zdCAqL1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzLCAwLjI1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiwgc3RlcC1zdGFydDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcywgMHM7XG4gICAgXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgXG4gICAgJi5oaWRkZW4ge1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiwgc3RlcC1lbmQ7XG4gICAgICAgIC8qIHVzZSB2aXNpYmlsaXR5IHNvIG9wYWNpdHkgY2FuIGJlIGFuaW1hdGVkICovXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIFxuICAgICYucGlubmVkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgICAgICAgICAgICBcbiAgICB9XG59IiwiJGVsZW1lbnRTZXBhcmF0b3I6ICdfXyc7XG4kc3ViRWxlbWVudFNlcGFyYXRvcjogJy0nO1xuJG1vZGlmaWVyU2VwYXJhdG9yOiAnLS0nO1xuXG5AZnVuY3Rpb24gY29udGFpbnNNb2RpZmllcigkc2VsZWN0b3IpIHtcbiAgICAkc2VsZWN0b3I6IHNlbGVjdG9yVG9TdHJpbmcoJHNlbGVjdG9yKTtcbiAgICBAaWYgc3RyLWluZGV4KCRzZWxlY3RvciwgJG1vZGlmaWVyU2VwYXJhdG9yKSB7XG4gICAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG59XG5cbkBmdW5jdGlvbiBzZWxlY3RvclRvU3RyaW5nKCRzZWxlY3Rvcikge1xuICAgICRzZWxlY3RvcjogaW5zcGVjdCgkc2VsZWN0b3IpOyAvL2Nhc3QgdG8gc3RyaW5nXG4gICAgJHNlbGVjdG9yOiBzdHItc2xpY2UoJHNlbGVjdG9yLCAyLCAtMik7IC8vcmVtb3ZlIGJyYWNrZXRzXG4gICAgQHJldHVybiAkc2VsZWN0b3I7XG59XG5cbkBmdW5jdGlvbiBnZXRCbG9jaygkc2VsZWN0b3IpIHtcbiAgICAkc2VsZWN0b3I6IHNlbGVjdG9yVG9TdHJpbmcoJHNlbGVjdG9yKTtcbiAgICAkbW9kaWZpZXJTdGFydDogc3RyLWluZGV4KCRzZWxlY3RvciwgJG1vZGlmaWVyU2VwYXJhdG9yKSAtIDE7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHNlbGVjdG9yLCAwLCAkbW9kaWZpZXJTdGFydCk7XG59XG5cbkBtaXhpbiBiKCRibG9jaykge1xuICAgIC4jeyRibG9ja30ge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBlKCRlbGVtZW50LCAkc3ViLWVsZW1lbnQ6IGZhbHNlKSB7XG4gICAgJHNlbGVjdG9yOiAmO1xuXG4gICAgQGlmIGNvbnRhaW5zTW9kaWZpZXIoJHNlbGVjdG9yKSB7XG5cbiAgICAgICAgJGJsb2NrOiBnZXRCbG9jaygkc2VsZWN0b3IpO1xuXG4gICAgICAgIEBpZiAkc3ViLWVsZW1lbnQgPT0gZmFsc2Uge1xuICAgICAgICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAgICAgICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICAgICAgICAgICN7JGJsb2NrKyRlbGVtZW50U2VwYXJhdG9yKyRlbGVtZW50fSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSBpZiAkc3ViLWVsZW1lbnQgPT0gdHJ1ZSB7XG4gICAgICAgICAgICBAYXQtcm9vdCB7XG4gICAgICAgICAgICAgICAgI3skc2VsZWN0b3IrJHN1YkVsZW1lbnRTZXBhcmF0b3IrJGVsZW1lbnR9IHtcbiAgICAgICAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBpZiAkc3ViLWVsZW1lbnQgPT0gZmFsc2Uge1xuICAgICAgICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAgICAgICAgICN7JHNlbGVjdG9yKyRlbGVtZW50U2VwYXJhdG9yKyRlbGVtZW50fSB7XG4gICAgICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSBpZiAkc3ViLWVsZW1lbnQgPT0gdHJ1ZSB7XG4gICAgICAgICAgICAjeyRzZWxlY3Rvciskc3ViRWxlbWVudFNlcGFyYXRvciskZWxlbWVudH0ge1xuICAgICAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gbSgkbW9kaWZpZXIpIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICAgICN7Jn0jeyRtb2RpZmllclNlcGFyYXRvciskbW9kaWZpZXJ9IHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufSIsIiVpZy1pbnB1dC1kaXNwbGF5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBXZWJLaXQsIEJsaW5rLCBFZGdlICovXG4gICAgICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gICAgfVxufVxuXG4laWctZm9ybS1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gICAgY3Vyc29yOiB0ZXh0O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0LFxuICAgIHNjYWxlIC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC44LCAwLjI1LCAxKSxcbiAgICBjb2xvciAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbiVpZy1mb3JtLWxhYmVsLS1mbG9hdCB7XG4gICAgY29sb3I6ICRsYWJlbC1hY3RpdmUtY29sb3I7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KSBzY2FsZSguNzUpO1xufVxuXG4laWctZm9ybS1sYWJlbC0tZmlsbGVkIHtcbiAgICBjb2xvcjogJGxhYmVsLWFjdGl2ZS1jb2xvcjtcbn1cblxuJWlnLWZvcm0tbGFiZWwtLWZvY3VzZWQge1xuICAgIGNvbG9yOiAkbGFiZWwtZm9jdXMtY29sb3I7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KSBzY2FsZSguNzUpO1xufVxuXG4laWctZm9ybS1pbnB1dCB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlcjtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4laWctZm9ybS1pbnB1dC0tZm9jdXNlZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlci1mb2N1cztcbn1cblxuJWlnLWZvcm0taW5wdXQtLWRpc2FibGVkIHtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDExNywgMTE3LCAxMTcsIC41KTtcbn1cblxuJWlnLWZvcm0tbGFiZWwtLWRpc2FibGVkIHtcbiAgICBjb2xvcjogbGlnaHRlbigkbGFiZWwtY29sb3IsIDgwJSk7XG59XG5cbiVpZy1mb3JtLWlucHV0LS1zdWNjZXNzIHtcbiAgICBib3JkZXItYm90dG9tOiAkaW5wdXQtYm9yZGVyLXN1Y2Nlc3M7XG59XG5cbiVpZy1mb3JtLWxhYmVsLS1zdWNjZXNzIHtcbiAgICBjb2xvcjogJHN1Y2Nlc3MtY29sb3I7XG59XG5cbiVpZy1mb3JtLWlucHV0LS13YXJuIHtcbiAgICBib3JkZXItYm90dG9tOiAkaW5wdXQtYm9yZGVyLXdhcm47XG59XG5cbiVpZy1mb3JtLWxhYmVsLS13YXJuIHtcbiAgICBjb2xvcjogJHdhcm4tY29sb3I7XG59XG5cbiVpZy1mb3JtLWlucHV0LS1lcnJvciB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlci1lcnJvcjtcbn1cblxuJWlnLWZvcm0tbGFiZWwtLWVycm9yIHtcbiAgICBjb2xvcjogJGVycm9yLWNvbG9yO1xufVxuXG4laWctdGV4dGFyZWEge1xuICAgIHJlc2l6ZTogbm9uZTtcbn0iLCIlY2J4LWxibC1kaXNwbGF5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6ICRjaGVja2JveC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRjaGVja2JveC1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gICAgcGFkZGluZy1sZWZ0OiAkY2hlY2tib3gtbGFiZWwtcGFkZGluZztcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRjaGVja2JveC1yYWRpdXM7XG4gICAgfVxufVxuXG4lY2J4LWxibC1ub3RjaGVja2VkLWJlZm9yZSB7XG4gICAgd2lkdGg6ICRjaGVja2JveC10aWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGNoZWNrYm94LXRpY2staGVpZ2h0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB0b3A6IDFweDtcbiAgICBsZWZ0OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVaKDM3ZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMzdkZWcpIHNjYWxlKC4xKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDIwJSA0MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xufVxuXG4lY2J4LWxibC1ub3RjaGVja2VkLWFmdGVyIHtcbiAgICB3aWR0aDogJGNoZWNrYm94LXdpZHRoO1xuICAgIGhlaWdodDogJGNoZWNrYm94LWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1lbXB0eS1jb2xvcjtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4lY2J4LWxibC1jaGVja2VkLWJlZm9yZSB7XG4gICAgdG9wOiAxcHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJGNoZWNrYm94LXRpY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY2hlY2tib3gtdGljay1oZWlnaHQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjaGVja2JveC10aWNrLWNvbG9yO1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRjaGVja2JveC10aWNrLWNvbG9yO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZykgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xufVxuXG4lY2J4LWxibC1jaGVja2VkLWFmdGVyIHtcbiAgICB3aWR0aDogJGNoZWNrYm94LXdpZHRoO1xuICAgIGhlaWdodDogJGNoZWNrYm94LWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmFkaW8tZmlsbC1jb2xvcjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkcmFkaW8tZmlsbC1jb2xvcjtcbn1cblxuJWNieC1sYmwtZGlzYWJsZWQge1xuICAgIGNvbG9yOiAjZDFkMWQxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4lY2J4LWxibC1jaGVja2VkLS1kaXNhYmxlZC1iZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4lY2J4LWxibC1jaGVja2VkLS1kaXNhYmxlZC1hZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xufVxuXG4lY2J4LWxibC1ub3RjaGVja2VkLS1kaXNhYmxlZC1iZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4lY2J4LWxibC1ub3RjaGVja2VkLS1kaXNhYmxlZC1hZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbiVjYngtbGJsLS1pbmRldGVybWluYXRlLWJlZm9yZSB7XG5cbn1cblxuJWNieC1sYmwtLWluZGV0ZXJtaW5hdGUtYWZ0ZXIge1xuICAgIHdpZHRoOiAkY2hlY2tib3gtd2lkdGg7XG4gICAgaGVpZ2h0OiAkY2hlY2tib3gtaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1maWxsLWNvbG9yO1xufSIsIiVyYWRpby1sYmwtZGlzcGxheSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAkcmFkaW8taGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcmFkaW8taGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIHBhZGRpbmctbGVmdDogJGNoZWNrYm94LWxhYmVsLXBhZGRpbmc7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAkcmFkaW8td2lkdGg7XG4gICAgICAgIGhlaWdodDogJHJhZGlvLWhlaWdodDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJHJhZGlvLXJhZGl1cztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxufVxuXG4lcmFkaW8tbGJsLW5vdGNoZWNrZWQtLWJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblxuJXJhZGlvLWxibC1ub3RjaGVja2VkLS1hZnRlciB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWVtcHR5LWNvbG9yO1xufVxuXG4lcmFkaW8tbGJsLWNoZWNrZWQtLWJlZm9yZSB7XG4gICAgYm9yZGVyOiAkcmFkaW8tYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xufVxuXG4lcmFkaW8tbGJsLWNoZWNrZWQtLWFmdGVyIHtcbiAgICBib3JkZXI6ICRyYWRpby1ib3JkZXI7XG59XG5cbiVyYWRpby1sYmwtLWRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufVxuXG4lcmFkaW8tbGJsLW5vdGNoZWNrZWQtLWRpc2FibGVkLWFmdGVyIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG59XG5cbiVyYWRpby1sYmwtY2hlY2tlZC0tZGlzYWJsZWQtYmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufSBcblxuJXJhZGlvLWxibC1jaGVja2VkLS1kaXNhYmxlZC1hZnRlciB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xufSIsIiVzd2l0Y2gtbGJsLWRpc3BsYXkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAkc3dpdGNoLW1hcmdpbjtcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1yYWRpdXM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogJHN3aXRjaC1sYWJlbC13aWR0aDtcblx0XHRoZWlnaHQ6ICRzd2l0Y2gtbGFiZWwtaGVpZ2h0O1xuXHRcdHRvcDogLTNweDtcblx0XHRsZWZ0OiAtMXB4O1xuXHRcdGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcmFkaXVzO1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRib3gtc2hhZG93OiAkc3dpdGNoLXNoYWRvdztcblx0XHR0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG59XG5cbiVzd2l0Y2gtbGJsLS1vbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgbGVmdDogMTZweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHJhZGlvLWZpbGwtY29sb3I7XG4gICAgfVxufVxuXG4lc3dpdGNoLWxibC0tZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQ6ICNGMEYwRjA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNEMUQxRDE7XG4gICAgICAgIGJveC1zaGFkb3c6ICRzd2l0Y2gtZGlzYWJsZWQtc2hhZG93O1xuICAgIH1cbn0iLCIldGFiLXdyYXBwZXItZGlzcGxheSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbiV0YWJiYXItaW5uZXItZGlzcGxheSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuJXRhYmJhci1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTZweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiAkdGFiLWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBzZXQtY29sb3IoJHRhYi1iYXItYmFja2dyb3VuZCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuJXRhYmJhci1tZW51LS10b3Age1xuICAgIHRvcDogMDtcbiAgICBib3gtc2hhZG93OiAwcHggMnB4IDRweCAwcHggcmdiYSg3MiwgNzIsIDcyLCAwLjEwKTtcbn1cblxuJXRhYmJhci1tZW51LS1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IDBweCAtMnB4IDRweCAwcHggcmdiYSg3MiwgNzIsIDcyLCAwLjEwKTtcbn1cblxuJXRhYmJhci1tZW51LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6IDgwcHg7XG4gICAgbWF4LXdpZHRoOiAxNjhweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ldGFiYmFyLW1lbnUtaXRlbS0tZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbiVhY3RpdmUtdGFiIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlLWluOyBcbn1cblxuJXRhYi1sYWJlbCB7XG4gICAgbWF4LXdpZHRoOiAxNjhweDtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAuNzU7XG59XG5cbiV0YWItaWNvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjRweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIG9wYWNpdHk6IC43NTtcbn1cblxuJXRhYi1sYWJlbC0tc2VsZWN0ZWQsXG4ldGFiLWljb24tLXNlbGVjdGVkIHtcbiAgICBAZXh0ZW5kICVhY3RpdmUtdGFiO1xufSIsIiVpZy1saXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1iYWNrZ3JvdW5kO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCR3aGl0ZSwgMTAlKTtcbiAgICB9XG59XG5cbiVpZy1saXN0LWl0ZW0tZGlzcGxheSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbiVpZy1saXN0LWhlYWRlciB7XG4gICAgY29sb3I6ICRsaXN0LWhlYWRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1oZWFkZXItYmFja2dyb3VuZDtcbiAgICBmb250LXNpemU6ICRsaXN0LWhlYWRlci1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRsaXN0LWhlYWRlci1mb250LXdlaWdodDtcbiAgICBoZWlnaHQ6ICRsaXN0LWhlYWRlci1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWhlYWRlci1saW5lLWhlaWdodDtcbiAgICBwYWRkaW5nOiAkbGlzdC1pdGVtLXBhZGRpbmc7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbiVpZy1saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogJGxpc3QtaXRlbS1wYWRkaW5nO1xuICAgIGhlaWdodDogJGxpc3QtaXRlbS1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWl0ZW0tbGluZS1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkbGlzdC1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGxpc3QtaXRlbS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1pdGVtLWJhY2tncm91bmQ7XG4gICAgei1pbmRleDogMjtcbn1cblxuJWlnLWxpc3QtaXRlbS0tYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJveC1zaGFkb3c6ICRsaXN0LWl0ZW0tYWN0aXZlLXNoYWRvdztcbn1cbiIsIiVhdmF0YXItZGlzcGxheSB7XG4gICAgbWF4LXdpZHRoOiBlbSg0OHB4LCAxNnB4KTtcbiAgICBtYXgtaGVpZ2h0OiBlbSg0OHB4LCAxNnB4KTtcbn1cblxuJWF2YXRhci0tcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJTtcbn0iLCIlYnV0dG9uLWRpc3BsYXkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtaW4td2lkdGg6IDg4cHg7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuICAgIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7ICBcbiAgICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbn1cblxuJWJ1dHRvbi1mbGF0IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJ1dHRvbi1mbGF0LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZsYXQtZm9jdXMtYmFja2dyb3VuZDtcbiAgICB9XG59XG5cbiVidXR0b24tcmFpc2VkIHtcbiAgICBjb2xvcjogJGJ1dHRvbi1yYWlzZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZDtcbiAgICBib3gtc2hhZG93OiAkYnV0dG9uLXJhaXNlZC1zaGFkb3c7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgICBib3gtc2hhZG93OiAkYnV0dG9uLXJhaXNlZC1zaGFkb3c7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJGJ1dHRvbi1mb2N1cy1iYWNrZ3JvdW5kO1xuICAgICAgYm94LXNoYWRvdzogJGJ1dHRvbi1yYWlzZWQtZm9jdXMtc2hhZG93O1xuICAgIH1cbn1cblxuJWJ1dHRvbi1ncmFkaWVudCB7XG4gICAgY29sb3I6ICRidXR0b24tZ3JhZGllbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1ncmFkaWVudC1iYWNrZ3JvdW5kO1xuICAgIGJveC1zaGFkb3c6ICRidXR0b24tZ3JhZGllbnQtc2hhZG93O1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZvY3VzLWdyYWRpZW50O1xuICAgICAgICBib3gtc2hhZG93OiAkYnV0dG9uLWdyYWRpZW50LXNoYWRvdztcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRidXR0b24tZm9jdXMtZ3JhZGllbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidXR0b24tZ3JhZGllbnQtZm9jdXMtc2hhZG93O1xuICAgIH0gICAgXG59XG5cbiVidXR0b24tZmFiIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY29sb3I6ICRidXR0b24tcmFpc2VkLWNvbG9yO1xuICAgIG1pbi13aWR0aDogMXB4O1xuICAgIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLXdpZHRoO1xuICAgIGhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kO1xuICAgIGJveC1zaGFkb3c6ICRidXR0b24tZmxvYXRpbmctc2hhZG93O1xuICAgIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1mbG9hdGluZy1yYWRpdXM7XG4gICAgJjpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiAkYnV0dG9uLWZsb2F0aW5nLWhvdmVyLXNoYWRvdztcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZvY3VzLWJhY2tncm91bmQ7XG4gICAgfVxufVxuXG4lYnV0dG9uLWZhYi1pY29uIHtcbiAgICBjb2xvcjogJGJ1dHRvbi1yYWlzZWQtY29sb3I7XG59XG5cbiVidXR0b24tZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQ6ICRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgXG59IiwiJWlnLWJhZGdlLWRpc3BsYXkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYmFja2dyb3VuZC1jb2xvcjtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNSU7XG4gICAgZm9udC1zaXplOiAxMnB4OyAgICAgICAgICAgICAgICAgIFxuICAgIHRvcDogMDsgICAgICAgICAgICAgICAgICAgIFxuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSA1MCU7XG4gICAgcGFkZGluZzogMnB4O1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDBweCByZ2JhKDcyLCA3MiwgNzIsIDAuNTApO1xufVxuXG4laWctYmFkZ2UtLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCJAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJUaXRpbGxpdW0gV2ViXCI7XG4gICAgc3JjOiBsb2NhbChUaXRpbGxpdW0gV2ViIExpZ2h0KSwgdXJsKCcjeyR0aXRpbGxpdW0tZm9udC1wYXRofVRpdGlsbGl1bVdlYi1MaWdodC50dGYnKTtcbiAgICBzcmM6IHVybChcIiN7JHRpdGlsbGl1bS1mb250LXBhdGh9VGl0aWxsaXVtV2ViLUxpZ2h0LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiVGl0aWxsaXVtIFdlYlwiO1xuICAgIHNyYzogbG9jYWwoVGl0aWxsaXVtIFdlYiBSZWd1bGFyKSwgdXJsKCcjeyR0aXRpbGxpdW0tZm9udC1wYXRofVRpdGlsbGl1bVdlYi1SZWd1bGFyLnR0ZicpO1xuICAgIHNyYzogdXJsKFwiI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIlRpdGlsbGl1bSBXZWJcIjtcbiAgICBzcmM6IGxvY2FsKFRpdGlsbGl1bSBXZWIgU2VtaS1Cb2xkKSwgdXJsKCcjeyR0aXRpbGxpdW0tZm9udC1wYXRofVRpdGlsbGl1bVdlYi1TZW1pQm9sZC50dGYnKTtcbiAgICBzcmM6IHVybChcIiN7JHRpdGlsbGl1bS1mb250LXBhdGh9VGl0aWxsaXVtV2ViLVNlbWlCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiVGl0aWxsaXVtIFdlYlwiO1xuICAgIHNyYzogbG9jYWwoVGl0aWxsaXVtIFdlYiBCb2xkKSwgdXJsKCcjeyR0aXRpbGxpdW0tZm9udC1wYXRofVRpdGlsbGl1bVdlYi1Cb2xkLnR0ZicpO1xuICAgIHNyYzogdXJsKFwiI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn0iLCJAaW5jbHVkZSBiKGJ0bi1jb250YWluZXIpIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuQGluY2x1ZGUgYihpZy1idXR0b24pIHtcbiAgQGV4dGVuZCAlYnV0dG9uLWRpc3BsYXk7XG5cbiAgQGluY2x1ZGUgbShmbGF0KSB7XG4gICAgQGV4dGVuZCAlYnV0dG9uLWRpc3BsYXk7XG4gICAgQGV4dGVuZCAlYnV0dG9uLWZsYXQ7XG4gIH1cblxuICBAaW5jbHVkZSBtKHJhaXNlZCkge1xuICAgIEBleHRlbmQgJWJ1dHRvbi1kaXNwbGF5O1xuICAgIEBleHRlbmQgJWJ1dHRvbi1yYWlzZWQ7XG4gIH1cblxuICBAaW5jbHVkZSBtKGdyYWRpZW50KSB7XG4gICAgQGV4dGVuZCAlYnV0dG9uLWRpc3BsYXk7XG4gICAgQGV4dGVuZCAlYnV0dG9uLWdyYWRpZW50O1xuICB9XG5cbiAgQGluY2x1ZGUgbShmYWIpIHtcbiAgICBAZXh0ZW5kICVidXR0b24tZGlzcGxheTtcbiAgICBAZXh0ZW5kICVidXR0b24tZmFiO1xuICB9XG5cbiAgQGluY2x1ZGUgbShkaXNhYmxlZCkge1xuICAgIEBleHRlbmQgJWJ1dHRvbi1kaXNwbGF5O1xuICAgIEBleHRlbmQgJWJ1dHRvbi1kaXNhYmxlZDtcbiAgfVxufSIsIkBtaXhpbiBoaWRlLWRlZmF1bHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbkBtaXhpbiBsaW5lYXItZ3JhZGllbnQoJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzLi4uKSB7XG4gIC8vIERpcmVjdGlvbiBoYXMgYmVlbiBvbWl0dGVkIGFuZCBoYXBwZW5zIHRvIGJlIGEgY29sb3Itc3RvcFxuICBAaWYgaXMtZGlyZWN0aW9uKCRkaXJlY3Rpb24pID09IGZhbHNlIHtcbiAgICAkY29sb3Itc3RvcHM6ICRkaXJlY3Rpb24sICRjb2xvci1zdG9wcztcbiAgICAkZGlyZWN0aW9uOiAxODBkZWc7XG4gIH1cblxuICBiYWNrZ3JvdW5kOiBudGgobnRoKCRjb2xvci1zdG9wcywgMSksIDEpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWdhY3ktZGlyZWN0aW9uKCRkaXJlY3Rpb24pLCAkY29sb3Itc3RvcHMpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzKTtcbn0iLCJpZy10YWIge1xuICAgIC5pZy10YWItaW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7IFxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgYihpZy10YWItYmFyLWlubmVyKSB7XG4gICAgQGV4dGVuZCAldGFiYmFyLWlubmVyLWRpc3BsYXk7XG5cbiAgICBAaW5jbHVkZSBiKHRhYi1pY29uKSB7XG4gICAgICAgIEBleHRlbmQgJXRhYi1pY29uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGIodGFiLWxhYmVsKSB7XG4gICAgICAgIEBleHRlbmQgJXRhYi1sYWJlbDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBlKG1lbnUpIHtcbiAgICAgICAgQGV4dGVuZCAldGFiYmFyLW1lbnU7XG5cbiAgICAgICAgQGluY2x1ZGUgZShpdGVtLCB0cnVlKSB7XG4gICAgICAgICAgICBAZXh0ZW5kICV0YWJiYXItbWVudS1pdGVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtKHNlbGVjdGVkKSB7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBiKHRhYi1pY29uKSB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgJXRhYi1pY29uLS1zZWxlY3RlZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBiKHRhYi1sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kICV0YWItbGFiZWwtLXNlbGVjdGVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbShkaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgJXRhYmJhci1tZW51LWl0ZW0tLWRpc2FibGVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbSh0b3ApIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXRhYmJhci1tZW51LS10b3A7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtKGJvdHRvbSkge1xuICAgICAgICAgICAgQGV4dGVuZCAldGFiYmFyLW1lbnUtLWJvdHRvbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzZWxlY3RlZCB7XG5cdGZyb20ge3RyYW5zZm9ybTpzY2FsZSgwKSB9XG5cdHRvIHsgdHJhbnNmb3JtOnNjYWxlKDQ0LjUpIH1cbn0iLCJbaGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn0iLCIuaWctY2Fyb3VzZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4uaWctY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGxlZnQ6IDI1JTtcbiAgICByaWdodDogMjUlO1xuICAgIGJvdHRvbTogMjUlO1xuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1cblxuICAgIC5hY3RpdmUge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB9XG59XG5cbi5pZy1jYXJvdXNlbC1pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIC41cyBlYXNlLWluLW91dCBsZWZ0O1xuICAgICAgICB0cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAgICAgICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xuXG4gICAgICAgIC5uZXh0LFxuICAgICAgICAucHJldixcbiAgICAgICAgLm5leHQubGVmdCxcbiAgICAgICAgLnByZXYucmlnaHQsXG4gICAgICAgIC5hY3RpdmUucmlnaHQsXG4gICAgICAgIC5hY3RpdmUubGVmdCwge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWN0aXZlLFxuICAgIC5uZXh0LFxuICAgIC5wcmV2IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLm5leHQsXG4gICAgLnByZXYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLm5leHQge1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgIC5wcmV2IHtcbiAgICAgICAgbGVmdDogLTEwMCU7XG4gICAgfVxufVxuXG4uaWctY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAuNSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuXG4gICAgOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG59XG5cbi5sZWZ0IHtcbiAgICBsZWZ0OiAwO1xufVxuXG4ucmlnaHQge1xuICAgIHJpZ2h0OiAwO1xufVxuXG5cbi5pZy1nb1VwIHtcbiAgICBhbmltYXRpb246IGdvVXAgMXMgZWFzZSBib3RoO1xufVxuLmlnLWdvRG93biB7XG4gICAgYW5pbWF0aW9uOiBnb0Rvd24gMXMgZWFzZSBib3RoO1xufVxuXG4uaWctZ29MZWZ0IHtcbiAgICBhbmltYXRpb246IGdvTGVmdCAxcyBlYXNlIGJvdGg7XG59XG5cbi5pZy1nb1JpZ2h0IHtcbiAgICBhbmltYXRpb246IGdvUmlnaHQgMXMgZWFzZSBib3RoO1xufVxuXG4uaWctZmFkZSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlIDNzIGVhc2UgYm90aDtcbn1cblxuXG5Aa2V5ZnJhbWVzIGZhZGUge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogLjI1O1xuXG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IC4wO1xuXG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGdvVXAge1xuICAgIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cbn1cblxuQGtleWZyYW1lcyBnb0Rvd24ge1xuICAgIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG59XG5cbkBrZXlmcmFtZXMgZ29MZWZ0IHtcbiAgICBmcm9tIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIGdvUmlnaHQge1xuICAgIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cbn0iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */ +/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwiemVyby1ibG9ja3MuY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fdHlwb2dyYXBoeS5zY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fbWF0ZXJpYWxfaWNvbnMuc2NzcyIsImJhc2UvX2Jhc2Uuc2NzcyIsIi4uL25hdmlnYXRpb24tZHJhd2VyL25hdmlnYXRpb24tZHJhd2VyLnNjc3MiLCJ1dGlsaXRpZXMvX2JlbS5zY3NzIiwibWF0ZXJpYWwvZXh0ZW5kcy9faW5wdXRzLnNjc3MiLCJtYXRlcmlhbC9leHRlbmRzL19jaGVja2JveC5zY3NzIiwibWF0ZXJpYWwvZXh0ZW5kcy9fcmFkaW8uc2NzcyIsIm1hdGVyaWFsL2V4dGVuZHMvX3N3aXRjaC5zY3NzIiwibWF0ZXJpYWwvZXh0ZW5kcy9fdGFiLnNjc3MiLCJtYXRlcmlhbC9leHRlbmRzL19saXN0LnNjc3MiLCJtYXRlcmlhbC9leHRlbmRzL19hdmF0YXIuc2NzcyIsIm1hdGVyaWFsL2V4dGVuZHMvX2J1dHRvbnMuc2NzcyIsIm1hdGVyaWFsL2V4dGVuZHMvX2JhZGdlcy5zY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fdGl0aWxsaXVtLnNjc3MiLCJtYXRlcmlhbC9tb2R1bGVzL19idXR0b25zLnNjc3MiLCJ1dGlsaXRpZXMvX21peGlucy5zY3NzIiwibWF0ZXJpYWwvbW9kdWxlcy9fdGFiLnNjc3MiLCJtYXRlcmlhbC9oZWxwZXJzL19uZzJxdWlya3Muc2NzcyIsIi4uL2Nhcm91c2VsL2Nhcm91c2VsLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeVRBLElBK05BLE9BQ0UsT0FBQSxFQURGLE9Bc0NBLEdDM01BLEdENk1FLFFBQUEsRUExaUJGLEtBRUUscUJBQTJCLEtBQzNCLHlCQUErQixLQVVqQyxLQUNFLE9BQUEsRUFhRixRQ0xBLE1BQ0EsUUFDQSxXQUNBLE9BQ0EsT0FDQSxPQUNBLE9BQ0EsS0FDQSxLQUNBLElBQ0EsUUFDQSxRRE9FLFFBQUEsTUFRRixN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QUEsS0FHQSxXQUFBLElBQUEsWUFBQSxLQUNBLDRCQUFBLE9BQ0Esb0JBQUEsT0FFQSxZQUFBLE9wQmdwQ0osc0NBREEsdUNvQjdwQ0osK0JwQjJwQ0ksb0NBREEsK0JBRUEscUNvQnRvQ1EsS0FBQSxFQUNBLFVBQUEsc0JBdkJaLDJCcEJrcUNFLHlCQUNBLHlCb0Jyb0NNLFFBQUEsTUE5QlIseUJwQnNxQ0UseUJvQm5vQ00sU0FBQSxTQUNBLElBQUEsRUFDQSxNQUFBLEtBckNSLHlCQXlDUSxLQUFBLEtBekNSLHlCQTZDUSxLQUFBLE1BSVIscUJBQ0ksU0FBQSxTQUNBLFFBQUEsTUFDQSxRQUFBLEtBQ0EsSUFBQSxJQUNBLFVBQUEsaUJBQ0EsWUFBQSxFQUFBLElBQUEsSUFBQSxlQUNBLE1BQUEsS0FDQSxVQUFBLEtBUkosNEJBV1EsaUJBQUEscUJBQ0EsT0FBQSxRQVpSLDBCQWdCUSxRQUFBLEtBSVIsTUFDSSxLQUFBLEVBR0osT0FDSSxNQUFBLEVBSUosU0FDSSxVQUFBLEtBQUEsR0FBQSxLQUFBLEtBRUosV0FDSSxVQUFBLE9BQUEsR0FBQSxLQUFBLEtBR0osV0FDSSxVQUFBLE9BQUEsR0FBQSxLQUFBLEtBR0osWUFDSSxVQUFBLFFBQUEsR0FBQSxLQUFBLEtBR0osU0FDSSxVQUFBLEtBQUEsR0FBQSxLQUFBLEtBSUosZ0JBQ0ksR0FDSSxRQUFBLElBR0osSUFDSSxRQUFBLEVBR0osS0FDSSxRQUFBLEdBS1IsZ0JBQ0ksS0FBTyxVQUFBLGtCQUdYLGtCQUNJLEtBQU8sVUFBQSxtQkFHWCxrQkFDSSxLQUFPLFVBQUEsbUJBR1gsbUJBQ0ksS0FBTyxVQUFBIiwiZmlsZSI6Inplcm8tYmxvY2tzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIE5vcm1hbGl6ZS5zY3NzIHNldHRpbmdzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiBJbmNsdWRlcyBsZWdhY3kgYnJvd3NlciBzdXBwb3J0IElFNi83XHJcbiAqXHJcbiAqIFNldCB0byBmYWxzZSBpZiB5b3Ugd2FudCB0byBkcm9wIHN1cHBvcnQgZm9yIElFNiBhbmQgSUU3XHJcbiAqL1xyXG5cclxuJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQ6IGZhbHNlICFkZWZhdWx0O1xyXG5cclxuLyogQmFzZVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXHJcbiAqIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXHJcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cclxuICogMy4gQ29ycmVjdHMgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRSA2Lzcgd2hlbiBib2R5IGBmb250LXNpemVgIGlzIHNldCB1c2luZ1xyXG4gKiAgYGVtYCB1bml0cy5cclxuICovXHJcblxyXG5odG1sIHtcclxuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xyXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXHJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXHJcbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICAgICpmb250LXNpemU6IDEwMCU7IC8qIDMgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXHJcbiAqL1xyXG5cclxuYm9keSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cclxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcclxuICogYW5kIEZpcmVmb3guXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXHJcbiAqL1xyXG5cclxuYXJ0aWNsZSxcclxuYXNpZGUsXHJcbmRldGFpbHMsXHJcbmZpZ2NhcHRpb24sXHJcbmZpZ3VyZSxcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbmhncm91cCxcclxubWFpbixcclxubWVudSxcclxubmF2LFxyXG5zZWN0aW9uLFxyXG5zdW1tYXJ5IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXHJcbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cclxuICovXHJcblxyXG5hdWRpbyxcclxuY2FudmFzLFxyXG5wcm9ncmVzcyxcclxudmlkZW8ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xyXG4gIEBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XHJcbiAgICAqZGlzcGxheTogaW5saW5lO1xyXG4gICAgKnpvb206IDE7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogUHJldmVudHMgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXHJcbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXHJcbiAqL1xyXG5cclxuYXVkaW86bm90KFtjb250cm9sc10pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cclxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxyXG4gKi9cclxuXHJcbltoaWRkZW5dLFxyXG50ZW1wbGF0ZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogTGlua3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuICovXHJcblxyXG5hIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cclxuICogYWN0aXZlL2hvdmVyIHN0YXRlLlxyXG4gKi9cclxuXHJcbmEge1xyXG4gICY6YWN0aXZlLCAmOmhvdmVyIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgfTtcclxufVxyXG5cclxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5cclxuYWJiclt0aXRsZV0ge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5cclxuYixcclxuc3Ryb25nIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICBibG9ja3F1b3RlIHtcclxuICAgIG1hcmdpbjogMWVtIDQwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cclxuXHJcbmRmbiB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxyXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbkBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XHJcbiAgaDIge1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIG1hcmdpbjogMC44M2VtIDA7XHJcbiAgfVxyXG5cclxuICBoMyB7XHJcbiAgICBmb250LXNpemU6IDEuMTdlbTtcclxuICAgIG1hcmdpbjogMWVtIDA7XHJcbiAgfVxyXG5cclxuICBoNCB7XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICAgIG1hcmdpbjogMS4zM2VtIDA7XHJcbiAgfVxyXG5cclxuICBoNSB7XHJcbiAgICBmb250LXNpemU6IDAuODNlbTtcclxuICAgIG1hcmdpbjogMS42N2VtIDA7XHJcbiAgfVxyXG5cclxuICBoNiB7XHJcbiAgICBmb250LXNpemU6IDAuNjdlbTtcclxuICAgIG1hcmdpbjogMi4zM2VtIDA7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzc2VzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxyXG4gKi9cclxuXHJcbm1hcmsge1xyXG4gIGJhY2tncm91bmQ6ICNmZjA7XHJcbiAgY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbkBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkZHJlc3NlcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXHJcbiAgICovXHJcblxyXG4gIHAsXHJcbiAgcHJlIHtcclxuICAgICptYXJnaW46IDFlbSAwO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgKiBBZGRyZXNzZXMgQ1NTIHF1b3RlcyBub3Qgc3VwcG9ydGVkIGluIElFIDYvNy5cclxuICAgKi9cclxuXHJcbiAgcSB7XHJcbiAgICAqcXVvdGVzOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgKiBBZGRyZXNzZXMgYHF1b3Rlc2AgcHJvcGVydHkgbm90IHN1cHBvcnRlZCBpbiBTYWZhcmkgNC5cclxuICAgKi9cclxuXHJcbiAgcTpiZWZvcmUsXHJcbiAgcTphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxuc21hbGwge1xyXG4gIGZvbnQtc2l6ZTogODAlO1xyXG59XHJcblxyXG4vKipcclxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuXHJcbnN1Yixcclxuc3VwIHtcclxuICBmb250LXNpemU6IDc1JTtcclxuICBsaW5lLWhlaWdodDogMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG5zdXAge1xyXG4gIHRvcDogLTAuNWVtO1xyXG59XHJcblxyXG5zdWIge1xyXG4gIGJvdHRvbTogLTAuMjVlbTtcclxufVxyXG5cclxuQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuXHJcbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgICBMaXN0c1xyXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4gIC8qXHJcbiAgICogQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNy5cclxuICAgKi9cclxuXHJcbiAgZGwsXHJcbiAgbWVudSxcclxuICBvbCxcclxuICB1bCB7XHJcbiAgICAqbWFyZ2luOiAxZW0gMDtcclxuICB9XHJcblxyXG4gIGRkIHtcclxuICAgICptYXJnaW46IDAgMCAwIDQwcHg7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIEFkZHJlc3NlcyBwYWRkaW5ncyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LlxyXG4gICAqL1xyXG5cclxuICBtZW51LFxyXG4gIG9sLFxyXG4gIHVsIHtcclxuICAgICpwYWRkaW5nOiAwIDAgMCA0MHB4O1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgKiBDb3JyZWN0cyBsaXN0IGltYWdlcyBoYW5kbGVkIGluY29ycmVjdGx5IGluIElFIDcuXHJcbiAgICovXHJcblxyXG4gIG5hdiB1bCxcclxuICBuYXYgb2wge1xyXG4gICAgKmxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAqbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcclxuICB9XHJcblxyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXHJcbiAqIDIuIEltcHJvdmVzIGltYWdlIHF1YWxpdHkgd2hlbiBzY2FsZWQgaW4gSUUgNy5cclxuICovXHJcblxyXG5pbWcge1xyXG4gIGJvcmRlcjogMDtcclxuICBAaWYgJGxlZ2FjeV9icm93c2VyX3N1cHBvcnQge1xyXG4gICAgKi1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IC8qIDIgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cclxuICovXHJcblxyXG5zdmc6bm90KDpyb290KSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLyogR3JvdXBpbmcgY29udGVudFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cclxuICovXHJcblxyXG5ociB7XHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxucHJlIHtcclxuICBvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cclxuICogQ29ycmVjdCBmb250IGZhbWlseSBzZXQgb2RkbHkgaW4gSUUgNiwgU2FmYXJpIDQvNSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5jb2RlLFxyXG5rYmQsXHJcbnByZSxcclxuc2FtcCB7XHJcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xyXG4gIEBpZiAkbGVnYWN5X2Jyb3dzZXJfc3VwcG9ydCB7XHJcbiAgICBfZm9udC1mYW1pbHk6ICdjb3VyaWVyIG5ldycsIG1vbm9zcGFjZTtcclxuICB9XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbn1cclxuXHJcbi8qIEZvcm1zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcclxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbiAqICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cclxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cclxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqIDQuIEltcHJvdmVzIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cclxuICBmb250OiBpbmhlcml0OyAvKiAyICovXHJcbiAgbWFyZ2luOiAwOyAvKiAzICovXHJcbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMyAqL1xyXG4gICAgKnZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8qIDMgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cclxuICovXHJcblxyXG5idXR0b24ge1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxyXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxyXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxyXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXHJcbiAqL1xyXG5cclxuYnV0dG9uLFxyXG5zZWxlY3Qge1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcclxuICogIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxyXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXHJcbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXHJcbiAqICBgaW5wdXRgIGFuZCBvdGhlcnMuXHJcbiAqIDQuIFJlbW92ZXMgaW5uZXIgc3BhY2luZyBpbiBJRSA3IHdpdGhvdXQgYWZmZWN0aW5nIG5vcm1hbCB0ZXh0IGlucHV0cy5cclxuICogIEtub3duIGlzc3VlOiBpbm5lciBzcGFjaW5nIHJlbWFpbnMgaW4gSUUgNi5cclxuICovXHJcblxyXG5idXR0b24sXHJcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXHJcbiAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXHJcbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICAgICpvdmVyZmxvdzogdmlzaWJsZTsgIC8qIDQgKi9cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4gKi9cclxuXHJcbmJ1dHRvbltkaXNhYmxlZF0sXHJcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXHJcbiAqL1xyXG5cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4gKi9cclxuXHJcbmlucHV0IHtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cclxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cclxuICogIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFIDYuXHJcbiAqL1xyXG5cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICBwYWRkaW5nOiAwOyAvKiAyICovXHJcbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICAgICpoZWlnaHQ6IDEzcHg7IC8qIDMgKi9cclxuICAgICp3aWR0aDogMTNweDsgLyogMyAqL1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXHJcbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXHJcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cclxuICovXHJcblxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cclxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xyXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXHJcbiAqL1xyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG4vKipcclxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxyXG4gKi9cclxuXHJcbmZpZWxkc2V0IHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xyXG4gIG1hcmdpbjogMCAycHg7XHJcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxyXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXHJcbiAqIDMuIENvcnJlY3RzIHRleHQgbm90IHdyYXBwaW5nIGluIEZpcmVmb3ggMy5cclxuICogNC4gQ29ycmVjdHMgYWxpZ25tZW50IGRpc3BsYXllZCBvZGRseSBpbiBJRSA2LzcuXHJcbiAqL1xyXG5cclxubGVnZW5kIHtcclxuICBib3JkZXI6IDA7IC8qIDEgKi9cclxuICBwYWRkaW5nOiAwOyAvKiAyICovXHJcbiAgQGlmICRsZWdhY3lfYnJvd3Nlcl9zdXBwb3J0IHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDMgKi9cclxuICAgICptYXJnaW4tbGVmdDogLTdweDsgLyogNCAqL1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxyXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cclxuICovXHJcblxyXG5vcHRncm91cCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qIFRhYmxlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cclxuICovXHJcblxyXG50YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxudGQsXHJcbnRoIHtcclxuICBwYWRkaW5nOiAwO1xyXG59IiwiLypcclxuKiBaZXJvIGJsb2NrcyBkZWZhdWx0IHRoZW1lXHJcbiogVE9ETzogTW92ZSBnbG9iYWwgY29sb3IgdmFyaWFibGVzIGhlcmUuXHJcbiovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBOb3JtYWxpemUuc2NzcyBzZXR0aW5nc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIEluY2x1ZGVzIGxlZ2FjeSBicm93c2VyIHN1cHBvcnQgSUU2LzdcclxuICpcclxuICogU2V0IHRvIGZhbHNlIGlmIHlvdSB3YW50IHRvIGRyb3Agc3VwcG9ydCBmb3IgSUU2IGFuZCBJRTdcclxuICovXG4vKiBCYXNlXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cclxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcclxuICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxyXG4gKiAzLiBDb3JyZWN0cyB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFIDYvNyB3aGVuIGJvZHkgYGZvbnQtc2l6ZWAgaXMgc2V0IHVzaW5nXHJcbiAqICBgZW1gIHVuaXRzLlxyXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcclxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxyXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXHJcbiAqIGFuZCBGaXJlZm94LlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxyXG4gKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxyXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXHJcbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gKiBQcmV2ZW50cyBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cclxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cclxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXHJcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cclxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxyXG4gKi9cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIExpbmtzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXHJcbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qKlxyXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IG9mIGZvY3VzZWQgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBhbHNvIGluIGFuXHJcbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cclxuICovXG5hOmFjdGl2ZSwgYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXHJcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXHJcbiAqL1xubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxyXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIDEuIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxyXG4gKiAyLiBJbXByb3ZlcyBpbWFnZSBxdWFsaXR5IHdoZW4gc2NhbGVkIGluIElFIDcuXHJcbiAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qKlxyXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cclxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxyXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXHJcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cclxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXHJcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqIENvcnJlY3QgZm9udCBmYW1pbHkgc2V0IG9kZGx5IGluIElFIDYsIFNhZmFyaSA0LzUsIGFuZCBDaHJvbWUuXHJcbiAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi8qIEZvcm1zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcclxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxyXG4gKi9cbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbiAqICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cclxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cclxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqIDQuIEltcHJvdmVzIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vycy5cclxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgLyogMyAqLyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cclxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcclxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxyXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxyXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxyXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXHJcbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXHJcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXHJcbiAqICBhbmQgYHZpZGVvYCBjb250cm9scy5cclxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxyXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxyXG4gKiAgYGlucHV0YCBhbmQgb3RoZXJzLlxyXG4gKiA0LiBSZW1vdmVzIGlubmVyIHNwYWNpbmcgaW4gSUUgNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHMuXHJcbiAqICBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFIDYuXHJcbiAqL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLyogMyAqLyB9XG5cbi8qKlxyXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcclxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxyXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4gKi9cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4vKipcclxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cclxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cclxuICogIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFIDYuXHJcbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXHJcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXHJcbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXHJcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cclxuICovXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcclxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAyICovIH1cblxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxyXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXHJcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cclxuICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcclxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxyXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuICogMy4gQ29ycmVjdHMgdGV4dCBub3Qgd3JhcHBpbmcgaW4gRmlyZWZveCAzLlxyXG4gKiA0LiBDb3JyZWN0cyBhbGlnbm1lbnQgZGlzcGxheWVkIG9kZGx5IGluIElFIDYvNy5cclxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxyXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXHJcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cclxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXHJcbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiBUYWJsZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXHJcbiAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBaZXJvIEJsb2NrcyBWYXJpYWJsZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBUYWJsZSBvZiBDb250ZW50czpcclxuICpcclxuICogIDEuIENvbG9yc1xyXG4gKiAgMi4gQmFkZ2VzXHJcbiAqICAzLiBCdXR0b25zXHJcbiAqICBUT0RPOiA0LiBDYXJkc1xyXG4gKiAgVE9ETzogNS4gQ29sbGFwc2libGVcclxuICogIFRPRE86IDYuIENoaXBzXHJcbiAqICBUT0RPOiA3LiBEYXRlIFBpY2tlclxyXG4gKiAgVE9ETzogOC4gRHJvcGRvd25cclxuICogIDkuIEZvbnRzXHJcbiAqICAxMC4gRm9ybXNcclxuICogIDExLiBHbG9iYWxcclxuICogIFRPRE86IDEyLiBOYXZpZ2F0aW9uIEJhclxyXG4gKiAgVE9ETzogMTMuIE5hdmlnYXRpb24gRHJhd2VyXHJcbiAqICBUT0RPOiAxNC4gU2xpZGVyXHJcbiAqICBUT0RPOiAxNS4gU3Bpbm5lcnMgfCBMb2FkZXJzXHJcbiAqICBUT0RPOiAxNi4gVGFic1xyXG4gKiAgVE9ETzogMTcuIFRhYmxlc1xyXG4gKiAgVE9ETzogMTguIFRvYXN0c1xyXG4gKiAgMTkuIFR5cG9ncmFwaHlcclxuICogIFRPRE86IDIwLiBGbG93IFRleHRcclxuICogIFRPRE86IDIxLiBDb2xsZWN0aW9uc1xyXG4gKiAgVE9ETzogMjIuIFByb2dyZXNzIEJhclxyXG4gKiAgMjMuIExpc3RzXHJcbiAqL1xuLyogMS4gQ29sb3JzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiAyLiBCYWRnZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIDMuIEJ1dHRvbnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIDkuIEZvbnRzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiAxMC4gRm9ybXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIDExLiBHbG9iYWxcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIDE2LiBCb3R0b20gbmF2aWdhdGlvbiBiYXIgLyBUYWJzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiAxOS4gVHlwb2dyYXBoeVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogMjMuIExpc3RcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFJlY3RhbmdsZTogKi9cbi5pZy1mb3JtLWdyb3VwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBtaW4taGVpZ2h0OiA0MHB4OyB9XG4gIC5pZy1mb3JtLWdyb3VwIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgLyogV2ViS2l0LCBCbGluaywgRWRnZSAqL1xuICAgIGNvbG9yOiAjNzU3NTc1OyB9XG5cbi5pZy1mb3JtLWdyb3VwIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgY29sb3I6ICM3NTc1NzU7XG4gIGN1cnNvcjogdGV4dDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0LCBzY2FsZSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpLCBjb2xvciAwLjNzIGVhc2UtaW4tb3V0OyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC0tZmlsbGVkIH4gbGFiZWwsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC0tcGxhY2Vob2xkZXIgfiBsYWJlbCB7XG4gIGNvbG9yOiAjYThhOGE4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDAuNzUpOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC0tZmlsbGVkIH4gbGFiZWwge1xuICBjb2xvcjogI2E4YThhODsgfVxuXG4uaWctZm9ybS1ncm91cF9faW5wdXQtLWZvY3VzZWQgfiBsYWJlbCB7XG4gIGNvbG9yOiAjMDM3NWJlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDAuNzUpOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dCwgLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhLCAuaWctZm9ybS1ncm91cF9faW5wdXQtLWZpbGxlZCwgLmlnLWZvcm0tZ3JvdXBfX2lucHV0LS1mb2N1c2VkLCAuaWctZm9ybS1ncm91cF9faW5wdXQtLXBsYWNlaG9sZGVyIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMTcsIDExNywgMTE3LCAwLjUpO1xuICBjb2xvcjogIzQ4NDg0ODtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dDpmb2N1cywgLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhOmZvY3VzIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMzc1YmU7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0OmRpc2FibGVkLCAuaWctZm9ybS1ncm91cF9fdGV4dGFyZWE6ZGlzYWJsZWQge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICM4ODg4ODg7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgxMTcsIDExNywgMTE3LCAwLjUpOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy12YWxpZFtyZXF1aXJlZF0sIC5uZy12YWxpZFtyZXF1aXJlZF0uaWctZm9ybS1ncm91cF9fdGV4dGFyZWEsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy12YWxpZC5yZXF1aXJlZCwgLm5nLXZhbGlkLnJlcXVpcmVkLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM0Q0FGNTA7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLXZhbGlkW3JlcXVpcmVkXSB+IGxhYmVsLCAubmctdmFsaWRbcmVxdWlyZWRdLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhIH4gbGFiZWwsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy12YWxpZC5yZXF1aXJlZCB+IGxhYmVsLCAubmctdmFsaWQucmVxdWlyZWQuaWctZm9ybS1ncm91cF9fdGV4dGFyZWEgfiBsYWJlbCB7XG4gIGNvbG9yOiAjNENBRjUwOyB9XG5cbi5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy13YXJuaW5nLCAubmctd2FybmluZy5pZy1mb3JtLWdyb3VwX190ZXh0YXJlYSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBvcmFuZ2U7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLXdhcm5pbmcgfiBsYWJlbCwgLm5nLXdhcm5pbmcuaWctZm9ybS1ncm91cF9fdGV4dGFyZWEgfiBsYWJlbCB7XG4gIGNvbG9yOiBvcmFuZ2U7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLWludmFsaWQubmctdG91Y2hlZCwgLm5nLWludmFsaWQubmctdG91Y2hlZC5pZy1mb3JtLWdyb3VwX190ZXh0YXJlYSwgLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLWludmFsaWQubmctdG91Y2hlZDpub3QoZm9ybSksIC5uZy1pbnZhbGlkLm5nLXRvdWNoZWQuaWctZm9ybS1ncm91cF9fdGV4dGFyZWE6bm90KGZvcm0pIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNGNDQzMzY7IH1cblxuLmlnLWZvcm0tZ3JvdXBfX2lucHV0Lm5nLWludmFsaWQubmctdG91Y2hlZCB+IGxhYmVsLCAubmctaW52YWxpZC5uZy10b3VjaGVkLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhIH4gbGFiZWwsIC5pZy1mb3JtLWdyb3VwX19pbnB1dC5uZy1pbnZhbGlkOm5vdChmb3JtKS5uZy10b3VjaGVkIH4gbGFiZWwsIC5uZy1pbnZhbGlkLmlnLWZvcm0tZ3JvdXBfX3RleHRhcmVhOm5vdChmb3JtKS5uZy10b3VjaGVkIH4gbGFiZWwge1xuICBjb2xvcjogI0Y0NDMzNjsgfVxuXG4uaWctZm9ybS1ncm91cF9fdGV4dGFyZWEge1xuICByZXNpemU6IG5vbmU7IH1cblxuLmlnLWNvbnRyb2xfX3JhZGlvIH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5pZy1jb250cm9sX19yYWRpbyB+IC5pZy1jb250cm9sX19sYWJlbDpiZWZvcmUsIC5pZy1jb250cm9sX19yYWRpbyB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJSA1MCU7IH1cbiAgLmlnLWNvbnRyb2xfX3JhZGlvIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluOyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpub3QoOmNoZWNrZWQpIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cblxuLmlnLWNvbnRyb2xfX3JhZGlvOm5vdCg6Y2hlY2tlZCkgfiAuaWctY29udHJvbF9fbGFiZWw6YWZ0ZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCAjNzU3NTc1OyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpjaGVja2VkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMzc1YmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMzc1YmU7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTsgfVxuXG4uaWctY29udHJvbF9fcmFkaW86Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMzc1YmU7IH1cblxuLmlnLWNvbnRyb2xfX3JhZGlvOmRpc2FibGVkIH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGNvbG9yOiAjODg4ODg4OyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpkaXNhYmxlZDpub3QoOmNoZWNrZWQpIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzg4ODg4ODsgfVxuXG4uaWctY29udHJvbF9fcmFkaW86ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4ODg4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjODg4ODg4OyB9XG5cbi5pZy1jb250cm9sX19yYWRpbzpkaXNhYmxlZDpjaGVja2VkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzg4ODg4ODsgfVxuXG4uaWctY29udHJvbF9fY2J4IH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5pZy1jb250cm9sX19jYnggfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjsgfVxuICAuaWctY29udHJvbF9fY2J4IH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSwgLmlnLWNvbnRyb2xfX2NieCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uaWctY29udHJvbF9fY2J4Om5vdCg6Y2hlY2tlZCkgfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgd2lkdGg6IDlweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBib3JkZXI6IG5vbmU7XG4gIHRvcDogMXB4O1xuICBsZWZ0OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWigzN2RlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZykgc2NhbGUoMC4xKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAyMCUgNDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7IH1cblxuLmlnLWNvbnRyb2xfX2NieDpub3QoOmNoZWNrZWQpIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzc1NzU3NTtcbiAgei1pbmRleDogMDsgfVxuXG4uaWctY29udHJvbF9fY2J4OmNoZWNrZWQgfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgdG9wOiAxcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiA5cHg7XG4gIGhlaWdodDogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmY7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDM3ZGVnKSBzY2FsZSgxKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTsgfVxuXG4uaWctY29udHJvbF9fY2J4OmNoZWNrZWQgfiAuaWctY29udHJvbF9fbGFiZWw6YWZ0ZXIge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDM3NWJlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDM3NWJlOyB9XG5cbi5pZy1jb250cm9sX19jYng6ZGlzYWJsZWQgfiAuaWctY29udHJvbF9fbGFiZWwge1xuICBjb2xvcjogI2QxZDFkMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmlnLWNvbnRyb2xfX2NieDpkaXNhYmxlZDpjaGVja2VkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5pZy1jb250cm9sX19jYng6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODg4ODg7XG4gIGJvcmRlci1jb2xvcjogIzg4ODg4ODsgfVxuXG4uaWctY29udHJvbF9fY2J4OmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgfiAuaWctY29udHJvbF9fbGFiZWw6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5pZy1jb250cm9sX19jYng6ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogIzg4ODg4ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmlnLWNvbnRyb2xfX2NieDppbmRldGVybWluYXRlIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAzNzViZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzAzNzViZTsgfVxuXG4uaWctY29udHJvbF9fc3dpdGNoIH4gLmlnLWNvbnRyb2xfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAxNnB4O1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzU3NTc1O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW47XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5pZy1jb250cm9sX19zd2l0Y2ggfiAuaWctY29udHJvbF9fbGFiZWw6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgdG9wOiAtM3B4O1xuICAgIGxlZnQ6IC0xcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDcyLCA3MiwgNzIsIDAuNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbjsgfVxuXG4uaWctY29udHJvbF9fc3dpdGNoOmNoZWNrZWQgfiAuaWctY29udHJvbF9fbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMsIDExNywgMTkwLCAwLjUpOyB9XG4gIC5pZy1jb250cm9sX19zd2l0Y2g6Y2hlY2tlZCB+IC5pZy1jb250cm9sX19sYWJlbDphZnRlciB7XG4gICAgbGVmdDogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDM3NWJlOyB9XG5cbi5pZy1jb250cm9sX19zd2l0Y2g6ZGlzYWJsZWQgfiAuaWctY29udHJvbF9fbGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuaWctY29udHJvbF9fc3dpdGNoOmRpc2FibGVkIH4gLmlnLWNvbnRyb2xfX2xhYmVsOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjRDFEMUQxO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuXG4uaWctbGlzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmlnLWxpc3Q6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cblxuaWctbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4uaWctbGlzdF9faGVhZGVyIHtcbiAgY29sb3I6ICMwMzc1YmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGhlaWdodDogM2VtO1xuICBsaW5lLWhlaWdodDogM2VtO1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLmlnLWxpc3RfX2l0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgaGVpZ2h0OiAzZW07XG4gIGxpbmUtaGVpZ2h0OiAzZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBjb2xvcjogIzQ4NDg0ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgei1pbmRleDogMjsgfVxuXG4uaWctbGlzdF9faXRlbTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmY2ZjO1xuICBib3gtc2hhZG93OiA0cHggMHB4IDZweCAtM3B4IHJnYmEoMTY3LCAxNjcsIDE2NywgMC4zKTsgfVxuXG4uaWctYXZhdGFyLCAuaWctYXZhdGFyLS1yb3VuZGVkIHtcbiAgbWF4LXdpZHRoOiAzZW07XG4gIG1heC1oZWlnaHQ6IDNlbTsgfVxuXG4uaWctYXZhdGFyLS1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlIDUwJTsgfVxuXG4uaWctYnV0dG9uLCAuaWctYnV0dG9uLS1mbGF0LCAuaWctYnV0dG9uLS1yYWlzZWQsIC5pZy1idXR0b24tLWdyYWRpZW50LCAuaWctYnV0dG9uLS1mYWIsIC5pZy1idXR0b24tLWRpc2FibGVkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDg4cHg7XG4gIHBhZGRpbmc6IDAuMzc1ZW0gMWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzQ4NDg0ODtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH1cblxuLmlnLWJ1dHRvbi0tZmxhdDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNGMEYwRjA7IH1cblxuLmlnLWJ1dHRvbi0tZmxhdDpmb2N1cywgLmlnLWJ1dHRvbi0tZmxhdDphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjRDFEMUQxOyB9XG5cbi5pZy1idXR0b24tLXJhaXNlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDM3NWJlO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDcyLCA3MiwgNzIsIDAuNSk7IH1cbiAgLmlnLWJ1dHRvbi0tcmFpc2VkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDM2NmE1O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuICAuaWctYnV0dG9uLS1yYWlzZWQ6Zm9jdXMsIC5pZy1idXR0b24tLXJhaXNlZDphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMwMzY2YTU7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wMyksIDBweCA3cHggOHB4IDBweCByZ2JhKDg4LCA4OCwgODgsIDAuNSk7IH1cblxuLmlnLWJ1dHRvbi0tZ3JhZGllbnQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSByaWdodCwgI2U0MWM3NywgIzczMTk2Myk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTJweCByZ2JhKDEwNywgMjMsIDkyLCAwLjgpOyB9XG4gIC5pZy1idXR0b24tLWdyYWRpZW50OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAjY2UxOTZiLCAjNWUxNDUxKTtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IC0ycHggcmdiYSgxMDcsIDIzLCA5MiwgMC44KTsgfVxuICAuaWctYnV0dG9uLS1ncmFkaWVudDpmb2N1cywgLmlnLWJ1dHRvbi0tZ3JhZGllbnQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCAjY2UxOTZiLCAjNWUxNDUxKTtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxMnB4IC0xcHggcmdiYSg5NCwgMjAsIDgxLCAwLjc1KTsgfVxuXG4uaWctYnV0dG9uLS1mYWIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIG1pbi13aWR0aDogMXB4O1xuICB3aWR0aDogMy41ZW07XG4gIGhlaWdodDogMy41ZW07XG4gIGJhY2tncm91bmQ6ICMwMzc1YmU7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDcyLCA3MiwgNzIsIDAuNSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5pZy1idXR0b24tLWZhYjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMHB4IDRweCA4cHggMHB4IHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuICAuaWctYnV0dG9uLS1mYWI6Zm9jdXMsIC5pZy1idXR0b24tLWZhYjphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMwMzY2YTU7IH1cblxuLmlnLWJ1dHRvbi0tZGlzYWJsZWQge1xuICBjb2xvcjogI0FFQUVBRTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmlnLXRhYi1iYXItaW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLmlnLXRhYi1iYXItaW5uZXJfX21lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1NnB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMzMzO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5pZy10YWItYmFyLWlubmVyX19tZW51LS10b3Age1xuICB0b3A6IDA7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDcyLCA3MiwgNzIsIDAuMSk7IH1cblxuLmlnLXRhYi1iYXItaW5uZXJfX21lbnUtLWJvdHRvbSB7XG4gIGJveC1zaGFkb3c6IDBweCAtMnB4IDRweCAwcHggcmdiYSg3MiwgNzIsIDcyLCAwLjEpOyB9XG5cbi5pZy10YWItYmFyLWlubmVyX19tZW51IC5pZy10YWItYmFyLWlubmVyX19tZW51LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogODBweDtcbiAgbWF4LXdpZHRoOiAxNjhweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uaWctdGFiLWJhci1pbm5lcl9fbWVudSAuaWctdGFiLWJhci1pbm5lcl9fbWVudS1pdGVtLS1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5pZy10YWItYmFyLWlubmVyX19tZW51IC5pZy10YWItYmFyLWlubmVyX19tZW51LWl0ZW0tLXNlbGVjdGVkIC50YWItbGFiZWwsIC5pZy10YWItYmFyLWlubmVyX19tZW51IC5pZy10YWItYmFyLWlubmVyX19tZW51LWl0ZW0tLXNlbGVjdGVkIC50YWItaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjMDM3NWJlO1xuICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBlYXNlLWluOyB9XG5cbi5pZy10YWItYmFyLWlubmVyIC50YWItbGFiZWwge1xuICBtYXgtd2lkdGg6IDE2OHB4O1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogLjc1OyB9XG5cbi5pZy10YWItYmFyLWlubmVyIC50YWItaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAyNHB4O1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAuNzU7IH1cblxuLmlnLWJhZGdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzczMTk2MztcbiAgbWFyZ2luLXJpZ2h0OiAtMjUlO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSA1MCU7XG4gIHBhZGRpbmc6IDJweDtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4IHJnYmEoNzIsIDcyLCA3MiwgMC41KTsgfVxuXG4uaWctYmFkZ2UtLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlRpdGlsbGl1bSBXZWJcIjtcbiAgc3JjOiBsb2NhbChUaXRpbGxpdW0gV2ViIExpZ2h0KSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLUxpZ2h0LnR0ZlwiKTtcbiAgc3JjOiB1cmwoXCIuLi9kaXN0L2ZvbnRzL3RpdGlsbGl1bS9UaXRpbGxpdW1XZWItTGlnaHQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJUaXRpbGxpdW0gV2ViXCI7XG4gIHNyYzogbG9jYWwoVGl0aWxsaXVtIFdlYiBSZWd1bGFyKSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLVJlZ3VsYXIudHRmXCIpO1xuICBzcmM6IHVybChcIi4uL2Rpc3QvZm9udHMvdGl0aWxsaXVtL1RpdGlsbGl1bVdlYi1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiVGl0aWxsaXVtIFdlYlwiO1xuICBzcmM6IGxvY2FsKFRpdGlsbGl1bSBXZWIgU2VtaS1Cb2xkKSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLVNlbWlCb2xkLnR0ZlwiKTtcbiAgc3JjOiB1cmwoXCIuLi9kaXN0L2ZvbnRzL3RpdGlsbGl1bS9UaXRpbGxpdW1XZWItU2VtaUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJUaXRpbGxpdW0gV2ViXCI7XG4gIHNyYzogbG9jYWwoVGl0aWxsaXVtIFdlYiBCb2xkKSwgdXJsKFwiLi4vZGlzdC9mb250cy90aXRpbGxpdW0vVGl0aWxsaXVtV2ViLUJvbGQudHRmXCIpO1xuICBzcmM6IHVybChcIi4uL2Rpc3QvZm9udHMvdGl0aWxsaXVtL1RpdGlsbGl1bVdlYi1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtc2l6ZS1hZGp1c3Q6IDAuNTg7XG4gIGZvbnQtZmFtaWx5OiAnVGl0aWxsaXVtIFdlYicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjNDg0ODQ4OyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LXdlaWdodDogNjAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjVlbTsgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjYyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg3NWVtOyB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNWVtOyB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVlbTsgfVxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMi44MTI1ZW07IH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjVlbTsgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMS44NzVlbTsgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtOyB9XG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjM3NWVtOyB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBsaW5lLWhlaWdodDogMi44MTI1ZW07IH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjE4NzVlbTsgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtOyB9IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKC4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24taWNvbnMvaWNvbmZvbnQvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLmVvdCk7XG4gIC8qIEZvciBJRTYtOCAqL1xuICBzcmM6IGxvY2FsKFwiTWF0ZXJpYWwgSWNvbnNcIiksIGxvY2FsKFwiTWF0ZXJpYWxJY29ucy1SZWd1bGFyXCIpLCB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIud29mZjIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIud29mZikgZm9ybWF0KFwid29mZlwiKSwgdXJsKC4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24taWNvbnMvaWNvbmZvbnQvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLnR0ZikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuLm1hdGVyaWFsLWljb25zIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICAvKiBQcmVmZXJyZWQgaWNvbiBzaXplICovXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIC8qIFN1cHBvcnQgZm9yIGFsbCBXZWJLaXQgYnJvd3NlcnMuICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAvKiBTdXBwb3J0IGZvciBTYWZhcmkgYW5kIENocm9tZS4gKi9cbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLyogU3VwcG9ydCBmb3IgRmlyZWZveC4gKi9cbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLyogU3VwcG9ydCBmb3IgSUUuICovXG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnOyB9XG5cbi5idG4tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuXG4uaWctY29udHJvbF9fcmFkaW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pZy1jb250cm9sX19jYngge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5pZy1jb250cm9sX19zd2l0Y2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbmlnLXRhYiAuaWctdGFiLWlubmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cbiAgaWctdGFiIC5pZy10YWItaW5uZXIuc2VsZWN0ZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIGlnLXRhYiAuaWctdGFiLWlubmVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG5Aa2V5ZnJhbWVzIHNlbGVjdGVkIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSg0NC41KTsgfSB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qIE1haW4gTmF2aWdhdGlvbiBEcmF3ZXIgc3RhdGUgc3R5bGVzICovXG4uaWctbmF2LWRyYXdlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgbWF4LXdpZHRoOiA5MCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RBREVFNDtcbiAgcGFkZGluZzogMC43ZW07XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKnRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjU1LCAwLCAwLjEsIDEpOyovXG4gIC8qIHVzZSBmdWxsIHN5bnRheCwgaU9TIFNhZmFyaSB3b24ndCB3b3JrIHdpdGggdHJhbnNpdGlvbjogd2lkdGggLjNzIGVhc2UtaW4sIHRyYW5zZm9ybSAuM3MgZWFzZS1pbjsgc2hvcnRoYW5kICovXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzLCAwLjI1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4sIGVhc2UtaW47XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzLCAwcztcbiAgYm94LXNoYWRvdzogMnB4IDJweCAycHggMXB4IHJnYmEoODAsIDgwLCA4MCwgMC4xKTtcbiAgLyogc3RhdGVzICovIH1cbiAgLmlnLW5hdi1kcmF3ZXIuY29sbGFwc2VkIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDBweCwgMHB4LCAwcHgpOyB9XG4gIC5pZy1uYXYtZHJhd2VyLnJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJveC1zaGFkb3c6IC0ycHggLTJweCAycHggMXB4IHJnYmEoODAsIDgwLCA4MCwgMC4xKTsgfVxuICAuaWctbmF2LWRyYXdlci5jb2xsYXBzZWQucmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwcHgsIDBweCwgMHB4KTsgfVxuICAuaWctbmF2LWRyYXdlci5taW5pIHtcbiAgICB3aWR0aDogNjBweDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzLCAwLjJzOyB9XG4gIC5pZy1uYXYtZHJhd2VyLnBpbm5lZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmlnLW5hdi1kcmF3ZXIucGlubmVkLmNvbGxhcHNlZCB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBVdGlsaXR5IGNsYXNzZXMgZm9yIGFjdGl2ZSBwYW4gKi9cbi5pZy1uYXYtZHJhd2VyLnBhbm5pbmcge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLmlnLW5hdi1kcmF3ZXItb3ZlcmxheS5wYW5uaW5nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLyogdHJ5IGxheWVyIGNyZWF0aW9uIG1hbnVhbGx5IGluIGFkdmFuY2UgZm9yIG9wYWNpdHkgKi9cbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAuaWctbmF2LWRyYXdlci1vdmVybGF5LnBhbm5pbmcuaGlkZGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5zdHlsZS1kdW1teSB7XG4gIGhlaWdodDogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAvKiBwb3RlbnRpYWxseSBkb24ndCB1c2UgdGhpcz8gKi8gfVxuXG4vKiBOYXZpZ2F0aW9uIERyYXdlciBvdmVybGF5IHN0eWxlcyAqL1xuLmlnLW5hdi1kcmF3ZXItb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTM2LCAxMzYsIDEzNiwgMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdmlzaWJpbGl0eTtcbiAgLyogb3BhY2l0eSBtdXN0IG1hdGNoIGRyYXdlciB0cmFuc2l0aW9uLCBzdGVwIG92ZXIgdmlzaWJpbGl0eSB0byByZWR1Y2UgYW5pbWF0aW9uIGNvc3QgKi9cbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXMsIDAuMjVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiwgc3RlcC1zdGFydDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHMsIDBzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuaWctbmF2LWRyYXdlci1vdmVybGF5LmhpZGRlbiB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4sIHN0ZXAtZW5kO1xuICAgIC8qIHVzZSB2aXNpYmlsaXR5IHNvIG9wYWNpdHkgY2FuIGJlIGFuaW1hdGVkICovXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmlnLW5hdi1kcmF3ZXItb3ZlcmxheS5waW5uZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlnLWNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi5pZy1jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xuICBsZWZ0OiAyNSU7XG4gIHJpZ2h0OiAyNSU7XG4gIGJvdHRvbTogMjUlOyB9XG4gIC5pZy1jYXJvdXNlbC1pbmRpY2F0b3JzIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7IH1cbiAgLmlnLWNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG4uaWctY2Fyb3VzZWwtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pZy1jYXJvdXNlbC1pbm5lciAuaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAtby10cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICB0cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAgIHBlcnNwZWN0aXZlOiAxMDAwcHg7IH1cbiAgICAuaWctY2Fyb3VzZWwtaW5uZXIgLml0ZW0gLm5leHQsXG4gICAgLmlnLWNhcm91c2VsLWlubmVyIC5pdGVtIC5wcmV2LFxuICAgIC5pZy1jYXJvdXNlbC1pbm5lciAuaXRlbSAubmV4dC5sZWZ0LFxuICAgIC5pZy1jYXJvdXNlbC1pbm5lciAuaXRlbSAucHJldi5yaWdodCxcbiAgICAuaWctY2Fyb3VzZWwtaW5uZXIgLml0ZW0gLmFjdGl2ZS5yaWdodCxcbiAgICAuaWctY2Fyb3VzZWwtaW5uZXIgLml0ZW0gLmFjdGl2ZS5sZWZ0IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9XG4gIC5pZy1jYXJvdXNlbC1pbm5lciAuYWN0aXZlLFxuICAuaWctY2Fyb3VzZWwtaW5uZXIgLm5leHQsXG4gIC5pZy1jYXJvdXNlbC1pbm5lciAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmlnLWNhcm91c2VsLWlubmVyIC5uZXh0LFxuICAuaWctY2Fyb3VzZWwtaW5uZXIgLnByZXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmlnLWNhcm91c2VsLWlubmVyIC5uZXh0IHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5pZy1jYXJvdXNlbC1pbm5lciAucHJldiB7XG4gICAgbGVmdDogLTEwMCU7IH1cblxuLmlnLWNhcm91c2VsLWNvbnRyb2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMjZweDsgfVxuICAuaWctY2Fyb3VzZWwtY29udHJvbCA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmlnLWNhcm91c2VsLWNvbnRyb2wgc3BhbiB7XG4gICAgcGFkZGluZzogMTBweDsgfVxuXG4ubGVmdCB7XG4gIGxlZnQ6IDA7IH1cblxuLnJpZ2h0IHtcbiAgcmlnaHQ6IDA7IH1cblxuLmlnLWdvVXAge1xuICBhbmltYXRpb246IGdvVXAgMXMgZWFzZSBib3RoOyB9XG5cbi5pZy1nb0Rvd24ge1xuICBhbmltYXRpb246IGdvRG93biAxcyBlYXNlIGJvdGg7IH1cblxuLmlnLWdvTGVmdCB7XG4gIGFuaW1hdGlvbjogZ29MZWZ0IDFzIGVhc2UgYm90aDsgfVxuXG4uaWctZ29SaWdodCB7XG4gIGFuaW1hdGlvbjogZ29SaWdodCAxcyBlYXNlIGJvdGg7IH1cblxuLmlnLWZhZGUge1xuICBhbmltYXRpb246IGZhZGUgM3MgZWFzZSBib3RoOyB9XG5cbkBrZXlmcmFtZXMgZmFkZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAuMjU7IH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IC4wOyB9IH1cblxuQGtleWZyYW1lcyBnb1VwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9IH1cblxuQGtleWZyYW1lcyBnb0Rvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9IH1cblxuQGtleWZyYW1lcyBnb0xlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9IH1cblxuQGtleWZyYW1lcyBnb1JpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9IH1cbiIsImEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5odG1sIHtcclxuXHRmb250LXNpemU6IDEwMCU7XHJcblx0Zm9udC1zaXplLWFkanVzdDogMC41ODtcclxuXHRmb250LWZhbWlseTogJ1RpdGlsbGl1bSBXZWInLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGNvbG9yOiAkb2ZmLWJsYWNrO1xyXG59XHJcblxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDEtZm9udC1zaXplLXBob25lO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDEtbGluZS1oZWlnaHQtcGhvbmU7XHJcbiAgICB9XHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDItZm9udC1zaXplLXBob25lO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDItbGluZS1oZWlnaHQtcGhvbmU7XHJcbiAgICB9XHJcbiAgICBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDMtZm9udC1zaXplLXBob25lO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDMtbGluZS1oZWlnaHQtcGhvbmU7XHJcbiAgICB9XHJcbiAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDQtZm9udC1zaXplLXBob25lO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDQtbGluZS1oZWlnaHQtcGhvbmU7ICAgICBcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0LXBob25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDEtZm9udC1zaXplLXRhYmxldDtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGgxLWxpbmUtaGVpZ2h0LXRhYmxldDtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6ICRoMi1mb250LXNpemUtdGFibGV0O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDItbGluZS1oZWlnaHQtdGFibGV0O1xyXG4gICAgfVxyXG4gICAgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZS10YWJsZXQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoMy1saW5lLWhlaWdodC10YWJsZXQ7XHJcbiAgICB9XHJcbiAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDQtZm9udC1zaXplLXRhYmxldDtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGg0LWxpbmUtaGVpZ2h0LXRhYmxldDsgICAgIFxyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQtZGVza3RvcDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuKSB7XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDEtZm9udC1zaXplLWRlc2t0b3A7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoMS1saW5lLWhlaWdodC1kZXNrdG9wO1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZS1kZXNrdG9wO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkaDItbGluZS1oZWlnaHQtZGVza3RvcDtcclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6ICRoMy1mb250LXNpemUtZGVza3RvcDtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGgzLWxpbmUtaGVpZ2h0LWRlc2t0b3A7XHJcbiAgICB9XHJcbiAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkaDQtZm9udC1zaXplLWRlc2t0b3A7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRoNC1saW5lLWhlaWdodC1kZXNrdG9wOyAgICAgXHJcbiAgICB9XHJcbn0iLCJAZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBzcmM6IHVybCguLi8uLi9ub2RlX21vZHVsZXMvbWF0ZXJpYWwtZGVzaWduLWljb25zL2ljb25mb250L01hdGVyaWFsSWNvbnMtUmVndWxhci5lb3QpOyAvKiBGb3IgSUU2LTggKi9cclxuICBzcmM6IGxvY2FsKCdNYXRlcmlhbCBJY29ucycpLFxyXG4gICAgICAgbG9jYWwoJ01hdGVyaWFsSWNvbnMtUmVndWxhcicpLFxyXG4gICAgICAgdXJsKC4uLy4uL25vZGVfbW9kdWxlcy9tYXRlcmlhbC1kZXNpZ24taWNvbnMvaWNvbmZvbnQvTWF0ZXJpYWxJY29ucy1SZWd1bGFyLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICAgICB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIud29mZikgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgICB1cmwoLi4vLi4vbm9kZV9tb2R1bGVzL21hdGVyaWFsLWRlc2lnbi1pY29ucy9pY29uZm9udC9NYXRlcmlhbEljb25zLVJlZ3VsYXIudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XHJcbn1cclxuXHJcbi5tYXRlcmlhbC1pY29ucyB7XHJcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1zaXplOiAyNHB4OyAgLyogUHJlZmVycmVkIGljb24gc2l6ZSAqL1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBsaW5lLWhlaWdodDogMTtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgZGlyZWN0aW9uOiBsdHI7XHJcblxyXG4gIC8qIFN1cHBvcnQgZm9yIGFsbCBXZWJLaXQgYnJvd3NlcnMuICovXHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcblxyXG4gIC8qIFN1cHBvcnQgZm9yIFNhZmFyaSBhbmQgQ2hyb21lLiAqL1xyXG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcblxyXG4gIC8qIFN1cHBvcnQgZm9yIEZpcmVmb3guICovXHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuXHJcbiAgLyogU3VwcG9ydCBmb3IgSUUuICovXHJcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XHJcbn0iLCIvLyBHZW5lcmFsIGFwcGxpY2F0aW9uIHN0eWxpbmcgcnVsZXNcclxuaHRtbCB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuKixcclxuKjpiZWZvcmUsXHJcbio6YWZ0ZXIge1xyXG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIC8vIG1hcmdpbjogMCAxMHB4O1xyXG59XHJcblxyXG4kYnJvd3Nlci1jb250ZXh0OiAxNnB4OyIsIi8qIE1haW4gTmF2aWdhdGlvbiBEcmF3ZXIgc3RhdGUgc3R5bGVzICovXHJcblxyXG4kYmFja2dyb3VuZDogI0RBREVFNDtcclxuJG92ZXJsYXk6IHJnYmEoMTM2LDEzNiwxMzYsMC41KTtcclxuJHNoYWRvdzogcmdiYSg4MCwgODAsIDgwLCAwLjEpO1xyXG5cclxuLmlnLW5hdi1kcmF3ZXIge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICBtYXgtd2lkdGg6IDkwJTtcclxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xyXG4gICAgcGFkZGluZzogMC43ZW07XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgLyp0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC41NSwgMCwgMC4xLCAxKTsqL1xyXG4gICAgLyogdXNlIGZ1bGwgc3ludGF4LCBpT1MgU2FmYXJpIHdvbid0IHdvcmsgd2l0aCB0cmFuc2l0aW9uOiB3aWR0aCAuM3MgZWFzZS1pbiwgdHJhbnNmb3JtIC4zcyBlYXNlLWluOyBzaG9ydGhhbmQgKi9cclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cywgMC4yNXM7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiwgZWFzZS1pbjtcclxuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzLCAwcztcclxuICAgIGJveC1zaGFkb3c6IDJweCAycHggMnB4IDFweCAkc2hhZG93O1xyXG4gICAgXHJcbiAgICAvKiBzdGF0ZXMgKi9cclxuICAgIFxyXG4gICAgJi5jb2xsYXBzZWQge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMHB4LDBweCwwcHgpOyAgICBcclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5yaWdodCB7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3gtc2hhZG93OiAtMnB4IC0ycHggMnB4IDFweCAkc2hhZG93O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLmNvbGxhcHNlZC5yaWdodCB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDBweCwwcHgsMHB4KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5taW5pIHtcclxuICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzLCAwLjJzO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLnBpbm5lZCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IFxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLnBpbm5lZC5jb2xsYXBzZWQge1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB3aWR0aDogMDsgICAgICBcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbn0gIFxyXG4gICAgXHJcbi8qIFV0aWxpdHkgY2xhc3NlcyBmb3IgYWN0aXZlIHBhbiAqL1xyXG4uaWctbmF2LWRyYXdlci5wYW5uaW5nIHtcclxuICAgIG92ZXJmbG93LXg6aGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbjogbm9uZTsgICAgICBcclxufVxyXG5cclxuLmlnLW5hdi1kcmF3ZXItb3ZlcmxheS5wYW5uaW5nIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApOyAvKiB0cnkgbGF5ZXIgY3JlYXRpb24gbWFudWFsbHkgaW4gYWR2YW5jZSBmb3Igb3BhY2l0eSAqL1xyXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcclxuICAgIFxyXG4gICAgJi5oaWRkZW4ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7ICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4uc3R5bGUtZHVtbXkge1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uOiBub25lO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyAvKiBwb3RlbnRpYWxseSBkb24ndCB1c2UgdGhpcz8gKi9cclxufVxyXG5cclxuXHJcblxyXG4vKiBOYXZpZ2F0aW9uIERyYXdlciBvdmVybGF5IHN0eWxlcyAqL1xyXG4uaWctbmF2LWRyYXdlci1vdmVybGF5IHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3ZlcmxheTtcclxuICAgXHJcbiAgIFxyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdmlzaWJpbGl0eTtcclxuICAgIC8qIG9wYWNpdHkgbXVzdCBtYXRjaCBkcmF3ZXIgdHJhbnNpdGlvbiwgc3RlcCBvdmVyIHZpc2liaWxpdHkgdG8gcmVkdWNlIGFuaW1hdGlvbiBjb3N0ICovXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cywgMC4yNXM7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiwgc3RlcC1zdGFydDtcclxuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzLCAwcztcclxuICAgIFxyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgXHJcbiAgICAmLmhpZGRlbiB7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4sIHN0ZXAtZW5kO1xyXG4gICAgICAgIC8qIHVzZSB2aXNpYmlsaXR5IHNvIG9wYWNpdHkgY2FuIGJlIGFuaW1hdGVkICovXHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyBcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLnBpbm5lZCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTsgICAgICAgICAgICBcclxuICAgIH1cclxufSIsIiRlbGVtZW50U2VwYXJhdG9yOiAnX18nO1xyXG4kc3ViRWxlbWVudFNlcGFyYXRvcjogJy0nO1xyXG4kbW9kaWZpZXJTZXBhcmF0b3I6ICctLSc7XHJcblxyXG5AZnVuY3Rpb24gY29udGFpbnNNb2RpZmllcigkc2VsZWN0b3IpIHtcclxuICAgICRzZWxlY3Rvcjogc2VsZWN0b3JUb1N0cmluZygkc2VsZWN0b3IpO1xyXG4gICAgQGlmIHN0ci1pbmRleCgkc2VsZWN0b3IsICRtb2RpZmllclNlcGFyYXRvcikge1xyXG4gICAgICAgIEByZXR1cm4gdHJ1ZTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzZWxlY3RvclRvU3RyaW5nKCRzZWxlY3Rvcikge1xyXG4gICAgJHNlbGVjdG9yOiBpbnNwZWN0KCRzZWxlY3Rvcik7IC8vY2FzdCB0byBzdHJpbmdcclxuICAgICRzZWxlY3Rvcjogc3RyLXNsaWNlKCRzZWxlY3RvciwgMiwgLTIpOyAvL3JlbW92ZSBicmFja2V0c1xyXG4gICAgQHJldHVybiAkc2VsZWN0b3I7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBnZXRCbG9jaygkc2VsZWN0b3IpIHtcclxuICAgICRzZWxlY3Rvcjogc2VsZWN0b3JUb1N0cmluZygkc2VsZWN0b3IpO1xyXG4gICAgJG1vZGlmaWVyU3RhcnQ6IHN0ci1pbmRleCgkc2VsZWN0b3IsICRtb2RpZmllclNlcGFyYXRvcikgLSAxO1xyXG4gICAgQHJldHVybiBzdHItc2xpY2UoJHNlbGVjdG9yLCAwLCAkbW9kaWZpZXJTdGFydCk7XHJcbn1cclxuXHJcbkBtaXhpbiBiKCRibG9jaykge1xyXG4gICAgLiN7JGJsb2NrfSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBlKCRlbGVtZW50LCAkc3ViLWVsZW1lbnQ6IGZhbHNlKSB7XHJcbiAgICAkc2VsZWN0b3I6ICY7XHJcblxyXG4gICAgQGlmIGNvbnRhaW5zTW9kaWZpZXIoJHNlbGVjdG9yKSB7XHJcblxyXG4gICAgICAgICRibG9jazogZ2V0QmxvY2soJHNlbGVjdG9yKTtcclxuXHJcbiAgICAgICAgQGlmICRzdWItZWxlbWVudCA9PSBmYWxzZSB7XHJcbiAgICAgICAgICAgIEBhdC1yb290IHtcclxuICAgICAgICAgICAgICAgICN7JHNlbGVjdG9yfSB7XHJcbiAgICAgICAgICAgICAgICAgICAgI3skYmxvY2srJGVsZW1lbnRTZXBhcmF0b3IrJGVsZW1lbnR9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBAZWxzZSBpZiAkc3ViLWVsZW1lbnQgPT0gdHJ1ZSB7XHJcbiAgICAgICAgICAgIEBhdC1yb290IHtcclxuICAgICAgICAgICAgICAgICN7JHNlbGVjdG9yKyRzdWJFbGVtZW50U2VwYXJhdG9yKyRlbGVtZW50fSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICBAaWYgJHN1Yi1lbGVtZW50ID09IGZhbHNlIHtcclxuICAgICAgICAgICAgQGF0LXJvb3Qge1xyXG4gICAgICAgICAgICAgICAgI3skc2VsZWN0b3IrJGVsZW1lbnRTZXBhcmF0b3IrJGVsZW1lbnR9IHtcclxuICAgICAgICAgICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gQGVsc2UgaWYgJHN1Yi1lbGVtZW50ID09IHRydWUge1xyXG4gICAgICAgICAgICAjeyRzZWxlY3Rvciskc3ViRWxlbWVudFNlcGFyYXRvciskZWxlbWVudH0ge1xyXG4gICAgICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtKCRtb2RpZmllcikge1xyXG4gICAgQGF0LXJvb3Qge1xyXG4gICAgICAgICN7Jn0jeyRtb2RpZmllclNlcGFyYXRvciskbW9kaWZpZXJ9IHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiJWlnLWlucHV0LWRpc3BsYXkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDIwcHggMDtcclxuICAgIHBhZGRpbmc6IDAgNXB4O1xyXG4gICAgbWluLWhlaWdodDogNDBweDtcclxuICAgIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIFdlYktpdCwgQmxpbmssIEVkZ2UgKi9cclxuICAgICAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xyXG4gICAgfVxyXG59XHJcblxyXG4laWctZm9ybS1sYWJlbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0b3A6IDA7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcclxuICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XHJcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xyXG4gICAgY3Vyc29yOiB0ZXh0O1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXQsXHJcbiAgICBzY2FsZSAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSksXHJcbiAgICBjb2xvciAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbiVpZy1mb3JtLWxhYmVsLS1mbG9hdCB7XHJcbiAgICBjb2xvcjogJGxhYmVsLWFjdGl2ZS1jb2xvcjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCkgc2NhbGUoLjc1KTtcclxufVxyXG5cclxuJWlnLWZvcm0tbGFiZWwtLWZpbGxlZCB7XHJcbiAgICBjb2xvcjogJGxhYmVsLWFjdGl2ZS1jb2xvcjtcclxufVxyXG5cclxuJWlnLWZvcm0tbGFiZWwtLWZvY3VzZWQge1xyXG4gICAgY29sb3I6ICRsYWJlbC1mb2N1cy1jb2xvcjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCkgc2NhbGUoLjc1KTtcclxufVxyXG5cclxuJWlnLWZvcm0taW5wdXQge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206ICRpbnB1dC1ib3JkZXI7XHJcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XHJcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbiVpZy1mb3JtLWlucHV0LS1mb2N1c2VkIHtcclxuICAgIGJvcmRlci1ib3R0b206ICRpbnB1dC1ib3JkZXItZm9jdXM7XHJcbn1cclxuXHJcbiVpZy1mb3JtLWlucHV0LS1kaXNhYmxlZCB7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDExNywgMTE3LCAxMTcsIC41KTtcclxufVxyXG5cclxuJWlnLWZvcm0tbGFiZWwtLWRpc2FibGVkIHtcclxuICAgIGNvbG9yOiBsaWdodGVuKCRsYWJlbC1jb2xvciwgODAlKTtcclxufVxyXG5cclxuJWlnLWZvcm0taW5wdXQtLXN1Y2Nlc3Mge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlci1zdWNjZXNzO1xyXG59XHJcblxyXG4laWctZm9ybS1sYWJlbC0tc3VjY2VzcyB7XHJcbiAgICBjb2xvcjogJHN1Y2Nlc3MtY29sb3I7XHJcbn1cclxuXHJcbiVpZy1mb3JtLWlucHV0LS13YXJuIHtcclxuICAgIGJvcmRlci1ib3R0b206ICRpbnB1dC1ib3JkZXItd2FybjtcclxufVxyXG5cclxuJWlnLWZvcm0tbGFiZWwtLXdhcm4ge1xyXG4gICAgY29sb3I6ICR3YXJuLWNvbG9yO1xyXG59XHJcblxyXG4laWctZm9ybS1pbnB1dC0tZXJyb3Ige1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlci1lcnJvcjtcclxufVxyXG5cclxuJWlnLWZvcm0tbGFiZWwtLWVycm9yIHtcclxuICAgIGNvbG9yOiAkZXJyb3ItY29sb3I7XHJcbn1cclxuXHJcbiVpZy10ZXh0YXJlYSB7XHJcbiAgICByZXNpemU6IG5vbmU7XHJcbn0iLCIlY2J4LWxibC1kaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGhlaWdodDogJGNoZWNrYm94LWhlaWdodDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkY2hlY2tib3gtaGVpZ2h0O1xyXG4gICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xyXG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcclxuICAgIHBhZGRpbmctbGVmdDogJGNoZWNrYm94LWxhYmVsLXBhZGRpbmc7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAkY2hlY2tib3gtcmFkaXVzO1xyXG4gICAgfVxyXG59XHJcblxyXG4lY2J4LWxibC1ub3RjaGVja2VkLWJlZm9yZSB7XHJcbiAgICB3aWR0aDogJGNoZWNrYm94LXRpY2std2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRjaGVja2JveC10aWNrLWhlaWdodDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHRvcDogMXB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVaKDM3ZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZykgc2NhbGUoLjEpO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAyMCUgNDAlO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xyXG59XHJcblxyXG4lY2J4LWxibC1ub3RjaGVja2VkLWFmdGVyIHtcclxuICAgIHdpZHRoOiAkY2hlY2tib3gtd2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRjaGVja2JveC1oZWlnaHQ7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWVtcHR5LWNvbG9yO1xyXG4gICAgei1pbmRleDogMDtcclxufVxyXG5cclxuJWNieC1sYmwtY2hlY2tlZC1iZWZvcmUge1xyXG4gICAgdG9wOiAxcHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6ICRjaGVja2JveC10aWNrLXdpZHRoO1xyXG4gICAgaGVpZ2h0OiAkY2hlY2tib3gtdGljay1oZWlnaHQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNoZWNrYm94LXRpY2stY29sb3I7XHJcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkY2hlY2tib3gtdGljay1jb2xvcjtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMzdkZWcpIHNjYWxlKDEpO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XHJcbn1cclxuXHJcbiVjYngtbGJsLWNoZWNrZWQtYWZ0ZXIge1xyXG4gICAgd2lkdGg6ICRjaGVja2JveC13aWR0aDtcclxuICAgIGhlaWdodDogJGNoZWNrYm94LWhlaWdodDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWZpbGwtY29sb3I7XHJcbn1cclxuXHJcbiVjYngtbGJsLWRpc2FibGVkIHtcclxuICAgIGNvbG9yOiAjZDFkMWQxO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbiVjYngtbGJsLWNoZWNrZWQtLWRpc2FibGVkLWJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuJWNieC1sYmwtY2hlY2tlZC0tZGlzYWJsZWQtYWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLXNvbGlkLWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XHJcbn1cclxuXHJcbiVjYngtbGJsLW5vdGNoZWNrZWQtLWRpc2FibGVkLWJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4lY2J4LWxibC1ub3RjaGVja2VkLS1kaXNhYmxlZC1hZnRlciB7XHJcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1zb2xpZC1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4lY2J4LWxibC0taW5kZXRlcm1pbmF0ZS1iZWZvcmUge1xyXG5cclxufVxyXG5cclxuJWNieC1sYmwtLWluZGV0ZXJtaW5hdGUtYWZ0ZXIge1xyXG4gICAgd2lkdGg6ICRjaGVja2JveC13aWR0aDtcclxuICAgIGhlaWdodDogJGNoZWNrYm94LWhlaWdodDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWZpbGwtY29sb3I7XHJcbn0iLCIlcmFkaW8tbGJsLWRpc3BsYXkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgaGVpZ2h0OiAkcmFkaW8taGVpZ2h0O1xyXG4gICAgbGluZS1oZWlnaHQ6ICRyYWRpby1oZWlnaHQ7XHJcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XHJcbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY2hlY2tib3gtbGFiZWwtcGFkZGluZztcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6ICRyYWRpby13aWR0aDtcclxuICAgICAgICBoZWlnaHQ6ICRyYWRpby1oZWlnaHQ7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAkcmFkaW8tcmFkaXVzO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XHJcbiAgICB9XHJcbn1cclxuXHJcbiVyYWRpby1sYmwtbm90Y2hlY2tlZC0tYmVmb3JlIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbn1cclxuXHJcbiVyYWRpby1sYmwtbm90Y2hlY2tlZC0tYWZ0ZXIge1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWVtcHR5LWNvbG9yO1xyXG59XHJcblxyXG4lcmFkaW8tbGJsLWNoZWNrZWQtLWJlZm9yZSB7XHJcbiAgICBib3JkZXI6ICRyYWRpby1ib3JkZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmFkaW8tZmlsbC1jb2xvcjtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xyXG59XHJcblxyXG4lcmFkaW8tbGJsLWNoZWNrZWQtLWFmdGVyIHtcclxuICAgIGJvcmRlcjogJHJhZGlvLWJvcmRlcjtcclxufVxyXG5cclxuJXJhZGlvLWxibC0tZGlzYWJsZWQge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xyXG59XHJcblxyXG4lcmFkaW8tbGJsLW5vdGNoZWNrZWQtLWRpc2FibGVkLWFmdGVyIHtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcclxufVxyXG5cclxuJXJhZGlvLWxibC1jaGVja2VkLS1kaXNhYmxlZC1iZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xyXG59IFxyXG5cclxuJXJhZGlvLWxibC1jaGVja2VkLS1kaXNhYmxlZC1hZnRlciB7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XHJcbn0iLCIlc3dpdGNoLWxibC1kaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogJHN3aXRjaC1tYXJnaW47XHJcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcclxuICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLWJhY2tncm91bmQ7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXJhZGl1cztcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRjb250ZW50OiAnJztcclxuICAgICAgICB3aWR0aDogJHN3aXRjaC1sYWJlbC13aWR0aDtcclxuXHRcdGhlaWdodDogJHN3aXRjaC1sYWJlbC1oZWlnaHQ7XHJcblx0XHR0b3A6IC0zcHg7XHJcblx0XHRsZWZ0OiAtMXB4O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogJHN3aXRjaC1yYWRpdXM7XHJcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcblx0XHRib3gtc2hhZG93OiAkc3dpdGNoLXNoYWRvdztcclxuXHRcdHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xyXG4gICAgfVxyXG59XHJcblxyXG4lc3dpdGNoLWxibC0tb24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1hY3RpdmUtYmFja2dyb3VuZDtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGxlZnQ6IDE2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHJhZGlvLWZpbGwtY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbiVzd2l0Y2gtbGJsLS1kaXNhYmxlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjRDFEMUQxO1xyXG4gICAgICAgIGJveC1zaGFkb3c6ICRzd2l0Y2gtZGlzYWJsZWQtc2hhZG93O1xyXG4gICAgfVxyXG59IiwiJXRhYi13cmFwcGVyLWRpc3BsYXkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbiV0YWJiYXItaW5uZXItZGlzcGxheSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxufVxyXG5cclxuJXRhYmJhci1tZW51IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogNTZweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAkdGFiLWJhci1iYWNrZ3JvdW5kO1xyXG4gICAgY29sb3I6IHNldC1jb2xvcigkdGFiLWJhci1iYWNrZ3JvdW5kKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbiV0YWJiYXItbWVudS0tdG9wIHtcclxuICAgIHRvcDogMDtcclxuICAgIGJveC1zaGFkb3c6IDBweCAycHggNHB4IDBweCByZ2JhKDcyLCA3MiwgNzIsIDAuMTApO1xyXG59XHJcblxyXG4ldGFiYmFyLW1lbnUtLWJvdHRvbSB7XHJcbiAgICBib3gtc2hhZG93OiAwcHggLTJweCA0cHggMHB4IHJnYmEoNzIsIDcyLCA3MiwgMC4xMCk7XHJcbn1cclxuXHJcbiV0YWJiYXItbWVudS1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1pbi13aWR0aDogODBweDtcclxuICAgIG1heC13aWR0aDogMTY4cHg7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4ldGFiYmFyLW1lbnUtaXRlbS0tZGlzYWJsZWQge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG4lYWN0aXZlLXRhYiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIC4yNXMgZWFzZS1pbjsgXHJcbn1cclxuXHJcbiV0YWItbGFiZWwge1xyXG4gICAgbWF4LXdpZHRoOiAxNjhweDtcclxuICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTJweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgb3BhY2l0eTogLjc1O1xyXG59XHJcblxyXG4ldGFiLWljb24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIG9wYWNpdHk6IC43NTtcclxufVxyXG5cclxuJXRhYi1sYWJlbC0tc2VsZWN0ZWQsXHJcbiV0YWItaWNvbi0tc2VsZWN0ZWQge1xyXG4gICAgQGV4dGVuZCAlYWN0aXZlLXRhYjtcclxufSIsIiVpZy1saXN0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWJhY2tncm91bmQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCR3aGl0ZSwgMTAlKTtcclxuICAgIH1cclxufVxyXG5cclxuJWlnLWxpc3QtaXRlbS1kaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxufVxyXG5cclxuJWlnLWxpc3QtaGVhZGVyIHtcclxuICAgIGNvbG9yOiAkbGlzdC1oZWFkZXItY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1oZWFkZXItYmFja2dyb3VuZDtcclxuICAgIGZvbnQtc2l6ZTogJGxpc3QtaGVhZGVyLWZvbnQtc2l6ZTtcclxuICAgIGZvbnQtd2VpZ2h0OiAkbGlzdC1oZWFkZXItZm9udC13ZWlnaHQ7XHJcbiAgICBoZWlnaHQ6ICRsaXN0LWhlYWRlci1oZWlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtaGVhZGVyLWxpbmUtaGVpZ2h0O1xyXG4gICAgcGFkZGluZzogJGxpc3QtaXRlbS1wYWRkaW5nO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbn1cclxuXHJcbiVpZy1saXN0LWl0ZW0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6ICRsaXN0LWl0ZW0tcGFkZGluZztcclxuICAgIGhlaWdodDogJGxpc3QtaXRlbS1oZWlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtaXRlbS1saW5lLWhlaWdodDtcclxuICAgIGZvbnQtc2l6ZTogJGxpc3QtaXRlbS1mb250LXNpemU7XHJcbiAgICBjb2xvcjogJGxpc3QtaXRlbS1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWl0ZW0tYmFja2dyb3VuZDtcclxuICAgIHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbiVpZy1saXN0LWl0ZW0tLWFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1pdGVtLWFjdGl2ZS1iYWNrZ3JvdW5kO1xyXG4gICAgYm94LXNoYWRvdzogJGxpc3QtaXRlbS1hY3RpdmUtc2hhZG93O1xyXG59XHJcbiIsIiVhdmF0YXItZGlzcGxheSB7XHJcbiAgICBtYXgtd2lkdGg6IGVtKDQ4cHgsIDE2cHgpO1xyXG4gICAgbWF4LWhlaWdodDogZW0oNDhweCwgMTZweCk7XHJcbn1cclxuXHJcbiVhdmF0YXItLXJvdW5kZWQge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJTtcclxufSIsIiVidXR0b24tZGlzcGxheSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtaW4td2lkdGg6IDg4cHg7XHJcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XHJcbiAgICBmb250LXNpemU6ICRidXR0b24tZm9udC1zaXplO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogJGJ1dHRvbi1jb2xvcjtcclxuICAgIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7ICBcclxuICAgIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcclxufVxyXG5cclxuJWJ1dHRvbi1mbGF0IHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRidXR0b24tZmxhdC1ob3Zlci1iYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZsYXQtZm9jdXMtYmFja2dyb3VuZDtcclxuICAgIH1cclxufVxyXG5cclxuJWJ1dHRvbi1yYWlzZWQge1xyXG4gICAgY29sb3I6ICRidXR0b24tcmFpc2VkLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZDtcclxuICAgIGJveC1zaGFkb3c6ICRidXR0b24tcmFpc2VkLXNoYWRvdztcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZvY3VzLWJhY2tncm91bmQ7XHJcbiAgICAgIGJveC1zaGFkb3c6ICRidXR0b24tcmFpc2VkLXNoYWRvdztcclxuICAgIH1cclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRidXR0b24tZm9jdXMtYmFja2dyb3VuZDtcclxuICAgICAgYm94LXNoYWRvdzogJGJ1dHRvbi1yYWlzZWQtZm9jdXMtc2hhZG93O1xyXG4gICAgfVxyXG59XHJcblxyXG4lYnV0dG9uLWdyYWRpZW50IHtcclxuICAgIGNvbG9yOiAkYnV0dG9uLWdyYWRpZW50LWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1ncmFkaWVudC1iYWNrZ3JvdW5kO1xyXG4gICAgYm94LXNoYWRvdzogJGJ1dHRvbi1ncmFkaWVudC1zaGFkb3c7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZvY3VzLWdyYWRpZW50O1xyXG4gICAgICAgIGJveC1zaGFkb3c6ICRidXR0b24tZ3JhZGllbnQtc2hhZG93O1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZvY3VzLWdyYWRpZW50O1xyXG4gICAgICAgIGJveC1zaGFkb3c6ICRidXR0b24tZ3JhZGllbnQtZm9jdXMtc2hhZG93O1xyXG4gICAgfSAgICBcclxufVxyXG5cclxuJWJ1dHRvbi1mYWIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGNvbG9yOiAkYnV0dG9uLXJhaXNlZC1jb2xvcjtcclxuICAgIG1pbi13aWR0aDogMXB4O1xyXG4gICAgd2lkdGg6ICRidXR0b24tZmxvYXRpbmctd2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctaGVpZ2h0O1xyXG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kO1xyXG4gICAgYm94LXNoYWRvdzogJGJ1dHRvbi1mbG9hdGluZy1zaGFkb3c7XHJcbiAgICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1mbG9hdGluZy1yYWRpdXM7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYm94LXNoYWRvdzogJGJ1dHRvbi1mbG9hdGluZy1ob3Zlci1zaGFkb3c7XHJcbiAgICB9XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWZvY3VzLWJhY2tncm91bmQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbiVidXR0b24tZmFiLWljb24ge1xyXG4gICAgY29sb3I6ICRidXR0b24tcmFpc2VkLWNvbG9yO1xyXG59XHJcblxyXG4lYnV0dG9uLWRpc2FibGVkIHtcclxuICAgIGNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZDogJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IFxyXG59IiwiJWlnLWJhZGdlLWRpc3BsYXkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1pbi13aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIG1hcmdpbi1yaWdodDogLTI1JTtcclxuICAgIGZvbnQtc2l6ZTogMTJweDsgICAgICAgICAgICAgICAgICBcclxuICAgIHRvcDogMDsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCUgNTAlO1xyXG4gICAgcGFkZGluZzogMnB4O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4IHJnYmEoNzIsIDcyLCA3MiwgMC41MCk7XHJcbn1cclxuXHJcbiVpZy1iYWRnZS0taGlkZGVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn0iLCJAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIlRpdGlsbGl1bSBXZWJcIjtcclxuICAgIHNyYzogbG9jYWwoVGl0aWxsaXVtIFdlYiBMaWdodCksIHVybCgnI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItTGlnaHQudHRmJyk7XHJcbiAgICBzcmM6IHVybChcIiN7JHRpdGlsbGl1bS1mb250LXBhdGh9VGl0aWxsaXVtV2ViLUxpZ2h0LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbn1cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogXCJUaXRpbGxpdW0gV2ViXCI7XHJcbiAgICBzcmM6IGxvY2FsKFRpdGlsbGl1bSBXZWIgUmVndWxhciksIHVybCgnI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItUmVndWxhci50dGYnKTtcclxuICAgIHNyYzogdXJsKFwiI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG59XHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiVGl0aWxsaXVtIFdlYlwiO1xyXG4gICAgc3JjOiBsb2NhbChUaXRpbGxpdW0gV2ViIFNlbWktQm9sZCksIHVybCgnI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItU2VtaUJvbGQudHRmJyk7XHJcbiAgICBzcmM6IHVybChcIiN7JHRpdGlsbGl1bS1mb250LXBhdGh9VGl0aWxsaXVtV2ViLVNlbWlCb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogXCJUaXRpbGxpdW0gV2ViXCI7XHJcbiAgICBzcmM6IGxvY2FsKFRpdGlsbGl1bSBXZWIgQm9sZCksIHVybCgnI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItQm9sZC50dGYnKTtcclxuICAgIHNyYzogdXJsKFwiI3skdGl0aWxsaXVtLWZvbnQtcGF0aH1UaXRpbGxpdW1XZWItQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59IiwiQGluY2x1ZGUgYihidG4tY29udGFpbmVyKSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuQGluY2x1ZGUgYihpZy1idXR0b24pIHtcclxuICBAZXh0ZW5kICVidXR0b24tZGlzcGxheTtcclxuXHJcbiAgQGluY2x1ZGUgbShmbGF0KSB7XHJcbiAgICBAZXh0ZW5kICVidXR0b24tZGlzcGxheTtcclxuICAgIEBleHRlbmQgJWJ1dHRvbi1mbGF0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbShyYWlzZWQpIHtcclxuICAgIEBleHRlbmQgJWJ1dHRvbi1kaXNwbGF5O1xyXG4gICAgQGV4dGVuZCAlYnV0dG9uLXJhaXNlZDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG0oZ3JhZGllbnQpIHtcclxuICAgIEBleHRlbmQgJWJ1dHRvbi1kaXNwbGF5O1xyXG4gICAgQGV4dGVuZCAlYnV0dG9uLWdyYWRpZW50O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbShmYWIpIHtcclxuICAgIEBleHRlbmQgJWJ1dHRvbi1kaXNwbGF5O1xyXG4gICAgQGV4dGVuZCAlYnV0dG9uLWZhYjtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG0oZGlzYWJsZWQpIHtcclxuICAgIEBleHRlbmQgJWJ1dHRvbi1kaXNwbGF5O1xyXG4gICAgQGV4dGVuZCAlYnV0dG9uLWRpc2FibGVkO1xyXG4gIH1cclxufSIsIkBtaXhpbiBoaWRlLWRlZmF1bHQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIG1hcmdpbjogMDtcclxuICB6LWluZGV4OiAtMTtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgbGVmdDogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG5cclxuQG1peGluIGxpbmVhci1ncmFkaWVudCgkZGlyZWN0aW9uLCAkY29sb3Itc3RvcHMuLi4pIHtcclxuICAvLyBEaXJlY3Rpb24gaGFzIGJlZW4gb21pdHRlZCBhbmQgaGFwcGVucyB0byBiZSBhIGNvbG9yLXN0b3BcclxuICBAaWYgaXMtZGlyZWN0aW9uKCRkaXJlY3Rpb24pID09IGZhbHNlIHtcclxuICAgICRjb2xvci1zdG9wczogJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzO1xyXG4gICAgJGRpcmVjdGlvbjogMTgwZGVnO1xyXG4gIH1cclxuXHJcbiAgYmFja2dyb3VuZDogbnRoKG50aCgkY29sb3Itc3RvcHMsIDEpLCAxKTtcclxuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWdhY3ktZGlyZWN0aW9uKCRkaXJlY3Rpb24pLCAkY29sb3Itc3RvcHMpO1xyXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgkZGlyZWN0aW9uLCAkY29sb3Itc3RvcHMpO1xyXG59IiwiaWctdGFiIHtcclxuICAgIC5pZy10YWItaW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7IFxyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYihpZy10YWItYmFyLWlubmVyKSB7XHJcbiAgICBAZXh0ZW5kICV0YWJiYXItaW5uZXItZGlzcGxheTtcclxuXHJcbiAgICBAaW5jbHVkZSBiKHRhYi1pY29uKSB7XHJcbiAgICAgICAgQGV4dGVuZCAldGFiLWljb247XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYih0YWItbGFiZWwpIHtcclxuICAgICAgICBAZXh0ZW5kICV0YWItbGFiZWw7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgZShtZW51KSB7XHJcbiAgICAgICAgQGV4dGVuZCAldGFiYmFyLW1lbnU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGUoaXRlbSwgdHJ1ZSkge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV0YWJiYXItbWVudS1pdGVtO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbShzZWxlY3RlZCkge1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGIodGFiLWljb24pIHtcclxuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kICV0YWItaWNvbi0tc2VsZWN0ZWQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYih0YWItbGFiZWwpIHtcclxuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kICV0YWItbGFiZWwtLXNlbGVjdGVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBtKGRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICV0YWJiYXItbWVudS1pdGVtLS1kaXNhYmxlZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbSh0b3ApIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAldGFiYmFyLW1lbnUtLXRvcDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG0oYm90dG9tKSB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXRhYmJhci1tZW51LS1ib3R0b207XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNlbGVjdGVkIHtcclxuXHRmcm9tIHt0cmFuc2Zvcm06c2NhbGUoMCkgfVxyXG5cdHRvIHsgdHJhbnNmb3JtOnNjYWxlKDQ0LjUpIH1cclxufSIsIltoaWRkZW5dIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn0iLCIuaWctY2Fyb3VzZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4uaWctY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGxlZnQ6IDI1JTtcbiAgICByaWdodDogMjUlO1xuICAgIGJvdHRvbTogMjUlO1xuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIG1hcmdpbjogMXB4O1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1cblxuICAgIC5hY3RpdmUge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB9XG59XG5cbi5pZy1jYXJvdXNlbC1pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogIC41cyBlYXNlLWluLW91dCBsZWZ0O1xuICAgICAgICB0cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQgbGVmdDtcbiAgICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAgICAgICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xuXG4gICAgICAgIC5uZXh0LFxuICAgICAgICAucHJldixcbiAgICAgICAgLm5leHQubGVmdCxcbiAgICAgICAgLnByZXYucmlnaHQsXG4gICAgICAgIC5hY3RpdmUucmlnaHQsXG4gICAgICAgIC5hY3RpdmUubGVmdCwge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWN0aXZlLFxuICAgIC5uZXh0LFxuICAgIC5wcmV2IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLm5leHQsXG4gICAgLnByZXYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLm5leHQge1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgIC5wcmV2IHtcbiAgICAgICAgbGVmdDogLTEwMCU7XG4gICAgfVxufVxuXG4uaWctY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAuNSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuXG4gICAgOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG59XG5cbi5sZWZ0IHtcbiAgICBsZWZ0OiAwO1xufVxuXG4ucmlnaHQge1xuICAgIHJpZ2h0OiAwO1xufVxuXG5cbi5pZy1nb1VwIHtcbiAgICBhbmltYXRpb246IGdvVXAgMXMgZWFzZSBib3RoO1xufVxuLmlnLWdvRG93biB7XG4gICAgYW5pbWF0aW9uOiBnb0Rvd24gMXMgZWFzZSBib3RoO1xufVxuXG4uaWctZ29MZWZ0IHtcbiAgICBhbmltYXRpb246IGdvTGVmdCAxcyBlYXNlIGJvdGg7XG59XG5cbi5pZy1nb1JpZ2h0IHtcbiAgICBhbmltYXRpb246IGdvUmlnaHQgMXMgZWFzZSBib3RoO1xufVxuXG4uaWctZmFkZSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlIDNzIGVhc2UgYm90aDtcbn1cblxuXG5Aa2V5ZnJhbWVzIGZhZGUge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogLjI1O1xuXG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IC4wO1xuXG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGdvVXAge1xuICAgIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cbn1cblxuQGtleWZyYW1lcyBnb0Rvd24ge1xuICAgIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG59XG5cbkBrZXlmcmFtZXMgZ29MZWZ0IHtcbiAgICBmcm9tIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIGdvUmlnaHQge1xuICAgIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cbn0iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */ diff --git a/src/avatar/avatar.html b/src/avatar/avatar.html index d63136c082d..b11de523f89 100644 --- a/src/avatar/avatar.html +++ b/src/avatar/avatar.html @@ -1 +1,4 @@ - \ No newline at end of file +
+ + more_horiz +
diff --git a/src/avatar/avatar.spec.ts b/src/avatar/avatar.spec.ts index f7b62631b0a..adaf9cecc2f 100644 --- a/src/avatar/avatar.spec.ts +++ b/src/avatar/avatar.spec.ts @@ -26,16 +26,17 @@ describe('Avatar', function(){ }); }); -@Component({ template: ``}) +@Component({ template: ` + `}) class InitAvatar { } -@Component({ template: ``}) class AvatarWithAttribs { initials: string = 'ZK'; bgColor: string = 'lightblue'; - source: string = 'https://unsplash.it/60/60?image=55'; roundShape: string = "false"; } \ No newline at end of file diff --git a/src/avatar/avatar.ts b/src/avatar/avatar.ts index b7133cc501b..08b0a173d5b 100644 --- a/src/avatar/avatar.ts +++ b/src/avatar/avatar.ts @@ -7,40 +7,86 @@ import { OnInit, Input, Output, - ViewChild + ViewChild, + HostBinding } from '@angular/core'; import { CommonModule } from "@angular/common"; +export enum Size { SMALL, MEDIUM, LARGE }; + @Component({ selector: 'ig-avatar', moduleId: module.id, templateUrl: 'avatar.html', // host:{ - + // '[class]': '"ig-avatar--" + _size' // }, - styles: [`.rounded { - border-radius: 50%; - }`] + styles: [` + .ig-avatar--small { + width: 45px; + height: 45px; + } + .ig-avatar--medium { + width: 60px; + height: 60px; + } + .ig-avatar--large { + width: 75px; + height: 75px; + } + .ig-avatar--empty { + text-align:center; + background-color: lightgray; + vertical-align: middle; + } + `] }) export class Avatar { - @ViewChild('image') wrapper: ElementRef; + @ViewChild('image') image: ElementRef; + @Input() initials: string; - @Input() source: string; + @Input() src: string; @Input() roundShape: string = "false"; - @Input() bgColor: string; - @Input() width: number = 60; - @Input() textColor: string = 'white'; + @Input() color: string = 'white'; protected fontname = "Titillium Web"; + private _size: string; + private _bgColor: string; + public SizeEnum = Size; + + get size() : string{ + return this._size === undefined ? "small" : this._size; + } + + @Input("size") + set size(value: string){ + var sizeType = this.SizeEnum[value.toUpperCase()]; + + if(sizeType === undefined){ + this._size = "small"; + } else { + this._size = value; + } + } + + get bgColor(): string { + return this._bgColor; + } + + @Input("bgColor") + set bgColor(value: string) { + var color = value === "" ? "lightgrey" : value; + this._bgColor = color; + } public get srcImage() { - return this.wrapper.nativeElement.src; + return this.image ? this.image.nativeElement.src : ""; } public set srcImage(value: string) { - this.wrapper.nativeElement.src = value; + this.image.nativeElement.src = value; } - private get isRounded() : boolean{ + get isRounded() : boolean { return this.roundShape.toUpperCase() === "TRUE" ? true : false; } @@ -49,9 +95,9 @@ export class Avatar { } ngAfterViewInit() { - if(this.initials){ - var src = this.generateCanvas(this.width); - this.wrapper.nativeElement.src = src; + if(this.initials && this.image){ + var src = this.generateCanvas(parseInt(this.image.nativeElement.width)); + this.image.nativeElement.src = src; } } @@ -67,7 +113,7 @@ export class Avatar { ctx.fillRect(0, 0, canvas.width, canvas.height); ctx.textAlign = "center"; - ctx.fillStyle = this.textColor; + ctx.fillStyle = this.color; ctx.font = fontSize + `px ${this.fontname}`; ctx.shadowColor = "black"; ctx.shadowOffsetX = 0;