.products{color:var(--ps-color-secondary, #090917);padding-top:100px}body:not(:has(.nav-banner)) .products{padding-top:69px}@media(max-width: 1199.98px){.products{padding-top:25px}body:not(:has(.nav-banner)) .products{padding-top:25px}}@media(max-width: 991.98px){.products{padding-top:50px}}.products.-checkout{padding-top:0rem}.products.-checkout.-var-1 .container-fluid{padding-top:10px}.products.-checkout #content{padding-top:0}.contact .products:after{display:none}.products .container-fluid{background-color:var(--ps-color-neutral, #ffffff);padding-top:250px;padding-bottom:40px;padding-left:5px;padding-right:5px;background:var(--ps-color-neutral, #ffffff);background-size:auto;background-repeat:repeat-x;position:relative}@media(max-width: 1199.98px){.products .container-fluid .container-spacer{padding-top:25px}}.products .product-list-selector .product-cont a .title{color:var(--ps-color-secondary-darker, #000000);font-size:28px}.products #header #nav-desktop #navbarNav .navbar-nav .nav-item .nav-link{font-family:"Black Ops One",cursive;font-size:20px}.products.-var-1 .container-fluid{background-image:none;padding-top:67px}@media(max-width: 991.98px){.products.-var-1,body:not(:has(.nav-banner)) .products.-var-1{padding-top:0}.products.-var-1 .container-fluid,body:not(:has(.nav-banner)) .products.-var-1 .container-fluid{padding-top:var(--ps-hdr-bottom, 117px)}.products.-var-1 #content,body:not(:has(.nav-banner)) .products.-var-1 #content{padding-top:0}.products.-var-1.-checkout .container-fluid,body:not(:has(.nav-banner)) .products.-var-1.-checkout .container-fluid{padding-top:10px}}.prompt-product a{font-size:1em;font-weight:bold;color:#2a2b2a;text-decoration:none;text-align:center}.prompt-product .product-img{width:98%;margin:1%;clear:both;display:block;overflow:clip}.prompt-product .product-img img{max-height:300px;height:6vw;min-height:50px;margin-left:auto;margin-right:auto}.prompt-product .count{font-size:13px;color:#636363;margin-left:10px;text-transform:uppercase}.top-product{float:left;margin:5px;width:32%;text-align:center;vertical-align:text-bottom;height:15vw;max-height:320px}.top-product a{font-size:18px;font-weight:bold;color:#2a2b2a;text-decoration:none}.top-product .product-img{width:98%;margin:1%;clear:both;display:block}.top-product .product-img img{max-height:270px;height:12vw;margin-left:auto;margin-right:auto;max-width:400px}@media screen and (max-width: 776px){.top-product{height:27vw;width:30%}.top-product .product-img{height:15vw}.top-product .product-img img{height:15vw}}@media screen and (max-width: 647px){.top-product{border:0px solid green;width:31%;height:25vw}.top-product .product-img{height:16vw}.top-product .product-img img{height:16vw}}@media screen and (max-width: 523px){.top-product{border:0px solid red;width:46.5%;height:20vw}.top-product div:nth-child(2){margin-top:5px}.top-product a{font-size:13px}.top-product .product-img{height:14vw}.top-product .product-img img{height:15vw}}@media screen and (max-width: 373px){.top-product{border:0px solid red;width:45%;height:27vw}.top-product .product-img{height:23vw}.top-product .product-img img{height:24vw}.top-product a{font-size:11px;font-weight:bold}}.product-name-selector{margin-top:20px;background-color:#fff;padding-bottom:30px}.product-name-selector .count{font-size:13px;color:#636363;margin-left:10px;text-transform:uppercase}.product-name-selector .category-name{clear:both;height:auto;width:100%;background-color:#efefef;height:39px;margin-bottom:15px}.product-name-selector .category-name.highlight{background-color:var(--ps-color-primary, #001877);color:#fff}.product-name-selector .category-name.highlight span{color:#fff !important}.product-name-selector .category-name.highlight-text{color:var(--ps-color-primary, #001877)}.product-name-selector .subcategory-name{clear:both;height:auto;width:100%;height:39px;margin-bottom:15px;margin-top:10px;padding-left:30px}.product-name-selector .subcategory-name.highlight{background-color:var(--ps-color-primary, #001877);color:#fff}.product-name-selector .subcategory-name.highlight span{color:#fff !important}.product-name-selector .subcategory-name.highlight-text{color:var(--ps-color-primary, #001877)}.product-name-selector .category-name span,.product-name-selector .subcategory-name span{display:block;font-size:24px;font-weight:bold;float:right;padding-right:10px}.product-name-selector .category-name span:first-child{color:var(--ps-color-primary, #001877)}.product-name-selector .category-name span a{font-size:15px;color:var(--ps-color-primary, #305CDE)}.product-name-selector .category-name span:first-child,.product-name-selector .subcategory-name span:first-child{float:left;padding-left:10px;padding-right:0}.product-name-selector ul{width:33%;display:block;float:left;list-style-type:none;padding-right:20px;padding-left:10px;margin-top:10px}.product-name-selector ul:first-child{padding-left:10px;padding-right:10px}.product-name-selector ul li{margin-top:5px;color:#000;cursor:pointer;padding-left:3px}.product-name-selector ul li:hover{color:#fff;background-color:#7d868a;opacity:1;filter:alpha(opacity=100);border-radius:6px 6px 6px 6px}.product-name-selector ul li a{color:#000;cursor:pointer}.product-name-selector ul li:hover a{color:#fff;text-decoration:underline}.product-name-selector ul.category{clear:both;float:left}.product-name-selector .top-product{margin-bottom:30px}@media screen and (max-width: 500px){.product-name-selector .category-name{height:auto}}h3.search-prompt{font-size:22px;font-weight:900;margin-left:25px;color:#666;text-transform:uppercase;display:block;float:left;margin-top:13px}h2.search-prompt{font-size:35px;font-weight:900;color:#1c1c1e;text-transform:uppercase;display:block;float:left;clear:both;margin-top:0}h2.search-prompt sub{bottom:0}h2.search-prompt.left{margin-left:0}h1.search-prompt{margin-top:0;font-size:25px;margin-left:0;font-weight:bold;text-transform:uppercase;display:inline-block;clear:both;float:left;margin-bottom:0}h1.search-prompt sub{display:inline-block;bottom:0;font-size:100%}p.search-prompt{color:#777;margin-left:45px;margin-top:2.2em;display:inline-block}.search-prompt .glyphicon-alert{color:#ff4500}@media screen and (max-width: 776px){h1.search-prompt sub{display:block;margin-bottom:.25rem;font-size:.875rem;line-height:1.5}}@media screen and (max-width: 726px){h3.search-prompt{margin-left:0;clear:both;margin-top:10px}}@media screen and (max-width: 993px){h2.search-prompt.left{margin-top:0;margin-bottom:0}h3.search-prompt{margin-top:0;font-size:17px}h2.search-prompt{font-size:20px;font-weight:900}h2.search-prompt{font-size:35px}p.search-prompt{color:#777;margin-left:15px;display:block;clear:both}p.search-prompt.tighter{font-size:.9em;font-weight:400;color:#000}h2.search-prompt.tighter{margin-bottom:.2em;margin-top:.2em}}.prompt-product a{font-size:1em;font-weight:bold;color:#2a2b2a;text-decoration:none;text-align:center}.prompt-product .product-img{width:98%;margin:1%;clear:both;display:block;overflow:clip}.prompt-product .product-img img{max-height:300px;height:6vw;min-height:50px;margin-left:auto;margin-right:auto}.prompt-product .count{font-size:13px;color:#636363;margin-left:10px;text-transform:uppercase}.top-product{float:left;margin:5px;width:32%;text-align:center;vertical-align:text-bottom;height:15vw;max-height:320px}.top-product a{font-size:18px;font-weight:bold;color:#2a2b2a;text-decoration:none}.top-product .product-img{width:98%;margin:1%;clear:both;display:block}.top-product .product-img img{max-height:270px;height:12vw;margin-left:auto;margin-right:auto;max-width:400px}@media screen and (max-width: 776px){.top-product{height:27vw;width:30%}.top-product .product-img{height:15vw}.top-product .product-img img{height:15vw}}@media screen and (max-width: 647px){.top-product{border:0px solid green;width:31%;height:25vw}.top-product .product-img{height:16vw}.top-product .product-img img{height:16vw}}@media screen and (max-width: 523px){.top-product{border:0px solid red;width:46.5%;height:20vw}.top-product div:nth-child(2){margin-top:5px}.top-product a{font-size:13px}.top-product .product-img{height:14vw}.top-product .product-img img{height:15vw}}@media screen and (max-width: 373px){.top-product{border:0px solid red;width:45%;height:27vw}.top-product .product-img{height:23vw}.top-product .product-img img{height:24vw}.top-product a{font-size:11px;font-weight:bold}}.product-name-selector{margin-top:20px;background-color:#fff;padding-bottom:30px}.product-name-selector .count{font-size:13px;color:#636363;margin-left:10px;text-transform:uppercase}.product-name-selector .category-name{clear:both;height:auto;width:100%;background-color:#efefef;height:39px;margin-bottom:15px}.product-name-selector .category-name.highlight{background-color:var(--ps-color-primary, #001877);color:#fff}.product-name-selector .category-name.highlight span{color:#fff !important}.product-name-selector .category-name.highlight-text{color:var(--ps-color-primary, #001877)}.product-name-selector .subcategory-name{clear:both;height:auto;width:100%;height:39px;margin-bottom:15px;margin-top:10px;padding-left:30px}.product-name-selector .subcategory-name.highlight{background-color:var(--ps-color-primary, #001877);color:#fff}.product-name-selector .subcategory-name.highlight span{color:#fff !important}.product-name-selector .subcategory-name.highlight-text{color:var(--ps-color-primary, #001877)}.product-name-selector .category-name span,.product-name-selector .subcategory-name span{display:block;font-size:24px;font-weight:bold;float:right;padding-right:10px}.product-name-selector .category-name span:first-child{color:var(--ps-color-primary, #001877)}.product-name-selector .category-name span a{font-size:15px;color:var(--ps-color-primary, #305CDE)}.product-name-selector .category-name span:first-child,.product-name-selector .subcategory-name span:first-child{float:left;padding-left:10px;padding-right:0}.product-name-selector ul{width:33%;display:block;float:left;list-style-type:none;padding-right:20px;padding-left:10px;margin-top:10px}.product-name-selector ul:first-child{padding-left:10px;padding-right:10px}.product-name-selector ul li{margin-top:5px;color:#000;cursor:pointer;padding-left:3px}.product-name-selector ul li:hover{color:#fff;background-color:#7d868a;opacity:1;filter:alpha(opacity=100);border-radius:6px 6px 6px 6px}.product-name-selector ul li a{color:#000;cursor:pointer}.product-name-selector ul li:hover a{color:#fff;text-decoration:underline}.product-name-selector ul.category{clear:both;float:left}.product-name-selector .top-product{margin-bottom:30px}@media screen and (max-width: 500px){.product-name-selector .category-name{height:auto}}.prompt-list{clear:both}.prompt-list .brand-image-facet img{min-width:6.8em}.prompt-list i.bi-arrow-down{position:absolute;left:48%;top:30%;font-size:70px;color:var(--ps-color-primary, #001877);font-weight:800}@media screen and (max-width: 1211px){.prompt-list .swiper-container{position:relative;overflow:hidden}.prompt-list .swiper-container::after{content:"";position:absolute;top:0;right:0;width:30px;height:100%;pointer-events:none;background:linear-gradient(to left, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0));z-index:100}}@media(min-width: 1211px){.prompt-list .swiper-wrapper{flex-wrap:wrap !important}.prompt-list .swiper-slide{width:auto !important;margin-right:0 !important}}.facet-prompt-list{display:block;float:left;list-style-type:none;height:auto;overflow-y:auto;display:table;margin-bottom:40px;clear:both}.facet-prompt-list li{width:16.6666%;min-width:100px;padding:5px;display:inline-block;vertical-align:top}.facet-prompt-list li span{display:block;border:1px solid #8e8e8e;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;background-color:#ececec;background:-webkit-gradient(linear, 0 0, 0 0, from(#ececec), to(#fff));background:-webkit-linear-gradient(top, #fff, #ececec 100%);background:-moz-linear-gradient(top, #fff, #ececec 100%);background:-ms-linear-gradient(top, #fff, #ececec 100%);background:-o-linear-gradient(top, #fff, #ececec 100%);font-size:14px;line-height:17px;box-shadow:0 1px 1px #bbb;-moz-box-shadow:0 1px 1px #bbb;-webkit-box-shadow:0 1px 1px #bbb;cursor:pointer;padding:7px 10px;color:#333;text-align:center}.facet-prompt-list li.brand-image-facet{height:80px;width:185px;border:1px solid #efefef;padding:5px;margin:10px;text-align:center;cursor:pointer}.facet-prompt-list li.brand-image-facet .helper{display:inline-block;height:100%;vertical-align:middle}.facet-prompt-list li.brand-image-facet img{background:#efefef;vertical-align:middle;max-height:45px;max-width:160px;position:relative;top:-10px}.facet-prompt-list li.brand-image-facet .brand-label{font-weight:bold;font-size:12px;color:blue;text-decoration:underline;position:relative;top:-20px}.toggle-hide-by-default{margin-left:60px;text-decoration:underline;color:#333;cursor:pointer;display:block;clear:both}.facet-prompt-list li span:hover{background-color:#fff;background:#fff}.facet-prompt-list .hide-by-default,.prompt-list .hide-by-default{display:none}.facet-prompt-list .visible,.prompt-list .visible{display:block}h3.search-prompt{font-size:22px;font-weight:900;margin-left:25px;color:#666;text-transform:uppercase;display:block;float:left;margin-top:13px}h2.search-prompt{font-size:35px;font-weight:900;color:#1c1c1e;text-transform:uppercase;display:block;float:left;clear:both;margin-top:0}h2.search-prompt sub{bottom:0}h2.search-prompt.left{margin-left:0}h1.search-prompt{margin-top:0;font-size:25px;margin-left:0;font-weight:bold;text-transform:uppercase;display:inline-block;clear:both;float:left;margin-bottom:0}h1.search-prompt sub{display:inline-block;bottom:0;font-size:100%}p.search-prompt{color:#777;margin-left:45px;margin-top:2.2em;display:inline-block}.search-prompt .glyphicon-alert{color:#ff4500}.facet-list-row{padding:10px;padding-right:0}.submodels__col{width:9.5rem;max-width:none}@media screen and (max-width: 776px){h1.search-prompt sub{display:block;margin-bottom:.25rem;font-size:.875rem;line-height:1.5}.facet-prompt-list{padding-left:10px;padding-right:10px;position:relative;display:flex;flex-flow:row wrap;justify-content:space-between}.facet-prompt-list :after{content:"";flex:auto}.facet-prompt-list li{width:70px;min-width:70px;display:inline-block}.facet-list-row{position:relative;display:block;margin:auto}.facet-list-row .slick-list{padding:0 .625rem}.facet-prompt-list .hide-by-default,.prompt-list .hide-by-default{display:block}.facet-prompt-list li.brand-image-facet{padding:3px;margin:10px;margin-left:auto;margin-right:auto}}@media screen and (max-width: 726px){h3.search-prompt{margin-left:0;clear:both;margin-top:10px}}.prompt-list .change-part-name{display:block;width:97%}@media screen and (max-width: 776px){.prompt-list .change-part-name{display:block;width:97%}}@media screen and (max-width: 993px){.facet-prompt-list{padding-left:10px;padding-right:10px}h2.search-prompt.left{margin-top:0;margin-bottom:0}h3.search-prompt{margin-top:0;font-size:17px}h2.search-prompt{font-size:20px;font-weight:900}h2.search-prompt{font-size:35px}p.search-prompt{color:#777;margin-left:15px;display:block;clear:both}p.search-prompt.tighter{font-size:.9em;font-weight:400;color:#000}.facet-list-row.tighter{padding:0}h2.search-prompt.tighter{margin-bottom:.2em;margin-top:.2em}}.submodels__col{width:9.5rem;max-width:none}.product-name-selector>section,.product-name-selector>.category-name,.product-name-selector>.subcategory-name,.product-name-selector>.header,.product-name-selector>.clear-category-search-message,.product-name-selector .list>section,.product-name-selector .list>.category-name,.product-name-selector .list>.subcategory-name,.product-name-selector .list>.header,.product-name-selector .list>.clear-category-search-message{flex:0 0 100%;max-width:100%}.product-name-selector>.clearboth,.product-name-selector .list>.clearboth{display:none}.product-name-selector .category-name,.product-name-selector .subcategory-name{display:flex;align-items:center;justify-content:space-between;gap:12px;height:auto;min-height:39px;padding:4px 12px;margin-bottom:12px}.product-name-selector .category-name span,.product-name-selector .subcategory-name span{display:inline-block;float:none;padding:0;line-height:1.25}.product-name-selector .category-name span:last-child:not(:first-child),.product-name-selector .subcategory-name span:last-child:not(:first-child){flex:0 0 auto;font-size:14px;white-space:nowrap}.product-name-selector .subcategory-name{padding-left:30px;margin-top:4px}.product-name-selector .subcategory-name span:first-child{font-size:19px}.product-name-selector .top-product:not(.top-category-product){flex:0 0 calc(33.333% - 10px);max-width:calc(33.333% - 10px);margin-bottom:20px}.product-name-selector .header .catLinks{flex:0 0 100%;max-width:100%;width:100%}@media screen and (max-width: 776px){.product-name-selector .top-product:not(.top-category-product){flex:0 0 calc(50% - 10px);max-width:calc(50% - 10px)}}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9jb21wb25lbnQtY2F0YWxvZy1jaHJvbWUtZGVmYXVsdC40MGNkYTc2NmRkYzNhZTBjNjYwNC5jc3MiLCJtYXBwaW5ncyI6IkFBK0JBLFVBQ0Usd0NDRHdCLENEUXhCLGtCQUVBLHNDQUNFLGlCRXdCQSw2QkZuQ0osVUFlSSxpQkFFQSxzQ0FDRSxrQkVpQkYsNEJGbkNKLFVBdUJJLGtCQUlGLG9CQUNFLGlCQUdFLDRDQUNFLGlCQUdKLDZCQUNFLGNBS0YseUJBQ0UsYUFJSiwyQkFDRSxpREN4Q2MsQ0QwQ2Qsa0JBQ0Esb0JBQ0EsaUJBQ0Esa0JBSUEsMkNDakRjLENEa0RkLHFCQUNBLDJCQUNBLGtCRXhCQSw2QkYwQkEsNkNBRUksa0JBTU4sd0RBQ0UsK0NDckVzQixDRHNFdEIsZUFHRiwwRUFDRSxvQ0FDQSxlQUlBLGtDQUNFLHNCQUNBLGlCRS9DRiw0QkZnR0YsOERBRUUsY0FFQSxnR0FDRSx3Q0FHRixnRkFDRSxjQUtGLG9IQUNFLGtCR3hJSixrQkFDRSxjQUNBLGlCQUNBLGNBQ0EscUJBQ0Esa0JBR0YsNkJBRUUsVUFFQSxVQUVBLFdBRUEsY0FFQSxjQUdBLGlDQUNFLGlCQUVBLFdBQ0EsZ0JBTUEsaUJBQ0Esa0JBVUosdUJBQ0UsZUFDQSxjQUNBLGlCQUNBLHlCQU9KLGFBQ0UsV0FDQSxXQUNBLFVBQ0Esa0JBQ0EsMkJBQ0EsWUFDQSxpQkFPRixlQUNFLGVBQ0EsaUJBQ0EsY0FDQSxxQkFNRiwwQkFFRSxVQUVBLFVBRUEsV0FFQSxjQU1GLDhCQUNFLGlCQUVBLFlBTUEsaUJBQ0Esa0JBQ0EsZ0JBR0YscUNBRUEsYUFDSSxZQUNBLFVBSUosMEJBQ0ksWUFJSiw4QkFDSSxhQUtKLHFDQUVFLGFBQ0UsdUJBQ0EsVUFDQSxZQUlGLDBCQUNFLFlBSUYsOEJBQ0UsYUFJSixxQ0FFRSxhQUNFLHFCQUNBLFlBRUEsWUFFQSw4QkFDRSxlQUdGLGVBRUUsZUFPSiwwQkFDRSxZQUlGLDhCQUNFLGFBSUoscUNBRUUsYUFDRSxxQkFDQSxVQUVBLFlBS0Ys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SUoscUNBQ0UsK0RBQ0UsMEJBQ0EsNEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9iZWFjaHNpZGVhdXRvcGFydHMvLi4vLi4vLi4vYXV0by1wcmVzcy9yZXNvdXJjZXMvY29tcG9uZW50cy9fY2F0YWxvZy9fcHJvZHVjdHMtcGFnZS1jaHJvbWUuc2NzcyIsIndlYnBhY2s6Ly9iZWFjaHNpZGVhdXRvcGFydHMvLi4vLi4vLi4vYXV0by1wcmVzcy9yZXNvdXJjZXMvc3R5bGVzL3ZhcmlhbnRzL19jb2xvcnMuc2NzcyIsIndlYnBhY2s6Ly9iZWFjaHNpZGVhdXRvcGFydHMvLi4vLi4vLi4vYXV0by1wcmVzcy9yZXNvdXJjZXMvY29tcG9uZW50cy9fY2F0YWxvZy9fZ2xvYmFscy5zY3NzIiwid2VicGFjazovL2JlYWNoc2lkZWF1dG9wYXJ0cy8uLi8uLi8uLi9hdXRvLXByZXNzL3Jlc291cmNlcy9jb21wb25lbnRzL2NhdGFsb2ctY2hyb21lL2RlZmF1bHQvaW5kZXguc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQUk9EVUNUUy1QQUdFIENIUk9NRSDigJQgc2hhcmVkIHBhcnRpYWwgKHNpbmdsZSBzb3VyY2Ugb2YgdHJ1dGgpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUaGUgYC5ib2R5LXdyYXAucHJvZHVjdHNgIFBBR0UgY2hyb21lIGZvciBjYXRhbG9nIGxpc3RpbmcgcGFnZXM6IHRoZVxuLy8gZml4ZWQtaGVhZGVyIGNsZWFyYW5jZSBwYWRkaW5nICh3aXRoIHRoZSA6aGFzKC5uYXYtYmFubmVyKSBiYW5uZXJsZXNzXG4vLyBicmFuY2gpLCB0aGUgLmNvbnRhaW5lci1mbHVpZCBiYW5kIGJhY2tncm91bmQvcGFkZGluZywgYW5kIHRoZSAtdmFyLTEgL1xuLy8gLWNoZWNrb3V0IG1vZGlmaWVycy5cbi8vXG4vLyBISVNUT1JZIC8gV0hZIFRISVMgRklMRSBFWElTVFMgKDIwMjYtMDgtMjgpOiB0aGVzZSBydWxlcyB1c2VkIHRvIGxpdmUgb25seVxuLy8gaW5zaWRlIHByb2R1Y3QtY2FyZC9sZWdhY3kvaW5kZXguc2Nzcy4gVGhlIHByb2R1Y3RzIHBhZ2UgbmV2ZXIgbG9hZHMgdGhlXG4vLyBsZWdhY3kgY2FyZCBidW5kbGUgaXRzZWxmIOKAlCB0aGUgcnVsZXMgcmVhY2hlZCB0aGUgcGFnZSBPTkxZIGJlY2F1c2UgdGhlXG4vLyBzaXRlLXNlYXJjaCBERUZBVUxUIChmdWxsc2NyZWVuKSB2YXJpYW50IGVtYmVkcyBsZWdhY3kgcHJvZHVjdCBjYXJkcyBhbmQgc29cbi8vIGVtaXRzIHRoYXQgYnVuZGxlIG9uIGV2ZXJ5IHBhZ2UuIFN3aXRjaGluZyBhIHNpdGUncyBoZWFkZXIgc2VhcmNoIHRvIHRoZVxuLy8gYGNvbXBhY3RgIHZhcmlhbnQgc2lsZW50bHkgZHJvcHBlZCB0aGUgYnVuZGxlIOKGkiB0aGUgcHJvZHVjdHMgcGFnZSBsb3N0IGl0c1xuLy8gY2xlYXJhbmNlLCBzdGFydGVkIFVOREVSIHRoZSBmaXhlZCBoZWFkZXIsIGFuZCB0aGUgY2F0ZWdvcnktc3dpdGNoZXJcbi8vIG1lYXN1cmVkIGFzIGluc3RhbnRseSBgLmlzLXN0dWNrYCAoY29sbGFwc2VkIHJhaWwsIG5vIGJyZWFkY3J1bWJzLCBub1xuLy8gXCJDaGFuZ2UgQ2F0ZWdvcnkgQmVsb3dcIikuIFBhZ2UgY2hyb21lIG11c3QgbmV2ZXIgZGVwZW5kIG9uIHdoaWNoIFNFQVJDSFxuLy8gdmFyaWFudCB0aGUgaGVhZGVyIGhhcHBlbnMgdG8gZW1iZWQuXG4vL1xuLy8gQ09OU1VNRVJTIChib3RoIGltcG9ydCB0aGlzIGZpbGU7IGlkZW50aWNhbCBkdXBsaWNhdGUgcnVsZXMgYXJlIGhhcm1sZXNzKTpcbi8vICAgMS4gY2F0YWxvZy1jaHJvbWUvZGVmYXVsdCDigJQgdGhlIGNhbm9uaWNhbCBjYXJyaWVyOiBsb2FkZWQgYnkgZXZlcnlcbi8vICAgICAgY2F0YWxvZyBsaXN0aW5nIHBhZ2UgcmVnYXJkbGVzcyBvZiBoZWFkZXIvc2VhcmNoIHZhcmlhbnRzLlxuLy8gICAyLiBwcm9kdWN0LWNhcmQvbGVnYWN5IOKAlCBrZXB0IGZvciBjb21wYXRpYmlsaXR5OiBub24tY2F0YWxvZyBzdXJmYWNlc1xuLy8gICAgICAoZS5nLiBjaGVja291dCdzIC5wcm9kdWN0cy4tY2hlY2tvdXQsIC5jb250YWN0KSB0aGF0IGxvYWQgdGhlIGxlZ2FjeVxuLy8gICAgICBjYXJkIGJ1bmRsZSB3aXRob3V0IGNhdGFsb2ctY2hyb21lIGtlZXAgdGhlaXIgY2hyb21lLlxuLy9cbi8vIERlcHM6ICRjb2xvcl9zZWNvbmRhcnkvJGNvbG9yX25ldXRyYWwvJGNvbG9yX3NlY29uZGFyeV9kYXJrZXIgKyByZW1jKCkgK1xuLy8gbWVkaWEtYnJlYWtwb2ludC1kb3duKCkg4oCUIHRoZSBpbXBvcnRpbmcgcGFyZW50IG11c3QgQGltcG9ydFxuLy8gJ2NvbXBvbmVudHMvX2NhdGFsb2cvZ2xvYmFscycgZmlyc3QgKGJvdGggY29uc3VtZXJzIGFscmVhZHkgZG8pLlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ucHJvZHVjdHMge1xuICBjb2xvcjogJGNvbG9yX3NlY29uZGFyeTtcbiAgLy8gRml4ZWQtaGVhZGVyIG9mZnNldDogMTAwcHggPSB+NjlweCBuYXZiYXIgKyB+MzFweCBhbm5vdW5jZW1lbnQgYmFyLlxuICAvLyBTaW5jZSAyMDI2LTA4LTEzIHRoZSBhbm5vdW5jZW1lbnQgYmFyIG9ubHkgcmVuZGVycyB3aGVuIHRoZSBzaXRlLWhlYWRlclxuICAvLyBibG9jayBjYXJyaWVzIGFubm91bmNlbWVudCBURVhUICh0aGUgaGFyZGNvZGVkIGRlZmF1bHQgd2FzIHJlbW92ZWQpLCBzb1xuICAvLyBhIGJhbm5lcmxlc3MgaGVhZGVyIGlzIH4zMXB4IHNob3J0ZXIg4oCUIHdpdGhvdXQgdGhpcyA6aGFzKCkgYnJhbmNoIGV2ZXJ5XG4gIC8vIGJhbm5lcmxlc3Mgc2l0ZSBzaG93ZWQgYSB3aGl0ZSBnYXAgdW5kZXIgdGhlIGZpeGVkIGhlYWRlciAoZmlyc3Qgc2VlbiBvblxuICAvLyBOR0sgcHJvZHVjdCBsaXN0cykuXG4gIHBhZGRpbmctdG9wOiByZW1jKDEwMHB4KTtcblxuICBib2R5Om5vdCg6aGFzKC5uYXYtYmFubmVyKSkgJiB7XG4gICAgcGFkZGluZy10b3A6IHJlbWMoNjlweCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtYygyNXB4KTtcblxuICAgIGJvZHk6bm90KDpoYXMoLm5hdi1iYW5uZXIpKSAmIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW1jKDI1cHgpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIHBhZGRpbmctdG9wOiByZW1jKDUwcHgpO1xuICB9XG5cblxuICAmLi1jaGVja291dCB7XG4gICAgcGFkZGluZy10b3A6IDByZW07XG4gICAgLy8gb24gY2hlY2tvdXRcbiAgICAmLi12YXItMSB7XG4gICAgICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICNjb250ZW50IHtcbiAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRhY3QgJiB7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9uZXV0cmFsO1xuXG4gICAgcGFkZGluZy10b3A6IHJlbWMoMjUwcHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW1jKDQwcHgpO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcblxuICAgIC8vcGFkZGluZzogcmVtYygyNTBweCwgMCwgNDBweCwgMCk7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9zZXBhcmF0b3ItdHJhY2tzLXRvcC5wbmcnKSBjZW50ZXIgLTJweCAkY29sb3JfbmV1dHJhbDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfbmV1dHJhbDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jb250YWluZXItc3BhY2VyIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtYygyNXB4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC5wcm9kdWN0LWxpc3Qtc2VsZWN0b3IgLnByb2R1Y3QtY29udCBhIC50aXRsZSB7XG4gICAgY29sb3I6ICRjb2xvcl9zZWNvbmRhcnlfZGFya2VyO1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxuXG4gICNoZWFkZXIgI25hdi1kZXNrdG9wICNuYXZiYXJOYXYgLm5hdmJhci1uYXYgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgZm9udC1mYW1pbHk6ICdCbGFjayBPcHMgT25lJywgY3Vyc2l2ZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cblxuICAmLi12YXItMSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgcGFkZGluZy10b3A6IDY3cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIOKUgOKUgCBQaG9uZXMvdGFibGV0czogb25lIG1lYXN1cmVkIGNsZWFyYW5jZSwgbm8gZGVhZCBiYW5kIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuLy8gT3duZXIgcmVwb3J0IDIwMjYtMDktMDM6IFwidGlnaHRlbiB1cCBzcGFjaW5nLCBlc3BlY2lhbGx5IG9uIHRoZSBtb2JpbGUgdmlld1xuLy8gb2YgcHJvZHVjdCBsaXN0IHBhZ2UgYW5kIHByb2R1Y3QgZGV0YWlsIHBhZ2UsIHdpdGggdGhlIGJyZWFkY3J1bWJzIGFuZCB0aGVcbi8vIHJlc3Qgb2YgdGhlIHNpdGUuXCJcbi8vXG4vLyBXSEFUIFdBUyBUSEVSRS4gVGhlIGZpcnN0IGJ1aWxkZXIgc2VjdGlvbiBvbiBhIGNhdGFsb2cgcGFnZSBzYXQgdGhpcyBmYXJcbi8vIGJlbG93IHRoZSBmaXhlZCBoZWFkZXIsIGFsbCBvZiBpdCBmcm9tIGNvbnN0YW50cyB0aGF0IHN0YWNrOlxuLy9cbi8vICAgICAucHJvZHVjdHMgICAgICAgICAgICAgICAgcGFkZGluZy10b3AgICA1MHB4ICAg4oaQIGZpeGVkLWhlYWRlciBjbGVhcmFuY2Vcbi8vICAgICAucHJvZHVjdHMuLXZhci0xXG4vLyAgICAgICAuY29udGFpbmVyLWZsdWlkICAgICAgIHBhZGRpbmctdG9wICAgNjdweCAgIOKGkCBtb3JlIG9mIHRoZSBzYW1lXG4vLyAgICAgI2NvbnRlbnQgICAgICAgICAgICAgICAgIHBhZGRpbmcgICAgICA0M3B4IDEwcHggIChsYXlvdXQuc2NzcywgZ2xvYmFsKVxuLy8gICAgIC5wcy1zZWN0aW9uLS1zcGFjZS10b3AtbWQgbWFyZ2luLXRvcCAgIDIwcHggICDihpAgbWVyY2hhbnQncyBvd24gc2V0dGluZ1xuLy9cbi8vID0gMTgwcHggb24gbmV3cGFydHNvbnRoZWdvLCBhZ2FpbnN0IGEgaGVhZGVyIHRoYXQgaXMgb25seSAxMjJweCB0YWxsIGF0XG4vLyAzOTBweCB3aWRlIOKAlCBhIDU4cHggYmFuZCBvZiBub3RoaW5nLiBBbmQgdGhlIHNwbGl0IGlzIG5vdCBtZXJlbHkgdWdseTogdGhlXG4vLyA1MCs2NyA9IDExN3B4IG9mIFwiY2xlYXJhbmNlXCIgaXMgTEVTUyB0aGFuIHRoZSBoZWFkZXIgYXQgNzY4cHggKDEzN3B4KSwgc29cbi8vIHRoZSBwYWdlIGFjdHVhbGx5IGJlZ2FuIGJlaGluZCB0aGUgaGVhZGVyIGFuZCBvbmx5IHRoZSA0M3B4IG9mICNjb250ZW50XG4vLyBwYWRkaW5nIGhpZCBpdC5cbi8vXG4vLyBXSEFUIElUIElTIE5PVy4gT25lIGNsZWFyYW5jZSwgbWVhc3VyZWQgZnJvbSB0aGUgcmVhbCBoZWFkZXIgYnlcbi8vIHNjcmlwdHMvb2xkLWNvbXBvbmVudHMvaGVhZGVyLmpzICgtLXBzLWhkci1ib3R0b20pLCBhbmQgbm90aGluZyBlbHNlIGFib3ZlXG4vLyB0aGUgZmlyc3Qgc2VjdGlvbiBleGNlcHQgdGhlIG1lcmNoYW50J3Mgb3duIHNlY3Rpb24gc3BhY2luZy4gUmVzdWx0IG9uIGRldjpcbi8vXG4vLyAgICAgbmV3cGFydHNvbnRoZWdvICAzOTBweCAgMTgwcHgg4oaSIDE0MnB4ICAgICAgNzY4cHggIDE4MHB4IOKGkiAxNTdweCAod2FzXG4vLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjNweCBCRUhJTkQgdGhlIGhlYWRlcilcbi8vICAgICBuZ2tzcGFya3BsdWdzICAgIDM5MHB4ICAxNTVweCDihpIgMTI0cHhcbi8vXG4vLyBUaGUgMTE3cHggZmFsbGJhY2sgaW4gdGhlIGNhbGMoKSBpcyB0aGUgT0xEIHRvdGFsLCBzbyBhIHBhZ2UgdGhhdCBuZXZlciBydW5zXG4vLyB0aGUgSlMgcmVuZGVycyBleGFjdGx5IGFzIGl0IGRpZCBiZWZvcmUgdGhpcyBjaGFuZ2Ug4oCUIGluY2x1ZGluZyBpdHMgYnVncy5cbi8vIERlbGliZXJhdGVseSBtb2JpbGUtb25seTogYGVzcGVjaWFsbHkgb24gdGhlIG1vYmlsZSB2aWV3YCB3YXMgdGhlIGFzaywgYW5kXG4vLyBkZXNrdG9wJ3MgbGFyZ2VyIGNhbnZhcyBjYXJyaWVzIHRoZSBleHRyYSBhaXIgZmluZS5cbi8vXG4vLyBTY29wZWQgdG8gYC5wcm9kdWN0c2AgKGNhdGFsb2cgbGlzdGluZyArIGRldGFpbCBwYWdlcykgb24gcHVycG9zZS4gI2NvbnRlbnQnc1xuLy8gNDNweCBpcyBnbG9iYWwgY2hyb21lIHRoYXQgZXZlcnkgb3RoZXIgcGFnZSBzdGlsbCB3YW50czsgdGhpcyBvbmx5IHRha2VzIGl0XG4vLyBvZmYgdGhlIHBhZ2VzIHRoZSByZXBvcnQgd2FzIGFib3V0LlxuLy8g4pqgIFRoZSBiYW5uZXJsZXNzIGJyYW5jaCBoYXMgdG8gYmUgcmVzdGF0ZWQsIG5vdCBtZXJlbHkgb3ZlcnJpZGRlbi4gVGhlIGJsb2NrXG4vLyBhYm92ZSBzZXRzIHRoZSBwaG9uZSBjbGVhcmFuY2UgdHdpY2Ug4oCUIG9uY2UgcGxhaW5seSBhbmQgb25jZSB1bmRlclxuLy8gYGJvZHk6bm90KDpoYXMoLm5hdi1iYW5uZXIpKSAmYCwgd2hpY2ggaXMgKDAsMiwxKTogTU9SRSBzcGVjaWZpYyB0aGFuIGEgYmFyZVxuLy8gYC5wcm9kdWN0cy4tdmFyLTFgICgwLDIsMCkuIEEgbWVkaWEgcXVlcnkgYWRkcyBub3RoaW5nLiBTbyBvbiBhIHNpdGUgd2l0aCBub1xuLy8gYW5ub3VuY2VtZW50IGJhciAoZXZlcnkgQVBYIHRlbmFudCkgdGhlIHBsYWluIG92ZXJyaWRlIHNpbGVudGx5IGxvc3QgYW5kIHRoZVxuLy8gcGFnZSBrZXB0IGl0cyAyNXB4IOKAlCBtZWFzdXJlZCBvbiB0aGUgbmdrc3BhcmtwbHVncyB0ZW5hbnQsIDIwMjYtMDktMDMsIHdoZXJlXG4vLyB0aGlzIHJ1bGUgYXBwZWFyZWQgdG8gZG8gbm90aGluZyBhdCBhbGwuIEJvdGggc2VsZWN0b3JzLCBvciBuZWl0aGVyLlxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gIC5wcm9kdWN0cy4tdmFyLTEsXG4gIGJvZHk6bm90KDpoYXMoLm5hdi1iYW5uZXIpKSAucHJvZHVjdHMuLXZhci0xIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgIC5jb250YWluZXItZmx1aWQge1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLXBzLWhkci1ib3R0b20sIDExN3B4KTtcbiAgICB9XG5cbiAgICAjY29udGVudCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAvLyBUaGUgY2hlY2tvdXQgY2hyb21lIHJldXNlcyBgLnByb2R1Y3RzYCBhbmQgemVyb2VzIGl0cyBvd24gY2xlYXJhbmNlXG4gICAgLy8gKGAuLWNoZWNrb3V0YCBhYm92ZSk7IGl0IG11c3Qgbm90IHBpY2sgdXAgdGhlIGhlYWRlciBvZmZzZXQgaGVyZS5cbiAgICAmLi1jaGVja291dCAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG5cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUaGVtZSBwYWxldHRlIOKAlCBUT0tFTi1CQUNLRUQgKFJvdW5kIDE0LCBDT0xPUlNfVE9LRU5TX1JFQ09OQ0lMSUFUSU9OLm1kKS5cbi8vXG4vLyBFdmVyeSAkY29sb3JfKiB2YXIgcmVzb2x2ZXMgdG8gYSBUaGVtZSBCdWlsZGVyIGdsb2JhbCBkZXNpZ24gdG9rZW5cbi8vICh2YXIoLS1wcy1jb2xvci0qLCA8YnJhbmQgaGV4IGZhbGxiYWNrPikpLiBSZW5kZXJpbmcgaXMgSURFTlRJQ0FMIHRvIHRoZSBvbGRcbi8vIHN0YXRpYyBwYWxldHRlIHVudGlsIHRoZSBiYWNrZW5kIHRoZW1lIGVkaXRvciBwdWJsaXNoZXMgYSB0b2tlbiB2YWx1ZSDigJQgdGhlblxuLy8gdGhhdCB2YWx1ZSB3aW5zIGFjcm9zcyB0aGUgZW50aXJlIGNvbXBpbGVkIHN0eWxlc2hlZXQgKGdsb2JhbCBzaGVldCBBTkQgZXZlcnlcbi8vIGNvbXBvbmVudCBidW5kbGUsIHNpbmNlIHRoZXkgYWxsIGltcG9ydCB0aGlzIGZpbGUgdmlhIF9jYXRhbG9nL2dsb2JhbHMpLlxuLy9cbi8vIFJVTEVTOlxuLy8gIC0gU2FzcyBjb2xvciBmdW5jdGlvbnMgKGxpZ2h0ZW4vZGFya2VuL3JnYmEvbWl4KSBDQU5OT1Qgb3BlcmF0ZSBvbiB2YXIoKS5cbi8vICAgIFVzZSB0aGUgKl9oZXggbGl0ZXJhbHMgZm9yIHRob3NlIOKAlCBCb290c3RyYXAncyAkdGhlbWUtY29sb3JzIG1hdGggZG9lc1xuLy8gICAgKG92ZXJyaWRlcy9fdmFyaWFibGVzLnNjc3MpLCBhbmQgc28gZG9lcyB0aGUgc2l0ZS1zZWFyY2ggbW9kYWwgZ3JhZGllbnQuXG4vLyAgLSBEZXJpdmVkIHNoYWRlcyBhcmUgTk9UIGNvbXB1dGVkIGZyb20gdGhlIGJhc2U6IGVhY2ggaXMgaXRzIG93biB0b2tlbiB3aXRoXG4vLyAgICBpdHMgb3duIGZhbGxiYWNrICh0aGUgbGVnYWN5IHZhbHVlcyB3ZXJlIG5ldmVyIGFsZ29yaXRobWljIHRpbnRzKS5cbi8vICAtIFRoZSBKSVMtZm9zc2lsIHZhcnMgKCRjb2xvcl9qaXMqKSBhbmQgdGhlICRjb2xvcl9wcmltYXJ5X2xpZ2h0ZXN0IGFsaWFzXG4vLyAgICB3ZXJlIHJldGlyZWQgaGVyZSAoemVybyBjYWxsZXJzIGFmdGVyIHRoZSBSb3VuZCAxMyBzd2VlcCkuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyDilIDilIAgUmF3IGJyYW5kIGxpdGVyYWxzIOKAlCBPTkxZIGZvciBTYXNzIGNvbG9yIG1hdGggKEJvb3RzdHJhcCB0aGVtZSBjb2xvcnMsXG4vLyAgICBsaWdodGVuKCkvcmdiYSgpIGNhbGwgc2l0ZXMpLiBFdmVyeXRoaW5nIGVsc2UgdXNlcyB0aGUgdG9rZW4tYmFja2VkIHZhcnMuXG4kY29sb3JfcHJpbWFyeV9oZXg6ICAgIzAwMTg3NztcbiRjb2xvcl9zZWNvbmRhcnlfaGV4OiAjMDkwOTE3O1xuXG4vLyDilIDilIAgUHJpbWFyeSAoYnJhbmQpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuJGNvbG9yX3ByaW1hcnk6ICAgICAgICAgdmFyKC0tcHMtY29sb3ItcHJpbWFyeSwgI3skY29sb3JfcHJpbWFyeV9oZXh9KTtcbiRjb2xvcl9wcmltYXJ5X2xpZ2h0OiAgIHZhcigtLXBzLWNvbG9yLXByaW1hcnktbGlnaHQsICNmOTlkMWEpOyAgIC8vIG9yYW5nZSBhY2NlbnQgKG5vdCBhIHRpbnQpXG4kY29sb3JfcHJpbWFyeV9kYXJrOiAgICB2YXIoLS1wcy1jb2xvci1wcmltYXJ5LWRhcmssICM0Yjg0YzApOyAgICAvLyBsaWdodGVyIGJsdWUgKGxlZ2FjeSBuYW1pbmcpXG4kY29sb3JfcHJpbWFyeV9kYXJrZXI6ICB2YXIoLS1wcy1jb2xvci1wcmltYXJ5LWhvdmVyLCAjeyRjb2xvcl9wcmltYXJ5X2hleH0pOyAvLyBsZWdhY3kgc2VsZi1hbGlhcyDihpIgaG92ZXIgdG9rZW5cblxuLy8g4pSA4pSAIFNlY29uZGFyeSAoZGFyayBiYW5kcyAvIGJhY2tncm91bmRzKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiRjb2xvcl9zZWNvbmRhcnk6ICAgICAgICAgdmFyKC0tcHMtY29sb3Itc2Vjb25kYXJ5LCAjeyRjb2xvcl9zZWNvbmRhcnlfaGV4fSk7XG4kY29sb3Jfc2Vjb25kYXJ5X2RhcmtlcjogIHZhcigtLXBzLWNvbG9yLXNlY29uZGFyeS1kYXJrZXIsICMwMDAwMDApO1xuJGNvbG9yX3NlY29uZGFyeV9kYXJrOiAgICB2YXIoLS1wcy1jb2xvci1zZWNvbmRhcnktZGFyaywgIzE0MTYxOCk7XG4kY29sb3Jfc2Vjb25kYXJ5X2xpZ2h0OiAgIHZhcigtLXBzLWNvbG9yLXRleHQtMiwgIzU3NTc1Nyk7XG4kY29sb3Jfc2Vjb25kYXJ5X2xpZ2h0ZXI6IHZhcigtLXBzLWNvbG9yLXRleHQtMywgIzdjN2M3Yyk7XG5cbi8vIOKUgOKUgCBOZXV0cmFscyAvIHN1cmZhY2VzIC8gYm9yZGVycyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiRjb2xvcl9uZXV0cmFsOiAgIHZhcigtLXBzLWNvbG9yLW5ldXRyYWwsICNmZmZmZmYpO1xuJGNvbG9yX25ldXRyYWxfMTogdmFyKC0tcHMtY29sb3Itc3VyZmFjZS1hbHQsICNmMGYwZjApO1xuJGNvbG9yX25ldXRyYWxfMjogdmFyKC0tcHMtY29sb3ItYm9yZGVyLTIsICNhN2E3YTcpO1xuJGNvbG9yX25ldXRyYWxfMzogdmFyKC0tcHMtY29sb3ItYm9yZGVyLCAjZGJkYmRiKTtcbiRjb2xvci1uZXV0cmFsXzQ6IHZhcigtLXBzLWNvbG9yLXN1cmZhY2UtYWx0LCAjZWZlZmVmKTtcblxuLy8g4pSA4pSAIFNlbWFudGljIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuJGNvbG9yX3JlZDogICAgICAgIHZhcigtLXBzLWNvbG9yLWRhbmdlciwgI2ZmMWUwMCk7XG4kY29sb3JfdGV4dF9saWdodDogdmFyKC0tcHMtY29sb3ItdGV4dC1pbnZlcnNlLCAjZmZmZmZmKTtcblxuLy8gUHJlY29tcHV0ZWQgdHJhbnNsdWNlbnQgb3ZlcmxheSDigJQgYSBmaXJzdC1jbGFzcyB0b2tlbiAoU2FzcyBjYW4ndCByZ2JhKCkgYVxuLy8gdmFyKCk7IHRoZSBsZWdhY3kgdmFsdWUgd2FzIHJnYmEoJGNvbG9yX3NlY29uZGFyeV9kYXJrZXIsIC44KSA9IHJnYmEgYmxhY2spLlxuJG92ZXJsYXktZGFyazogdmFyKC0tcHMtY29sb3Itb3ZlcmxheS1kYXJrLCByZ2JhKDAsIDAsIDAsIDAuOCkpO1xuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ0FUQUxPRyDigJQgZ2xvYmFscyBicmlkZ2UgZm9yIHJlbG9jYXRlZCBsZWdhY3kgc3R5bGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUaGUgcmVsb2NhdGVkIGxlZ2FjeSBzdHlsZXMgKHByb2R1Y3QtdG9vbGJhciwgbGVnYWN5IHByb2R1Y3QgY2FyZCwgYW5kIGxhdGVyXG4vLyBmYWNldHMvZGV0YWlsKSByZWZlcmVuY2UgeW91ciBmcmFtZXdvcmsncyB0aGVtZSBDT0xPUiB2YXJpYWJsZXMgcGx1cyBhIGZld1xuLy8gdXRpbGl0aWVzIChyZW1jKCksIG1lZGlhLWJyZWFrcG9pbnQtZG93bi91cCwgJWNoZXZyb24gcGxhY2Vob2xkZXJzKS4gQmVjYXVzZVxuLy8gZWFjaCBjb21wb25lbnQgY29tcGlsZXMgYXMgaXRzIG93biBXZWJwYWNrIGJ1bmRsZSwgZWFjaCBtdXN0IHNlZSB0aGVzZS5cbi8vXG4vLyBUaGVzZSBkZWZpbml0aW9ucyBhcmUgc2VsZi1jb250YWluZWQgc28gdGhlIGNvbXBvbmVudHMgY29tcGlsZSBvbiB0aGVpciBvd24uXG4vLyBUaGV5IGxpdmUgT05MWSBpbnNpZGUgdGhlc2UgY29tcG9uZW50IGJ1bmRsZXMgYW5kIGRvIG5vdCBhZmZlY3QgeW91ciBnbG9iYWxcbi8vIGJ1aWxkIChzZXBhcmF0ZSBjb21waWxhdGlvbiB1bml0cykuIElmIHlvdSdkIHJhdGhlciB1c2UgeW91ciBmcmFtZXdvcmsnc1xuLy8gdmVyc2lvbnMsIGltcG9ydCB0aGVtIGhlcmUg4oCUIHlvdXIgdmFsdWVzIHRoZW4gdGFrZSBwcmVjZWRlbmNlIGZvciB0aGUgY29sb3JzXG4vLyAod2hpY2ggdXNlICFkZWZhdWx0KSwgYW5kIHlvdSBjYW4gZGVsZXRlIHRoZSBtYXRjaGluZyB1dGlsaXR5IGRlZmluaXRpb25zLlxuLy9cbi8vICAgPj4+IE9QVElPTkFMOiBAaW1wb3J0ICcuLi8uLi9zdHlsZXMvdmFyaWFibGVzJzsgICAvLyB5b3VyIHJlYWwgdGhlbWUgdmFyc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0IFwic3R5bGVzL3ZhcmlhbnRzL2NvbG9yc1wiO1xuXG4vLyDilIDilIAgVGhlbWUgY29sb3JzOiBzaW5nbGUgc291cmNlIG9mIHRydXRoIGlzIHN0eWxlcy92YXJpYW50cy9fY29sb3JzLnNjc3Ncbi8vICAgIChpbXBvcnRlZCBhYm92ZTsgdG9rZW4tYmFja2VkIHNpbmNlIFJvdW5kIDE0IOKAlCBldmVyeSAkY29sb3JfKiByZXNvbHZlcyB0b1xuLy8gICAgdmFyKC0tcHMtY29sb3ItKiwgPGJyYW5kIGhleD4pKS4gVGhlIG9sZCBkdXBsaWNhdGUgIzMwNUNERSBwYWxldHRlIHRoYXRcbi8vICAgIGxpdmVkIGhlcmUgd2FzIGRlYWQgd2VpZ2h0ICh0aGUgaW1wb3J0J3Mgbm9uLSFkZWZhdWx0IGRlZmluaXRpb25zIGFsd2F5c1xuLy8gICAgd29uKSBhbmQgd2FzIHJlbW92ZWQgcGVyIENPTE9SU19UT0tFTlNfUkVDT05DSUxJQVRJT04ubWQgUGhhc2UgMi5cbi8vICAgIE9ubHkgdGhlIHZhcnMgdmFyaWFudHMvY29sb3JzIGRvZXMgTk9UIGRlZmluZSByZW1haW4sIHRva2VuLW1hcHBlZCBvbnRvXG4vLyAgICB0aGUgcHJpbWFyeSBhY2NlbnQgcGVyIHRoZSByZWNvbmNpbGlhdGlvbiB0YWJsZTpcbiRoZWFkZXItbWFpbi10ZXh0LWNvbG9yOiAgdmFyKC0tcHMtY29sb3ItcHJpbWFyeSwgIzMwNUNERSkgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kaGVhZGVyLWJhc2UtY29sb3I6ICAgICAgIHZhcigtLXBzLWNvbG9yLXByaW1hcnksICMzMDVDREUpICFkZWZhdWx0OyAgIC8vIGNoZWNrZWQtY2hlY2tib3ggZmlsbCAoYnJhbmQpXG4kYnV0dG9uLWRlZmF1bHQtY29sb3I6ICAgIHZhcigtLXBzLWNvbG9yLXByaW1hcnksICMzMDVDREUpICFkZWZhdWx0OyAgIC8vIGRlZmF1bHQgY29udHJvbCBhY2NlbnRcblxuLy8g4pSA4pSAIHJlbWMoKTogcHgg4oaSIHJlbSAoZS5nLiByZW1jKDEyKSAtPiAuNzVyZW07IHJlbWMoNSwxNSkgLT4gLjMxMjVyZW0gLjkzNzVyZW0pXG5AZnVuY3Rpb24gcmVtYygkdmFsdWVzLi4uKSB7XG4gICRyZXN1bHQ6ICgpO1xuICBAZWFjaCAkdiBpbiAkdmFsdWVzIHtcbiAgICBAaWYgJHYgPT0gMCB7XG4gICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgMCk7XG4gICAgfSBAZWxzZSBpZiB1bml0bGVzcygkdikge1xuICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICgkdiAvIDE2KSAqIDFyZW0pO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICR2KTsgLy8gYWxyZWFkeSBoYXMgYSB1bml0IOKAlCBwYXNzIHRocm91Z2hcbiAgICB9XG4gIH1cbiAgQGlmIGxlbmd0aCgkcmVzdWx0KSA9PSAxIHsgQHJldHVybiBudGgoJHJlc3VsdCwgMSk7IH1cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyDilIDilIAgQm9vdHN0cmFwLTQtc3R5bGUgYnJlYWtwb2ludCBtaXhpbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4kZ3JpZC1icmVha3BvaW50czogKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBfYnAtbWluKCRuYW1lKSB7IEByZXR1cm4gbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJG5hbWUpOyB9XG5AZnVuY3Rpb24gX2JwLW5leHQoJG5hbWUpIHtcbiAgJG5hbWVzOiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpOiBpbmRleCgkbmFtZXMsICRuYW1lKTtcbiAgQGlmICRpIGFuZCAkaSA8IGxlbmd0aCgkbmFtZXMpIHsgQHJldHVybiBudGgoJG5hbWVzLCAkaSArIDEpOyB9XG4gIEByZXR1cm4gbnVsbDtcbn1cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lKSB7XG4gICRtaW46IF9icC1taW4oJG5hbWUpO1xuICBAaWYgJG1pbiBhbmQgJG1pbiAhPSAwIHsgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHsgQGNvbnRlbnQ7IH0gfVxuICBAZWxzZSB7IEBjb250ZW50OyB9XG59XG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lKSB7XG4gICRuZXh0OiBfYnAtbmV4dCgkbmFtZSk7XG4gIEBpZiAkbmV4dCB7XG4gICAgJG1heDogX2JwLW1pbigkbmV4dCkgLSAwLjAycHg7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHsgQGNvbnRlbnQ7IH1cbiAgfSBAZWxzZSB7IEBjb250ZW50OyB9XG59XG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lKSB7XG4gICRtaW46IF9icC1taW4oJG5hbWUpO1xuICAkbmV4dDogX2JwLW5leHQoJG5hbWUpO1xuICBAaWYgJG5leHQge1xuICAgICRtYXg6IF9icC1taW4oJG5leHQpIC0gMC4wMnB4O1xuICAgIEBpZiAkbWluIGFuZCAkbWluICE9IDAgeyBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHsgQGNvbnRlbnQ7IH0gfVxuICAgIEBlbHNlIHsgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHsgQGNvbnRlbnQ7IH0gfVxuICB9IEBlbHNlIGlmICRtaW4gYW5kICRtaW4gIT0gMCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHsgQGNvbnRlbnQ7IH1cbiAgfSBAZWxzZSB7IEBjb250ZW50OyB9XG59XG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyKSB7XG4gICRtaW46IF9icC1taW4oJGxvd2VyKTtcbiAgJG5leHQ6IF9icC1uZXh0KCR1cHBlcik7XG4gICRtYXg6IGlmKCRuZXh0LCBfYnAtbWluKCRuZXh0KSAtIDAuMDJweCwgbnVsbCk7XG4gIEBpZiAkbWluIGFuZCAkbWluICE9IDAgYW5kICRtYXggeyBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHsgQGNvbnRlbnQ7IH0gfVxuICBAZWxzZSBpZiAkbWF4IHsgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHsgQGNvbnRlbnQ7IH0gfVxuICBAZWxzZSBpZiAkbWluIGFuZCAkbWluICE9IDAgeyBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgeyBAY29udGVudDsgfSB9XG4gIEBlbHNlIHsgQGNvbnRlbnQ7IH1cbn1cblxuLy8g4pSA4pSAIENoZXZyb24gcGxhY2Vob2xkZXJzICh1c2VkIGJ5IGxhdGVyIHBoYXNlczsgaGFybWxlc3MgdG8ga2VlcCkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4lY2hldnJvbiB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC4xNWVtIDAuMTVlbSAwIDA7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMC42NWVtO1xuICBsZWZ0OiAwLjE1ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjE1ZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAwLjY1ZW07XG59XG4lY2hldnJvbi1yaWdodCAgeyBsZWZ0OiAwOyB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiVjaGV2cm9uLWJvdHRvbSB7IGxlZnQ6IDA7IHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7IH1cbiVjaGV2cm9uLWxlZnQgICB7IGxlZnQ6IDA7IHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOyB9XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDQVRBTE9HLUNIUk9NRSDigJQgc2hhcmVkIGJ1bmRsZSAoc2luZ2xlIHNvdXJjZSBvZiB0cnV0aCArIGxlZ2FjeSBzaGltKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVGhlIHNoYXJlZCBjYXRhbG9nIFwiY2hyb21lXCIgdXNlZCBieSBuYXJyb3ctZG93bi1wYXJ0IC8gLXZlaGljbGUgLyAtYnJhbmQgQU5EXG4vLyBsZWdhY3kgcGFnZXMgKHBhcnRzLmJsYWRlLCBjYXRlZ29yeSBwYWdlcyk6IHNlYXJjaC1wcm9tcHQgaGVhZGluZ3MsIHRoZVxuLy8gcHJvbXB0LXByb2R1Y3QgY2FyZHMsIHRoZSBwcm9tcHQtbGlzdCAvIGZhY2V0LWxpc3Qtcm93IHN3aXBlciB3cmFwcGVycywgdGhlXG4vLyBzaG93LW1vcmUgdG9nZ2xlLCBhbmQgdGhlIGNhdGVnb3J5IG5hdmlnYXRpb24gKHByb2R1Y3QtbmFtZS1zZWxlY3Rvcixcbi8vIHRvcC1wcm9kdWN0KS4gQ29uc29saWRhdGVkIGZyb20gQk9USCBwcm9kdWN0cy5zY3NzIGFuZCB0aGUgbGVnYWN5IFNDU1MsIHdoZXJlXG4vLyB0aGVzZSBydWxlcyB3ZXJlIHByZXZpb3VzbHkgc2NhdHRlcmVkLlxuLy9cbi8vIENvbXBpbGVzIHRvIGNvbXBvbmVudC1jYXRhbG9nLWNocm9tZS1kZWZhdWx0LmNzcy4gVFdPIGNvbnN1bWVyczpcbi8vICAgMS4gTmV3IGNvbXBvbmVudCBwYWdlcyDigJQgbG9hZCBpdCBPTkNFIHBlciBwYWdlIChwYXNzIGBjYXRhbG9nLWNocm9tZWAgaW4gdGhlXG4vLyAgICAgIGNvbXBvbmVudCBsaXN0IGFsb25nc2lkZSBuYXJyb3ctZG93bi0qIC8gcHJvZHVjdCBjYXJkcykuIFRoZSByZXNvbHZlclxuLy8gICAgICBkZWR1cGVzLCBzbyBpdCBsb2FkcyBhIHNpbmdsZSB0aW1lLlxuLy8gICAyLiBMZWdhY3kgLyB1bi1taWdyYXRlZCBwYWdlcyDigJQgaW5jbHVkZSB0aGlzIHNhbWUgYnVuZGxlIGRpcmVjdGx5IGFzIHRoZVxuLy8gICAgICBTSElNIChyZXBsYWNlcyB0aGUgY2hyb21lIGNodW5rIG9mIHByb2R1Y3RzLnNjc3MpLiBXaGVuIHlvdSBmaW5pc2hcbi8vICAgICAgbWlncmF0aW5nIGEgcGFnZSwganVzdCBzdG9wIGluY2x1ZGluZyBpdCB0aGVyZS5cbi8vXG4vLyBQZXItY29tcG9uZW50IHVuaXF1ZSBzdHlsZXMgc3RheSBpbiBlYWNoIG5hcnJvdy1kb3duIGNvbXBvbmVudDsgdGhlIENPTU1PTlxuLy8gY2hyb21lIGxpdmVzIGhlcmUsIHNvIG5vdGhpbmcgaXMgZHVwbGljYXRlZCBhY3Jvc3MgdGhlIHRocmVlLlxuLy9cbi8vIFRoaXJkLXBhcnR5IGNsYXNzZXMgKC5ncmlkLWNvbCAvIC5ncmlkLXJvdywgU3dpcGVyJ3MgLnN3aXBlci0qKSBhcmUgTk9UIGhlcmUg4oCUXG4vLyB0aGV5IGNvbWUgZnJvbSB5b3VyIGdyaWQgZnJhbWV3b3JrICsgU3dpcGVyLmpzLCB1bmNoYW5nZWQuXG4vL1xuLy8gRGVwczogJGNvbG9yX3ByaW1hcnkgKyAkaGVhZGVyLW1haW4tdGV4dC1jb2xvciBmcm9tIF9jYXRhbG9nL19nbG9iYWxzLlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0ICdjb21wb25lbnRzL19jYXRhbG9nL2dsb2JhbHMnO1xuXG4vLyBUaGUgLmJvZHktd3JhcC5wcm9kdWN0cyBQQUdFIGNocm9tZSAoZml4ZWQtaGVhZGVyIGNsZWFyYW5jZSBwYWRkaW5nLCB0aGVcbi8vIC5jb250YWluZXItZmx1aWQgYmFuZCwgLXZhci0xLy1jaGVja291dCBtb2RpZmllcnMpLiBMaXZlcyBpbiBhIHNoYXJlZFxuLy8gcGFydGlhbCBiZWNhdXNlIGl0IG11c3QgbG9hZCBvbiBldmVyeSBjYXRhbG9nIGxpc3RpbmcgcGFnZSBSRUdBUkRMRVNTIG9mXG4vLyB3aGljaCBzZWFyY2ggdmFyaWFudCB0aGUgaGVhZGVyIGVtYmVkcyDigJQgc2VlIHRoZSBwYXJ0aWFsJ3MgaGVhZGVyIGZvciB0aGVcbi8vIDIwMjYtMDgtMjggY29tcGFjdC1zZWFyY2ggcmVncmVzc2lvbiB0aGF0IG1vdGl2YXRlZCB0aGlzLlxuQGltcG9ydCAnY29tcG9uZW50cy9fY2F0YWxvZy9wcm9kdWN0cy1wYWdlLWNocm9tZSc7XG5cbi8vIOKUgOKUgCBGcm9tIHByb2R1Y3RzLnNjc3Mg4pSA4pSAXG5cblxuXG4ucHJvbXB0LXByb2R1Y3Qge1xuICBhIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogIzJhMmIyYTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnByb2R1Y3QtaW1nIHtcblxuICAgIHdpZHRoOiA5OCU7XG5cbiAgICBtYXJnaW46IDElO1xuXG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG92ZXJmbG93OiBjbGlwO1xuXG5cbiAgICBpbWcge1xuICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgICAvL21heC13aWR0aDogMzUwcHg7XG4gICAgICBoZWlnaHQ6IDZ2dztcbiAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAvKm1heC13aWR0aDogMjAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEzMHB4O1xuICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgICAqL1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmxhYmVsIHtcblxuICAgIH1cblxuICB9XG5cblxuICAuY291bnQge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogIzYzNjM2MztcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbn1cblxuXG5cbi50b3AtcHJvZHVjdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDVweDtcbiAgd2lkdGg6IDMyJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGhlaWdodDogMTV2dztcbiAgbWF4LWhlaWdodDogMzIwcHg7XG5cblxufVxuXG5cblxuLnRvcC1wcm9kdWN0IGEge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzJhMmIyYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG59XG5cblxuXG4udG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIHtcblxuICB3aWR0aDogOTglO1xuXG4gIG1hcmdpbjogMSU7XG5cbiAgY2xlYXI6IGJvdGg7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbn1cblxuXG5cbi50b3AtcHJvZHVjdCAucHJvZHVjdC1pbWcgaW1nIHtcbiAgbWF4LWhlaWdodDogMjcwcHg7XG4gIC8vbWF4LXdpZHRoOiAzNTBweDtcbiAgaGVpZ2h0OiAxMnZ3O1xuICAvKm1heC13aWR0aDogMjAwcHg7XG4gICAgbWF4LWhlaWdodDogMTMwcHg7XG4gICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICovXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogNDAwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3NnB4KSB7XG5cbi50b3AtcHJvZHVjdCB7XG4gICAgaGVpZ2h0OiAyN3Z3O1xuICAgIHdpZHRoOiAzMCU7XG4gIH1cblxuXG4udG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIHtcbiAgICBoZWlnaHQ6IDE1dnc7XG4gIH1cblxuXG4udG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIGltZyB7XG4gICAgaGVpZ2h0OiAxNXZ3O1xuXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQ3cHgpIHtcblxuICAudG9wLXByb2R1Y3Qge1xuICAgIGJvcmRlcjogMHB4IHNvbGlkIGdyZWVuO1xuICAgIHdpZHRoOiAzMSU7XG4gICAgaGVpZ2h0OiAyNXZ3O1xuICB9XG5cblxuICAudG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIHtcbiAgICBoZWlnaHQ6IDE2dnc7XG4gIH1cblxuXG4gIC50b3AtcHJvZHVjdCAucHJvZHVjdC1pbWcgaW1nIHtcbiAgICBoZWlnaHQ6IDE2dnc7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTIzcHgpIHtcblxuICAudG9wLXByb2R1Y3Qge1xuICAgIGJvcmRlcjogMHB4IHNvbGlkIHJlZDtcbiAgICB3aWR0aDogNDYuNSU7XG5cbiAgICBoZWlnaHQ6IDIwdnc7XG5cbiAgICBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG5cbiAgICBhIHtcblxuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cblxuICB9XG5cblxuXG4gIC50b3AtcHJvZHVjdCAucHJvZHVjdC1pbWcge1xuICAgIGhlaWdodDogMTR2dztcbiAgfVxuXG5cbiAgLnRvcC1wcm9kdWN0IC5wcm9kdWN0LWltZyBpbWcge1xuICAgIGhlaWdodDogMTV2dztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzNweCkge1xuXG4gIC50b3AtcHJvZHVjdCB7XG4gICAgYm9yZGVyOiAwcHggc29saWQgcmVkO1xuICAgIHdpZHRoOiA0NSU7XG5cbiAgICBoZWlnaHQ6IDI3dnc7XG5cbiAgfVxuXG5cbiAgLnRvcC1wcm9kdWN0IC5wcm9kdWN0LWltZyB7XG4gICAgaGVpZ2h0OiAyM3Z3O1xuICB9XG5cblxuICAudG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIGltZyB7XG4gICAgaGVpZ2h0OiAyNHZ3O1xuICB9XG5cblxuICAudG9wLXByb2R1Y3QgYSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcblxuXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcblxuICAuY291bnQge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogIzYzNjM2MztcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLmNhdGVnb3J5LW5hbWUge1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcblxuXG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIGhlaWdodDogMzlweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuXG4gICYuaGlnaGxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfcHJpbWFyeTtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLmhpZ2hsaWdodC10ZXh0IHtcbiAgICBjb2xvcjogJGNvbG9yX3ByaW1hcnk7XG4gIH1cbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLnN1YmNhdGVnb3J5LW5hbWUge1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcblxuXG4gIGhlaWdodDogMzlweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuXG5cbiAgJi5oaWdobGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9wcmltYXJ5O1xuICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICYuaGlnaGxpZ2h0LXRleHQge1xuICAgIGNvbG9yOiAkY29sb3JfcHJpbWFyeTtcbiAgfVxufVxuXG5cblxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciAuY2F0ZWdvcnktbmFtZSBzcGFuLCAucHJvZHVjdC1uYW1lLXNlbGVjdG9yIC5zdWJjYXRlZ29yeS1uYW1lIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAyNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG5cblxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciAuY2F0ZWdvcnktbmFtZSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6ICRjb2xvcl9wcmltYXJ5O1xufVxuXG5cblxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciAuc3ViY2F0ZWdvcnktbmFtZSBzcGFuOmZpcnN0LWNoaWxkIHtcblxufVxuXG5cblxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciAuY2F0ZWdvcnktbmFtZSBzcGFuIGEge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGNvbG9yOiAkaGVhZGVyLW1haW4tdGV4dC1jb2xvcjtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLmNhdGVnb3J5LW5hbWUgc3BhbjpmaXJzdC1jaGlsZCwgLnByb2R1Y3QtbmFtZS1zZWxlY3RvciAuc3ViY2F0ZWdvcnktbmFtZSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgdWwge1xuICB3aWR0aDogMzMlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG5cblxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciB1bDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgdWwgbGkge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGNvbG9yOiBibGFjaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nLWxlZnQ6IDNweDtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgdWwgbGk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdkODY4YTtcbiAgb3BhY2l0eTogMTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG4gIGJvcmRlci1yYWRpdXM6IDZweCA2cHggNnB4IDZweDtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgdWwgbGkgYSB7XG4gIGNvbG9yOiBibGFjaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5cblxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciB1bCBsaTpob3ZlciBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5cblxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciB1bC5jYXRlZ29yeSB7XG4gIGNsZWFyOiBib3RoO1xuICBmbG9hdDogbGVmdDtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLnRvcC1wcm9kdWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1MDBweCkge1xuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIC5jYXRlZ29yeS1uYW1lIHtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgfVxufVxuXG5cblxuaDMuc2VhcmNoLXByb21wdCB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gIGNvbG9yOiAjNjY2O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDEzcHg7XG5cbn1cblxuXG5cbmgyLnNlYXJjaC1wcm9tcHQge1xuICBmb250LXNpemU6IDM1cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIC8vbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gIGNvbG9yOiAjMWMxYzFlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW4tdG9wOiAwO1xuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbn1cblxuXG5cbmgyLnNlYXJjaC1wcm9tcHQubGVmdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5cblxuaDEuc2VhcmNoLXByb21wdCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICBzdWIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICB9XG59XG5cblxuXG5wLnNlYXJjaC1wcm9tcHQge1xuICBjb2xvcjogIzc3NztcbiAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gIG1hcmdpbi10b3A6IDIuMmVtO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuXG5cbi5zZWFyY2gtcHJvbXB0IC5nbHlwaGljb24tYWxlcnQge1xuICBjb2xvcjogb3JhbmdlcmVkO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzZweCkge1xuXG5oMS5zZWFyY2gtcHJvbXB0IHtcbiAgICBzdWIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcyNnB4KSB7XG5cbiAgaDMuc2VhcmNoLXByb21wdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTNweCkge1xuXG5cbmgyLnNlYXJjaC1wcm9tcHQubGVmdCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cblxuaDMuc2VhcmNoLXByb21wdCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cblxuXG5oMi5zZWFyY2gtcHJvbXB0IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAvL21hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG5cblxuaDIuc2VhcmNoLXByb21wdCB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICB9XG5cblxucC5zZWFyY2gtcHJvbXB0IHtcbiAgICBjb2xvcjogIzc3NztcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cblxucC5zZWFyY2gtcHJvbXB0LnRpZ2h0ZXIge1xuICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG5cblxuaDIuc2VhcmNoLXByb21wdC50aWdodGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuMmVtO1xuICAgIG1hcmdpbi10b3A6IC4yZW07XG4gIH1cbn1cblxuXG4vLyDilIDilIAgRnJvbSBsZWdhY3kgU0NTUyDilIDilIBcblxuXG5cbi5wcm9tcHQtcHJvZHVjdCB7XG4gIGEge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjMmEyYjJhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAucHJvZHVjdC1pbWcge1xuXG4gICAgd2lkdGg6IDk4JTtcblxuICAgIG1hcmdpbjogMSU7XG5cbiAgICBjbGVhcjogYm90aDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgb3ZlcmZsb3c6IGNsaXA7XG5cblxuICAgIGltZyB7XG4gICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgIC8vbWF4LXdpZHRoOiAzNTBweDtcbiAgICAgIGhlaWdodDogNnZ3O1xuICAgICAgbWluLWhlaWdodDogNTBweDtcbiAgICAgIC8qbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgbWF4LWhlaWdodDogMTMwcHg7XG4gICAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICovXG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAubGFiZWwge1xuXG4gICAgfVxuXG4gIH1cblxuXG4gIC5jb3VudCB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAjNjM2MzYzO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxufVxuXG5cblxuXG4udG9wLXByb2R1Y3Qge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiA1cHg7XG4gIHdpZHRoOiAzMiU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBoZWlnaHQ6IDE1dnc7XG4gIG1heC1oZWlnaHQ6IDMyMHB4O1xuXG5cbn1cblxuXG5cbi50b3AtcHJvZHVjdCBhIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMyYTJiMmE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxufVxuXG5cblxuLnRvcC1wcm9kdWN0IC5wcm9kdWN0LWltZyB7XG5cbiAgd2lkdGg6IDk4JTtcblxuICBtYXJnaW46IDElO1xuXG4gIGNsZWFyOiBib3RoO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG59XG5cblxuXG4udG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIGltZyB7XG4gIG1heC1oZWlnaHQ6IDI3MHB4O1xuICAvL21heC13aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMTJ2dztcbiAgLyptYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDEzMHB4O1xuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICAqL1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NzZweCkge1xuXG5cbiAgLnRvcC1wcm9kdWN0IHtcbiAgICBoZWlnaHQ6IDI3dnc7XG4gICAgd2lkdGg6IDMwJTtcbiAgfVxuXG5cbiAgLnRvcC1wcm9kdWN0IC5wcm9kdWN0LWltZyB7XG4gICAgaGVpZ2h0OiAxNXZ3O1xuICB9XG5cblxuICAudG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIGltZyB7XG4gICAgaGVpZ2h0OiAxNXZ3O1xuXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQ3cHgpIHtcblxuICAudG9wLXByb2R1Y3Qge1xuICAgIGJvcmRlcjogMHB4IHNvbGlkIGdyZWVuO1xuICAgIHdpZHRoOiAzMSU7XG4gICAgaGVpZ2h0OiAyNXZ3O1xuICB9XG5cblxuICAudG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIHtcbiAgICBoZWlnaHQ6IDE2dnc7XG4gIH1cblxuXG4gIC50b3AtcHJvZHVjdCAucHJvZHVjdC1pbWcgaW1nIHtcbiAgICBoZWlnaHQ6IDE2dnc7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTIzcHgpIHtcblxuICAudG9wLXByb2R1Y3Qge1xuICAgIGJvcmRlcjogMHB4IHNvbGlkIHJlZDtcbiAgICB3aWR0aDogNDYuNSU7XG5cbiAgICBoZWlnaHQ6IDIwdnc7XG5cbiAgICBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG5cbiAgICBhIHtcblxuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cblxuICB9XG5cblxuXG4gIC50b3AtcHJvZHVjdCAucHJvZHVjdC1pbWcge1xuICAgIGhlaWdodDogMTR2dztcbiAgfVxuXG5cbiAgLnRvcC1wcm9kdWN0IC5wcm9kdWN0LWltZyBpbWcge1xuICAgIGhlaWdodDogMTV2dztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzNweCkge1xuXG4gIC50b3AtcHJvZHVjdCB7XG4gICAgYm9yZGVyOiAwcHggc29saWQgcmVkO1xuICAgIHdpZHRoOiA0NSU7XG5cbiAgICBoZWlnaHQ6IDI3dnc7XG5cbiAgfVxuXG5cbiAgLnRvcC1wcm9kdWN0IC5wcm9kdWN0LWltZyB7XG4gICAgaGVpZ2h0OiAyM3Z3O1xuICB9XG5cblxuICAudG9wLXByb2R1Y3QgLnByb2R1Y3QtaW1nIGltZyB7XG4gICAgaGVpZ2h0OiAyNHZ3O1xuICB9XG5cblxuICAudG9wLXByb2R1Y3QgYSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3Ige1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuXG5cbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXG4gIC5jb3VudCB7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAjNjM2MzYzO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxufVxuXG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIC5jYXRlZ29yeS1uYW1lIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICBoZWlnaHQ6IDM5cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cblxuICAmLmhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX3ByaW1hcnk7XG4gICAgY29sb3I6ICNmZmY7XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJi5oaWdobGlnaHQtdGV4dCB7XG4gICAgY29sb3I6ICRjb2xvcl9wcmltYXJ5O1xuICB9XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIC5zdWJjYXRlZ29yeS1uYW1lIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cblxuICBoZWlnaHQ6IDM5cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcblxuXG4gICYuaGlnaGxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfcHJpbWFyeTtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAmLmhpZ2hsaWdodC10ZXh0IHtcbiAgICBjb2xvcjogJGNvbG9yX3ByaW1hcnk7XG4gIH1cbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLmNhdGVnb3J5LW5hbWUgc3BhbiwgLnByb2R1Y3QtbmFtZS1zZWxlY3RvciAuc3ViY2F0ZWdvcnktbmFtZSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLmNhdGVnb3J5LW5hbWUgc3BhbjpmaXJzdC1jaGlsZCB7XG4gIGNvbG9yOiAkY29sb3JfcHJpbWFyeTtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLnN1YmNhdGVnb3J5LW5hbWUgc3BhbjpmaXJzdC1jaGlsZCB7XG5cbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLmNhdGVnb3J5LW5hbWUgc3BhbiBhIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBjb2xvcjogJGhlYWRlci1tYWluLXRleHQtY29sb3I7XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIC5jYXRlZ29yeS1uYW1lIHNwYW46Zmlyc3QtY2hpbGQsIC5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLnN1YmNhdGVnb3J5LW5hbWUgc3BhbjpmaXJzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIHVsIHtcbiAgd2lkdGg6IDMzJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgdWw6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIHVsIGxpIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBjb2xvcjogYmxhY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAzcHg7XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIHVsIGxpOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZDg2OGE7XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICBib3JkZXItcmFkaXVzOiA2cHggNnB4IDZweCA2cHg7XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIHVsIGxpIGEge1xuICBjb2xvcjogYmxhY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgdWwgbGk6aG92ZXIgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuXG5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgdWwuY2F0ZWdvcnkge1xuICBjbGVhcjogYm90aDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cblxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yIC50b3AtcHJvZHVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTAwcHgpIHtcblxuXG4gIC5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLmNhdGVnb3J5LW5hbWUge1xuICAgIGhlaWdodDogYXV0bztcblxuICB9XG59XG5cblxuXG4ucHJvbXB0LWxpc3Qge1xuICBjbGVhcjogYm90aDtcblxuICAuYnJhbmQtaW1hZ2UtZmFjZXQgaW1nIHtcbiAgICBtaW4td2lkdGg6IDYuOGVtO1xuICB9XG5cbiAgLnNlYXJjaC1wcm9tcHQge1xuICAgIC8vY29sb3I6ICRoZWFkZXItbWFpbi10ZXh0LWNvbG9yO1xuICB9XG5cbiAgaS5iaS1hcnJvdy1kb3duIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNDglO1xuICAgIHRvcDogMzAlO1xuICAgIGZvbnQtc2l6ZTogNzBweDtcbiAgICBjb2xvcjogJGNvbG9yX3ByaW1hcnk7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMTFweCkge1xuXG4gICAgLy8gY3JlYXRlIHRoZSBmYWRlIGVmZmVjdCBvbiB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgc3dpcGVyXG4gICAgLnN3aXBlci1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLy9vdmVyZmxvdzogdmlzaWJsZTsgLyogc28gdGhlIGZhZGUgY2FuIGJlIHBsYWNlZCBhYnNvbHV0ZWx5ICovXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAuc3dpcGVyLWNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuOCksIHJnYmEoMjU1LDI1NSwyNTUsMCkpO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgIH1cblxuICB9XG5cblxuICAvLyBkaXNhYmxlIHRoZSBzd2lwZXIgc3R5bGVzIG9uIGRlc2t0b3Agc28gaXQgY2FuIHdyYXBcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMTFweCkge1xuICAgIC8qIG9yIHdoYXRldmVyIHlvdXIgZGVza3RvcCBicmVha3BvaW50IGlzICovXG4gICAgLnN3aXBlci13cmFwcGVyIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxufVxuXG5cblxuLmZhY2V0LXByb21wdC1saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgZGlzcGxheTogdGFibGU7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5cblxuLmZhY2V0LXByb21wdC1saXN0IGxpIHtcbiAgd2lkdGg6IDE2LjY2NjYlO1xuICBtaW4td2lkdGg6IDEwMHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuXG5cbi5mYWNldC1wcm9tcHQtbGlzdCBsaSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ZThlOGU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDAsIGZyb20oI2VjZWNlYyksIHRvKCNmZmYpKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmLCAjZWNlY2VjIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmYsICNlY2VjZWMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmLCAjZWNlY2VjIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmLCAjZWNlY2VjIDEwMCUpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBib3gtc2hhZG93OiAwIDFweCAxcHggI2JiYjtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDFweCAxcHggI2JiYjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAxcHggI2JiYjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiA3cHggMTBweDtcbiAgY29sb3I6ICMzMzM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG5cbi5mYWNldC1wcm9tcHQtbGlzdCBsaS5icmFuZC1pbWFnZS1mYWNldCB7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDE4NXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbjogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbn1cblxuXG5cblxuLmZhY2V0LXByb21wdC1saXN0IGxpLmJyYW5kLWltYWdlLWZhY2V0IC5oZWxwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG5cbi5mYWNldC1wcm9tcHQtbGlzdCBsaS5icmFuZC1pbWFnZS1mYWNldCBpbWcge1xuICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtaGVpZ2h0OiA0NXB4O1xuICBtYXgtd2lkdGg6IDE2MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTEwcHg7XG59XG5cblxuXG4uZmFjZXQtcHJvbXB0LWxpc3QgbGkuYnJhbmQtaW1hZ2UtZmFjZXQgLmJyYW5kLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIC8vZm9udC1mYW1pbHk6IFZlcmRhbmEsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjMDAwMEZGO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0yMHB4O1xufVxuXG5cblxuXG4udG9nZ2xlLWhpZGUtYnktZGVmYXVsdCB7XG4gIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY29sb3I6ICMzMzM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5cblxuLmZhY2V0LXByb21wdC1saXN0IGxpIHNwYW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG5cblxuLmZhY2V0LXByb21wdC1saXN0IC5oaWRlLWJ5LWRlZmF1bHQsIC5wcm9tcHQtbGlzdCAuaGlkZS1ieS1kZWZhdWx0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuXG5cbi5mYWNldC1wcm9tcHQtbGlzdCAudmlzaWJsZSwgLnByb21wdC1saXN0IC52aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuXG5oMy5zZWFyY2gtcHJvbXB0IHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBtYXJnaW4tbGVmdDogMjVweDtcbiAgY29sb3I6ICM2NjY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogMTNweDtcblxufVxuXG5cblxuaDIuc2VhcmNoLXByb21wdCB7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgLy9tYXJnaW4tbGVmdDogNDVweDtcbiAgY29sb3I6ICMxYzFjMWU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi10b3A6IDA7XG5cbiAgc3ViIHtcbiAgICBib3R0b206IDA7XG4gIH1cblxufVxuXG5cblxuaDIuc2VhcmNoLXByb21wdC5sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cblxuXG5oMS5zZWFyY2gtcHJvbXB0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIHN1YiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gIH1cbn1cblxuXG5cbnAuc2VhcmNoLXByb21wdCB7XG4gIGNvbG9yOiAjNzc3O1xuICBtYXJnaW4tbGVmdDogNDVweDtcbiAgbWFyZ2luLXRvcDogMi4yZW07XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5cblxuXG4uc2VhcmNoLXByb21wdCAuZ2x5cGhpY29uLWFsZXJ0IHtcbiAgY29sb3I6IG9yYW5nZXJlZDtcbn1cblxuXG5cbi5mYWNldC1saXN0LXJvdyB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cblxuXG4uc3VibW9kZWxzX19jb2wge1xuICB3aWR0aDogOS41cmVtO1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3NnB4KSB7XG5cblxuXG4gIGgxLnNlYXJjaC1wcm9tcHQge1xuICAgIHN1YiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9XG4gIH1cblxuXG5cbiAgLmZhY2V0LXByb21wdC1saXN0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZmxleDogYXV0bztcbiAgICB9XG4gIH1cblxuXG4gIC5mYWNldC1wcm9tcHQtbGlzdCBsaSB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgbWluLXdpZHRoOiA3MHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG5cbiAgLmZhY2V0LWxpc3Qtcm93IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy9tYXJnaW46IDAgLTFyZW07XG4gICAgbWFyZ2luOiBhdXRvOyAvLyBtdXN0IGJlIGF1dG8sIGZvciB0aGUgc3dpcGVyIGNsYXNzZXNcblxuXG4vKiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMC43NXJlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDRyZW07XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB6LWluZGV4OiAyOyAvLyBtdXN0IGJlIGhpZ2hlciB0aGFuIHN3aXBlci13cmFwcGVyLCB0byBhcHBseSB0aGUgZ3JhZGllbnRcbiAgICB9Ki9cblxuICAgIC5zbGljay1saXN0IHtcbiAgICAgIHBhZGRpbmc6IDAgMC42MjVyZW07XG4gICAgfVxuICB9XG5cblxuXG4gIC8vIHNob3cgdGhlIGhpZGRlbiBlbGVtZW50cyBvbiBtb2JpbGUsIHNpbmNlIHdlIGFyZSByZW1vdmluZyB0aGUgdG9nZ2xlIGhpZGUgYnkgZGVmYXVsdCwgd2hpY2ggaGlkZXMgZXh0cmEgZWxlbWVudHMgb24gZGVza3RvcCB1bnRpbCB0aGUgdG9nZ2xlIGxpbmsgaXMgY2xpY2tlZFxuICAuZmFjZXQtcHJvbXB0LWxpc3QgLmhpZGUtYnktZGVmYXVsdCwgLnByb21wdC1saXN0IC5oaWRlLWJ5LWRlZmF1bHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cblxuICAuZmFjZXQtcHJvbXB0LWxpc3QgbGkuYnJhbmQtaW1hZ2UtZmFjZXQge1xuICAgIHBhZGRpbmc6IDNweDtcbiAgICBtYXJnaW46IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzI2cHgpIHtcblxuICBoMy5zZWFyY2gtcHJvbXB0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cblxuXG4ucHJvbXB0LWxpc3QgLmNoYW5nZS1wYXJ0LW5hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDk3JTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzc2cHgpIHtcblxuXG4gIC5wcm9tcHQtbGlzdCAuY2hhbmdlLXBhcnQtbmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDk3JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTNweCkge1xuXG5cbiAgLmZhY2V0LXByb21wdC1saXN0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxuXG5cbiAgaDIuc2VhcmNoLXByb21wdC5sZWZ0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuXG4gIGgzLnNlYXJjaC1wcm9tcHQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICB9XG5cblxuICBoMi5zZWFyY2gtcHJvbXB0IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAvL21hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG5cblxuICBoMi5zZWFyY2gtcHJvbXB0IHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gIH1cblxuXG4gIHAuc2VhcmNoLXByb21wdCB7XG4gICAgY29sb3I6ICM3Nzc7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG5cbiAgcC5zZWFyY2gtcHJvbXB0LnRpZ2h0ZXIge1xuICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG5cblxuICAuZmFjZXQtbGlzdC1yb3cudGlnaHRlciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG5cbiAgaDIuc2VhcmNoLXByb21wdC50aWdodGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuMmVtO1xuICAgIG1hcmdpbi10b3A6IC4yZW07XG4gIH1cbn1cblxuXG5cbi5zdWJtb2RlbHNfX2NvbCB7XG4gIHdpZHRoOiA5LjVyZW07XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBGTEVYLUVSQSBMQVlPVVQgQ09SUkVDVElPTlMgKDIwMjYtMDgtMjgpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBFdmVyeXRoaW5nIGFib3ZlIHdhcyB3cml0dGVuIHdoZW4gYC5wcm9kdWN0LW5hbWUtc2VsZWN0b3JgIHdhcyBhIGZsb2F0XG4vLyBsYXlvdXQuIEl0IGlzIG5vdCBvbmUgYW55IG1vcmU6IHRoZSBzaXRlcycgbWFpbiBidW5kbGUgc2V0c1xuLy8gYC5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LXdyYXA6IHdyYXAgfWAgZm9yIHRoZSB0aWxlXG4vLyBncmlkLCBhbmQgdGhlIGlubmVyIGAubGlzdGAgaW5oZXJpdHMgdGhlIHNhbWUgdHJlYXRtZW50LiBJbnNpZGUgYSBmbGV4XG4vLyBjb250YWluZXIgYSBgZmxvYXRgIGlzIElHTk9SRUQgYW5kIGB3aWR0aDogMTAwJWAgc3RpbGwgU0hSSU5LUywgc28gdGhlXG4vLyBjYXRlZ29yeSBoZWFkaW5nIOKAlCB3cmFwcGVkIGluIGl0cyBvd24gPHNlY3Rpb24+IOKAlCBjb2xsYXBzZWQgdG8gaXRzIGNvbnRlbnRcbi8vIHdpZHRoIChtZWFzdXJlZDogNDQ4cHggb2YgYSA5NjZweCByb3cpIGFuZCBzYXQgb24gdGhlIHNhbWUgbGluZSBhcyB0aGVcbi8vIHByZXZpb3VzIHRpbGUuIFRoYXQgaXMgdGhlIFwianVtYmxlZCBtZXNzXCIgdGhlIG93bmVyIHJlcG9ydGVkIG9uIHRoZVxuLy8gcGFydC10eXBlIGNhdGVnb3J5IHZpZXcgKGRldiBBTkQgcHJvZHVjdGlvbiwgMjAyNi0wOC0yNykuXG4vL1xuLy8gVGhlc2UgcnVsZXMgYXJlIGRlbGliZXJhdGVseSBMQVNUIGluIHRoZSBmaWxlIHNvIHRoZXkgd2luIGJ5IGNhc2NhZGUgb3JkZXJcbi8vIHdpdGhvdXQgZWRpdGluZyB0aGUgbGVnYWN5IGJsb2NrcyBhYm92ZSDigJQgd2hpY2gsIG5vdGUsIGFyZSBkdXBsaWNhdGVkXG4vLyB3aG9sZXNhbGUgaW4gdGhpcyBmaWxlICh0aGUgc2FtZSBzZWxlY3RvcnMgYXBwZWFyIHR3aWNlLCBhIGNvbnNvbGlkYXRpb25cbi8vIGFydGlmYWN0KTsgZWRpdGluZyBcInRoZVwiIHJ1bGUgaW4gcGxhY2Ugd291bGQgc2lsZW50bHkgbWlzcyBhIGNvcHkuXG4vL1xuLy8gVEhFIFJVTEU6IGEgdGlsZSBzaGFyZXMgaXRzIGxpbmUuIE5vdGhpbmcgZWxzZSBkb2VzLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucHJvZHVjdC1uYW1lLXNlbGVjdG9yLFxuLnByb2R1Y3QtbmFtZS1zZWxlY3RvciAubGlzdCB7XG4gIC8vIEZ1bGwtcm93IGNoaWxkcmVuLiBgZmxleDogMCAwIDEwMCVgIGlzIHRoZSBwYXJ0IGB3aWR0aDogMTAwJWAgY2Fubm90IGRvOlxuICAvLyBpdCBhbHNvIGZvcmJpZHMgdGhlIHNocmluayB0aGF0IHB1dCBoZWFkaW5ncyBiZXNpZGUgdGlsZXMuXG4gID4gc2VjdGlvbixcbiAgPiAuY2F0ZWdvcnktbmFtZSxcbiAgPiAuc3ViY2F0ZWdvcnktbmFtZSxcbiAgPiAuaGVhZGVyLFxuICA+IC5jbGVhci1jYXRlZ29yeS1zZWFyY2gtbWVzc2FnZSB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gRW1wdHkgc3BhY2VyIGRpdnMgbGVmdCBvdmVyIGZyb20gdGhlIGZsb2F0IGxheW91dC4gVGhleSBjbGVhcmVkIGZsb2F0c1xuICAvLyB0aGF0IG5vIGxvbmdlciBleGlzdCwgYW5kIGFzIGZsZXggaXRlbXMgdGhleSBvbmx5IGFkZCBzdHJheSBnYXBzLlxuICA+IC5jbGVhcmJvdGgge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gVGhlIHR3byBoZWFkaW5nIHNwYW5zIChuYW1lIG9uIHRoZSBsZWZ0LCBcIkJhY2sgdG8gVG9wXCIgb24gdGhlIHJpZ2h0KSB1c2VkXG4vLyBvcHBvc2luZyBmbG9hdHMgaW5zaWRlIGEgZml4ZWQgMzlweCBib3g6IGEgbG9uZyBjYXRlZ29yeSBuYW1lIG92ZXJmbG93ZWQgaXQsXG4vLyBhbmQgdGhlIHZlcnRpY2FsIGNlbnRlcmluZyB3YXMgbHVjay4gRmxleCBkb2VzIGJvdGggam9icyBob25lc3RseS5cbi5wcm9kdWN0LW5hbWUtc2VsZWN0b3Ige1xuICAuY2F0ZWdvcnktbmFtZSxcbiAgLnN1YmNhdGVnb3J5LW5hbWUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxMnB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAzOXB4O1xuICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIH1cblxuICAgIC8vIFwiQmFjayB0byBUb3BcIiDigJQgc2Vjb25kYXJ5LCBhbmQgaXQgbXVzdCBuZXZlciBzcXVlZXplIHRoZSBuYW1lLlxuICAgIHNwYW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG5cbiAgLy8gU3ViY2F0ZWdvcmllcyBhcmUgYSBsZXZlbCBkb3duOyBrZWVwIHRoZSBsZWdhY3kgaW5kZW50LCBsaWdodGVyIHdlaWdodC5cbiAgLnN1YmNhdGVnb3J5LW5hbWUge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG5cbiAgICBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICB9XG4gIH1cblxuICAvLyBUaWxlczogYW4gZXhwbGljaXQgYmFzaXMgaW5zdGVhZCBvZiB0aGUgaWdub3JlZCBmbG9hdCwgc28gcm93cyB3cmFwIGV2ZW5seVxuICAvLyBhdCBldmVyeSB3aWR0aC4gYC50b3AtY2F0ZWdvcnktcHJvZHVjdGAga2VlcHMgdGhlIG1haW4gYnVuZGxlJ3Mgb3duIDI1JS81MCVcbiAgLy8gc2l6aW5nICh0b3AtbGV2ZWwtY2F0ZWdvcnkgdmlldykg4oCUIGV4Y2x1ZGVkIGhlcmUgb24gcHVycG9zZS5cbiAgLnRvcC1wcm9kdWN0Om5vdCgudG9wLWNhdGVnb3J5LXByb2R1Y3QpIHtcbiAgICBmbGV4OiAwIDAgY2FsYygzMy4zMzMlIC0gMTBweCk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDMzLjMzMyUgLSAxMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgLy8gVGhlIGp1bXAtbGluayBjb2x1bW5zIHVuZGVyIGEgY2F0ZWdvcnkgaGVhZGluZyBhcmUgYSByZWFsIDMtdXAgbGlzdDsgdGhleVxuICAvLyB3ZXJlIGZsb2F0cyB0b28sIGluc2lkZSBhIGZsZXggcGFyZW50LlxuICAuaGVhZGVyIC5jYXRMaW5rcyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3NnB4KSB7XG4gIC5wcm9kdWN0LW5hbWUtc2VsZWN0b3IgLnRvcC1wcm9kdWN0Om5vdCgudG9wLWNhdGVnb3J5LXByb2R1Y3QpIHtcbiAgICBmbGV4OiAwIDAgY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/